@charset "UTF-8";
/* Mobile app presentation layer. Business forms and desktop layout are unchanged. */
.hap-mobile-sidebar-logout { display:none; }
.hap-mobile-header-clock { display:none; }

@media (max-width:782px) {
	:root {
		--hap-mobile-blue:#195bd7;
		--hap-mobile-navy:#071d4d;
		--hap-mobile-canvas:#eef3fb;
		--hap-mobile-card:#fff;
		--hap-mobile-shadow:0 10px 28px rgba(18,49,103,.09);
	}

	html,
	body { max-width:100%;overflow-x:hidden;overscroll-behavior-x:none; }
	button,
	a,
	input,
	select,
	textarea { touch-action:manipulation; }

	html.hap-mobile-app-mode { background:var(--hap-mobile-canvas); }
	body.hap-wm-admin-app,
	.hap-system-page { background:var(--hap-mobile-canvas)!important; }
	body.hap-wm-admin-app #wpcontent { padding-left:0!important;padding-bottom:92px!important;background:var(--hap-mobile-canvas); }
	body.hap-wm-admin-app #wpbody-content { padding-bottom:0; }
	body.hap-wm-admin-app .wrap { margin-right:12px!important;margin-left:12px!important; }
	.hap-employee-app .main { padding:0 12px calc(104px + env(safe-area-inset-bottom))!important;background:var(--hap-mobile-canvas); }
	body.hap-wm-admin-app .hap-app-sidebar,
	.hap-employee-app .sidebar { z-index:110!important; }
	body.hap-wm-admin-app .app-backdrop,
	.hap-employee-app .app-backdrop { z-index:105; }

	/* App header shared by Admin and Employee. */
	body.hap-wm-admin-app .hap-admin-topbar,
	.hap-employee-app .topbar {
		position:sticky;z-index:90;top:0;min-height:calc(68px + env(safe-area-inset-top));box-sizing:border-box;margin:0!important;padding:calc(11px + env(safe-area-inset-top)) calc(14px + env(safe-area-inset-right)) 11px calc(14px + env(safe-area-inset-left))!important;border:0;background:linear-gradient(135deg,var(--hap-mobile-navy) 0%,#0b327d 50%,var(--hap-mobile-blue) 100%);box-shadow:0 10px 28px rgba(9,35,91,.18);
	}
	body.hap-wm-admin-app .hap-admin-topbar,
	.hap-employee-app .topbar { gap:7px; }
	body.hap-wm-admin-app .hap-admin-topbar .mobile-menu,
	.hap-employee-app .topbar .mobile-menu {
		display:grid;width:42px;height:42px;flex:0 0 42px;place-items:center;border:1px solid rgba(255,255,255,.16);border-radius:13px;background:rgba(255,255,255,.12);color:#fff;font-size:20px;
	}
	body.hap-wm-admin-app .hap-admin-topbar .top-actions,
	.hap-employee-app .topbar .top-actions { min-width:0;flex:1;justify-content:flex-end;gap:9px; }
	body.hap-wm-admin-app .hap-admin-topbar .top-actions,
	.hap-employee-app .topbar .top-actions { flex:0 1 auto;gap:7px; }
	body.hap-wm-admin-app .hap-mobile-header-clock,
	.hap-employee-app .hap-mobile-header-clock { display:flex;min-width:76px;flex:1 1 auto;flex-direction:column;justify-content:center;color:#fff;line-height:1.1;white-space:nowrap; }
	body.hap-wm-admin-app .hap-mobile-header-clock span,
	.hap-employee-app .hap-mobile-header-clock span { overflow:hidden;color:rgba(255,255,255,.72);font-size:8px;font-weight:700;text-overflow:ellipsis; }
	body.hap-wm-admin-app .hap-mobile-header-clock strong,
	.hap-employee-app .hap-mobile-header-clock strong { margin-top:3px;color:#fff;font-size:16px;font-weight:900;letter-spacing:.02em; }
	body.hap-wm-admin-app .hap-admin-topbar .search,
	.hap-employee-app .topbar .search,
	body.hap-wm-admin-app .hap-top-employee-switcher { display:none!important; }
	body.hap-wm-admin-app .hap-admin-topbar .user-chip,
	.hap-employee-app .topbar .user-chip { min-width:0;padding:0;color:#fff; }
	body.hap-wm-admin-app .hap-admin-topbar .user-chip strong,
	.hap-employee-app .topbar .user-chip strong { overflow:hidden;max-width:122px;color:#fff;font-size:12px;text-overflow:ellipsis;white-space:nowrap; }
	body.hap-wm-admin-app .hap-admin-topbar .user-chip>div:last-child { min-width:0; }
	body.hap-wm-admin-app .hap-admin-topbar .user-chip strong { max-width:86px; }
	.hap-employee-app .topbar .user-chip>div:last-child { min-width:0; }
	.hap-employee-app .topbar .user-chip strong { max-width:86px; }
	body.hap-wm-admin-app .hap-admin-topbar .user-chip small,
	.hap-employee-app .topbar .user-chip small { display:block;color:rgba(255,255,255,.66);font-size:9px; }
	body.hap-wm-admin-app .hap-admin-topbar .avatar,
	.hap-employee-app .topbar .avatar { width:39px;height:39px;background:#fff;color:#195bd7;box-shadow:0 5px 15px rgba(0,0,0,.16); }
	body.hap-wm-admin-app .hap-admin-topbar .hap-notification-bell,
	.hap-employee-app .topbar .hap-notification-bell { width:42px;height:42px;border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.12);color:#fff;box-shadow:none; }
	body.hap-wm-admin-app .hap-admin-topbar .hap-notification-bell [data-hap-notification-count],
	.hap-employee-app .topbar .hap-notification-bell [data-hap-notification-count] { border:2px solid #164bba;line-height:16px; }
	.hap-notification-panel { border-radius:18px;box-shadow:0 24px 65px rgba(8,31,74,.28); }

	/* Admin dashboard becomes a compact mobile control center. */
	body.hap-wm-admin-app .hap-modern-dashboard { display:block;max-width:none;margin:0 12px!important;padding:0 0 20px;color:#132444; }
	body.hap-wm-admin-app .hap-modern-head {
		display:grid;width:auto;grid-template-columns:minmax(0,1fr);align-items:start;justify-content:stretch;justify-items:stretch;gap:14px;margin:12px -12px 14px;padding:16px 18px 23px;border:0;border-radius:0;background:linear-gradient(135deg,var(--hap-mobile-navy) 0%,#0b327d 50%,var(--hap-mobile-blue) 100%);color:#fff;box-shadow:0 14px 30px rgba(12,48,118,.2);box-sizing:border-box;
	}
	body.hap-wm-admin-app .hap-modern-head .eyebrow { margin-bottom:5px;color:#83b4ff;font-size:9px; }
	body.hap-wm-admin-app .hap-modern-head h1 { margin:0 0 5px;color:#fff;font-size:24px;line-height:1.16;letter-spacing:-.035em; }
	body.hap-wm-admin-app .hap-modern-head p { display:none; }
	body.hap-wm-admin-app .hap-modern-actions { display:grid;width:100%;max-width:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;box-sizing:border-box; }
	body.hap-wm-admin-app .hap-dashboard-period-form { width:100%;max-width:none;grid-column:1/-1;justify-content:space-between;box-sizing:border-box; }
	body.hap-wm-admin-app .hap-dashboard-period-form select { min-width:0;flex:1; }
	body.hap-wm-admin-app .hap-modern-actions .btn { width:100%;min-width:0;min-height:42px;margin:0;border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.12);color:#fff!important;box-shadow:none;box-sizing:border-box; }
	body.hap-wm-admin-app .hap-modern-actions .btn-primary { border-color:#fff!important;background:#fff!important;color:#164fbd!important; }
	body.hap-wm-admin-app .hap-modern-toolbar { gap:8px;margin:0 0 10px;padding:10px 12px;border:1px solid #dce6f4;border-radius:14px;background:#fff;box-shadow:0 6px 18px rgba(18,49,103,.05); }
	body.hap-wm-admin-app .hap-modern-toolbar form { min-width:0; }
	body.hap-wm-admin-app .hap-modern-toolbar label { display:none; }
	body.hap-wm-admin-app .hap-modern-toolbar select { width:126px;min-width:0;height:36px;border-color:#d8e3f2;border-radius:10px; }
	body.hap-wm-admin-app .hap-modern-toolbar>span { color:#71809a;font-size:9px;text-align:right; }
	body.hap-wm-admin-app .hap-urgent-bar { display:block;width:100%;margin:0 0 10px;padding:11px;border:1px solid #f2d9d0;border-radius:16px;background:#fff8f6;box-shadow:0 7px 20px rgba(135,57,36,.06);box-sizing:border-box; }
	body.hap-wm-admin-app .hap-urgent-bar>strong { grid-column:1/-1;color:#b43d2f;font-size:12px; }
	body.hap-wm-admin-app .hap-urgent-bar>a { min-width:0;padding:9px;border:1px solid #f2dfd8;border-radius:10px;background:#fff;color:#8e4a3d;font-size:10px;text-align:center; }
	body.hap-wm-admin-app .hap-urgent-grid { display:grid;width:100%;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px; }
	body.hap-wm-admin-app .hap-urgent-grid .overdue { width:100%;grid-column:1/-1; }
	body.hap-wm-admin-app .hap-urgent-grid>a { width:100%;min-width:0; }
	body.hap-wm-admin-app .hap-modern-metrics { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px; }
	body.hap-wm-admin-app .hap-modern-metric { min-height:0;box-sizing:border-box;padding:11px 10px 12px;border:1px solid #dfe7f3;border-radius:14px;background:#fff;box-shadow:var(--hap-mobile-shadow); }
	body.hap-wm-admin-app .hap-modern-metric>span { max-width:100%;padding-right:0;color:#67758d;font-size:9px;font-weight:800;line-height:1.25;white-space:normal; }
	body.hap-wm-admin-app .hap-modern-metric>i { position:static;display:grid;place-items:center;width:28px;height:28px;margin:0 0 6px;border-radius:9px;background:#e9f1ff;color:#2364de;font-size:14px; }
	body.hap-wm-admin-app .hap-modern-metric>strong { margin:4px 0 3px;color:#132444;font-size:18px; }
	body.hap-wm-admin-app .hap-modern-metric>small { color:#7d8ba1;font-size:8px;line-height:1.3; }
	body.hap-wm-admin-app .hap-modern-metric:nth-child(2)>i,
	body.hap-wm-admin-app .hap-modern-metric:nth-child(3)>i { background:#e8f8f1;color:#11a66e; }
	body.hap-wm-admin-app .hap-modern-metric:nth-child(5)>i,
	body.hap-wm-admin-app .hap-modern-metric:nth-child(6)>i { background:#fff0eb;color:#ec624d; }
	body.hap-wm-admin-app .hap-modern-primary-grid,
	body.hap-wm-admin-app .hap-modern-secondary-grid { display:grid;grid-template-columns:1fr;gap:11px; }
	body.hap-wm-admin-app .panel,
	body.hap-wm-admin-app .hap-card { border-color:#dfe7f3;border-radius:18px;background:#fff;box-shadow:var(--hap-mobile-shadow); }
	body.hap-wm-admin-app .panel-head { padding:15px 14px 11px; }
	body.hap-wm-admin-app .panel-head h2 { color:#132444;font-family:Inter,ui-sans-serif,"Segoe UI",sans-serif;font-size:17px; }
	body.hap-wm-admin-app .panel-head p { font-size:10px; }

	/* Employee home and list pages share the same app language. */
	.hap-employee-app .view>.page-head:first-child {
		display:grid;align-items:start;gap:12px;margin:12px 0 14px;padding:16px 18px 23px;border-radius:20px;background:linear-gradient(135deg,var(--hap-mobile-navy) 0%,#0b327d 50%,var(--hap-mobile-blue) 100%);color:#fff;box-shadow:0 14px 30px rgba(12,48,118,.2);
	}
	.hap-employee-app .view>.page-head:first-child .eyebrow { margin-bottom:5px;color:#83b4ff;font-size:9px; }
	.hap-employee-app .view>.page-head:first-child h1 { margin:0 0 5px;color:#fff;font-family:Inter,ui-sans-serif,"Segoe UI",sans-serif;font-size:24px;line-height:1.16; }
	.hap-employee-app .view>.page-head:first-child p { color:rgba(255,255,255,.68);font-size:11px; }
	.hap-employee-app .view>.page-head:first-child>.btn { width:100%;margin:0;border-color:#fff!important;background:#fff!important;color:#164fbd!important; }
	.hap-employee-app:not(.hap-employee-list-page):not(.hap-quotes-app):not(.hap-price-employee-app) .view>.page-head:first-child { display:none!important; }
	.hap-employee-app .profile-banner { grid-template-columns:58px minmax(0,1fr);gap:12px;margin:12px 0 11px;padding:15px;border:0;border-radius:19px;background:linear-gradient(135deg,#123572,#195bd7);box-shadow:0 10px 26px rgba(18,57,137,.18);text-align:left; }
	.hap-employee-app .profile-avatar { width:58px;height:58px; }
	.hap-employee-app .profile-banner h2 { font-size:18px; }
	.hap-employee-app .profile-banner p { font-size:9px; }
	.hap-employee-app .profile-facts { display:grid;grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px; }
	.hap-employee-app .profile-facts span { padding:8px;border-radius:10px;background:rgba(255,255,255,.08);font-size:8px; }
	.hap-employee-app .profile-facts strong { margin-top:3px;font-size:9px; }
	.hap-employee-app .hap-profile-actions { grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;justify-items:stretch;gap:7px; }
	.hap-employee-app .hap-profile-actions>* { justify-content:center;text-align:center; }
	.hap-employee-app .stats { grid-template-columns:repeat(2,minmax(0,1fr));gap:10px; }
	.hap-employee-app .hap-employee-home-stats { align-items:stretch;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin-bottom:12px; }
	.hap-employee-app .hap-employee-home-stats .stat-card { display:flex;min-width:0;min-height:126px;flex-direction:column;padding:14px;border-color:#dfe7f3;border-radius:18px;background:#fff;box-shadow:var(--hap-mobile-shadow); }
	.hap-employee-app .hap-employee-home-stats .stat-card::after { display:none; }
	.hap-employee-app .hap-employee-home-stats .stat-card:not(.hap-today-schedule-card)::before { position:absolute;top:12px;right:12px;display:grid;width:28px;height:28px;place-items:center;border-radius:9px;font-size:15px;font-weight:900;line-height:1; }
	.hap-employee-app .hap-employee-home-stats .stat-label { max-width:calc(100% - 32px);color:#68778f;font-size:11px;font-weight:800;line-height:1.3; }
	.hap-employee-app .hap-employee-home-stats .stat-value { margin:9px 0 6px;color:#132444;font-size:23px;font-weight:900;line-height:1; }
	.hap-employee-app .hap-employee-home-stats .stat-foot { margin-top:auto;font-size:10px;line-height:1.35; }
	.hap-employee-app .hap-recent-ticket-card { border-color:#d9e7f8;background:linear-gradient(180deg,#f7fbff 0%,#fff 76%); }
	.hap-employee-app .hap-recent-ticket-card::before { content:"";background-color:#e6f1ff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232767b1' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 3.5h12a2 2 0 0 1 2 2v15H6a2 2 0 0 1-2-2v-13a2 2 0 0 1 2-2Z'/%3E%3Cpath d='M8 8h8M8 12h8M8 16h5'/%3E%3C/svg%3E");background-position:center;background-repeat:no-repeat;background-size:17px; }
	.hap-employee-app .hap-recent-ticket-card .stat-value { color:#164f91; }
	.hap-employee-app .hap-income-card { border-color:#d5eadf;background:linear-gradient(180deg,#f4fbf7 0%,#fff 76%); }
	.hap-employee-app .hap-income-card::before { content:"";background-color:#dff4e9;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23147457' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 18V9M10 18V5M16 18v-7M3 20h18'/%3E%3Cpath d='m14 6 3-3 3 3M17 3v7'/%3E%3C/svg%3E");background-position:center;background-repeat:no-repeat;background-size:17px; }
	.hap-employee-app .hap-income-card .stat-value { color:#126047; }
	.hap-employee-app .hap-extra-income-card { border-color:#e5def3;background:linear-gradient(180deg,#faf7ff 0%,#fff 76%); }
	.hap-employee-app .hap-extra-income-card::before { content:"";background-color:#eee6fa;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237351a6' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='6' width='18' height='13' rx='2.5'/%3E%3Cpath d='M16 11h5v4h-5a2 2 0 1 1 0-4ZM7 6V4h9v2'/%3E%3C/svg%3E");background-position:center;background-repeat:no-repeat;background-size:17px; }
	.hap-employee-app .hap-extra-income-card .stat-value { color:#654391; }
	.hap-employee-app .hap-pending-work-card { border-color:#f2dfc9;background:linear-gradient(180deg,#fff8f0 0%,#fff 76%); }
	.hap-employee-app .hap-pending-work-card::before { content:"";background-color:#ffead3;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b75b0e' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7.5v5M12 16.5h.01'/%3E%3C/svg%3E");background-position:center;background-repeat:no-repeat;background-size:17px; }
	.hap-employee-app .hap-pending-work-card .stat-value,
	.hap-employee-app .hap-pending-work-card .stat-foot { color:#a84d08; }
	.hap-employee-app .hap-employee-home-stats .hap-today-schedule-card { display:grid!important;grid-column:1/-1;grid-template-columns:46px minmax(0,1fr) auto!important;align-items:center;gap:12px;min-height:96px!important;padding:14px 15px!important;border:0!important;background:linear-gradient(135deg,#0b327d,#195bd7)!important;box-shadow:0 12px 26px rgba(20,74,179,.22)!important;color:#fff!important; }
	.hap-employee-app .hap-today-schedule-card .hap-today-icon { display:grid;width:46px;height:46px;place-items:center;border:1px solid rgba(255,255,255,.22);border-radius:14px;background:rgba(255,255,255,.13); }
	.hap-employee-app .hap-today-schedule-card .hap-today-icon svg { width:25px;height:25px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round; }
	.hap-employee-app .hap-today-schedule-card .hap-today-copy { display:flex;min-width:0;flex-direction:column; }
	.hap-employee-app .hap-employee-home-stats .hap-today-schedule-card .stat-label,
	.hap-employee-app .hap-employee-home-stats .hap-today-schedule-card .stat-value,
	.hap-employee-app .hap-employee-home-stats .hap-today-schedule-card .stat-foot { color:#fff!important; }
	.hap-employee-app .hap-employee-home-stats .hap-today-schedule-card .stat-label { max-width:none; }
	.hap-employee-app .hap-employee-home-stats .hap-today-schedule-card .stat-value { margin:3px 0 2px;font-size:26px; }
	.hap-employee-app .hap-employee-home-stats .hap-today-schedule-card .stat-foot { margin:0; }
	.hap-employee-app .hap-today-action { display:flex;align-items:center;gap:5px;padding:8px 10px;border-radius:999px;background:#fff;color:#164fbd;font-size:10px;font-weight:900;white-space:nowrap;box-shadow:0 4px 12px rgba(0,0,0,.1); }
	.hap-employee-app .hap-today-action b { font-size:14px;line-height:1; }
	.hap-employee-app .hap-employee-home-stats .hap-today-schedule-card .hap-today-action { border-color:rgba(255,255,255,.28);background:#fff;color:#164fbd; }
	.hap-employee-app .hap-month-switch a { padding:3px 6px;font-size:9px; }
	.hap-employee-app .hap-income-month-picker { grid-template-columns:1fr;gap:2px;margin-top:auto; }
	.hap-employee-app .hap-income-month-picker label { display:none; }
	.hap-employee-app .hap-income-month-picker input { height:29px;padding:2px 7px;border-color:#cce0d5;border-radius:9px;background:rgba(255,255,255,.82);font-size:10px; }
	.hap-employee-app .panel,
	.hap-employee-app .stat-card { border-color:#dfe7f3;border-radius:18px;box-shadow:var(--hap-mobile-shadow); }
	.hap-employee-app .panel-head { padding:15px 14px 11px; }
	.hap-employee-app .panel-head h2 { color:#132444;font-family:Inter,ui-sans-serif,"Segoe UI",sans-serif;font-size:17px; }
	.hap-employee-app .assignment-card { border-color:#dfe7f3;border-radius:16px;background:#fff;box-shadow:0 7px 18px rgba(18,49,103,.06); }
	.hap-employee-app .hap-assignment-featured-shell { border-color:#d9e4f4;background:#f7faff;box-shadow:var(--hap-mobile-shadow); }

	/* Fixed, thumb-friendly navigation. */
	.hap-mobile-tabbar {
		position:fixed;z-index:65;right:8px;bottom:8px;left:8px;display:grid;grid-template-columns:repeat(var(--hap-tab-count,5),minmax(0,1fr));align-items:end;min-height:67px;box-sizing:border-box;padding:7px 7px calc(7px + env(safe-area-inset-bottom));border:1px solid rgba(198,211,233,.9);border-radius:21px;background:rgba(255,255,255,.96);box-shadow:0 16px 45px rgba(11,39,92,.22);backdrop-filter:blur(16px);
	}
	.hap-mobile-tab-item { position:relative;display:grid;min-width:0;gap:3px;place-items:center;padding:3px 2px;border:0;background:transparent;color:#71809a!important;font:inherit;text-decoration:none!important;cursor:pointer;-webkit-tap-highlight-color:transparent; }
	.hap-mobile-tab-icon { position:relative;display:grid;width:31px;height:31px;place-items:center;border-radius:11px;transition:.18s ease; }
	.hap-mobile-tab-icon svg { width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round; }
	.hap-mobile-tab-label { overflow:hidden;width:100%;font-size:8px;font-weight:800;line-height:1.1;text-align:center;text-overflow:ellipsis;white-space:nowrap; }
	.hap-mobile-tab-item.is-active { color:#195bd7!important; }
	.hap-mobile-tab-item.is-active .hap-mobile-tab-icon { background:#e9f1ff; }
	.hap-mobile-tab-item.is-primary { transform:translateY(-9px);color:#fff!important; }
	.hap-mobile-tab-item.is-primary .hap-mobile-tab-icon { width:45px;height:45px;border:4px solid #fff;border-radius:16px;background:linear-gradient(145deg,#3478f0,#1555cf);box-shadow:0 8px 18px rgba(25,91,215,.32); }
	.hap-mobile-tab-item.is-primary .hap-mobile-tab-icon svg { width:23px;height:23px;stroke-width:2.1; }
	.hap-mobile-tab-item.is-primary .hap-mobile-tab-label { color:#195bd7; }
	.hap-mobile-tab-badge { position:absolute;right:-5px;top:-5px;display:grid;min-width:18px;height:18px;box-sizing:border-box;place-items:center;padding:0 5px;border:2px solid #fff;border-radius:999px;background:#ef3f3f;color:#fff;font-size:8px;line-height:1; }

	/* Công việc đã giao: each row becomes a readable mobile card. */
	body.hap-wm-admin-app .hap-assignment-admin-table { display:block;width:100%;border:0!important;background:transparent!important;box-shadow:none; }
	body.hap-wm-admin-app .hap-assignment-admin-table thead { display:none; }
	body.hap-wm-admin-app .hap-assignment-admin-table tbody { display:grid;gap:11px;width:100%; }
	body.hap-wm-admin-app .hap-assignment-admin-table tr { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;width:100%;box-sizing:border-box;padding:7px;border:1px solid #dce6f4;border-radius:18px;background:#fff;box-shadow:var(--hap-mobile-shadow); }
	body.hap-wm-admin-app .hap-assignment-admin-table td { display:grid;align-content:start;gap:4px;min-width:0;box-sizing:border-box;padding:9px!important;border:0!important;background:transparent!important;color:#263650;font-size:12px;line-height:1.45;overflow-wrap:anywhere; }
	body.hap-wm-admin-app .hap-assignment-admin-table td::before { content:attr(data-label);display:block;margin-bottom:2px;color:#7d8ba1;font-size:8px;font-weight:900;line-height:1.2;letter-spacing:.07em;text-transform:uppercase; }
	body.hap-wm-admin-app .hap-assignment-admin-table td:nth-child(1) { grid-column:1/-1;padding-bottom:11px!important;border-bottom:1px solid #e7edf6!important; }
	body.hap-wm-admin-app .hap-assignment-admin-table td:nth-child(1)>strong { color:#164fbd;font-size:15px; }
	body.hap-wm-admin-app .hap-assignment-admin-table td:nth-child(5),
	body.hap-wm-admin-app .hap-assignment-admin-table td:nth-child(6),
	body.hap-wm-admin-app .hap-assignment-admin-table td:nth-child(7) { grid-column:1/-1; }
	body.hap-wm-admin-app .hap-assignment-admin-table td:nth-child(5),
	body.hap-wm-admin-app .hap-assignment-admin-table td:nth-child(6) { border-top:1px solid #eef2f7!important; }
	body.hap-wm-admin-app .hap-assignment-admin-table td:nth-child(7) { display:flex;align-items:center;gap:8px;padding-top:7px!important;border-top:1px solid #e7edf6!important; }
	body.hap-wm-admin-app .hap-assignment-admin-table td:nth-child(7)::before { display:none; }
	body.hap-wm-admin-app .hap-assignment-admin-table td:nth-child(7) br { display:none; }
	body.hap-wm-admin-app .hap-assignment-admin-table td:nth-child(7) a { display:inline-flex;min-height:34px;box-sizing:border-box;align-items:center;justify-content:center;padding:7px 12px;border:1px solid #d4e0f1;border-radius:10px;background:#f3f7ff;color:#195bd7;font-weight:800;text-decoration:none; }
	body.hap-wm-admin-app .hap-assignment-admin-table td:nth-child(7) .submitdelete { border-color:#f1d1cd;background:#fff4f2;color:#c34538; }
	body.hap-wm-admin-app .hap-assignment-admin-table tr>td[colspan] { grid-column:1/-1;display:block;padding:22px!important;text-align:center; }

	/* Employee assigned-work list uses the same vertical card pattern. */
	.hap-employee-app .hap-employee-assignment-table { display:block;width:100%;min-width:0!important;border:0!important;background:transparent; }
	.hap-employee-app .hap-employee-assignment-table thead { display:none; }
	.hap-employee-app .hap-employee-assignment-table tbody { display:grid;gap:11px;width:100%;padding:10px;box-sizing:border-box; }
	.hap-employee-app .hap-employee-assignment-table tr { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;width:100%;box-sizing:border-box;padding:7px;border:1px solid #dce6f4;border-radius:18px;background:#fff;box-shadow:var(--hap-mobile-shadow); }
	.hap-employee-app .hap-employee-assignment-table td { display:grid;align-content:start;gap:4px;min-width:0;box-sizing:border-box;padding:9px!important;border:0!important;background:transparent!important;color:#263650;font-size:12px;line-height:1.45;overflow-wrap:anywhere; }
	.hap-employee-app .hap-employee-assignment-table td::before { content:attr(data-label);display:block;margin-bottom:2px;color:#7d8ba1;font-size:8px;font-weight:900;line-height:1.2;letter-spacing:.07em;text-transform:uppercase; }
	.hap-employee-app .hap-employee-assignment-table td:nth-child(1) a { color:#195bd7;font-size:14px;font-weight:900;text-decoration:none; }
	.hap-employee-app .hap-employee-assignment-table td:nth-child(2) { text-align:right; }
	.hap-employee-app .hap-employee-assignment-table td:nth-child(2)::before { text-align:right; }
	.hap-employee-app .hap-employee-assignment-table td:nth-child(3),
	.hap-employee-app .hap-employee-assignment-table td:nth-child(4),
	.hap-employee-app .hap-employee-assignment-table td:nth-child(7),
	.hap-employee-app .hap-employee-assignment-table td:nth-child(8) { grid-column:1/-1; }
	.hap-employee-app .hap-employee-assignment-table td:nth-child(3),
	.hap-employee-app .hap-employee-assignment-table td:nth-child(4),
	.hap-employee-app .hap-employee-assignment-table td:nth-child(7) { border-top:1px solid #eef2f7!important; }
	.hap-employee-app .hap-employee-assignment-table td:nth-child(3) small { display:block;margin-top:3px;color:#728098; }
	.hap-employee-app .hap-employee-assignment-table td:nth-child(5) { color:#12825a;font-weight:900; }
	.hap-employee-app .hap-employee-assignment-table td:nth-child(6) { justify-items:end;text-align:right; }
	.hap-employee-app .hap-employee-assignment-table td:nth-child(8) { padding-top:7px!important;border-top:1px solid #dfe7f3!important; }
	.hap-employee-app .hap-employee-assignment-table td:nth-child(8)::before { display:none; }
	.hap-employee-app .hap-employee-assignment-table td:nth-child(8) .btn { width:100%;min-height:40px;border-radius:11px;background:#195bd7!important;border-color:#195bd7!important;color:#fff!important; }
	.hap-employee-app .hap-employee-assignment-table tr>td[colspan] { grid-column:1/-1;display:block;padding:22px!important;text-align:center; }
	.hap-toast-stack { bottom:91px; }
	.hap-tg-chat-launcher { bottom:91px!important; }
	.hap-tg-chatbox { top:max(8px,env(safe-area-inset-top))!important;right:8px!important;bottom:max(82px,calc(70px + env(safe-area-inset-bottom)))!important;left:8px!important;width:auto!important;max-width:none!important;height:auto!important;box-sizing:border-box; }
	.hap-tg-chatbox * { box-sizing:border-box; }
	.hap-tg-chatbox input,
	.hap-tg-chatbox select,
	.hap-tg-chatbox textarea { font-size:16px!important; }
}

/* Session controls move into the drawer as soon as the desktop sidebar collapses. */
@media (max-width:960px) {
	body.hap-wm-admin-app .hap-admin-session { display:none!important; }
	.hap-employee-app .topbar .icon-btn[aria-label="Đăng xuất"] { display:none!important; }
	.hap-mobile-sidebar-logout { display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;flex:0 0 auto;margin:12px 0 0;padding:10px 12px;border:1px solid rgba(255,255,255,.15);border-radius:12px;background:linear-gradient(135deg,rgba(255,255,255,.11),rgba(255,255,255,.055));color:#fff!important;text-decoration:none!important;box-shadow:0 8px 20px rgba(0,0,0,.14);transition:background .16s ease,border-color .16s ease,transform .16s ease; }
	.hap-mobile-sidebar-logout:hover,
	.hap-mobile-sidebar-logout:focus-visible { border-color:rgba(255,174,142,.58);background:rgba(191,66,48,.25);color:#fff!important;transform:translateY(-1px); }
	.hap-mobile-sidebar-logout-icon { display:grid;width:34px;height:34px;place-items:center;border-radius:10px;background:rgba(255,255,255,.12);color:#ffb49d;font-size:20px;font-weight:900; }
	.hap-mobile-sidebar-logout>span:last-child { display:grid;gap:2px;min-width:0; }
	.hap-mobile-sidebar-logout strong { color:#fff;font-size:12px;line-height:1.2; }
	.hap-mobile-sidebar-logout small { color:rgba(255,255,255,.62);font-size:9px;line-height:1.25; }
	body.hap-wm-admin-app .hap-app-sidebar>.hap-mobile-sidebar-logout { margin-top:10px; }
}

@media (max-width:390px) {
	.hap-mobile-tab-label { font-size:7px; }
	.hap-mobile-tabbar { right:5px;bottom:5px;left:5px;padding-right:4px;padding-left:4px; }
	body.hap-wm-admin-app .hap-modern-metric { min-height:0;padding:9px 8px 10px; }
	body.hap-wm-admin-app .hap-modern-metric>strong { font-size:16px; }
	body.hap-wm-admin-app .hap-modern-metric>span { font-size:8px; }
	body.hap-wm-admin-app .hap-modern-metric>i { width:24px;height:24px;font-size:12px; }
}
@media(max-width:782px){.hap-employee-app .sidebar-download{display:none!important}}
