/* HUSTA Hội thành viên – scoped frontend CSS, 1.0.2 responsive pagination fix. */
.husta-hm{--hm-blue:#16447e;--hm-navy:#102f65;--hm-accent:#2e8bdb;--hm-ink:#243b56;--hm-muted:#677a90;--hm-border:#e5ebf3;--hm-bg:#f8fbff;--hm-shadow:0 6px 19px rgba(24,68,122,.065);background:var(--hm-bg);color:var(--hm-ink);font:14px/1.55 Arial,"Segoe UI",sans-serif;width:100%}
.husta-hm,.husta-hm *,.husta-hm *:before,.husta-hm *:after{box-sizing:border-box}
.husta-hm button,.husta-hm input,.husta-hm select{font:inherit}
.husta-hm button{cursor:pointer}
.husta-hm a{color:inherit}
.husta-hm a:hover{color:var(--hm-accent)}
.husta-hm :focus-visible{outline:3px solid #73baff;outline-offset:3px}
.husta-hm [hidden]{display:none!important}
.husta-hm .husta-hm-container{width:min(1510px,calc(100% - 64px));margin-inline:auto}
.husta-hm .husta-hm-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.husta-hm .husta-hm-hero{position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(110deg,#f6faff,#e8f3ff);border-bottom:1px solid #e4edf7}
.husta-hm .husta-hm-hero:before{content:"";position:absolute;z-index:-1;right:0;top:0;bottom:0;width:min(70%,930px);background-image:linear-gradient(90deg,#f5faff 0%,rgba(245,250,255,.55) 39%,rgba(245,250,255,.03) 100%),var(--husta-hero);background-position:center right;background-size:cover;opacity:.85}
.husta-hm .husta-hm-hero>.husta-hm-container{min-height:200px;padding:22px 0 33px}
.husta-hm .husta-hm-breadcrumb{display:flex;gap:11px;align-items:center;color:#566b82;font-size:12px;flex-wrap:wrap;margin-bottom:18px}
.husta-hm .husta-hm-breadcrumb a{text-decoration:none}
.husta-hm .husta-hm-breadcrumb>span:nth-child(even){font-size:19px;color:#89a1b8}
.husta-hm .husta-hm-hero-title{display:flex;align-items:center;gap:15px}
.husta-hm .husta-hm-hero-title>img{width:66px;height:66px;object-fit:contain;flex:none}
.husta-hm h1{margin:0;color:#113676;font-weight:900;font-size:clamp(27px,2.9vw,43px);line-height:1.14;letter-spacing:.004em}
.husta-hm .husta-hm-hero-line{display:block;width:55px;height:3px;border-radius:3px;background:#2376c5;margin-top:12px}
.husta-hm .husta-hm-hero-title p{font-weight:400;color:#59718a;margin:12px 0 0;max-width:870px;font-size:14px}
.husta-hm .husta-hm-main{padding:27px 0 50px}
.husta-hm .husta-hm-tools{display:grid;grid-template-columns:minmax(240px,1fr) 185px 160px auto;align-items:center;gap:12px;margin-bottom:23px}
.husta-hm .husta-hm-search{display:flex;align-items:center;position:relative}
.husta-hm .husta-hm-search svg{position:absolute;width:19px;height:19px;left:15px;color:#6283a6}
.husta-hm .husta-hm-search input,.husta-hm .husta-hm-tools select{height:46px;width:100%;max-width:none;border:1px solid #dce5f1;border-radius:7px;background:#fff;color:#334b65;font-size:13px;box-shadow:none;outline-offset:2px;margin:0}
.husta-hm .husta-hm-search input{padding:0 14px 0 45px}
.husta-hm .husta-hm-tools select{padding:0 14px}
.husta-hm .husta-hm-search input::placeholder{color:#8190a3}
.husta-hm .husta-hm-views{display:flex;gap:3px;padding:3px;border-radius:8px;background:#ecf2f9}
.husta-hm .husta-hm-views button{background:transparent;border:0;border-radius:5px;color:#6682a0;width:42px;height:39px;font-size:27px;line-height:1;display:grid;place-items:center;padding:0;box-shadow:none}
.husta-hm .husta-hm-views button[aria-pressed=true]{background:#2b83ca;color:white}
.husta-hm .husta-hm-layout{display:grid;grid-template-columns:260px minmax(0,1fr);align-items:start;gap:25px}
.husta-hm .husta-hm-sidebar{border:1px solid var(--hm-border);background:white;border-radius:7px;box-shadow:0 4px 18px rgba(20,56,109,.035);overflow:hidden;position:sticky;top:14px}
.husta-hm .husta-hm-sidebar ul{margin:0;padding:0;list-style:none}
.husta-hm .husta-hm-sidebar button{display:flex;align-items:center;text-align:left;justify-content:space-between;gap:9px;width:100%;border:0;border-bottom:1px solid #eff3f8;background:#fff;color:#405a74;padding:14px 14px;font-size:13px;line-height:1.45;min-height:49px;box-shadow:none;border-radius:0}
.husta-hm .husta-hm-sidebar button:hover{background:#eff7fd;color:#12609d}
.husta-hm .husta-hm-sidebar button[aria-current=true]{background:#2389d6;color:white;font-weight:700}
.husta-hm .husta-hm-sidebar button>span:first-child{flex:1}
.husta-hm .husta-hm-sidebar button>span:last-child{opacity:.78;white-space:nowrap}
.husta-hm .husta-hm-catalog{min-width:0;container-type:inline-size;container-name:husta-hm-catalog}
.husta-hm .husta-hm-results{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px;min-height:21px}
.husta-hm .husta-hm-results p{margin:0;font-size:13px;font-weight:600;color:#577087}
.husta-hm .husta-hm-results strong{color:#1c508d}
.husta-hm .husta-hm-results button{border:0;background:transparent;text-decoration:underline;font-size:12px;color:#2466a0;padding:3px}
.husta-hm .husta-hm-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.husta-hm .husta-hm-card{min-width:0;position:relative;border:1px solid #e8edf5;background:white;border-radius:8px;box-shadow:var(--hm-shadow);transition:transform .18s ease,box-shadow .18s ease;overflow:hidden}
.husta-hm .husta-hm-card:before{content:"";position:absolute;top:0;left:14px;width:35px;height:3px;background:#318dde;border-radius:0 0 5px 5px}
.husta-hm .husta-hm-card:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(28,73,132,.13)}
.husta-hm .husta-hm-card-inner{display:grid;grid-template-columns:minmax(80px,108px) minmax(0,1fr);align-items:stretch;gap:12px;padding:22px 13px 17px;min-height:218px}
.husta-hm .husta-hm-portrait,.husta-hm .husta-hm-no-photo{width:100%;max-width:108px;height:140px;min-width:0;flex:none;object-fit:cover;object-position:50% 16%;border-radius:5px;border:1px solid #e1e9f3;background:#eaf2fa}
.husta-hm .husta-hm-no-photo{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;background:linear-gradient(145deg,#eaf4ff,#f4f8fc);border-style:dashed;color:#7790aa;font-size:10px;text-align:center}
.husta-hm .husta-hm-no-photo svg{width:38px;height:38px;color:#799ebf;fill:none;stroke:currentColor;stroke-width:1.6}
.husta-hm .husta-hm-card-info{min-width:0;display:flex;flex-direction:column;align-items:stretch}
.husta-hm .husta-hm-card h2{font-size:13px;line-height:1.32;color:#133a76;font-weight:800;margin:0 0 12px;text-transform:uppercase;letter-spacing:0;overflow-wrap:anywhere}
.husta-hm .husta-hm-meta{display:flex;align-items:flex-start;gap:7px;color:#5e7188;font-size:11.5px;line-height:1.4;margin:0 0 6px;overflow-wrap:anywhere}
.husta-hm .husta-hm-meta svg{width:14px;height:14px;flex:none;color:#6689af;margin-top:1px;fill:none;stroke:currentColor;stroke-width:2}
.husta-hm .husta-hm-meta b{font-weight:500}
.husta-hm .husta-hm-pending{color:#9aa6b5;font-style:italic}
.husta-hm .husta-hm-detail-btn{margin-top:auto;display:flex;align-items:center;justify-content:center;gap:5px;width:100%;max-width:100%;min-width:0;align-self:stretch;background:#eff6fd;border:0;border-radius:4px;color:#215b93;font-size:11px;font-weight:700;line-height:1.35;padding:10px 7px;text-align:center;white-space:normal!important;overflow-wrap:break-word;box-shadow:none}.husta-hm .husta-hm-detail-btn span:first-child{min-width:0}.husta-hm .husta-hm-detail-btn span:last-child{flex:none}
.husta-hm .husta-hm-detail-btn:hover{background:#dceeff;color:#0b4b82}
.husta-hm .husta-hm-cards.is-list{grid-template-columns:1fr}
.husta-hm .husta-hm-cards.is-list .husta-hm-card-inner{min-height:155px;grid-template-columns:108px minmax(0,1fr)}.husta-hm .husta-hm-cards.is-list .husta-hm-detail-btn{width:max-content;max-width:100%;padding-inline:15px}
.husta-hm .husta-hm-pager{display:flex;justify-content:space-between;align-items:center;gap:13px;margin-top:24px;flex-wrap:wrap}
.husta-hm .husta-hm-pager>[data-pagination]{display:flex;align-items:center;gap:6px;margin:auto}
.husta-hm .husta-hm-pager button{height:36px;min-width:35px;border:1px solid #e5edf5;border-radius:5px;padding:0 8px;background:white;color:#45637f;box-shadow:none}
.husta-hm .husta-hm-pager button[aria-current=page]{background:#2e7fc6;color:white;border-color:#2e7fc6}
.husta-hm .husta-hm-pager button:disabled{opacity:.4;cursor:default}
.husta-hm .husta-hm-pager>[data-count]{color:#7b8b9e;font-size:12px}
.husta-hm .husta-hm-empty{grid-column:1/-1;background:white;border:1px solid #e2eaf4;border-radius:8px;padding:42px;text-align:center;color:#60758b}
.husta-hm .husta-hm-empty h3{margin:0 0 6px;color:#26496f;font-size:19px}
.husta-hm .husta-hm-overlay{position:fixed;z-index:999999;inset:0;background:rgba(11,28,56,.68);display:flex;justify-content:center;align-items:center;padding:25px;overflow-y:auto}
.husta-hm .husta-hm-dialog{position:relative;width:min(720px,100%);max-height:min(92vh,900px);overflow-y:auto;background:white;border-radius:12px;padding:29px;box-shadow:0 25px 80px rgba(0,0,0,.25)}
.husta-hm .husta-hm-dialog>button[data-close]{position:absolute;top:10px;right:12px;width:36px;height:36px;background:#eef4fa;color:#274a72;border:0;border-radius:8px;font-size:28px;line-height:1}
.husta-hm .husta-hm-dialog-heading{display:flex;gap:20px;align-items:center;padding-right:25px;padding-bottom:20px;border-bottom:1px solid #e9edf4}
.husta-hm .husta-hm-dialog-heading .husta-hm-portrait,.husta-hm .husta-hm-dialog-heading .husta-hm-no-photo{width:112px;height:145px}
.husta-hm .husta-hm-dialog h2{color:#173d79;font-size:23px;line-height:1.35;margin:5px 0 8px}
.husta-hm .husta-hm-dialog h3{color:#264a75;font-size:17px;margin:17px 0 8px}
.husta-hm .husta-hm-dialog .husta-hm-kicker{color:#2785cb;font-size:12px;font-weight:700}
.husta-hm .husta-hm-detail-rows{margin-top:15px}
.husta-hm .husta-hm-detail-row{display:grid;grid-template-columns:158px minmax(0,1fr);gap:12px;padding:10px 0;border-bottom:1px solid #eef2f7;color:#2c4261;overflow-wrap:anywhere;white-space:pre-line}
.husta-hm .husta-hm-detail-row .husta-hm-detail-key{color:#6f8095;font-weight:700}
.husta-hm .husta-hm-detail-copy{margin-top:17px;line-height:1.7;overflow-wrap:anywhere}
.husta-hm .husta-hm-detail-copy p{margin:0 0 12px}
.husta-hm .husta-hm-web-link{display:inline-block;margin-top:18px;border-radius:6px;padding:10px 15px;background:#eaf4fe;color:#1e6ca9;font-weight:700;text-decoration:none}
.husta-hm .husta-hm-footer{background:#f2f2f2;padding:48px 0 0;border-top:1px solid #e6eaf0}
.husta-hm .husta-hm-footgrid{display:grid;grid-template-columns:175px 1fr 1fr 1.15fr;gap:27px}
.husta-hm .husta-hm-footgrid h2{font-size:19px;color:#314c82;margin:0 0 13px}
.husta-hm .husta-hm-footgrid p{font-size:13px;line-height:1.75;margin:0 0 13px;color:#1f2e3f}
.husta-hm .husta-hm-footbrand img{width:150px;height:150px;object-fit:contain}
.husta-hm .husta-hm-footbottom{margin-top:38px;background:#54575b;color:white;padding:13px 0;font-size:12px}
.husta-hm .husta-hm-footbottom>.husta-hm-container{display:flex;justify-content:space-between;gap:20px}
@media(max-width:1320px){.husta-hm .husta-hm-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.husta-hm .husta-hm-layout{grid-template-columns:230px minmax(0,1fr)}}
@media(max-width:970px){.husta-hm .husta-hm-container{width:min(100% - 36px,1510px)}.husta-hm .husta-hm-tools{grid-template-columns:1fr 1fr auto}.husta-hm .husta-hm-search{grid-column:1/-1}.husta-hm .husta-hm-layout{grid-template-columns:205px minmax(0,1fr);gap:15px}.husta-hm .husta-hm-cards{grid-template-columns:1fr}.husta-hm .husta-hm-footgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.husta-hm .husta-hm-container{width:calc(100% - 26px)}.husta-hm .husta-hm-hero>.husta-hm-container{min-height:175px}.husta-hm .husta-hm-hero-title{gap:10px}.husta-hm .husta-hm-hero-title>img{width:48px;height:48px}.husta-hm h1{font-size:26px}.husta-hm .husta-hm-hero-title p{font-size:12px}.husta-hm .husta-hm-tools{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.husta-hm .husta-hm-views{grid-column:1/-1;width:max-content}.husta-hm .husta-hm-layout{display:block}.husta-hm .husta-hm-sidebar{position:static;margin-bottom:18px}.husta-hm .husta-hm-sidebar ul{display:flex;gap:5px;overflow:auto;padding:8px}.husta-hm .husta-hm-sidebar li{flex:none}.husta-hm .husta-hm-sidebar button{border:1px solid #dfe8f3;border-radius:7px;min-height:38px;padding:7px 10px;white-space:nowrap;width:auto}.husta-hm .husta-hm-card-inner{padding:20px 13px}.husta-hm .husta-hm-pager>[data-pagination]{margin:0}.husta-hm .husta-hm-dialog{padding:20px}.husta-hm .husta-hm-dialog-heading{gap:12px}.husta-hm .husta-hm-dialog-heading .husta-hm-portrait,.husta-hm .husta-hm-dialog-heading .husta-hm-no-photo{width:75px;height:98px}.husta-hm .husta-hm-dialog h2{font-size:17px}.husta-hm .husta-hm-detail-row{grid-template-columns:105px 1fr}.husta-hm .husta-hm-footgrid{grid-template-columns:1fr;gap:15px}.husta-hm .husta-hm-footbottom>.husta-hm-container{flex-wrap:wrap}}
@media(max-width:360px){.husta-hm .husta-hm-card-inner{gap:9px;grid-template-columns:86px minmax(0,1fr)}.husta-hm .husta-hm-portrait,.husta-hm .husta-hm-no-photo{width:86px;max-width:86px;height:115px}.husta-hm .husta-hm-card h2{font-size:12px}}
@media(prefers-reduced-motion:reduce){.husta-hm *{scroll-behavior:auto!important;transition:none!important}}

/* The catalog may be narrower than the viewport when embedded in a WordPress theme. */
@container husta-hm-catalog (max-width:999px){.husta-hm .husta-hm-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container husta-hm-catalog (max-width:680px){.husta-hm .husta-hm-cards{grid-template-columns:minmax(0,1fr)}}
