@import url('https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;500;550;600;650;700;750;800&display=swap');
:root{font-family:'Be Vietnam Pro',Arial,sans-serif;font-size:16px;font-synthesis:none;color:#29232c;background:#f7f8fc;--brand-primary:#b91e5b;--brand-deep:#811540;--brand-blue:#1b65af;--brand-purple:#7d397b;--brand-gradient:linear-gradient(110deg,#b91e5b,#7d397b 52%,#1b65af);--brand-soft:#fbedf3;--muted:#746b7d;--border:#e6e3ec}
*{box-sizing:border-box}body{margin:0}html{scroll-behavior:smooth;scroll-padding-top:24px}a{color:inherit;text-decoration:none}a:focus-visible,summary:focus-visible{outline:3px solid var(--brand-blue);outline-offset:4px;border-radius:5px}.skip-link{position:fixed;top:-100px;left:16px;padding:16px;background:white;z-index:100}.skip-link:focus{top:12px}
.sidebar{position:fixed;inset:0 auto 0 0;width:214px;padding:27px 20px 23px;background:linear-gradient(165deg,#811540 0%,#661d55 53%,#164a80 100%);color:#fff;display:flex;flex-direction:column;z-index:10}.brand{display:flex;flex-direction:column;align-items:center;gap:15px;flex-shrink:0;padding:0 0 25px;border-bottom:1px solid #ffffff24}.brand-logo-surface{display:block;width:100%;background:#fff;border-radius:11px;padding:2px 12px 7px;overflow:hidden;box-shadow:0 5px 16px #350d2824}.brand-logo{display:block;width:156%;height:auto;max-width:none;margin:-5px -28% -2px}.brand-product{font-size:13px;letter-spacing:4px;color:#fff}.sidebar-body{overflow:auto}.nav-label{color:#ead9e8;font-size:12px;font-weight:500;letter-spacing:1px;margin:28px 8px 14px}.sidebar nav{display:grid;gap:6px}.sidebar nav a{display:flex;justify-content:space-between;align-items:center;padding:12px 11px;gap:8px;border-radius:8px;font-size:14px;transition:background .18s}.sidebar nav a:hover,.sidebar nav a:focus-visible{background:#ffffff20}.nav-count{font-size:12px;border:1px solid #ffffff35;border-radius:5px;padding:2px 6px;color:#f9edf7}.level-guide{border-top:1px solid #ffffff24;margin-top:26px}.level-guide>div{display:flex;align-items:center;gap:10px;font-size:14px;margin:14px 8px;color:#f7edf5}.level-marker{width:9px;height:9px;border-radius:3px}.level-marker.probation{background:#bbb1c5}.level-marker.level-one{background:#8fc4fa}.level-marker.senior{background:#d4a5d3}.level-marker.manager{background:#f394bb}.guide-note{color:#e4d5e4;font-size:12px;line-height:1.8;margin:20px 8px}.sidebar-footer{margin-top:auto;border-top:1px solid #ffffff24;padding:21px 8px 0}.sidebar-footer span{font-size:12px;font-weight:600;letter-spacing:1.3px}.sidebar-footer p{font-size:12px;color:#e4d5e4;margin:8px 0 0}
main{margin-left:214px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:15px;min-height:58px;padding:14px 30px;background:white;border-bottom:1px solid var(--border);font-size:13px;color:var(--muted)}.topbar strong{color:var(--brand-deep);font-weight:600}.top-divider{margin:0 12px;color:#c3bcca}.internal-tag{font-size:12px;background:var(--brand-soft);color:var(--brand-deep);padding:5px 9px;border-radius:5px;white-space:nowrap}.workspace{max-width:2000px;margin:auto;padding:28px 30px 22px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:22px}.eyebrow{color:var(--brand-primary);font-size:12px;letter-spacing:2px;font-weight:650;margin:0 0 11px}h1{font-size:30px;line-height:1.4;letter-spacing:-.9px;font-weight:750;margin:0}h1>span{color:var(--brand-primary)}.intro{font-size:16px;line-height:1.65;color:var(--muted);margin:8px 0 0}.directory-total{display:flex;align-items:center;gap:14px;border-left:1px solid #e2d8e4;padding-left:25px;flex-shrink:0}.directory-total strong{font-size:46px;letter-spacing:-2px;font-weight:650;color:var(--brand-primary);line-height:1.2}.directory-total span{font-size:12px;line-height:1.9;color:var(--muted)}.directory-meta{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;padding:13px 0;margin:17px 0 21px;border-block:1px solid var(--border);font-size:14px;color:var(--muted)}.directory-meta strong{color:var(--brand-deep);font-weight:600}.meta-separator{margin:0 13px;color:#c4b7c9}.decision{font-size:13px}
.ai-catalog{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;align-items:start}.profile-card{--tone:#b91e5b;--tint:#fcebf3;--edge:#ebd4e0;position:relative;min-width:0;padding:16px;background:linear-gradient(135deg,#fff 35%,#fdf8fb);border:1px solid var(--edge);border-radius:14px;box-shadow:0 3px 13px #30204c06;transition:border-color .18s,box-shadow .18s,transform .18s}.profile-card:hover{border-color:var(--tone);box-shadow:0 8px 23px #30204c0c;transform:translateY(-2px)}.tone-digital{--tone:#1b65af;--tint:#e9f2fc;--edge:#d9e5f1;background:linear-gradient(135deg,#fff 35%,#f5f9fe)}.tone-commerce{--tone:#7d397b;--tint:#f2eaf7;--edge:#e5d9ed;background:linear-gradient(135deg,#fff 35%,#faf7fd)}.tone-industry{--tone:#811540;--tint:#f9eaf0;--edge:#ebd8df;background:linear-gradient(135deg,#fff 35%,#fcf7f9)}.tone-media{--tone:#39599e;--tint:#ecf0fc;--edge:#dde3f2;background:linear-gradient(135deg,#fff 35%,#f7f9ff)}.group-anchor{position:absolute;left:0;top:0;scroll-margin-top:24px}.profile-meta{display:flex;justify-content:space-between;align-items:center;gap:6px;min-height:23px;margin-bottom:14px}.group-label{font-size:12px;color:var(--tone);font-weight:550}.badge{font-size:12px;font-weight:500;line-height:1.5;padding:2px 7px;border-radius:5px;white-space:nowrap}.badge.manager{color:#811540;background:#fbedf3}.badge.level-one{color:#17558f;background:#eaf3fc}.badge.probation{color:#62526b;background:#f1eef4}.profile-heading{display:flex;align-items:center;gap:11px;min-height:48px;margin-bottom:15px}.profile-icon{display:grid;place-items:center;flex-shrink:0;width:43px;height:43px;border-radius:12px;background:var(--tint);color:var(--tone);box-shadow:inset 0 0 0 1px #ffffff70}.profile-icon svg{width:24px;height:24px}.profile-identity{min-width:0}.profile-identity h2{font-size:16px;line-height:1.45;font-weight:650;letter-spacing:-.35px;margin:0;overflow-wrap:anywhere}.position{font-size:12px;color:var(--muted);display:block;line-height:1.5;margin-top:2px}.profile-owner{padding-bottom:14px}.owner-label{display:block;font-size:12px;color:var(--muted);line-height:1.5;margin-bottom:3px}.owner-name{font-size:14px;line-height:1.5;font-weight:500;margin:0;overflow-wrap:anywhere;color:#43384a}.profile-actions{position:relative;border-top:1px solid var(--edge);padding-top:12px}.task-details>summary{width:calc(100% - 105px);list-style:none;display:flex;align-items:center;gap:5px;cursor:pointer;color:var(--tone);font-size:14px;font-weight:550;min-height:34px;white-space:nowrap}.task-details>summary::-webkit-details-marker{display:none}.task-count{font-size:12px;font-weight:400;color:var(--muted);padding-left:1px}.task-details>summary svg{flex-shrink:0;transition:transform .16s}.task-details[open]>summary svg{transform:rotate(180deg)}.task-details>summary:hover{text-decoration:underline;text-underline-offset:4px}.access-button{position:absolute;top:12px;right:0;display:flex;gap:5px;align-items:center;justify-content:center;min-height:34px;padding:7px 10px;font-size:14px;font-weight:550;border-radius:6px;background:var(--brand-gradient);color:#fff;border:1px solid transparent;cursor:pointer}.access-button:not([aria-disabled=true]):hover{background:linear-gradient(110deg,#811540,#542653 52%,#164a80)}.access-button[aria-disabled=true]{background:#f6eff4;color:#806575;border-color:#e9dce5;cursor:default}.task-body{padding-top:10px}.manager-detail{font-size:14px;line-height:1.6;color:#695c71;margin:0 0 12px}.task-body ol{font-size:16px;line-height:1.65;padding-left:21px;margin:0;color:#514758}.task-body li{padding-left:2px;margin-bottom:10px}.task-body li::marker{font-size:13px;color:var(--tone)}.link-status{font-size:12px;line-height:1.5;color:#736773;display:block;margin-top:12px}.link-status.ready{color:var(--brand-blue)}.page-footer{display:flex;align-items:flex-start;gap:25px;margin-top:27px;padding-top:17px;border-top:1px solid var(--border);font-size:12px;line-height:1.8;color:var(--muted)}.page-footer>span{color:var(--brand-deep);font-weight:600;white-space:nowrap;letter-spacing:1px}.page-footer p{margin:0;max-width:1000px}
@media(min-width:1780px){.ai-catalog{grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}.workspace{padding-inline:34px}.profile-card{padding:18px}.profile-heading{margin-bottom:16px}.profile-identity h2{font-size:17px}.profile-icon{width:46px;height:46px}.task-details>summary,.access-button{font-size:14px}.task-details>summary{width:calc(100% - 108px)}}
@media(max-width:1399px){.ai-catalog{grid-template-columns:repeat(3,minmax(0,1fr))}.sidebar{width:200px;padding-inline:17px}main{margin-left:200px}.workspace{padding-inline:25px}.topbar{padding-inline:25px}.profile-card{padding:17px}.profile-heading{min-height:49px}}
@media(max-width:1099px){.ai-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}.directory-total span{display:none}.directory-total{padding-left:15px}h1{font-size:27px}.workspace{padding:24px 21px}.profile-card{padding:18px}}
@media(max-width:760px){.sidebar{position:relative;inset:auto;width:auto;padding:13px 18px 0}.brand{flex-direction:row;justify-content:flex-start;gap:20px;padding-bottom:12px;border:0}.brand-logo-surface{width:116px;flex-shrink:0;padding:0 8px 3px}.brand-product{font-size:14px;padding-left:20px;border-left:1px solid #ffffff40;letter-spacing:3px}.brand-logo{margin-top:-6px;margin-bottom:-5px}.sidebar-body{overflow:visible}.nav-label,.level-guide,.sidebar-footer{display:none}.sidebar nav{display:flex;overflow-x:auto;margin:0 -18px;padding:0 13px 11px;gap:3px}.sidebar nav a{white-space:nowrap;padding:8px;gap:8px}.nav-count{padding:1px 4px}main{margin:0}.topbar{padding:11px 18px;min-height:46px;font-size:12px}.top-divider{margin:0 8px}.internal-tag{font-size:12px;padding:4px 7px}.workspace{padding:22px 18px}.eyebrow{font-size:12px;margin-bottom:9px}.page-heading{gap:13px}.directory-total{padding-left:12px}.directory-total strong{font-size:37px}h1{font-size:25px;letter-spacing:-.7px}.intro{font-size:14px}.directory-meta{margin:16px 0 18px;padding:11px 0;gap:7px 15px}.decision{font-size:12px}.ai-catalog{gap:14px}.profile-card{padding:15px}.page-footer{display:block}.page-footer p{margin-top:7px}}
@media(max-width:559px){.ai-catalog{grid-template-columns:1fr;gap:15px}.profile-card{padding:19px}.profile-identity h2{font-size:17px}.profile-icon{width:46px;height:46px}.profile-heading{min-height:48px;margin-bottom:14px}.profile-meta{margin-bottom:12px}.owner-name{font-size:15px}.task-details>summary,.access-button{font-size:14px}.task-details>summary{width:calc(100% - 112px)}h1{font-size:23px}.directory-total{display:none}.topbar{flex-wrap:wrap;gap:9px}.profile-actions{padding-top:12px}.profile-card:hover{transform:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}.profile-card:hover{transform:none}}
[hidden]{display:none!important}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.directory-controls{display:flex;align-items:center;gap:10px;padding:13px;background:#fff;border:1px solid var(--border);border-radius:17px;box-shadow:0 12px 32px #4334540c;margin-bottom:25px;flex-wrap:wrap}
.search-field{display:flex;align-items:center;gap:10px;flex:1 1 280px;min-width:0;min-height:46px;padding:0 13px;border:1px solid #d4dfec;border-radius:10px;background:#fafbfe;color:#7b8195;transition:border-color .18s,box-shadow .18s}
.search-field:focus-within{border-color:var(--brand-blue);box-shadow:0 0 0 3px #1b65af24;background:#fff}
.search-field>svg{flex-shrink:0}
.search-field input{min-width:0;width:100%;border:0;outline:0;background:transparent;padding:12px 0;font:inherit;font-size:14px;line-height:1.5;color:#29232c}
.search-field input::placeholder{color:#746b7d;opacity:1}
.search-field input::-webkit-search-cancel-button{display:none}
.clear-search{display:grid;place-items:center;width:30px;height:30px;flex-shrink:0;padding:0;border:0;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer}
.clear-search:hover{background:var(--brand-soft);color:var(--brand-deep)}
.quick-filters{display:flex;flex:0 0 auto;flex-wrap:wrap;gap:7px;max-width:100%}
.filter-tab{min-height:40px;padding:9px 13px;border:1px solid var(--border);border-radius:999px;background:#fff;color:#696176;font:inherit;font-size:14px;line-height:1.5;white-space:nowrap;cursor:pointer;transition:background .18s,border-color .18s,color .18s}
.filter-tab:hover{background:var(--brand-soft);border-color:#d9afc3;color:var(--brand-deep)}
.filter-tab[aria-pressed=true]{background:var(--brand-deep);border-color:var(--brand-deep);color:#fff;box-shadow:0 3px 8px #81154015}
button:focus-visible{outline:3px solid var(--brand-blue);outline-offset:3px}
.catalog-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:15px}
.catalog-heading h2{margin:0;font-size:18px;font-weight:650;line-height:1.5;letter-spacing:-.35px}
#result-count{font-size:13px;color:var(--muted)}
.empty-results{padding:38px 20px;text-align:center;background:#fff;border:1px solid var(--border);border-radius:14px}
.empty-results h3{font-size:18px;line-height:1.5;margin:0 0 8px}
.empty-results p{font-size:16px;line-height:1.65;color:var(--muted);margin:0 0 19px}
.empty-results button{padding:11px 17px;border:1px solid #e3c7d5;border-radius:8px;background:var(--brand-soft);color:var(--brand-deep);font:inherit;font-size:14px;cursor:pointer}
@media(max-width:999px){.search-field{flex-basis:100%}.quick-filters{width:100%}}
@media(max-width:760px){.directory-controls{gap:11px;padding:12px;margin-bottom:20px}.search-field input{font-size:16px}.filter-tab{padding:8px 12px;min-height:42px}.quick-filters{gap:7px}.catalog-heading h2{font-size:17px}}
@media(forced-colors:active){.filter-tab[aria-pressed=true]{background:Highlight;color:HighlightText;border-color:Highlight}.search-field:focus-within{outline:2px solid Highlight}}
@media(forced-colors:active){.sidebar{background:Canvas;color:CanvasText}.sidebar nav a{color:LinkText}.profile-card,.profile-icon{background:Canvas;border:1px solid CanvasText}.profile-icon{color:CanvasText}.access-button{background:ButtonFace!important;color:ButtonText!important;border:1px solid ButtonText}.nav-label,.guide-note,.sidebar-footer p,.brand-product,.level-guide>div{color:CanvasText}}
/* Cấp, Khối and capability filters share the existing Novaon toolbar. */
.dimension-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px;max-width:100%}.filter-select{display:flex;align-items:center;gap:7px;padding:5px 10px;border:1px solid var(--border);border-radius:999px;font-size:14px;color:var(--brand-deep);background:#fff;min-width:0}.filter-select:focus-within{outline:2px solid var(--brand-blue);outline-offset:2px}.filter-select select{font:inherit;font-size:14px;border:0;background:transparent;color:#43384a;min-height:34px;max-width:140px;cursor:pointer}.clear-all{background:var(--brand-soft);color:var(--brand-deep);border:0;border-radius:20px;padding:10px 13px;font:inherit;font-size:14px;cursor:pointer}.profile-actions{display:flex;justify-content:space-between;align-items:center;gap:8px}.profile-actions .access-button{position:static;flex-shrink:0;min-height:38px}.task-button{display:flex;align-items:center;gap:7px;border:1px solid var(--edge);border-radius:7px;background:var(--tint);color:var(--tone);padding:8px 10px;min-height:38px;font:inherit;font-size:14px;cursor:pointer}.task-button:hover{border-color:var(--tone)}.profile-rating{display:flex;flex-wrap:wrap;align-items:center;gap:2px 8px;margin:-3px 0 12px}.rating-label{font-size:14px;color:var(--muted)}.rating-stars{display:flex;gap:1px}.star-button{font:inherit;font-size:24px;line-height:1;min-width:29px;min-height:32px;padding:1px;border:0;border-radius:4px;background:transparent;color:#aaa3b1;cursor:pointer}.star-button.selected{color:#b97800}.star-button:hover,.star-button:focus-visible{color:#b97800;background:#fff3d7}.star-button:disabled{cursor:wait}.rating-summary{width:100%;font-size:12px;color:var(--muted);min-height:18px;line-height:1.5}.rating-retry{border:0;background:transparent;text-decoration:underline;color:var(--brand-blue);font:inherit;cursor:pointer;padding:0}.modal-open{overflow:hidden}#task-dialog{--tone:var(--brand-primary);border:1px solid var(--border);border-radius:20px;padding:0;width:min(640px,calc(100% - 32px));max-height:85dvh;color:#29232c;background:#fff;box-shadow:0 25px 100px #24102655;overflow:auto}#task-dialog::backdrop{background:#23152e88;backdrop-filter:blur(4px)}.dialog-header{position:sticky;top:0;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:25px 27px 19px;background:#fff;border-bottom:1px solid var(--border);z-index:1}.dialog-header h2{font-size:22px;line-height:1.45;margin:0;overflow-wrap:anywhere}.dialog-header .eyebrow{margin-bottom:7px;font-size:13px;letter-spacing:.5px}#close-dialog{flex-shrink:0;width:36px;height:36px;border:1px solid var(--border);border-radius:9px;background:#f7f8fc;color:#514758;font-size:26px;cursor:pointer}#dialog-body{padding:10px 27px 20px}#dialog-body .manager-detail{font-size:14px;padding-bottom:14px;border-bottom:1px solid var(--border)}#dialog-body ol{font-size:16px;line-height:1.7;padding-left:23px}#dialog-body li{margin-bottom:13px}.dialog-footer{position:sticky;bottom:0;background:#fff;border-top:1px solid var(--border);padding:17px 27px;display:flex;align-items:center;justify-content:space-between;gap:14px}.dialog-footer .access-button{position:static;min-height:42px;white-space:nowrap}#dialog-link-status{font-size:13px;color:var(--muted);line-height:1.6}.group-label,.badge{font-size:14px}.intro{font-size:16px}@media(max-width:999px){.dimension-filters{width:100%}}@media(max-width:559px){.filter-select{border-radius:10px;flex:1 1 130px;justify-content:space-between}.filter-select select{max-width:100%;min-width:0}.dialog-header{padding:19px}.dialog-header h2{font-size:20px}#dialog-body{padding:10px 19px 18px}.dialog-footer{padding:15px 19px;flex-wrap:wrap}.star-button{min-width:36px;min-height:38px}}

.ratings-note{font-size:13px;line-height:1.65;color:var(--muted);margin:-10px 0 17px}

.filter-select.is-disabled{background:#f3f2f6;color:#746b7d}.filter-select select:disabled{color:#746b7d;cursor:not-allowed;opacity:1}

.admin-entry{margin-left:auto;color:var(--brand-blue);font-size:14px;white-space:nowrap}.badge.senior{color:#7d397b;background:#f2eaf7}
