/* Quy chuẩn chung: navy là màu chính; cam là điểm nhấn và dấu dẫn nội dung.
   Màu trạng thái độc lập, luôn đi cùng chữ mô tả. Nạp sau CSS từng chuyên mục. */
:root{--brand-blue:var(--its-primary);--brand-deep:var(--its-primary);--brand-blue-hover:var(--its-primary-hover);--brand-orange:var(--its-accent);--brand-orange-ink:var(--its-accent-ink);--brand-pale:var(--its-surface-soft);--brand-border:var(--its-line-strong);--brand-on-dark:var(--its-on-dark);--navy:var(--its-primary);--deep:var(--its-primary);--teal:var(--its-primary);--gold:var(--its-accent);--ink:var(--its-ink);--muted:var(--its-muted);--line:var(--its-line);--bg:var(--its-background);--red:var(--its-danger);--orange:var(--its-accent-ink)}
.os-domain.its-entry,.policy-entry,.team-entry,.cx-hero,.module-intro,.v-pilot,.pilot-strip,.cycle,.gate-feedback,.v-gate-result{background:var(--its-primary);color:var(--its-surface);border-top:3px solid var(--its-accent)}
.os-domain.its-entry[href="#trai-nghiem-khach-hang"],.team-entry{border-top-width:4px}
.os-domain.its-entry:hover,.os-domain.its-entry:focus-visible{background:var(--its-primary-hover);border-color:var(--its-accent)}
.os-domain-top,.os-domain.its-entry strong,.os-nav-no,.os-block-head>span,.policy-entry .policy-eyebrow,.team-entry .eyebrow{color:var(--its-accent-light)}
.os-domain.its-entry p,.team-entry p,.policy-entry p,.os-block-head p{color:var(--its-on-dark)}
.os-card,.portal-card,.module-card,.action-card,.gate-card,.policy-tile,.its-section-card,.os-procedure,.os-gate,.auth-doc{background:var(--its-surface);border-color:var(--its-line);border-top:3px solid var(--its-primary);border-radius:12px;color:var(--its-ink)}
.os-card[href]:hover,.portal-card:hover,.module-card:hover,.action-card:hover,.gate-card:hover,.policy-tile:hover,.its-section-card:hover,.os-gate:hover{background:var(--its-surface-soft);border-color:var(--its-accent);text-decoration:none}
.os-card h3,.os-gate h2,.gate-card h2,.policy-tile h2{color:var(--its-primary)}
.os-role-links>a,.os-code,.team-values li,.cx-value,.os-source-content pre,.os-source-content table th,.team-content th{background:var(--its-surface-soft);border-color:var(--its-line);color:var(--its-primary)}
.os-card-arrow,.os-procedure-open,.os-unit>b{color:var(--its-accent-ink)}
.os-tabs a[aria-current],.os-page-tabs a[aria-current],.cx-tabs a[aria-current]{background:var(--its-primary);border-color:var(--its-primary);color:var(--its-surface)}
.cx-tabs a.cx-team-tab:not([aria-current]){background:var(--its-accent-soft);color:var(--its-accent-ink);border-color:var(--its-accent)}
.os-tabs a:hover:not([aria-current]),.cx-tabs a:hover:not([aria-current]),.os-page-tabs a:hover:not([aria-current]){background:var(--its-surface-soft);color:var(--its-primary)}
.button:not(.secondary):hover,#global-search button:hover{background:var(--its-primary-hover);color:var(--its-surface)}
.team-entry>a.team-entry-button,.cx-hero .cx-actions>.button,.pilot-strip .button,.v-pilot .button{background:var(--its-accent);color:var(--its-primary);border-color:var(--its-accent);--nav-arrow-color:var(--its-primary);--nav-arrow-hover:var(--its-primary)}
.team-entry>a.team-entry-button:hover,.cx-hero .cx-actions>.button:hover,.pilot-strip .button:hover,.v-pilot .button:hover{background:var(--its-accent-light);color:var(--its-primary)}
.button.secondary{background:var(--its-surface);color:var(--its-primary);border-color:var(--its-line-strong)}
.button.secondary:hover{background:var(--its-surface-soft);color:var(--its-primary)}
.policy-entry .button.secondary{color:var(--its-primary)}
.os-note,.notice:not(.alert),.team-scope,.policy-journal{background:var(--its-surface-soft);border-color:var(--its-line-strong);border-left-color:var(--its-primary);color:var(--its-ink)}
.os-note.attention,.notice.alert,.v-test,.team-status,.policy-badge,.policy-warning,.policy-tile-state,.policy-draft-warning,.policy-decision,.edition,.test-badge{background:var(--its-warning-soft);color:var(--its-warning);border-color:var(--its-warning-line)}
.policy-warning h2,.policy-warning p,.policy-warning-icon,.os-state-label{color:var(--its-warning)}
.policy-warning-icon{border-color:var(--its-warning)}
.os-state-label i{background:var(--its-warning)}
.tag.teal,.v-badge.good,.os-green,.risk-cell.low,.auth-success{background:var(--its-success-soft);color:var(--its-success)}
.tag.orange,.os-yellow,.risk-cell.medium{background:var(--its-warning-soft);color:var(--its-warning)}
.tag.high,.risk-cell.high{background:var(--its-risk-high-soft);color:var(--its-accent-ink)}
.tag.red,.v-badge.danger,.os-red,.risk-cell.critical,.auth-error{background:var(--its-danger-soft);color:var(--its-danger)}
.error,.form-result.error,.gate-stop h2{color:var(--its-danger)}
.os-gray{background:var(--its-surface-soft);color:var(--its-muted)}
.gate-stop{border-color:var(--its-danger-line)}
:is(.os-domain,.policy-entry,.team-entry,.cx-hero,.module-intro,.v-pilot,.pilot-strip,.cycle,.gate-feedback,.v-gate-result){--nav-arrow-color:var(--its-accent-light);--nav-arrow-hover:var(--its-accent-light)}
a .its-nav-arrow{color:var(--nav-arrow-color,var(--its-accent-ink))}
button .its-nav-arrow{color:inherit}
.os-home-intro h1 span{color:var(--its-primary)}
.os-home-intro .eyebrow{color:var(--its-accent-ink)}
.sidebar :focus-visible{outline-color:var(--its-accent-light)}
@media print{.os-domain.its-entry,.policy-entry,.team-entry,.cx-hero,.module-intro,.v-pilot,.pilot-strip,.cycle,.gate-feedback,.v-gate-result{background:var(--its-surface);color:var(--its-ink);border-color:var(--its-line-strong)}.os-domain-top,.os-domain.its-entry strong,.os-domain.its-entry p,.team-entry h2,.team-entry p,.team-entry .eyebrow,.policy-entry h2,.policy-entry p,.policy-entry .policy-eyebrow,.cx-hero h1,.cx-hero p{color:var(--its-ink)}}
