/* An Đông 4 CRM V10.42 — Company module */
.v1042-company-page{display:flex;flex-direction:column;gap:18px;padding-bottom:28px}.v1042-company-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.v1042-company-head h1{margin:4px 0 6px;font-size:28px;line-height:1.1;color:#0b2748}.v1042-company-head p{margin:0;color:#6f8096}.v1042-kicker{font-size:11px;font-weight:800;letter-spacing:.12em;color:#3b78c8}.v1042-head-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.v1042-search-hero{background:linear-gradient(135deg,#0d3f75 0%,#0f61b3 100%);border-radius:20px;padding:26px;box-shadow:0 18px 42px rgba(20,66,120,.16);color:#fff;position:relative;overflow:hidden}.v1042-search-hero:after{content:"";position:absolute;width:280px;height:280px;border:40px solid rgba(255,255,255,.06);border-radius:50%;right:-90px;top:-110px}.v1042-search-copy{display:flex;gap:14px;align-items:center;position:relative;z-index:1}.v1042-search-copy>span{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.14)}.v1042-search-copy strong{display:block;font-size:18px}.v1042-search-copy small{display:block;margin-top:3px;color:#d8e8fb}.v1042-search-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-top:20px;position:relative;z-index:1}.v1042-search-input{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #dce6f2;border-radius:14px;min-height:48px;padding:0 14px}.v1042-search-hero .v1042-search-input{border-color:transparent;box-shadow:0 8px 26px rgba(8,36,77,.18)}.v1042-search-input>span{display:flex;color:#7d90aa}.v1042-search-input input{border:0;outline:0;background:transparent;width:100%;font-size:14px;color:#15324f}.v1042-search-form .btn{min-width:120px;border-radius:14px;background:#fff;color:#0e5cac;border-color:#fff;font-weight:800}.v1042-search-form .btn:hover{background:#eff6ff}.v1042-category-legend{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px;position:relative;z-index:1}
.v1042-category{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:4px 10px;border-radius:999px;font-weight:800;font-size:11px;white-space:nowrap;border:1px solid transparent}.v1042-category.nonps{background:#eef2f7;color:#56677e;border-color:#dfe6ee}.v1042-category.ps{background:#e8f2ff;color:#1464bc;border-color:#cfe2fb}.v1042-category.topps{background:#e6f7ef;color:#0b8a59;border-color:#caecdE}.v1042-category.limited{background:#fff3de;color:#b86a04;border-color:#f6dfb4}.v1042-category.restricted{background:#ffebeb;color:#c23d3d;border-color:#f4cccc}.v1042-search-hero .v1042-category{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.12)}
.v1042-results{min-height:220px}.v1042-company-empty,.v1042-company-loading{min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#fff;border:1px solid #e0e8f2;border-radius:18px;color:#7a8ca3}.v1042-company-empty>span{width:48px;height:48px;border-radius:14px;background:#eff6ff;color:#2377d7;display:grid;place-items:center;margin-bottom:12px}.v1042-company-empty strong{color:#203a58;font-size:16px}.v1042-company-empty small{margin-top:5px}.v1042-company-loading{flex-direction:row;gap:10px}.v1042-company-loading span{width:18px;height:18px;border-radius:50%;border:2px solid #d7e3f2;border-top-color:#1677e8;animation:v1042spin .8s linear infinite}@keyframes v1042spin{to{transform:rotate(360deg)}}.v1042-results-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.v1042-results-head strong,.v1042-results-head small{display:block}.v1042-results-head small{color:#8797aa;margin-top:2px}.v1042-result-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:12px}.v1042-company-result{background:#fff;border:1px solid #dfe8f3;border-radius:18px;padding:18px;display:flex;gap:14px;box-shadow:0 8px 22px rgba(20,54,93,.05);transition:.18s ease}.v1042-company-result:hover{transform:translateY(-1px);border-color:#bdd6f5;box-shadow:0 12px 28px rgba(20,71,130,.09)}.v1042-result-icon{width:44px;height:44px;border-radius:14px;background:#edf5ff;color:#1471d4;display:grid;place-items:center;flex:0 0 auto}.v1042-result-main{min-width:0;flex:1}.v1042-result-main>span{font-size:10px;font-weight:800;letter-spacing:.08em;color:#8a9aad}.v1042-result-main h3{font-size:16px;color:#163552;margin:4px 0 14px;white-space:normal}.v1042-result-meta{display:grid;grid-template-columns:1fr 1fr;gap:14px}.v1042-result-meta small{display:block;color:#8a9aad;margin-bottom:5px}.v1042-result-meta strong{font-size:13px;color:#213e5c}
.v1042-stat-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.v1042-stat{background:#fff;border:1px solid #e0e8f2;border-radius:16px;padding:16px;min-height:112px;display:flex;flex-direction:column;justify-content:space-between}.v1042-stat.total{background:linear-gradient(145deg,#0d4e91,#0f70cb);color:#fff;border-color:transparent}.v1042-stat span{font-size:12px;font-weight:700;color:#61758f}.v1042-stat.total span,.v1042-stat.total small{color:#d8eaff}.v1042-stat strong{font-size:25px;color:#173b62}.v1042-stat.total strong{color:#fff}.v1042-stat small{color:#8393a7}.v1042-stat small .v1042-category{transform:scale(.92);transform-origin:left center}
.v1042-warehouse-panel{background:#fff;border:1px solid #dfe8f3;border-radius:18px;overflow:hidden;box-shadow:0 8px 22px rgba(22,55,93,.04)}.v1042-warehouse-toolbar{display:grid;grid-template-columns:minmax(280px,1fr) 270px auto;gap:10px;padding:14px;border-bottom:1px solid #e4ebf3}.v1042-table-wrap{overflow:auto}.v1042-company-table th{white-space:nowrap}.v1042-company-table td{vertical-align:middle}.v1042-tax{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:700;letter-spacing:.02em;color:#284766}.v1042-pager{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-top:1px solid #e4ebf3;color:#71839a;font-size:12px}.v1042-pager>div{display:flex;align-items:center;gap:10px}.v1042-modal-note{background:#f4f8fd;border:1px solid #dde9f7;border-radius:12px;padding:12px;color:#61758c;font-size:12px}
.v1042-import{display:flex;flex-direction:column;gap:14px}.v1042-import-guide{background:#f5f9ff;border:1px solid #dbe9fb;border-radius:14px;padding:14px}.v1042-import-guide strong,.v1042-import-guide span,.v1042-import-guide small{display:block}.v1042-import-guide span{font-weight:800;color:#194c82;margin:4px 0}.v1042-import-guide small{color:#73869c}.v1042-import-summary{border-radius:12px;background:#f8fafc;border:1px solid #e3e9f0;padding:11px 13px;color:#61748c}.v1042-import-preview{max-height:310px;overflow:auto;border:1px solid #e0e8f1;border-radius:14px}.v1042-import-preview .data-table{margin:0}.v1042-invalid td{background:#fff7f7}.danger-text{color:#c94545!important}
@media(max-width:1280px){.v1042-stat-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:900px){.v1042-company-head{align-items:flex-start;flex-direction:column}.v1042-head-actions{justify-content:flex-start}.v1042-search-form{grid-template-columns:1fr}.v1042-result-grid{grid-template-columns:1fr}.v1042-stat-grid{grid-template-columns:repeat(2,1fr)}.v1042-warehouse-toolbar{grid-template-columns:1fr}.v1042-result-meta{grid-template-columns:1fr}}@media(max-width:560px){.v1042-search-hero{padding:18px;border-radius:16px}.v1042-stat-grid{grid-template-columns:1fr}.v1042-pager{align-items:flex-start;flex-direction:column}.v1042-company-result{padding:14px}.v1042-company-page{gap:14px}}

/* V10.42.2 hotfix — login alignment, company warehouse filters, dashboard stability */
html{scrollbar-gutter:stable}
.login-screen{display:grid!important;place-items:center!important;min-height:100vh!important;padding:24px!important;background:linear-gradient(135deg,#071a33 0%,#0b4179 52%,#0b64c9 100%)!important}
.login-shell{width:min(1120px,calc(100vw - 48px))!important;min-height:min(650px,calc(100vh - 48px))!important;grid-template-columns:1.04fr .96fr!important;border-radius:22px!important;overflow:hidden!important;box-shadow:0 34px 90px rgba(2,17,34,.30)!important;border:1px solid rgba(255,255,255,.16)!important;margin:auto!important}
.login-brand{padding:56px!important}.login-card{width:auto!important;align-self:stretch!important;justify-self:stretch!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:58px 52px!important}
@media(max-width:760px){.login-screen{padding:0!important;background:#fff!important}.login-shell{width:100%!important;min-height:100vh!important;display:block!important;border-radius:0!important;border:0!important;box-shadow:none!important}.login-card{min-height:100vh!important;padding:34px 24px!important;justify-content:center!important}}

.v1042-stat-filter{cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease,background .16s ease}
.v1042-stat-filter:hover{border-color:#9cc6f2!important;box-shadow:0 10px 26px rgba(18,74,132,.09)!important;transform:translateY(-1px)}
.v1042-stat-filter.active{border-color:#2b82df!important;box-shadow:0 0 0 3px rgba(43,130,223,.08),0 10px 24px rgba(18,74,132,.07)!important}
.v1042-stat-filter.total.active{background:linear-gradient(145deg,#0b559f,#0872d2)!important}
.v1042-stat-filter:focus-visible{outline:3px solid rgba(43,130,223,.20);outline-offset:2px}
.v1042-row-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.v1042-row-actions .btn{margin:0}

/* Dashboard stability: prevent visible frame-jump during async data hydration. */
#main .v1041-page.v81-dashboard,#main .v1041-page.dashboard-v714,#main .v1041-page.v1039-dashboard{animation:none!important}
#main .v81-dashboard .chart-bar,#main .dashboard-v714 .chart-bar{transition:none!important}
#main{scrollbar-gutter:stable}


/* V10.42.4 hotfix — login screen must actually disappear after successful authentication */
.login-screen.hidden{display:none!important}
#app.hidden{display:none!important}
