@font-face {
  font-family: "Inter";
  src: url("../fonts/Inter-VariableFont_slnt,wght.woff2") format("woff2");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}

html { margin: 0 !important; }
body.mmo-cms-frontend #wpadminbar { display: none !important; }
.mmo-cms-frontend .sb-nav { top: 0; }
.mmo-cms-frontend .sb-app { min-height: 100vh; padding-top: 66px; }

/* Topbar thêm vào shell gốc SMS Brandname theo yêu cầu CMS MMO. */
.mmo-topbar { position: fixed; z-index: 9980; top: 0; right: 0; left: 72px; display: flex; height: 52px; align-items: center; padding: 0 16px; gap: 16px; border-bottom: 1px solid #eef1f5; background: #fff; transition: left .2s ease; }
html.sb-pinned .mmo-topbar { left: 264px; }
.mmo-topbar-left { display: flex; min-width: 0; align-items: center; gap: 9px; color: var(--muted); font-size: 12.5px; white-space: nowrap; }
.mmo-topbar-left i { color: var(--faint); font-style: normal; }.mmo-topbar-left b { overflow: hidden; color: var(--ink); font-weight: 600; text-overflow: ellipsis; }
.mmo-topbar-search { position: absolute; left: 50%; display: flex; width: min(420px,34vw); height: 32px; align-items: center; padding: 0 9px; gap: 8px; transform: translateX(-50%); border: 1px solid var(--line); border-radius: 8px; background: #f9fafb; color: var(--faint); font: inherit; font-size: 12.5px; text-align: left; cursor: pointer; }
.mmo-topbar-search:hover { border-color: #c5d0dc; background: #fff; }.mmo-topbar-search .sb-ico { width: 17px; height: 17px; }.mmo-topbar-search span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.mmo-topbar-search kbd { margin-left: auto; padding: 1px 5px; border: 1px solid var(--line); border-radius: 5px; background: #fff; color: var(--muted); font: 500 10px/1.4 Inter,sans-serif; }
.mmo-topbar-actions { display: flex; align-items: center; gap: 5px; margin-left: auto; }
.mmo-topbar-icon { display: inline-flex; width: 34px; height: 34px; align-items: center; justify-content: center; padding: 0; border: 0; border-radius: 8px; background: transparent; color: var(--muted); cursor: pointer; }.mmo-topbar-icon:hover,.mmo-topbar-icon[aria-expanded="true"] { background: #f4f5f7; color: var(--ink); }.mmo-topbar-icon .sb-ico { width: 18px; height: 18px; }
.mmo-menu-wrap { position: relative; }
.mmo-account { display: flex; height: 44px; align-items: center; padding: 3px 5px; gap: 9px; border: 0; border-radius: 9px; background: transparent; color: var(--ink); font: inherit; text-align: left; cursor: pointer; }.mmo-account:hover,.mmo-account[aria-expanded="true"] { background: #f4f5f7; }.mmo-account-copy { display: flex; max-width: 170px; min-width: 0; flex-direction: column; line-height: 1.25; }.mmo-account-copy b,.mmo-account-copy small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.mmo-account-copy b { font-size: 12.5px; font-weight: 600; }.mmo-account-copy small { color: var(--muted); font-size: 11px; }.mmo-account-caret { width: 15px !important; height: 15px !important; color: var(--faint); transform: rotate(180deg); transition: transform .15s; }.mmo-account[aria-expanded="true"] .mmo-account-caret { transform: none; }
.mmo-popover { position: absolute; z-index: 10020; top: calc(100% + 7px); right: 0; width: 300px; overflow: hidden; border: 1px solid #eaecf0; border-radius: 12px; background: #fff; box-shadow: 0 16px 40px rgba(16,24,40,.16); }.mmo-popover[hidden] { display: none; }.mmo-popover-head { display: flex; height: 48px; align-items: center; padding: 0 14px; border-bottom: 1px solid var(--line); }.mmo-popover-empty { display: flex; min-height: 165px; align-items: center; justify-content: center; flex-direction: column; padding: 22px; color: var(--muted); text-align: center; }.mmo-popover-empty > .sb-ico { width: 26px; height: 26px; margin-bottom: 9px; color: var(--faint); }.mmo-popover-empty b { color: var(--ink); font-size: 13.5px; }.mmo-popover-empty span { margin-top: 3px; font-size: 12.5px; }
.mmo-account-menu { width: 245px; padding: 6px; }.mmo-account-menu .sb-me-head { padding: 7px 9px 9px; }.mmo-account-menu a { display: flex; height: 40px; align-items: center; padding: 0 9px; gap: 9px; border-radius: 8px; color: #344054; font-size: 14px; font-weight: 500; text-decoration: none; }.mmo-account-menu a:hover { background: #f4f5f7; }.mmo-account-menu a.is-danger { color: var(--err); }.mmo-account-menu a.is-danger:hover { background: #fef3f2; }
.mmo-mobile-me { display: none; }
[data-theme-icon="dark"] { display: none; }html[data-mmo-theme="dark"] [data-theme-icon="light"] { display: none; }html[data-mmo-theme="dark"] [data-theme-icon="dark"] { display: inline-flex; }

/* Tìm nhanh dùng cùng ngôn ngữ card/modal của dự án gốc. */
.mmo-command { position: fixed; z-index: 10090; inset: 0; }.mmo-command[hidden] { display: none; }.mmo-command-scrim { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; background: rgba(16,24,40,.45); }.mmo-command-box { position: relative; width: min(620px,calc(100vw - 32px)); margin: min(15vh,130px) auto 0; overflow: hidden; border: 1px solid #eaecf0; border-radius: 12px; background: #fff; box-shadow: 0 24px 60px rgba(16,24,40,.25); }.mmo-command-box > label { display: flex; height: 56px; align-items: center; padding: 0 16px; gap: 10px; border-bottom: 1px solid var(--line); }.mmo-command-box input { flex: 1; height: 100%; border: 0; outline: 0; background: transparent; color: var(--ink); font: inherit; font-size: 15px; }.mmo-command-results { max-height: 360px; overflow-y: auto; padding: 7px; }.mmo-command-results a { display: flex; align-items: center; padding: 10px 12px; gap: 12px; border-radius: 9px; color: var(--ink); text-decoration: none; }.mmo-command-results a:hover { background: var(--red-soft); color: var(--red); }.mmo-command-results a > .sb-ico { width: 22px; height: 22px; }.mmo-command-results a > span { display: flex; flex-direction: column; }.mmo-command-results small { color: var(--muted); }.mmo-command-box > p { margin: 0; padding: 8px 14px; border-top: 1px solid var(--line); background: var(--panel); color: var(--muted); font-size: 11px; text-align: right; }.mmo-command-box kbd { padding: 1px 5px; border: 1px solid var(--line2); border-radius: 4px; background: #fff; }

/* Nội dung dashboard CMS MMO trên đúng component của SMS Brandname. */
.mmo-ready { display: inline-flex; align-items: center; gap: 7px; color: var(--ok); font-size: 12.5px; font-weight: 600; }.mmo-ready i { width: 8px; height: 8px; border-radius: 50%; background: var(--ok-dot); box-shadow: 0 0 0 3px #dff7ec; }
.mmo-resource-bars { display: grid; padding: 10px 16px 16px; gap: 13px; }.mmo-resource-bars > div { display: grid; grid-template-columns: minmax(130px,1fr) auto; align-items: center; gap: 4px 14px; }.mmo-resource-bars span { color: var(--ink2); font-size: 13.5px; }.mmo-resource-bars b { color: var(--ink); font-size: 13.5px; }.mmo-resource-bars i { grid-column: 1/-1; height: 7px; overflow: hidden; border-radius: 999px; background: #f2f4f7; }.mmo-resource-bars em { display: block; height: 100%; border-radius: inherit; background: #e8848c; }
.mmo-attention { padding: 5px 16px 10px; }.mmo-attention > div { display: flex; align-items: center; padding: 10px 0; gap: 10px; border-bottom: 1px solid #eef2f6; }.mmo-attention > div:last-child { border-bottom: 0; }.mmo-attention .ic { display: inline-flex; flex: 0 0 34px; width: 34px; height: 34px; align-items: center; justify-content: center; border-radius: 50%; }.mmo-attention .ic .sb-ico { width: 18px; height: 18px; }.mmo-attention > div > span:last-child { display: flex; min-width: 0; flex-direction: column; }.mmo-attention b { color: var(--ink); font-size: 13.5px; }.mmo-attention small { margin-top: 2px; color: var(--muted); font-size: 12.5px; }
.mmo-settings { max-width: 900px; }.mmo-settings-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); padding: 16px 16px 4px; gap: 16px; }.mmo-settings-foot { display: flex; justify-content: flex-end; padding: 12px 16px; border-top: 1px solid var(--line); }.mmo-inline-notice { display: flex; align-items: center; margin-bottom: 12px; padding: 10px 12px; gap: 8px; border: 1px solid #abefc6; border-radius: 10px; background: var(--ok-bg); color: var(--ok); font-weight: 600; }
.mmo-inline-notice.is-error { border-color:#fecdca; background:var(--err-bg); color:var(--err); }
.mmo-resource-filters { display:flex; align-items:center; padding:12px 14px; gap:8px; border-bottom:1px solid var(--line); }
.mmo-filter-search { width:min(360px,100%); margin-right:auto; }
.mmo-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:2px 16px; }
.mmo-span-2 { grid-column:1/-1; }
.mmo-row-actions { display:flex; justify-content:flex-end; gap:6px; }
.mmo-row-actions form { margin:0; }
.mmo-auto-code-note { margin-bottom:14px; padding:9px 11px; border:1px solid #d7e4ff; border-radius:9px; background:#f5f8ff; color:var(--ink2); font-size:12.5px; }
.mmo-sort-help { display:flex; align-items:center; min-height:36px; padding:7px 14px; gap:8px; border-bottom:1px solid var(--line); background:#fbfcfe; color:var(--ink2); font-size:12px; }
.mmo-sort-help .sb-ico { width:16px; height:16px; color:var(--muted); }.mmo-sort-help.is-muted { color:var(--muted); }
.mmo-drag-col { width:42px; padding-right:4px !important; text-align:center; }.mmo-drag-handle { display:inline-flex; width:28px; height:28px; align-items:center; justify-content:center; border-radius:7px; color:var(--faint); }
[data-mmo-sort-markets] .mmo-drag-handle { cursor:grab; }[data-mmo-sort-markets] .mmo-drag-handle:hover { background:var(--red-soft); color:var(--red); }[data-mmo-sort-markets] .mmo-drag-handle:active { cursor:grabbing; }
[data-mmo-sort-markets] tr.is-dragging td { opacity:.45; background:var(--red-soft); }
.mmo-primary-cell { display:flex; min-width:160px; flex-direction:column; gap:2px; }
.mmo-primary-cell b { color:var(--ink); font-weight:600; }
.mmo-primary-cell a { color:var(--red); font-size:12px; text-decoration:none; }
.mmo-credential-state { display:inline-flex; align-items:center; gap:5px; color:var(--muted); font-size:12.5px; white-space:nowrap; }
.mmo-credential-state .sb-ico { width:15px; height:15px; }.mmo-credential-state.has-data { color:var(--ok); }
body.mmo-modal-open { overflow:hidden; }
.mmo-import-preview { margin-bottom:14px; border-color:#d7e4ff; }
.mmo-import-preview .sb-card-head { min-height:60px; }.mmo-import-preview .sb-card-head > div { display:flex; flex-direction:column; gap:2px; }.mmo-import-preview .sb-card-head small { color:var(--muted); font-size:12px; font-weight:400; }
.mmo-preview-kpis { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); padding:14px; gap:10px; background:#fbfcfe; border-bottom:1px solid var(--line); }
.mmo-preview-kpis > div { display:flex; min-height:70px; justify-content:center; flex-direction:column; padding:10px 14px; border:1px solid var(--line); border-radius:10px; background:#fff; }
.mmo-preview-kpis b { color:var(--ink); font-size:24px; line-height:1; }.mmo-preview-kpis span { margin-top:7px; color:var(--muted); font-size:12.5px; }.mmo-preview-kpis .has-error b { color:var(--err); }
.mmo-preview-table { max-height:360px; border-radius:0; }.mmo-import-foot { display:flex; align-items:center; justify-content:space-between; padding:12px 14px; gap:12px; border-top:1px solid var(--line); }.mmo-import-foot > span { color:var(--muted); font-size:12.5px; }.mmo-import-foot form { margin:0; }
.mmo-quick-paste { display:grid; grid-template-columns:1fr auto; align-items:end; margin-bottom:18px; padding:14px; gap:9px 10px; border:1px dashed #c9d3e1; border-radius:11px; background:#f9fafb; }
.mmo-quick-paste > div { grid-column:1/-1; display:flex; flex-direction:column; gap:2px; }.mmo-quick-paste b { color:var(--ink); font-size:13.5px; }.mmo-quick-paste small,.mmo-quick-paste [data-mmo-parse-result] { color:var(--muted); font-size:11.5px; }.mmo-quick-paste textarea { min-height:94px; }.mmo-quick-paste [data-mmo-parse-result] { grid-column:1/-1; min-height:16px; }.mmo-quick-paste [data-mmo-parse-result].is-ok { color:var(--ok); }
.mmo-form-section { margin:7px 0 10px; padding-top:14px; border-top:1px solid var(--line); color:var(--ink); font-size:13px; font-weight:700; }
.mmo-detail-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); margin:0; gap:14px; }.mmo-detail-grid > div { min-width:0; padding:12px; border:1px solid var(--line); border-radius:10px; background:var(--panel); }.mmo-detail-grid dt { margin-bottom:5px; color:var(--muted); font-size:11.5px; font-weight:600; text-transform:uppercase; }.mmo-detail-grid dd { overflow-wrap:anywhere; margin:0; color:var(--ink); font-size:13.5px; }
.mmo-secret-panel { margin-top:16px; padding:14px; border:1px solid #fedf89; border-radius:11px; background:#fffcf5; }.mmo-secret-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:10px; gap:12px; }.mmo-secret-head > div { display:flex; flex-direction:column; }.mmo-secret-head b { color:var(--ink); font-size:13.5px; }.mmo-secret-head small,.mmo-secret-panel [data-mmo-secret-empty] { color:var(--muted); font-size:11.5px; }.mmo-secret-panel textarea { min-height:190px; margin:8px 0; font:12px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace; }.mmo-secret-panel [data-mmo-copy-credentials] { margin-left:auto; }
.mmo-secret-panel [hidden] { display:none !important; }

/* Dark mode: chỉ đổi token và các bề mặt cứng trong CSS gốc. */
html[data-mmo-theme="dark"] .sb-body,html[data-mmo-theme="dark"] .sb-nav,html[data-mmo-theme="dark"] .sb-app,html[data-mmo-theme="dark"] .sb-modal,html[data-mmo-theme="dark"] .sb-toasts { --ink:#f1f5f9;--ink2:#cbd5e1;--muted:#94a3b8;--faint:#64748b;--line:#273449;--line2:#3a475a;--bg:#0f1724;--panel:#1b2738;--red:#f06b72;--red-hover:#f4868c;--red-soft:#35151a;--red-ring:#7e3038; color-scheme:dark; }
html[data-mmo-theme="dark"] .sb-nav,html[data-mmo-theme="dark"] .mmo-topbar,html[data-mmo-theme="dark"] .sb-card,html[data-mmo-theme="dark"] .sb-kpi,html[data-mmo-theme="dark"] .mmo-popover,html[data-mmo-theme="dark"] .mmo-command-box,html[data-mmo-theme="dark"] .sb-input,html[data-mmo-theme="dark"] .sb-select,html[data-mmo-theme="dark"] .sb-btn:not(.primary) { background:#151f2e;color:var(--ink);border-color:var(--line); }
html[data-mmo-theme="dark"] .sb-title,html[data-mmo-theme="dark"] .sb-card-head b,html[data-mmo-theme="dark"] .mmo-topbar-left b { color:var(--ink); }html[data-mmo-theme="dark"] .sb-nav-item { color:var(--ink2); }html[data-mmo-theme="dark"] .sb-nav-item:hover,html[data-mmo-theme="dark"] .mmo-topbar-icon:hover,html[data-mmo-theme="dark"] .mmo-account:hover,html[data-mmo-theme="dark"] .mmo-account-menu a:hover { background:#202d3f;color:var(--ink); }html[data-mmo-theme="dark"] .mmo-topbar-search,html[data-mmo-theme="dark"] .mmo-command-box > p { background:#1b2738; }html[data-mmo-theme="dark"] .mmo-resource-bars i,html[data-mmo-theme="dark"] .sb-rank-row .bar { background:#273449; }
html[data-mmo-theme="dark"] .mmo-preview-kpis { background:#111b29; }html[data-mmo-theme="dark"] .mmo-preview-kpis > div { background:#151f2e; border-color:var(--line); }
html[data-mmo-theme="dark"] .mmo-quick-paste,html[data-mmo-theme="dark"] .mmo-detail-grid > div { background:#111b29;border-color:var(--line); }html[data-mmo-theme="dark"] .mmo-secret-panel { background:#2e2514;border-color:#5e4b22; }
html[data-mmo-theme="dark"] .mmo-auto-code-note,html[data-mmo-theme="dark"] .mmo-sort-help { background:#111b29;border-color:var(--line); }

@media(max-width:980px){.mmo-topbar-left span,.mmo-topbar-left i{display:none}.mmo-topbar-search{width:min(330px,35vw)}}
@media(max-width:767px){.mmo-topbar{display:none}.mmo-cms-frontend .sb-app{padding-top:16px}.mmo-settings-grid,.mmo-form-grid,.mmo-detail-grid{grid-template-columns:1fr}.mmo-span-2{grid-column:auto}.mmo-ready{display:none}.mmo-mobile-me{display:block}.mmo-resource-filters{align-items:stretch;flex-direction:column}.mmo-filter-search,.mmo-resource-filters .sb-select,.mmo-resource-filters .sb-btn{width:100%}.mmo-preview-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.mmo-import-foot{align-items:stretch;flex-direction:column}.mmo-import-foot .sb-btn{width:100%}.mmo-quick-paste{grid-template-columns:1fr}.mmo-quick-paste>div,.mmo-quick-paste [data-mmo-parse-result]{grid-column:auto}.mmo-secret-head{align-items:stretch;flex-direction:column}.mmo-drag-col{display:none!important}.mmo-sort-help{display:none}}
@media(max-width:520px){.mmo-settings-grid{padding:14px 14px 2px}}
