/* Font tạp chí của HEALIVERSE: DFVN Gustavo */
@font-face{font-family:"DFVN Gustavo";src:url("fonts/gustavo-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"DFVN Gustavo";src:url("fonts/gustavo-400i.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"DFVN Gustavo";src:url("fonts/gustavo-700.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"DFVN Gustavo";src:url("fonts/gustavo-700i.woff2") format("woff2");font-weight:700;font-style:italic;font-display:swap}
/* Phông của bộ thiết kế AI Media Wellness (máy đồ hoạ): Young Display, PS Bebas Neue */
@font-face{font-family:"Young Display";src:url("fonts/young-700.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"PS Bebas Neue";src:url("fonts/bebas-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
/* Xưởng Content Studio
   Bố cục: thanh trên cố định; Xưởng là bảng sản xuất theo giai đoạn (cột cuộn ngang);
   trang dự án có dải giai đoạn và các thẻ theo thứ tự làm việc; nhật ký dựng như màn hình máy quay. */
:root{
  --bg:#f4f5fa; --surface:#ffffff; --sunk:#eceef6; --line:#dcdfec; --fg:#1b1e31; --muted:#5c6180;
  --teal:#1a1a1a; --violet:#9c7420; --gold:#a97d10;
  --teal-soft:#e0f3f2; --violet-soft:#eee9fb; --gold-soft:#faf1d9;
  --ok:#1d8148; --ok-soft:#e1f4e8; --bad:#c23a3a; --bad-soft:#fbe7e7; --warn:#b25e09; --warn-soft:#fdecd9;
  --log-bg:#151726; --log-fg:#dfe2f2; --log-dim:#8a8fae;
  --st-kb:#7a6a3a; --st-tl:#1a1a1a; --st-dung:#a97d10; --st-duyet:#9c7420; --st-sua:#b25e09; --st-xong:#1d8148;
  --display:"Manrope",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --body:"Manrope",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --sans:"Manrope",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --mono:"JetBrains Mono",ui-monospace,Menlo,Consolas,monospace;
  --r:14px;
}
@media (prefers-color-scheme:dark){:root{
  --bg:#11121d; --surface:#1a1c2c; --sunk:#151724; --line:#2c2f47; --fg:#eceef8; --muted:#a0a5c3;
  --teal:#e9dcc0; --violet:#e0b85a; --gold:#e6bf57;
  --teal-soft:#15302f; --violet-soft:#29224a; --gold-soft:#322912;
  --ok:#5ccf90; --ok-soft:#163423; --bad:#f07b7b; --bad-soft:#3a1b1e; --warn:#f2a65a; --warn-soft:#3a2614;
  --log-bg:#0c0d16;
  --st-kb:#d6c38a; --st-tl:#e9dcc0; --st-dung:#e6bf57; --st-duyet:#e0b85a; --st-sua:#f2a65a; --st-xong:#5ccf90;
  color-scheme:dark}}

*{box-sizing:border-box}
html,body{margin:0}
body{background:var(--bg);color:var(--fg);font:15px/1.6 var(--body);-webkit-font-smoothing:antialiased}
[hidden]{display:none!important}
a{color:var(--violet)}
h1,h2,h3,h4{text-wrap:balance;margin:0}
p{margin:0}
.muted{color:var(--muted)}
.mono{font-family:var(--mono)}
.small{font-size:13px}
.wrap{max-width:1240px;margin:0 auto;padding:22px max(16px,env(safe-area-inset-right)) 120px max(16px,env(safe-area-inset-left))}
body:not(.is-admin) .admin-only{display:none!important}

/* Thương hiệu */
.brand{display:inline-flex;align-items:center;gap:10px;font-weight:700;letter-spacing:.16em;font-size:12px;color:var(--fg);text-decoration:none;white-space:nowrap}
.brand b{font-family:var(--display);font-style:italic;letter-spacing:0;font-size:19px;font-weight:700;color:var(--violet)}
.mark{width:22px;height:22px;flex:none;border-radius:50%;background:conic-gradient(from 200deg,var(--teal),var(--violet),var(--gold),var(--teal));-webkit-mask:radial-gradient(circle,#000 28%,transparent 30%,transparent 46%,#000 48%);mask:radial-gradient(circle,#000 28%,transparent 30%,transparent 46%,#000 48%)}

/* Thanh trên */
.top{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:18px;padding:10px max(16px,env(safe-area-inset-right)) 10px max(16px,env(safe-area-inset-left));padding-top:calc(10px + env(safe-area-inset-top));background:color-mix(in srgb,var(--surface) 90%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav{display:flex;gap:2px;flex:1;min-width:0;overflow-x:auto}
.nav a{padding:7px 12px;border-radius:9px;text-decoration:none;color:var(--muted);font-weight:600;font-size:14px;white-space:nowrap}
.nav a:hover{color:var(--fg);background:var(--sunk)}
.nav a.on{color:var(--fg);background:var(--violet-soft)}
.me{display:flex;align-items:center;gap:8px;background:none;border:1px solid var(--line);border-radius:999px;padding:3px 12px 3px 3px;color:var(--fg);font:600 13px var(--body);cursor:pointer}
.av{width:28px;height:28px;border-radius:50%;display:inline-grid;place-items:center;font:700 11px var(--body);color:#fff;background:var(--violet);flex:none;letter-spacing:.02em}
.av.sm{width:22px;height:22px;font-size:9.5px}
.av.none{background:var(--sunk);color:var(--muted);border:1px dashed var(--line)}
@media (max-width:720px){.brand-word{display:none}.me #meName{display:none}.me{padding:3px}.top{gap:10px}}

/* Nút, ô nhập */
.btn{font:600 14px var(--body);border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--fg);padding:9px 15px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:7px;text-decoration:none;white-space:nowrap}
.btn:hover{border-color:var(--violet)}
.btn.primary{background:var(--violet);border-color:var(--violet);color:#fff}
.btn.primary:hover{filter:brightness(1.08)}
.btn.teal{background:var(--teal);border-color:var(--teal);color:#fff}
.btn.danger{color:var(--bad);border-color:color-mix(in srgb,var(--bad) 40%,var(--line))}
.btn.ghost{background:transparent}
.btn.sm{padding:5px 11px;font-size:13px;border-radius:8px}
.btn:disabled{opacity:.5;cursor:not-allowed}
:focus-visible{outline:2px solid var(--violet);outline-offset:2px}
input,textarea,select{font:15px var(--body);color:var(--fg);background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:9px 12px;width:100%;min-width:0}
input[type=checkbox],input[type=radio]{width:auto}
textarea{min-height:90px;resize:vertical;line-height:1.55}
label{font-size:13px;font-weight:600}
.field{display:flex;flex-direction:column;gap:6px;min-width:0}
.inline{display:flex;gap:8px;align-items:center}
.inline > input,.inline > select{flex:1}
.err{color:var(--bad);font-size:14px;min-height:0;margin:0}
.err:empty{display:none}
.hint{font-size:13px;color:var(--muted)}
.check{display:flex;gap:9px;align-items:flex-start;font-size:14px;font-weight:500;cursor:pointer}
.check input{margin-top:4px}
.row-wrap{display:flex;flex-wrap:wrap;gap:8px;align-items:center}

/* Đăng nhập */
.login{min-height:100vh;display:grid;place-items:center;padding:24px 16px;background:radial-gradient(900px 500px at 15% 10%,var(--teal-soft),transparent 60%),radial-gradient(800px 500px at 90% 90%,var(--violet-soft),transparent 60%),var(--bg)}
.login-card{width:100%;max-width:390px;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:32px 28px;display:flex;flex-direction:column;gap:10px}
.login-card h1{font-family:var(--display);font-weight:700;font-size:38px;line-height:1.05;margin:8px 0 0}
.login-card h1 em{color:var(--violet)}
.login-card p{margin:0 0 8px}
.login-card .btn{margin-top:6px;padding:11px}

/* Đầu trang */
.page-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px;margin-bottom:18px}
.page-head h1{font-family:var(--display);font-style:italic;font-weight:700;font-size:clamp(28px,5vw,40px);line-height:1.1}
.eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--teal);font-weight:600;margin-bottom:4px}
.strip{display:flex;flex-wrap:wrap;gap:8px}
.chip{display:inline-flex;align-items:center;gap:8px;font-size:13px;padding:5px 12px;border-radius:999px;background:var(--surface);border:1px solid var(--line);color:var(--fg);text-decoration:none}
button.chip{cursor:pointer;font-family:var(--body)}
.chip.on{background:var(--fg);color:var(--bg);border-color:var(--fg)}
.dot{width:8px;height:8px;border-radius:50%;background:var(--muted);flex:none}
.dot.ok{background:var(--ok)} .dot.bad{background:var(--bad)} .dot.run{background:var(--gold);animation:pulse 1.4s infinite}
@keyframes pulse{50%{opacity:.35}}

.section{display:flex;flex-direction:column;gap:10px;margin-bottom:26px}
.section-h{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px}
.section-h h2,.section > h2{font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:600}
.box{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:16px;display:flex;flex-direction:column;gap:12px;min-width:0}
.box h3{font-size:15px;display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}
.box h3 small{font:500 12px var(--mono);color:var(--muted)}
.empty{padding:16px;color:var(--muted);font-size:14px}

/* Pill trạng thái */
.pill{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:2px 9px;border-radius:999px;width:fit-content;white-space:nowrap}
.pill.queued,.pill.running{background:var(--gold-soft);color:var(--gold)}
.pill.waiting{background:var(--warn-soft);color:var(--warn)}
.pill.done{background:var(--ok-soft);color:var(--ok)}
.pill.failed{background:var(--bad-soft);color:var(--bad)}
.pill.stopped,.pill.new{background:var(--sunk);color:var(--muted)}
.stg{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:2px 9px;border-radius:999px;white-space:nowrap;color:var(--c);background:color-mix(in srgb,var(--c) 13%,transparent)}
.stg::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--c)}
[data-stage="kich-ban"]{--c:var(--st-kb)} [data-stage="tu-lieu"]{--c:var(--st-tl)} [data-stage="dung"]{--c:var(--st-dung)}
[data-stage="duyet"]{--c:var(--st-duyet)} [data-stage="sua"]{--c:var(--st-sua)} [data-stage="xong"]{--c:var(--st-xong)}

/* Tiến độ */
.bar{height:6px;background:var(--sunk);border-radius:99px;overflow:hidden}
.bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--teal),var(--violet));transition:width .3s}
.bar.indet i{width:35%!important;animation:slide 1.6s ease-in-out infinite}
@keyframes slide{0%{transform:translateX(-100%)}100%{transform:translateX(300%)}}

/* Hàng đợi */
.queue{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.qrow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 14px;padding:12px 16px;border-top:1px solid var(--line);align-items:center}
.qrow:first-child{border-top:0}
.qrow .t{min-width:0;display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center}
.qrow .t a{font-weight:600;text-decoration:none;color:var(--fg)}
.qrow .t a:hover{color:var(--violet)}
.qrow .p{grid-column:1/-1;display:flex;flex-direction:column;gap:4px;font-size:12.5px;color:var(--muted)}

/* Bảng sản xuất */
.toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin-bottom:12px}
.toolbar .search{max-width:260px}
.seg{display:inline-flex;background:var(--sunk);border:1px solid var(--line);border-radius:10px;padding:3px}
.seg button{border:0;background:transparent;color:var(--muted);font:600 13px var(--body);padding:6px 12px;border-radius:8px;cursor:pointer}
.seg button[aria-pressed="true"]{background:var(--surface);color:var(--fg);box-shadow:0 1px 2px rgba(0,0,0,.08)}
.kanban{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(250px,1fr);gap:12px;overflow-x:auto;padding-bottom:10px;scroll-snap-type:x proximity}
@media (max-width:700px){.kanban{grid-auto-columns:86%}}
.col{background:var(--sunk);border-radius:var(--r);padding:10px;display:flex;flex-direction:column;gap:8px;min-height:140px;scroll-snap-align:start}
.col-h{display:flex;justify-content:space-between;align-items:center;padding:2px 4px 4px}
.col-h .n{font:600 12px var(--mono);color:var(--muted)}
.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:11px 12px;display:flex;flex-direction:column;gap:8px;position:relative;transition:border-color .15s}
.card:hover{border-color:var(--violet)}
.card.sel{border-color:var(--violet);box-shadow:0 0 0 2px var(--violet-soft)}
.card .top-row{display:flex;gap:8px;align-items:flex-start}
.card .ttl{font-weight:600;font-size:14.5px;line-height:1.35;color:var(--fg);text-decoration:none;flex:1;min-width:0;word-break:break-word}
.card .ttl::after{content:"";position:absolute;inset:0;border-radius:12px}
.card input[type=checkbox]{position:relative;z-index:1;margin-top:3px;width:16px;height:16px;accent-color:var(--violet)}
.card .meta{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:12px;color:var(--muted);align-items:center;font-variant-numeric:tabular-nums}
.card .meta .over,.tbl td.over{color:var(--bad);font-weight:600}
.card .fbn{color:var(--warn);font-weight:600}
.card .run{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted)}
.tbl-wrap{overflow-x:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--r)}
table.tbl{width:100%;border-collapse:collapse;font-size:14px;min-width:760px}
.tbl th{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:600;text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);white-space:nowrap}
.tbl td{padding:10px 12px;border-top:1px solid var(--line);vertical-align:middle}
.tbl tr:first-child td{border-top:0}
.tbl td.num{font-variant-numeric:tabular-nums;text-align:right}
.tbl a{color:var(--fg);font-weight:600;text-decoration:none}
.tbl a:hover{color:var(--violet)}
.tbl tr.sel td{background:var(--violet-soft)}

/* Thanh chọn hàng loạt */
.selbar{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(16px + env(safe-area-inset-bottom));z-index:40;background:var(--fg);color:var(--bg);border-radius:16px;padding:10px 12px;display:flex;flex-wrap:wrap;gap:8px;align-items:center;max-width:calc(100% - 32px);box-shadow:0 10px 30px rgba(0,0,0,.25)}
.selbar .n{font-weight:700;padding:0 6px}
.selbar .btn{background:transparent;color:var(--bg);border-color:color-mix(in srgb,var(--bg) 30%,transparent)}
.selbar .btn.primary{background:var(--violet);border-color:var(--violet);color:#fff}

/* Hoạt động */
.feed{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.feed li{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:8px 0;border-top:1px solid var(--line);font-size:14px}
.feed li:first-child{border-top:0}
.feed .when{font:12px var(--mono);color:var(--muted);white-space:nowrap}
.feed a{color:var(--fg);font-weight:600;text-decoration:none}

/* Trang dự án */
.back{font-size:14px;text-decoration:none;color:var(--muted);display:inline-flex;gap:6px;margin-bottom:8px}
.back:hover{color:var(--violet)}
.p-meta{display:flex;flex-wrap:wrap;gap:10px;align-items:end}
.p-meta .field{width:auto}
.p-meta select,.p-meta input{width:auto;padding:6px 10px;font-size:14px}
.stepper{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;margin:4px 0 18px}
.stepper span{font-size:12px;font-weight:600;color:var(--muted);padding-top:8px;border-top:3px solid var(--line);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.stepper span.past{border-top-color:color-mix(in srgb,var(--violet) 45%,var(--line));color:var(--fg)}
.stepper span.now{border-top-color:var(--c);color:var(--c)}
@media (max-width:600px){.stepper span{font-size:0}.stepper span.now{font-size:12px;grid-column:span 1}}
.tabs{display:flex;gap:2px;border-bottom:1px solid var(--line);margin-bottom:20px;overflow-x:auto}
.tab{font:600 14px var(--body);background:none;border:0;border-bottom:2px solid transparent;padding:10px 13px;color:var(--muted);cursor:pointer;white-space:nowrap;display:flex;gap:7px;align-items:center}
.tab .n{font:600 11px var(--mono);background:var(--sunk);padding:1px 6px;border-radius:6px}
.tab .n.warn{background:var(--warn-soft);color:var(--warn)}
.tab[aria-selected="true"]{color:var(--fg);border-bottom-color:var(--violet)}

.grid4{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
@media (max-width:700px){.grid4{grid-template-columns:minmax(0,1fr)}}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.grid2{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:14px;align-items:start}
.stack{display:flex;flex-direction:column;gap:14px;min-width:0}
@media (max-width:900px){.grid3,.grid2{grid-template-columns:minmax(0,1fr)}}

.drop{border:1.5px dashed var(--line);border-radius:12px;padding:16px 12px;text-align:center;color:var(--muted);font-size:14px;cursor:pointer;background:var(--sunk);transition:border-color .15s,background .15s;display:block;font-weight:500}
.drop.over{border-color:var(--violet);background:var(--violet-soft);color:var(--fg)}
.drop strong{color:var(--fg)}
.files{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.file{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:10px;align-items:center;font-size:13px}
.thumb{width:40px;height:40px;border-radius:8px;background:var(--sunk);object-fit:cover;display:grid;place-items:center;font:600 10px var(--mono);color:var(--muted);overflow:hidden}
.file .fn{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sz{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}
.icon-btn{background:none;border:0;color:var(--muted);cursor:pointer;padding:6px;border-radius:6px;font-size:15px;line-height:1}
.icon-btn:hover{color:var(--bad);background:var(--bad-soft)}
.up{display:flex;flex-direction:column;gap:4px;font-size:13px}
.up .row{display:flex;justify-content:space-between;gap:8px}
.up .row span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.logline{font:12.5px/1.5 var(--mono);color:var(--muted);word-break:break-word}

/* Kịch bản */
textarea.script{min-height:460px;font:14.5px/1.7 var(--body)}
.nlist{display:flex;flex-direction:column;max-height:300px;overflow-y:auto;border:1px solid var(--line);border-radius:10px}
.nitem{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;text-align:left;background:none;border:0;border-top:1px solid var(--line);padding:9px 12px;cursor:pointer;color:var(--fg);font-family:var(--body)}
.nitem:first-child{border-top:0}
.nitem:hover{background:var(--sunk)}
.nitem b{font-weight:600;font-size:14px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nitem span{font-size:12px;color:var(--muted)}
.src{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;font-size:13px;color:var(--muted);background:var(--sunk);border-radius:10px;padding:8px 12px}

/* Dựng */
.render{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}
@media (max-width:960px){.render{grid-template-columns:minmax(0,1fr)}}
.formats{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.fmt{position:relative}
.fmt input{position:absolute;opacity:0;pointer-events:none}
.fmt label{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;cursor:pointer;font-weight:600;font-size:13px;height:100%}
.fmt .frame{border:2px solid currentColor;border-radius:3px;color:var(--muted);flex:none}
.fmt input:checked + label{border-color:var(--violet);background:var(--violet-soft)}
.fmt input:checked + label .frame{color:var(--violet)}
.fmt input:focus-visible + label{outline:2px solid var(--violet);outline-offset:2px}
.fmt label{position:relative;padding-right:30px}
.fmt label::after{content:"";position:absolute;right:10px;top:50%;width:16px;height:16px;margin-top:-8px;border-radius:5px;border:1.5px solid var(--line);background:var(--surface)}
.fmt input:checked + label::after{content:"✓";border-color:var(--violet);background:var(--violet);color:#fff;font-size:11px;line-height:13px;text-align:center}
.fmt-all{width:100%;height:100%;min-height:44px;border:1.5px dashed var(--line);border-radius:12px;background:transparent;color:var(--muted);font:600 13px var(--body);cursor:pointer}
.fmt-all:hover{border-color:var(--violet);color:var(--violet)}
.hl{margin-top:10px;padding:12px;border-radius:12px;background:var(--violet-soft);display:flex;flex-direction:column;gap:10px}
.tvcbox{margin-top:10px;padding:12px;border-radius:12px;background:var(--violet-soft);display:flex;flex-direction:column;gap:10px}
.tvcbox[hidden]{display:none}
.tvcbox .hl-row{flex-wrap:nowrap}.tvcbox .hl-row>label:not(.chk){flex:none;width:150px;font-size:14px}.tvcbox .hl-row input:not([type=checkbox]){flex:1;min-width:0}
.tvcbox .chk{display:flex;gap:8px;align-items:center;font-size:14px}
@media(max-width:560px){.tvcbox .hl-row{flex-wrap:wrap}.tvcbox .hl-row>label:not(.chk){width:auto}}
.hl-row{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;justify-content:space-between}
.hl-row select{width:auto;padding:6px 10px;font-size:14px}
.hl .inline{gap:6px;font-size:14px}
details.adv summary{cursor:pointer;font-size:14px;font-weight:600;color:var(--muted)}
details.adv textarea{margin-top:8px;font:12.5px/1.55 var(--mono);min-height:260px}

.log{background:var(--log-bg);color:var(--log-fg);border-radius:var(--r);display:flex;flex-direction:column;min-height:380px;max-height:74vh;overflow:hidden;border:1px solid var(--line)}
.log-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.08);font-size:13px}
.log-head .rec{display:inline-flex;gap:8px;align-items:center;font:600 12px var(--mono);letter-spacing:.05em}
.log-head .btn{background:transparent;color:var(--log-fg);border-color:rgba(255,255,255,.2)}
.log-prog{padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:6px;font-size:13px}
.log-prog .bar{background:rgba(255,255,255,.1)}
.log-prog ol{margin:4px 0 0;padding-left:20px;font-size:12.5px;color:var(--log-dim);display:flex;flex-direction:column;gap:2px}
.log-prog li.completed{color:#8fe0b4}
.log-prog li.in_progress{color:#f6dd8f;font-weight:600}
.log-body{overflow-y:auto;padding:12px 14px;display:flex;flex-direction:column;gap:6px;font:13px/1.55 var(--mono);flex:1}
.ev{white-space:pre-wrap;word-break:break-word}
.ev .ts{color:var(--log-dim);margin-right:8px}
.ev.tool{color:#9fd8d5}
.ev.text{color:#f1f2fb;font-family:var(--body);font-size:14px;padding:3px 0}
.ev.result{color:#f6dd8f;font-family:var(--body);font-size:14px;border-left:2px solid #e6bf57;padding:6px 10px;background:rgba(230,191,87,.07);border-radius:0 8px 8px 0}
.ev.warn{color:#f3c17a}
.ev.error{color:#ff9a9a}
.ev.info{color:var(--log-dim)}

/* Thành phẩm & góp ý */
.review-bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;flex-direction:row}
.review-bar .big{font-family:var(--display);font-style:italic;font-size:28px;font-weight:700;line-height:1}
.vcard{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
@media (max-width:900px){.vcard{grid-template-columns:minmax(0,1fr)}}
.vplayer{background:#000;display:flex;flex-direction:column}
.vplayer video,.vplayer img{width:100%;max-height:70vh;display:block;object-fit:contain;background:#000;flex:1}
.vinfo{display:flex;flex-wrap:wrap;gap:6px 10px;justify-content:space-between;align-items:center;padding:10px 14px;background:var(--surface);border-top:1px solid var(--line);font-size:13px}
.vinfo .nm{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}
.vfb{padding:14px;display:flex;flex-direction:column;gap:10px;border-left:1px solid var(--line);min-width:0;max-height:78vh}
@media (max-width:900px){.vfb{border-left:0;border-top:1px solid var(--line);max-height:none}}
.vfb h4{font-size:14px}
.fb-form{display:flex;gap:6px;align-items:stretch}
.fb-form input{flex:1;padding:8px 10px;font-size:14px}
.tchip{font:600 12px var(--mono);border:1px solid var(--violet);color:var(--violet);background:var(--violet-soft);border-radius:8px;padding:0 9px;cursor:pointer;white-space:nowrap}
.tchip.off{border-color:var(--line);color:var(--muted);background:var(--sunk);text-decoration:line-through}
.fb-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;overflow-y:auto}
.fb{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 10px;padding:9px 10px;border-radius:10px;background:var(--sunk);font-size:14px}
.fb .at{font:600 12px var(--mono);color:var(--violet);background:none;border:0;cursor:pointer;padding:2px 0;align-self:start}
.fb .at.none{color:var(--muted);cursor:default}
.fb .fbt{min-width:0;display:flex;flex-direction:column;gap:3px}
.fb .fbt p{word-break:break-word;white-space:pre-wrap}
.fb .foot{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;font-size:12px;color:var(--muted)}
.fb .acts{display:flex;gap:4px;margin-left:auto}
.fb.s-done{opacity:.62}
.fb.s-done p{text-decoration:line-through}
.fbs{font-size:11.5px;font-weight:600;padding:1px 7px;border-radius:99px}
.fbs.open{background:var(--warn-soft);color:var(--warn)}
.fbs.sent{background:var(--gold-soft);color:var(--gold)}
.fbs.fixed{background:var(--violet-soft);color:var(--violet)}
.fbs.done{background:var(--ok-soft);color:var(--ok)}
.others{display:flex;flex-wrap:wrap;gap:8px}

/* Đăng YouTube */
.thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}
.tcard{border:1px solid var(--line);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;background:var(--surface)}
.tcard img{width:100%;aspect-ratio:16/9;object-fit:cover;background:var(--sunk);display:block}
.tcard .tb{padding:10px;display:flex;flex-direction:column;gap:8px}
.meta-blocks{display:flex;flex-direction:column;gap:10px}
.mblock{border:1px solid var(--line);border-radius:12px;overflow:hidden}
.mblock .mh{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;background:var(--sunk);font-weight:600;font-size:14px}
.mblock pre{margin:0;padding:12px;white-space:pre-wrap;word-break:break-word;font:14px/1.65 var(--body)}

/* Báo cáo */
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:22px}
.tile{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px;display:flex;flex-direction:column;gap:2px}
.tile b{font-family:var(--display);font-style:italic;font-size:34px;line-height:1.1;font-variant-numeric:tabular-nums}
.tile span{font-size:13px;color:var(--muted)}
.tile.warn b{color:var(--warn)} .tile.bad b{color:var(--bad)}
.stackbar{display:flex;height:16px;border-radius:99px;overflow:hidden;background:var(--sunk)}
.stackbar i{display:block;height:100%;background:var(--c)}
.legend{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:13px}
.days{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;align-items:end;height:150px;padding-top:10px}
.day{display:flex;flex-direction:column;align-items:center;gap:4px;height:100%;justify-content:flex-end;font-size:11.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.day .cols{display:flex;gap:3px;align-items:flex-end;flex:1;width:100%;justify-content:center}
.day .cols i{width:40%;max-width:22px;border-radius:4px 4px 0 0;background:var(--teal);min-height:2px}
.day .cols i.f{background:var(--bad)}
.day b{color:var(--fg);font-weight:600}

/* Thành viên & cài đặt */
.prompt-ed{font:12.5px/1.55 var(--mono);min-height:220px}
.skill{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:4px 14px;padding:9px 0;border-top:1px solid var(--line);font-size:13.5px}
.skill:first-child{border-top:0}
@media (max-width:640px){.skill{grid-template-columns:minmax(0,1fr)}}

/* Hộp thoại, thông báo */
.modal{position:fixed;inset:0;background:rgba(10,10,20,.5);display:grid;place-items:center;padding:16px;z-index:60}
.modal-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:22px;max-width:500px;width:100%;display:flex;flex-direction:column;gap:12px;max-height:calc(100vh - 32px);overflow-y:auto}
.modal-card.wide{max-width:680px}
.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px;flex-wrap:wrap}
#modalBody{display:flex;flex-direction:column;gap:12px}
.toast{position:fixed;left:50%;bottom:calc(84px + env(safe-area-inset-bottom));transform:translateX(-50%) translateY(10px);background:var(--fg);color:var(--bg);padding:9px 16px;border-radius:999px;font-size:14px;opacity:0;pointer-events:none;transition:.2s;z-index:70;max-width:calc(100% - 32px);text-align:center}
.toast.show{opacity:1;transform:translateX(-50%)}
.toast.bad{background:var(--bad);color:#fff}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* Chốt bước & nguyên vật liệu */
.confirm-bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;border-radius:var(--r);margin-bottom:16px;border:1px solid var(--line);background:var(--surface)}
.confirm-bar.ok{background:var(--ok-soft);border-color:color-mix(in srgb,var(--ok) 35%,var(--line))}
.confirm-bar.stale{background:var(--warn-soft);border-color:color-mix(in srgb,var(--warn) 40%,var(--line))}
.confirm-bar.open{background:var(--violet-soft);border-color:color-mix(in srgb,var(--violet) 35%,var(--line))}
.cb-t{display:flex;gap:12px;align-items:center;min-width:0}
.cb-t div{display:flex;flex-direction:column;min-width:0}
.cb-t span:not(.mk){font-size:13px;color:var(--muted)}
.mk{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font:700 13px var(--body);flex:none;background:var(--violet);color:#fff}
.ok .mk,.mat.ok .mk{background:var(--ok)}
.stale .mk,.mat.stale .mk{background:var(--warn)}
.mat.open .mk{background:var(--muted)}
.mats{display:flex;flex-direction:column;gap:8px}
.mat{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 12px;border-radius:12px;background:var(--sunk)}
.mat .mt{display:flex;flex-direction:column;min-width:0}
.mat .mt span{font-size:12.5px;color:var(--muted)}
.warn-t{color:var(--warn)}
.tab .tick{color:var(--ok);font-weight:700}

.swatch{width:26px;height:26px;border-radius:8px;border:2px solid var(--surface);box-shadow:0 0 0 1px var(--line);cursor:pointer;padding:0}
.colors{display:flex;flex-direction:column;gap:8px}
.crow{display:grid;grid-template-columns:44px 110px minmax(0,180px) auto;gap:8px;align-items:center}
.crow input[type=color]{width:44px;height:36px;padding:2px;border-radius:8px}
.crow input,.crow select{padding:6px 10px;font-size:14px}

/* Dựng: bố cục 2 cột, nhật ký nằm dưới */
.rd-box{display:flex;flex-direction:column;gap:18px}
.rd-box h3{margin:0 0 10px}
.rd-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:24px;align-items:start}
@media (max-width:900px){.rd-grid{grid-template-columns:minmax(0,1fr)}}
.rd-col{display:flex;flex-direction:column;min-width:0}
.rd-col textarea{min-height:128px}
.rd-checks{display:flex;flex-direction:column;gap:8px;margin-top:12px}
.rd-mats .mats{flex-direction:row;flex-wrap:wrap}
.rd-mats .mat{flex:1 1 300px}
.rd-go{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px}
.rd-go .hint{margin:0;flex:1 1 260px}
.render .log{min-height:260px;max-height:60vh}

/* Thumbnail: mỗi phương án một thẻ, chữ bên trái, hình bên phải */
.th-bar{display:grid;grid-template-columns:minmax(0,170px) minmax(0,260px) auto;gap:14px;align-items:end}
@media (max-width:700px){.th-bar{grid-template-columns:minmax(0,1fr)}}
.th-vars{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:14px}
@media (max-width:480px){.th-vars{grid-template-columns:minmax(0,1fr)}}
.th-var{border:1px solid var(--line);border-radius:12px;padding:12px;background:var(--sunk)}
.th-var-h{font-weight:700;font-size:13px;margin-bottom:8px}
.th-var-b{display:grid;grid-template-columns:minmax(0,1fr) 168px;gap:12px;align-items:stretch}
.th-var-b textarea{min-height:104px;height:100%}
.th-drop{position:relative;display:flex;align-items:center;justify-content:center;text-align:center;min-height:104px;border:1.5px dashed var(--line);border-radius:12px;overflow:hidden;cursor:pointer;font-size:12.5px;color:var(--muted);background:var(--surface)}
.th-drop:hover,.th-drop.over{border-color:var(--violet);color:var(--violet)}
.th-drop img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.th-drop.has .th-drop-t{position:absolute;left:0;right:0;bottom:0;padding:4px;background:rgba(0,0,0,.55);color:#fff;font-weight:600}
.th-img-st{margin-top:6px}

/* Lấy từ Drive: nhiều đường dẫn */
.drows{display:flex;flex-direction:column;gap:10px}
.drow{display:grid;grid-template-columns:minmax(0,1fr) 180px 34px;gap:12px;align-items:end}
@media (max-width:700px){.drow{grid-template-columns:minmax(0,1fr) 34px}.drow .field:first-child{grid-column:1/-1}}

/* Kho thành phẩm */
.lib-tools{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,260px);gap:12px;margin-bottom:12px}
@media (max-width:700px){.lib-tools{grid-template-columns:minmax(0,1fr)}}
.chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 12px}
.chips .chip{cursor:pointer;font:inherit;font-size:13px}
.chips .chip small{opacity:.65;font-size:11px}
.chip.lb{background:var(--violet-soft);border-color:color-mix(in srgb,var(--violet) 30%,var(--line))}
.chip.lb.on{background:var(--violet);color:#fff;border-color:var(--violet)}
.chip.sm{padding:2px 9px;font-size:12px;cursor:pointer}
.chip.add{background:transparent;color:var(--muted);border-style:dashed}
.lb-list{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.lb-keep{display:flex;flex-wrap:wrap;gap:8px}
.lb-keep .chip{cursor:pointer}
.lib-bar{position:sticky;top:8px;z-index:5;display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px 14px;margin-bottom:12px;border-radius:var(--r);background:var(--violet-soft);border:1px solid color-mix(in srgb,var(--violet) 35%,var(--line));box-shadow:0 4px 18px rgba(0,0,0,.18)}
.lib-bar .n{font-weight:600;margin-right:6px}
.lib-tbl{min-width:900px}
.lib-tbl tr.sel td{background:var(--violet-soft)}
.lib-th{display:flex;align-items:center;justify-content:center;width:72px;height:44px;border-radius:8px;object-fit:cover;background:var(--sunk);color:var(--muted);font-size:12px;font-weight:700;text-decoration:none}
a.lib-th.vid{font-size:18px;color:var(--violet)}
.lib-act{white-space:nowrap}
.lib-act .icon-btn{display:inline-flex;text-decoration:none}
.pill.cat-youtube{background:var(--violet-soft);color:var(--violet)}
.pill.cat-short,.pill.cat-highlight{background:color-mix(in srgb,var(--ok) 18%,transparent);color:var(--ok)}
.pill.cat-thumbnail{background:color-mix(in srgb,var(--warn) 20%,transparent);color:var(--warn)}

/* Góp ý theo đoạn: Từ … Đến … */
.tchips{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.tchips .tchip{padding:4px 9px}
.tchip.live{font-style:italic}
.tchip.empty{border-style:dashed;background:transparent}
.tchips.off .tchip:not([data-r=off]){opacity:.4;pointer-events:none}
.tchip[data-r=off].off{text-decoration:none;border-color:var(--violet);color:var(--violet);background:var(--violet-soft)}
.vfb .fb-form{flex-wrap:wrap}
.vfb .fb-form input{flex:1 1 220px;min-width:0}

/* Ô góp ý rộng: hàng mốc ở trên, ô nhập đầy bề ngang ở dưới */
.vfb .fb-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}
.vfb .fb-form .tchips{grid-column:1/-1}
.vfb .fb-form textarea{grid-column:1;min-height:84px;padding:10px 12px;font-size:15px;line-height:1.5;resize:vertical;width:100%}
.vfb .fb-form .btn{grid-column:2;align-self:end;padding:10px 16px}
.vfb .tchips .tchip{padding:6px 12px;font-size:13px}
@media (max-width:520px){.vfb .fb-form{grid-template-columns:minmax(0,1fr)}.vfb .fb-form .btn{grid-column:1}}

/* gắn nhãn: chọn nhanh */
.lbpick{display:flex;flex-wrap:wrap;gap:8px;max-height:220px;overflow:auto;padding:2px}
.lbp{font:inherit;font-size:14px;padding:7px 13px;border-radius:999px;border:1px solid var(--line,#3a3a4a);background:transparent;color:inherit;cursor:pointer}
.lbp:hover{border-color:#a78bfa}
.lbp.s2{background:#7c5cd6;border-color:#7c5cd6;color:#fff}
.lbp.s1{border-style:dashed;border-color:#a78bfa}

/* Kênh đăng */
.ch-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:14px;margin-bottom:26px}
.ch-card{border:1px solid var(--line,#2c2c3a);border-radius:14px;padding:16px;display:grid;gap:10px;background:var(--card,rgba(255,255,255,.03))}
.ch-top{display:flex;gap:12px;align-items:center}.ch-top>div{flex:1;min-width:0}
.ch-ic{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;color:#fff;font-weight:700;font-size:18px}
.ch-st{font-size:12px;padding:3px 10px;border-radius:999px;border:1px solid currentColor;white-space:nowrap}
.ch-st.ok{color:#2fb67c}.ch-st.bad{color:#e0883a}.ch-st.new{color:#8b8fa3}
.ch-note{color:#e0883a}.ch-act{gap:8px}
.ch-banner{border:1px solid #a78bfa66;background:#a78bfa14;border-radius:12px;padding:12px 16px;margin-bottom:16px;font-size:14px;line-height:1.5}
.ch-code{font:700 30px/1.2 ui-monospace,monospace;letter-spacing:.14em;padding:14px;text-align:center;border:1px dashed #a78bfa;border-radius:12px;margin:8px 0}
.jst{font-size:12px;padding:2px 9px;border-radius:999px;border:1px solid currentColor}
.jst.done{color:#2fb67c}.jst.failed{color:#e0584a}.jst.uploading{color:#6aa8ff}.jst.queued{color:#a78bfa}.jst.canceled{color:#8b8fa3}
.jerr{color:#e0584a;margin-top:4px}
.bar.sm{display:inline-block;width:90px;height:6px;border-radius:3px;background:#ffffff22;vertical-align:middle;overflow:hidden}.bar.sm i{display:block;height:100%;background:#6aa8ff}
.pub-ch{display:flex;flex-wrap:wrap;gap:8px}
.pub-rows{display:grid;gap:8px;max-height:230px;overflow:auto}
.pub-row{display:grid;grid-template-columns:1fr auto;gap:8px}.pub-row input,.pub-row select{width:100%}
fieldset.pa{border:1px solid var(--line,#2c2c3a);border-radius:12px;padding:12px 14px;margin:12px 0}fieldset.pa legend{padding:0 8px;font-weight:600;font-size:14px}

.pill-new{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:1px 8px;border-radius:999px;background:#2fb67c;color:#fff;vertical-align:middle;margin-left:6px}

/* Trợ lý */
.as-inbox{display:grid;grid-template-columns:320px 1fr;gap:14px;min-height:520px}
.as-list{border:1px solid var(--line,#2c2c3a);border-radius:14px;overflow:auto;max-height:70vh;display:flex;flex-direction:column}
.as-row{text-align:left;padding:12px 14px;border:0;border-bottom:1px solid var(--line,#2c2c3a);background:transparent;color:inherit;font:inherit;cursor:pointer;display:grid;gap:4px}
.as-row.on,.as-row:hover{background:#a78bfa18}
.as-top{display:flex;gap:8px;align-items:center}.as-top .small{margin-left:auto}
.as-last{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:.8}
.badge{background:#e0584a;color:#fff;border-radius:999px;font-size:11px;padding:1px 7px}
.as-thread{border:1px solid var(--line,#2c2c3a);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:10px;min-width:0}
.as-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;flex-wrap:wrap}
.as-msgs{display:flex;flex-direction:column;gap:8px;max-height:52vh;overflow:auto;padding:4px}
.as-msg{max-width:78%;padding:9px 13px;border-radius:14px;background:#8b8fa322;line-height:1.45}
.as-msg.customer{align-self:flex-start}.as-msg.bot{align-self:flex-end;background:#a78bfa30}.as-msg.staff{align-self:flex-end;background:#2fb67c30}
.as-send{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end}.as-send textarea{min-height:64px;font-size:15px}
.as-test{display:grid;gap:10px;max-width:760px}
.as-setup{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(380px,1fr))}.as-setup .wide{grid-column:1/-1}.as-setup textarea{width:100%}
.switch{display:inline-flex;gap:8px;align-items:center;font-weight:600}
@media(max-width:820px){.as-inbox{grid-template-columns:1fr}.as-msg{max-width:92%}}

/* Xưởng bài viết */
.pv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px}
.pv-card{display:grid;border:1px solid var(--line,#2c2c3a);border-radius:14px;overflow:hidden;text-decoration:none;color:inherit;background:var(--card,rgba(255,255,255,.03))}
.pv-card:hover{border-color:#a78bfa}
.pv-cover{aspect-ratio:4/5;background:#8b8fa322;display:grid;place-items:center;overflow:hidden;color:#8b8fa3}.pv-cover img{width:100%;height:100%;object-fit:cover}
.pv-info{padding:12px 14px;display:grid;gap:6px}
.pv-opts{display:flex;flex-wrap:wrap;gap:8px}
.pv-brief{display:grid;gap:14px;max-width:880px}
.pv-media{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.pv-design{display:grid;gap:14px;max-width:900px}
.pv-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.pv-set{margin-bottom:16px}
.pv-imgs{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.pv-img{margin:0;display:grid;gap:8px;align-content:start}.pv-img img{width:100%;border-radius:10px;border:1px solid var(--line,#2c2c3a);background:#fff}
.pv-fb{list-style:none;margin:0;padding:0;display:grid;gap:4px}.pv-fb li{display:flex;justify-content:space-between;gap:8px;font-size:13px;padding:6px 9px;border-radius:8px;background:#a78bfa18}.pv-fb li.sent,.pv-fb li.fixed{opacity:.6}
.pv-fbf{display:grid;grid-template-columns:1fr auto;gap:6px;align-items:end}.pv-fbf textarea{min-height:52px;font-size:14px}
.pv-strip{display:flex;gap:8px;overflow:auto;margin-bottom:12px}.pv-strip img{height:150px;border-radius:8px;border:1px solid var(--line,#2c2c3a)}
.pv-caps{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.pv-caps textarea{width:100%}
.pv-sw{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.pv-sw .sw{width:28px;height:28px;border-radius:8px;border:1px solid #8b8fa355}
.pv-row2{display:grid;gap:14px}

/* Brief bài viết: nhóm rõ ràng, lưới đều */
.pv-brief2{display:flex;flex-direction:column;gap:14px;max-width:920px}
.pvb h3{display:flex;align-items:center;gap:10px;margin:0 0 14px;font-size:16px}
.pvb h3 i{font-style:normal;display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--accent,#9c7420);color:#fff;font-size:13px}
.pvb .field:last-child{margin-bottom:0}
.pvg{display:grid;gap:8px}
.pvg3{grid-template-columns:repeat(3,minmax(0,1fr))}
.pvg4{grid-template-columns:repeat(4,minmax(0,1fr))}
.pvg .chip{width:100%;justify-content:flex-start;white-space:nowrap;min-width:0;box-sizing:border-box}
.pv-sizes .chip{display:grid;grid-template-columns:auto 1fr;column-gap:8px;align-items:center;white-space:normal}
.pv-sizes .chip small{grid-column:2;opacity:.75}
.pv-num{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:760px){.pvg4{grid-template-columns:repeat(2,minmax(0,1fr))}.pvg3{grid-template-columns:repeat(2,minmax(0,1fr))}.pv-num{grid-template-columns:1fr}}

/* Cài đặt: mục lục bên trái, nút Lưu cố định, các phần đánh số, mục đóng mở */
.set-top{position:sticky;top:var(--set-top,60px);z-index:6;background:var(--bg);padding:10px 0;margin-top:-10px;border-bottom:1px solid transparent}
.set-layout{display:grid;grid-template-columns:200px minmax(0,1fr);gap:28px;align-items:start}
.set-nav{position:sticky;top:170px;display:flex;flex-direction:column;gap:2px}
.set-nav a{display:block;padding:8px 12px;border-radius:10px;color:var(--fg);text-decoration:none;font-size:14.5px;opacity:.82}
.set-nav a:hover{background:var(--sunk);opacity:1}
.set-nav a.on{background:var(--violet-soft);color:var(--violet);font-weight:600;opacity:1}
.set-main{display:flex;flex-direction:column;gap:30px;min-width:0;max-width:860px}
.set-sec{display:flex;flex-direction:column;gap:14px;scroll-margin-top:150px}
.set-head{padding-bottom:10px;border-bottom:1px solid var(--line)}
.set-head h2{font-size:17px;font-weight:700}
details.set-fold{gap:0}
details.set-fold>summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:10px;font-weight:600}
details.set-fold>summary::-webkit-details-marker{display:none}
details.set-fold>summary span::before{content:"›";display:inline-block;width:16px;color:var(--muted);transition:transform .15s}
details.set-fold[open]>summary span::before{transform:rotate(90deg)}
details.set-fold[open]>summary{margin-bottom:12px}
@media (max-width:800px){.set-layout{grid-template-columns:minmax(0,1fr);gap:14px}.set-nav{position:sticky;top:130px;z-index:5;flex-direction:row;overflow-x:auto;background:var(--bg);padding:6px 0}.set-nav a{white-space:nowrap}}

/* Quảng cáo */
.ad-kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;margin-bottom:20px}
.ad-kpis.in{margin:0}
.ad-kpi{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:12px 14px;display:flex;flex-direction:column;gap:2px;min-width:0}
.ad-kpi-l{font-size:12px;color:var(--muted);font-weight:600}
.ad-kpi b{font-size:22px;line-height:1.25;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.ad-kpi small{font-size:12px}
.ad-sv{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
.ad-sv-i{border:1px solid var(--line);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:4px;min-width:0}
.ad-sv-i.focus{border-color:color-mix(in srgb,var(--teal) 45%,var(--line));background:var(--teal-soft)}
.ad-sv-i a{color:var(--violet);overflow-wrap:anywhere}
.ad-sv-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1.4fr) minmax(0,1.4fr) auto auto;gap:8px;align-items:center}
@media (max-width:800px){.ad-sv-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding-bottom:8px;border-bottom:1px solid var(--line)}}
.ad-job{display:flex;gap:12px;align-items:flex-start;padding:10px 12px;border-radius:12px;background:var(--sunk)}
.ad-job-t{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}
.ad-job.failed,.ad-job.stopped{background:var(--bad-soft)}
#adJob:empty{display:none}
.ad-md{font-size:15px;line-height:1.7;display:flex;flex-direction:column;gap:10px;min-width:0}
.ad-md h2{font-size:19px;margin-top:10px}.ad-md h3{font-size:16.5px;margin-top:8px}.ad-md h4,.ad-md h5{font-size:15px}
.ad-md ul,.ad-md ol{margin:0;padding-left:22px}
.ad-md code{font:13px var(--mono);background:var(--sunk);padding:1px 5px;border-radius:5px}
.ad-md hr{border:0;border-top:1px solid var(--line);width:100%}
.ad-md .tbl{min-width:0}.ad-md-tbl td,.ad-md-tbl th{vertical-align:top;white-space:normal}
.ad-group{font-size:15px;margin-top:6px;color:var(--violet)}
.th-sort{all:unset;cursor:pointer}.th-sort.on{color:var(--fg)}
.ad-pr{display:inline-block;min-width:22px;text-align:center;border-radius:6px;font-weight:700;font-size:12px;padding:1px 6px;background:var(--sunk)}
.ad-pr.p1{background:var(--ok-soft);color:var(--ok)}.ad-pr.p2{background:var(--gold-soft);color:var(--gold)}
.ad-kit{max-height:52vh;overflow:auto;padding-right:4px}
.ad-form{gap:10px 14px}
.ad-ctl input,.ad-ctl select{width:auto;min-width:0}
.ad-kit>*{flex-shrink:0}
@media (max-width:600px){.ad-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.ad-kpi b{font-size:19px}.ad-ctl input{width:100%}}

/* Ô đối thoại dưới nhật ký */
.ev.user{align-self:flex-end;max-width:85%;background:rgba(169,139,240,.18);color:#efeaff;font-family:var(--body);font-size:14px;padding:7px 12px;border-radius:12px 12px 2px 12px}
.ev.reply{color:#dff5f3;font-family:var(--body);font-size:14px;border-left:2px solid #e9dcc0;padding:6px 10px;background:rgba(196,154,58,.08);border-radius:0 8px 8px 0}
.ev .who{color:#e9dcc0;font-weight:700}
.log-chat{border-top:1px solid rgba(255,255,255,.08);padding:10px 12px 12px;display:flex;flex-direction:column;gap:8px;background:rgba(255,255,255,.02)}
.lc-chips{display:flex;flex-wrap:wrap;gap:6px}
.lc-chips .chip{background:transparent;color:var(--log-fg);border-color:rgba(255,255,255,.16)}
.lc-chips .chip:hover{border-color:#e0b85a}
.lc-row{display:flex;gap:8px;align-items:flex-end}
.lc-row textarea{flex:1;min-height:40px;max-height:160px;resize:none;background:rgba(255,255,255,.05);color:var(--log-fg);border:1px solid rgba(255,255,255,.14);border-radius:10px;padding:9px 12px;font:14px/1.45 var(--body)}
.lc-row textarea:focus{outline:2px solid #e0b85a;outline-offset:0;border-color:transparent}
.lc-row .btn{white-space:nowrap}
.lc-foot{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center;justify-content:space-between}
.lc-foot .check{color:var(--log-fg);font-size:13px}
.lc-foot .hint{color:var(--log-dim)}
.ad-logwrap>summary{cursor:pointer;font-size:14px;font-weight:600;color:var(--muted);padding:4px 0}
.ad-logwrap[open]>summary{margin-bottom:10px}
.ad-log{min-height:0;max-height:62vh}
.ad-log .log-body{min-height:160px;max-height:40vh}
.modal-card .ad-log{max-height:70vh}

/* Quảng cáo · Chiến lược tổng */
.pb-hero{background:linear-gradient(135deg,var(--violet-soft),var(--teal-soft));border-color:transparent}
.pb-north{font-family:var(--display);font-style:italic;font-size:clamp(18px,2.4vw,23px);line-height:1.45}
.pb-list{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px;font-size:14.5px}
.pb-bud{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(4,minmax(0,1fr));gap:10px}
@media (max-width:900px){.pb-bud{grid-template-columns:repeat(2,minmax(0,1fr))}}
.pb-btbl{min-width:0}.pb-sum td{background:var(--sunk)}
.pb-goal{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin-top:10px}
.pb-goal>div{border:1px solid var(--line);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:2px}
.pb-personas{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}
.pb-p{border:1px solid var(--line);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:8px;min-width:0}
.pb-p h4{font-size:15.5px}
.pb-p dl{margin:0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 10px;font-size:13.5px}
.pb-p dt{color:var(--muted);font-weight:600;white-space:nowrap}.pb-p dd{margin:0}
.pb-hook{font-family:var(--display);font-style:italic;color:var(--violet);font-size:15px;margin-top:auto}
.pb-journey{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;counter-reset:none}
.pb-journey li{border-left:3px solid var(--teal);background:var(--sunk);border-radius:0 12px 12px 0;padding:10px 12px;display:flex;flex-direction:column;gap:4px;font-size:13.5px}
.pb-journey.road li{border-left-color:var(--gold)}
.pb-ch{padding:12px 14px}.pb-ch>summary small{text-align:right;max-width:60%}
.pb-ch p{font-size:14px}.pb-watch{background:var(--gold-soft);border-radius:10px;padding:8px 12px}
.pb-tg{display:flex;flex-direction:column;gap:8px}.pb-tg h4{font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:6px}
.pb-tool{align-items:flex-start}.pb-tool span{display:flex;flex-direction:column;gap:2px}.pb-tool small{font-size:12.5px;font-weight:400}
.pb-rules{border-color:color-mix(in srgb,var(--bad) 35%,var(--line))}
@media (max-width:600px){.pb-ch>summary{flex-direction:column;align-items:flex-start}.pb-ch>summary small{max-width:none;text-align:left}}
table.tbl.pb-btbl,.ad-md table.tbl{min-width:0}
@media (max-width:600px){table.tbl.pb-btbl th,table.tbl.pb-btbl td{padding:8px;font-size:13px}}

/* Thumbnail dọc 9:16 */
.th-bar{grid-template-columns:minmax(0,230px) minmax(0,150px) minmax(0,240px) auto}
@media (max-width:800px){.th-bar{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.th-bar .hint{font-size:12px}
.tcard.tall img{aspect-ratio:9/16;max-height:480px;object-fit:cover}
.tcard.tall{max-width:300px}
.thumbs{align-items:start}
.th-rhint{margin:6px 0 0;color:var(--teal)}
.th-rhint:empty{display:none}

/* Tiêu đề, mô tả: trình sửa trực quan */
.mk-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between}
.mk-bar select{width:auto;min-width:240px;flex:1;max-width:520px}
.mk-save{position:sticky;top:64px;z-index:5;display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;padding:10px 14px;border-radius:12px;background:var(--gold-soft);border:1px solid color-mix(in srgb,var(--gold) 40%,var(--line));font-weight:600;font-size:14px}
#mtView{gap:14px}
.mk-prev{display:grid;grid-template-columns:minmax(0,260px) minmax(0,1fr);gap:16px;align-items:start;padding:14px;border-radius:14px;background:var(--sunk);border:1px solid var(--line)}
.mk-prev-th{aspect-ratio:16/9;border-radius:10px;overflow:hidden;background:var(--line);display:grid;place-items:center;color:var(--muted);font-size:13px}
.mk-prev-th img{width:100%;height:100%;object-fit:cover;display:block}
.mk-prev-tx{display:flex;flex-direction:column;gap:4px;min-width:0}
.mk-prev-tags{color:#3ea6ff;font-size:13px}
.mk-prev-t{font-size:18px;font-weight:700;line-height:1.35;overflow-wrap:anywhere}
.mk-prev-ch{font-size:13px;color:var(--muted)}
.mk-prev-d{font-size:13.5px;color:var(--muted);margin-top:4px}
@media (max-width:700px){.mk-prev{grid-template-columns:minmax(0,1fr)}}
.mk-sec{border:1px solid var(--line);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:10px;background:var(--surface)}
.mk-sec>header{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between}
.mk-sec h4{font-size:15px}
.mk-cnt{font:600 12px var(--mono);color:var(--muted);background:var(--sunk);border-radius:6px;padding:2px 7px;white-space:nowrap}
.mk-cnt.warn{color:var(--warn);background:var(--warn-soft)}.mk-cnt.bad{color:var(--bad);background:var(--bad-soft)}
.mk-titles{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.mk-titles li{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;gap:8px;align-items:center;padding:6px 8px;border-radius:10px;border:1px solid transparent}
.mk-titles li.on{background:var(--violet-soft);border-color:color-mix(in srgb,var(--violet) 35%,var(--line))}
.mk-titles input{font-size:15px;font-weight:600;background:transparent;border-color:transparent}
.mk-titles input:hover,.mk-titles input:focus{background:var(--surface);border-color:var(--line)}
.mk-star{all:unset;cursor:pointer;font-size:20px;width:30px;text-align:center;color:var(--gold)}
.mk-star:focus-visible{outline:2px solid var(--violet);border-radius:6px}
.mk-del{opacity:.55}.mk-titles li:hover .mk-del{opacity:1}
@media (max-width:600px){.mk-titles li{grid-template-columns:auto minmax(0,1fr) auto}.mk-titles li .btn{display:none}}
.mk-ta{width:100%;resize:vertical;font:14.5px/1.65 var(--body);min-height:80px}
.mk-ta.mono{font:13.5px/1.6 var(--mono)}
.mk-chips{display:flex;flex-wrap:wrap;gap:6px}

/* Thời gian còn lại trên thanh tiến độ */
.lp-pct{font:700 15px var(--mono)}
.lp-eta{display:flex;flex-wrap:wrap;gap:4px 16px;align-items:center;font-size:13px;color:var(--log-dim);margin-top:6px}
.lp-eta b{color:var(--log-fg)}
.lp-left{color:#f6dd8f;font-weight:700}
/* Ngân sách: các ô cùng hàng, nhãn ngắn */
.pb-bud{align-items:start}
.pb-bud label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pb-pct{position:relative}
.pb-pct input{padding-right:30px}
.pb-pct span{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--muted);font-weight:600;pointer-events:none}
.pb-bm .hint{font-variant-numeric:tabular-nums}

/* Quảng cáo · Chiến lược tổng dạng trực quan */
:root{--ch-meta:#9c7420;--ch-google:#008c84;--ch-chatgpt:#a97d10;--ch-youtube:#c2477a}
@media (prefers-color-scheme:dark){:root{--ch-meta:#9d7ce8;--ch-google:#1fa29c;--ch-chatgpt:#b98a1f;--ch-youtube:#e0668f}}
.pb2-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:18px;align-items:center;padding:20px;border-radius:var(--r);background:linear-gradient(135deg,var(--violet-soft),var(--teal-soft))}
@media (max-width:900px){.pb2-hero{grid-template-columns:minmax(0,1fr)}}
.pb2-pr{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.pb2-pr-i{display:flex;gap:8px;align-items:center;background:var(--surface);border-radius:12px;padding:9px 11px;font-size:13px;line-height:1.35;cursor:help}
.pb2-ic{font-size:20px;line-height:1}
.pb2-bud{display:grid;grid-template-columns:220px minmax(0,1fr);gap:22px;align-items:start}
@media (max-width:760px){.pb2-bud{grid-template-columns:minmax(0,1fr)}.pb2-donut{max-width:220px;margin:0 auto}}
.pb2-donut svg{width:100%;height:auto;display:block}
.pb2-dt{font:700 22px var(--body);fill:var(--fg)}.pb2-ds{font:500 12px var(--body);fill:var(--muted)}
.pb2-bud-r{display:flex;flex-direction:column;gap:12px;min-width:0}
.pb2-dot{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:-1px}
.pb2-legend{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.pb2-legend li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:0 4px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:8px 10px;font-size:13px}
.pb2-legend li b{grid-column:2;font-size:16px;font-variant-numeric:tabular-nums}.pb2-legend li small{grid-column:2;color:var(--muted)}
.pb2-goal{display:flex;flex-direction:column;gap:6px}
.pb2-goal-r{display:grid;grid-template-columns:minmax(0,230px) minmax(0,1fr) auto;gap:10px;align-items:center;font-size:13px}
@media (max-width:600px){.pb2-goal-r{grid-template-columns:minmax(0,1fr) auto}.pb2-goal-r .pb2-gbar{grid-column:1/-1;grid-row:2}}
.pb2-goal-r b{font-variant-numeric:tabular-nums}
.pb2-gbar{display:block;height:8px;background:var(--sunk);border-radius:4px;overflow:hidden;flex:1;min-width:60px}
.pb2-gbar.big{height:12px}
.pb2-gbar i{display:block;height:100%;background:var(--violet);border-radius:4px}
.pb2-phases{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.pb2-ph{display:flex;gap:10px;align-items:center;background:var(--sunk);border-radius:12px;padding:8px 12px;cursor:help}
.pb2-ph div{display:flex;flex-direction:column;line-height:1.3}.pb2-ph small{color:var(--muted);font-size:12px}
.pb2-ph-n{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--violet);color:#fff;font-weight:700;font-size:13px}
.pb2-arrow{color:var(--muted)}
.pb2-ps{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.pb2-p{border:1px solid var(--line);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:8px;min-width:0}
.pb2-p-h{display:flex;gap:10px;align-items:center}.pb2-p-h h4{font-size:15px;line-height:1.3}
.pb2-av{width:38px;height:38px;flex:none;border-radius:12px;display:grid;place-items:center;font-size:20px;background:var(--sunk)}
.pb2-hook{font-family:var(--display);font-style:italic;color:var(--violet);font-size:15px;line-height:1.45}
.pb2-row{display:flex;gap:8px;font-size:13.5px}.pb2-k{color:var(--muted);font-weight:600;flex:none}
.pb2-p details summary,.pb2-ch details summary{cursor:pointer;font-size:13px;color:var(--muted);font-weight:600}
.pb2-p dl{margin:8px 0 0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 10px;font-size:13px}.pb2-p dt{color:var(--muted);font-weight:600}.pb2-p dd{margin:0}
.pb2-funnel{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;align-items:center;gap:6px}
.pb2-funnel li{width:var(--w);min-width:260px;display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:10px;align-items:center;padding:10px 16px;border-radius:12px;background:color-mix(in srgb,var(--teal) 14%,var(--surface));border:1px solid color-mix(in srgb,var(--teal) 25%,var(--line));font-size:13px;cursor:help}
.pb2-funnel li b{white-space:nowrap}.pb2-funnel li small{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media (max-width:600px){.pb2-funnel li{width:100%;min-width:0;grid-template-columns:auto minmax(0,1fr)}.pb2-funnel li small{grid-column:1/-1;white-space:normal}}
.pb2-chs{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}
.pb2-ch{border:1px solid var(--line);border-top:4px solid var(--cc);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:10px;min-width:0}
.pb2-ch-h{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center}
.pb2-ch-h h4{font-size:15px}.pb2-ch-h small{color:var(--muted);font-size:12.5px;display:block;line-height:1.35}
.pb2-pctbig{font:700 22px var(--body);color:var(--cc)}
.pb2-camp{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:5px;font-size:13.5px}
.pb2-camp li{cursor:help}
.pb2-ch details p{font-size:13.5px;margin-top:8px}
.pb2-tools{display:grid;grid-template-columns:150px minmax(0,1fr);gap:20px;align-items:start}
@media (max-width:700px){.pb2-tools{grid-template-columns:minmax(0,1fr)}}
.pb2-ring{display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--muted);font-size:12.5px}.pb2-ring svg{width:130px;height:130px}
.pb2-tg{display:flex;flex-direction:column;gap:6px}
.pb2-g{border:1px solid var(--line);border-radius:12px;padding:8px 12px}
.pb2-g summary{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:10px;align-items:center;cursor:pointer;list-style:none;font-size:14px}
.pb2-g summary::-webkit-details-marker{display:none}
.pb2-g[open] summary{margin-bottom:8px}.pb2-g .pb-tool{padding:3px 0;font-size:13.5px;cursor:pointer}
.pb2-g .pb2-gbar i{background:var(--ok)}
.pb2-kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}
.pb2-kpi{border:1px solid var(--line);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:2px;cursor:help}
.pb2-kpi small{color:var(--muted);font-size:12.5px;line-height:1.35}.pb2-kpi b{font-size:20px;color:var(--teal);font-variant-numeric:tabular-nums;line-height:1.3}.pb2-kpi span{font-size:12.5px;color:var(--muted)}
.pb2-road{list-style:none;margin:0;padding:18px 0 0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;position:relative}
.pb2-road::before{content:"";position:absolute;left:8px;right:8px;top:24px;height:3px;background:linear-gradient(90deg,var(--teal),var(--violet),var(--gold));border-radius:2px}
.pb2-road li{position:relative;display:flex;flex-direction:column;gap:4px;padding-top:18px;font-size:13px;cursor:help}
.pb2-road small{color:var(--muted);line-height:1.4}
.pb2-node{position:absolute;top:0;left:0;width:15px;height:15px;border-radius:50%;background:var(--surface);border:3px solid var(--violet)}
@media (max-width:700px){.pb2-road{grid-template-columns:minmax(0,1fr);padding:0 0 0 22px}.pb2-road::before{left:7px;right:auto;top:6px;bottom:6px;width:3px;height:auto;background:linear-gradient(180deg,var(--teal),var(--violet),var(--gold))}.pb2-road li{padding-top:0}.pb2-node{left:-22px;top:2px}}
.pb2-rules{margin:0;padding-left:18px;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:6px 20px;font-size:13.5px}

/* Mục tiêu sửa được */
.pb2-goalbox textarea{width:100%;font:italic 17px/1.5 var(--display);background:var(--surface)}
/* Số liệu thật */
.rl-head{gap:8px}.rl-src{display:flex;flex-wrap:wrap;gap:6px}
.rl-pill{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:600;padding:3px 10px;border-radius:999px;background:var(--sunk);color:var(--muted);white-space:nowrap}
.rl-pill.ok{background:var(--ok-soft);color:var(--ok)}.rl-pill.bad{background:var(--bad-soft);color:var(--bad)}.rl-pill.wait{background:var(--gold-soft);color:var(--gold)}
.rl-err{font-size:13px;color:var(--bad);background:var(--bad-soft);padding:6px 10px;border-radius:8px}
.rl-empty{align-items:flex-start;background:var(--sunk)}
.rl-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
@media (max-width:860px){.rl-2{grid-template-columns:minmax(0,1fr)}}
.rl-h4{font-size:13px;color:var(--muted);font-weight:600;margin-bottom:6px}
.rl-bars{width:100%;height:150px;display:block}
.rl-ax{font:11px var(--body);fill:var(--muted)}
.rl-hb{display:flex;flex-direction:column;gap:6px}
.rl-hb-r{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1.6fr) auto;gap:10px;align-items:center;font-size:13px}
.rl-hb-r span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rl-hb-r b{font-variant-numeric:tabular-nums;white-space:nowrap}
table.tbl.rl-tbl{min-width:0}.rl-tbl td,.rl-tbl th{padding:8px 10px}
.rl-gbp{display:grid;grid-template-columns:180px minmax(0,1fr);gap:20px;align-items:center}
@media (max-width:600px){.rl-gbp{grid-template-columns:minmax(0,1fr)}}
.rl-star{display:flex;flex-direction:column;align-items:center;gap:2px}.rl-star b{font-size:44px;line-height:1}.rl-star span,.rl-st{color:var(--ch-chatgpt);letter-spacing:2px}
.rl-dist{display:flex;flex-direction:column;gap:4px}
.rl-rev{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}
.rl-rev li{border:1px solid var(--line);border-radius:12px;padding:10px 12px;font-size:13.5px;display:flex;flex-direction:column;gap:4px}
.rl-c{border:1px solid var(--line);border-radius:12px;padding:10px 14px}
.rl-c>summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;cursor:pointer;list-style:none}
.rl-c>summary::-webkit-details-marker{display:none}
.rl-cb{display:flex;flex-direction:column;gap:12px;padding-top:12px}
.rl-steps{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px;font-size:13.5px}
.rl-steps a{color:var(--violet)}
.rl-f{gap:10px 14px}
.rl-drop{min-height:90px}
.rl-files{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.rl-files li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;font-size:13.5px}
.rl-files li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rl-cb>.btn{align-self:flex-start}

/* Đăng nhập bằng Google */
.gbtn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;background:#fff;color:#1f1f1f;border:1px solid #dadce0;font-weight:600;text-decoration:none}
.gbtn:hover{background:#f6f8fc;border-color:#c6cad1}
.gbtn svg{flex:none}
.gbtn.sso-em{margin-top:10px;background:transparent;color:inherit;border-color:var(--line,#d8d2c4)}
.login-or{display:flex;align-items:center;gap:10px;margin:14px 0 4px;color:var(--muted);font-size:12.5px}
.login-or::before,.login-or::after{content:"";flex:1;height:1px;background:var(--line)}
.me-g{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:10px 12px;border:1px solid var(--line);border-radius:12px;margin:0 0 6px}
.me-g a.btn{text-decoration:none}
.gl-uri{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.gl-uri code{flex:1;min-width:0;overflow-wrap:anywhere;padding:8px 10px;border-radius:10px;background:var(--sunk);font-size:12.5px}
.gl-steps{margin:0 0 12px}
.gl-steps ol{margin:8px 0 0;padding-left:20px;display:flex;flex-direction:column;gap:6px}
/* Tiêu đề trang đăng nhập nằm một dòng */
.login-card{max-width:440px}
.login-card h1{white-space:nowrap;font-size:clamp(24px,8.2vw,33px)}
.login-card .login-sub{font-size:13.5px;margin-top:-2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:420px){.login-card .login-sub{font-size:min(12.5px,3.1vw)}}
.login-logo{display:block;margin:0 0 6px}
.login-logo img{display:block;width:190px;height:auto;margin:0 auto}
/* Chạy quảng cáo */
.seg button.on{background:var(--surface);color:var(--fg);box-shadow:0 1px 2px rgba(0,0,0,.08)}
.run-th{gap:8px;flex-wrap:nowrap}
.run-th input{width:120px}
.run-tbl td{vertical-align:top}
.run-act{white-space:nowrap;text-align:right}
.run-hot td{background:color-mix(in srgb,var(--danger,#c0392b) 7%,transparent)}
.run-bad{color:var(--danger,#c0392b)}
.run-sets{margin-top:6px}
.run-set{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:4px 0;border-top:1px dashed var(--line);font-size:13px}
.run-set>span:first-child{flex:1;min-width:120px}
.run-warn{border:1px solid color-mix(in srgb,#d4a017 55%,transparent);background:color-mix(in srgb,#d4a017 10%,transparent);border-radius:12px;padding:10px 14px;margin:6px 0 12px;font-size:13.5px}
.run-warn ul{margin:6px 0 0;padding-left:18px}
.run-ok{border:1px solid color-mix(in srgb,var(--teal,#1fa29c) 55%,transparent);background:color-mix(in srgb,var(--teal,#1fa29c) 10%,transparent);border-radius:12px;padding:12px 14px;margin-top:12px}
.run-ok p{margin:4px 0 8px}
.run-tbl td:first-child{min-width:220px}
#rnAgeMin,#rnAgeMax{width:84px!important}

/* thanh tiến độ % khi Xưởng đang chạy; nút Vẽ lại (cam) và Tải về (xanh) */
.pbar{display:inline-block;width:150px;max-width:40vw;height:8px;border-radius:99px;background:var(--sunk);overflow:hidden;vertical-align:middle}
.pbar i{display:block;height:100%;background:linear-gradient(90deg,var(--teal),var(--violet));transition:width .6s}
.pbar-n{font-variant-numeric:tabular-nums;font-size:13px}
.btn.btn-redraw{background:#e8730c;border-color:#e8730c;color:#fff}
.btn.btn-redraw:hover{background:#cf6408}
.btn.btn-redraw:disabled{opacity:.55;cursor:default}
.btn.btn-dl{background:#2f7be0;border-color:#2f7be0;color:#fff}
.btn.btn-dl:hover{background:#2368c4}

/* Kênh đăng chia nhóm theo nền tảng */
.ch-group{margin-bottom:8px}
.ch-gh{display:flex;align-items:center;gap:10px;font-size:17px;margin:6px 0 12px}
.ch-gh .ch-ic{width:28px;height:28px;font-size:14px}
.ch-gh .muted{font-weight:400}

/* Kiểu dựng (4 mức) */
.emodes{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
@media (max-width:560px){.emodes{grid-template-columns:1fr}}
.emode{position:relative}
.emode input{position:absolute;opacity:0;pointer-events:none}
.emode label{display:flex;flex-direction:column;gap:3px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;cursor:pointer;height:100%}
.emode label b{font-size:13px}
.emode label span{font-size:12px;color:var(--muted);line-height:1.4}
.emode input:checked + label{border-color:var(--gold,#e0b04a);background:color-mix(in srgb,var(--gold,#e0b04a) 14%,transparent)}
.emode input:focus-visible + label{outline:2px solid var(--violet);outline-offset:2px}

/* Thành phẩm: tải lên trực tiếp */
.lib-drop{border:2px dashed var(--line);border-radius:16px;padding:30px 20px;margin:0 0 10px;min-height:150px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;cursor:pointer;color:var(--muted);transition:border-color .15s,background .15s}
.lib-drop:hover,.lib-drop:focus-visible{border-color:var(--violet);outline:none}
.lib-drop .ld-ic{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;font-size:22px;background:var(--violet-soft);color:var(--violet);margin-bottom:4px}
.lib-drop .ld-t{font-size:16px;font-weight:600;color:var(--text,inherit)}
.lib-drop .ld-s{font-size:13px;line-height:1.5;max-width:560px}
.lib-drop .ld-s b{color:var(--text,inherit)}
.lib-drop.over{border-color:var(--violet);background:var(--violet-soft);border-style:solid}
.lib-drop.over .ld-ic{background:var(--violet);color:#fff}
.lib-ups{margin:0 0 14px}
.lib-ups .up{margin-top:8px}
.chk{display:flex;align-items:center;gap:8px;font-size:14px;margin:6px 0;cursor:pointer;font-weight:400}
.chk input{width:auto;margin:0}
.btn-edit{border-color:var(--violet);color:var(--violet)}
.pill-posted{display:inline-block;font-size:11px;font-weight:600;padding:1px 8px;border-radius:999px;border:1px solid #2fb67c;color:#2fb67c;vertical-align:middle;white-space:nowrap;cursor:help}
.pill-wait{display:inline-block;font-size:11px;font-weight:600;padding:1px 8px;border-radius:999px;border:1px solid #d99a1e;color:#d99a1e;vertical-align:middle;white-space:nowrap;cursor:help}
.pub-head{display:flex;align-items:center;gap:10px;margin:14px 0 8px}.pub-head .btn-gy{margin-left:auto}
.pub-cards{display:grid;gap:10px;max-height:52vh;overflow:auto;padding-right:4px}
.pub-card{border:1px solid var(--line);border-radius:12px;padding:12px 12px 4px;background:rgba(127,127,127,.04);transition:border-color .2s}
.pub-card.gy-done{border-color:var(--violet)}
.pc-head{display:flex;align-items:center;gap:8px;margin-bottom:8px;flex-wrap:wrap}
.pc-n{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;background:var(--violet-soft);color:var(--violet);flex:none}
.pc-name{font-weight:600;font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1}
.pc-head .btn-gy{margin-left:auto}
.pc-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px}
.pub-card .field{margin-bottom:8px}.pub-card .field label{font-size:12px}
.pub-card input,.pub-card textarea,.pub-card select{width:100%}
.pub-auto{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:flex-end;border:1px dashed var(--line);border-radius:12px;padding:10px 12px;margin-bottom:6px}
.pub-auto .field{margin:0;flex:1;min-width:160px}
.pub-common{margin-top:12px}.pub-common summary{cursor:pointer;font-size:13.5px;font-weight:600;margin-bottom:8px}
.btn-gy{border-color:var(--violet);color:var(--violet);white-space:nowrap}
.btn-gy.busy{opacity:.8;cursor:progress}
.spin{display:inline-block;width:11px;height:11px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite;vertical-align:-1px}
@keyframes spin{to{transform:rotate(360deg)}}
.pub-card textarea.pdx{min-height:150px;resize:vertical;line-height:1.55}
.pub-cards{max-height:62vh}
/* hộp đăng: các bước, thẻ kênh theo màu nền tảng */
.pub-step{margin-bottom:14px}
.ps-t{display:flex;align-items:center;gap:8px;font-weight:700;font-size:14px;margin-bottom:8px}
.pfc{--pc:#888;border:1.5px solid color-mix(in srgb,var(--pc) 55%,transparent);background:color-mix(in srgb,var(--pc) 10%,transparent);color:inherit}
.pfc .pfi{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:6px;background:var(--pc);color:#fff;font-size:11px;font-weight:700;margin-right:2px}
.pfc:has(input:checked){background:color-mix(in srgb,var(--pc) 26%,transparent);border-color:var(--pc)}
.pfc input{accent-color:var(--pc)}
.pf-youtube{--pc:#e0443a}.pf-facebook{--pc:#3b6fd8}.pf-instagram{--pc:#c2338f}.pf-tiktok{--pc:#0f7a45}
.pub-vis{display:grid;gap:8px}
.vis-row{display:grid;grid-template-columns:130px minmax(0,1fr);gap:4px 12px;align-items:center}
.vis-row select{width:100%}
.vis-pf{display:flex;align-items:center;gap:8px;font-weight:600;font-size:13.5px}
.ch-ic.sm{width:24px;height:24px;font-size:12px;border-radius:7px}
.vis-fixed{font-size:13.5px;padding:8px 0}
.vis-hint{grid-column:2;line-height:1.45}
.seg2{display:inline-flex;flex-wrap:wrap;gap:4px;background:var(--sunk);border:1px solid var(--line);border-radius:12px;padding:4px;margin-bottom:8px}
.seg2 label{cursor:pointer;position:relative}.seg2 input{position:absolute;opacity:0;pointer-events:none}
.seg2 span{display:block;padding:7px 14px;border-radius:9px;font-size:13.5px;font-weight:600;color:var(--muted)}
.seg2 input:checked+span{background:var(--violet);color:#fff}
.seg2 input:focus-visible+span{outline:2px solid var(--violet);outline-offset:2px}
.pc-time{color:var(--violet);font-weight:600;white-space:nowrap}
@media (max-width:640px){.vis-row{grid-template-columns:1fr}.vis-hint{grid-column:1}}
/* hộp đăng rộng: 2 cột, mỗi cột tự cuộn */
.modal-card.xwide{max-width:min(1380px,96vw);height:calc(100vh - 32px);overflow:hidden}
.modal-card.xwide #modalBody{flex:1;min-height:0}
.pub-grid{display:grid;grid-template-columns:minmax(360px,5fr) minmax(0,7fr);gap:22px;height:100%;min-height:0}
.pub-left,.pub-right{min-height:0;overflow-y:auto;padding-right:6px}
.pub-right{display:flex;flex-direction:column;border-left:1px solid var(--line);padding-left:20px}
.pub-right .pub-head{margin-top:0;position:sticky;top:0;background:var(--surface);z-index:2;padding-bottom:8px}
.pub-right .pub-cards{max-height:none;overflow:visible;padding-right:0}
.pub-left .vis-row{grid-template-columns:104px minmax(0,1fr)}
.pub-left .pub-step{margin-bottom:16px}
.pub-left .pub-ch{gap:6px}.pub-left .pfc{font-size:13px;padding:5px 10px}
@media (max-width:980px){.modal-card.xwide{height:auto;overflow-y:auto}.pub-grid{grid-template-columns:1fr;height:auto}.pub-left,.pub-right{overflow:visible}.pub-right{border-left:0;padding-left:0}}
@media (max-width:980px){.modal-card.xwide #modalBody{flex:none}.pub-right .pub-head{position:static}.pub-left{padding-right:0}}
@media (max-width:640px){.pub-left .vis-row{grid-template-columns:1fr}.pub-head{flex-wrap:wrap}}
.post-imgs{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-bottom:12px}
.post-img{margin:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--sunk);position:relative}
.post-img img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover}
.post-img figcaption{display:flex;align-items:center;gap:6px;padding:6px 8px;min-width:0}
.post-img figcaption .small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pi-act{position:absolute;top:6px;right:6px;display:flex;gap:4px}
.pi-act .btn{padding:2px 8px;background:rgba(10,10,20,.7);color:#fff;border-color:transparent}
.post-foot{white-space:pre-wrap;font:12px/1.5 var(--body);background:var(--sunk);border-radius:10px;padding:8px 10px;margin:6px 0 0}
#qText{min-height:240px;line-height:1.6}
.post-imgs.sm{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px}
.pi-box{position:relative;overflow:hidden;background:var(--sunk)}
.pi-box img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;position:relative}
.post-imgs.framed .pi-box{aspect-ratio:var(--ar)}
.post-imgs.framed .pi-box img{width:100%;height:100%;aspect-ratio:auto}
.post-imgs.fit-crop .pi-box img{object-fit:cover}
.post-imgs.fit-white .pi-box{background:#fff}.post-imgs.fit-white .pi-box img{object-fit:contain}
.post-imgs.fit-blur .pi-box img{object-fit:contain}
.post-imgs.fit-blur .pi-box::before{content:"";position:absolute;inset:-20px;background:var(--bg) center/cover;filter:blur(14px)}
.post-img figcaption{flex-direction:column;align-items:flex-start;gap:2px}
.pi-warn{color:#e0a020}
.post-card .qx{min-height:170px;line-height:1.6}
/* chọn thành phẩm bằng hình */
.mp-box{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--line);border-radius:12px;padding:10px;background:var(--sunk);min-height:64px}
.mp-box .mp-prev{width:120px;max-height:200px;object-fit:contain;border-radius:8px;background:#000;flex:none}
.mp-box video.mp-prev{width:150px}
.mp-info{display:flex;flex-direction:column;gap:4px;min-width:0}.mp-info b{font-size:13.5px;overflow-wrap:anywhere}
.mp-empty{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%}
.mp-tools{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:6px}.mp-tools input{flex:1;min-width:200px}.mp-tools .seg2{margin:0}
.mp-groups{overflow-y:auto;min-height:0;flex:1;padding-right:6px}
.modal-card.xwide #modalBody:has(.mp-groups){display:flex;flex-direction:column}
.mp-group{margin-bottom:16px}.mp-group h4{margin:0 0 8px;font-size:14px;position:sticky;top:0;background:var(--surface);padding:4px 0;z-index:1}
.mp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}
.mp-tile{display:flex;flex-direction:column;gap:3px;text-align:left;border:2px solid transparent;border-radius:12px;padding:6px;background:var(--sunk);color:inherit;cursor:pointer;position:relative;font:inherit}
.mp-tile:hover{border-color:var(--line)}.mp-tile.on{border-color:var(--violet);background:var(--violet-soft)}
.mp-tile:focus-visible{outline:2px solid var(--violet);outline-offset:2px}
.mp-th{position:relative;display:block;aspect-ratio:16/10;border-radius:8px;overflow:hidden;background:#000}
.mp-th img{width:100%;height:100%;object-fit:contain;display:block}
.mp-play{position:absolute;left:6px;bottom:6px;width:22px;height:22px;border-radius:50%;background:rgba(0,0,0,.6);color:#fff;display:grid;place-items:center;font-size:10px}
.mp-nm{font-size:12.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mp-meta{font-size:11.5px;color:var(--muted)}
.mp-pp{position:absolute;top:10px;right:10px;font-size:10px;background:var(--surface)}
.gy-ask{display:flex;gap:8px;margin-top:8px}.gy-ask input{flex:1;min-width:0}
@media (max-width:640px){.gy-ask{flex-direction:column}.mp-box{flex-direction:column}}
.mp-noimg{display:grid;place-items:center;width:100%;height:100%;color:var(--muted);font-size:12px}
.ad-preset{border:1px solid var(--violet);background:var(--violet-soft);border-radius:12px;padding:10px 12px;margin-bottom:12px}
.ad-preset label{display:block;margin-bottom:6px}.ad-preset select{width:100%}.ad-preset .hint{margin:6px 0 0}
.aud-list{display:flex;flex-wrap:wrap;gap:6px}
.chip.aud{cursor:pointer;font:inherit}.chip.aud.in{border-color:#2fb67c;color:#2fb67c;background:color-mix(in srgb,#2fb67c 12%,transparent)}.chip.aud.ex{border-color:#e0443a;color:#e0443a;background:color-mix(in srgb,#e0443a 10%,transparent);text-decoration:line-through}
.int-box{position:relative;display:flex;flex-direction:column;gap:6px}.int-box .chip .x{border:0;background:none;color:inherit;cursor:pointer;padding:0 0 0 4px}
.int-res{position:absolute;top:100%;left:0;right:0;z-index:5;background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.25);max-height:260px;overflow:auto}
.int-res button{display:block;width:100%;text-align:left;border:0;background:none;color:inherit;padding:8px 10px;cursor:pointer;font:inherit}.int-res button:hover{background:var(--violet-soft)}

/* Duyệt & chạy kế hoạch */
.pl-g{margin:14px 0 4px}.pl-g h4{margin:0 0 2px}.pl-g h4 small{color:var(--muted);font-weight:500}
.pl-step{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--line);border-radius:10px;margin-top:8px}.pl-step label{cursor:pointer}
.pl-step>input{margin-top:3px;flex:none}.pl-step>span{display:flex;flex-direction:column;gap:3px;min-width:0}
.pl-step.off{opacity:.75;cursor:default}
.pl-copy{font-size:13px;background:var(--violet-soft);border-radius:8px;padding:6px 8px;white-space:pre-wrap}
.pl-bad{font-size:13px;color:var(--danger,#e5484d)}.pl-warn{font-size:13px;color:#b7791f}
.pl-meta{margin-top:10px}.pl-meta .row-wrap{gap:12px}.pl-meta .field{flex:1;min-width:200px}
.pl-man{margin:6px 0 0;padding-left:18px}.pl-man li{margin:4px 0}
.pl-res{list-style:none;padding:0;margin:0}.pl-res li{padding:8px 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:3px}.pl-res li.ok b{color:var(--teal,#14b8a6)}.pl-res li.bad b{color:var(--danger,#e5484d)}
.pl-fix{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.pl-fix select,.pl-fix input{width:auto;flex:1;min-width:160px;padding:6px 8px;font-size:13px}.pl-fix input[data-f=daily]{flex:0 0 170px}
.ad-pl{border-top:1px solid var(--line);padding-top:12px;margin-top:12px}
.ad-pl:first-of-type{border-top:0;margin-top:4px;padding-top:0}
.ad-pl-h{display:flex;gap:10px;align-items:flex-start;margin-bottom:10px}
.ad-pl-h>div{flex:1;min-width:0}
.ad-pl-no{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-weight:700;background:var(--teal-soft);color:var(--teal)}
.ad-pl-n{flex:none;white-space:nowrap}
.ad-pl-ed{border:1px solid var(--line);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:8px}
.ad-pl-ed .ad-sv-row{grid-template-columns:minmax(0,1.2fr) minmax(0,2fr) minmax(0,1fr) minmax(0,1.4fr) minmax(0,1.4fr) auto auto}
@media (max-width:800px){.ad-pl-ed .ad-sv-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.ad-pl.solo{border:1px dashed color-mix(in srgb,var(--gold) 55%,var(--line));border-radius:14px;padding:12px;margin-top:16px;background:var(--gold-soft)}
.ad-pl.solo .ad-pl-no{background:var(--gold);color:#fff}
.ad-pl.solo .ad-sv-i{background:var(--surface)}

/* tiep tuc tu lieu */
.pv-next{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:16px 18px;border:1px solid var(--line,rgba(255,255,255,.1));border-radius:14px;background:rgba(167,139,250,.08)}
#dLogProg .bar{height:8px;border-radius:99px;overflow:hidden}
#dLogProg .bar i{display:block;height:100%;background:linear-gradient(90deg,var(--teal),var(--violet));transition:width .6s}

/* logo42 */
.mark{width:28px;height:28px;border-radius:50%;background:url(favicon.svg?v=3) center/cover no-repeat;-webkit-mask:none;mask:none;box-shadow:0 1px 4px rgba(0,0,0,.25)}

/* ex43 cau mau tro ly */
.ex-save{margin-left:8px;font:inherit;font-size:11px;padding:1px 8px;border-radius:999px;border:1px solid var(--line,#ccc);background:transparent;color:inherit;cursor:pointer;opacity:.75}.ex-save:hover{opacity:1}.ex-save:disabled{opacity:.6;cursor:default}
.ex-add{margin-bottom:14px}.ex-list{display:grid;gap:10px}.ex-item .ex-q{margin:6px 0 4px}.ex-del{margin-left:8px;font:inherit;font-size:11px;border:0;background:none;color:#d65a5a;cursor:pointer}

/* adc44 chat chinh quang cao + hoa don */
.adc-log{max-height:420px;overflow:auto;display:flex;flex-direction:column;gap:10px;padding:10px;border:1px solid var(--line,rgba(127,127,127,.25));border-radius:12px;margin:8px 0}
.adc-msg{max-width:88%;padding:9px 12px;border-radius:12px;line-height:1.5;background:rgba(127,127,127,.12)}
.adc-msg.me{align-self:flex-end;background:var(--violet,#7b55d6);color:#fff}
.adc-msg.bot{align-self:flex-start}
.adc-hint{display:flex;flex-wrap:wrap;gap:6px;font-size:13px;color:var(--muted,#888)}
.adc-hint span{border:1px dashed var(--line,rgba(127,127,127,.4));border-radius:999px;padding:3px 10px;cursor:pointer}
.adc-hint span:hover{border-style:solid}
.adc-acts{margin-top:8px;display:grid;gap:6px}
.adc-act{display:flex;gap:8px;align-items:flex-start;padding:8px 10px;border-radius:10px;background:rgba(127,127,127,.1);font-size:13px}
.adc-act input{margin-top:3px}
.adc-ok{color:#2e9e62;font-weight:600}
.adc-form{display:flex;gap:8px;align-items:flex-end}.adc-form textarea{flex:1}
.bl-drop{border:2px dashed var(--line,rgba(127,127,127,.4));border-radius:14px;padding:22px;text-align:center;display:grid;gap:6px;justify-items:center}
.bl-drop.on{border-color:var(--violet,#7b55d6);background:rgba(196,154,58,.06)}
.bl-where p{margin:6px 0;font-size:13.5px}
.bl-sum{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0}
.bl-tot{display:grid;padding:8px 14px;border-radius:12px;background:rgba(127,127,127,.1);min-width:130px}
.bl-tot b{font-size:18px}.bl-tot.sm b{font-size:15px}
.bl-inv{margin:6px 0;padding-left:18px;font-size:13.5px}

/* vt45 kho tai khoan */
.vt-lock{max-width:520px;margin:20px auto;text-align:center}.vt-ico{font-size:40px}
.vt-form{display:grid;gap:10px;max-width:360px;margin:12px auto 0}
.vt-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.vt-bar input{flex:1;min-width:200px}
.vt-grp{margin-top:18px}.vt-grp h3{margin:0 0 8px}
.vt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:10px}
.vt-item{border:1px solid var(--line,rgba(127,127,127,.25));border-radius:14px;padding:12px 14px;display:grid;gap:6px;background:var(--card,transparent)}
.vt-top{display:flex;gap:8px;align-items:baseline}.vt-tools{margin-left:auto}
.vt-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.vt-row .small{min-width:64px}
.vt-row code{font-family:var(--mono,monospace);font-size:13px;padding:2px 8px;border-radius:6px;background:rgba(127,127,127,.12);word-break:break-all}
.vt-mask{letter-spacing:2px}.vt-st{font-size:11px;padding:1px 8px;border-radius:999px;background:rgba(127,127,127,.15)}
.vt-st.bad{background:rgba(214,90,90,.18);color:#d65a5a}.vt-st.mid{background:rgba(217,169,43,.18);color:#b8860b}.vt-st.ok{background:rgba(46,158,98,.18);color:#2e9e62}
.vt-note{color:var(--muted,#888)}.vt-rev input,.vt-rev select{width:100%;min-width:90px;font-size:13px}
.vt-mask-in{-webkit-text-security:disc}
@media (max-width:720px){.vt-grid{grid-template-columns:1fr}}

/* ck46 checklist hoa don */
.ck-prog{display:flex;align-items:center;gap:10px;margin:10px 0}.ck-bar{flex:1;height:8px;border-radius:99px;background:rgba(127,127,127,.18);overflow:hidden}.ck-bar i{display:block;height:100%;background:linear-gradient(90deg,#14a3a0,#2e9e62)}
.ck-list{display:grid;gap:6px}.ck-row{display:grid;grid-template-columns:minmax(200px,1.2fr) 1fr auto auto;gap:10px;align-items:center;padding:8px 12px;border-radius:10px;background:rgba(127,127,127,.08)}
.ck-row.on{background:rgba(46,158,98,.10)}.ck-act{display:flex;gap:6px;justify-content:flex-end}
.ck-ed{display:grid;grid-template-columns:1.1fr 1.2fr 1.6fr 1fr auto;gap:6px;margin-bottom:6px}
.nav a.nav-dot{position:relative}.nav a.nav-dot::after{content:'';position:absolute;top:4px;right:-2px;width:7px;height:7px;border-radius:50%;background:#e5484d}
@media (max-width:720px){.ck-row{grid-template-columns:1fr}.ck-act{justify-content:flex-start}.ck-ed{grid-template-columns:1fr}}

/* sv47 bam o dich vu lap chien dich */
.ad-sv-i[data-svgo]{cursor:pointer;transition:border-color .15s,transform .15s;position:relative}
.ad-sv-i[data-svgo]:hover{border-color:var(--violet,#7b55d6);transform:translateY(-1px)}
.ad-sv-go{margin-top:6px;font-size:12px;font-weight:600;color:var(--violet,#7b55d6);opacity:.75}
.ad-sv-i[data-svgo]:hover .ad-sv-go{opacity:1}
.sv-pick{margin:0 0 12px;padding:10px 14px;border-radius:12px;background:rgba(196,154,58,.10);border:1px solid rgba(196,154,58,.35);font-size:14px;line-height:1.55}

.vt-pw{position:relative;display:flex;align-items:center}.vt-pw input{width:100%;padding-right:34px}
.vt-eye{position:absolute;right:4px;border:0;background:none;cursor:pointer;font-size:15px;opacity:.45;padding:4px 6px;line-height:1}.vt-eye:hover,.vt-eye.on{opacity:1}

/* sv48 nut duyet danh sach */
.sv-dirty{color:#e5a23a;font-weight:600}.sv-okbar{margin-top:10px}
.btn.pulse{box-shadow:0 0 0 0 rgba(196,154,58,.6);animation:svp 1.6s infinite}
@keyframes svp{0%{box-shadow:0 0 0 0 rgba(196,154,58,.55)}70%{box-shadow:0 0 0 10px rgba(196,154,58,0)}100%{box-shadow:0 0 0 0 rgba(196,154,58,0)}}

/* sv49 sua xoa tung o */
.ad-pl-tools{display:flex;gap:6px;margin-left:10px}
.ad-sv-foot{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:auto;padding-top:6px}
.ad-sv-foot .ad-sv-go{margin-top:0}.ad-sv-tools{display:flex;gap:4px;opacity:.55;transition:opacity .15s}
.ad-sv-i:hover .ad-sv-tools{opacity:1}.ad-sv-tools .btn{padding:2px 9px;font-size:12px}
.ad-sv-i{display:flex;flex-direction:column}
.ad-pl-ed.flash{outline:2px solid var(--violet,#7b55d6);outline-offset:4px;border-radius:12px}
@media (hover:none){.ad-sv-tools{opacity:1}}

/* tg50 nhom tab quang cao */
.ad-tabs{display:grid;grid-template-columns:1.15fr 1.15fr 1fr;gap:10px;margin:6px 0 16px}
.ad-tg{border:1px solid var(--line,rgba(127,127,127,.22));border-radius:14px;padding:8px 10px 10px;background:rgba(127,127,127,.04)}
.ad-tg-h{display:block;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;opacity:.55;margin:0 4px 6px}
.ad-tg-b{display:flex;flex-wrap:wrap;gap:6px}
.ad-tabs .tab{border:1px solid transparent;border-radius:999px;padding:6px 13px;font-size:13.5px;background:rgba(127,127,127,.10);white-space:nowrap;margin:0;border-bottom-width:1px}
.ad-tabs .tab:hover{background:rgba(127,127,127,.18)}
.ad-tabs .tab.on{background:var(--violet,#7b55d6);color:#fff;border-color:transparent}
.ad-tabs .tab.on::after{display:none}
@media (max-width:980px){.ad-tabs{grid-template-columns:1fr}.ad-tg-b{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.ad-tg-b::-webkit-scrollbar{display:none}}

/* pl51 quan ly tru cot */
.pl-ed{display:grid;grid-template-columns:56px 1.3fr 2fr 1.2fr auto auto;gap:6px;align-items:center;margin-bottom:6px}
[data-svcancel]:disabled{opacity:.4}
@media (max-width:760px){.pl-ed{grid-template-columns:1fr}}

/* pg52 thanh % moi viec */
.pbar.indet i{width:35%!important;animation:slide 1.6s ease-in-out infinite}
.pbar.wait{opacity:.5}.pjob{margin-top:4px;display:flex;align-items:center;gap:6px}
.bar,.p .pbar{width:100%;max-width:none}

/* ak53 thu vien akasha */
.ak-frame{border:1px solid var(--line,rgba(127,127,127,.25));border-radius:14px;overflow:hidden;height:calc(100vh - 250px);min-height:520px;background:#0b0b0f}
.ak-frame iframe{width:100%;height:100%;border:0;display:block}

/* ak54 akasha toan man hinh */
.ak-full{position:fixed;left:0;right:0;bottom:0;z-index:30;background:#0b0b14}
.ak-full:fullscreen{top:0!important}
.ak-full iframe{width:100%;height:100%;border:0;display:block}
.ak-bar{position:absolute;right:16px;bottom:16px;display:flex;gap:2px;align-items:center;padding:4px;border-radius:999px;background:rgba(20,18,36,.82);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.12);box-shadow:0 8px 28px rgba(0,0,0,.35);opacity:.55;transition:opacity .2s}
.ak-bar:hover{opacity:1}
.ak-bar button,.ak-bar a{border:0;background:none;color:#e8e4f5;font:inherit;font-size:13px;padding:6px 12px;border-radius:999px;cursor:pointer;text-decoration:none}
.ak-bar button.on{background:#e9a752;color:#1a1424;font-weight:600}
.ak-bar button:hover,.ak-bar a:hover{background:rgba(255,255,255,.12)}
.ak-sep{width:1px;height:18px;background:rgba(255,255,255,.18);margin:0 4px}
body.ak-on{overflow:hidden}
@media (max-width:720px){.ak-bar{left:8px;right:8px;bottom:8px;justify-content:center;flex-wrap:wrap;opacity:.9}}

/* Chat quảng cáo: thanh tiến độ và giờ gửi */
.adc-bar{height:6px;border-radius:3px;background:rgba(127,127,127,.2);overflow:hidden;margin:6px 0 4px;min-width:220px}
.adc-bar i{display:block;height:100%;background:var(--violet,#7b55d6);transition:width .6s}
.adc-time{font-size:11px;opacity:.6;margin-top:3px}
.adc-wait{opacity:.6}
.adc-un{background:none;border:0;color:inherit;text-decoration:underline;cursor:pointer;padding:0;font:inherit}
.adc-side{display:flex;flex-direction:column;gap:6px;align-items:stretch}
.adc-side select{font-size:12px;padding:5px 6px;border-radius:8px}
.run-tot td{border-top:2px solid var(--line,rgba(127,127,127,.35));background:rgba(127,127,127,.06)}
/* Bảng chiến dịch Meta: vừa khung, không cắt cột nút */
.run-tbl{width:100%}
.run-tbl td,.run-tbl th{padding:8px 7px}
.run-tbl th{white-space:nowrap;font-size:11px}
.run-tbl td:first-child{min-width:170px;max-width:240px}
.run-tbl td.num{white-space:nowrap}
.run-tbl td.run-act{white-space:normal;width:1%}
.run-tbl td.run-act .btn{display:block;width:100%;margin:0 0 6px;white-space:nowrap}
.run-tbl td.run-act .btn:last-child{margin-bottom:0}

/* Khung chọn thành phẩm: tải lên và kéo thả */
.mp-drophint{margin:2px 0 8px}
.mp-over{outline:2px dashed var(--violet);outline-offset:-6px;background:var(--violet-soft)}
#mpUps:empty{display:none}

/* Ô yêu cầu cho gợi ý khi soạn quảng cáo: rộng, nhiều dòng */
.gy-ask{align-items:flex-end}
.gy-ask textarea{flex:1;min-width:0;min-height:84px;resize:vertical;line-height:1.55;font-size:14px;padding:10px 12px}

/* Nút gợi ý theo ngôn ngữ */
.gy-lg{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.04em;padding:1px 5px;border-radius:6px;background:rgba(255,255,255,.18);margin-right:2px;vertical-align:1px}
.gy-ask{flex-wrap:wrap}.gy-ask textarea{flex:1 1 100%}

/* Ô dắt khách về trang: rộng hết khung, thấy trọn đường link */
.rn-link{grid-column:1/-1}
.rn-link-top{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:10px;margin-bottom:8px}
.rn-link-top>div{display:flex;flex-direction:column;gap:4px;min-width:0}
.rn-link-top select{width:100%}
.rn-link-url{display:flex;gap:8px;align-items:center;margin-top:4px}
.rn-link-url input{flex:1;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}
.rn-link-url .btn{flex:none;white-space:nowrap}
@media (max-width:640px){.rn-link-top{grid-template-columns:1fr}}

/* ===== gbw56 · Bộ nhận diện Vàng · Đen · Trắng (HEALIVERSE Media) ===== */
:root{
  --gold:#b8892b; --gold-hi:#d9b45c; --gold-deep:#8c6618; --ink:#0d0d0d; --ink-2:#171612; --paper:#fbfaf6;
  --bg:#f6f4ee; --surface:#ffffff; --sunk:#f1eee6; --line:#e5dfd0; --fg:#121110; --muted:#6c675b;
  --violet:#9c7420; --teal:#141414; --violet-soft:#f6eedb; --teal-soft:#efece4; --gold-soft:#f8efd8;
  --st-kb:#8a8476; --st-tl:#141414; --st-dung:#b8892b; --st-duyet:#8c6618; --st-sua:#c46a12; --st-xong:#2f7d4a;
  --sbw:252px; --r:14px;
}
@media (prefers-color-scheme:dark){:root{
  --bg:#0a0a09; --surface:#141311; --sunk:#100f0d; --line:#2a2720; --fg:#f4f0e6; --muted:#a59e8c;
  --violet:#e0b85a; --teal:#efe7d2; --gold:#e0b85a; --gold-hi:#f0cf7c; --violet-soft:#2a2210; --teal-soft:#1d1b16; --gold-soft:#2a2210;
  --st-kb:#a59e8c; --st-tl:#efe7d2; --st-dung:#e0b85a; --st-duyet:#c99a3c; --st-sua:#f0a050; --st-xong:#6fcf8f; --log-bg:#070706}}
body{background:var(--bg)}
a{color:var(--violet)}
.btn.primary{background:var(--ink);border-color:var(--ink);color:#f6e7bf}
.btn.primary:hover{background:#000;filter:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 35%,transparent)}
@media (prefers-color-scheme:dark){.btn.primary{background:var(--gold);border-color:var(--gold);color:#120f08}.btn.primary:hover{background:var(--gold-hi)}}
.btn.teal{background:var(--gold);border-color:var(--gold);color:#120f08}
.btn:hover{border-color:var(--gold)}
.eyebrow{color:var(--gold);font-weight:700;letter-spacing:.18em}
.page-head h1{font-family:var(--body);font-style:normal;font-weight:800;letter-spacing:-.02em;text-transform:none}
.box,.card{border-color:var(--line)}
:focus-visible{outline:2px solid var(--gold);outline-offset:2px}

/* Thanh điều hướng: đen tuyền, chữ trắng, nhấn vàng */
.top{background:#0b0b0a;border-bottom:1px solid #26221a;color:#f4efe2;backdrop-filter:none}
.brand{color:#f4efe2}
.brand-txt{display:flex;flex-direction:column;line-height:1.1;gap:2px}
.brand-txt .brand-word{font-size:10.5px;letter-spacing:.28em;color:#bfb59c;font-weight:700}
.brand b{color:var(--gold-hi,#d9b45c);font-size:20px}
.brand-txt small{font-size:10.5px;letter-spacing:.04em;color:#8f8775;font-weight:500}
/* .mark: dấu tròn The Sound Healing (favicon.svg) */
.nav-h{display:none}
.nav-g{display:contents}
.nav a{color:#cfc8b6;display:inline-flex;align-items:center;gap:8px}
.nav a:hover{color:#fff;background:#1b1914}
.nav a.on{color:#f3d68a;background:#221d12}
.ni{font-style:normal;width:22px;height:22px;flex:none;display:inline-grid;place-items:center;border-radius:6px;background:#1a1812;color:#d9b45c;font-size:11px;font-weight:800;border:1px solid #2c271c}
.ni.pf{background:#d9b45c;color:#0b0b0a;border-color:#d9b45c;font-size:11px}
.nav a.on .ni{background:#d9b45c;color:#0b0b0a;border-color:#d9b45c}
.me{border-color:#3a3427;color:#f4efe2}
.me .av{background:#d9b45c;color:#0b0b0a}
@media (min-width:1100px){
  #shell{padding-left:var(--sbw)}
  #shell>.top{position:fixed;left:0;top:0;bottom:0;width:var(--sbw);flex-direction:column;align-items:stretch;gap:12px;padding:20px 12px 14px;overflow-y:auto;border-bottom:0;border-right:1px solid #24201a;scrollbar-width:thin;scrollbar-color:#333 transparent}
  #shell>.top .brand{padding:2px 8px 14px;border-bottom:1px solid #24201a}
  #shell>.top .nav{flex-direction:column;overflow:visible;flex:1;gap:0}
  #shell>.top .nav-g{display:flex;flex-direction:column;gap:1px;margin-bottom:6px}
  #shell>.top .nav-h{display:block;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:#7d7564;font-weight:700;padding:12px 10px 5px}
  #shell>.top .nav a{padding:7px 10px;border-radius:9px;font-size:13.5px;font-weight:600}
  #shell>.top .nav a.on{background:linear-gradient(90deg,#2a2213,#16130d);box-shadow:inset 3px 0 0 #d9b45c}
  #shell>.top .me{align-self:stretch;justify-content:flex-start;border-radius:12px;padding:6px 10px 6px 6px}
  #shell>.top .me #meName{display:inline}
  .ak-full{top:0!important;left:var(--sbw)!important}
}
@media (max-width:1099px){#shell>.top .brand-txt small{display:none}}

/* ===== Phòng Marketing (bảng điều khiển) ===== */
.hb-hero{position:relative;overflow:hidden;border-radius:22px;background:radial-gradient(1200px 400px at 85% -20%,#3a2c0e 0%,transparent 60%),linear-gradient(135deg,#0b0b0a 0%,#15130e 100%);color:#f4efe2;padding:28px clamp(18px,3vw,36px);margin-bottom:18px;border:1px solid #2a251a}
.hb-hero:after{content:"";position:absolute;right:-60px;top:-60px;width:280px;height:280px;border-radius:50%;border:1px solid rgba(217,180,92,.25);box-shadow:0 0 0 40px rgba(217,180,92,.05),0 0 0 80px rgba(217,180,92,.03)}
.hb-kick{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:#d9b45c;font-weight:700}
.hb-hero h1{font-size:clamp(26px,3.4vw,40px);font-weight:800;letter-spacing:-.02em;line-height:1.08;margin:8px 0 6px}
.hb-hero h1 em{font-family:var(--display);font-weight:700;color:#e8c76f}
.hb-hero p{color:#bdb4a0;max-width:640px}
.hb-acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;position:relative;z-index:1}
.hb-acts .btn{background:#1d1a13;border-color:#3a3427;color:#f4efe2}
.hb-acts .btn.gold{background:#d9b45c;border-color:#d9b45c;color:#0b0b0a}
.hb-acts .btn:hover{border-color:#d9b45c}
.hb-meta{display:flex;flex-wrap:wrap;gap:14px;margin-top:14px;font-size:12.5px;color:#9a917c;position:relative;z-index:1}
.hb-meta b{color:#e8c76f;font-weight:600}
.kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:18px}
@media(max-width:1250px){.kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
.kpi{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:14px 14px 10px;cursor:pointer;text-align:left;font:inherit;color:inherit;transition:border-color .15s,transform .15s}
.kpi:hover{border-color:var(--gold);transform:translateY(-1px)}
.kpi.on{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}
.kpi .k-l{font-size:11.5px;color:var(--muted);font-weight:600;letter-spacing:.02em}
.kpi .k-v{font-size:clamp(19px,1.9vw,24px);font-weight:800;letter-spacing:-.02em;margin-top:2px;font-variant-numeric:tabular-nums;white-space:nowrap}
.kpi .k-s{font-size:11.5px;color:var(--muted)}
.kpi svg{display:block;width:100%;height:30px;margin-top:6px}
.hb-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:16px;margin-bottom:16px}
@media(max-width:980px){.hb-grid{grid-template-columns:1fr}}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:18px}
.panel-h{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:12px;flex-wrap:wrap}
.panel-h h2{font-size:16px;font-weight:800;letter-spacing:-.01em}
.panel-h p{font-size:12.5px;color:var(--muted)}
.seg2{display:inline-flex;background:var(--sunk);border:1px solid var(--line);border-radius:10px;padding:3px;gap:2px}
.seg2 button{border:0;background:none;font:600 12.5px var(--body);color:var(--muted);padding:5px 10px;border-radius:7px;cursor:pointer}
.seg2 button.on{background:var(--ink);color:#f3d68a}
@media (prefers-color-scheme:dark){.seg2 button.on{background:var(--gold);color:#120f08}}
.dchart{position:relative}
.dchart svg{width:100%;height:230px;display:block;overflow:visible}
.dchart .dbar{fill:color-mix(in srgb,var(--gold) 55%,transparent);transition:fill .12s;cursor:pointer}
.dchart .dbar:hover,.dchart .dbar.on{fill:var(--gold)}
.dchart .ax{fill:var(--muted);font-size:10.5px;font-family:var(--body)}
.dchart .gl{stroke:var(--line);stroke-dasharray:3 4}
.dchart .avg{stroke:var(--fg);stroke-width:1.2;stroke-dasharray:5 4;opacity:.55}
.tip{position:absolute;pointer-events:none;background:#0b0b0a;color:#f4efe2;border:1px solid #3a3427;border-radius:10px;padding:7px 10px;font-size:12px;white-space:nowrap;transform:translate(-50%,-110%);z-index:3;box-shadow:0 8px 24px rgba(0,0,0,.25)}
.tip b{color:#e8c76f}
.dday{margin-top:10px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
@media(max-width:620px){.dday{grid-template-columns:repeat(2,1fr)}}
.dday div{background:var(--sunk);border-radius:12px;padding:8px 10px}
.dday small{display:block;font-size:11px;color:var(--muted)}
.dday b{font-variant-numeric:tabular-nums}
.funnel{display:flex;flex-direction:column;gap:6px}
.fn-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;cursor:pointer;border-radius:12px;padding:2px}
.fn-bar{height:44px;border-radius:10px;background:linear-gradient(90deg,var(--ink),#3a3020);color:#f4efe2;display:flex;align-items:center;justify-content:space-between;padding:0 12px;font-size:13px;font-weight:700;margin:0 auto;min-width:46%;transition:filter .15s}
@media (prefers-color-scheme:dark){.fn-bar{background:linear-gradient(90deg,#3a2f17,#1c1910)}}
.fn-row:nth-child(2) .fn-bar{background:linear-gradient(90deg,#5b4513,#8c6618)}
.fn-row:nth-child(3) .fn-bar{background:linear-gradient(90deg,#8c6618,#b8892b)}
.fn-row:nth-child(4) .fn-bar{background:linear-gradient(90deg,#b8892b,#e0bf6a);color:#120f08}
.fn-row:hover .fn-bar{filter:brightness(1.12)}
.fn-cv{font-size:11.5px;color:var(--muted);min-width:78px;text-align:right}
.fn-cv b{color:var(--fg)}
.fn-note{margin-top:10px;font-size:12.5px;color:var(--muted);background:var(--sunk);border-radius:12px;padding:10px 12px;min-height:42px}
.cmp{display:flex;flex-direction:column;gap:8px}
.cmp-stack{display:flex;height:16px;border-radius:999px;overflow:hidden;background:var(--sunk);margin-bottom:6px}
.cmp-stack i{display:block;height:100%;cursor:pointer;transition:opacity .15s}
.cmp-stack:hover i{opacity:.55}.cmp-stack i:hover,.cmp-stack i.on{opacity:1}
.cmp-row{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 10px;border-radius:12px;cursor:pointer;border:1px solid transparent}
.cmp-row:hover,.cmp-row.on{background:var(--sunk);border-color:var(--line)}
.cmp-row .dot{width:10px;height:10px;border-radius:3px}
.cmp-row .nm{font-weight:600;font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cmp-row .vl{font-variant-numeric:tabular-nums;font-weight:700;font-size:13.5px}
.cmp-det{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:8px}
.cmp-det div{background:var(--sunk);border-radius:12px;padding:8px 10px}
.cmp-det small{display:block;font-size:11px;color:var(--muted)}
.chgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin-bottom:16px}
.chc{position:relative;display:flex;flex-direction:column;gap:8px;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:16px;text-decoration:none;color:inherit;transition:border-color .15s,transform .15s,box-shadow .15s;min-height:168px}
.chc:hover{border-color:var(--gold);transform:translateY(-2px);box-shadow:0 10px 30px -18px rgba(140,102,24,.6)}
.chc-h{display:flex;align-items:center;gap:10px}
.chc-ic{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:var(--ink);color:#e8c76f;font-weight:800;font-size:15px;flex:none}
@media (prefers-color-scheme:dark){.chc-ic{background:#221d12}}
.chc-h b{display:block;font-size:15px;line-height:1.2}
.chc-h small{color:var(--muted);font-size:11.5px}
.chc-st{position:absolute;right:14px;top:14px;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border-radius:999px;background:var(--sunk);color:var(--muted)}
.chc-st.live{background:#e8f4ec;color:#256b3d}
@media (prefers-color-scheme:dark){.chc-st.live{background:#14301e;color:#7fd79c}}
.chc-st.part{background:var(--gold-soft);color:var(--gold-deep,#8c6618)}
.chc-n{display:flex;gap:16px;margin-top:auto;font-variant-numeric:tabular-nums}
.chc-n div{display:flex;flex-direction:column}
.chc-n b{font-size:16px}
.chc-n small{font-size:11px;color:var(--muted)}
.chc-p{font-size:12.5px;color:var(--muted)}
.chc-go{font-size:12.5px;font-weight:700;color:var(--violet);margin-top:auto}
.sec-t{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:22px 0 10px}
.sec-t h2{font-size:18px;font-weight:800;letter-spacing:-.01em}
.sec-t span{font-size:12.5px;color:var(--muted)}
.hstg{display:flex;flex-direction:column;gap:8px}
.hstg-r{display:grid;grid-template-columns:110px minmax(0,1fr) 34px;gap:10px;align-items:center;font-size:13px}
.hstg-r .htr{height:10px;background:var(--sunk);border-radius:999px;overflow:hidden}
.hstg-r .htr i{display:block;height:100%;border-radius:999px;background:var(--gold)}
.hstg-r b{text-align:right;font-variant-numeric:tabular-nums}
.wk{display:flex;align-items:flex-end;gap:6px;height:90px;margin-top:6px}
.wk div{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:10.5px;color:var(--muted)}
.wk i{display:block;width:100%;max-width:26px;border-radius:6px 6px 2px 2px;background:var(--ink);min-height:3px}
@media (prefers-color-scheme:dark){.wk i{background:var(--gold)}}
.hb-empty{padding:18px;border:1px dashed var(--line);border-radius:14px;color:var(--muted);font-size:13px;text-align:center}

/* ===== Trang từng công cụ quảng cáo ===== */
.pf-hero{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;background:linear-gradient(135deg,#0b0b0a,#1a160d);color:#f4efe2;border-radius:22px;padding:22px 24px;margin-bottom:16px;border:1px solid #2a251a}
@media(max-width:700px){.pf-hero{grid-template-columns:auto 1fr}.pf-hero .pf-cta{grid-column:1/-1}}
.pf-ic{width:62px;height:62px;border-radius:18px;background:#d9b45c;color:#0b0b0a;display:grid;place-items:center;font-size:26px;font-weight:900}
.pf-hero h1{font-size:clamp(22px,2.6vw,30px);font-weight:800;letter-spacing:-.02em}
.pf-hero p{color:#bdb4a0;font-size:13.5px}
.pf-cta{display:flex;gap:8px;flex-wrap:wrap}
.pf-cta .btn{background:#1d1a13;border-color:#3a3427;color:#f4efe2}
.pf-cta .btn.gold{background:#d9b45c;color:#0b0b0a;border-color:#d9b45c}
.pf-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
@media(max-width:980px){.pf-grid{grid-template-columns:1fr}}
.pf-grid ul{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:6px;font-size:13.5px}
.pf-steps{counter-reset:s;list-style:none;padding:0!important}
.pf-steps li{counter-increment:s;position:relative;padding-left:32px!important}
.pf-steps li:before{content:counter(s);position:absolute;left:0;top:0;width:22px;height:22px;border-radius:50%;background:var(--ink);color:#e8c76f;font-size:11.5px;font-weight:800;display:grid;place-items:center}
@media (prefers-color-scheme:dark){.pf-steps li:before{background:var(--gold);color:#120f08}}
.pf-fit{display:flex;flex-wrap:wrap;gap:6px}
.pf-fit span{font-size:12px;padding:4px 10px;border-radius:999px;background:var(--gold-soft);color:var(--gold-deep,#8c6618);font-weight:600}
@media (prefers-color-scheme:dark){.pf-fit span{color:#e8c76f}}
.pf-warn{margin-top:14px;font-size:12.5px;color:var(--muted);border-left:3px solid var(--gold);padding:6px 12px;background:var(--sunk);border-radius:0 10px 10px 0}

/* ===== Trang giới thiệu công khai ===== */
body.lp-on{background:#fbfaf6;color:#121110}
.lp{--lg:#d9b45c;--lgd:#b8892b;--lk:#0b0b0a;font-family:var(--body);color:#121110;background:#fbfaf6}
.lp a{color:inherit}
.lp-w{max-width:1180px;margin:0 auto;padding:0 20px}
.lp-nav{position:sticky;top:0;z-index:20;background:rgba(11,11,10,.92);backdrop-filter:blur(10px);border-bottom:1px solid #26221a}
.lp-nav .lp-w{display:flex;align-items:center;gap:18px;height:64px}
.lp-logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:#f4efe2}
.lp-logo span{display:flex;flex-direction:column;line-height:1.05}
.lp-logo small{font-size:10px;letter-spacing:.3em;color:#bfb59c;font-weight:700}
.lp-logo b{font-family:var(--display);font-style:italic;font-size:21px;color:var(--lg)}
.lp-links{display:flex;gap:4px;margin-left:auto}
.lp-links a{color:#cfc8b6;text-decoration:none;font-size:14px;font-weight:600;padding:8px 12px;border-radius:9px}
.lp-links a:hover{color:#fff;background:#1b1914}
.lp-btn{display:inline-flex;align-items:center;gap:8px;font:700 14px var(--body);border-radius:999px;padding:11px 20px;border:1px solid transparent;cursor:pointer;text-decoration:none;transition:transform .15s,box-shadow .15s,background .15s}
.lp-btn.g{background:var(--lg);color:#0b0b0a}
.lp-btn.g:hover{background:#f0cf7c;box-shadow:0 10px 30px -10px rgba(217,180,92,.7);transform:translateY(-1px)}
.lp-btn.o{border-color:#4a4232;color:#f4efe2;background:transparent}
.lp-btn.o:hover{border-color:var(--lg);color:var(--lg)}
.lp-btn.k{background:#0b0b0a;color:#f6e7bf}
.lp-btn.k:hover{background:#000;transform:translateY(-1px)}
.lp-btn.sm{padding:8px 14px;font-size:13px}
@media(max-width:860px){.lp-links{display:none}.lp-nav .lp-btn{margin-left:auto}}
.lp-hero{background:radial-gradient(900px 500px at 80% 10%,#3b2d0d 0%,transparent 60%),radial-gradient(600px 400px at 0% 100%,#1f1909 0%,transparent 60%),#0b0b0a;color:#f4efe2;padding:72px 0 64px;overflow:hidden}
.lp-hero .lp-w{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:40px;align-items:center}
@media(max-width:940px){.lp-hero .lp-w{grid-template-columns:1fr}.lp-orbit{max-width:420px;margin:0 auto}}
.lp-kick{display:inline-flex;align-items:center;gap:8px;font-size:11.5px;letter-spacing:.24em;text-transform:uppercase;font-weight:700;color:var(--lg);border:1px solid #3a3427;border-radius:999px;padding:6px 14px}
.lp-kick:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--lg);box-shadow:0 0 0 4px rgba(217,180,92,.2)}
.lp-hero h1{font-size:clamp(34px,5.2vw,62px);line-height:1.02;font-weight:900;letter-spacing:-.035em;margin:18px 0 16px}
.lp-hero h1 em{font-family:var(--display);font-weight:700;color:var(--lg);letter-spacing:-.01em}
.lp-hero p.lead{font-size:clamp(15px,1.4vw,18px);color:#c4bba7;max-width:560px}
.lp-hero .lp-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.lp-trust{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:26px;font-size:12.5px;color:#988f7b}
.lp-trust b{color:#e8c76f}
.lp-orbit{position:relative;aspect-ratio:1;width:100%}
.lp-orbit .ring{position:absolute;inset:0;border-radius:50%;border:1px dashed rgba(217,180,92,.28)}
.lp-orbit .ring.r2{inset:17%;border-style:solid;border-color:rgba(217,180,92,.16)}
.lp-orbit .core{position:absolute;inset:33%;border-radius:50%;background:radial-gradient(circle at 35% 30%,#f6dc94,#b8892b 55%,#5c430f);display:grid;place-items:center;text-align:center;color:#0b0b0a;box-shadow:0 0 80px rgba(217,180,92,.35)}
.lp-orbit .core b{font-size:clamp(13px,1.4vw,16px);font-weight:900;letter-spacing:.04em;line-height:1.15}
.lp-orbit .core small{display:block;font-size:10.5px;font-weight:700;opacity:.75;margin-top:2px}
.lp-node{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:5px;background:none;border:0;cursor:pointer;color:#f4efe2;font:600 12px var(--body);width:96px}
.lp-node i{font-style:normal;width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:#15130e;border:1px solid #3a3427;color:var(--lg);font-weight:900;font-size:18px;transition:all .2s}
.lp-node:hover i,.lp-node.on i{background:var(--lg);color:#0b0b0a;border-color:var(--lg);transform:scale(1.08);box-shadow:0 0 30px rgba(217,180,92,.45)}
.lp-node span{text-align:center;line-height:1.2}
.lp-stats{background:#0b0b0a;border-top:1px solid #1f1c15;color:#f4efe2}
.lp-stats .lp-w{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0}
@media(max-width:760px){.lp-stats .lp-w{grid-template-columns:repeat(2,1fr)}}
.lp-stat{padding:26px 16px;border-left:1px solid #1f1c15}
.lp-stat:first-child{border-left:0}
.lp-stat b{display:block;font-size:clamp(28px,3.4vw,42px);font-weight:900;letter-spacing:-.03em;color:var(--lg);font-variant-numeric:tabular-nums}
.lp-stat span{font-size:13px;color:#a79f8b}
.lp-sec{padding:80px 0}
.lp-sec.alt{background:#f2eee4}
.lp-sec.dark{background:#0b0b0a;color:#f4efe2}
.lp-h{max-width:720px;margin-bottom:34px}
.lp-h .k{font-size:11.5px;letter-spacing:.24em;text-transform:uppercase;font-weight:800;color:var(--lgd)}
.lp-sec.dark .lp-h .k{color:var(--lg)}
.lp-h h2{font-size:clamp(28px,3.6vw,44px);line-height:1.06;font-weight:900;letter-spacing:-.03em;margin:10px 0 12px}
.lp-h h2 em{font-family:var(--display);color:var(--lgd);font-weight:700}
.lp-sec.dark .lp-h h2 em{color:var(--lg)}
.lp-h p{color:#5e594e;font-size:16px}
.lp-sec.dark .lp-h p{color:#b3aa95}
.svc{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:22px}
@media(max-width:900px){.svc{grid-template-columns:1fr}}
.svc-list{display:flex;flex-direction:column;gap:6px}
.svc-tab{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;align-items:center;text-align:left;background:#fff;border:1px solid #e5dfd0;border-radius:16px;padding:12px 14px;cursor:pointer;font:inherit;color:inherit;transition:all .15s}
.svc-tab i{font-style:normal;width:44px;height:44px;border-radius:13px;background:#0b0b0a;color:var(--lg);display:grid;place-items:center;font-weight:900;font-size:16px}
.svc-tab b{display:block;font-size:15.5px}
.svc-tab small{color:#6c675b;font-size:12.5px}
.svc-tab em{font-style:normal;color:#b5ad99;font-size:20px}
.svc-tab:hover{border-color:var(--lgd)}
.svc-tab.on{background:#0b0b0a;color:#f4efe2;border-color:#0b0b0a;box-shadow:0 20px 40px -24px rgba(0,0,0,.6)}
.svc-tab.on i{background:var(--lg);color:#0b0b0a}
.svc-tab.on small{color:#a79f8b}.svc-tab.on em{color:var(--lg)}
.svc-det{background:#0b0b0a;color:#f4efe2;border-radius:24px;padding:28px;position:relative;overflow:hidden;min-height:100%}
.svc-det:before{content:"";position:absolute;right:-80px;bottom:-80px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(217,180,92,.25),transparent 70%)}
.svc-det h3{font-size:26px;font-weight:900;letter-spacing:-.02em}
.svc-det .sub{color:var(--lg);font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px}
.svc-det p{color:#c4bba7;margin:8px 0 16px}
.svc-cols{display:grid;grid-template-columns:1fr 1fr;gap:18px;position:relative}
@media(max-width:560px){.svc-cols{grid-template-columns:1fr}}
.svc-cols h4{font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:#988f7b;margin-bottom:8px}
.svc-cols ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:7px;font-size:14px}
.svc-cols li{padding-left:18px;position:relative}
.svc-cols li:before{content:"";position:absolute;left:0;top:.6em;width:8px;height:8px;border-radius:2px;background:var(--lg);transform:rotate(45deg)}
.svc-kpi{display:flex;flex-wrap:wrap;gap:6px;margin-top:18px;position:relative}
.svc-kpi span{font-size:12px;border:1px solid #3a3427;border-radius:999px;padding:4px 10px;color:#e8c76f}
.fun{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:center}
@media(max-width:900px){.fun{grid-template-columns:1fr}}
.fun-st{display:flex;flex-direction:column;gap:8px;align-items:center}
.fun-s{width:100%;border:0;cursor:pointer;font:inherit;color:#f4efe2;border-radius:14px;padding:16px 18px;display:flex;justify-content:space-between;align-items:center;transition:all .2s;text-align:left}
.fun-s b{font-size:16px;font-weight:800}
.fun-s small{font-size:12px;opacity:.75}
.fun-s:nth-child(1){width:100%;background:#1a1712}.fun-s:nth-child(2){width:88%;background:#3b2e12}.fun-s:nth-child(3){width:76%;background:#7a5a17}.fun-s:nth-child(4){width:64%;background:#b8892b;color:#0b0b0a}
.fun-s.on,.fun-s:hover{outline:2px solid var(--lg);outline-offset:3px}
.fun-d{background:#15130e;border:1px solid #2c271c;border-radius:20px;padding:22px}
.fun-d h3{font-size:22px;font-weight:900;margin-bottom:6px}
.fun-d p{color:#b3aa95;font-size:14.5px;margin-bottom:14px}
.fun-chs{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.fun-ch{display:flex;align-items:center;gap:8px;border:1px solid #2c271c;border-radius:12px;padding:8px 10px;font-size:13px;color:#7d7564;transition:all .2s}
.fun-ch i{font-style:normal;width:26px;height:26px;border-radius:8px;display:grid;place-items:center;background:#1f1c15;font-weight:900;font-size:12px}
.fun-ch.hit{color:#f4efe2;border-color:var(--lg)}
.fun-ch.hit i{background:var(--lg);color:#0b0b0a}
.fun-ch .lv{margin-left:auto;display:flex;gap:2px}
.fun-ch .lv u{width:5px;height:12px;border-radius:2px;background:#2c271c}
.fun-ch .lv u.f{background:var(--lg)}
.proc{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
@media(max-width:900px){.proc{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.proc{grid-template-columns:1fr}}
.proc div{background:#fff;border:1px solid #e5dfd0;border-radius:20px;padding:20px;position:relative}
.proc div b{display:block;font-size:40px;font-weight:900;color:var(--lgd);letter-spacing:-.04em;line-height:1}
.proc div h3{font-size:17px;font-weight:800;margin:10px 0 6px}
.proc div p{font-size:14px;color:#5e594e}
.why{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
@media(max-width:900px){.why{grid-template-columns:1fr}}
.why div{border:1px solid #2c271c;border-radius:20px;padding:22px;background:#12110d}
.why h3{font-size:18px;font-weight:800;margin-bottom:6px;color:#f4efe2}
.why p{color:#b3aa95;font-size:14px}
.why i{font-style:normal;display:inline-grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--lg);color:#0b0b0a;font-weight:900;margin-bottom:12px}
.lp-cta-band{background:linear-gradient(120deg,#d9b45c,#b8892b);color:#0b0b0a;border-radius:28px;padding:40px clamp(20px,4vw,48px);display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:26px;align-items:center}
@media(max-width:860px){.lp-cta-band{grid-template-columns:1fr}}
.lp-cta-band h2{font-size:clamp(26px,3.2vw,40px);font-weight:900;letter-spacing:-.03em;line-height:1.05}
.lp-cta-band p{margin-top:8px;color:#3a2d10}
.lp-contacts{display:flex;flex-direction:column;gap:8px}
.lp-contacts a{display:flex;align-items:center;gap:12px;background:#0b0b0a;color:#f4efe2;border-radius:16px;padding:12px 16px;text-decoration:none;transition:transform .15s}
.lp-contacts a:hover{transform:translateX(4px)}
.lp-contacts i{font-style:normal;width:36px;height:36px;border-radius:10px;background:var(--lg);color:#0b0b0a;display:grid;place-items:center;font-weight:900}
.lp-contacts small{display:block;font-size:11.5px;color:#a79f8b}
.lp-foot{background:#0b0b0a;color:#8f8775;font-size:13px;padding:28px 0}
.lp-foot .lp-w{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px}
.login-back{display:block;text-align:center;margin-top:12px;font-size:13px;color:var(--muted)}
@media (prefers-reduced-motion:reduce){.lp *,.chc,.kpi{transition:none!important}}
.chc-h{padding-right:92px}
.brand-txt small{white-space:normal}
.hstg-r{grid-template-columns:96px minmax(0,1fr) 30px}
.chc-h{padding-right:0}
.chc-st{position:static;align-self:flex-start;order:-1}
@media(max-width:620px){.cmp-det{grid-template-columns:repeat(2,1fr)}}

/* ===== xh57 · Đầu trang dạng infographic dùng chung (Xưởng video, bài viết, thành phẩm, quảng cáo) ===== */
.xh,.ac-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:22px;align-items:stretch;border-radius:22px;padding:24px clamp(18px,2.6vw,30px);margin-bottom:18px;color:#f4efe2;border:1px solid #2a251a;background:radial-gradient(900px 340px at 100% 0%,#33270c 0%,transparent 60%),linear-gradient(135deg,#0b0b0a 0%,#15130e 100%)}
@media(max-width:980px){.xh,.ac-hero{grid-template-columns:1fr}}
.xh h1,.ac-hero h1{font-size:clamp(28px,3.4vw,42px);font-weight:900;letter-spacing:-.03em;line-height:1.05;margin:8px 0 6px}
.xh h1 em,.ac-hero h1 em{font-family:var(--display);font-weight:700;color:#e8c76f}
.xh p,.ac-hero p{color:#bdb4a0;font-size:14px;max-width:560px}
.xh-t,.ac-hero-t{display:flex;flex-direction:column;min-width:0}
.xh-i,.ac-live{background:rgba(255,255,255,.035);border:1px solid #2c271c;border-radius:18px;padding:16px;display:flex;flex-direction:column;gap:12px;min-width:0}
.xh-ih,.ac-live-h{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#d9b45c;font-weight:700;display:flex;justify-content:space-between;gap:8px}
.xh-ih span,.ac-live-h span{color:#8f8775;letter-spacing:.04em;text-transform:none;font-weight:500}
.xh-sys{display:flex;flex-wrap:wrap;gap:6px;margin-top:16px}
.xh-sys .chip{background:#17150f;border:1px solid #2c271c;color:#cfc8b6;font-size:12px;padding:5px 10px}
.xh-sys .chip.disk{flex-wrap:wrap}
.xh-sys .dk{display:block;flex-basis:100%;height:4px;border-radius:9px;background:#2c271c;overflow:hidden;margin-top:4px}
.xh-sys .dk u{display:block;height:100%;background:#d9b45c}
.xh-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.xh-stats .xs{background:#15130e;border:1px solid #2a251a;border-radius:12px;padding:9px 10px}
.xh-stats .xs b{display:block;font-size:22px;font-weight:900;letter-spacing:-.02em;color:#f4efe2;font-variant-numeric:tabular-nums;line-height:1.1}
.xh-stats .xs small{font-size:11px;color:#998f7a}
.xh-stats .xs.warn b{color:#f0cf7c}.xh-stats .xs.bad b{color:#f08a6a}
.xh-stats.big .xs b{font-size:26px}
@media(max-width:560px){.xh-stats{grid-template-columns:repeat(2,1fr)}}
.pipe{display:flex;align-items:flex-end;gap:2px;min-height:118px}
.pipe-s{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:5px;background:none;border:0;cursor:pointer;color:#cfc8b6;font:inherit;padding:4px 2px;border-radius:12px;transition:background .15s}
.pipe-s:hover{background:rgba(255,255,255,.05)}
.pipe-s.on{background:rgba(217,180,92,.14);box-shadow:inset 0 0 0 1px #d9b45c}
.pipe-n{font-size:20px;font-weight:900;color:#f4efe2;font-variant-numeric:tabular-nums}
.pipe-b{width:70%;max-width:38px;height:56px;border-radius:8px;background:#1d1a13;display:flex;align-items:flex-end;overflow:hidden}
.pipe-b i{display:block;width:100%;background:var(--c);min-height:3px;border-radius:6px 6px 0 0;transition:height .3s}
.pipe-l{font-size:11px;font-weight:600;text-align:center;line-height:1.2}
.pipe-a{color:#4a4232;font-size:18px;align-self:center;margin-bottom:22px}
@media(max-width:560px){.pipe-a{display:none}.pipe-l{font-size:10px}}
.live-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#3fbf6f;margin-right:8px;box-shadow:0 0 0 4px rgba(63,191,111,.18);vertical-align:middle}
#queue .empty{border:1px dashed var(--line);border-radius:14px;background:var(--surface)}
.toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:10px 12px;margin-bottom:12px}
.toolbar .row-wrap{display:flex;flex-wrap:nowrap;align-items:center;gap:8px}
.toolbar .search{min-width:200px}
.chip.on{background:var(--ink);color:#f3d68a;border-color:var(--ink)}
@media (prefers-color-scheme:dark){.chip.on{background:var(--gold);color:#120f08;border-color:var(--gold)}}
.kanban .col{border-radius:16px;border-top:3px solid var(--line)}
.kanban .col[data-stage="kb"]{border-top-color:var(--st-kb)}.kanban .col[data-stage="tl"]{border-top-color:var(--st-tl)}.kanban .col[data-stage="dung"]{border-top-color:var(--st-dung)}.kanban .col[data-stage="duyet"]{border-top-color:var(--st-duyet)}.kanban .col[data-stage="sua"]{border-top-color:var(--st-sua)}.kanban .col[data-stage="xong"]{border-top-color:var(--st-xong)}
.kanban .card{transition:transform .15s,border-color .15s,box-shadow .15s}
.kanban .card:hover{transform:translateY(-2px);border-color:var(--gold);box-shadow:0 10px 24px -16px rgba(140,102,24,.6)}
/* Bài viết */
.xt{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:10px 12px;margin-bottom:14px}
.xt .search{min-width:220px}
.stk-bar{display:flex;height:12px;border-radius:999px;overflow:hidden;background:#1d1a13}
.stk-bar i{display:block;height:100%}
.stk-lg{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:12px;color:#bdb4a0;margin-top:8px}
.stk-lg u,.dn-lg u{display:inline-block;width:9px;height:9px;border-radius:3px;margin-right:6px;vertical-align:middle}
.pv-card{transition:transform .15s,border-color .15s,box-shadow .15s}
.pv-card:hover{transform:translateY(-3px);border-color:var(--gold);box-shadow:0 16px 32px -20px rgba(140,102,24,.7)}
/* Thành phẩm */
.lbx{display:grid;grid-template-columns:150px minmax(0,1fr);gap:16px;align-items:center}
@media(max-width:560px){.lbx{grid-template-columns:1fr;justify-items:center}}
.dn{width:150px;height:150px}
.dn .dn-s{cursor:pointer;transition:stroke-width .15s}.dn .dn-s:hover{stroke-width:18}
.dn-n{fill:#f4efe2;font:900 20px var(--body)}.dn-t{fill:#998f7a;font:600 7.5px var(--body)}
.lbx-r{display:flex;flex-direction:column;gap:10px;min-width:0;width:100%}
.lbx .xh-stats{grid-template-columns:repeat(2,1fr)}
.dn-lg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 10px}
.dn-lg button{display:flex;align-items:center;gap:0;background:none;border:0;color:#cfc8b6;font:500 12.5px var(--body);padding:4px 6px;border-radius:8px;cursor:pointer;text-align:left}
.dn-lg button b{margin-left:auto;color:#f4efe2;font-variant-numeric:tabular-nums}
.dn-lg button:hover,.dn-lg button.on{background:rgba(217,180,92,.14)}
.lib-drop{padding:16px!important;min-height:0!important;flex-direction:row!important;gap:12px!important;justify-content:center}
.lib-drop .ld-ic{width:36px!important;height:36px!important;font-size:16px!important;margin:0!important}
.lib-drop .ld-t{font-size:14px!important;margin:0!important}
.lib-tools{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:10px 12px}
.pill.cat-youtube{background:#0d0d0d;color:#f3d68a}.pill.cat-short{background:#b8892b;color:#0b0b0a}.pill.cat-highlight{background:#f0cf7c;color:#0b0b0a}.pill.cat-bai-viet{background:#efe7d2;color:#3a2d10}.pill.cat-thumbnail{background:#8c6618;color:#fff}
.lib-tbl tbody tr{transition:background .12s}.lib-tbl tbody tr:hover{background:var(--sunk)}
.lib-th{border-radius:8px}

/* ===== Trung tâm quảng cáo ===== */
.ac-hero{grid-template-columns:minmax(0,1.3fr) minmax(0,.9fr)}
.ac-live-n{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.ac-live-n div{background:#15130e;border:1px solid #2a251a;border-radius:12px;padding:9px 10px}
.ac-live-n small{display:block;font-size:11px;color:#998f7a}
.ac-live-n b{font-size:19px;font-weight:900;color:#f4efe2;font-variant-numeric:tabular-nums}
.ac-live svg{width:100%;height:40px}
.ac-sec-h{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:4px 0 10px}
.ac-sec-h h2{font-size:15px;font-weight:800;letter-spacing:.01em}
.ac-sec-h span{font-size:12px;color:var(--muted)}
.ac-ks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:18px}
@media(max-width:1100px){.ac-ks{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.ac-ks{grid-template-columns:1fr}}
.ac-k{display:flex;gap:12px;align-items:center;text-align:left;font:inherit;color:inherit;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:14px;cursor:pointer;transition:all .15s}
.ac-k:hover{border-color:var(--gold);transform:translateY(-2px)}
.ac-k.warn{border-left:3px solid var(--gold)}
.ac-ring{width:56px;height:56px;flex:none}
.ac-ic{width:48px;height:48px;flex:none;border-radius:14px;background:var(--ink);color:#e8c76f;display:grid;place-items:center;font-size:19px;font-weight:900}
@media (prefers-color-scheme:dark){.ac-ic{background:#221d12}}
.ac-k-b{display:flex;flex-direction:column;min-width:0}
.ac-k-l{font-size:12px;color:var(--muted);font-weight:600}
.ac-k-b b{font-size:26px;font-weight:900;letter-spacing:-.02em;line-height:1.1;font-variant-numeric:tabular-nums}
.ac-k-b b span{font-size:15px;color:var(--muted);font-weight:700}
.ac-k-b small{font-size:11.5px;color:var(--muted)}
.ac-k-b em{font-style:normal;font-size:12px;font-weight:700;color:var(--violet);margin-top:4px}
.ac-ms{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin-bottom:18px}
.ac-m{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:12px 14px;position:relative;overflow:hidden}
.ac-m:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--gold)}
.ac-m.zero:before{background:var(--line)}
.ac-m-l{font-size:12px;color:var(--muted);font-weight:600;display:block}
.ac-m-v{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 8px;margin:2px 0}
.ac-m-v b{font-size:22px;font-weight:900;letter-spacing:-.02em}
.ac-d{font-size:11.5px;font-weight:800;padding:2px 7px;border-radius:999px}
.ac-d.up{background:#e3f3e8;color:#226b3b}.ac-d.dn{background:#fbe6df;color:#a8401f}
@media (prefers-color-scheme:dark){.ac-d.up{background:#14301e;color:#7fd79c}.ac-d.dn{background:#3a1b14;color:#f29a7e}}
.ac-m small{font-size:11px;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ac-rail{display:flex;gap:10px;overflow-x:auto;padding:6px;background:var(--surface);border:1px solid var(--line);border-radius:18px;margin-bottom:8px;scrollbar-width:thin}
.ac-g{display:flex;align-items:center;gap:4px;flex:none;padding-right:10px;border-right:1px solid var(--line)}
.ac-g:last-child{border-right:0}
.ac-gh{writing-mode:vertical-rl;transform:rotate(180deg);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:800;padding:2px 4px}
.ac-gb{display:flex;gap:4px}
.ac-t{display:inline-flex!important;align-items:center;gap:7px;white-space:nowrap;border:1px solid transparent!important;border-radius:12px!important;padding:8px 12px!important;background:none!important;font:600 13.5px var(--body)!important;color:var(--muted)!important;cursor:pointer}
.ac-t i{font-style:normal;width:24px;height:24px;border-radius:7px;display:grid;place-items:center;background:var(--sunk);color:var(--gold);font-size:12px}
.ac-t:hover{color:var(--fg)!important;background:var(--sunk)!important}
.ac-t.on{background:var(--ink)!important;color:#f3d68a!important}
.ac-t.on i{background:#d9b45c;color:#0b0b0a}
@media (prefers-color-scheme:dark){.ac-t.on{background:#2a2213!important;box-shadow:inset 0 0 0 1px #d9b45c}}
.ac-desc{font-size:13px;color:var(--muted);margin:2px 4px 14px}
.ac-desc b{color:var(--fg)}
#adKpis .ad-kpis{display:none}
.ac-rail{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;overflow:visible;padding:8px}
@media(max-width:900px){.ac-rail{grid-template-columns:1fr}}
.ac-g{flex-direction:column;align-items:stretch;gap:6px;padding:4px 10px;border-right:1px solid var(--line)}
@media(max-width:900px){.ac-g{border-right:0;border-bottom:1px solid var(--line);padding:8px 4px}.ac-g:last-child{border-bottom:0}}
.ac-gh{writing-mode:horizontal-tb;transform:none;padding:2px 4px}
.ac-gb{flex-wrap:wrap}
.ac-t{padding:6px 10px!important;font-size:13px!important}
.lib-drop{flex-wrap:wrap!important}.lib-drop .ld-s{flex-basis:100%;text-align:center;margin:0!important}
.hb-hero p.hb-one{max-width:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:760px){.hb-hero p.hb-one{white-space:normal}}
/* ===== SEO & GEO ===== */
.sg-rings{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.sg-ring{display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px;background:#15130e;border:1px solid #2a251a;border-radius:14px;padding:10px 6px}
.sg-ring svg{width:84px;height:84px}
.sg-ring text{fill:#f4efe2;font:900 17px var(--body)}
.sg-ring b{font-size:12.5px;color:#f4efe2}.sg-ring small{font-size:11px;color:#998f7a}
.sg-big{height:84px;display:grid;place-items:center;font-size:34px;font-weight:900;color:#e8c76f;letter-spacing:-.03em}
.sg-run{display:grid;grid-template-columns:auto minmax(0,1fr) 220px;gap:12px;align-items:center;background:var(--surface);border:1px solid var(--gold);border-radius:14px;padding:12px 16px;margin-bottom:16px}
@media(max-width:620px){.sg-run{grid-template-columns:auto 1fr}.sg-pb{grid-column:1/-1}}
.sg-pb{height:8px;border-radius:9px;background:var(--sunk);overflow:hidden}.sg-pb i{display:block;height:100%;background:var(--gold);transition:width .4s}
.sg-qs,.sg-br{display:flex;flex-direction:column;gap:6px}
.sg-qr,.sg-brr{display:grid;grid-template-columns:34px minmax(0,1.3fr) minmax(0,1fr) auto;gap:10px;align-items:center;font-size:13px}
.sg-brr{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) 26px}
.sg-qr .nm,.sg-brr .nm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sg-qr .tr,.sg-brr .tr{height:8px;border-radius:9px;background:var(--sunk);overflow:hidden}
.sg-qr .tr i,.sg-brr .tr i{display:block;height:100%;background:color-mix(in srgb,var(--gold) 60%,transparent);border-radius:9px}
.sg-brr.own .tr i{background:var(--gold)}.sg-brr.own .nm{font-weight:800;color:var(--violet)}
.sg-qr .vl{font-variant-numeric:tabular-nums;color:var(--muted);font-size:12px}
.sg-brr b{text-align:right;font-variant-numeric:tabular-nums}
.sg-pos{width:30px;height:24px;border-radius:7px;display:grid;place-items:center;font-size:12px;font-weight:800;background:var(--sunk);color:var(--muted)}
.sg-pos.sg-top{background:var(--gold);color:#120f08}.sg-pos.p1{box-shadow:inset 0 0 0 1.5px var(--gold);color:var(--fg)}
.sg-list{display:flex;flex-direction:column;gap:6px}
.sg-it{border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:border-color .15s}
.sg-it.open,.sg-it:hover{border-color:var(--gold)}
.sg-h{width:100%;display:grid;grid-template-columns:28px minmax(0,1fr) auto minmax(0,.9fr);gap:12px;align-items:center;background:none;border:0;font:inherit;color:inherit;text-align:left;padding:10px 12px;cursor:pointer}
@media(max-width:760px){.sg-h{grid-template-columns:28px 1fr auto}.sg-cs{display:none!important}}
.sg-ok{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;font-weight:900;font-size:13px}
.sg-ok.yes{background:#e3f3e8;color:#226b3b}.sg-ok.no{background:var(--sunk);color:var(--muted)}.sg-ok.err{background:#fbe6df;color:#a8401f}
@media (prefers-color-scheme:dark){.sg-ok.yes{background:#14301e;color:#7fd79c}.sg-ok.err{background:#3a1b14;color:#f29a7e}}
.sg-h .q{font-weight:600;font-size:14px}
.sg-pp{font-size:12px;color:var(--muted);white-space:nowrap}
.sg-cs{display:flex;gap:4px;overflow:hidden}
.sg-cs i,.sg-tags span{font-style:normal;font-size:11.5px;padding:3px 8px;border-radius:999px;background:var(--sunk);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px}
.sg-cs i.own,.sg-tags span.own{background:var(--gold);color:#120f08;font-weight:700}
.sg-b{display:none;padding:0 14px 14px 52px;font-size:13.5px}
.sg-it.open .sg-b{display:block}
.sg-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}
.sg-au{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}
.sg-ag{background:var(--sunk);border-radius:14px;padding:12px}
.sg-agh{display:flex;justify-content:space-between;margin-bottom:6px}.sg-agh span{font-weight:800;color:var(--gold)}
.sg-c{display:grid;grid-template-columns:22px minmax(0,1fr);gap:8px;padding:7px 0;border-top:1px solid var(--line);font-size:13px}
.sg-c .ic{width:20px;height:20px;border-radius:6px;display:grid;place-items:center;font-size:11px;font-weight:900;margin-top:1px}
.sg-c.pass .ic{background:#e3f3e8;color:#226b3b}.sg-c.warn .ic{background:var(--gold-soft);color:var(--gold-deep,#8c6618)}.sg-c.fail .ic{background:#fbe6df;color:#a8401f}
@media (prefers-color-scheme:dark){.sg-c.pass .ic{background:#14301e;color:#7fd79c}.sg-c.fail .ic{background:#3a1b14;color:#f29a7e}.sg-c.warn .ic{color:#e8c76f}}
.sg-c small{display:block;color:var(--muted);font-size:11.5px;word-break:break-word}
.sg-c em{display:block;font-style:normal;font-size:12px;color:var(--fg);opacity:.8;margin-top:2px}
.sg-road{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
@media(max-width:900px){.sg-road{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.sg-road{grid-template-columns:1fr}}
.sg-road>div{background:var(--sunk);border-radius:14px;padding:14px;position:relative}
.sg-road b{font-size:30px;font-weight:900;color:var(--gold);line-height:1}
.sg-road h3{font-size:15px;font-weight:800;margin:6px 0}
.sg-road ul{margin:0;padding-left:16px;font-size:13px;display:flex;flex-direction:column;gap:4px}

/* ===== Trợ lý tin nhắn ===== */
.as-pw{margin-top:14px}
.as-sw{display:inline-flex;align-items:center;gap:12px;cursor:pointer;background:#15130e;border:1px solid #2c271c;border-radius:16px;padding:10px 14px}
.as-sw input{position:absolute;opacity:0;pointer-events:none}
.as-sw-t{width:46px;height:26px;border-radius:999px;background:#3a3427;position:relative;transition:background .2s;flex:none}
.as-sw-t i{position:absolute;left:3px;top:3px;width:20px;height:20px;border-radius:50%;background:#f4efe2;transition:transform .2s}
.as-sw input:checked+.as-sw-t{background:#3fbf6f}.as-sw input:checked+.as-sw-t i{transform:translateX(20px)}
.as-sw input:focus-visible+.as-sw-t{outline:2px solid #d9b45c;outline-offset:2px}
.as-sw-l{display:flex;flex-direction:column}.as-sw-l b{color:#f4efe2;font-size:14px}.as-sw-l small{color:#998f7a;font-size:12px}
.as-chs{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.as-ch{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#8f8775;background:#15130e;border:1px solid #2a251a;border-radius:999px;padding:4px 10px 4px 4px}
.as-ch i{font-style:normal;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#2a251a;color:#8f8775;font-size:9.5px;font-weight:900}
.as-ch.on{color:#f4efe2;border-color:#3a3427}.as-ch.on i{background:#d9b45c;color:#0b0b0a}
.as-chart{display:flex;align-items:flex-end;gap:6px;height:110px;position:relative;padding-bottom:20px}
.as-day{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:4px}
.as-stk{width:100%;max-width:30px;display:flex;flex-direction:column-reverse;border-radius:6px;overflow:hidden;min-height:4px;background:#2a251a}
.as-stk i{display:block;min-height:2px}
.as-stk .cu,.as-lg u.cu{background:#e9dcc0}.as-stk .bt,.as-lg u.bt{background:#d9b45c}.as-stk .sf,.as-lg u.sf{background:#8c6618}
.as-day small{font-size:10.5px;color:#8f8775}
.as-lg{position:absolute;right:0;top:-2px;display:flex;gap:10px;font-size:11px;color:#998f7a}
.as-lg u{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:4px}
.as-rail{display:flex;flex-wrap:wrap;gap:4px;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:6px;margin-bottom:14px}
.as-badge{margin-left:4px;background:#d64545;color:#fff;font-size:11px;font-weight:800;border-radius:999px;padding:1px 7px}
.as-inbox{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:14px;min-height:560px}
@media(max-width:860px){.as-inbox{grid-template-columns:1fr}}
.as-side{display:flex;flex-direction:column;gap:8px;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:10px;min-width:0;max-height:76vh}
.as-flt{display:flex;flex-wrap:wrap;gap:4px}
.as-side .search{width:100%}
.as-side .as-list{overflow-y:auto;display:flex;flex-direction:column;gap:4px;flex:1;max-height:none!important;border:0!important;padding:0!important;background:none!important}
.as-row{display:grid!important;grid-template-columns:40px minmax(0,1fr);gap:10px;align-items:start;text-align:left;border-radius:12px!important;padding:9px!important;border:1px solid transparent!important;border-left:3px solid transparent!important;background:none}
.as-row:hover{background:var(--sunk)!important}.as-row.on{background:var(--sunk)!important;border-color:var(--gold)!important}
.as-row.st-human{border-left-color:#d64545!important}
.as-rb{min-width:0}
.as-av{position:relative;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:#e8c76f;font-weight:800}
@media (prefers-color-scheme:dark){.as-av{background:#221d12}}
.as-av i{position:absolute;right:-3px;bottom:-3px;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:8.5px;font-weight:900;background:#1877f2;color:#fff;border:2px solid var(--surface)}
.as-av.instagram i{background:linear-gradient(45deg,#f9a825,#d81b60,#8e24aa)}
.as-thread{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:14px;min-width:0;display:flex;flex-direction:column}
.as-empty{margin:auto;display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--muted);text-align:center;padding:40px}
.as-empty div{width:64px;height:64px;border-radius:50%;background:var(--sunk);display:grid;place-items:center;font-size:26px;color:var(--gold)}
.as-empty b{color:var(--fg)}
.as-msg{border-radius:16px!important;max-width:78%}
.as-msg.customer{background:var(--sunk)!important;border-bottom-left-radius:4px!important}
.as-msg.bot{background:var(--gold-soft)!important;margin-left:auto;border-bottom-right-radius:4px!important}
.as-msg.staff{background:var(--ink)!important;color:#f4efe2!important;margin-left:auto;border-bottom-right-radius:4px!important}
.as-msg.staff .muted{color:#a79f8b!important}

/* ===== Lập chiến dịch đa kênh ===== */
.cp-steps{display:flex;flex-wrap:wrap;gap:6px;margin-top:16px}
.cp-steps span{font-size:12px;font-weight:700;padding:6px 12px;border-radius:999px;background:#15130e;border:1px solid #2a251a;color:#7d7564}
.cp-steps span.on{color:#0b0b0a;background:#d9b45c;border-color:#d9b45c}
.cp-viz{display:grid;grid-template-columns:150px minmax(0,1fr);gap:16px;align-items:center}
@media(max-width:560px){.cp-viz{grid-template-columns:1fr;justify-items:center}}
.cp-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:16px}
@media(max-width:1000px){.cp-grid{grid-template-columns:1fr}}
.cp-grid .field{margin-bottom:12px}
.cp-grid .field label{font-size:12.5px;font-weight:700;color:var(--muted);display:block;margin-bottom:5px}
.cp-grid select,.cp-grid input:not([type=radio]):not([type=checkbox]):not([type=range]),.cp-grid textarea{width:100%}
.cp-goals{display:flex;flex-wrap:wrap;gap:6px}
.cp-goals .chip:has(input:checked){background:var(--ink);color:#f3d68a;border-color:var(--ink)}
@media (prefers-color-scheme:dark){.cp-goals .chip:has(input:checked){background:var(--gold);color:#120f08}}
.cp-goals input{position:absolute;opacity:0}
.cp-row{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:10px}
@media(max-width:560px){.cp-row{grid-template-columns:1fr}}
.cp-chs{display:flex;flex-direction:column;gap:6px}
.cp-ch{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) 74px;gap:12px;align-items:center;padding:8px 10px;border-radius:14px;border:1px solid var(--line);opacity:.6;transition:all .15s}
.cp-ch.on{opacity:1;border-color:color-mix(in srgb,var(--gold) 50%,var(--line))}
@media(max-width:560px){.cp-ch{grid-template-columns:1fr 64px}.cp-ch input[type=range]{grid-column:1/-1;order:3}}
.cp-tg{display:flex;align-items:center;gap:10px;cursor:pointer;min-width:0}
.cp-tg input{width:18px;height:18px;accent-color:var(--gold);flex:none}
.cp-tg .chc-ic{width:34px;height:34px;font-size:13px}
.cp-tg b{display:block;font-size:14px}.cp-tg small{font-size:11.5px;color:var(--muted)}
.cp-ch input[type=range]{width:100%;accent-color:var(--gold)}
.cp-v{text-align:right}.cp-v b{display:block;font-size:17px;font-variant-numeric:tabular-nums}.cp-v small{font-size:11.5px;color:var(--muted)}
.cp-go{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}
.cp-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}
.cp-pl{display:flex;flex-direction:column;gap:4px;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:14px;text-decoration:none;color:inherit;transition:all .15s}
.cp-pl:hover{border-color:var(--gold);transform:translateY(-2px)}
.cp-pl small{color:var(--muted);font-size:12px}
.cp-st{align-self:flex-start;font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border-radius:999px;background:var(--sunk);color:var(--muted)}
.cp-st.done{background:#e3f3e8;color:#226b3b}.cp-st.failed{background:#fbe6df;color:#a8401f}.cp-st.running{background:var(--gold-soft);color:var(--gold-deep,#8c6618)}
@media (prefers-color-scheme:dark){.cp-st.done{background:#14301e;color:#7fd79c}.cp-st.failed{background:#3a1b14;color:#f29a7e}}
.cp-mini{display:flex;height:6px;border-radius:9px;overflow:hidden;margin-top:6px;background:var(--sunk)}
.cp-mini i{display:block;height:100%}
.cp-msg{margin-top:12px;font-family:var(--display);font-style:italic;font-size:19px;color:#e8c76f}
.cp-bars{display:flex;flex-direction:column;gap:7px}
.cp-bars div{display:grid;grid-template-columns:120px minmax(0,1fr) 70px;gap:8px;align-items:center;font-size:12.5px;color:#cfc8b6}
.cp-bars .tr{height:9px;border-radius:9px;background:#2a251a;overflow:hidden}.cp-bars .tr i{display:block;height:100%;border-radius:9px}
.cp-bars b{text-align:right;color:#f4efe2;font-variant-numeric:tabular-nums}
.cp-cs{display:flex;flex-direction:column;gap:10px}
.cp-c{background:var(--sunk);border-radius:14px;padding:12px 14px}
.cp-ch2{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px}
.cp-c p{font-size:14px;white-space:pre-wrap}
.cp-tl{display:flex;flex-direction:column;gap:0;border-left:2px solid var(--gold);margin-left:6px}
.cp-tl div{display:grid;grid-template-columns:110px 1fr;gap:10px;padding:8px 0 8px 16px;position:relative;font-size:13.5px}
.cp-tl div:before{content:"";position:absolute;left:-7px;top:13px;width:12px;height:12px;border-radius:50%;background:var(--gold)}
.cp-ul{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:6px;font-size:13.5px}
.sg-pb i.indet{animation:slide 1.6s ease-in-out infinite}

/* ===== Gợi ý nội dung ===== */
.ct-how{font-size:11.5px;color:#8f8775}
.hb-grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:16px}
@media(max-width:1100px){.hb-grid3{grid-template-columns:1fr}}
.ct-bars{display:flex;flex-direction:column;gap:8px}
.ct-b{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) 40px;gap:10px;align-items:center;font-size:13px}
.ct-b.wide{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) 54px 110px}
.ct-b>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ct-b small{color:var(--muted);font-size:11px}
.ct-b .tr{height:10px;border-radius:9px;background:var(--sunk);position:relative;overflow:visible}
.ct-b .tr i{display:block;height:100%;border-radius:9px;background:color-mix(in srgb,var(--gold) 45%,transparent)}
.ct-b .tr i.up{background:var(--gold)}
.ct-b .tr em{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--fg);opacity:.5}
.ct-b b{text-align:right;font-variant-numeric:tabular-nums}
.ct-heat{display:grid;grid-template-columns:44px repeat(7,minmax(0,1fr));gap:3px;font-size:11px}
.ct-heat b{text-align:center;color:var(--muted);font-weight:700}
.ct-heat span{color:var(--muted);align-self:center}
.ct-heat i{font-style:normal;aspect-ratio:1.4;border-radius:6px;background:var(--sunk);display:grid;place-items:center;font-size:10.5px;font-weight:800;color:var(--fg)}
.ct-pf{font-style:normal;display:inline-grid;place-items:center;width:18px;height:18px;border-radius:5px;font-size:9px;font-weight:900;color:#fff;background:#666;margin-right:6px;vertical-align:middle}
.ct-pf.facebook{background:#1877f2}.ct-pf.instagram{background:linear-gradient(45deg,#f9a825,#d81b60,#8e24aa)}.ct-pf.youtube{background:#e62117}.ct-pf.tiktok{background:#111}.ct-pf.zalo{background:#0068ff}
.ct-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}
.ct-card{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden;text-decoration:none;color:inherit;transition:all .15s}
.ct-card:hover{border-color:var(--gold);transform:translateY(-2px)}
.ct-th{position:relative;aspect-ratio:4/3;background:var(--sunk);display:grid;place-items:center;color:var(--muted);font-size:12px}
.ct-th img{width:100%;height:100%;object-fit:cover}
.ct-rank{position:absolute;left:8px;top:8px;background:rgba(0,0,0,.65);color:#fff;font-size:11px;font-weight:800;padding:2px 7px;border-radius:999px}
.ct-sc{position:absolute;right:8px;top:8px;background:#0b0b0a;color:#e8c76f;font-size:13px;font-weight:900;padding:3px 9px;border-radius:999px;border:1px solid #3a3427}
.ct-sc.hot{background:#d9b45c;color:#0b0b0a;border-color:#d9b45c}.ct-sc.cold{color:#a59e8c}
.ct-b2{padding:10px 12px;display:flex;flex-direction:column;gap:6px}
.ct-meta{font-size:11.5px;color:var(--muted)}
.ct-b2 p{font-size:13px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.ct-n{display:flex;gap:10px;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
.ct-ideas{margin-bottom:16px;border-color:var(--gold)}
.ct-ins{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
@media(max-width:800px){.ct-ins{grid-template-columns:1fr}}
.ct-ins>div{background:var(--sunk);border-radius:14px;padding:12px 14px}
.ct-ins h3{font-size:14px;font-weight:800;margin-bottom:6px}
.ct-ins ul{margin:0;padding-left:18px;font-size:13.5px;display:flex;flex-direction:column;gap:4px}
.ct-ins ul.ok li::marker{content:"✓  ";color:var(--gold)}
.ct-ideas-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}
.ct-idea{border:1px solid var(--line);border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:6px;background:var(--surface)}
.ct-idea:hover{border-color:var(--gold)}
.ct-it{display:flex;justify-content:space-between;align-items:center}
.ct-idea h3{font-size:16px;font-weight:800;line-height:1.25}
.ct-hook{font-family:var(--display);font-style:italic;color:var(--violet);font-size:15px}
.ct-idea p{font-size:13px}
.ct-act{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:8px}
/* Thu gọn menu trái */
.sb-tg{display:none}
@media (min-width:1100px){
  .sb-tg{display:grid;place-items:center;position:absolute;top:22px;right:10px;width:26px;height:26px;border-radius:8px;border:1px solid #2c271c;background:#15130e;color:#d9b45c;cursor:pointer;font-size:16px;line-height:1;z-index:2}
  .sb-tg:hover{border-color:#d9b45c}
  #shell>.top{position:fixed}
  #shell>.top .brand{padding-right:34px}
  body.sb-mini{--sbw:68px}
  body.sb-mini .sb-tg{position:static;margin:0 auto 4px}
  body.sb-mini .sb-tg span{display:inline-block;transform:rotate(180deg)}
  body.sb-mini #shell>.top{padding:16px 10px 12px;align-items:center}
  body.sb-mini #shell>.top .brand{padding:0 0 10px;border:0;justify-content:center}
  body.sb-mini #shell>.top .brand-txt{display:none}
  body.sb-mini #shell>.top .nav-h{display:block;height:1px;padding:0;margin:6px 8px;background:#24201a;font-size:0;overflow:hidden}
  body.sb-mini #shell>.top .nav-g{margin:0;align-items:center}
  body.sb-mini #shell>.top .nav a{font-size:0;gap:0;padding:6px;justify-content:center;width:44px}
  body.sb-mini #shell>.top .nav a .ni{width:28px;height:28px;font-size:12px}
  body.sb-mini #shell>.top .nav a.on{box-shadow:none}
  body.sb-mini #shell>.top .me{padding:3px;justify-content:center;align-self:center}
  body.sb-mini #shell>.top .me #meName{display:none}
  body.sb-mini .nav a[style*="position"]{position:relative}
}
.cp-viz .xh-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.cp-viz .xh-stats .xs b{font-size:18px}.cp-viz .dn-lg{grid-template-columns:repeat(2,minmax(0,1fr))}
/* Lịch đăng & Kết nối kênh */
.jb-cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.jb-d{background:#15130e;border:1px solid #2a251a;border-radius:12px;padding:8px 6px;display:flex;flex-direction:column;align-items:center;gap:3px;min-height:88px}
.jb-d small{font-size:10.5px;color:#8f8775}
.jb-d b{font-size:18px;color:#f4efe2}
.jb-d.has{border-color:#d9b45c;background:#1f1a0f}
.jb-d span{display:flex;flex-wrap:wrap;justify-content:center;gap:2px}
.jb-d .ch-ic{width:16px;height:16px;font-size:8px;border-radius:4px}
.jb-d em{font-style:normal;font-size:10px;color:#e8c76f}
.ch-sum{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.chs{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;background:#15130e;border:1px solid #2a251a;border-radius:14px;padding:10px 12px;opacity:.65}
.chs.on{opacity:1;border-color:#3a3427}
.chs .ch-ic{grid-row:1/3;width:34px;height:34px;font-size:14px}
.chs b{font-size:22px;font-weight:900;color:#f4efe2;line-height:1}
.chs small{font-size:11.5px;color:#998f7a}
/* Ô số liệu: chữ tự co theo bề rộng ô, không tràn */
.kpi{container-type:inline-size;min-width:0;overflow:hidden}
.kpi .k-v{font-size:clamp(16px,12.5cqi,26px);overflow:hidden;text-overflow:ellipsis}
.kpi .k-s{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ac-k-b b,.xh-stats .xs b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.xh-stats .xs{min-width:0;container-type:inline-size}
.xh-stats .xs b{font-size:clamp(15px,18cqi,24px)}
.hb-hero h1{font-size:clamp(24px,2.8vw,38px)}
.sg-pos{flex:none;line-height:1;padding:0}.sg-qr{min-width:0}.sg-qs{overflow:hidden}
.as-lg{position:static;display:flex;flex-wrap:wrap;gap:12px;font-size:11.5px;color:#998f7a;margin-top:-4px}
.as-chart{height:120px;padding-bottom:0;gap:8px}
.as-day{justify-content:flex-end}
.as-day .as-stk{flex:none;max-height:calc(100% - 18px)}
.as-stk{background:#2a251a}
.cv{margin-top:14px;padding-top:12px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:6px}
.cv-h{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:800}
.cv-r{display:grid;grid-template-columns:22px 90px minmax(0,1fr) auto;gap:8px;align-items:center;font-size:12.5px}
.cv-r .ct-pf{margin:0}
.cv-n{font-weight:700}
.cv-s{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cv-r.ok .cv-s{color:var(--ok)}.cv-r.bad .cv-s{color:var(--bad)}
.cv-r.off{opacity:.7}
.cv-a{font-size:12px;font-weight:700;white-space:nowrap}
.ct-pf.gmaps{background:#34a853}
.ct-slot-n{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}
.ct-slot-n div{background:var(--sunk);border-radius:12px;padding:10px;text-align:center}
.ct-slot-n b{display:block;font-size:22px;font-weight:900;color:var(--violet)}
.ct-slot-n small{font-size:11px;color:var(--muted)}
.ct-slot-p{display:grid;grid-template-columns:22px 1fr auto;gap:6px;align-items:center;font-size:13px;padding:4px 0;border-top:1px solid var(--line)}
.ct-heat button{font:800 10.5px var(--body);aspect-ratio:1.4;border-radius:6px;border:0;background:var(--sunk);color:var(--fg);cursor:pointer;display:grid;place-items:center;transition:transform .12s,box-shadow .12s}
.ct-heat button:hover{transform:scale(1.12);box-shadow:0 0 0 2px var(--gold);position:relative;z-index:1}
.ct-heat button:not([style]){color:var(--muted);font-weight:500}
.ct-heat button.best{box-shadow:0 0 0 2px var(--gold)}
.ct-heat button.best::after{content:"★";position:absolute;font-size:8px;margin:-22px -26px 0 0;color:var(--gold)}
.pre-bn{display:flex;align-items:center;gap:12px;background:var(--gold-soft);border:1px solid var(--gold);border-radius:14px;padding:10px 14px;margin-bottom:12px}
.pre-bn>span{font-size:20px}.pre-bn div{flex:1;display:flex;flex-direction:column}.pre-bn small{color:var(--muted)}
.ct-heat button{position:relative}
.ct-heat{grid-template-columns:64px repeat(7,minmax(0,1fr))}
.ct-sl{display:flex;flex-direction:column;line-height:1.15;font-size:11.5px}
.ct-sl small{font-size:10px;color:var(--muted);opacity:.8;font-variant-numeric:tabular-nums}
/* Lịch đăng: lưới 7 ngày × khung giờ */
.jb-lg{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:11.5px;color:#998f7a}
.jb-lg u{display:inline-block;width:12px;height:10px;border-radius:3px;margin-right:5px;vertical-align:middle}
.jb-grid{display:grid;grid-template-columns:78px repeat(7,minmax(0,1fr));gap:5px;overflow-x:auto}
.jb-h{text-align:center;padding:4px 0}
.jb-h small{display:block;font-size:11px;color:var(--muted);font-weight:700}
.jb-h b{font-size:14px}
.jb-r{display:flex;flex-direction:column;justify-content:center;font-size:13px;line-height:1.15}
.jb-r small{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}
.jb-c{position:relative;min-height:64px;border-radius:12px;border:1px solid var(--line);background:var(--sunk);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font:inherit;color:var(--fg);transition:transform .12s,box-shadow .12s;padding:4px}
.jb-c[style*="--h"]{background:rgba(217,180,92,var(--h));border-color:transparent}
.jb-c:hover{transform:translateY(-2px);box-shadow:0 0 0 2px var(--gold)}
.jb-c.has{box-shadow:inset 0 0 0 2px var(--ink)}
@media (prefers-color-scheme:dark){.jb-c.has{box-shadow:inset 0 0 0 2px #f4efe2}}
.jb-v{font-size:13px;font-weight:900;font-variant-numeric:tabular-nums}
.jb-c[style*="--h"] .jb-v{color:#120f08}
.jb-p{display:flex;gap:2px}
.jb-p .ch-ic{width:16px;height:16px;font-size:8px;border-radius:4px}
.jb-p em{font-style:normal;font-size:10px;font-weight:800}
.jb-t{font-size:10.5px;font-weight:800;background:#0b0b0a;color:#f3d68a;border-radius:6px;padding:1px 5px}
.jb-add{font-size:14px;color:var(--muted);opacity:0;transition:opacity .12s}
.jb-c:hover .jb-add{opacity:1}
.jb-c[style*="--h"] .jb-add{color:#120f08}
@media(max-width:700px){.jb-grid{grid-template-columns:60px repeat(7,minmax(44px,1fr))}.jb-c{min-height:52px}}
/* Gợi ý khách mục tiêu */
.cp-al{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:5px}
.cp-al label{margin:0!important}
.cp-ev{background:var(--sunk);border-radius:14px;padding:10px 12px;margin-top:8px}
.cp-evh{display:flex;justify-content:space-between;font-size:12px;font-weight:700;margin-bottom:6px}.cp-evh span{color:var(--muted);font-weight:500}
.cp-ag{display:flex;flex-direction:column;gap:4px}
.cp-agr{display:grid;grid-template-columns:52px 1fr 1fr;gap:6px;align-items:center;font-size:11.5px}
.cp-agr>span:first-child{color:var(--muted);font-variant-numeric:tabular-nums}
.cp-f,.cp-m{position:relative;height:16px;background:var(--surface);border-radius:5px;overflow:hidden}
.cp-f i,.cp-m i{display:block;height:100%}
.cp-f i,.cp-agl u.f{background:var(--gold)}.cp-m i,.cp-agl u.m{background:#8a8476}
.cp-f b,.cp-m b{position:absolute;right:5px;top:0;font-size:10.5px;line-height:16px}
.cp-agl{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:11.5px;color:var(--muted);margin-top:6px}
.cp-agl u{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:4px;vertical-align:middle}
.cp-aud{display:flex;flex-direction:column;gap:8px;margin-top:8px}
.cp-au{border:1px solid var(--line);border-left:4px solid var(--line);border-radius:14px;padding:10px 12px;display:flex;flex-direction:column;gap:6px}
.cp-au.hi{border-left-color:#3fbf6f}.cp-au.mid{border-left-color:var(--gold)}.cp-au.lo{border-left-color:#8a8476}
.cp-auh{display:grid;grid-template-columns:minmax(0,1fr) 80px auto;gap:10px;align-items:center}
.cp-auh em{font-style:normal;font-size:11.5px;font-weight:800;color:var(--muted);white-space:nowrap}
.cp-sc{height:7px;border-radius:9px;background:var(--sunk);overflow:hidden}.cp-sc i{display:block;height:100%;background:var(--gold)}
.cp-au.hi .cp-sc i{background:#3fbf6f}
.cp-tags{display:flex;flex-wrap:wrap;gap:4px}
.cp-tags span{font-size:11.5px;padding:3px 8px;border-radius:999px;background:var(--sunk)}
.cp-tags.in span{background:var(--gold-soft);color:var(--gold-deep,#8c6618)}
@media (prefers-color-scheme:dark){.cp-tags.in span{color:#e8c76f}}
.cp-au .btn{align-self:flex-start}
/* Khung xếp vào / mở ra */
.fd{margin-bottom:14px;padding:0;overflow:hidden}
.fd-h{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;cursor:pointer;user-select:none}
.fd-h:hover{background:var(--sunk)}
.fd-h h2{font-size:16px;font-weight:800}
.fd-h p{font-size:12.5px;color:var(--muted);display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.fd-ic{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:var(--sunk);font-size:18px;transition:transform .2s;flex:none}
.fd.open .fd-ic{transform:rotate(180deg)}
.fd-b{display:none;padding:0 18px 18px}
.fd.open .fd-b{display:block}
.fd:not(.open) .fd-h p{display:none}
.pre-bn{display:flex;align-items:center;gap:12px}
.pre-bn>div{flex:1}
.rp-q{display:flex;flex-wrap:wrap;gap:6px}
/* Việc đang chạy ở Phòng Marketing */
.hb-tk{background:var(--surface);border:1px solid var(--gold);border-radius:18px;padding:12px 14px;margin:-4px 0 18px}
.hb-tk-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:14px}
.hb-tk-h em{font-style:normal;background:var(--gold);color:#120f08;border-radius:999px;padding:0 8px;font-size:12px;margin-left:4px}
.hb-tk-h a{font-size:12.5px;font-weight:700}
.hb-tk-l{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:8px}
.hb-tk-i{display:grid;grid-template-columns:34px minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:8px 10px;border-radius:12px;background:var(--sunk);text-decoration:none;color:inherit;border:1px solid transparent;transition:border-color .15s}
.hb-tk-i:hover{border-color:var(--gold)}
.hb-tk-ic{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--ink);color:#e8c76f;font-weight:900}
@media (prefers-color-scheme:dark){.hb-tk-ic{background:#221d12}}
.hb-tk-b{min-width:0;display:flex;flex-direction:column;gap:3px}
.hb-tk-b b{font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hb-tk-b small{font-size:11.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hb-tk-p{height:5px;border-radius:9px;background:var(--line);overflow:hidden}
.hb-tk-p i{display:block;height:100%;background:var(--gold);transition:width .4s}
.hb-tk-p i.indet{animation:slide 1.6s ease-in-out infinite}
.hb-tk-q{font-size:11px;color:var(--muted)}
.hb-tk-pc{font-size:12px;font-weight:800;font-variant-numeric:tabular-nums}
.hb-tk-go{font-size:12px;font-weight:700;color:var(--violet)}
/* Lịch theo khung giờ: gọn */
.jb-grid{grid-template-columns:72px repeat(7,minmax(0,1fr));gap:3px;max-width:980px}
.jb-h{padding:2px 0}
.jb-h small{display:inline;font-size:10.5px;margin-right:4px}
.jb-h b{font-size:12px}
.jb-r{font-size:12px;flex-direction:row;align-items:baseline;gap:5px;justify-content:flex-start}
.jb-r small{font-size:10px}
.jb-c{min-height:34px;height:34px;border-radius:8px;flex-direction:row;gap:4px;padding:0 4px}
.jb-v{font-size:11.5px}
.jb-p .ch-ic{width:14px;height:14px;font-size:7.5px}
.jb-t{font-size:9.5px;padding:0 4px}
.jb-c.has .jb-v{display:none}
.jb-add{position:absolute;right:5px;top:2px;font-size:11px}
.jb-c:hover{transform:none;box-shadow:0 0 0 2px var(--gold)}
@media(max-width:700px){.jb-grid{grid-template-columns:52px repeat(7,minmax(36px,1fr))}.jb-r small{display:none}.jb-c{height:32px;min-height:32px}}
/* Hộp đặt giờ đăng */
.ct-slot{display:flex;flex-direction:column;gap:10px}
.cs-st{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.cs-st div{background:var(--sunk);border-radius:10px;padding:6px 8px;display:flex;align-items:baseline;gap:6px}
.cs-st b{font-size:17px;font-weight:900;font-variant-numeric:tabular-nums}
.cs-st .hl b{color:var(--violet)}
.cs-st small{font-size:11px;color:var(--muted)}
.cs-v{font-size:12.5px;padding:7px 10px;border-radius:10px;background:var(--sunk);color:var(--muted)}
.cs-v.up{background:#e3f3e8;color:#226b3b}.cs-v.dn{background:#fbe6df;color:#a8401f}
@media (prefers-color-scheme:dark){.cs-v.up{background:#14301e;color:#7fd79c}.cs-v.dn{background:#3a1b14;color:#f29a7e}}
.cs-l{font-size:12px;font-weight:700;color:var(--muted);margin-bottom:-4px}
.cs-h{display:flex;flex-wrap:wrap;gap:5px}
.cs-h .chip{font-variant-numeric:tabular-nums}
#ctWhen{width:100%}
.cs-p summary{font-size:12px;color:var(--muted);cursor:pointer;padding:2px 0}
.cs-p .ct-slot-p{font-size:12.5px}
.cs-p .ct-slot-p span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cs-f{font-size:11.5px;color:var(--muted)}
.jb-grid{max-width:none;grid-template-columns:98px repeat(7,minmax(0,1fr))}
.jb-r{white-space:nowrap}
.cs-st div{flex-direction:column;align-items:center;justify-content:center;gap:0;text-align:center;padding:8px 6px}
.cs-st b{font-size:19px;line-height:1.2}
/* Lịch gọn + bảng chi tiết nằm bên cạnh, không bật hộp thoại */
.jb-wrap{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;align-items:start}
@media(max-width:1100px){.jb-wrap{grid-template-columns:1fr}}
.jb-grid{grid-template-columns:62px repeat(7,minmax(0,1fr));gap:4px}
.jb-h{padding:0 0 2px}.jb-h small{font-size:10.5px}.jb-h b{font-size:12.5px}
.jb-r{font-size:12px}.jb-r small{font-size:10px}
.jb-c{min-height:38px;border-radius:9px;padding:2px;gap:1px;flex-direction:row;flex-wrap:wrap}
.jb-v{font-size:12px}
.jb-t{font-size:9.5px;padding:0 4px}
.jb-p .ch-ic{width:13px;height:13px;font-size:7px}
.jb-add{display:none}
.jb-c.sel{box-shadow:0 0 0 2px var(--gold),0 6px 18px -8px rgba(217,180,92,.8);transform:translateY(-1px)}
.jb-side{background:var(--sunk);border:1px solid var(--line);border-radius:16px;padding:14px;position:sticky;top:12px;display:flex;flex-direction:column;gap:10px;min-height:100%}
.jb-side.on{border-color:var(--gold)}
.jb-sh{display:flex;justify-content:space-between;align-items:center;gap:8px}
.jb-sh b{font-size:14.5px}
.jb-side .ct-slot{display:flex;flex-direction:column;gap:8px}
.jb-side input[type=datetime-local]{width:100%}
.jb-hint{margin:auto;display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;color:var(--muted);font-size:13px;padding:20px 6px}
.jb-hint div{width:52px;height:52px;border-radius:50%;background:var(--surface);display:grid;place-items:center;font-size:22px}
.jb-hint b{color:var(--fg)}
.jb-grid .jb-r{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center;gap:0;overflow:hidden;min-width:0}.jb-grid .jb-r small{display:block;white-space:nowrap}
/* Lịch và bảng chi tiết: gọn, cao bằng nhau */
@media(min-width:1101px){
  .jb-wrap{align-items:stretch;height:358px}
  .jb-wrap .jb-grid{height:100%;grid-template-rows:auto repeat(5,minmax(0,1fr));overflow:hidden}
  .jb-wrap .jb-c{min-height:0}
  .jb-side{height:100%;overflow-y:auto;position:static;min-height:0}
}
.jb-side{padding:12px;gap:7px}
.jb-side .jb-sh b{font-size:13.5px}
.jb-side .cs-st{gap:6px}
.jb-side .cs-st>div{padding:5px 4px}
.jb-side .cs-st b{font-size:17px}
.jb-side .cs-st small{font-size:10.5px}
.jb-side .cs-v{font-size:11.5px;padding:6px 8px}
.jb-side .cs-l{font-size:11px;margin:0}
.jb-side .cs-h{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}
.jb-side .cs-h .chip{padding:4px 0;font-size:11.5px;justify-content:center;white-space:nowrap}
.jb-side .cs-f{display:none}
.jb-side input[type=datetime-local]{padding:6px 10px;font-size:13px}
.jb-side .btn.primary{padding:8px 10px}
.jb-side .jb-err:empty{display:none}
.jb-side .cs-st div{background:var(--surface)}
/* Chân dung khách chi tiết */
.pb2-psh{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:10px}
.pb2-ok{font-size:11.5px;color:var(--ok);max-width:640px}
.pb2-p{display:flex;flex-direction:column;gap:8px}
.pb2-p-h small.pb2-share{display:block;font-size:11px;color:var(--gold);font-weight:700}
.pb2-pr{display:flex;flex-direction:column;gap:3px;background:var(--sunk);border-radius:10px;padding:7px 9px}
.pb2-pr div{display:flex;flex-direction:column;font-size:12px;line-height:1.3;padding:2px 0;border-bottom:1px dashed var(--line)}
.pb2-pr div:last-child{border:0}
.pb2-pr span{color:var(--muted);font-size:11.5px}
.pb2-pr b{font-weight:700;font-variant-numeric:tabular-nums}
.pb2-tg{display:flex;flex-direction:column;gap:2px;font-size:12px}
.chip.sm.in{background:var(--gold-soft);color:var(--gold-deep,#8c6618);border-color:transparent}
@media (prefers-color-scheme:dark){.chip.sm.in{color:#e8c76f}}
.pb2-cpa{font-size:12px;font-weight:700;background:color-mix(in srgb,var(--gold) 12%,transparent);border-radius:8px;padding:6px 8px}
.pb2-p dl code{font-size:11.5px;background:var(--sunk);padding:1px 6px;border-radius:6px;display:inline-block;margin:1px 0}
.pb2-p [data-psgo]{align-self:flex-start;margin-top:auto}
@media(min-width:1101px){.jb-wrap .jb-grid>.jb-c{height:auto;align-self:stretch;min-height:0}.jb-wrap .jb-grid{align-content:stretch}}
.hb-tk-h em.dn{background:var(--sunk);color:var(--fg)}
.hb-tk-done{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:6px}
.hb-tk-d{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:8px;align-items:center;padding:7px 10px;border-radius:10px;background:var(--sunk);text-decoration:none;color:inherit;border:1px solid transparent;font-size:13px}
.hb-tk-d:hover{border-color:var(--gold)}
.hb-tk-d span{width:22px;height:22px;border-radius:7px;display:grid;place-items:center;background:#e3f3e8;color:#226b3b;font-weight:900;font-size:12px}
.hb-tk-d.bad span{background:#fbe6df;color:#a8401f}
@media (prefers-color-scheme:dark){.hb-tk-d span{background:#14301e;color:#7fd79c}.hb-tk-d.bad span{background:#3a1b14;color:#f29a7e}}
.hb-tk-d b{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hb-tk-d small{color:var(--muted);font-size:11.5px;white-space:nowrap}

/* ===== th58 · Giao diện Trắng: nền trắng, chữ đen, infographic vàng ===== */
.th-pick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
@media(max-width:620px){.th-pick{grid-template-columns:1fr}}
.th-o{display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left;border:1.5px solid var(--line);border-radius:14px;padding:10px;background:var(--surface);color:var(--fg);font:inherit;cursor:pointer}
.th-o:hover{border-color:var(--gold)}.th-o.on{border-color:var(--gold);box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 25%,transparent)}
.th-o b{font-size:14px}.th-o small{font-size:11.5px;color:var(--muted)}
.th-sw{display:flex;width:100%;height:46px;border-radius:9px;overflow:hidden;border:1px solid var(--line);margin-bottom:4px}
.th-sw i{width:28%;display:block}.th-sw u{flex:1;display:block;position:relative}
.th-sw u:after{content:"";position:absolute;left:12%;right:30%;bottom:10px;height:8px;border-radius:4px;background:#d9b45c}
.th-light i{background:#f4f1e8}.th-light u{background:#fff}
.th-dark i{background:#0b0b0a}.th-dark u{background:#161512}
.th-auto i{background:linear-gradient(#0b0b0a 50%,#f4f1e8 50%)}.th-auto u{background:linear-gradient(90deg,#fff 50%,#161512 50%)}
.th-panel{margin-bottom:16px}

html[data-theme="light"]{--bg:#ffffff;--surface:#ffffff;--sunk:#f6f4ee;--line:#e8e3d6}
html[data-theme="light"] body{background:#fff}
/* Thanh menu trắng */
html[data-theme="light"] .top{background:#fff;border-color:var(--line);color:var(--fg)}
@media(min-width:1100px){html[data-theme="light"] #shell>.top{border-right:1px solid var(--line);background:#fbfaf6}html[data-theme="light"] #shell>.top .brand{border-color:var(--line)}html[data-theme="light"] #shell>.top .nav a.on{background:linear-gradient(90deg,#f7ecd0,#fbf6e8);box-shadow:inset 3px 0 0 #b8892b}html[data-theme="light"] #shell>.top .nav-h{color:#9a917c}}
html[data-theme="light"] .brand{color:var(--fg)}
html[data-theme="light"] .brand-txt .brand-word{color:#6c675b}
html[data-theme="light"] .brand b{color:#9c7420}
html[data-theme="light"] .brand-txt small{color:#8a8476}
html[data-theme="light"] .nav a{color:#4a463d}
html[data-theme="light"] .nav a:hover{background:#f3efe4;color:#0d0d0d}
html[data-theme="light"] .nav a.on{color:#0d0d0d;background:#f7ecd0}
html[data-theme="light"] .ni{background:#f3efe4;border-color:#e8e3d6;color:#9c7420}
html[data-theme="light"] .ni.pf{background:#0d0d0d;color:#f3d68a;border-color:#0d0d0d}
html[data-theme="light"] .nav a.on .ni{background:#b8892b;color:#fff;border-color:#b8892b}
html[data-theme="light"] .me{border-color:var(--line);color:var(--fg)}
html[data-theme="light"] .sb-tg{background:#fff;border-color:var(--line);color:#9c7420}
/* Dải đầu trang trắng, điểm vàng */
html[data-theme="light"] :is(.hb-hero,.xh,.ac-hero,.pf-hero){background:radial-gradient(900px 340px at 100% 0%,#fbefd0 0%,transparent 60%),#ffffff;color:var(--fg);border-color:#ecdfbe;box-shadow:0 10px 30px -24px rgba(140,102,24,.5)}
html[data-theme="light"] .hb-hero:after{border-color:rgba(184,137,43,.25);box-shadow:0 0 0 40px rgba(184,137,43,.05),0 0 0 80px rgba(184,137,43,.03)}
html[data-theme="light"] :is(.hb-hero,.xh,.ac-hero,.pf-hero) :is(h1,h2,h3){color:#0d0d0d}
html[data-theme="light"] :is(.hb-hero,.xh,.ac-hero,.pf-hero) h1 em,html[data-theme="light"] .cp-msg{color:#9c7420}
html[data-theme="light"] :is(.hb-hero,.xh,.ac-hero,.pf-hero) p{color:#5e594e}
html[data-theme="light"] .hb-kick,html[data-theme="light"] :is(.xh-ih,.ac-live-h){color:#9c7420}
html[data-theme="light"] :is(.xh-ih,.ac-live-h) span,html[data-theme="light"] .hb-meta{color:#8a8476}
html[data-theme="light"] .hb-meta b{color:#9c7420}
html[data-theme="light"] :is(.hb-acts,.pf-cta) .btn{background:#fff;border-color:#e2d9c3;color:#0d0d0d}
html[data-theme="light"] :is(.hb-acts,.pf-cta) .btn:hover{border-color:#b8892b}
html[data-theme="light"] :is(.hb-acts,.pf-cta) .btn.gold{background:#d9b45c;border-color:#d9b45c;color:#0d0d0d}
html[data-theme="light"] :is(.xh-i,.ac-live){background:#fbf8f0;border-color:#efe6cf}
html[data-theme="light"] :is(.xh-stats .xs,.ac-live-n div,.sg-ring,.jb-d,.chs,.cp-steps span,.xh-sys .chip,.as-sw,.as-ch){background:#fff;border-color:#ece4cf;color:#4a463d}
html[data-theme="light"] :is(.xh-stats .xs b,.ac-live-n b,.sg-ring b,.chs b,.jb-d b,.pipe-n,.as-sw-l b){color:#0d0d0d}
html[data-theme="light"] :is(.xh-stats .xs small,.ac-live-n small,.sg-ring small,.chs small,.jb-d small,.as-sw-l small,.as-day small,.as-lg,.jb-lg,.ct-how,.dn-lg button){color:#7a7466}
html[data-theme="light"] .xh-stats .xs.warn b{color:#9c7420}html[data-theme="light"] .xh-stats .xs.bad b{color:#c2410c}
html[data-theme="light"] .cp-steps span.on{background:#d9b45c;color:#0d0d0d;border-color:#d9b45c}
html[data-theme="light"] .pipe-s{color:#4a463d}
html[data-theme="light"] .pipe-b,html[data-theme="light"] .cp-bars .tr,html[data-theme="light"] .stk-bar,html[data-theme="light"] .xh-sys .dk,html[data-theme="light"] .as-stk{background:#f1ecdf}
html[data-theme="light"] .pipe-a{color:#cfc4a8}
html[data-theme="light"] .pipe-s.on{background:#fbefd0}
html[data-theme="light"] .cp-bars div{color:#4a463d}html[data-theme="light"] .cp-bars b{color:#0d0d0d}
html[data-theme="light"] .dn-n{fill:#0d0d0d}html[data-theme="light"] .dn-t{fill:#7a7466}
html[data-theme="light"] .dn circle[stroke="rgba(255,255,255,.08)"],html[data-theme="light"] .dn circle[stroke="#2a251a"],html[data-theme="light"] .sg-ring circle[stroke="#2a251a"]{stroke:#f1ecdf}
html[data-theme="light"] .sg-ring text{fill:#0d0d0d}
html[data-theme="light"] .dn-lg button b{color:#0d0d0d}
html[data-theme="light"] .stk-lg{color:#5e594e}
html[data-theme="light"] .jb-d.has{background:#fbefd0;border-color:#d9b45c}
html[data-theme="light"] .ac-live svg polygon{opacity:.18}
html[data-theme="light"] .tip{background:#fff;color:#0d0d0d;border-color:#e2d9c3}
html[data-theme="light"] .tip b{color:#9c7420}
html[data-theme="light"] .fn-row:nth-child(1) .fn-bar{background:linear-gradient(90deg,#3a3020,#5b4513)}
html[data-theme="light"] .lbx-r .xh-stats .xs{background:#fff}
.th-panel{margin-top:14px;position:relative;z-index:0}
@media(min-width:1100px){#shell .set-top{top:0}}
.cp-list{margin-bottom:18px}
.cp-sheet{margin-top:16px;border-color:var(--gold)}
.cp-sh{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.cp-sh li{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:10px;align-items:start;background:var(--sunk);border-radius:12px;padding:9px 12px}
.cp-shn{width:24px;height:24px;border-radius:50%;background:var(--gold);color:#120f08;font-size:12px;font-weight:900;display:grid;place-items:center}
.cp-sh b{font-size:12.5px;color:var(--muted);font-weight:700}
.cp-sh pre{margin:2px 0 0;font:500 13.5px/1.5 var(--body);white-space:pre-wrap;word-break:break-word;color:var(--fg)}
.cp-sh .btn.done{border-color:var(--ok);color:var(--ok)}
.cp-pl{position:relative}
.cp-list:not(.all) .cp-pl.more{display:none}
.cp-del{position:absolute;top:10px;right:10px;width:30px;height:30px;border-radius:9px;border:1px solid var(--line);background:var(--surface);cursor:pointer;font-size:14px;display:grid;place-items:center;opacity:.55;transition:all .15s}
.cp-pl:hover .cp-del{opacity:1}
.cp-del:hover{border-color:var(--bad);background:color-mix(in srgb,var(--bad) 12%,var(--surface))}
.sec-t span .btn{margin-left:8px;vertical-align:middle}
/* ===== cp60: Kế hoạch chiến dịch theo hướng thị trường, chiến lược, bài viết ===== */
.cp-old{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;border:1px solid var(--gold);background:var(--gold-soft);border-radius:16px;padding:14px 18px;margin-bottom:16px}
.cp-old b{display:block;font-size:15px}.cp-old span{font-size:13px;color:var(--muted)}
.cp-lead{font-size:14.5px;line-height:1.65;margin:0 0 12px;color:var(--fg)}
.cp-h3{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);margin:16px 0 8px;font-weight:700}
.cp-tw{overflow-x:auto;border:1px solid var(--line);border-radius:14px}
.cp-tb{width:100%;border-collapse:collapse;font-size:13px;min-width:720px}
.cp-tb th{text-align:left;font-weight:600;color:var(--muted);font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;padding:10px 12px;background:var(--sunk)}
.cp-tb td{padding:10px 12px;border-top:1px solid var(--line);vertical-align:top;line-height:1.5}
.cp-tb td b{display:block}.cp-src{font-size:11.5px;color:var(--gold);text-decoration:none}
.cp-gap{color:var(--fg);background:color-mix(in srgb,var(--gold) 9%,transparent);font-weight:500}
.cp-pg{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.cp-pc{background:var(--sunk);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:8px;font-size:13px;line-height:1.5;border-top:3px solid var(--gold)}
.cp-pc>b{font-size:14.5px}.cp-pc span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:2px}
.cp-q{font-family:var(--display);font-style:italic;font-size:15px;color:var(--gold)}
.cp-ok li::marker{content:'✦  ';color:var(--gold)}
.cp-srcs{margin-top:14px;font-size:12.5px}.cp-srcs summary{cursor:pointer;color:var(--muted)}
.cp-srcs a{display:block;color:var(--gold);text-decoration:none;padding:3px 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cp-mk,.cp-stg,.cp-ct{margin-bottom:16px}
.cp-big{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cp-big>div{border:1px solid var(--line);border-radius:14px;padding:14px 16px}
.cp-big span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--gold);font-weight:700}
.cp-big p{margin:6px 0 0;font-size:14.5px;line-height:1.6}
.cp-jr{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.cp-jr>div{padding:14px;border-left:1px solid var(--line);position:relative;font-size:13px;line-height:1.5}
.cp-jr>div:first-child{border-left:0}
.cp-jr i{font-style:normal;display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--gold);color:#0b0b0a;font-weight:700;font-size:12px;margin-bottom:6px}
.cp-jr b{display:block;font-size:14px}.cp-jr em{display:block;font-style:normal;color:var(--gold);font-size:12px;margin:2px 0 6px}
.cp-jr p{margin:0 0 6px}.cp-jr small{color:var(--muted);font-size:12px}
.cp-kp{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}
.cp-kp>div{background:var(--sunk);border-radius:14px;padding:12px 14px}
.cp-kp small{display:block;color:var(--muted);font-size:12px}.cp-kp b{display:block;font-size:20px;color:var(--gold);margin:4px 0}.cp-kp span{font-size:12px;color:var(--muted);line-height:1.4}
.cp-bvs{display:grid;gap:14px}
.cp-bv{border:1px solid var(--line);border-radius:16px;padding:16px 18px}
.cp-bvh{display:flex;justify-content:space-between;align-items:center;gap:10px}
.cp-bv h3{margin:10px 0 6px;font-size:17px}
.cp-bvt{font-size:14px;line-height:1.7;max-height:420px;overflow:auto}
.cp-ab{margin-bottom:16px}.cp-ab summary{cursor:pointer;display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;list-style:none}
.cp-ab summary::before{content:'▸';color:var(--gold)}.cp-ab[open] summary::before{content:'▾'}
.cp-ab summary span{font-size:12.5px;color:var(--muted)}.cp-ab .cp-cs{margin-top:12px}
@media(max-width:700px){.cp-big{grid-template-columns:1fr}.cp-jr>div{border-left:0;border-top:1px solid var(--line)}.cp-jr>div:first-child{border-top:0}}
/* ===== tv61: Thư viện quảng cáo ===== */
.tv-sum{display:flex;gap:16px;align-items:center;margin:10px 0}.tv-dn{width:108px;height:108px;flex:none}
.tv-lg{display:flex;flex-direction:column;gap:5px;font-size:12.5px;min-width:0;flex:1}
.tv-lg div{display:flex;align-items:center;gap:7px}.tv-lg i{width:9px;height:9px;border-radius:3px;flex:none}.tv-lg b{margin-left:auto}
.tv-drop{border:1.5px dashed var(--line);border-radius:18px;padding:18px;text-align:center;margin:16px 0;transition:.15s}
.tv-drop.on{border-color:var(--gold);background:var(--gold-soft)}.tv-drop b{display:block}.tv-drop>span{font-size:12.5px;color:var(--muted)}
.tv-drop .up{text-align:left;margin-top:8px}
.tv-fl{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}
.tv-fl input{max-width:380px}
.tv-chs{display:flex;gap:6px;flex-wrap:wrap}
.tv-ch{border:1px solid var(--line);background:var(--surface);color:var(--fg);border-radius:99px;padding:5px 12px;font-size:12.5px;cursor:pointer}
.tv-ch small{color:var(--muted);margin-left:3px}.tv-ch.on{background:var(--gold);border-color:var(--gold);color:#0b0b0a}.tv-ch.on small{color:#0b0b0a}
.tv-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.tv-c{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--surface);display:flex;flex-direction:column}
.tv-th{position:relative;aspect-ratio:4/3;background:var(--sunk);overflow:hidden}
.tv-th .mp-prev{width:100%;height:100%;object-fit:cover;display:block}
.tv-th .mp-play{position:absolute;left:10px;bottom:10px}
.tv-r{position:absolute;right:8px;top:8px;background:rgba(11,11,10,.75);color:#f4efe2;font-size:11px;padding:2px 7px;border-radius:6px;font-weight:600}
.tv-st{position:absolute;left:8px;top:8px;background:rgba(11,11,10,.75);color:#f4efe2;font-size:11px;padding:3px 8px;border-radius:6px;display:flex;gap:5px;align-items:center}
.tv-st.bad{background:var(--bad)}
.tv-b{padding:12px 14px;display:flex;flex-direction:column;gap:6px;flex:1}
.tv-top{display:flex;justify-content:space-between;align-items:center;gap:8px}
.tv-sc{display:flex;align-items:center;gap:6px;width:90px}.tv-sc i{display:block;height:5px;border-radius:9px;background:var(--gold);flex:none;max-width:60px}
.tv-sc::before{content:'';position:absolute}.tv-sc b{font-size:12px;margin-left:auto}
.tv-sv{font-size:14px}.tv-b p{margin:0;font-size:12.5px;line-height:1.5;color:var(--muted)}
.tv-tags,.tv-pl{display:flex;flex-wrap:wrap;gap:4px}.tv-tags span{font-size:11px;background:var(--sunk);padding:2px 7px;border-radius:6px}
.tv-pl span{font-size:10.5px;border:1px solid var(--gold);color:var(--gold);padding:1px 6px;border-radius:6px;text-transform:uppercase;letter-spacing:.03em}
.tv-warn{font-size:12px;color:var(--warn)}
.tv-act{display:flex;gap:6px;margin-top:auto;padding-top:8px}.tv-act .gold{flex:1;white-space:nowrap}
.mp-src{margin-bottom:10px}
/* cp62: thương hiệu, số liệu cũ, nội dung theo nhóm, chốt đơn */
.cp-fix{border:1px solid color-mix(in srgb,var(--warn) 50%,transparent);background:color-mix(in srgb,var(--warn) 8%,transparent);border-radius:14px;padding:12px 16px;margin-bottom:12px}
.cp-fix.ok{border-color:color-mix(in srgb,var(--gold) 55%,transparent);background:var(--gold-soft);margin:14px 0 0}
.cp-fix b{font-size:13.5px}.cp-fix ul{margin:6px 0 0;padding-left:18px;font-size:13.5px;line-height:1.6}
.cp-qs{display:flex;flex-wrap:wrap;gap:6px}.cp-qs span{font-family:var(--display);font-style:italic;font-size:13.5px;background:var(--sunk);border-left:3px solid var(--gold);padding:6px 10px;border-radius:8px}
.cp-wl{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.cp-wi{border-radius:12px;padding:10px 12px;margin-bottom:8px;display:flex;flex-direction:column;gap:2px;font-size:13px;line-height:1.5;background:var(--sunk);border-left:3px solid var(--ok)}
.cp-wi.lose{border-left-color:var(--bad)}.cp-wi em{font-style:normal;font-weight:700;color:var(--gold)}.cp-wi span{color:var(--muted)}
.cp-adt{font-size:12px;color:var(--muted);margin-top:4px;line-height:1.45}.cp-tb small{display:block}
.cp-win{color:var(--ok);font-weight:700}.cp-lose{color:var(--bad);font-weight:700}
.cp-ngs{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}
.cp-ngt{display:flex;flex-direction:column;gap:3px}.cp-ngt small{color:var(--muted);font-size:12px}
.cp-cds{display:grid;gap:10px}
.cp-cd{border:1px solid var(--line);border-radius:14px;overflow:hidden}
.cp-cdh{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--sunk)}
.cp-cdh i{font-style:normal;width:24px;height:24px;border-radius:50%;background:var(--gold);color:#0b0b0a;display:grid;place-items:center;font-weight:700;font-size:12px;flex:none}
.cp-cdb{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:14px;padding:12px 14px;font-size:13px;line-height:1.55}
.cp-cdb span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:3px}
.cp-cdm{background:var(--gold-soft);border-radius:10px;padding:10px 12px;position:relative}.cp-cdm p{margin:0 0 8px}
@media(max-width:800px){.cp-wl,.cp-cdb{grid-template-columns:1fr}}
/* bl63: logo nền tảng (Simple Icons, CC0) tô màu thương hiệu bằng mask */
.bl{display:inline-block;width:1em;height:1em;vertical-align:-.12em;background:currentColor;-webkit-mask:var(--m) center/contain no-repeat;mask:var(--m) center/contain no-repeat}
.bl-meta{--m:url(brand/meta.svg);color:#0081FB}.bl-googleads{--m:url(brand/googleads.svg);color:#4285F4}.bl-tiktok{--m:url(brand/tiktok.svg);color:#000}
.bl-openai{--m:url(brand/openai.svg);color:#000}.bl-zalo{--m:url(brand/zalo.svg);color:#0068FF}
.bchip,.chc-ic:has(.bl),.pf-ic:has(.bl),.ni.pf:has(.bl),.cp-ch :has(>.bl){background:#fff!important;color:#000!important;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08)}
.pf-ic .bl{width:.62em;height:.62em}.chc-ic .bl,.ni .bl,.ac-t i .bl{width:.78em;height:.78em}
.ni .bl{width:15px;height:15px}.ac-t i .bl{width:15px;height:15px}.chc-ic .bl{width:24px;height:24px}.pf-ic .bl{width:38px;height:38px}.cp-ch .bl{width:22px;height:22px}
.bl-zalo{transform:scale(1.18)}
/* md64: hình, video gợi ý cho từng bài */
.cp-md{margin-top:14px;border-top:1px dashed var(--line);padding-top:12px}
.cp-mdh{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}.cp-mdh b{font-size:13.5px}.cp-mdh .btn{margin-left:auto}
.cp-mds{font-size:11.5px;padding:2px 8px;border-radius:99px;background:var(--gold-soft);color:var(--gold)}.cp-mds.ok{background:color-mix(in srgb,var(--ok) 15%,transparent);color:var(--ok)}
.cp-mds:empty{display:none}
.cp-mdl{display:flex;gap:10px;flex-wrap:wrap}
.cp-mdi{margin:0;width:150px;position:relative}
.cp-mdt{display:block;width:150px;aspect-ratio:1;border-radius:12px;overflow:hidden;background:var(--sunk);position:relative}
.cp-mdt.tall{aspect-ratio:9/14}
.cp-mdt .mp-prev{width:100%;height:100%;object-fit:cover;display:block}.cp-mdt .mp-play{position:absolute;left:8px;bottom:8px}
.cp-mdi figcaption{font-size:11.5px;color:var(--muted);margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cp-src2{display:inline-block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:1px 6px;border-radius:5px;background:var(--sunk);color:var(--muted);margin-right:5px}
.cp-src2.tv{background:var(--gold);color:#0b0b0a}
.cp-mdx{position:absolute;top:6px;right:6px;width:24px;height:24px;border-radius:50%;border:0;background:rgba(11,11,10,.7);color:#fff;cursor:pointer;font-size:11px;opacity:0;transition:.15s}
.cp-mdi:hover .cp-mdx{opacity:1}
.cp-anim{display:flex;gap:16px;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;margin-top:12px;border:1px solid color-mix(in srgb,var(--gold) 45%,transparent);background:var(--gold-soft);border-radius:14px;padding:14px 16px}
.cp-anim>div{flex:1;min-width:260px}.cp-anim b{font-size:14px}.cp-anim p{margin:6px 0 0;font-size:13px;line-height:1.6}
.cp-br{display:flex;gap:6px;align-items:center;margin-top:10px;flex-wrap:wrap}
.cp-br span{width:46px;height:46px;border-radius:8px;overflow:hidden;display:block}.cp-br .mp-prev{width:100%;height:100%;object-fit:cover}
.cp-br small{color:var(--muted);font-size:12px;margin-left:4px}
/* sg65: GEO theo trụ cột */
.sg-pl{display:flex;flex-direction:column;gap:10px}
.sg-pc{border:1px solid var(--line);border-radius:16px;overflow:hidden}
.sg-pc>header{display:flex;align-items:center;gap:12px;padding:12px 14px}
.sg-pch{flex:1;display:flex;align-items:center;gap:14px;background:none;border:0;color:inherit;text-align:left;cursor:pointer;padding:0;min-width:0}
.sg-pcs{flex:none;width:58px;height:58px;border-radius:14px;display:grid;place-items:center;font-weight:800;font-size:16px;background:var(--sunk);color:var(--muted)}
.sg-pcs.hi{background:var(--gold);color:#0b0b0a}.sg-pcs.mid{background:var(--gold-soft);color:var(--gold)}.sg-pcs.lo{background:color-mix(in srgb,var(--bad) 14%,transparent);color:var(--bad)}
.sg-pct{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.sg-pct b{font-size:15px}.sg-pct small{color:var(--muted);font-size:12.5px}
.sg-pct em{font-style:normal;font-size:12px;color:var(--muted)}
.sg-pcb{display:block;height:5px;border-radius:9px;background:var(--sunk);overflow:hidden;max-width:420px;margin:3px 0}.sg-pcb i{display:block;height:100%;background:var(--gold)}
.sg-pc>.sg-list{display:none;padding:0 14px 14px}.sg-pc.open>.sg-list{display:flex}
.sg-pc.open{border-color:color-mix(in srgb,var(--gold) 50%,transparent)}
.sg-ok.wait{background:var(--sunk);color:var(--muted)}
.sg-pf label{display:flex;flex-direction:column;gap:2px}
@media(max-width:700px){.sg-pc>header{flex-wrap:wrap}}
/* ps66: thẻ bài viết, kịch bản: chữ bên trái, hình video bên phải */
.cp-ngs{display:flex!important;flex-direction:column;gap:16px;grid-template-columns:none!important}
.cp-pst{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,1fr);border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--surface)}
.cp-psl{padding:18px 20px;min-width:0}
.cp-psr{padding:16px 18px;background:var(--sunk);border-left:1px solid var(--line);min-width:0}
.cp-psr .cp-md{margin:0;border:0;padding:0}
.cp-psh{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.cp-psm{display:flex;flex-direction:column;gap:6px;min-width:0}
.cp-psg{display:inline-block;align-self:flex-start;max-width:100%;font-size:12px;font-weight:700;line-height:1.4;padding:4px 10px;border-radius:10px;background:var(--gold-soft);color:var(--gold);white-space:normal}
.cp-psf{font-size:12px;color:var(--muted);text-transform:capitalize}
.cp-psh .btn{flex:none}
.cp-hook{font-family:var(--display);font-size:20px;line-height:1.35;margin:14px 0 12px;font-weight:700}
.cp-body{font-size:14px;line-height:1.7}
.cp-body p{margin:0 0 10px}
.cp-scene{display:grid;grid-template-columns:76px 1fr;gap:12px;padding:10px 0;border-top:1px dashed var(--line)}
.cp-scene:first-child{border-top:0}
.cp-scene-n{display:flex;flex-direction:column;align-items:flex-start;gap:2px}
.cp-scene-n b{display:inline-grid;place-items:center;min-width:26px;height:26px;padding:0 6px;border-radius:8px;background:var(--gold);color:#0b0b0a;font-size:12px}
.cp-scene-n small{font-size:11px;color:var(--muted);white-space:nowrap}
.cp-cap{margin:14px 0 6px;font-size:11px;font-weight:800;letter-spacing:.1em;color:var(--gold)}
.cp-cta,.cp-why{display:grid;grid-template-columns:76px 1fr;gap:12px;font-size:13px;line-height:1.55;padding:10px 0 0;margin-top:10px;border-top:1px solid var(--line)}
.cp-why{color:var(--muted);border-top:0;margin-top:0;padding-top:6px}
.cp-cta span,.cp-why span{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding-top:2px}
.cp-psr .cp-mdh{margin-bottom:12px}.cp-psr .cp-mdh .btn{margin-left:auto}
.cp-psr .cp-mdl{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.cp-psr .cp-mdi,.cp-psr .cp-mdt{width:100%}
.cp-psr .cp-anim{flex-direction:column;align-items:stretch;margin-top:0}
.cp-psr .cp-anim>div{min-width:0}
@media(max-width:980px){.cp-pst{grid-template-columns:1fr}.cp-psr{border-left:0;border-top:1px solid var(--line)}}
.cp-psr .cp-mdt{aspect-ratio:1}.cp-psr .cp-mdt.tall{aspect-ratio:4/5}
.cp-psr .cp-mdl{grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}
/* cu67: Khách hàng của mình */
.cu-lg{display:flex;gap:12px;font-size:12px;color:var(--muted)}.cu-lg i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;vertical-align:-1px}
.cu-lg .f,.cu-bars .f{background:var(--gold)}.cu-lg .m,.cu-bars .m{background:#8a7a55}
.cu-ag{display:flex;flex-direction:column;gap:10px}
.cu-agr{display:grid;grid-template-columns:56px 1fr 130px;gap:12px;align-items:center}
.cu-agr .nm{font-weight:700;font-size:13px}.cu-agr small{font-size:11.5px;color:var(--muted);line-height:1.4;text-align:right}
.cu-bars{display:flex;flex-direction:column;gap:3px}.cu-bars span{display:block;height:9px;border-radius:5px;min-width:2px}
.cu-list{display:flex;flex-direction:column;gap:8px}
.cu-r{display:grid;grid-template-columns:minmax(0,1.2fr) 1fr 44px 92px;gap:10px;align-items:center;font-size:13px}
.cu-r .nm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-transform:capitalize}.cu-r .tr{height:8px;border-radius:5px;background:var(--sunk);overflow:hidden}.cu-r .tr i{display:block;height:100%;background:var(--gold)}
.cu-r b{text-align:right}.cu-r small{color:var(--muted);text-align:right;font-size:11.5px}
/* zm68: ảnh gợi ý to hơn, bấm để phóng to */
.cp-psr .cp-mdl{grid-template-columns:repeat(2,1fr);gap:12px}
.cp-psr .cp-mdl.one{grid-template-columns:1fr}
.cp-psr .cp-mdl.one .cp-mdt,.cp-psr .cp-mdl.one .cp-mdt.tall{aspect-ratio:4/5;max-height:440px}
.cp-psr .cp-mdl.one .cp-mdt .mp-prev{object-fit:contain;background:var(--surface)}
.cp-mdt,.cp-br span,.tv-th{cursor:zoom-in}
.cp-mdt:hover .mp-prev,.tv-th:hover .mp-prev{transform:scale(1.03)}.cp-mdt .mp-prev,.tv-th .mp-prev{transition:transform .25s}
.cp-mdt::after{content:'⤢';position:absolute;right:8px;bottom:8px;width:28px;height:28px;border-radius:8px;background:rgba(11,11,10,.65);color:#fff;display:grid;place-items:center;font-size:14px;opacity:0;transition:.15s}
.cp-mdt:hover::after{opacity:1}
.cp-br span{width:56px!important;height:56px!important}
.zm{position:fixed;inset:0;z-index:9999;background:rgba(8,8,7,.9);display:grid;place-items:center;padding:56px 72px;animation:zmIn .15s ease}
@keyframes zmIn{from{opacity:0}to{opacity:1}}
.zm-f{margin:0;display:flex;flex-direction:column;align-items:center;gap:12px;max-width:100%;max-height:100%}
.zm-f img,.zm-f video{max-width:min(1200px,100%);max-height:calc(100vh - 150px);object-fit:contain;border-radius:12px;background:#000;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.zm-f figcaption{color:#e9e2cf;font-size:13px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:center}
.zm-dl{color:#d9b45c;text-decoration:none;margin-left:10px}
.zm-x{position:absolute;top:16px;right:18px;width:42px;height:42px;border-radius:50%;border:0;background:rgba(255,255,255,.12);color:#fff;font-size:18px;cursor:pointer}
.zm-n{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;border:0;background:rgba(255,255,255,.12);color:#fff;font-size:30px;line-height:1;cursor:pointer}
.zm-x:hover,.zm-n:hover{background:rgba(217,180,92,.85);color:#0b0b0a}
.zm-p{left:16px}.zm-nx{right:16px}
@media(max-width:700px){.zm{padding:56px 12px}.zm-n{top:auto;bottom:16px;transform:none}}
/* pe69: quản lý nhóm khách mục tiêu */
.cu-tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:16px 0 12px}
.pb2-acts{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto;padding-top:8px}.pb2-acts .gold{flex:1 1 100%}
.pe-g{display:grid;grid-template-columns:1fr 1fr;gap:20px}.pe-c h4{margin:0 0 8px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}
.pe-2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pe-g textarea,.pe-g input{width:100%}
@media(max-width:800px){.pe-g{grid-template-columns:1fr}}
.cp-pchips{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 8px}
.cp-pc2{border:1px solid var(--line);background:var(--surface);color:var(--fg);border-radius:99px;padding:6px 12px;font-size:12.5px;cursor:pointer;text-decoration:none;font-weight:600}
.cp-pc2.on{background:var(--gold);border-color:var(--gold);color:#0b0b0a}.cp-pc2.add{border-style:dashed;color:var(--muted)}
.cp-aud{width:100%;min-height:120px;font-size:14px;line-height:1.6;resize:vertical}
.cp-svfit{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:8px}.cp-svfit:empty{display:none}.cp-pc2 small{opacity:.7;font-weight:500;margin-left:3px}
/* ca70: nút trên mỗi bài */
.cp-acts{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;flex:none}
.cp-run{position:relative}
.cp-runm{position:absolute;right:0;top:calc(100% + 6px);z-index:40;min-width:210px;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:0 16px 40px rgba(0,0,0,.25);padding:6px;display:flex;flex-direction:column}
.cp-runm[hidden]{display:none}
.cp-runm button{display:flex;align-items:center;gap:10px;background:none;border:0;color:var(--fg);padding:9px 10px;border-radius:10px;cursor:pointer;font-size:13.5px;font-weight:600;text-align:left}
.cp-runm button:hover{background:var(--sunk)}
.cp-runm .bl{width:18px;height:18px;flex:none}
.cp-runhd{display:flex;justify-content:flex-end;margin-bottom:8px}
.cp-psh{flex-wrap:wrap}
.cp-rmi{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;flex:none}
.pb2-acts{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.pb2-acts .gold{flex:none}
.pb2-acts:has(> :only-child){grid-template-columns:1fr}
.pb2-acts .btn{width:100%;justify-content:center;white-space:nowrap;padding-left:6px;padding-right:6px;font-size:12px}
.pb2-acts{grid-template-columns:repeat(3,minmax(0,1fr))!important}.pb2-acts .btn{min-width:0;overflow:hidden;text-overflow:ellipsis}
/* pr71: nút trên thẻ nhóm khách */
.pb2-acts{display:flex;flex-direction:column;gap:6px;margin-top:auto;padding-top:10px}
.pb2-runw{width:100%}.pb2-runw>.btn{width:100%;justify-content:center}
.pb2-runw .cp-runm{left:0;right:auto;bottom:calc(100% + 6px);top:auto}
.pb2-3{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.pb2-3.two{grid-template-columns:1fr}
.pb2-3 .btn{width:100%;justify-content:center;padding-left:4px;padding-right:4px;white-space:nowrap}
.pb2-acts{display:flex!important;flex-direction:column;grid-template-columns:none!important}
.pb2-acts .btn{font-size:12.5px}
/* pe72: form nhóm khách trực quan */
.pe-gy{display:flex;gap:14px;align-items:flex-start;background:linear-gradient(135deg,var(--gold-soft),transparent);border:1px solid color-mix(in srgb,var(--gold) 45%,transparent);border-radius:16px;padding:14px 16px;margin-bottom:16px}
.pe-gy-i{width:40px;height:40px;border-radius:12px;background:var(--gold);color:#0b0b0a;display:grid;place-items:center;font-size:18px;flex:none}
.pe-gy-b{flex:1;min-width:0}.pe-gy-b b{font-size:14px}.pe-gy-r{display:flex;gap:8px;margin-top:8px}.pe-gy-r input{flex:1;min-width:0}.pe-gy-b small{display:block;margin-top:6px;color:var(--muted);font-size:12.5px}
.pe-wrap{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:20px;align-items:start}
.pe-form{display:flex;flex-direction:column;gap:14px}
.pe-s{border:1px solid var(--line);border-radius:16px;padding:14px 16px;display:flex;flex-direction:column;gap:10px}
.pe-s h4{margin:0 0 2px;font-size:14px;display:flex;align-items:center;gap:8px}
.pe-s h4 i{font-style:normal;width:22px;height:22px;border-radius:50%;background:var(--gold);color:#0b0b0a;display:grid;place-items:center;font-size:12px}
.pe-f{display:flex;flex-direction:column;gap:5px;min-width:0}.pe-f>span{font-size:12px;font-weight:600;color:var(--muted)}
.pe-f input,.pe-f textarea{width:100%;font-size:13.5px}
.pe-3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.pe-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pe-age{display:flex;align-items:center;gap:8px}.pe-age input{width:80px}.pe-age em{font-style:normal;color:var(--muted);font-size:12.5px}
.pe-gd{display:flex}
.pe-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:6px 8px;background:var(--surface)}
.pe-chips span{display:inline-flex;align-items:center;gap:4px;background:var(--gold-soft);color:var(--fg);border-radius:99px;padding:3px 4px 3px 10px;font-size:12.5px}
.pe-chips span button{border:0;background:none;color:var(--muted);cursor:pointer;font-size:10px;width:18px;height:18px;border-radius:50%}
.pe-chips span button:hover{background:var(--bad);color:#fff}
.pe-chips input{border:0!important;background:none!important;box-shadow:none!important;flex:1;min-width:140px;padding:4px!important;outline:none}
.pe-pls{display:flex;flex-wrap:wrap;gap:6px}
.pe-pls button{border:1px solid var(--line);background:var(--surface);color:var(--fg);border-radius:99px;padding:5px 11px;font-size:12.5px;cursor:pointer}
.pe-pls button.on{background:var(--gold);border-color:var(--gold);color:#0b0b0a;font-weight:600}.pe-pls small{opacity:.7}
.pe-adv summary{cursor:pointer;font-size:12.5px;color:var(--muted)}.pe-adv[open] summary{margin-bottom:8px}
.pe-prev{position:sticky;top:0}.pe-prev .pb2-ps{grid-template-columns:1fr!important}.pe-prev .box{padding:0;border:0;background:none;box-shadow:none}
@media(max-width:900px){.pe-wrap{grid-template-columns:1fr}.pe-prev{position:static}.pe-3,.pe-row{grid-template-columns:1fr}}
.pb2-3{gap:5px}.pb2-3 .btn{font-size:11.5px!important;padding:6px 2px!important;letter-spacing:-.01em;overflow:visible}
.pb2-runw>.btn{background:var(--gold)!important;color:#0b0b0a!important;border-color:var(--gold)!important;font-weight:700}
/* lv73: quảng cáo đang chạy trên Phòng Marketing */
.hb-lv-src{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:var(--muted);margin-left:6px;background:#fff;border-radius:6px;padding:1px 7px}.hb-lv-src .bl{width:13px;height:13px}
html:not([data-theme="light"]) .hb-lv-src{color:#333}
.hb-lv-sum{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin:8px 0 10px}
.hb-lv-sum>div{background:var(--sunk);border-radius:12px;padding:9px 12px}.hb-lv-sum small{display:block;font-size:11.5px;color:var(--muted)}.hb-lv-sum b{font-size:17px}
.hb-lv-l{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.hb-lv-r{display:grid;grid-template-columns:minmax(0,2.4fr) repeat(5,minmax(70px,1fr));gap:10px;align-items:center;padding:9px 12px;font-size:13px;color:var(--fg);text-decoration:none;border-top:1px solid var(--line)}
.hb-lv-r:first-child{border-top:0}.hb-lv-r.hd{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:var(--sunk)}
.hb-lv-r span:not(.nm){text-align:right;font-variant-numeric:tabular-nums}
.hb-lv-r .nm{display:flex;align-items:center;gap:8px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-weight:600}
.hb-lv-r .nm i{width:8px;height:8px;border-radius:50%;background:var(--ok);flex:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--ok) 25%,transparent)}
a.hb-lv-r:hover{background:var(--sunk)}
.hb-lv-r.good .cp{color:var(--ok);font-weight:700}.hb-lv-r.bad .cp{color:var(--bad);font-weight:700}
@media(max-width:800px){.hb-lv-r{grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(60px,1fr))}.hb-lv-r>span:nth-child(2),.hb-lv-r>span:nth-child(6){display:none}}
.hb-lv-r.hd span:first-child{text-align:left!important}
/* rp74: Báo cáo hiệu quả */
.rp-sc{display:flex;gap:14px;align-items:center;margin-top:8px}.rp-sc svg{width:110px;height:110px;flex:none}.rp-sc b{font-size:18px;display:block}.rp-sc small{color:var(--muted);font-size:12px;line-height:1.5}
.rp-h{font-size:19px;margin:26px 0 12px}
.rp-ks{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin-bottom:14px}
.rp-k{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:3px}
.rp-k small{font-size:12px;color:var(--muted)}.rp-k b{font-size:22px;font-variant-numeric:tabular-nums}.rp-k>span{font-size:12px;color:var(--muted)}
.rp-d{font-weight:700;font-size:11.5px;margin-left:4px;color:var(--muted)}.rp-d.up{color:var(--ok)}.rp-d.dn{color:var(--bad)}
.rp-ch{width:100%;height:170px;display:block}.rp-ch rect.b{fill:color-mix(in srgb,var(--gold) 40%,transparent)}.rp-ch rect.a{fill:var(--gold)}
.rp-lg{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin-top:6px}.rp-lg i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;vertical-align:-1px}
.rp-lg .b{background:color-mix(in srgb,var(--gold) 40%,transparent)}.rp-lg .a{background:var(--gold)}.rp-lg .m{background:var(--ok);height:3px;vertical-align:3px}
.rp-fn{display:flex;flex-direction:column;gap:10px}
.rp-fr,.rp-pf{display:grid;grid-template-columns:110px 1fr 70px 76px;gap:10px;align-items:center;font-size:13px}
.rp-fr b,.rp-pf b{text-align:right;font-variant-numeric:tabular-nums}.rp-fr small,.rp-pf small{color:var(--muted);font-size:11.5px;text-align:right}
.rp-fb{height:12px;border-radius:7px;background:var(--sunk);overflow:hidden}.rp-fb i{display:block;height:100%;background:linear-gradient(90deg,var(--gold),color-mix(in srgb,var(--gold) 60%,#fff))}
.rp-pf{margin-bottom:8px;grid-template-columns:90px 1fr 44px 110px}
.rp-t{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.rp-tr{display:grid;grid-template-columns:minmax(0,2.2fr) repeat(4,minmax(64px,.8fr)) 150px minmax(130px,1.1fr);gap:10px;align-items:center;padding:10px 12px;font-size:13px;border-top:1px solid var(--line)}
.rp-tr:first-child{border-top:0}.rp-tr.hd{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:var(--sunk)}
.rp-tr>span:nth-child(n+2):nth-child(-n+5){text-align:right;font-variant-numeric:tabular-nums}.rp-tr .nm{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rp-v{font-style:normal;font-size:12px;font-weight:700;padding:2px 9px;border-radius:99px;background:var(--sunk);color:var(--muted)}
.rp-v.good{background:color-mix(in srgb,var(--ok) 16%,transparent);color:var(--ok)}.rp-v.bad{background:color-mix(in srgb,var(--bad) 14%,transparent);color:var(--bad)}
.rp-ad{border-left:3px solid var(--ok);background:var(--sunk);border-radius:10px;padding:9px 12px;margin-bottom:8px;display:flex;flex-direction:column;gap:2px;font-size:13px}.rp-ad.bad{border-left-color:var(--bad)}.rp-ad span{color:var(--muted);font-size:12px}
.rp-po{display:flex;gap:10px;align-items:center;padding:8px 0;border-top:1px solid var(--line);text-decoration:none;color:var(--fg)}.rp-po:first-of-type{border-top:0}
.rp-po img,.rp-noimg{width:52px;height:52px;border-radius:10px;object-fit:cover;flex:none;background:var(--sunk)}
.rp-pt{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.rp-pt b{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rp-pt small{font-size:11.5px;color:var(--muted)}
.rp-s{font-style:normal;font-weight:800;font-size:13px;padding:3px 9px;border-radius:9px;background:var(--sunk);color:var(--muted)}.rp-s.hi{background:var(--gold);color:#0b0b0a}
.rp-po.low{opacity:.75}
.rp-gy{margin-bottom:8px;border-color:color-mix(in srgb,var(--gold) 45%,transparent)}
.rp-gy0{display:flex;flex-direction:column;gap:4px}.rp-gy0 span{color:var(--muted);font-size:13px}
.rp-rvh{display:flex;gap:14px;align-items:flex-start}.rp-rvh p{margin:4px 0;font-size:14.5px;line-height:1.6}.rp-rvh small{color:var(--muted);font-size:12px}
.rp-rvs{flex:none;width:58px;height:58px;border-radius:16px;display:grid;place-items:center;font-size:20px;font-weight:800;background:var(--sunk)}.rp-rvs.hi{background:var(--ok);color:#fff}.rp-rvs.mid{background:var(--gold);color:#0b0b0a}.rp-rvs.lo{background:var(--bad);color:#fff}
.rp-rvg{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:14px}.rp-rvg h4,.rp-todo-h{margin:0 0 6px;font-size:13px}
.rp-rvg ul{margin:0;padding-left:18px;font-size:13.5px;line-height:1.6}.rp-rvg ul li::marker{color:var(--ok)}.rp-rvg ul.bad li::marker{color:var(--bad)}
.rp-todo-h{margin-top:16px}.rp-todo{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}
.rp-todo>div{border:1px solid var(--line);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:4px;font-size:13px}.rp-todo>div.cao{border-color:var(--gold);background:var(--gold-soft)}
.rp-todo em{font-style:normal;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--gold)}.rp-todo span{color:var(--muted);font-size:12px}
@media(max-width:900px){.rp-tr{grid-template-columns:minmax(0,1.6fr) 70px 60px 90px}.rp-tr>span:nth-child(5),.rp-tr>span:nth-child(7){display:none}.rp-rvg{grid-template-columns:1fr}}
/* nv75: Lập chiến dịch và 7 kênh là mục con của Trung tâm quảng cáo */
.nav-subs{position:relative;margin:2px 0 4px 20px;padding-left:10px;border-left:1px solid var(--line);display:flex;flex-direction:column}
.nav .nav-sub{font-size:13px;padding-top:5px;padding-bottom:5px}
.nav .nav-sub .ni{transform:scale(.88)}
body.sb-mini .nav-subs{margin-left:0;padding-left:0;border-left:0}
/* ov76: tổng quan 3 tab ngang + nút chức năng nổi bật */
.ov{margin:18px 0 8px}
.ov-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}
.ov-t{display:flex;align-items:center;gap:12px;text-align:left;border:1px solid var(--line);background:var(--surface);color:var(--fg);border-radius:16px;padding:12px 14px;cursor:pointer;transition:.15s}
.ov-t i{font-style:normal;width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--sunk);color:var(--gold);font-size:16px;flex:none}
.ov-t b{display:block;font-size:15px}.ov-t small{display:block;font-size:12px;color:var(--muted);margin-top:2px}
.ov-t:hover{border-color:color-mix(in srgb,var(--gold) 50%,transparent)}
.ov-t.on{border-color:var(--gold);background:linear-gradient(135deg,var(--gold-soft),var(--surface));box-shadow:inset 0 -3px 0 var(--gold)}
.ov-t.on i{background:var(--gold);color:#0b0b0a}
.ov-p[hidden]{display:none}
#adFn{margin-top:26px;scroll-margin-top:12px}
.ac-rail .ac-gb{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.ac-rail .ac-t{display:flex!important;align-items:center;gap:10px;text-align:left;padding:11px 12px!important;border-radius:14px!important;border:1px solid var(--line)!important;background:var(--surface)!important;min-height:62px;white-space:normal!important}
.ac-rail .ac-t>i{font-style:normal;width:34px;height:34px;border-radius:10px;display:grid!important;place-items:center;background:var(--sunk);color:var(--gold);font-size:15px;flex:none}
.ac-rail .ac-tx{display:flex;flex-direction:column;gap:2px;min-width:0}.ac-rail .ac-tx b{font-size:14px;color:var(--fg)}.ac-rail .ac-tx small{font-size:11.5px;color:var(--muted);line-height:1.35;font-weight:500}
.ac-rail .ac-t:hover{border-color:color-mix(in srgb,var(--gold) 50%,transparent)!important;transform:translateY(-1px)}
.ac-rail .ac-t.on{border-color:var(--gold)!important;background:linear-gradient(135deg,var(--gold-soft),var(--surface))!important;box-shadow:0 0 0 1px var(--gold) inset}
.ac-rail .ac-t.on>i{background:var(--gold);color:#0b0b0a}
.ac-rail .ac-t.on .ac-tx b{color:var(--gold)}
@media(max-width:900px){.ov-tabs{grid-template-columns:1fr}.ac-rail .ac-gb{grid-template-columns:1fr}}
.ac-rail{grid-template-columns:1fr!important;gap:6px!important;padding:12px!important}
.ac-rail .ac-g{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;align-items:center;padding:6px 0;border:0!important;border-top:1px solid var(--line)!important}
.ac-rail .ac-g:first-child{border-top:0!important}
.ac-rail .ac-gh{font-size:11px;letter-spacing:.1em}
.ac-rail .ac-gb{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.ac-rail .ac-tx small{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
@media(max-width:1100px){.ac-rail .ac-gb{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:700px){.ac-rail .ac-g{grid-template-columns:1fr}.ac-rail .ac-gb{grid-template-columns:1fr!important}}
/* pr77: nguyên tắc gọn thành nhãn */
.pb2-prin{display:flex;flex-wrap:wrap;gap:6px;align-content:center}
.pb2-prin .pb2-pr-i{flex:1 1 calc(50% - 6px);display:flex;align-items:center;gap:8px;padding:7px 10px;font-size:12.5px;border-radius:10px;background:var(--surface);flex-direction:row;text-align:left}
.pb2-prin .pb2-pr-i:last-child:nth-child(odd){flex-basis:100%}
.pb2-prin .pb2-ic{font-size:14px;flex:none}
.pb2-prin .pb2-pr-i b{font-weight:600;line-height:1.3}
/* rc78: thẻ chiến dịch Meta */
.rc-top{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:flex-start}.rc-top h3{margin:0}.rc-top p{margin:4px 0 0}
.rc-tools{display:flex;flex-direction:column;gap:8px;align-items:flex-end}
.rc-acc,.rc-th{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.rc-th input{width:120px}
.rc-sum{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:16px 0}
.rc-sum>div{background:var(--sunk);border-radius:14px;padding:11px 14px}.rc-sum small{display:block;font-size:11.5px;color:var(--muted)}.rc-sum b{font-size:19px;font-variant-numeric:tabular-nums}.rc-sum em{font-style:normal;color:var(--muted);font-size:14px}.rc-sum span{display:block;font-size:11.5px;color:var(--muted)}
.rc-list{display:flex;flex-direction:column;gap:10px}
.rc{border:1px solid var(--line);border-radius:16px;padding:14px 16px;background:var(--surface);border-left:4px solid var(--line)}
.rc.on{border-left-color:var(--ok)}.rc.bad{border-left-color:var(--bad)}.rc.good.on{border-left-color:var(--ok)}
.rc-h{display:flex;align-items:center;gap:12px}
.rc-dot{width:10px;height:10px;border-radius:50%;background:var(--muted);opacity:.5;flex:none}.rc.on .rc-dot{background:var(--ok);opacity:1;box-shadow:0 0 0 4px color-mix(in srgb,var(--ok) 22%,transparent)}
.rc-n{flex:1;min-width:0}.rc-n b{display:block;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rc-n small{color:var(--muted);font-size:12px}
.rc-a{display:flex;gap:6px;flex:none}
.rc-ms{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:12px}
.rc-m{background:var(--sunk);border-radius:12px;padding:9px 12px;min-width:0}
.rc-m small{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.rc-m b{display:block;font-size:16px;margin-top:2px;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rc-m span{display:block;font-size:11.5px;color:var(--muted);margin-top:1px}
.rc-bar{display:block;height:5px;border-radius:5px;background:color-mix(in srgb,var(--gold) 15%,transparent);margin-top:7px;overflow:hidden}.rc-bar i{display:block;height:100%;background:var(--gold)}
.rc-cp.good b{color:var(--ok)}.rc-cp.good span{color:var(--ok)}.rc-cp.bad b,.rc-cp.bad span{color:var(--bad)}
.rc-sets{margin-top:10px;font-size:13px}.rc-sets summary{cursor:pointer;color:var(--muted)}
.rc-set{display:grid;grid-template-columns:minmax(0,1fr) auto 140px auto;gap:10px;align-items:center;padding:7px 10px;border-top:1px dashed var(--line)}
.rc-old{margin-top:14px}
@media(max-width:1000px){.rc-ms{grid-template-columns:repeat(3,minmax(0,1fr))}.rc-sum{grid-template-columns:repeat(2,minmax(0,1fr))}.rc-h{flex-wrap:wrap}}
/* rn79: form soạn chiến dịch theo bước */
#runNew>h3{font-size:18px}
#runNew .ad-preset{border-radius:16px;padding:14px 16px;margin:12px 0 16px}
.rn-s{border:1px solid var(--line);border-radius:18px;padding:16px 18px;margin-bottom:14px;background:var(--surface)}
.rn-s>h4{display:flex;align-items:center;gap:10px;margin:0 0 14px;font-size:15.5px}
.rn-s>h4 i{font-style:normal;width:26px;height:26px;border-radius:50%;background:var(--gold);color:#0b0b0a;display:grid;place-items:center;font-size:13px;flex:none}
.rn-s>h4 small{font-weight:500;color:var(--muted);font-size:12.5px;margin-left:2px}
.rn-s .grid2.rl-f{gap:14px 18px}
.rn-s .field label{font-size:12.5px;font-weight:600;color:var(--muted)}
#rnGoal{display:grid!important;grid-template-columns:1fr 1fr;gap:8px;background:none!important;padding:0!important;border:0!important}
#rnGoal button{border:1px solid var(--line)!important;border-radius:12px!important;padding:12px!important;font-size:14px!important;font-weight:700;background:var(--sunk)!important;color:var(--fg)!important}
#rnGoal button::before{margin-right:6px}#rnGoal button[data-g="messages"]::before{content:'💬'}#rnGoal button[data-g="traffic"]::before{content:'🌐'}
#rnGoal button.on{border-color:var(--gold)!important;background:linear-gradient(135deg,var(--gold-soft),var(--surface))!important;box-shadow:inset 0 0 0 1px var(--gold)}
#rnRadW{margin-top:8px}
.rn-go{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:16px 18px;border-radius:16px;background:linear-gradient(135deg,var(--gold-soft),transparent);border:1px solid color-mix(in srgb,var(--gold) 45%,transparent)}
.rn-go .btn{font-size:15px;padding:11px 20px}
.rn-go .btn{background:var(--gold)!important;color:#0b0b0a!important;border-color:var(--gold)!important;font-weight:700}
/* rch80: chọn kênh trong Chạy quảng cáo */
.rch{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-bottom:14px}
.rch-t{display:flex;align-items:center;gap:10px;text-align:left;border:1px solid var(--line);background:var(--surface);color:var(--fg);border-radius:14px;padding:10px 12px;cursor:pointer;min-width:0}
.rch-t b{display:block;font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rch-t small{display:block;font-size:11px;color:var(--muted)}.rch-t>span:last-child{min-width:0}
.rch-i{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;flex:none}.rch-i .bl{width:18px;height:18px}.rch-i.lg{width:52px;height:52px;border-radius:14px}.rch-i.lg .bl{width:30px;height:30px}
.rch-t:hover{border-color:color-mix(in srgb,var(--gold) 50%,transparent)}
.rch-t.on{border-color:var(--gold);background:linear-gradient(135deg,var(--gold-soft),var(--surface));box-shadow:inset 0 -3px 0 var(--gold)}
.rch-st{display:flex;align-items:center;gap:16px}.rch-st>div{flex:1}.rch-st p{margin:4px 0 0}
@media(max-width:1100px){.rch{grid-template-columns:repeat(3,minmax(0,1fr))}}
.rch-st{display:flex!important;flex-direction:row!important;align-items:center!important;text-align:left!important}
.ac-hero .hb-acts{flex-wrap:nowrap;gap:8px}.ac-hero .hb-acts .btn{white-space:nowrap;padding-left:14px;padding-right:14px}
.ac-hero #adRefresh{padding-left:12px;padding-right:12px;font-size:16px}
@media(max-width:900px){.ac-hero .hb-acts{flex-wrap:wrap}}
/* tf81: gợi ý sửa giúp hình */
.tv-warn{display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.tv-fixed{font-size:12px;color:var(--ok)}
.tf{display:grid;grid-template-columns:220px 1fr;gap:18px}
.tf-p{border-radius:14px;overflow:hidden;background:var(--sunk);align-self:start}.tf-p .mp-prev{width:100%;display:block}
.tf-r h4{margin:0 0 8px;font-size:13.5px}
.tf-o{display:flex;gap:12px;align-items:center;width:100%;text-align:left;border:1px solid var(--line);background:var(--surface);color:var(--fg);border-radius:14px;padding:10px 12px;margin-bottom:8px;cursor:pointer}
.tf-o:hover{border-color:var(--gold)}.tf-o b{display:block;font-size:14px}.tf-o small{color:var(--muted);font-size:12px}
.tf-i{width:34px;height:34px;border-radius:10px;background:var(--gold-soft);color:var(--gold);display:grid;place-items:center;font-size:18px;flex:none}
@media(max-width:700px){.tf{grid-template-columns:1fr}}
/* do82: Làm ngay + phản biện gợi ý */
.rp-todo>div{display:flex;flex-direction:column}
.rp-do{margin-top:auto;padding-top:10px;display:flex;gap:6px;flex-wrap:wrap;align-items:center}.rp-do .btn{font-size:12.5px}
.rp-err{color:var(--bad);font-size:11.5px}
.rp-chat{margin-top:18px;border-top:1px solid var(--line);padding-top:14px}.rp-chat h4{margin:0 0 8px;font-size:14px}
.rp-chl{display:flex;flex-direction:column;gap:8px;max-height:320px;overflow:auto;margin-bottom:10px}
.rp-cm{display:flex}.rp-cm span{max-width:78%;padding:9px 12px;border-radius:14px;font-size:13.5px;line-height:1.55;background:var(--sunk)}
.rp-cm.me{justify-content:flex-end}.rp-cm.me span{background:var(--gold);color:#0b0b0a;border-bottom-right-radius:4px}.rp-cm.xu span{border-bottom-left-radius:4px}
.rp-chf{display:flex;gap:8px;align-items:flex-end}.rp-chf textarea{flex:1;min-height:56px}.rp-chf .btn{white-space:nowrap}
.rp-sp{border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin-top:10px}.rp-sph{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px}
.rp-spb{font-size:13.5px;line-height:1.65;max-height:360px;overflow:auto}
.rp-st{margin:0;padding-left:20px;font-size:13.5px;line-height:1.7}
.rp-note{display:flex;gap:10px;align-items:flex-start;justify-content:space-between;padding:8px 0;border-top:1px solid var(--line)}.rp-note span{font-size:13.5px}.rp-note small{display:block;color:var(--muted);font-size:11.5px}
@media(max-width:700px){.rp-chf{flex-direction:column;align-items:stretch}}
.gy-pair{display:inline-flex;gap:6px;align-items:center;flex-wrap:wrap}
/* bo83: chạy ads bằng bài đã đăng */
.rp-pow{display:flex;align-items:center;gap:8px;border-top:1px solid var(--line)}.rp-pow:first-of-type{border-top:0}.rp-pow .rp-po{flex:1;min-width:0;border-top:0}
.rp-boost{flex:none;white-space:nowrap;font-size:12px!important}
.ct-boost{margin-top:10px;width:100%;justify-content:center}
.rn-boost{display:flex;gap:14px;align-items:flex-start;border:1px solid var(--gold);background:linear-gradient(135deg,var(--gold-soft),transparent);border-radius:16px;padding:14px 16px;margin:12px 0 16px}
.rn-boost img{width:96px;height:96px;object-fit:cover;border-radius:12px;flex:none}.rn-boost b{font-size:15px}.rn-boost p{margin:6px 0;font-size:13.5px;line-height:1.55}.rn-boost small{color:var(--muted);font-size:12px}
#rnGoal{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))!important}#rnGoal button[hidden]{display:none!important}#rnGoal button[data-g="engage"]::before{content:"👍"}
.rp-cm-me{justify-content:flex-end}.rp-cm-me span{background:var(--gold);color:#0b0b0a;border-bottom-right-radius:4px}.rp-cm-bot span{border-bottom-left-radius:4px}
.rp-do .btn.gold{font-weight:700}
/* dr84: Thư viện ↔ Google Drive */
.tv-dr{border:1px solid var(--line);border-radius:18px;padding:14px 16px;margin:16px 0 0;background:var(--surface)}
.tv-dr-g{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px;align-items:center}
.tv-dr-c{background:var(--sunk);border-radius:12px;padding:10px 14px;display:flex;flex-direction:column;gap:3px;min-width:0}
.tv-dr-c small{font-size:11.5px;color:var(--muted)}.tv-dr-c b{font-size:17px}.tv-dr-c b em{font-style:normal;font-size:12.5px;color:var(--muted);font-weight:500}
.tv-dr-bar{display:block;height:6px;border-radius:6px;background:color-mix(in srgb,var(--gold) 15%,transparent);overflow:hidden}.tv-dr-bar i{display:block;height:100%;background:var(--ok)}.tv-dr-bar.warn i{background:var(--gold)}.tv-dr-bar.bad i{background:var(--bad)}
.tv-dr-a{display:flex;flex-direction:column;gap:6px}.tv-dr-a .btn{white-space:nowrap}
.tv-drv{position:absolute;left:8px;bottom:8px;background:#1a73e8;color:#fff;font-size:11px;font-weight:700;padding:3px 8px;border-radius:6px}.tv-drv.sm{left:auto;right:8px;bottom:8px;padding:2px 6px}
.tv-src{position:absolute;left:8px;top:36px;background:rgba(11,11,10,.75);color:#f3d68a;font-size:10.5px;font-weight:700;padding:2px 7px;border-radius:6px}
.tv-c.arc .tv-th img{filter:grayscale(.35) brightness(.8)}
@media(max-width:1000px){.tv-dr-g{grid-template-columns:1fr 1fr}}
.tv-act{flex-wrap:wrap}.tv-act .btn:not(.gold){padding-left:9px;padding-right:9px}
/* ls85: bài học gợi ý rút ra từ phản biện */
.rp-chh{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.rp-chh h4{margin:0!important}
.rp-ls{margin:0 0 12px;border:1px solid rgba(194,160,86,.35);background:rgba(194,160,86,.07);border-radius:12px;padding:10px 14px}
.rp-ls summary{cursor:pointer;font-size:13px;color:var(--muted);list-style:none}.rp-ls summary::-webkit-details-marker{display:none}
.rp-ls summary b{color:var(--gold,#c2a056);margin-right:4px}
.rp-ls ul{margin:10px 0 8px;padding-left:18px;font-size:13.5px;line-height:1.55}.rp-ls li{margin:3px 0}
.rp-ls a{font-size:12.5px;color:var(--gold,#c2a056)}
.rp-note textarea{flex:1;min-height:44px;font-size:13.5px;resize:vertical}
.rp-note-add{border-top:1px dashed var(--line);margin-top:6px}
/* tk86: kết quả việc Xưởng đã làm */
.tk{display:flex;flex-direction:column;gap:12px}
.tk-job small,.tk-why small{display:block;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:3px}
.tk-job b{font-size:15px;line-height:1.5}
.tk-why{display:flex;gap:12px;align-items:flex-start;border:1px solid rgba(194,160,86,.45);background:rgba(194,160,86,.09);border-radius:14px;padding:12px 16px}
.tk-why>span{font-size:22px;line-height:1}.tk-why p{margin:0;font-size:14.5px;line-height:1.6}
.tk-sum{border-left:3px solid var(--gold,#c2a056);padding:2px 0 2px 14px}.tk-sum p{margin:0 0 6px;font-size:14px;line-height:1.6}.tk-sum ul{margin:0;padding-left:18px;font-size:13.5px;line-height:1.65}
.tk-h{margin:8px 0 0;font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.tk-sp{border:1px solid var(--line);border-radius:14px;overflow:hidden}
.tk-sp summary{display:flex;align-items:center;gap:10px;padding:12px 14px;cursor:pointer;list-style:none}.tk-sp summary::-webkit-details-marker{display:none}
.tk-sp summary b{flex:1;font-size:14px}.tk-sp[open] summary{border-bottom:1px solid var(--line)}
.tk-n{flex:none;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;background:rgba(194,160,86,.18);color:var(--gold,#c2a056)}
.tk-b{padding:12px 16px 14px;font-size:13.5px;line-height:1.65}
.md p{margin:0 0 10px}.md ul,.md ol{margin:0 0 10px;padding-left:20px}.md li{margin:2px 0}.md h5{margin:12px 0 6px;font-size:13.5px}
.md-tw{overflow-x:auto;margin:4px 0 12px;border:1px solid var(--line);border-radius:10px}
.md-t{border-collapse:collapse;width:100%;font-size:12.5px}.md-t th,.md-t td{padding:7px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.md-t th{background:rgba(194,160,86,.1);font-weight:600;white-space:nowrap}.md-t tr:last-child td{border-bottom:0}
.tk-st{display:flex;flex-direction:column;gap:6px}.tk-st label{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;line-height:1.55;padding:8px 12px;border:1px solid var(--line);border-radius:10px;cursor:pointer}
.tk-st input{margin-top:3px;accent-color:#c2a056}.tk-st input:checked+span{text-decoration:line-through;opacity:.55}
/* tk87: khung kết quả cuộn trong, nút cố định ở chân; thẻ việc Xưởng làm luôn */
.modal-card.xwide:has(.tk){padding-bottom:0}
.modal-card.xwide #modalBody:has(.tk){overflow-y:auto;padding-right:6px;margin-right:-6px}
.modal-card.xwide:has(.tk) .modal-actions{position:sticky;bottom:0;margin:0 -22px;padding:12px 22px 16px;background:var(--surface);border-top:1px solid var(--line);z-index:2}
.tk-acts{display:flex;flex-direction:column;gap:10px}
.tk-act{display:grid;grid-template-columns:112px 1fr auto;gap:14px;align-items:center;border:1.5px solid rgba(194,160,86,.55);background:linear-gradient(135deg,rgba(194,160,86,.1),rgba(194,160,86,.02));border-radius:14px;padding:14px 16px}
.tk-gy{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.tk-gy span{font-size:26px;line-height:1}.tk-gy small{font-size:11px;color:var(--muted);line-height:1.3}
.tk-ab{display:flex;flex-direction:column;gap:6px;min-width:0}.tk-ab b{font-size:14px;line-height:1.45}
.tk-kv{display:flex;flex-wrap:wrap;gap:6px}.tk-kv span{font-size:12px;padding:3px 9px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid var(--line)}
.tk-ad{margin:0;font-size:12.5px;line-height:1.55;color:var(--muted);border-left:2px solid var(--line);padding-left:10px}
.tk-act .btn{white-space:nowrap}
@media (max-width:760px){.tk-act{grid-template-columns:1fr}.tk-gy{flex-direction:row;justify-content:flex-start}}
.tk-act .btn.gold,.rp-do .btn.gold{background:#d9b45c;border-color:#d9b45c;color:#0b0b0a}.tk-act .btn.gold:hover{filter:brightness(1.06)}
#adRefresh.busy{opacity:1;color:var(--gold,#c2a056);border-color:var(--gold,#c2a056)}
.spin-ic{display:inline-block;animation:spin88 .9s linear infinite}@keyframes spin88{to{transform:rotate(360deg)}}
/* wt89: Đang chờ anh */
.wt-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#e0a33a;margin-right:8px;box-shadow:0 0 0 3px rgba(224,163,58,.18)}
.hb-tk-h em.wt{background:rgba(224,163,58,.18);color:#e8b04a}
.hb-wt{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:8px;margin-top:8px}
.hb-wt-i{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.02);text-decoration:none;color:inherit;transition:border-color .15s,background .15s}
.hb-wt-i:hover{border-color:rgba(194,160,86,.6);background:rgba(194,160,86,.06)}
.hb-wt-ic{flex:none;width:28px;height:28px;border-radius:8px;display:grid;place-items:center;font-size:14px;background:rgba(255,255,255,.06)}
.hb-wt-b{display:flex;flex-direction:column;gap:2px;min-width:0}
.hb-wt-b em{font-style:normal;font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.hb-wt-b b{font-size:13px;line-height:1.4;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.hb-wt-b small{font-size:11.5px;color:var(--muted);line-height:1.4;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.hb-wt-i.ap em{color:#e8b04a}.hb-wt-i.ap .hb-wt-ic{background:rgba(224,163,58,.16)}
.hb-wt-i.er em{color:#ef6b6b}.hb-wt-i.er .hb-wt-ic{background:rgba(239,107,107,.16);color:#ef6b6b;font-weight:700}
.hb-wt-i.fx em{color:#7fb6ff}.hb-wt-i.nw em{color:#c2a056}.hb-wt-i.st em{color:var(--muted)}
/* bt90: mọi nút vàng chữ trắng, nổi rõ, cách nhau rõ ràng (anh Kenzo 28/10) */
html body .btn{background:#b0832f!important;border:1px solid #c79a45!important;color:#fff!important;font-weight:700;text-shadow:0 1px 1px rgba(0,0,0,.25);box-shadow:0 2px 0 rgba(0,0,0,.25),0 4px 12px -6px rgba(176,131,47,.7);filter:none}
html body .btn:hover:not(:disabled){background:#c4943a!important;border-color:#dcae5a!important;color:#fff!important}
html body .btn:active:not(:disabled){transform:translateY(1px);box-shadow:0 1px 0 rgba(0,0,0,.25)}
html body .btn:focus-visible{outline:2px solid #f0cf86;outline-offset:2px}
html body .btn.ghost{background:#8f6a26!important;border-color:#b0832f!important}
html body .btn.ghost:hover:not(:disabled){background:#a67b2d!important}
html body .btn.danger{background:#c0453a!important;border-color:#d4574b!important;color:#fff!important;box-shadow:0 2px 0 rgba(0,0,0,.25)}
html body .btn:disabled{background:#5c5040!important;border-color:#6b5d48!important;color:#e8dcc4!important;opacity:.75;box-shadow:none;text-shadow:none}
html body .btn .gy-lg{background:rgba(0,0,0,.25);color:#fff}
.row-wrap,.hb-acts,.modal-actions,.rp-do,.gy-pair{gap:10px!important}
/* rc91: dải số tổng chiến dịch nổi bật */
.rc-sum>div{background:linear-gradient(145deg,rgba(194,160,86,.22),rgba(194,160,86,.06))!important;border:1px solid rgba(194,160,86,.55);border-radius:14px;padding:13px 16px;position:relative;overflow:hidden}
.rc-sum>div::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#d9b45c}
.rc-sum small{color:#e8cf95!important;font-weight:600;letter-spacing:.02em}
.rc-sum b{font-size:22px!important;color:#fff;display:block;margin-top:2px}
.rc-sum em{color:#e8cf95!important}
.rc-sum span{color:#e8cf95!important;opacity:.85}
html[data-theme="light"] .rc-sum b{color:#2b2112}html[data-theme="light"] .rc-sum small,html[data-theme="light"] .rc-sum em,html[data-theme="light"] .rc-sum span{color:#8a6420!important}
.rc-old-bar{display:flex;align-items:center;gap:12px;margin:12px 0 4px}.rc-old-q{flex:1;max-width:420px}
.rc-old-more{margin:12px auto 4px;display:flex}
/* dr92: nút đen viền vàng, khung chọn file upload Drive, lấy từ Drive trong khung chọn */
html body .btn.btn-dk{background:#0f0e0c!important;border:1.5px solid #d9b45c!important;color:#fff!important;text-shadow:none;box-shadow:none}
html body .btn.btn-dk:hover:not(:disabled){background:#1d1a14!important}
.up-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px}#upN{margin-left:auto}
.up-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;max-height:52vh;overflow-y:auto;padding:2px}
.up-it{position:relative;display:flex;flex-direction:column;gap:4px;padding:6px;border:1.5px solid var(--line);border-radius:12px;cursor:pointer;background:rgba(255,255,255,.02)}
.up-it.on{border-color:#d9b45c;background:rgba(217,180,92,.1)}
.up-it input{position:absolute;top:10px;left:10px;z-index:2;width:18px;height:18px;accent-color:#d9b45c}
.up-th{display:block;aspect-ratio:1;border-radius:8px;overflow:hidden;background:#000}.up-th img,.up-th video{width:100%;height:100%;object-fit:cover}
.up-nm{font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.up-it small{font-size:11px;color:var(--muted)}
.mp-drv{display:flex;gap:10px;align-items:center;margin:4px 0 2px;flex-wrap:wrap}.mp-drv input{flex:1;min-width:260px}
.mp-tile.mp-new{box-shadow:0 0 0 2px #3fbf7f inset}.mp-tile.mp-new .mp-nm::before{content:"Mới · ";color:#3fbf7f;font-weight:700}
/* mp94: ô chọn to hơn, tick xanh khi chọn, nút xem lớn */
.mp-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))!important;gap:12px!important}
.mp-tile .mp-th{aspect-ratio:1/1;height:auto!important}
.mp-tile.on{border-color:transparent!important;background:var(--sunk)!important}
.mp-tile.on .mp-th{outline:3px solid #2fb36b;outline-offset:-3px;border-radius:8px}
.mp-ck{position:absolute;top:12px;right:12px;z-index:3;width:28px;height:28px;border-radius:50%;display:none;place-items:center;background:#2fb36b;color:#fff;font-weight:800;font-size:14px;box-shadow:0 2px 8px rgba(0,0,0,.4);border:2px solid #fff}
.mp-tile.on .mp-ck{display:grid}
.mp-tile .mp-no{display:none!important}
.mp-zoom{position:absolute;top:12px;left:12px;z-index:3;width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:rgba(0,0,0,.6);color:#fff;font-size:15px;opacity:0;transition:opacity .15s;cursor:zoom-in}
.mp-tile:hover .mp-zoom,.mp-tile:focus-within .mp-zoom{opacity:1}
@media (hover:none){.mp-zoom{opacity:.9}}
.rn-sep{margin:6px 0}
/* pv95: dựng thử 10 giây */
.rd-go{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.pv{display:grid;grid-template-columns:minmax(220px,340px) 1fr;gap:18px;border:1.5px solid rgba(217,180,92,.6);background:rgba(217,180,92,.07);border-radius:16px;padding:14px;margin:6px 0 14px}
.pv-v video{width:100%;max-height:420px;border-radius:10px;background:#000;display:block}
.pv-b{display:flex;flex-direction:column;gap:8px}.pv-b h3{margin:0;font-size:16px}
.pv-n{margin:0;padding-left:18px;font-size:12.5px;color:var(--muted)}
@media(max-width:760px){.pv{grid-template-columns:1fr}}
html body .btn.btn-dk:disabled{background:#2a251d!important;border-color:#5c5040!important;color:#a99c86!important;opacity:.75}
/* fd99: danh mục kho footage */
.fd-list{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 8px}
.fd-f{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;padding:7px 12px;border-radius:10px;border:1.5px solid var(--line);background:rgba(255,255,255,.03);color:inherit;cursor:pointer;font:inherit;font-size:13px}
.fd-f em{font-style:normal;color:var(--muted);font-size:12px}.fd-f small{flex-basis:100%;font-size:11px;color:var(--muted)}
.fd-f.auto{border-color:#2fb36b}.fd-f.on{border-color:#2fb36b;background:rgba(47,179,107,.14)}.fd-f.on::before{content:"✓";color:#2fb36b;font-weight:800}
.fd-row{display:grid;grid-template-columns:1fr 1.6fr 1.2fr auto;gap:8px;margin-bottom:8px}
@media(max-width:760px){.fd-row{grid-template-columns:1fr}}
/* fd101: tag danh mục */
.fd-sub{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:6px 0 2px}.fd-sub span{text-transform:none;letter-spacing:0;font-weight:400}
.fd-dir{display:inline-flex;gap:6px;align-items:center;padding:6px 10px;border-radius:9px;background:rgba(255,255,255,.04);font-size:13px}.fd-dir em{font-style:normal;color:var(--muted);font-size:12px}
.fd-tag{display:inline-flex;align-items:stretch;border:1.5px solid var(--line);border-radius:999px;overflow:hidden;background:rgba(255,255,255,.03)}
.fd-tag button{background:none;border:0;color:inherit;font:inherit;font-size:13px;padding:6px 10px;cursor:pointer}.fd-tag button em{font-style:normal;color:var(--muted);font-size:12px;margin-left:4px}
.fd-tag .fd-tx{padding:6px 9px 6px 2px;color:var(--muted);opacity:.6}.fd-tag .fd-tx:hover{opacity:1;color:#ef6b6b}
.fd-tag.auto{border-color:#2fb36b}.fd-tag.on{border-color:#2fb36b;background:rgba(47,179,107,.16)}.fd-tag.on [data-tag]::before{content:"✓ ";color:#2fb36b;font-weight:800}
.fd-new{display:inline-flex;gap:6px;align-items:center;flex:1;min-width:300px}.fd-new input{flex:1;min-width:0;padding:6px 10px;font-size:13px}
.fd-row{grid-template-columns:1fr 1.8fr auto!important}
/* fb102: duyệt kho footage */
.fb-top{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.fb-top input{flex:1;min-width:220px}
.fb-tabs{flex-wrap:wrap}.fb-tabs small{opacity:.7;margin-left:3px}
.fb-sug{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:4px 0}
.fb-list{overflow-y:auto;max-height:62vh;display:flex;flex-direction:column;gap:6px}
.fb-g{border:1px solid var(--line);border-radius:10px;padding:8px 12px}.fb-g summary{cursor:pointer;font-size:13.5px}.fb-g summary em{font-style:normal;color:var(--muted);font-size:12px;margin-left:4px}
.fb-t{font-size:11px;color:#2fb36b;margin-left:6px}
.fb-fs{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.fb-f{font-size:12px;padding:4px 8px;border-radius:6px;background:rgba(255,255,255,.04)}.fb-f em{font-style:normal;color:var(--muted)}
/* rd105: bước Dựng gọn hơn + khung duyệt bên phải */
#tab-dung .fmtpick .emodes{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
#tab-dung .fmtpick .emode label{padding:8px 10px;border-radius:10px;gap:2px}
#tab-dung .fmtpick .emode label b{font-size:12.5px}
#tab-dung .fmtpick .emode label span{font-size:11px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#tab-dung .fmtpick .emode input:checked+label span{-webkit-line-clamp:unset}
#tab-dung .fmtpick .formats{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
#tab-dung .fmtpick .fmt label{padding:8px 30px 8px 10px;font-size:12.5px}
#tab-dung .fmtpick .astyle .small,#tab-dung .fmtpick .fmtsel .small{margin:8px 0 4px!important}
#tab-dung .dur-row{margin-top:8px}
.rd-sum{position:sticky;top:76px;margin-top:16px;border:1.5px solid rgba(217,180,92,.6);background:rgba(217,180,92,.07);border-radius:14px;padding:14px 16px}
.rd-sum-h{font-weight:800;font-size:14px;margin-bottom:8px}
.rd-sum ul{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:5px}.rd-sum li{display:flex;justify-content:space-between;gap:10px;font-size:13px}.rd-sum li span{color:var(--muted)}.rd-sum li b{text-align:right}
.rd-sum-b{display:flex;flex-direction:column;gap:8px}.rd-sum-b .btn{width:100%;padding:11px 14px}
@media(max-width:980px){#tab-dung .fmtpick .emodes,#tab-dung .fmtpick .formats{grid-template-columns:repeat(2,minmax(0,1fr))}.rd-sum{position:static}}
/* r72 · Thành phẩm chính thức + góp ý ở Dựng */
.rv-sec{margin-bottom:18px}
.rv-sec .eyebrow,.tp-bar .eyebrow{margin-bottom:4px}
.rv-gen{margin-top:14px}
.rv-gen summary{cursor:pointer;font-weight:700}
.tp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.tp-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;min-width:0}
.tp-v{background:#000;aspect-ratio:16/10;display:flex}
.tp-v video{width:100%;height:100%;object-fit:contain;background:#000}
.tp-i{padding:10px 12px 12px;display:flex;flex-direction:column;gap:6px;min-width:0}
.tp-n{font-weight:700;font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tp-tag{display:inline-block;font-size:10.5px;font-weight:800;letter-spacing:.04em;padding:2px 6px;border-radius:5px;margin-right:6px;border:1px solid var(--gold);color:var(--gold);vertical-align:1px}
.tp-tag.k4{background:var(--gold);color:#111}
/* r73 · chọn thành phẩm: upload Drive / xoá VPS */
.tp-sel{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 12px;padding:10px 14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);position:sticky;top:0;z-index:5}
.tp-sel .tp-sp{flex:1}
.tp-card{position:relative}
.tp-card.on{border-color:var(--gold);box-shadow:0 0 0 2px var(--gold)}
.tp-ck{position:absolute;top:8px;left:8px;z-index:2;background:rgba(0,0,0,.55);border-radius:7px;padding:5px 6px;line-height:0;cursor:pointer}
.tp-ck input{width:18px;height:18px;accent-color:#22c55e;cursor:pointer}
.tp-dr{position:absolute;top:8px;right:8px;z-index:2;font-size:11px;font-weight:700;color:#fff;background:rgba(34,140,90,.9);padding:3px 8px;border-radius:20px}
/* r74 · kho nhạc nền, SFX, meme */
.fd-row{grid-template-columns:150px 1fr 1.8fr auto!important}
@media(max-width:760px){.fd-row{grid-template-columns:1fr!important}}
.fd-kc{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 10px}
.fd-kc span{font-size:12.5px;padding:4px 10px;border-radius:20px;border:1px solid var(--line);background:var(--surface)}
.fd-kc span.off{opacity:.5}
.fd-kc b{color:var(--gold)}
.fb-kinds{margin-bottom:10px}
.fb-kinds button.on{background:var(--gold);color:#fff}
/* r75 · viết lại kịch bản */
.sc-gy{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:10px 0 4px}
.sc-gy .sc-sp{flex:1}
/* r76 · chat góp ý kịch bản */
.sc-chat{margin-top:14px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface);overflow:hidden}
.sc-ch-h{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--line)}
.sc-ch-h .small{flex:1}
.sc-log{max-height:340px;overflow:auto;padding:12px;display:flex;flex-direction:column;gap:10px}
.scx{display:flex;flex-direction:column;max-width:88%}
.scx.mine{align-self:flex-end;align-items:flex-end}
.scx.xw{align-self:flex-start}
.scb{padding:9px 12px;border-radius:12px;font-size:13.5px;line-height:1.5;background:var(--bg,#f6f3ec);border:1px solid var(--line)}
.scx.mine .scb{background:var(--gold);color:#fff;border-color:var(--gold)}
.scx.err .scb{border-color:var(--bad,#d33);color:var(--bad,#d33)}
.scx-t{font-size:11px;opacity:.6;margin-top:3px}
.scx-a{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px}
.scx-a details summary{cursor:pointer;font-size:12.5px}
.scx-a pre{white-space:pre-wrap;font-family:inherit;font-size:12.5px;max-height:220px;overflow:auto;margin:6px 0 0;padding:8px;border-radius:8px;background:rgba(0,0,0,.04)}
.sc-chf{display:flex;gap:8px;padding:10px 12px;border-top:1px solid var(--line);align-items:flex-end}
.sc-chf textarea{flex:1;min-height:44px;resize:vertical}
/* r77 · hàng nút kịch bản: một hàng, cao bằng nhau, Chốt màu xanh */
.sc-gy{flex-wrap:wrap;gap:6px}
.sc-gy .gy-pair{display:inline-flex;gap:6px}
.sc-gy .btn{height:34px;min-height:34px;padding:0 11px;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;font-size:12.5px;line-height:1;box-sizing:border-box}
.sc-gy .btn.sc-ok{background:#23985a;border-color:#23985a;color:#fff;box-shadow:0 2px 0 #18703f}
.sc-gy .btn.sc-ok:hover{background:#1f8a52}
#tab-kich-ban .sc-gy .btn.sc-ok,#tab-kich-ban .sc-gy button.btn.sc-ok{background:#23985a!important;background-image:none!important;border-color:#23985a!important;color:#fff!important;box-shadow:0 2px 0 #18703f!important}
#tab-kich-ban .sc-gy .btn.sc-ok:hover{background:#1f8a52!important}
/* r78 · ngắt dòng cân đối, tránh dòng mồ côi */
p,li,.hint,.small,.muted,figcaption,label,summary,.scb,td{text-wrap:pretty}
h1,h2,h3,h4,.eyebrow,.btn,button,.cb-t b{text-wrap:balance}
#tab-kich-ban .sc-hint{margin:8px 0 0;font-size:12.5px}
#tab-kich-ban .sc-chat{margin-top:12px}
#tab-kich-ban .sc-ch-h{flex-wrap:nowrap;padding:8px 12px}
#tab-kich-ban .sc-ch-h b{white-space:nowrap}
#tab-kich-ban .sc-ch-h .small{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#tab-kich-ban .sc-ch-h .btn{height:30px;min-height:30px;padding:0 10px;flex:none}
#tab-kich-ban .sc-log{padding:10px 12px;gap:8px;max-height:300px}
#tab-kich-ban .sc-empty{margin:2px 0;text-align:center}
#tab-kich-ban .sc-chf{align-items:stretch;padding:8px 12px}
#tab-kich-ban .sc-chf textarea{min-height:44px;height:44px;padding:10px 12px;line-height:1.4}
#tab-kich-ban .sc-chf .btn{height:auto;min-height:44px;padding:0 16px;white-space:nowrap;align-self:stretch}
@media(max-width:560px){#tab-kich-ban .sc-ch-h .small{display:none}}
#tab-kich-ban .sc-hint{text-wrap:balance}
#tab-kich-ban .sc-gy .btn,#tab-kich-ban .sc-gy .gy-pair{margin:0}
#tab-kich-ban .sc-gy{gap:8px}
#tab-kich-ban .sc-gy .gy-pair{gap:8px}
#tab-kich-ban .sc-hint span{display:block}
#tab-dung .rd-lang{margin:0 0 10px}#tab-dung .rd-lang select{width:100%}
/* r82 · thanh tiến độ một hàng */
.lp-row{display:flex;align-items:center;gap:12px;min-width:0}
.lp-row .lp-lb{flex:0 1 auto;max-width:55%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lp-row .lp-bar{flex:1 1 120px;min-width:80px;display:flex;align-items:center}
.lp-row .lp-bar .pbar{flex:1;width:auto;margin:0}
.lp-row .lp-bar .pbar-n{display:none}
.lp-row .lp-pct{flex:none}
/* r83 · tab Dựng: thẻ bằng nhau, hàng lối thẳng */
#tab-dung .rd-grid{gap:28px}
#tab-dung .rd-col h3{margin:0 0 10px}
#tab-dung .fmtpick .fp-h{font-size:12.5px;font-weight:700;margin:16px 0 8px;display:flex;align-items:baseline;gap:8px}
#tab-dung .fmtpick .fp-h span{font-weight:400;color:var(--muted);font-size:12px}
#tab-dung .fmtpick .astyle .small,#tab-dung .fmtpick .fmtsel>.small{display:none}
#tab-dung .fmtpick .emodes{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:1fr;gap:8px}
#tab-dung .fmtpick .emodes.ani3,#tab-dung .fmtpick .formats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
#tab-dung .fmtpick .emode label{padding:10px 12px;border-radius:10px;gap:4px;min-height:64px;justify-content:flex-start}
#tab-dung .fmtpick .emode label b{font-size:12.5px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#tab-dung .fmtpick .emode label span{font-size:11.5px;line-height:1.35;-webkit-line-clamp:2!important}
#tab-dung .fmtpick .emode input:checked+label span{-webkit-line-clamp:2!important}
#tab-dung .fmtpick .fmt label{min-height:48px;padding:8px 32px 8px 12px;display:flex;align-items:center;gap:10px}
#tab-dung .fmtpick .fp-opts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:16px}
#tab-dung .fmtpick .fp-opts.one{grid-template-columns:minmax(0,1fr)}
#tab-dung .fmtpick .fp-f{display:flex;flex-direction:column;gap:6px;min-width:0}
#tab-dung .fmtpick .fp-f label{font-size:12.5px;font-weight:700}
#tab-dung .fmtpick .fp-f select{width:100%;height:40px}
#tab-dung .rd-checks{margin-top:10px;display:flex;flex-direction:column;gap:8px}
@media(max-width:1180px){#tab-dung .fmtpick .emodes{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){#tab-dung .fmtpick .emodes,#tab-dung .fmtpick .emodes.ani3,#tab-dung .fmtpick .formats,#tab-dung .fmtpick .fp-opts{grid-template-columns:repeat(2,minmax(0,1fr))}}
#tab-dung .fmtpick .emodes{grid-template-columns:repeat(auto-fill,minmax(132px,1fr))!important}
#tab-dung .fmtpick .emode label b{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#tab-dung .fmtpick .emode label{min-height:70px}
@media(max-width:700px){#tab-dung .fmtpick .emodes{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
#tab-dung .fmtpick .emodes.ani3{grid-template-columns:repeat(3,minmax(0,1fr))!important}
/* r84 · Xưởng bài viết: Brief dạng thẻ như Xưởng video, kho hình Drive */
.pv-media .pv-kho{grid-column:1/-1}
.pv-brief3 .pvb-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:28px;align-items:start}
@media(max-width:1000px){.pv-brief3 .pvb-grid{grid-template-columns:minmax(0,1fr)}}
.pv-brief3 .pvb-col{min-width:0}
.pv-wr-h{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}
.pv-wr-h label{margin:0}
.pv-wr-b .gy-pair{gap:8px!important}
.pv-wr textarea{width:100%;line-height:1.55}
.pv-wr #bPSt{margin:6px 0 0}
.pv-brief3 .pvb-h{margin:0 0 10px;font-size:16px}
.pv-brief3 .fp-h{font-size:12.5px;font-weight:700;margin:16px 0 8px;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.pv-brief3 .fp-h span{font-weight:400;color:var(--muted);font-size:12px}
.pv-brief3 .pvb-col>.fp-h:first-of-type{margin-top:0}
.pv-brief3 .pc-grid{display:grid;gap:8px;grid-auto-rows:1fr}
.pv-brief3 .pc-grid.c4{grid-template-columns:repeat(4,minmax(0,1fr))}
.pv-brief3 .pc-grid.c5{grid-template-columns:repeat(5,minmax(0,1fr))}
.pv-brief3 .pc-grid.pf{grid-auto-rows:auto}
@media(max-width:1250px){.pv-brief3 .pc-grid.c5{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.pv-brief3 .pc-grid.c4,.pv-brief3 .pc-grid.c5{grid-template-columns:repeat(2,minmax(0,1fr))}}
.pv-brief3 .emode.pc label{padding:10px 12px;border-radius:10px;gap:4px;min-height:66px;position:relative}
.pv-brief3 .emode.pc label b{font-size:12.5px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pv-brief3 .emode.pc label span{font-size:11.5px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pv-brief3 .emode.pc .pc-i{font-style:normal;font-size:15px;line-height:1;opacity:.75;margin-bottom:2px}
.pv-brief3 .emode.pc input:checked+label::after{content:'✓';position:absolute;top:8px;right:9px;width:18px;height:18px;border-radius:5px;background:var(--gold,#e0b04a);color:#fff;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center}
.pv-brief3 .emode.pc.sz label{align-items:flex-start}
.pv-brief3 .emode.pc.sz .frame{display:block;border:1.8px solid currentColor;border-radius:3px;opacity:.7;margin:2px 0 4px}
.pv-brief3 .emode.pc.mini label{min-height:42px;justify-content:center}
.pv-brief3 .fp-opts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:16px}
@media(max-width:700px){.pv-brief3 .fp-opts{grid-template-columns:minmax(0,1fr)}}
.pv-brief3 .fp-f{display:flex;flex-direction:column;gap:6px;min-width:0}
.pv-brief3 .fp-f label{font-size:12.5px;font-weight:700}
.pv-brief3 .fp-f label small{font-weight:400;color:var(--muted)}
.pv-brief3 .fp-f select{width:100%;height:40px}
.pv-brief3 .pvb-col .field{margin-bottom:12px}
.pv-brief3 .pv-sum{margin-top:6px}
.pv-brief.pv-brief3{max-width:none;display:block}
.pv-brief3 .emode.pc label b{padding-right:22px}
.pv-brief3 .emode.pc.sz label b,.pv-brief3 .emode.pc.sz label span{padding-right:0}
/* r85 · chọn nhiều bài viết: tải, đẩy Drive, xóa */
.pv-card{position:relative}
.pv-card .pv-ck{position:absolute;top:10px;left:10px;z-index:3;background:rgba(0,0,0,.55);border-radius:8px;padding:6px 7px;line-height:0;cursor:pointer;opacity:.85}
.pv-card .pv-ck input{width:18px;height:18px;accent-color:#22c55e;cursor:pointer;margin:0}
.pv-card.sel{border-color:var(--gold,#e0b04a);box-shadow:0 0 0 2px var(--gold,#e0b04a)}
.pv-selbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 12px;padding:10px 14px;border:1px solid var(--gold,#e0b04a);border-radius:12px;background:color-mix(in srgb,var(--gold,#e0b04a) 10%,transparent);position:sticky;top:8px;z-index:6}
.pv-selbar .n{font-weight:700;margin-right:auto}
/* r86 · bảng dự án Xưởng video: 6 cột vừa màn hình, thẻ gọn */
#projects .kanban{grid-auto-columns:minmax(190px,1fr);gap:10px}
.kanban .col{padding:10px;display:flex;flex-direction:column;gap:8px;min-height:180px}
.kanban .col-h{padding:0 2px 4px;gap:6px}
.kanban .col-h .n{min-width:22px;height:20px;padding:0 6px;border-radius:10px;background:var(--sunk,rgba(0,0,0,.06));display:inline-flex;align-items:center;justify-content:center}
.kb-empty{border:1.5px dashed var(--line);border-radius:10px;padding:14px 8px;text-align:center;font-size:12px;color:var(--muted);opacity:.7}
.kb-card{gap:7px;padding:10px 11px}
.kb-card .top-row{align-items:flex-start;gap:8px}
.kb-card .top-row input{margin-top:2px;flex:none}
.kb-card .ttl{font-size:13.5px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.kb-card .meta{font-size:11.5px;gap:2px 8px;padding-left:24px}
.kb-run{display:flex;flex-direction:column;gap:5px;padding:8px 9px;border-radius:9px;background:color-mix(in srgb,var(--gold,#e0b04a) 9%,transparent);border:1px solid color-mix(in srgb,var(--gold,#e0b04a) 30%,transparent)}
.kb-run.bad{background:color-mix(in srgb,var(--bad,#d33) 8%,transparent);border-color:color-mix(in srgb,var(--bad,#d33) 35%,transparent)}
.kb-rh{display:flex;align-items:center;gap:6px;font-size:12px;min-width:0}
.kb-rh b{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:700}
.kb-pct{font:700 12px var(--mono);flex:none}
.kb-dot{width:7px;height:7px;border-radius:50%;background:var(--muted);flex:none}
.kb-dot.run{background:var(--gold,#e0b04a);box-shadow:0 0 0 3px color-mix(in srgb,var(--gold,#e0b04a) 25%,transparent);animation:kbp 1.6s infinite}
.kb-dot.bad{background:var(--bad,#d33)}
@keyframes kbp{50%{opacity:.4}}
.kb-bar{display:flex;align-items:center}
.kb-bar .pbar{flex:1;width:auto;margin:0}
.kb-bar .pbar-n{display:none}
.kb-step{font-size:11.5px;color:var(--muted);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.toolbar .seg button{white-space:nowrap}
.toolbar{flex-wrap:wrap;gap:10px}
.toolbar .row-wrap{flex:1;justify-content:flex-end;flex-wrap:nowrap}
.toolbar .search{flex:1;max-width:320px;min-width:160px}
#projects .kanban{grid-auto-columns:minmax(155px,1fr)}
.kb-card .ttl{-webkit-line-clamp:3}
.kb-card .meta{padding-left:0}
.kb-card .kb-side{display:flex;flex-direction:column;align-items:center;gap:6px;flex:none;position:relative;z-index:2}
.kb-card .kb-side input{margin:2px 0 0;width:15px;height:15px;opacity:.55;cursor:pointer}
.kb-card:hover .kb-side input,.kb-card.sel .kb-side input,.kb-card .kb-side input:checked{opacity:1}
/* r88 · nút Duyệt trên từng ô tư liệu */
#tab-tu-lieu .md-act{display:flex;justify-content:flex-end;margin-top:10px}
#tab-tu-lieu .md-act .btn.md-ok{background:#23985a!important;background-image:none!important;border-color:#23985a!important;color:#fff!important;box-shadow:0 2px 0 #18703f!important;height:34px;padding:0 14px;display:inline-flex;align-items:center}
#tab-tu-lieu .md-act .btn.md-ok.done{background:transparent!important;color:#2fb36b!important;border:1.5px solid #2fb36b!important;box-shadow:none!important}
#tab-tu-lieu .md-all{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:16px 0 4px;padding:14px 16px;border-radius:14px;border:1.5px solid #2fb36b;background:rgba(47,179,107,.08)}
#tab-tu-lieu .md-all-t{display:flex;flex-direction:column;gap:3px;min-width:0}
#tab-tu-lieu .md-all .btn.md-ok{background:#23985a!important;background-image:none!important;border-color:#23985a!important;color:#fff!important;box-shadow:0 2px 0 #18703f!important;height:40px;padding:0 20px;display:inline-flex;align-items:center}
#tab-tu-lieu .md-all.done{border-color:var(--line);background:transparent}
#tab-tu-lieu>.md-all{margin-top:22px}
/* r90 · Thư viện: Quảng cáo / Nguyên vật liệu */
.lib-tabs{display:inline-flex;gap:4px;padding:3px;border:1px solid var(--line);border-radius:12px;background:var(--sunk,rgba(0,0,0,.04));margin:6px 0 10px}
.lib-tabs a{padding:7px 14px;border-radius:9px;font-weight:700;font-size:13px;text-decoration:none;color:var(--muted)}
.lib-tabs a.on{background:var(--gold,#e0b04a);color:#fff}
.mt-wrap{display:grid;grid-template-columns:300px minmax(0,1fr);gap:18px;align-items:start;margin-top:16px}
@media(max-width:1000px){.mt-wrap{grid-template-columns:minmax(0,1fr)}}
.mt-side{display:flex;flex-direction:column;gap:14px;position:sticky;top:12px}
.mt-side h3{margin:0 0 4px}
.mt-side textarea{width:100%}
.mt-pl{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;margin:0 0 10px;padding:8px;border:1px solid var(--line);border-radius:10px}
.mt-pl input[data-pn]{font-weight:700}
.mt-pl input[data-pc]{grid-column:1/-1;font-family:var(--mono);font-size:12px}
.mt-pl .icon-btn{grid-row:1;grid-column:2}
.mt-sw{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:4px}
.mt-sw span{width:26px;height:26px;border-radius:7px;border:1px solid rgba(0,0,0,.15)}
.mt-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:12px}
.mt-bar .search{flex:1;min-width:200px;max-width:340px;margin-left:auto}
.mt-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
.mt-c{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--surface);display:flex;flex-direction:column;min-width:0}
.mt-pv{position:relative;aspect-ratio:4/3;background:repeating-conic-gradient(rgba(127,127,127,.12) 0 25%,transparent 0 50%) 0 0/16px 16px;display:grid;place-items:center;overflow:hidden}
.mt-pv img{width:100%;height:100%;object-fit:contain}
.mt-ic{font-size:30px;opacity:.5;font-weight:800}
.mt-ext{position:absolute;top:8px;left:8px;font:800 10px var(--mono);font-style:normal;padding:2px 6px;border-radius:5px;background:rgba(0,0,0,.6);color:#fff}
.mt-i{padding:10px 12px;display:flex;flex-direction:column;gap:5px;min-width:0}
.mt-i b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mt-i .small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mt-i .row-wrap{gap:6px;margin-top:2px}
.mt-row{grid-template-columns:1fr 1.6fr auto auto!important;align-items:center}
/* r91 · sửa góp ý tại chỗ */
.fb .fb-edit{display:flex;flex-direction:column;gap:6px;margin:2px 0 6px}
.fb .fb-edit textarea{width:100%;min-height:64px;resize:vertical}
.fb .fb-edit .row-wrap{gap:6px;align-items:center}
.fb .acts .fb-ed{font-size:14px}
.rv-gen .rv-gh{margin:0 0 10px;font-size:14px}
#tab-dung .render>.log.log-top{margin:0 0 16px;border-color:var(--gold,#e0b04a);box-shadow:0 0 0 1px var(--gold,#e0b04a)}
/* r94 · bản dựng thử thu gọn khi đã dựng đầy đủ */
.pv-mini{display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid var(--line);border-radius:12px;margin:12px 0;background:var(--surface)}
.pv-mini>div{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.pv-mini .small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pv-mk{width:24px;height:24px;border-radius:50%;background:#23985a;color:#fff;display:grid;place-items:center;font-weight:800;font-size:13px;flex:none}
/* r95 · thu gọn nguyên vật liệu, cài đặt khi đang dựng */
#tab-dung .rd-box.rd-collapsed>*:not(.rd-mini){display:none!important}
#tab-dung .rd-box.rd-collapsed{padding:10px 14px}
.rd-mini{display:flex;align-items:center;gap:12px}
.rd-box:not(.rd-collapsed) .rd-mini{margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.rd-mini>div{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.rd-mini .small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rd-mini-i{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;background:color-mix(in srgb,var(--gold,#e0b04a) 18%,transparent);flex:none}
/* r96 · Xưởng bài viết: thu gọn khi đang thiết kế */
.pv-design section.box.rd-collapsed>*:not(.rd-mini){display:none!important}
.pv-design section.box.rd-collapsed{padding:10px 14px}
.pv-design section.box:not(.rd-collapsed) .rd-mini{margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.pv-design>.log.log-top{margin:0 0 16px;border-color:var(--gold,#e0b04a);box-shadow:0 0 0 1px var(--gold,#e0b04a)}
.pv-brief3 .pc-grid.c3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:700px){.pv-brief3 .pc-grid.c3{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* r99 · số đỏ dự án đang chạy trên menu */
.nav a{position:relative}
.nav a .nav-n{position:absolute;left:4px;top:50%;transform:translate(-45%,-95%);min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:#e5484d;color:#fff;font:800 10.5px/17px var(--body);text-align:center;box-shadow:0 0 0 2px var(--bg,#0b0b0a);pointer-events:none;z-index:2}
/* r100 · duyệt, xoá từng bản dựng */
.vinfo .vact{display:inline-flex;gap:6px;align-items:center;margin-left:auto}
.vinfo .vact .btn{height:30px;padding:0 10px;display:inline-flex;align-items:center}
.vinfo .vact .btn.v-ok{background:#23985a!important;background-image:none!important;border-color:#23985a!important;color:#fff!important;box-shadow:0 2px 0 #18703f!important}
.vinfo .v-okb{color:#2fb36b;font-weight:800;font-size:12.5px}
.vcard.ap{border-color:#2fb36b;box-shadow:0 0 0 1px #2fb36b}
/* r101 · góp ý chung thiết kế + bài học */
.pv-gen{margin-top:14px;padding-top:12px;border-top:1px dashed var(--line)}
.pv-set>.pv-gen:first-child{margin-top:0;padding-top:0;border-top:0}
.pv-gen-h{font-weight:800;font-size:13.5px;margin-bottom:8px}
.pv-gf{display:flex;gap:8px;align-items:stretch}
.pv-gf textarea{flex:1;min-height:52px}
.pv-gf-b{display:flex;flex-direction:column;gap:6px;justify-content:space-between;align-items:flex-end;flex:none}
.pv-lsn{font-style:normal;font-size:11px;color:#2fb36b;font-weight:700;white-space:nowrap}
.dl-box h3{margin:0}
.dl-list{list-style:none;margin:10px 0;padding:0;display:flex;flex-direction:column;gap:6px}
.dl-list li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:8px 10px;border:1px solid var(--line);border-radius:10px;font-size:13px}
.dl-list li small{font-size:11px;max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dl-add{display:flex;gap:8px}.dl-add input{flex:1}
/* r102 · thư viện phong cách thiết kế */
.pv-gf-b{min-width:190px}
.pv-rem{display:flex;flex-direction:column;gap:3px;font-weight:700;width:100%}
.pv-rem select{height:32px;font-size:12.5px;width:100%}
.pv-gf-b .pv-ns{height:32px;font-size:12.5px;width:100%}
.dl-box .section-h{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.dl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;margin-top:12px}
.dl-g{border:1px solid var(--line);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:6px;min-width:0}
.dl-g.own{border-color:color-mix(in srgb,var(--gold,#e0b04a) 60%,transparent)}
.dl-gh{display:flex;align-items:center;gap:8px}.dl-gh b{flex:1;min-width:0}
.dl-g p{margin:0}
.dl-g .dl-list{margin:4px 0}
.dl-g .dl-list li{grid-template-columns:minmax(0,1fr) auto;font-size:12.5px;padding:6px 8px}
.dl-g .dl-list li small{display:none}
.dl-g .dl-list li.dl-empty{display:block;border-style:dashed}
.dl-g .dl-add input{height:32px;font-size:12.5px}
.pv-rem select,.pv-gf-b .pv-ns{padding:0 8px!important;line-height:normal;min-height:34px;height:34px}
/* r103 · sửa góp ý bài viết */
.pv-fb li{display:flex;align-items:flex-start;gap:6px;flex-wrap:wrap}
.pv-fb li>span:first-child{flex:1;min-width:0}
.pv-fa{display:inline-flex;gap:2px;flex:none}
.pv-ed{flex:1 1 100%;display:flex;flex-direction:column;gap:6px}
.pv-ed textarea{width:100%;min-height:52px}
/* r104 · khung Đăng video: không tràn ngang khi tên file dài, có 2 nút viết VI/EN */
.pub-grid>*{min-width:0}
.pub-right,.pub-cards,.pub-card{min-width:0;max-width:100%;overflow-x:clip}
.pub-head{flex-wrap:wrap;row-gap:6px}
.pub-head .gy-pair{margin-left:auto;display:inline-flex;gap:6px;flex-wrap:wrap}
.pub-head .gy-pair .btn-gy{margin-left:0}
.pub-card .pc-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;min-width:0}
.pub-card .pc-head .pc-name{flex:1 1 160px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pub-card .pc-head .gy-pair{display:inline-flex;gap:6px;flex-wrap:wrap;margin-left:auto}
.pub-card .pc-head .btn{white-space:nowrap}
.pub-card .field{min-width:0}
.pub-card .field input,.pub-card .field textarea,.pub-card .field select{width:100%;max-width:100%;box-sizing:border-box}
/* r105 · yêu cầu khi gợi ý viết */
.gy-req{display:flex;flex-direction:column;gap:6px;margin:0 0 12px;padding:10px 12px;border:1px dashed color-mix(in srgb,var(--gold,#e0b04a) 55%,transparent);border-radius:12px;background:color-mix(in srgb,var(--gold,#e0b04a) 6%,transparent)}
.gy-req label{font-weight:700;font-size:13px}
.gy-req input{width:100%;box-sizing:border-box}
.gy-req-c{display:flex;flex-wrap:wrap;gap:5px}
.gy-req-c .chip{cursor:pointer}
.gy-req-c .chip.on{background:var(--gold,#e0b04a);color:#fff;border-color:var(--gold,#e0b04a)}
/* r106 · xem trước bài đăng trên từng kênh */
.pc-prev{margin:10px 0 8px;padding:12px;border:1px solid var(--line);border-radius:12px;background:rgba(127,127,127,.05)}
.pvw-tabs{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:12px}
.pvw-tabs button{border:1px solid var(--line);background:transparent;color:inherit;border-radius:20px;padding:5px 12px;font:700 12px var(--body);cursor:pointer}
.pvw-tabs button.on{background:var(--gold,#e0b04a);border-color:var(--gold,#e0b04a);color:#fff}
.pvw-wrap{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:start}
@media(max-width:760px){.pvw-wrap{grid-template-columns:minmax(0,1fr)}}
.pvw-note p{margin:0 0 6px;font-size:12.5px}.pvw-w{color:#e5a03a;font-weight:700}.pvw-ok{color:#2fb36b;font-weight:700}
.pvw{font:13px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:#1c1e21}
.pvw b{font-weight:700}
.pvw-h{color:#1f6feb;font-weight:500!important}
.pvw-more{color:#65676b;font-weight:600}
.pvw-av{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#d9b45c,#7b55d6);color:#fff;display:inline-grid;place-items:center;font-weight:800;flex:none}
.pvw-av.sm{width:26px;height:26px;font-size:12px}
.pvw-media{position:relative;background:#000;display:grid;place-items:center;overflow:hidden}
.pvw-media img{width:100%;height:100%;object-fit:cover}
.pvw-media.h{aspect-ratio:16/9}.pvw-media.v{aspect-ratio:9/16}
.pvw-play{position:absolute;font-style:normal;width:44px;height:44px;border-radius:50%;background:rgba(0,0,0,.45);color:#fff;display:grid;place-items:center;font-size:16px}
/* Facebook */
.pvw.pvw-fb{width:320px;background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.25)}
.pvw.pvw-fb .pvw-hd{display:flex;gap:8px;align-items:center;padding:10px 12px 6px}.pvw-hd small{display:block;color:#65676b;font-size:11.5px}
.pvw.pvw-fb .pvw-tt{padding:0 12px 4px;font-weight:700}
.pvw.pvw-fb .pvw-tx{padding:0 12px 10px}
.pvw.pvw-fb .pvw-media.v{max-height:420px;aspect-ratio:auto;height:400px}
.pvw-ft{display:flex;justify-content:space-around;padding:8px;border-top:1px solid #e4e6eb;color:#65676b;font-weight:600;font-size:12px}
/* Điện thoại: Reels, TikTok, Shorts */
.pvw.phone{position:relative;width:230px;border-radius:22px;overflow:hidden;background:#000;color:#fff;box-shadow:0 0 0 6px #1a1a1a,0 6px 20px rgba(0,0,0,.4)}
.pvw.phone .pvw-media{aspect-ratio:9/16}
.pvw.phone .pvw-ov{position:absolute;left:10px;right:52px;bottom:12px;display:flex;flex-direction:column;gap:4px;text-shadow:0 1px 3px rgba(0,0,0,.7);font-size:12px}
.pvw.phone .pvw-ov small{opacity:.85;font-size:11px}
.pvw.phone .pvw-u{display:flex;align-items:center;gap:6px}
.pvw.phone .pvw-cap{font-size:12px;line-height:1.35}
.pvw.phone .pvw-h{color:#fff;font-weight:700!important}
.pvw.phone .pvw-more{color:#ddd}
.pvw-fl{border:1px solid rgba(255,255,255,.7);border-radius:6px;padding:1px 7px;font-size:11px;font-weight:700}
.pvw-fl.red{background:#cc0000;border-color:#cc0000;color:#fff;border-radius:16px;padding:2px 9px}
.pvw-side{position:absolute;right:8px;bottom:20px;display:flex;flex-direction:column;gap:14px;align-items:center;font-size:18px}
.pvw-badge{position:absolute;top:10px;left:12px;font-weight:800;font-size:13px;text-shadow:0 1px 3px rgba(0,0,0,.6)}
/* YouTube ngang */
.pvw.yt-w{width:340px;background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.25)}
.pvw-ytt{padding:10px 12px 4px;font-weight:700;font-size:15px;line-height:1.3}
.pvw.yt-w .pvw-hd{display:flex;gap:8px;align-items:center;padding:6px 12px}.pvw.yt-w .pvw-hd>div{flex:1}
.pvw-desc{margin:6px 12px 12px;padding:8px 10px;border-radius:8px;background:#f2f2f2;font-size:12.5px}
.pvw-fl{white-space:nowrap}
.pvw.pvw-fb{display:block}
.pill-cc{display:inline-block;font:800 10.5px var(--mono);padding:1px 6px;border-radius:5px;border:1px solid currentColor;opacity:.75;margin-left:4px;vertical-align:1px}
.pub-card .pc-gy{color:var(--gold,#e0b04a);font-weight:700;white-space:nowrap}
/* r110 · khung chi tiết khung giờ: tự cao theo nội dung, không cuộn */
@media(min-width:1101px){
  .jb-wrap{height:auto;min-height:358px}
  .jb-wrap .jb-grid{height:auto;min-height:358px}
  .jb-side{height:auto;overflow:visible;min-height:358px}
}
/* r111 · Phần chung khi đăng: thoáng hơn */
.pub-common{padding:12px 14px;border:1px solid var(--line);border-radius:12px;margin-top:14px}
.pub-common>summary{cursor:pointer;font-weight:700}
.pub-common[open]>summary{margin-bottom:12px}
.pub-common .field{margin:0 0 14px}
.pub-common .field:last-child{margin-bottom:2px}
.pub-common .field label{display:block;margin-bottom:6px}
.pub-common textarea{min-height:130px;line-height:1.5;resize:vertical}
.pv-old .pv-gf{display:none}
/* r116 · nút cạnh nhau trong ô bảng có khoảng cách */
td>.btn+.btn,td>.btn+a.btn,td>a.btn+.btn{margin-left:6px}
/* r117 · đính kèm hình, link, nguyên vật liệu cho góp ý bài viết */
.pv-fi{grid-template-columns:1fr auto;grid-template-areas:"ta ta" "bar ok" "list list";align-items:center}
.pv-fi>textarea{grid-area:ta}.pv-fi>.fa-bar{grid-area:bar}.pv-fi>.btn{grid-area:ok}.pv-fi>.fa-list{grid-area:list}.pv-fi>.fa-li{grid-column:1/-1}
.fa-col{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}
.fa-bar{display:flex;flex-wrap:wrap;gap:4px;min-width:0}
.fa-b{display:inline-flex;align-items:center;gap:4px;height:26px;padding:0 9px;border:1px dashed var(--line);border-radius:999px;background:transparent;color:var(--muted,#9a9a9a);font-size:11.5px;font-weight:600;cursor:pointer;white-space:nowrap}
.fa-b:hover{border-style:solid;color:var(--text,#fff);border-color:var(--gold,#e0b04a)}
.fa-list:empty{display:none}
.fa-list,.fa-view{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.fa-view{margin-top:6px}
.fa-it{position:relative;display:inline-flex;align-items:center;gap:4px}
.fa-th{width:44px;height:44px;border-radius:7px;overflow:hidden;border:1px solid var(--line);justify-content:center;background:#0002;font-size:18px}
.fa-th a{display:contents}.fa-th img{width:100%;height:100%;object-fit:cover}
.fa-ch{height:24px;padding:0 8px;border-radius:999px;background:#ffffff10;border:1px solid var(--line);font-size:11.5px;max-width:200px}
.fa-ch a{color:inherit;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fa-ch{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.fa-x{border:0;background:#000a;color:#fff;font-size:10px;line-height:1;width:16px;height:16px;border-radius:50%;cursor:pointer;padding:0;flex:none}
.fa-th .fa-x{position:absolute;top:2px;right:2px}
.fa-up{flex:1 1 100%;font-size:11.5px}
.fa-li{display:flex;gap:6px;align-items:center}.fa-li input{flex:1;min-width:0;height:32px;font-size:12.5px}
.pv-fbf.fa-drag{outline:2px dashed var(--gold,#e0b04a);outline-offset:4px;border-radius:10px}
.mp-f{display:flex;gap:8px;align-items:center;margin:8px 0 10px}.mp-f input{flex:1}.mp-f select{width:auto}
.mp-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:8px;max-height:52vh;overflow:auto;padding:2px}
.mp-c{display:flex;flex-direction:column;gap:4px;padding:6px;border:1px solid var(--line);border-radius:10px;background:transparent;color:inherit;cursor:pointer;text-align:left}
.mp-c.on{border-color:var(--gold,#e0b04a);box-shadow:0 0 0 2px color-mix(in srgb,var(--gold,#e0b04a) 45%,transparent)}
.mp-pv{aspect-ratio:1;border-radius:7px;background:#0003;display:flex;align-items:center;justify-content:center;font-size:26px;overflow:hidden}.mp-pv img{width:100%;height:100%;object-fit:contain}
.mp-n{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* r118 · chọn bộ chính thức, nút đăng từ dự án */
.pv-set .btn.v-ok{background:#23985a!important;background-image:none!important;border-color:#23985a!important;color:#fff!important;box-shadow:0 2px 0 #18703f!important}
.pv-set .btn.pv-apon{background:transparent!important;background-image:none!important;border:1px solid #2fb36b!important;color:#2fb36b!important;box-shadow:none!important}
.pv-set:has(.pv-apon){border-color:#2fb36b;box-shadow:0 0 0 1px #2fb36b55}
.pub-cta{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
/* r119 · gộp Thành phẩm + Thumbnail & tiêu đề thành Hoàn thiện & đăng */
.tp-step2{margin-top:26px;padding-top:20px;border-top:1px dashed var(--line)}
.tp-step-h{display:flex;align-items:center;gap:10px;font-weight:800;font-size:17px;margin-bottom:12px}
.tp-bar .eyebrow .pc-n{display:inline-grid;width:20px;height:20px;font-size:11px;margin-right:4px;vertical-align:middle}
select:disabled{opacity:.75;cursor:not-allowed}
.box.pub-cta{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;text-align:left;gap:14px}
.box.pub-cta>div{flex:1;min-width:240px}
/* r120 · chọn trụ cột để kiểm tra gợi ý */
.sg-pick{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;margin-top:10px}
.sg-pk{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;cursor:pointer}
.sg-pk:has(input:checked){border-color:var(--gold,#e0b04a);background:color-mix(in srgb,var(--gold,#e0b04a) 10%,transparent)}
.sg-pk span{display:flex;flex-direction:column;gap:2px}.sg-pk small{font-size:11.5px}
/* r123 · cắt hình (crop) + khung hình duyệt đều nhau */
.cr-bar{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.cr-r.on{background:var(--gold,#e0b04a);color:#120f08;border-color:var(--gold,#e0b04a)}
.cr-stage{position:relative;display:flex;justify-content:center;align-items:center;background:repeating-conic-gradient(#2a2a2a 0 25%,#1e1e1e 0 50%) 0 0/18px 18px;border-radius:10px;padding:0;user-select:none;touch-action:none;width:fit-content;max-width:100%;margin:0 auto}
.cr-stage img{display:block;max-width:100%;max-height:62vh;pointer-events:none}
.cr-box{position:absolute;box-shadow:0 0 0 9999px rgba(0,0,0,.55);outline:2px solid #fff;cursor:move;touch-action:none;background-image:linear-gradient(rgba(255,255,255,.35) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.35) 1px,transparent 1px);background-size:33.333% 33.333%;background-position:-1px -1px}
.cr-stage{overflow:hidden}
.cr-h{position:absolute;width:14px;height:14px;background:#fff;border:2px solid #120f08;border-radius:3px}
.cr-h.nw{left:-7px;top:-7px;cursor:nwse-resize}.cr-h.ne{right:-7px;top:-7px;cursor:nesw-resize}.cr-h.sw{left:-7px;bottom:-7px;cursor:nesw-resize}.cr-h.se{right:-7px;bottom:-7px;cursor:nwse-resize}
.cr-h.n{left:calc(50% - 7px);top:-7px;cursor:ns-resize}.cr-h.s{left:calc(50% - 7px);bottom:-7px;cursor:ns-resize}.cr-h.e{right:-7px;top:calc(50% - 7px);cursor:ew-resize}.cr-h.w{left:-7px;top:calc(50% - 7px);cursor:ew-resize}
.cr-sz{position:absolute;left:6px;bottom:6px;background:#000c;color:#fff;font-size:11px;padding:2px 6px;border-radius:6px;font-family:var(--mono,monospace)}
.cr-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px}
.cr-dst{margin-top:10px}
.pv-ib{position:relative;aspect-ratio:1/1;border-radius:10px;border:1px solid var(--line,#2c2c3a);background:#f4f2ee;overflow:hidden;display:flex;align-items:center;justify-content:center}
.pv-ib a{display:contents}
.pv-ib img{width:100%!important;height:100%!important;object-fit:contain;border:0!important;border-radius:0!important;background:transparent!important}
.pv-crop{position:absolute;top:8px;right:8px;border:0;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:700;background:#000b;color:#fff;cursor:pointer;opacity:0;transition:opacity .15s}
.pv-ib:hover .pv-crop,.pv-crop:focus-visible{opacity:1}
@media (hover:none){.pv-crop{opacity:1}}
.pv-fi .fa-bar{flex-wrap:nowrap;overflow:hidden}
.pv-fi .fa-b{padding:0 8px}
.pv-img figcaption{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* r124 · Bộ não Xưởng */
.br-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin-bottom:16px;align-items:stretch}
.br-grid>.panel{display:flex;flex-direction:column;margin:0;min-height:0}
.br-grid>.panel>#brOff{flex:1}
.br-grid>.panel>.br-sv{flex:1;max-height:340px}
@media (max-width:1000px){.br-grid{grid-template-columns:1fr}}
.br-use{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.br-use span{font-size:12px;padding:4px 10px;border-radius:999px;border:1px solid var(--line);background:#ffffff08}
.br-or{display:grid;grid-template-columns:auto minmax(0,1fr) 140px 140px auto;gap:8px;align-items:center;padding:6px 0;border-bottom:1px dashed var(--line)}
.br-or input:not([type=checkbox]){height:34px;font-size:13px;min-width:0}
.br-or.off{opacity:.55}.br-or.live input[data-f=text]{border-color:#2fb36b}
@media (max-width:700px){.br-or{grid-template-columns:auto 1fr auto}.br-or input[type=date]{grid-column:2}}
.br-sv{white-space:pre-wrap;font:12.5px/1.6 var(--mono,monospace);background:#0003;border:1px solid var(--line);border-radius:10px;padding:12px;max-height:340px;overflow:auto;margin:0}
.br-ta{width:100%;font:13px/1.6 var(--mono,monospace);min-height:140px}
.br-pv{white-space:pre-wrap;font:12px/1.55 var(--mono,monospace);max-height:60vh;overflow:auto;background:#0003;padding:12px;border-radius:10px}
.br-chk{margin-bottom:16px;border-color:color-mix(in srgb,var(--bad,#e05a5a) 50%,transparent)}
.br-iss{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.br-iss li{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--line);border-radius:10px}
.br-iss li div{display:flex;flex-direction:column;gap:3px}.br-iss small{color:var(--muted,#999)}
.br-lv{flex:none;font-size:11px;font-weight:800;padding:2px 8px;border-radius:999px;background:#ffffff14}
.br-iss .loi .br-lv{background:#e05a5a;color:#fff}.br-iss .canh-bao .br-lv{background:#e0b04a;color:#120f08}
/* r125 · Hỏi Xưởng */
.ag-fab{position:fixed;right:22px;bottom:22px;z-index:55;display:flex;align-items:center;gap:8px;padding:12px 18px;border-radius:999px;border:1px solid color-mix(in srgb,var(--gold,#e0b04a) 70%,transparent);background:linear-gradient(135deg,#2a2112,#16120b);color:var(--gold,#e0b04a);font-weight:800;font-size:14px;cursor:pointer;box-shadow:0 10px 30px #0008}
.ag-fab:hover{transform:translateY(-1px)}.ag-fab .ag-ic{font-size:16px}
.ag-fab.on{opacity:0;pointer-events:none}
.ag-fab i{position:absolute;top:-6px;right:-4px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#e5484d;color:#fff;font:800 11px/20px var(--sans,system-ui);font-style:normal;text-align:center}
.ag-panel{position:fixed;top:0;right:0;bottom:0;width:min(470px,100vw);z-index:58;background:var(--bg,#0d0b08);border-left:1px solid var(--line);display:flex;flex-direction:column;box-shadow:-20px 0 50px #0009}
.ag-h{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:16px 16px 12px;border-bottom:1px solid var(--line)}
.ag-h b{display:block;font-size:16px;color:var(--gold,#e0b04a)}.ag-h small{display:block;color:var(--muted,#999);font-size:11.5px;margin-top:2px}
.ag-hb{display:flex;gap:2px}
.ag-body{flex:1;overflow:auto;padding:14px 16px;display:flex;flex-direction:column;gap:12px}
.ag-m{max-width:100%}.ag-m.me{align-self:flex-end;max-width:85%}
.ag-m.me p{margin:0;background:color-mix(in srgb,var(--gold,#e0b04a) 18%,transparent);border:1px solid color-mix(in srgb,var(--gold,#e0b04a) 35%,transparent);padding:9px 12px;border-radius:14px 14px 4px 14px;font-size:13.5px}
.ag-m.xu{background:#ffffff07;border:1px solid var(--line);border-radius:14px 14px 14px 4px;padding:10px 13px}
.ag-m.failed{border-color:#e5484d88}
.ag-md{font-size:13.5px;line-height:1.6}.ag-md h2,.ag-md h3,.ag-md h4{font-size:14px;margin:10px 0 4px}.ag-md p{margin:6px 0}.ag-md ul,.ag-md ol{margin:4px 0;padding-left:18px}.ag-md li{margin:2px 0}.ag-md .tbl{font-size:12px}
.ag-acts{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;padding-top:8px;border-top:1px dashed var(--line)}
.ag-in{display:flex;gap:8px;padding:12px 16px 16px;border-top:1px solid var(--line);align-items:flex-end}
.ag-in textarea{flex:1;min-height:46px;max-height:160px;font-size:13.5px;resize:vertical}
.ag-empty p{font-size:13px;color:var(--muted,#aaa);margin:0 0 10px}.ag-sg{display:flex;flex-wrap:wrap;gap:6px}.ag-sg .chip{text-align:left;cursor:pointer}
.ag-al,.ag-brief{border:1px solid var(--line);border-radius:12px;padding:8px 12px;font-size:13px}
.ag-al summary,.ag-brief summary{cursor:pointer;font-weight:700}
.ag-al ul{list-style:none;margin:8px 0 2px;padding:0;display:grid;gap:6px}
.ag-al li{display:flex;gap:8px;align-items:flex-start}.ag-al li a{color:inherit;text-decoration:none}.ag-al li a:hover{text-decoration:underline}
.ag-al li span{flex:none;font-size:10.5px;font-weight:800;padding:2px 7px;border-radius:999px;background:#ffffff14;margin-top:1px}
.ag-al li.cao span{background:#e5484d;color:#fff}.ag-al li.vua span{background:#e0b04a;color:#120f08}
.ag-brief{border-color:color-mix(in srgb,var(--gold,#e0b04a) 45%,transparent);background:color-mix(in srgb,var(--gold,#e0b04a) 6%,transparent)}
@media (max-width:700px){.ag-fab span:not(.ag-ic){display:none}.ag-fab{padding:14px}}
/* r126 · nút dừng ngay trên khung nhật ký thiết kế */
.log-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.log-head .log-stop{padding:3px 12px;font-size:12px}
/* r127 · hộp sửa hình: cắt khung + vị trí chữ */
.cr-tabs{display:flex;gap:4px;align-items:center;margin-bottom:12px;border-bottom:1px solid var(--line)}
.cr-tabs button{border:0;background:transparent;color:var(--muted,#aaa);font-weight:700;font-size:14px;padding:8px 14px;border-bottom:2px solid transparent;cursor:pointer}
.cr-tabs button.on{color:var(--gold,#e0b04a);border-bottom-color:var(--gold,#e0b04a)}
.cr-open{margin-left:auto;color:var(--muted,#aaa)}
.cr-box.tx{outline:2px dashed #7dd3fc;background-image:none;box-shadow:0 0 0 9999px rgba(0,0,0,.35)}
.cr-box.tx::after{content:'Chữ ở đây';position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#7dd3fc;font-weight:800;font-size:14px;text-shadow:0 1px 3px #000;pointer-events:none}
.cr-txg{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pv-ib>a{cursor:zoom-in}
.pv-crop{opacity:.85}
.pv-ib img{cursor:pointer}
/* r128 · bộ nhiều hình Facebook, ghép mảnh */
.mfr{position:relative;display:block;margin:2px 0 6px;opacity:.75}
.mfr i{position:absolute;border:1.6px solid currentColor;border-radius:2px}
.mfr.pano{display:flex;height:16px;border:1.6px solid currentColor;border-radius:2px;position:relative}
.mfr.pano i{position:static;flex:1;border:0;border-right:1.6px dashed currentColor;border-radius:0}.mfr.pano i:last-child{border-right:0}
.emode.pc.sz.mu input:checked+label .mfr{opacity:1;color:var(--gold,#e0b04a)}
.pv-pvtag{font-size:10.5px;font-weight:700;padding:1px 7px;border-radius:999px;background:#7dd3fc22;color:#7dd3fc;margin-left:4px}
/* r129 · trang đặt lịch, đặt hộ */
.br-cat td{vertical-align:top}.br-cat a{word-break:break-all}
.bk-dh,.bk-web{font-size:10.5px;font-weight:800;padding:1px 7px;border-radius:999px;margin-left:4px}
.bk-dh{background:#e0b04a;color:#120f08}.bk-web{background:#2fb36b33;color:#2fb36b}
.as-rules{width:100%;font-size:13.5px;line-height:1.6}
.as-auto .check{display:flex;gap:8px;align-items:flex-start;margin:4px 0;font-weight:500}.bk-ord .row-wrap{margin-top:4px;gap:4px}
.as-msg.paypv{border:1px dashed var(--gold,#e0b04a)}.as-qr{display:block;width:180px;max-width:100%;margin-top:8px;border-radius:8px;background:#fff}
.as-qrb{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}.as-qrb .chip{cursor:pointer;background:#fff1;border:1px solid var(--gold,#e0b04a)}

/* r143: Trợ lý học từ website + thẻ đặt lịch */
.as-cards{display:flex;gap:10px;overflow-x:auto;padding:4px 2px 8px;scroll-snap-type:x mandatory}
.as-card{flex:0 0 210px;scroll-snap-align:start;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line,#e6e0d4);border-radius:12px;overflow:hidden;text-decoration:none;color:inherit;box-shadow:0 1px 3px rgba(0,0,0,.06)}
.as-card img,.as-card-ph{width:100%;height:110px;object-fit:cover;background:#f2efe8;display:flex;align-items:center;justify-content:center;color:#c29e4d;font-size:22px}
.as-card b{padding:8px 10px 0;font-size:13px;line-height:1.35;color:#1d1a16}
.as-card small{padding:3px 10px 0;font-size:12px;color:#6f6a63;line-height:1.4}
.as-card-btn{margin:10px;padding:8px;text-align:center;border-top:1px solid #eee;font-weight:600;font-size:13px;color:#1f6fd1}
.as-msg.as-cardmsg{max-width:100%;background:transparent;border:0;box-shadow:none;padding-left:0;padding-right:0}
.lr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.lr .wide{grid-column:1/-1}
@media(max-width:860px){.lr{grid-template-columns:1fr}}
.lr-top{display:flex;gap:16px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap}
.lr-top>div{flex:1;min-width:240px}
.lr-go{font-size:15px;padding:12px 20px}
.lr-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}
.lr-stats>div{background:var(--soft,#f7f4ee);border-radius:10px;padding:10px 12px}
.lr-stats b{display:block;font-size:20px}
.lr-stats small{color:var(--muted,#6f6a63);font-size:12px}
@media(max-width:600px){.lr-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
.lr-run{margin-top:12px}
.lr-bar{height:6px;border-radius:6px;background:#eee7da;overflow:hidden;margin:6px 0}
.lr-bar i{display:block;height:100%;background:#c29e4d;transition:width .4s}
.lr-bar i.pulse{animation:lrp 1.4s ease-in-out infinite}
@keyframes lrp{50%{opacity:.45}}
.lr-nw{margin-top:8px}.lr-nw ul{margin:4px 0 0;padding-left:18px}.lr-nw li{margin:2px 0}
.lr-iss{list-style:none;margin:8px 0 0;padding:0}.lr-iss li{padding:8px 10px;border-left:3px solid #c29e4d;background:var(--soft,#f7f4ee);margin-bottom:6px;border-radius:0 8px 8px 0}
.lr-iss li.lv-loi{border-color:var(--bad,#c0392b)}.lr-iss li.lv-goi-y{border-color:#8aa4c8}
.lr-hb{white-space:pre-wrap;font-size:13px;line-height:1.6;max-height:560px;overflow:auto;background:var(--soft,#f7f4ee);padding:12px 14px;border-radius:10px;margin-top:8px}
.lr-src{display:grid;grid-template-columns:auto minmax(0,1.3fr) minmax(0,1fr) auto;gap:8px;align-items:center;margin-bottom:6px}
@media(max-width:600px){.lr-src{grid-template-columns:auto 1fr auto}.lr-src [data-snm]{display:none}}
.lr-res{margin:0;padding-left:20px}.lr-res li{margin-bottom:8px}

/* ================= Khách Check In ================= */
body.is-reception .nav a:not([data-nav=quay]),body.is-reception .nav-h,body.is-reception .nav-subs,body.is-reception #agFab,body.is-reception .ag-fab{display:none!important}
body.is-reception .nav a.quay-nav{display:flex!important}
.qy{--qg:#d9b45c;--qg2:#b8913a;--qgs:rgba(217,180,92,.14);--qcard:var(--surface);--qline:var(--line);max-width:780px;margin:0 auto;padding-bottom:24px}
.qy-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding:20px 22px;margin-bottom:14px;border-radius:24px;background:radial-gradient(120% 140% at 0% 0%,rgba(217,180,92,.22),transparent 60%),linear-gradient(135deg,#1b1710,#0f0d09);color:#f6ecd6;border:1px solid rgba(217,180,92,.35)}
.qy-kick{font-size:13px;color:#d9b45c;font-weight:600}
.qy-hello h1{margin:2px 0 0;font-family:var(--display);font-weight:500;font-size:32px;line-height:1.05;color:#fff7e4}
.qy-stats{display:flex;align-items:center;gap:16px}
.qy-ring{--p:0;width:86px;height:86px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(closest-side,#15120c 78%,transparent 79% 100%),conic-gradient(#d9b45c calc(var(--p)*1%),rgba(255,255,255,.12) 0);flex:none}
.qy-ring b{font-size:19px;color:#fff7e4;line-height:1}.qy-ring small{font-size:11px;color:#c8bb9c;margin-top:3px}
.qy-kpis{display:grid;grid-template-columns:repeat(3,auto);gap:6px 18px}
.qy-kpis span{display:flex;flex-direction:column;font-size:11px;color:#c8bb9c;line-height:1.2}
.qy-kpis b{font-size:24px;color:#fff7e4;font-weight:700}
.qy-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;background:var(--sunk);border:1px solid var(--qline);border-radius:18px;padding:6px;margin-bottom:16px}
.qy-tabs button{display:flex;align-items:center;justify-content:center;gap:8px;border:0;background:none;color:var(--muted);font:600 15px var(--body);padding:12px 8px;border-radius:13px;cursor:pointer;min-height:48px}
.qy-tabs button i{font-style:normal;font-size:17px}
.qy-tabs button.on{background:var(--qg);color:#141109;box-shadow:0 4px 14px rgba(217,180,92,.35)}
.qy-scanbox{display:flex;align-items:center;gap:10px;background:var(--qcard);border:2px solid var(--qg);border-radius:20px;padding:8px 8px 8px 16px;box-shadow:0 0 0 6px var(--qgs)}
.qy-scan-ic{color:var(--qg2);display:flex}
.qy-scanbox input{flex:1;min-width:0;border:0;background:none;font:600 18px var(--body);color:var(--fg);padding:12px 0;outline:0}
.qy-go{border:0;background:var(--qg);color:#141109;font:700 16px var(--body);padding:13px 20px;border-radius:14px;cursor:pointer}
.qy-cambtn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;margin-top:12px;padding:16px;border-radius:18px;border:1.5px dashed var(--qg2);background:var(--qgs);color:var(--fg);font:700 16px var(--body);cursor:pointer}
.qy-how{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0 18px;padding:0}
.qy-how li{display:flex;gap:10px;align-items:center;background:var(--qcard);border:1px solid var(--qline);border-radius:14px;padding:10px 12px;font-size:13px;color:var(--muted);line-height:1.35}
.qy-how li b{flex:none;width:26px;height:26px;border-radius:50%;background:var(--qgs);color:var(--qg2);display:flex;align-items:center;justify-content:center;font-size:13px}
.qy-how em{font-style:normal;font-weight:700;color:var(--fg)}
#qyCamBox{position:relative;margin:0 0 16px;border-radius:22px;overflow:hidden;background:#000;text-align:center}
#qyVid{display:block;width:100%;height:min(62vh,520px);object-fit:cover}
.qy-cam-frame{position:absolute;left:50%;top:46%;width:64%;aspect-ratio:1;transform:translate(-50%,-50%);border:3px solid #e6bf57;border-radius:26px;box-shadow:0 0 0 999px rgba(0,0,0,.45);pointer-events:none}
.qy-camx{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);border:0;border-radius:999px;background:rgba(255,255,255,.92);color:#141109;font:700 15px var(--body);padding:12px 22px}
.qy-msg{display:flex;gap:10px;align-items:flex-start;padding:14px 16px;border-radius:16px;background:var(--sunk);border:1px solid var(--qline);margin-bottom:12px;font-size:15px;line-height:1.45}
.qy-msg-i{flex:none;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;background:var(--muted);color:var(--surface)}
.qy-msg.ok{background:var(--ok-soft);border-color:color-mix(in srgb,var(--ok) 45%,transparent);color:var(--ok);font-weight:600}.qy-msg.ok .qy-msg-i{background:var(--ok)}
.qy-msg.bad{background:var(--bad-soft);border-color:color-mix(in srgb,var(--bad) 45%,transparent);color:var(--bad)}.qy-msg.bad .qy-msg-i{background:var(--bad)}
.qy-msg.warn{background:var(--warn-soft);border-color:color-mix(in srgb,var(--warn) 45%,transparent);color:var(--warn);font-weight:600}.qy-msg.warn .qy-msg-i{background:var(--warn)}
.qy-msg.info{background:var(--qgs);border-color:color-mix(in srgb,var(--qg) 50%,transparent)}.qy-msg.info .qy-msg-i{background:var(--qg2)}
.qy-card{--qc:var(--muted);background:var(--qcard);border:1px solid var(--qline);border-radius:24px;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.08)}
.qy-card.qy-in{--qc:var(--qg)}.qy-card.qy-done{--qc:var(--ok)}.qy-card.qy-paid{--qc:#5b8fd6}.qy-card.qy-wait{--qc:var(--warn)}.qy-card.qy-gift{--qc:var(--qg)}
.qy-band{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px 16px;background:linear-gradient(90deg,color-mix(in srgb,var(--qc) 22%,transparent),transparent);border-bottom:1px solid var(--qline)}
.qy-code{font:700 13px var(--mono);letter-spacing:1px;color:var(--muted)}
.qy-web{margin-left:auto;width:32px;height:32px;border-radius:10px;border:1px solid var(--qline);display:flex;align-items:center;justify-content:center;text-decoration:none;color:var(--fg)}
.qy-st{display:inline-flex;align-items:center;font-size:12px;font-weight:700;padding:4px 11px;border-radius:999px;background:var(--sunk);color:var(--muted);white-space:nowrap}
.qy-st.qy-in{background:var(--gold-soft);color:var(--gold)}.qy-st.qy-done{background:var(--ok-soft);color:var(--ok)}.qy-st.qy-paid{background:#e3edfa;color:#2c5ea8}.qy-st.qy-wait{background:var(--warn-soft);color:var(--warn)}
@media (prefers-color-scheme:dark){.qy-st.qy-paid{background:#1c2c45;color:#8db6f0}}
html[data-theme=dark] .qy-st.qy-paid{background:#1c2c45;color:#8db6f0}
.qy-who2{display:flex;gap:14px;align-items:center;padding:18px 16px 6px}
.qy-av{flex:none;width:54px;height:54px;border-radius:18px;background:linear-gradient(135deg,#e6c470,#b8913a);color:#141109;display:flex;align-items:center;justify-content:center;font:700 24px var(--body)}
.qy-who2 h2{margin:0;font-size:24px;line-height:1.15}
.qy-who2 p{margin:3px 0 0;color:var(--muted);font-size:14px;line-height:1.35}
.qy-chips{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:12px 16px 4px}
.qy-chip{background:var(--sunk);border-radius:14px;padding:10px 12px;min-width:0;display:flex;flex-direction:column}
.qy-chip small{font-size:11px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--muted)}
.qy-chip b{font-size:16px;margin-top:3px;overflow-wrap:anywhere;line-height:1.25}
.qy-chip em{font-style:normal;font-size:11px;font-weight:700;color:var(--qg2);margin-top:2px}
.qy-chip.owe{background:var(--warn-soft)}.qy-chip.owe b{color:var(--warn)}
.qy-contact{display:flex;flex-wrap:wrap;gap:8px;padding:10px 16px 2px}
.qy-pill{display:inline-flex;align-items:center;gap:6px;padding:9px 14px;border-radius:999px;border:1px solid var(--qline);text-decoration:none;color:var(--fg);font-weight:600;font-size:14px;min-height:40px}
.qy-pill.mute{color:var(--muted);font-weight:500;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.qy-note{margin:10px 16px 0;padding:10px 12px;background:var(--qgs);border-radius:12px;font-size:14px}
.qy-trail{list-style:none;margin:10px 16px 0;padding:0;display:flex;flex-wrap:wrap;gap:6px 14px;font-size:13px;color:var(--muted)}
.qy-trail b{color:var(--fg)}
.qy-acts{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;padding:16px}
.qy-act{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:12px;align-items:center;text-align:left;border:0;border-radius:18px;padding:14px 18px;min-height:64px;font:700 17px var(--body);cursor:pointer;color:var(--fg);background:var(--sunk);border:1px solid var(--qline)}
.qy-act i{grid-row:1/3;font-style:normal;width:36px;height:36px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:18px;background:rgba(0,0,0,.08)}
.qy-act small{font-size:12px;font-weight:500;opacity:.75}
.qy-act.main{background:var(--qg);border-color:var(--qg);color:#141109;box-shadow:0 6px 18px rgba(217,180,92,.35)}
.qy-act.gold{background:linear-gradient(135deg,#f0d48a,#d9b45c);border-color:#d9b45c;color:#141109}
.qy-act:disabled{opacity:.55}
.qy-ph{margin:0 16px 16px;padding-top:14px;border-top:1px dashed var(--qline)}
.qy-ph-h{display:flex;flex-direction:column;gap:2px;margin-bottom:10px}
.qy-ph-h span,.qy-sub{font-size:13px;color:var(--muted)}
.qy-ph-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px;margin-bottom:10px}
.qy-ph-list figure{position:relative;margin:0;aspect-ratio:1;border-radius:14px;overflow:hidden;background:var(--sunk)}
.qy-ph-list img{width:100%;height:100%;object-fit:cover;display:block}
.qy-ph-list figure.up img{opacity:.45}.qy-ph-list figure.sent img{opacity:.6}
.qy-ph-list figure span{position:absolute;inset:auto 0 0 0;font-size:11px;font-weight:600;text-align:center;background:rgba(0,0,0,.55);color:#fff;padding:3px}
.qy-ph-list figure button{position:absolute;top:5px;right:5px;width:28px;height:28px;border-radius:50%;border:0;background:rgba(0,0,0,.6);color:#fff;font-size:17px;line-height:1;cursor:pointer}
.qy-ph-add{display:flex;flex-direction:column;align-items:center;justify-content:center;aspect-ratio:1;border:2px dashed var(--qg2);border-radius:14px;cursor:pointer;color:var(--qg2);background:var(--qgs)}
.qy-ph-add span{font-size:26px;line-height:1}.qy-ph-add small{font-size:12px;font-weight:700}
.qy-pay{display:flex;flex-direction:column;gap:8px}
.qy-dayh{display:flex;align-items:center;gap:8px;margin-bottom:12px}
.qy-dayh .btn{min-width:44px;min-height:44px;border-radius:14px}
.qy-dpick{display:flex;flex-direction:column;flex:1;min-width:0;background:var(--qcard);border:1px solid var(--qline);border-radius:14px;padding:6px 12px}
.qy-dpick b{font-size:13px}.qy-dpick input{border:0;background:none;font:600 16px var(--body);color:var(--fg);padding:0}
.qy-sum{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}
.qy-sum span{background:var(--qcard);border:1px solid var(--qline);border-radius:14px;padding:10px;font-size:12px;color:var(--muted);display:flex;flex-direction:column;align-items:center;text-align:center}
.qy-sum b{font-size:22px;color:var(--fg)}
.qy-rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.qy-rows button{width:100%;display:flex;align-items:center;gap:12px;text-align:left;background:var(--qcard);border:1px solid var(--qline);border-left:5px solid var(--qline);border-radius:16px;padding:12px 14px;cursor:pointer;color:var(--fg);font:inherit;min-height:64px}
.qy-rows button.qy-in{border-left-color:var(--qg)}.qy-rows button.qy-done{border-left-color:var(--ok)}.qy-rows button.qy-paid{border-left-color:#5b8fd6}.qy-rows button.qy-wait{border-left-color:var(--warn)}
.qy-t{font:700 17px var(--mono);min-width:54px}
.qy-who{flex:1;min-width:0;display:flex;flex-direction:column}
.qy-who small{color:var(--muted);font-size:13px;overflow:hidden;text-overflow:ellipsis}
.qy-who em{color:var(--warn);font-style:normal;font-weight:600}
.qy-book{display:flex;flex-direction:column;gap:2px;border-radius:22px!important}
.qy-book select,.qy-book input{min-height:48px;font-size:16px}
.qy-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.qy-payopt{border:0;padding:0;margin:8px 0 14px;display:flex;flex-direction:column;gap:8px}
.qy-payopt legend{font-weight:600;margin-bottom:6px}
.qy-payopt label{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--qline);border-radius:14px;padding:12px;cursor:pointer}
.qy-payopt label:has(input:checked){border-color:var(--qg);background:var(--qgs)}
.qy-payopt span{display:flex;flex-direction:column}.qy-payopt small{color:var(--muted)}
.qy-big{padding:16px;font-size:17px;justify-content:center;border-radius:16px!important;background:var(--qg)!important;border-color:var(--qg)!important;color:#141109!important}
.qy-made{margin-top:16px}
.qy-qr{margin:0 0 12px;text-align:center}.qy-qr img{width:240px;max-width:100%;border-radius:14px;background:#fff;padding:8px}
.qy-qr figcaption{font-size:14px;margin-top:6px}
/* Điện thoại: như một app, thanh tab dưới đáy, nút to */
@media (max-width:700px){
  .qy{padding-bottom:96px}
  .qy-top{padding:16px;border-radius:20px;gap:12px}
  .qy-hello h1{font-size:26px}
  .qy-stats{width:100%;justify-content:space-between}
  .qy-ring{width:74px;height:74px}.qy-ring b{font-size:17px}
  .qy-kpis{gap:4px 14px}.qy-kpis b{font-size:21px}
  .qy-tabs{position:fixed;left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:60;margin:0;border-radius:22px;background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 10px 30px rgba(0,0,0,.25)}
  .qy-tabs button{flex-direction:column;gap:2px;font-size:12px;padding:8px 4px;min-height:56px}
  .qy-tabs button i{font-size:20px}
  .qy-how{grid-template-columns:1fr}
  .qy-chips{grid-template-columns:1fr 1fr}
  .qy-acts{grid-template-columns:1fr}
  .qy-who2 h2{font-size:22px}
  .qy-2{grid-template-columns:1fr}
  .qy-sum{grid-template-columns:repeat(2,1fr)}
  .qy-scanbox input{font-size:16px}
  body.qy-on .ag-fab,body.qy-on #agFab{display:none!important}
}
/* Nút Khách Check In: to, màu vàng, trên cùng menu */
.nav a.quay-nav{background:#d9b45c!important;color:#141109!important;font-weight:700;border-radius:999px}
.nav a.quay-nav .ni{color:#141109;opacity:1}
body:not(.is-admin):not(.is-reception):not(.can-book) .nav a.quay-nav{display:none!important}
@media (min-width:1100px){
  #shell>.top .nav a.quay-nav{display:flex;align-items:center;justify-content:center;gap:8px;margin:2px 0 14px;padding:13px 14px;border-radius:14px;font-size:15px;letter-spacing:.2px;box-shadow:0 2px 0 #a8862f,0 6px 16px rgba(217,180,92,.28)}
  #shell>.top .nav a.quay-nav:hover{background:#e6c470!important}
  #shell>.top .nav a.quay-nav.on{outline:2px solid #f6e7bf;outline-offset:2px}
  body.sb-mini #shell>.top .nav a.quay-nav{font-size:0;padding:10px;width:44px;margin-bottom:10px}
  body.sb-mini #shell>.top .nav a.quay-nav .ni{font-size:16px}
}
@media (max-width:1099px){.nav a.quay-nav{align-self:center;display:inline-flex;align-items:center;gap:6px;padding:8px 14px;line-height:1.2;height:auto;flex:none}}
/* ================= Đơn hàng ================= */
.od{max-width:1100px;margin:0 auto;padding-bottom:90px}
.od-head h1{margin:2px 0 4px;font-family:var(--display);font-weight:500;font-size:32px}
.od-search{display:flex;gap:8px;margin:14px 0 10px}
.od-search input{flex:1;min-width:0;min-height:48px;border-radius:14px;font-size:16px}
.od-st{display:flex;gap:6px;overflow-x:auto;padding-bottom:6px;margin-bottom:10px;scrollbar-width:none}
.od-st button{flex:none;border:1px solid var(--line);background:var(--surface);color:var(--muted);font:600 14px var(--body);padding:9px 14px;border-radius:999px;cursor:pointer;min-height:42px}
.od-st button b{color:var(--fg);margin-left:4px}
.od-st button.on{background:#d9b45c;border-color:#d9b45c;color:#141109}.od-st button.on b{color:#141109}
.od-rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.od-row{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--surface);border:1px solid var(--line);border-left:5px solid var(--line);border-radius:16px;text-decoration:none;color:var(--fg);min-height:68px}
.od-row.od-wait{border-left-color:var(--warn)}.od-row.od-paid{border-left-color:#5b8fd6}.od-row.od-done{border-left-color:var(--ok)}.od-row.od-off{border-left-color:var(--muted);opacity:.75}
.od-n{font:700 14px var(--mono);color:var(--muted);min-width:56px}
.od-who{flex:1;min-width:0;display:flex;flex-direction:column}
.od-who small{font-size:13px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.od-r{display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:right}
.od-r small{font-size:12px;color:var(--muted)}
.od-pill{font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px;background:var(--sunk);color:var(--muted);white-space:nowrap}
.od-pill.od-wait{background:var(--warn-soft);color:var(--warn)}.od-pill.od-paid{background:#e3edfa;color:#2c5ea8}.od-pill.od-done{background:var(--ok-soft);color:var(--ok)}
.od-pg{display:flex;align-items:center;justify-content:center;gap:12px;margin:14px 0;font-size:14px;color:var(--muted)}
.od-back{display:inline-flex;align-items:center;min-height:40px;font-weight:600;text-decoration:none;color:var(--muted)}
.od-hero{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;padding:20px 22px;border-radius:22px;margin:6px 0 14px;background:radial-gradient(120% 140% at 0% 0%,rgba(217,180,92,.22),transparent 60%),linear-gradient(135deg,#1b1710,#0f0d09);color:#f6ecd6;border:1px solid rgba(217,180,92,.35)}
.od-hero h1{margin:4px 0 2px;font-size:28px;line-height:1.15;color:#fff7e4}.od-hero p{margin:0;color:#c8bb9c;font-size:14px}.od-hero .od-n{color:#d9b45c}
.od-hero-r{display:flex;flex-direction:column;align-items:flex-end}.od-hero-r b{font-size:26px;color:#fff7e4}.od-hero-r small{color:#c8bb9c;font-size:12px}
.od-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.od-box{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:16px 18px}
.od-box h2{margin:0 0 12px;font-size:16px}
.od-box input,.od-box textarea{min-height:46px;font-size:16px;border-radius:12px}
.od-stsel{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:10px}
.od-stsel label{position:relative;cursor:pointer}
.od-stsel input{position:absolute;opacity:0;pointer-events:none}
.od-stsel span{display:flex;align-items:center;justify-content:center;text-align:center;min-height:46px;padding:6px;border-radius:12px;border:1.5px solid var(--line);font-size:13px;font-weight:700;color:var(--muted)}
.od-stsel label.od-wait input:checked+span{border-color:var(--warn);background:var(--warn-soft);color:var(--warn)}
.od-stsel label.od-paid input:checked+span{border-color:#5b8fd6;background:#e3edfa;color:#2c5ea8}
.od-stsel label.od-done input:checked+span{border-color:var(--ok);background:var(--ok-soft);color:var(--ok)}
.od-stsel label.od-off input:checked+span{border-color:var(--fg);background:var(--sunk);color:var(--fg)}
.od-quick{display:flex;flex-wrap:wrap;gap:8px;margin:2px 0 12px}
.od-items{width:100%;border-collapse:collapse;font-size:15px}
.od-items td{padding:8px 0;border-bottom:1px solid var(--line)}.od-items td:last-child{text-align:right;font-weight:600;white-space:nowrap;padding-left:10px}
.od-items .od-tot td{font-weight:800;font-size:17px;border-bottom:0}
.od-notes{grid-column:1/-1}
.od-notes form{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}
.od-notes .row-wrap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px}
.od-tl{list-style:none;margin:0;padding:0 0 0 14px;border-left:2px solid var(--line);display:flex;flex-direction:column;gap:10px}
.od-tl li{position:relative;font-size:14px;line-height:1.5;white-space:pre-line}
.od-tl li::before{content:"";position:absolute;left:-20px;top:6px;width:10px;height:10px;border-radius:50%;background:var(--line)}
.od-tl li.cust::before{background:#d9b45c}
.od-tl small{display:block;font-size:12px;color:var(--muted);white-space:normal}
.od-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px 14px;margin:0;font-size:13px}.od-meta dt{color:var(--muted);font-size:11px}.od-meta dd{margin:0;overflow-wrap:anywhere}
.od-save{position:sticky;bottom:12px;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding:10px 12px 10px 18px;border-radius:18px;background:color-mix(in srgb,var(--surface) 90%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--line);box-shadow:0 10px 30px rgba(0,0,0,.15)}
.od-save .btn{min-height:48px;padding:0 22px;border-radius:14px}
.od-save.dirty{border-color:#d9b45c}.od-save.dirty #odDirty{color:var(--warn);font-weight:700}
@media (max-width:760px){
  .od-head h1{font-size:26px}
  .od-grid{grid-template-columns:1fr}
  .od-hero{padding:16px;border-radius:18px}.od-hero h1{font-size:23px}.od-hero-r{align-items:flex-start}
  .od-row .od-n{display:none}
  .od-save{bottom:calc(10px + env(safe-area-inset-bottom))}
}
.od-save{margin-right:170px}
@media (max-width:760px){.od-save{margin-right:64px}}
.qy-sc{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin-bottom:12px}
.qy-sc button{flex:none;border:1px solid var(--line);background:var(--surface);color:var(--muted);font:600 14px var(--body);padding:9px 14px;border-radius:999px;cursor:pointer;min-height:42px}
.qy-sc button.on{background:#d9b45c;border-color:#d9b45c;color:#141109}
.qy-find{flex:1;min-width:0;min-height:46px;border-radius:14px;font-size:16px}
.qy-dh{margin:16px 2px 8px;font-size:13px;font-weight:700;letter-spacing:.3px;color:var(--muted);text-transform:uppercase}
.qy-dh em{font-style:normal;color:#b8913a}
.qy-oid{font-family:var(--mono);font-size:12px!important}
.box.empty .btn{margin-left:8px}

/* ================= Điện thoại: khung như app ================= */
.m-title,.m-tabs,.m-sheet{display:none}
@media (max-width:760px){
  html,body{overflow-x:hidden;max-width:100%}
  #view{overflow-x:clip}
  #shell>.top{position:sticky;top:0;height:auto;min-height:0;display:flex;flex-direction:row;align-items:center;gap:10px;padding:calc(8px + env(safe-area-inset-top)) 14px 8px;background:#0b0b0a;border-bottom:1px solid #24201a}
  #shell>.top .nav{display:none!important}
  #shell>.top .brand{flex:none;padding:0;border:0}
  #shell>.top .brand-txt,#shell>.top .sb-tg{display:none!important}
  .m-title{display:block;flex:1;min-width:0;font-weight:700;font-size:16px;color:#f4efe2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  #shell>.top .me{flex:none;padding:2px;border-color:#2c271c}
  .wrap{padding:14px 14px calc(104px + env(safe-area-inset-bottom))}
  .m-tabs{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:58;padding:6px 6px calc(6px + env(safe-area-inset-bottom));background:color-mix(in srgb,#0b0b0a 92%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid #24201a}
  .m-tabs a,.m-tabs button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:54px;border:0;background:none;color:#9c937f;font:600 11px var(--body);text-decoration:none;border-radius:14px;cursor:pointer;-webkit-tap-highlight-color:transparent}
  .m-tabs i{display:flex}.m-tabs svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .m-tabs .on{color:#e6c470}
  .m-tabs a.mid{color:#141109}
  .m-tabs a.mid i{width:52px;height:52px;margin-top:-22px;border-radius:18px;background:linear-gradient(135deg,#f0d48a,#d9b45c);align-items:center;justify-content:center;box-shadow:0 8px 20px rgba(217,180,92,.4),0 0 0 4px #0b0b0a}
  .m-tabs a.mid span{color:#d9b45c}
  .m-sheet:not([hidden]){display:block;position:fixed;inset:0;z-index:80}
  .m-sheet-bg{position:absolute;inset:0;background:rgba(0,0,0,.55)}
  .m-sheet-card{position:absolute;left:0;right:0;bottom:0;max-height:86vh;overflow-y:auto;background:var(--bg);border-radius:24px 24px 0 0;padding:8px 16px calc(20px + env(safe-area-inset-bottom));box-shadow:0 -10px 40px rgba(0,0,0,.4);animation:mUp .22s ease-out}
  @keyframes mUp{from{transform:translateY(40px);opacity:.6}to{transform:none;opacity:1}}
  .m-grab{width:44px;height:5px;border-radius:9px;background:var(--line);margin:4px auto 12px}
  .m-sheet h4{margin:16px 2px 8px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
  .m-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
  .m-grid a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:86px;padding:10px 6px;border-radius:18px;background:var(--surface);border:1px solid var(--line);text-decoration:none;color:var(--fg);font-size:12px;font-weight:600;text-align:center;line-height:1.25}
  .m-grid .m-ic{font-style:normal;font-size:20px;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:13px;background:var(--sunk);color:#b8913a}
  .m-grid .m-ic i{font-style:normal}
  .m-grid .m-ic .bl{width:22px;height:22px}
  .m-grid .m-ic .bchip,.m-grid .m-ic .ni{background:none;border:0;box-shadow:none}
  .m-grid a.on{border-color:#d9b45c;background:color-mix(in srgb,#d9b45c 12%,var(--surface))}
  .m-ci{display:flex;flex-direction:column;padding:16px 18px;border-radius:20px;background:linear-gradient(135deg,#f0d48a,#d9b45c);color:#141109;text-decoration:none;margin-top:4px}
  .m-ci b{font-size:18px}.m-ci small{font-size:13px;opacity:.75}
  .m-acc{display:flex;align-items:center;gap:12px;width:100%;margin-top:18px;padding:12px 14px;border-radius:18px;border:1px solid var(--line);background:var(--surface);color:var(--fg);text-align:left;font:inherit;cursor:pointer}
  .m-acc span:last-child{display:flex;flex-direction:column}.m-acc small{color:var(--muted);font-size:12px}
  body.m-sheet-on{overflow:hidden}
  .ag-fab{right:14px;bottom:calc(84px + env(safe-area-inset-bottom));padding:12px!important}
  body.m-sheet-on .ag-fab{display:none}
  .toast{bottom:calc(150px + env(safe-area-inset-bottom));border-radius:16px;line-height:1.4}
  /* Lễ tân: không có thanh tab chung, trang Check In có thanh riêng */
  body.is-reception .wrap{padding-bottom:calc(20px + env(safe-area-inset-bottom))}
  body:not(.is-reception) .qy-tabs{position:static;left:auto;right:auto;bottom:auto;box-shadow:none;backdrop-filter:none;margin-bottom:14px;background:var(--sunk)}
  body:not(.is-reception) .qy{padding-bottom:0}
  /* Các khối chung: một cột, chữ đủ lớn, nút dễ bấm */
  .xh,.ac-hero{padding:18px 16px;border-radius:20px;gap:14px}
  .xh h1,.ac-hero h1{font-size:28px}
  .xh-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .btn{min-height:44px}
  .btn.sm{min-height:38px}
  .page-head{flex-wrap:wrap;gap:10px}
  .panel{padding:14px;border-radius:18px}
  .tbl-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
  input,select,textarea{font-size:16px}
  .modal-card{width:calc(100% - 20px)!important;max-height:88vh;overflow-y:auto;border-radius:22px}
  .od-save{bottom:calc(80px + env(safe-area-inset-bottom));margin-right:64px}
}
@media (max-width:760px){
  #shell>.top .brand{order:0}.m-title{order:1}#shell>.top .me{order:2;margin-left:auto}
  .xh,.ac-hero{grid-template-columns:1fr!important}
  .xh-i,.ac-live{min-width:0}
}
@media (max-width:760px){.toast{bottom:auto;top:calc(64px + env(safe-area-inset-top));transform:translateX(-50%) translateY(-10px)}.toast.show{transform:translateX(-50%) translateY(0)}}
.qy-stx{margin:0 16px 16px;padding-top:14px;border-top:1px dashed var(--line)}
.qy-stsel{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.qy-stsel button{min-height:46px;border-radius:12px;border:1.5px solid var(--line);background:var(--surface);color:var(--muted);font:700 13px var(--body);cursor:pointer;padding:6px}
.qy-stsel button.on.qy-wait{border-color:var(--warn);background:var(--warn-soft);color:var(--warn)}
.qy-stsel button.on.qy-paid{border-color:#5b8fd6;background:#e3edfa;color:#2c5ea8}
.qy-stsel button.on.qy-done{border-color:var(--ok);background:var(--ok-soft);color:var(--ok)}
.qy-stsel button.on.qy-off{border-color:var(--fg);background:var(--sunk);color:var(--fg)}
@media (prefers-color-scheme:dark){.qy-stsel button.on.qy-paid{background:#1c2c45;color:#8db6f0}}
/* Danh sách lịch: chọn nhiều + đổi trạng thái nhanh */
.qy-li{display:flex;align-items:stretch;background:var(--surface);border:1px solid var(--line);border-left:5px solid var(--line);border-radius:16px;overflow:hidden}
.qy-li.qy-in{border-left-color:#d9b45c}.qy-li.qy-done{border-left-color:var(--ok)}.qy-li.qy-paid{border-left-color:#5b8fd6}.qy-li.qy-wait{border-left-color:var(--warn)}
.qy-li.sel{border-color:#d9b45c;background:color-mix(in srgb,#d9b45c 10%,var(--surface))}
.qy-rows .qy-li .qy-main{flex:1;min-width:0;display:flex;align-items:center;gap:12px;border:0!important;background:none!important;border-radius:0;padding:12px 6px 12px 4px;min-height:64px;text-align:left;color:var(--fg);font:inherit;cursor:pointer}
.qy-ck{display:flex;align-items:center;justify-content:center;width:44px;flex:none;cursor:pointer}
.qy-ck input{position:absolute;opacity:0;pointer-events:none}
.qy-ck span{width:22px;height:22px;border-radius:7px;border:2px solid var(--line);display:flex;align-items:center;justify-content:center}
.qy-ck input:checked+span{background:#d9b45c;border-color:#d9b45c}
.qy-ck input:checked+span::after{content:"✓";color:#141109;font-weight:800;font-size:14px}
.qy-stbtn{align-self:center;flex:none;margin-right:12px;border:0;cursor:pointer;min-height:36px;padding:6px 12px!important;font-family:var(--body)}
.qy-stbtn i{font-style:normal;font-size:10px;opacity:.7;margin-left:2px}
.qy-stmenu{position:fixed;z-index:90;width:200px;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:6px;box-shadow:0 16px 40px rgba(0,0,0,.35);display:flex;flex-direction:column;gap:2px}
.qy-stmenu button{text-align:left;border:0;background:none;color:var(--fg);font:600 15px var(--body);padding:12px 12px;border-radius:11px;cursor:pointer;min-height:46px}
.qy-stmenu button:hover{background:var(--sunk)}
.qy-stmenu button.on{background:var(--sunk);color:#b8913a}
.qy-bulk{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(20px + env(safe-area-inset-bottom));z-index:85;display:flex;align-items:center;gap:8px;width:min(560px,calc(100% - 20px));padding:10px 10px 10px 16px;border-radius:20px;background:#141109;color:#f6ecd6;border:1px solid rgba(217,180,92,.5);box-shadow:0 16px 40px rgba(0,0,0,.45)}
.qy-bulk b{flex:none;font-size:14px}
.qy-bulk select{flex:1;min-width:0;min-height:44px;border-radius:12px;font-size:16px;background:#221d13;color:#f6ecd6;border:1px solid #3a3122}
.qy-bulk-ok{flex:none;min-height:44px;border:0;border-radius:12px;background:#d9b45c;color:#141109;font:700 15px var(--body);padding:0 16px;cursor:pointer}
.qy-bulk-x{flex:none;width:40px;min-height:44px;border:0;border-radius:12px;background:#221d13;color:#f6ecd6;font-size:16px;cursor:pointer}
@media (max-width:760px){.qy-bulk{bottom:calc(84px + env(safe-area-inset-bottom))}body.is-reception .qy-bulk{bottom:calc(92px + env(safe-area-inset-bottom))}.qy-stbtn{margin-right:8px;max-width:118px;white-space:normal;text-align:center;line-height:1.25}}
.qy-rows .qy-li .qy-stbtn{width:auto;border:0;min-height:36px;border-radius:999px;padding:6px 12px}
@media (max-width:760px){
  .qy-li{display:grid;grid-template-columns:44px minmax(0,1fr)}
  .qy-li .qy-ck{grid-row:1/3}
  .qy-rows .qy-li .qy-main{padding:12px 12px 4px 0;min-height:0}
  .qy-rows .qy-li .qy-stbtn{justify-self:start;margin:4px 0 12px 66px;max-width:none;white-space:nowrap}
  .qy-who small{white-space:normal}
}
.qy-pays{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px}
.qy-pay{display:inline-flex;align-items:center;font-size:11.5px;font-weight:700;padding:2px 8px;border-radius:999px;background:var(--sunk);color:var(--muted);white-space:nowrap}
.qy-pay-ok{background:var(--ok-soft);color:var(--ok)}
.qy-pay-dep{background:#e3edfa;color:#2c5ea8}
.qy-pay-left{background:var(--warn-soft);color:var(--warn)}
.qy-pay-no{background:var(--bad-soft);color:var(--bad)}
@media (prefers-color-scheme:dark){.qy-pay-dep{background:#1c2c45;color:#8db6f0}}
.qy-paybox{margin:12px 16px 0;padding:14px;border-radius:18px;border:1.5px solid color-mix(in srgb,#d9b45c 55%,transparent);background:color-mix(in srgb,#d9b45c 8%,var(--surface))}
.qy-pmtabs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:4px 0 12px}
.qy-pmtabs button{min-height:44px;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--muted);font:700 14px var(--body);cursor:pointer}
.qy-pmtabs button.on{background:#d9b45c;border-color:#d9b45c;color:#141109}
.qy-qrbox{display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:center;text-align:center}
.qy-qrbox img{width:200px;height:200px;background:#fff;border-radius:14px;padding:8px}
.qy-qrbox p{margin:0;font-size:14px;line-height:1.6}
.qy-ref{font-family:var(--mono);font-size:12.5px;font-weight:700;word-break:break-all}
.qy-wait-pay{display:flex;align-items:center;justify-content:center;gap:8px;font-size:13px;color:var(--muted);margin:10px 0}
.qy-wait-pay i{width:10px;height:10px;border-radius:50%;background:#d9b45c;animation:qyPulse 1.2s infinite}
@keyframes qyPulse{0%,100%{opacity:.25;transform:scale(.8)}50%{opacity:1;transform:scale(1.15)}}
.qy-paybox .qy-act{width:100%;margin-top:8px}
.qy-st4{grid-template-columns:repeat(4,1fr)}
.qy-stsel button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px}
.qy-stsel button small{font-size:11px;font-weight:600;opacity:.85}
.qy-stsel button.on.qy-dep{border-color:#5b8fd6;background:#e3edfa;color:#2c5ea8}
@media (prefers-color-scheme:dark){.qy-stsel button.on.qy-dep{background:#1c2c45;color:#8db6f0}}
@media (max-width:420px){.qy-st4{grid-template-columns:repeat(2,1fr)}}
/* Khung thu tiền gọn */
.qy-paybox{padding:12px 14px 14px}
.qy-pb-h{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:10px}
.qy-pb-t{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.qy-pb-h b{font-size:20px}
.qy-seg{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;padding:3px;border-radius:12px;background:var(--sunk);margin-bottom:12px}
.qy-seg button{min-height:36px;border:0;border-radius:9px;background:none;color:var(--muted);font:700 13px var(--body);cursor:pointer}
.qy-seg button.on{background:#d9b45c;color:#141109}
.qy-pb-qr{display:flex;gap:14px;align-items:center}
.qy-pb-qr img{width:150px;height:150px;flex:none;background:#fff;border-radius:12px;padding:6px}
.qy-pb-info{display:flex;flex-direction:column;gap:3px;min-width:0;font-size:13px;color:var(--muted)}
.qy-pb-info b{font-size:20px;color:var(--fg)}
.qy-pb-info .qy-ref{all:unset;cursor:pointer;font-family:var(--mono);font-size:11.5px;font-weight:700;color:var(--fg);word-break:break-all;line-height:1.4}
.qy-pb-info .qy-ref i{font-style:normal;color:#b8913a}
.qy-pb-info .qy-wait-pay{justify-content:flex-start;margin:6px 0 2px;font-size:12px}
.qy-linkbtn{align-self:flex-start;border:1px solid var(--line);background:var(--surface);color:var(--fg);font:700 13px var(--body);padding:8px 12px;border-radius:10px;cursor:pointer;margin-top:4px}
.qy-paybox .qy-act{margin-top:0}
@media (max-width:480px){
  .qy-paybox{margin:10px 12px 0}
  .qy-pb-qr{flex-direction:column;align-items:stretch;text-align:center}
  .qy-pb-qr img{align-self:center;width:180px;height:180px}
  .qy-pb-info{align-items:center}
  .qy-pb-info .qy-wait-pay{justify-content:center}
  .qy-linkbtn{align-self:stretch;min-height:44px}
  .qy-acts{padding:12px}
  .qy-chips{gap:6px;padding:10px 12px 2px}.qy-chip{padding:8px 10px}
  .qy-who2{padding:14px 12px 4px}.qy-contact{padding:8px 12px 0}.qy-band{padding:10px 12px}
  .qy-stx,.qy-ph{margin-left:12px;margin-right:12px}
}
.qy-pb-info b{display:none}
/* Đăng nhập trên điện thoại: không tràn khung */
.login{grid-template-columns:minmax(0,1fr);overflow-x:hidden}
.login-card{min-width:0;justify-self:center;width:min(440px,100%)}
@media (max-width:480px){.login{padding:20px 14px}.login-card{padding:26px 20px}.login-card h1{white-space:normal;font-size:clamp(24px,7.4vw,30px)}.login-card .login-logo img{max-width:220px;height:auto}}
/* Camera quét mã: điện thoại mở toàn màn hình, không phải cuộn */
.qy-cam-tip{display:none}
@media (max-width:760px){
  #qyCamBox:not([hidden]){position:fixed;inset:0;z-index:95;margin:0;border-radius:0;background:#000;display:flex;align-items:center;justify-content:center}
  #qyVid{position:absolute;inset:0;width:100%;height:100%!important;object-fit:cover}
  .qy-cam-frame{top:45%;width:72%}
  .qy-cam-tip{display:block;position:absolute;left:0;right:0;top:calc(18px + env(safe-area-inset-top));text-align:center;color:#fff;font-weight:700;font-size:16px;text-shadow:0 1px 4px #000}
  .qy-camx{bottom:calc(28px + env(safe-area-inset-bottom));min-height:52px;padding:0 28px;font-size:16px}
  body.qy-cam-on{overflow:hidden}
  body.qy-cam-on .m-tabs,body.qy-cam-on .ag-fab{display:none!important}
}
/* Không còn viền trắng dưới thanh tab (vùng kéo giãn / thanh home của iPhone) */
@media (max-width:760px){
  html{background:#0b0b0a}
  body{min-height:100vh;min-height:100dvh}
  .m-tabs{bottom:0;box-shadow:0 60px 0 #0b0b0a}
  .m-tabs::after{content:"";position:absolute;left:0;right:0;top:100%;height:120px;background:#0b0b0a}
}
/* Hỏi Xưởng trên điện thoại: toàn màn hình, có nút Đóng rõ ràng, không tràn ngang */
@media (max-width:760px){
  .ag-panel{z-index:96;inset:0;width:100%;height:100vh;height:100dvh;border-left:0;overflow-x:hidden;padding-top:env(safe-area-inset-top)}
  .ag-h{position:sticky;top:0;z-index:2;background:var(--bg,#0d0b08);align-items:center;padding:10px 12px}
  .ag-h .icon-btn{width:42px;height:42px;font-size:18px}
  #agX{border-radius:50%;background:#d9b45c;color:#141109}
  .ag-body{overflow-x:hidden}
  .ag-body button,.ag-body .chip{white-space:normal;max-width:100%;text-align:left}
  .ag-in{padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:var(--bg,#0d0b08)}
  .ag-in textarea{font-size:16px;min-width:0}
  .ag-in .btn{flex:none}
  body:has(#agPanel:not([hidden])){overflow:hidden}
  body:has(#agPanel:not([hidden])) .m-tabs,body:has(#agPanel:not([hidden])) .ag-fab{display:none!important}
}
@media (max-width:760px){#view a,#view small,#view .small{overflow-wrap:anywhere}}

/* Trợ lý: bình luận chưa gửi được */
.as-cmt{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px}
.as-cmt .hint{margin:0;flex:1 1 200px}
.as-draft{margin-top:12px;border:1px dashed var(--line,#d9d3c4);border-radius:14px;padding:10px 12px;background:rgba(201,162,74,.08)}
.as-draft-t{all:unset;display:block;cursor:pointer;margin-top:4px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}
.as-head .jerr{overflow-wrap:anywhere}
.as-top .chip{white-space:nowrap;flex:none}

/* Khách Check In: xếp phòng & người phụ trách */
.qy-asg{margin-top:14px;padding:12px 14px;border:1px solid var(--line,#e7e1d3);border-radius:16px;background:var(--card2,rgba(201,162,74,.06))}
.qy-asg-r{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end;margin-top:8px}
.qy-asg-r label{display:flex;flex-direction:column;gap:4px;min-width:0}
.qy-asg-r small{font-size:12px;color:var(--muted,#8a826f)}
.qy-asg-r input{width:100%;min-height:44px;border-radius:12px;font-size:16px}
.qy-asg-ok{min-height:44px;padding:0 16px;border:0;border-radius:12px;background:linear-gradient(135deg,#f0d48a,#d9b45c);color:#141109;font-weight:700;cursor:pointer}
.qy-asgl{display:block;color:var(--gold,#a8812e);font-weight:600}
@media (max-width:560px){.qy-asg-r{grid-template-columns:1fr 1fr}.qy-asg-ok{grid-column:1/-1}}

/* Quản lý đặt lịch: logo lịch */
.nav a.quay-nav .ni{display:inline-flex;align-items:center;justify-content:center}
.nav a.quay-nav .qy-logo{width:20px;height:20px;display:block}
body.sb-mini #shell>.top .nav a.quay-nav .qy-logo{width:22px;height:22px}
.qy-h1{display:flex;align-items:center;gap:12px}
.qy-h1-ic{flex:none;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,#f0d48a,#d9b45c);color:#141109;box-shadow:0 4px 14px rgba(217,180,92,.3)}
.qy-h1-ic .qy-logo{width:24px;height:24px}
.m-ci b{display:flex;align-items:center;gap:8px}.m-ci-ic{display:inline-flex}.m-ci-ic .qy-logo{width:20px;height:20px}

/* Phòng & Host: nhãn bấm để chọn */
.qy-li-asg{display:block;margin-top:7px}
.qy-asgs{display:flex;flex-wrap:wrap;gap:6px}
.qy-tag{display:inline-flex;align-items:center;gap:4px;min-height:30px;line-height:1;padding:0 12px;border-radius:999px;border:1px dashed var(--line);background:transparent;color:var(--muted);font:600 13px var(--body);cursor:pointer;white-space:nowrap;max-width:220px;overflow:hidden;text-overflow:ellipsis}
.qy-tag i{font-style:normal;font-size:10px;opacity:.7}
.qy-tag.set{border-style:solid;border-color:rgba(217,180,92,.55);background:rgba(217,180,92,.14);color:var(--fg)}
.qy-tag:hover{border-color:#d9b45c}
.qy-asg-r{display:block!important;margin-top:8px}
.qy-asg .qy-tag{min-height:40px;font-size:14px}
.qy-asgmenu{width:220px;max-height:60vh;overflow:auto}
.qy-asgmenu-h{font-size:12px;font-weight:700;color:var(--muted);padding:8px 12px 4px;letter-spacing:.02em}
.qy-asgmenu-e{font-size:13px;color:var(--muted);padding:6px 12px}
.qy-asgmenu .qy-asg-clear{color:var(--muted)}
.qy-asgmenu .qy-asg-edit{border-top:1px solid var(--line);color:#a8812e;font-weight:700}
.qy-optlink{font-size:12px;font-weight:600;color:#a8812e;margin-left:6px}

/* Host: chọn nhiều người */
.qy-tag-add{min-width:30px;justify-content:center;padding:0 10px;font-size:15px}
.qy-ckm{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:5px;border:1.5px solid var(--line);margin-right:8px;font-size:12px;color:#141109;flex:none}
.qy-asgmenu button.on .qy-ckm{background:#d9b45c;border-color:#d9b45c}
.qy-asgmenu button{display:flex;align-items:center}
.qy-asgmenu .qy-asg-done{justify-content:center;margin:6px 8px;border-radius:10px;background:#d9b45c!important;color:#141109!important;font-weight:700}
.qy-hostpick{display:flex;flex-wrap:wrap;gap:6px;min-height:46px;align-items:center}
.qy-hp{display:inline-flex;cursor:pointer}.qy-hp input{position:absolute;opacity:0;pointer-events:none}
.qy-hp span{display:inline-flex;align-items:center;min-height:38px;padding:0 14px;border-radius:999px;border:1px dashed var(--line);font-weight:600;font-size:14px;color:var(--muted)}
.qy-hp input:checked+span{border-style:solid;border-color:rgba(217,180,92,.55);background:rgba(217,180,92,.14);color:var(--fg)}
.qy-hp input:checked+span::before{content:"✓ ";margin-right:4px;color:#a8812e}
.qy-hp input:focus-visible+span{outline:2px solid #d9b45c}

/* ===== Quản trị App (gợi ý Media Wellness) ===== */
.ap-tabs{margin:0 0 14px}
.ap-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:0 0 16px}
.ap-kpi{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px 16px;display:flex;flex-direction:column;gap:2px}
.ap-kpi small{color:var(--muted);font-size:12px}
.ap-kpi b{font-size:22px;color:var(--gold);font-variant-numeric:tabular-nums}
.ap-kpi span{color:var(--muted);font-size:12px}
.ap-ready{display:flex;flex-wrap:wrap;gap:6px}
.ap-chip{font-size:12px;padding:4px 10px;border-radius:999px;border:1px solid var(--line);background:var(--sunk)}
.ap-chip.ok{border-color:transparent;background:var(--ok-soft);color:var(--ok)}
.ap-chip.no{color:var(--muted)}
.ap-tbl td{vertical-align:top}
.ap-tbl{min-width:760px}
.ap-tag{display:inline-block;font-size:11px;padding:1px 7px;border-radius:999px;background:var(--sunk);border:1px solid var(--line);color:var(--muted);vertical-align:middle}
.ap-tag.gold{background:var(--gold-soft);color:var(--gold);border-color:transparent}
.ap-tag.den{background:#14120f;color:#e6c47a;border-color:#14120f}
.ap-tag.bad{background:var(--bad-soft);color:var(--bad);border-color:transparent}
.ap-over{color:var(--warn);font-weight:600}
.ap-off td{opacity:.6}
.ap-note{max-width:260px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ap-bar{height:4px;border-radius:4px;background:var(--sunk);margin-top:4px;max-width:140px;overflow:hidden}
.ap-bar i{display:block;height:100%;background:var(--gold)}
.ap-bar i.hot{background:var(--warn)}
.ap-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.ap-grid input,.ap-grid select{width:100%}
.ap-feats{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px}
.ap-feat{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--sunk);font-weight:400}
.ap-feat select{max-width:120px}
.ap-pw{white-space:pre-wrap;background:var(--sunk);border:1px solid var(--line);border-radius:10px;padding:12px;font-size:13px;user-select:all}
.ap-srv-list{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:8px}
.ap-srv-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px}
@media (max-width:640px){.ap-kpi b{font-size:19px}.ap-srv-row{flex-direction:column;align-items:flex-start}}

/* ===== SEO: kiểm tra chuyên sâu (bộ SEO mở rộng) ===== */
.sd-form{display:flex;flex-direction:column;gap:10px;margin-bottom:14px}
.sd-kinds{display:flex;flex-wrap:wrap;gap:6px}
.sd-h{font-size:14px;margin:6px 0 8px}
.sd-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.sd-open{all:unset;box-sizing:border-box;width:100%;display:flex;gap:12px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:12px;cursor:pointer;background:var(--surface)}
.sd-open:hover:not([disabled]){border-color:var(--gold)}
.sd-open[disabled]{cursor:default;opacity:.8}
.sd-open small{display:block;margin-top:2px}
.sd-sc{flex:none;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font-weight:700;background:var(--gold-soft);color:var(--gold)}
.sd-sc.bad{background:var(--bad-soft);color:var(--bad)}
.sd-rep{max-height:66vh;overflow:auto;padding-right:6px}
.sd-rep h2,.sd-rep h3{margin:16px 0 6px}
.sd-rep .tbl-wrap{max-height:none}
/* Healy (thương hiệu riêng) */
.hy-tabs{margin-bottom:14px}
.hy-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px;margin:0 0 14px}
.hy-2 .panel,#hyBody>.panel{margin-bottom:14px}.hy-2 .panel{margin-bottom:0}
.hy-bars{display:flex;align-items:flex-end;gap:3px;height:120px;margin-top:10px}
.hy-bars i{flex:1;background:var(--violet);border-radius:3px 3px 0 0;min-width:3px;opacity:.85}
.hy-bars-x{display:flex;justify-content:space-between;margin-top:4px}
.hy-list{list-style:none;margin:8px 0 0;padding:0}
.hy-list li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 0;border-top:1px solid var(--line)}
.hy-list li:first-child{border-top:0}
.hy-filter{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px;padding:12px}
.hy-filter input[type=search]{flex:1 1 100%;min-width:220px}.hy-filter select{width:auto}
.hy-pager{justify-content:center;margin-top:10px}
.hy-kpis{margin-top:14px}
.hy-note{background:var(--sunk);border-radius:10px;padding:10px 12px;margin-top:10px}
.hy-note.bad{background:var(--bad-soft)}
.hy-dl{display:grid;grid-template-columns:max-content 1fr;gap:6px 14px;margin:10px 0 0}
.hy-dl dt{color:var(--muted);font-size:13px}.hy-dl dd{margin:0;font-weight:600;word-break:break-word}
.hy-det{max-width:420px;white-space:normal;word-break:break-word}
.ap-tag.hy-ok{background:var(--ok-soft);color:var(--ok);border-color:transparent}
.ap-tag.hy-live{background:var(--violet-soft);color:var(--violet);border-color:transparent}
.hy-tbl tr.ap-off td{opacity:.6}
@media (max-width:700px){.hy-filter select{flex:1 1 45%}}
/* Sửa giúp website */
.sf-setup{background:var(--sunk);border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin-bottom:12px}
.sf-setup ol{margin:8px 0 6px 18px;padding:0;display:grid;gap:6px}
.sf-ok{display:flex;gap:8px;align-items:flex-start;margin-bottom:10px}.sf-ok .ic{color:var(--ok);font-weight:800}
.sf-quick{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px}
.sf-ready{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center;border:1px solid var(--gold);background:var(--gold-soft);border-radius:12px;padding:10px 12px;margin-bottom:10px}
.sf-ready small{display:block}
.sf-hist{list-style:none;margin:6px 0 0;padding:0}.sf-hist li{display:flex;gap:10px;justify-content:space-between;align-items:center;padding:8px 0;border-top:1px solid var(--line)}.sf-hist li:first-child{border-top:0}
.sf-sec{border-top:1px solid var(--line);padding:12px 0}.sf-sec:first-of-type{border-top:0}
.sf-sec input:not([type]),.sf-sec input[type=text],.sf-sec textarea{width:100%;margin-top:6px}
.sf-opt{display:flex;gap:8px;align-items:flex-start;margin:4px 0}
.sf-faq{display:grid;gap:6px;padding:8px 0;border-bottom:1px dashed var(--line)}.sf-faq .btn{justify-self:start}
.sf-alts{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;margin-top:8px}
.sf-alt{display:grid;gap:6px}.sf-alt img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:8px;background:var(--sunk)}
.sf-fixbtn{margin-top:6px}
.sf-note{margin-top:8px}
/* Sức khỏe tài khoản: giải pháp thực thi */
.an-sol{border-color:var(--gold);background:var(--gold-soft)}
.an-sol-l{list-style:none;margin:8px 0;padding:0;display:grid;gap:8px}
.an-sol-l li{display:flex;gap:10px;align-items:flex-start}.an-sol-l li.off{opacity:.6}
.an-sol-l .ic{width:26px;height:26px;flex:none;border-radius:50%;background:var(--surface);display:grid;place-items:center;font-weight:800}
.an-sol-l small{display:block}
.sg-run b + small,.sg-run small{display:block;margin-top:2px}
.an-talk{display:grid;gap:8px;margin-top:10px;border-top:1px solid var(--line);padding-top:10px}
.an-msg{display:grid;gap:2px;background:var(--surface);border-radius:10px;padding:8px 10px}.an-msg.me{background:var(--sunk)}
.an-msg b{font-size:12px;color:var(--muted)}
.an-talk textarea{width:100%}
.an-sol-l li{position:relative;padding-right:84px}.an-ask{position:absolute;right:0;top:0}
/* Hộp thoại rộng: phần nội dung tự cuộn, hàng nút luôn nằm dưới, không đè lên chữ */
.modal-card.xwide #modalBody{overflow-y:auto;overscroll-behavior:contain;padding-right:4px}
.modal-card.xwide .modal-actions{flex:none;margin:0 -22px -22px;padding:12px 22px 16px;background:var(--surface);border-top:1px solid var(--line);border-radius:0 0 18px 18px}
.pl-fix[data-plfix]::before{content:'Điền để chạy được việc này:';flex-basis:100%;font-size:12px;font-weight:700;color:var(--warn)}
.an-sol-l li.done .ic{background:var(--ok);color:#fff}.an-sol-l li.done b{text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--ok) 60%,transparent)}
.an-sol-l li.fail .ic{background:var(--bad);color:#fff}
.an-sol-l .ok-t{color:var(--ok);font-weight:700}
.an-bud{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:12.5px;font-weight:700;color:var(--warn);margin-top:4px}.an-bud input{width:140px;padding:5px 8px}
.ce-sets{display:grid;gap:6px}.ce-set{display:flex;gap:8px;align-items:center;justify-content:space-between;border:1px solid var(--line);border-radius:10px;padding:6px 10px}
.ce-set input[data-sb]{width:150px}
.rc-edit{color:inherit;text-decoration:none;border-bottom:1px dashed currentColor}

/* Khoảng thời gian cho chiến dịch Meta */
.rg-seg{display:flex;flex-wrap:wrap;gap:4px;margin:8px 0 4px;padding:4px;background:var(--sunk);border:1px solid var(--line);border-radius:12px;max-width:100%;box-sizing:border-box}
.rc-head{flex:1 1 320px;min-width:0}
.rg-seg button{min-height:36px;padding:6px 14px;border-radius:9px;border:0;background:transparent;font:inherit;font-size:13.5px;font-weight:600;color:var(--muted);cursor:pointer}
.rg-seg button.on{background:var(--surface);color:var(--fg);box-shadow:0 1px 3px rgba(0,0,0,.12)}
.rg-cus{display:grid!important;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;align-items:center;gap:6px;margin:6px 0;max-width:460px}
.rg-cus>*{margin:0!important}.rg-cus input[type=date]{width:100%!important;min-width:0}
.rg-cus input[type=date]{min-height:38px;padding:6px 10px;border:1px solid var(--line);border-radius:9px;font:inherit;font-size:16px}

/* Sửa chữ trên website: câu cũ gạch, câu mới bên dưới */
.pl-diff{display:flex;flex-direction:column;gap:6px;margin:6px 0}
.pl-diff>span{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:9px;background:var(--sunk);font-size:13.5px;line-height:1.45}
.pl-diff del{color:#b4483c;text-decoration:line-through;text-decoration-color:rgba(180,72,60,.5)}
.pl-diff ins{color:#2f7a4b;text-decoration:none}
.pl-diff ins::before{content:'→ ';opacity:.6}

/* ===== Trung tâm quảng cáo, bố cục 4 thẻ ===== */
.ac2-h{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px;margin:4px 0 14px}
.ac2-h h1{font-family:var(--display);font-size:clamp(26px,5vw,36px);line-height:1.1;margin:0;font-weight:500}
.ac2-h h1 em{color:var(--gold);font-style:italic}
.ac2-meta{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:13px;color:var(--muted);margin-top:6px}
.ac2-meta .bl{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--ch-meta);margin-right:6px}
.ac2-acts{display:flex;flex-wrap:wrap;gap:8px}
.ac2-acts .btn{min-height:42px}
.ac2-ic{min-width:42px;justify-content:center}
.ac2-ic.busy{animation:spin 1s linear infinite}
.ac2-tabs{position:sticky;top:0;z-index:20;display:flex;gap:4px;padding:5px;margin:0 0 10px;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:0 6px 18px -12px rgba(0,0,0,.25);overflow-x:auto;scrollbar-width:none}
.ac2-tabs::-webkit-scrollbar{display:none}
.ac2-t{flex:1 0 auto;display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:8px 14px;border:0;border-radius:10px;background:transparent;font:inherit;font-size:14.5px;font-weight:600;color:var(--muted);cursor:pointer;white-space:nowrap;position:relative}
.ac2-t i{font-style:normal;opacity:.8}
.ac2-t.on{background:var(--fg);color:var(--surface)}
.ac2-t.cfg{flex:0 0 auto}.ac2-t.cfg span{display:none}
.ac2-badge{font-style:normal;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:#c0563f;color:#fff;font-size:12px;line-height:20px;text-align:center}
.ac2-sub{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin:0 0 6px;padding:2px 0}
.ac2-sub::-webkit-scrollbar{display:none}
.ac2-sub button{flex:0 0 auto;min-height:38px;padding:7px 14px;border-radius:999px;border:1px solid var(--line);background:var(--surface);font:inherit;font-size:13.5px;font-weight:600;color:var(--muted);cursor:pointer;white-space:nowrap}
.ac2-sub button.on{border-color:var(--gold);background:var(--gold-soft);color:var(--fg)}
.ac2-hint{margin:2px 0 12px;font-size:13.5px;color:var(--muted);text-wrap:pretty}
@media (max-width:720px){.ac2-t span{font-size:13.5px}.ac2-t{padding:8px 10px}.ac2-h{align-items:flex-start}.ac2-acts{width:100%}.ac2-acts .btn.gold{flex:1}}
@media (max-width:420px){.ac2-t i{display:none}}

/* Tổng quan */
.ov2{display:flex;flex-direction:column;gap:14px}
.ov2-top{display:grid;grid-template-columns:minmax(260px,1fr) 2fr;gap:14px}
@media (max-width:900px){.ov2-top{grid-template-columns:1fr}}
.ov2-score,.ov2-k,.ov2-box{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:16px}
.ov2-score{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.ov2-g{position:relative;flex:0 0 auto}
.ov2-gv{position:absolute;left:0;right:0;bottom:2px;text-align:center;line-height:1}
.ov2-gv b{font-size:34px;font-weight:700}.ov2-gv small{color:var(--muted);font-size:13px}
.ov2-gt{flex:1 1 180px;min-width:0}
.ov2-gt h2,.ov2-kh h2,.ov2-bh h2{font-size:16px;margin:0 0 6px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ov2-kh h2 small{font-weight:500;color:var(--muted);font-size:13px}
.ov2-gt p{margin:0 0 8px;font-size:13.5px;color:var(--muted);text-wrap:pretty}
.ov2-waste b{color:#c0563f}
.ov2-ga{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.grade{display:inline-block;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:700;background:var(--sunk)}
.grade.gA,.grade.gB{background:var(--ok-soft);color:var(--ok)}.grade.gC{background:var(--gold-soft);color:var(--gold)}.grade.gD,.grade.gE,.grade.gF{background:var(--bad-soft);color:var(--bad)}
.ov2-kh{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 12px;margin-bottom:10px}
.ov2-kh .rg-seg{margin:0}
.ov2-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
@media (max-width:640px){.ov2-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ov2-t{position:relative;display:flex;flex-direction:column;gap:2px;padding:12px;border-radius:12px;background:var(--sunk);overflow:hidden;min-width:0}
.ov2-tl{font-size:12.5px;color:var(--muted)}
.ov2-t b{font-size:clamp(20px,4vw,26px);font-weight:700;line-height:1.15}
.ov2-td{font-size:12px;min-height:16px}
.ov2-t svg{width:100%;height:28px;margin-top:4px}
.dl{font-weight:700}.dl.up{color:var(--ok)}.dl.dn{color:var(--bad)}.dl.n{color:var(--fg)}.dl0{color:var(--muted)}
.ov2-bh{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;margin-bottom:10px}
.ov2-bh>span{font-size:13px;color:var(--muted)}
.ov2-bh h2 em{font-style:normal;background:#c0563f;color:#fff;border-radius:10px;padding:0 8px;font-size:12.5px;line-height:20px}
.ov2-bh h2 em:empty{display:none}
.ov2-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:14px}
@media (max-width:900px){.ov2-grid{grid-template-columns:1fr}}
.ov2-bars{display:flex;flex-direction:column;gap:8px}
.ov2-bar{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto;gap:10px;align-items:center;padding:6px 8px;border-radius:10px;color:inherit;text-decoration:none}
.ov2-bar:hover{background:var(--sunk)}
.ov2-bar .nm{font-size:13.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ov2-bar .tr{height:10px;border-radius:6px;background:var(--sunk);overflow:hidden}
.ov2-bar .tr i{display:block;height:100%;border-radius:6px;background:var(--gold)}
.ov2-bar.good .tr i{background:var(--ok)}.ov2-bar.bad .tr i{background:#c0563f}
.ov2-bar .vl{display:flex;flex-direction:column;align-items:flex-end;line-height:1.2}
.ov2-bar .vl small{font-size:11.5px;color:var(--muted);white-space:nowrap}
@media (max-width:560px){.ov2-bar{grid-template-columns:1fr auto}.ov2-bar .tr{grid-column:1/-1;grid-row:2}}
.ov2-leg{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:12.5px;color:var(--muted);margin:10px 0 0}
.ov2-leg .good{color:var(--ok)}.ov2-leg .bad{color:#c0563f}.ov2-leg a{margin-left:auto}
.ov2-fun{display:flex;flex-direction:column;align-items:center;gap:4px;margin-bottom:8px}
.ov2-fr{width:100%;display:flex;flex-direction:column;align-items:center}
.ov2-fb{display:flex;justify-content:space-between;gap:8px;padding:12px 14px;border-radius:10px;background:var(--fg);color:var(--surface);font-size:13.5px}
.ov2-fr:nth-child(2) .ov2-fb{background:var(--gold-deep,var(--gold))}.ov2-fr:nth-child(3) .ov2-fb{background:var(--gold)}
.ov2-fr small{font-size:12px;color:var(--muted);margin:2px 0}
/* Hộp việc chờ duyệt */
.ib-l{display:flex;flex-direction:column;gap:8px}
.ib-r{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:start;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.ib-r.warn{border-color:var(--warn);background:var(--warn-soft)}
.ib-ic{width:38px;height:38px;border-radius:10px;background:var(--gold-soft);color:var(--gold);display:grid;place-items:center;font-weight:700}
.ib-b{display:flex;flex-direction:column;gap:3px;min-width:0}
.ib-b>b{font-size:14.5px;line-height:1.35;text-wrap:pretty}
.ib-b>small{color:var(--muted);font-size:13px}
.ib-why{font-size:12.5px!important}
.ib-src{font-size:11.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.ib-a{display:flex;flex-direction:column;gap:6px;align-items:stretch}
.ib-a .btn{min-height:40px;white-space:nowrap}
@media (max-width:560px){.ib-r{grid-template-columns:32px minmax(0,1fr)}.ib-ic{width:32px;height:32px}.ib-a{grid-column:1/-1;flex-direction:row}.ib-a .btn{flex:1}}
.ib-empty{display:flex;flex-direction:column;gap:4px;align-items:center;text-align:center;padding:22px 12px;border:1px dashed var(--line);border-radius:12px;color:var(--muted)}
.ib-empty b{color:var(--ok);font-size:15px}
.ib-foot{display:flex;flex-direction:column;gap:8px;margin-top:10px}
.ib-foot>.btn{align-self:flex-start;min-height:44px}
.ib-more{border:1px solid var(--line);border-radius:12px;padding:10px 12px}
.ib-more summary{cursor:pointer;font-weight:600;font-size:14px}
.ib-d{display:flex;gap:10px;padding:8px 0;border-top:1px solid var(--line);font-size:13.5px}
.ib-d:first-of-type{border-top:0;margin-top:6px}
.ib-d small{display:block;color:var(--muted);font-size:12.5px}
.ok-t{color:var(--ok)}
/* Báo cáo */
.rp2-bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px}
.rp2-l{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.rp2-l select{min-height:40px}
.rp2-bar .btn{min-height:42px}
.rp2-top{display:flex;flex-direction:column;gap:12px}
.rp2-sc{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:14px;border-radius:var(--r);background:var(--surface);border:1px solid var(--line)}
.rp2-sc>span{font-weight:600}
.rk-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px}
.rk{position:relative;display:flex;flex-direction:column;gap:3px;padding:12px;border-radius:12px;background:var(--surface);border:1px solid var(--line);min-width:0}
.rk.none{opacity:.6}
.rk-l{font-size:12.5px;color:var(--muted);padding-right:54px}
.rk b{font-size:20px;line-height:1.2;word-break:break-word}
.rk-s{font-size:13px;font-weight:600}
.rk small{font-size:12px;color:var(--muted);line-height:1.35}
.rk-tag{position:absolute;top:10px;right:10px;font-size:10.5px;font-weight:700;padding:2px 6px;border-radius:6px;text-transform:uppercase;letter-spacing:.03em}
.rk-tag.real{background:var(--ok-soft);color:var(--ok)}.rk-tag.est{background:var(--gold-soft);color:var(--gold)}
.rp2-morek summary,.rp2-full summary{cursor:pointer;font-weight:600;font-size:14px;padding:4px 0}
.rp2-morek .rk-g{margin-top:10px}
.rp2-full summary{font-size:15px}
.ch2{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.ch2-c{display:flex;flex-direction:column;gap:6px;padding:12px;border-radius:12px;background:var(--sunk)}
.ch2-c.none{opacity:.65}
.ch2-h{display:flex;justify-content:space-between;gap:8px;align-items:center}
.ch2-n{display:grid;grid-template-columns:1fr 1fr;gap:8px;font-size:13px;font-weight:600}
.ch2-n small{display:block;font-weight:400;color:var(--muted);font-size:11.5px}
.ch2-note{font-size:12.5px;color:var(--muted)}
.fit{font-size:11.5px;font-weight:700;padding:2px 8px;border-radius:999px;white-space:nowrap}
.fit.f3{background:var(--ok-soft);color:var(--ok)}.fit.f2{background:var(--gold-soft);color:var(--gold)}.fit.f1{background:var(--sunk);color:var(--muted);border:1px solid var(--line)}
.ib-g{margin:12px 0 2px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--gold)}
.ib-more summary small{font-weight:400}

/* Giao lệnh cho Xưởng */
.ib-cmd{display:flex;gap:8px;align-items:stretch;margin-bottom:10px}
.ib-cmd textarea{flex:1;min-height:52px;resize:vertical;font-size:16px;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--fg)}
.ib-cmd .btn{min-height:52px;white-space:nowrap}
@media (max-width:560px){.ib-cmd{flex-direction:column}.ib-cmd .btn{min-height:46px}}
.ib-busy,.ib-reply{display:flex;flex-direction:column;gap:3px;padding:10px 12px;border-radius:12px;margin-bottom:10px;font-size:13.5px}
.ib-busy{flex-direction:row;align-items:center;gap:8px;background:var(--gold-soft)}
.ib-reply{background:var(--sunk);border-left:3px solid var(--gold)}
.ib-reply b{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--gold)}
.ib-mall{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:10px 0 4px}
.ib-d .btn{margin-left:auto;align-self:center;white-space:nowrap}
@media (max-width:560px){.ib-d{flex-wrap:wrap}.ib-d .btn{margin-left:22px}}

.ib-d{align-items:flex-start}
.ib-dot{color:var(--gold);line-height:1.4}
.ib-dt{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.ib-dt b{font-size:14px;line-height:1.4;text-wrap:pretty}
.ib-who{font-style:normal;font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
@media (max-width:560px){.ib-d{flex-wrap:wrap}.ib-dt{flex:1 1 calc(100% - 24px)}.ib-d .btn{margin-left:22px;flex:1 1 100%;min-height:42px}}

/* Trung tâm quảng cáo: đầu trang kiểu SEO & GEO */
.ac2-xh .hb-acts{margin-top:14px}
.ac2-xh .ac2-meta{color:#a59e8c;margin-top:12px}
.ac2-xh .ac2-meta a{color:#e8c76f}
.ac2-r{font:inherit;color:inherit;cursor:pointer;width:100%}
html[data-theme="light"] .sg-ring text{fill:#0d0d0d}
.ac2-r:hover b{color:#e8c76f}
.sg-big.warn{color:#e0785f}
.ov2-top.one{grid-template-columns:1fr}
.ac2-tabs{top:0}
/* Menu: thư mục Trung tâm quảng cáo */
.nav-fold{display:flex;align-items:center;gap:2px}
.nav-fold>a{flex:1;min-width:0}
.nav-tg{flex:0 0 auto;width:30px;height:30px;border:0;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;font-size:12px;transition:transform .15s}
.nav-tg:hover{background:var(--sunk);color:var(--fg)}
.nav-tg.open{transform:rotate(90deg)}
.nav-subs[hidden]{display:none!important}
body.sb-mini .nav-tg{display:none}

/* Bộ não: ra lệnh + nguồn học */
.br-chat{margin-bottom:16px}
.brc-log{display:flex;flex-direction:column;gap:8px;max-height:420px;overflow:auto;margin-bottom:10px;padding:2px}
.brc-m{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border-radius:12px;background:var(--sunk);font-size:14px;line-height:1.5;max-width:92%}
.brc-m.me{align-self:flex-end;background:var(--gold-soft)}
.brc-m>b{font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--gold)}
.brc-m>span{white-space:pre-wrap;text-wrap:pretty}
.brc-ch{display:flex;flex-direction:column;gap:6px;margin-top:6px}
.brc-ch label{display:flex;gap:8px;align-items:flex-start;padding:8px 10px;border-radius:10px;background:var(--surface);border:1px solid var(--line);font-size:13px}
.brc-ch label.done{opacity:.6}.brc-ch label.bad{border-color:var(--warn)}
.brc-ch label>span{display:flex;flex-direction:column;gap:3px;min-width:0}
.brc-ch em{font-style:normal;font-size:11.5px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.brc-ch del{color:#b4483c}.brc-ch ins{text-decoration:none;color:var(--ok);white-space:pre-wrap}
.brc-ch .btn{align-self:flex-start}
.brs-l{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}
.brs{display:flex;gap:10px;align-items:flex-start;padding:12px;border-radius:12px;border:1px solid var(--gold);background:var(--gold-soft);cursor:pointer}
.brs.off{border-color:var(--line);background:var(--surface);opacity:.7}
.brs input{margin-top:3px;width:18px;height:18px}
.brs span{display:flex;flex-direction:column;gap:2px;min-width:0}
.brs b{font-size:14.5px;word-break:break-all}.brs small{font-size:12.5px;color:var(--muted)}

/* Quầy: lưu ảnh buổi trải nghiệm lên Drive */
.qy-drv{display:flex;flex-direction:column;gap:8px;margin-top:10px;padding-top:10px;border-top:1px dashed var(--line)}
.qy-drv .qy-act{align-self:stretch}
.qy-drv .check{display:flex;align-items:center;gap:8px;min-height:36px}
.qy-drv a{color:var(--gold);font-weight:600}

.pl-seo{display:flex;flex-direction:column;gap:6px;margin:6px 0;padding:10px;border-radius:10px;background:var(--sunk)}
.pl-seo label{display:flex;flex-direction:column;gap:3px}
.pl-seo input,.pl-seo textarea{width:100%;font-size:15px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--fg)}
.pl-seo small{color:var(--muted)}
@media (max-width:560px){.ac2-xh .sg-rings{gap:6px}.ac2-xh .sg-big{font-size:clamp(20px,6.5vw,30px)}.ac2-xh .sg-ring{padding:8px 4px}.ac2-xh .sg-ring b{font-size:11.5px}}

.qy-drv2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
@media (max-width:420px){.qy-drv2{grid-template-columns:1fr}}
.qy-ev{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:12px;background:var(--sunk)}
.qy-ev>span{font-size:22px;line-height:1}
.qy-ev>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.qy-ev b{font-size:14px;word-break:break-word}.qy-ev small{color:var(--muted);font-size:12.5px}
.qy-ev-l{font-size:13px}
.qy-evl{display:flex;flex-direction:column;gap:8px;max-height:60vh;overflow:auto}
.qy-evl label{display:flex;gap:10px;align-items:flex-start;padding:10px;border:1px solid var(--line);border-radius:10px}
.qy-evl label span{display:flex;flex-direction:column}.qy-evl small{color:var(--muted)}

/* Nguyên vật liệu › Video & Hình Event */
.mt-evg{display:flex!important;flex-direction:column;gap:12px}
.ev-top{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px}
.ev-c{display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.ev-c.hl{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-soft)}
.ev-h{display:flex;gap:10px;align-items:flex-start}.ev-ic{font-size:24px;line-height:1}
.ev-h b{display:block;font-size:15px;word-break:break-word}.ev-h small{color:var(--muted);font-size:12.5px}
.ev-n{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.ev-n div{padding:8px;border-radius:10px;background:var(--sunk);display:flex;flex-direction:column}
.ev-n b{font-size:20px}.ev-n small{font-size:11.5px;color:var(--muted)}.ev-n .warn b{color:var(--warn)}
@media (max-width:560px){.ev-n{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ev-pr{position:relative;font-size:13px;padding:8px 10px;border-radius:10px;background:var(--gold-soft);overflow:hidden}
.ev-pr i{position:absolute;left:0;bottom:0;height:3px;background:var(--gold)}
.ev-a{display:flex;flex-wrap:wrap;gap:8px}.ev-a .btn{min-height:40px}

/* Mẫu quảng cáo thắng / tốn tiền */
.rp-ad-w{display:block;font-size:12px;color:var(--muted);margin:1px 0 2px;word-break:break-word}
.rp-ad-a{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.adw-h{display:flex;gap:12px;align-items:flex-start}
.adw-h img,.adw-noimg{width:96px;height:96px;object-fit:cover;border-radius:10px;flex:0 0 auto;background:var(--sunk);display:grid;place-items:center;font-size:28px;color:var(--muted)}
.adw-h>div{flex:1;min-width:0}
.adw-hl{font-weight:700;margin:10px 0 4px}.adw-tx{white-space:pre-wrap;font-size:14px;background:var(--sunk);padding:10px 12px;border-radius:10px;max-height:220px;overflow:auto}
.adw-adv{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}
.adw-adv h4{margin:0 0 6px}.adw-adv p{font-size:14px;margin:4px 0}
.adw-vs{display:flex;flex-direction:column;gap:8px;margin:10px 0}
.adw-v{display:flex;gap:8px;align-items:flex-start;padding:10px;border:1px solid var(--line);border-radius:10px}
.adw-v>span{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}
.adw-v em{font-style:normal;font-size:12px;font-weight:700;color:var(--gold);text-transform:uppercase}
.adw-v input[data-vh],.adw-v textarea{width:100%;font-size:15px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--fg)}
@media (max-width:560px){.adw-h img,.adw-noimg{width:64px;height:64px}}
.ev-a .ev-x{margin-left:auto}
@media (max-width:560px){.ev-a .ev-x{margin-left:0}}

/* SEO & GEO: tab câu hỏi tiếng Anh / tiếng Việt */
.sg-lang{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px}
.sg-lang [data-sgl]{min-height:40px;padding:6px 14px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--muted);font:inherit;font-size:14px;font-weight:600;cursor:pointer}
.sg-lang [data-sgl].on{border-color:var(--gold);background:var(--gold-soft);color:var(--fg)}
.sg-lang [data-sgl] small{font-weight:400;opacity:.8}
.sg-lang #sgRunL{margin-left:auto}
@media (max-width:560px){.sg-lang #sgRunL{margin-left:0;width:100%}}
.sg-runp{font-size:13px;color:var(--muted)}
/* r195: nút trong danh sách không bị xuống dòng, cùng cỡ */
.btn{white-space:nowrap}
.sf-hist li>span{flex:1 1 auto;min-width:0}.sf-hist li>.btn{flex:0 0 auto;min-width:92px}
/* SEO & GEO: phân tích, phản biện, lộ trình thực thi */
.sg-ana{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}
.sg-ak{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 12px}
.sg-ak>div{background:var(--surface-2,rgba(255,255,255,.03));border:1px solid var(--line);border-radius:12px;padding:9px 11px;min-width:0}
.sg-ak b{display:block;font-size:19px;line-height:1.2;color:var(--gold,#e8c76f)}.sg-ak small{display:block;font-size:11.5px;color:var(--muted);line-height:1.3;margin-top:2px}
.sg-note{margin:0 0 8px}.sg-ana h4,.sg-h4{margin:12px 0 6px;font-size:14px}
.sg-todo{margin:0;padding-left:20px;display:grid;gap:7px;font-size:13.5px;line-height:1.5}
.sg-brr .nm small{display:block;font-size:11px;color:var(--muted);font-weight:400}
.sg-brr b small{font-size:11px;color:var(--muted);font-weight:400}
.sg-src{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}.sg-src span{font-size:12px;border:1px solid var(--line);border-radius:999px;padding:3px 10px}.sg-src span.own{border-color:var(--gold,#e8c76f);color:var(--gold,#e8c76f)}
.sg-why{margin-top:12px;border:1px solid var(--line);border-radius:12px;padding:9px 12px;font-size:13.5px}.sg-why summary{cursor:pointer;font-weight:700}.sg-why p{margin:8px 0 0;line-height:1.55}
.sgc-th{display:flex;flex-direction:column;gap:10px;max-height:520px;overflow:auto;padding:4px 2px 10px}
.sgc-m{max-width:88%;border-radius:14px;padding:10px 13px;border:1px solid var(--line);font-size:14px;line-height:1.55}
.sgc-m small{display:block;font-size:11px;color:var(--muted);margin-bottom:3px}.sgc-m p{margin:0 0 8px}.sgc-m p:last-child{margin:0}.sgc-m ul{margin:4px 0 8px;padding-left:18px}.sgc-m h4{margin:8px 0 4px}
.sgc-m.me{align-self:flex-end;background:color-mix(in srgb,var(--gold,#e8c76f) 12%,transparent)}.sgc-m.xu{align-self:flex-start;background:var(--surface)}
.sgc-m.wait div{display:flex;align-items:center;gap:8px;color:var(--muted)}
.sgc-sug{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 10px}.sgc-sug .chip{cursor:pointer;font-size:12.5px}
.sgc-f{display:flex;gap:8px;align-items:flex-end}.sgc-f textarea{flex:1;min-width:0;resize:vertical}
.rd-sum{display:flex;align-items:center;gap:12px;margin-bottom:12px;font-size:13.5px}.rd-bar{flex:1;height:8px;border-radius:9px;background:var(--line);overflow:hidden}.rd-bar i{display:block;height:100%;background:linear-gradient(90deg,#d9b45c,#f0d48a)}
.rd-wait{color:var(--gold,#e8c76f)}
.rd-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.rd-step{border:1px solid var(--line);border-radius:16px;padding:12px 14px;background:var(--surface)}
.rd-step header{display:flex;align-items:center;gap:10px;margin-bottom:6px}.rd-step header>b{font-size:22px;color:var(--gold,#e8c76f);font-family:var(--display,Georgia)}.rd-step h3{margin:0;font-size:15px;flex:1}.rd-step header span{font-size:12px;color:var(--muted)}
.rd-it{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:start;padding:10px 0;border-top:1px solid var(--line)}
.rd-ic{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:800;border:1px solid var(--line);color:var(--muted);margin-top:1px}
.rd-it.pass .rd-ic{background:#2f6b3f;border-color:#2f6b3f;color:#fff}.rd-it.warn .rd-ic{border-color:#c9a24a;color:#e8c76f}.rd-it.fail .rd-ic{border-color:var(--bad);color:var(--bad)}.rd-it.info .rd-ic{border-color:#7d7564}
.rd-tx b{display:block;font-size:13.5px;line-height:1.35}.rd-val{display:block;color:var(--muted);font-size:12px;margin-top:2px}
.rd-tx details{margin-top:3px}.rd-tx summary{font-size:12px;color:var(--muted);cursor:pointer}.rd-tx details p{font-size:12.5px;margin:4px 0 0;line-height:1.5}
.rd-err{font-size:12px;color:var(--bad);margin-top:4px}.rd-res{font-size:12.5px;margin-top:5px;line-height:1.45;padding:6px 9px;border-radius:9px;background:color-mix(in srgb,#2f6b3f 18%,transparent)}.rd-fb{font-size:12px;color:var(--muted);margin-top:4px}
.rd-act{display:flex;flex-direction:column;gap:6px;align-items:stretch}.rd-act .btn{min-width:104px}
.rd-run{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);max-width:150px;white-space:normal;line-height:1.3}
.rd-pairs{display:grid;gap:6px}.rd-nap{border-top:1px solid var(--line);padding:8px 0}.rd-post{max-height:46vh;overflow:auto;border:1px solid var(--line);border-radius:12px;padding:10px 14px;font-size:14px;line-height:1.6}
.rd-copy{border:1px solid var(--line);border-radius:10px;padding:9px 12px;font-size:13.5px;line-height:1.55}.rd-press>div{border-top:1px solid var(--line);padding:8px 0}.rd-press p{margin:3px 0 0}
@media (max-width:900px){.rd-steps{grid-template-columns:1fr}.sg-ak{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.rd-it{grid-template-columns:auto minmax(0,1fr)}.rd-act{grid-column:2;flex-direction:row;flex-wrap:wrap}.sgc-m{max-width:100%}}
.sgc-m>small{display:block!important}
/* SEO & GEO: hai cột bằng nhau, cao bằng nhau */
.hb-grid.sg-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch}
.sg-grid>.panel{display:flex;flex-direction:column}
.sg-grid .sg-qr{grid-template-columns:30px minmax(0,1.4fr) minmax(0,1fr) 54px}
.sg-grid .sg-qr .vl{text-align:right}
.sg-grid .sg-brr{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) 54px;padding:3px 0}
.sg-grid .sg-ak b{font-size:18px}
@media(max-width:980px){.hb-grid.sg-grid{grid-template-columns:1fr}}
.sgc-acts{margin-top:10px;border-top:1px solid var(--line);padding-top:8px;display:grid;gap:6px}
.sgc-ah{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;font-weight:700;color:var(--gold,#e8c76f);text-transform:uppercase;letter-spacing:.06em}
.sgc-a{display:grid;grid-template-columns:20px minmax(0,1fr) auto;gap:8px;align-items:center;font-size:13px}
.sgc-a>span{font-weight:800;color:var(--muted)}.sgc-a.done>span{color:#4c9a5f}.sgc-a.error>span{color:var(--bad)}
.sgc-a small{display:block;color:var(--muted);font-size:12px}.sgc-a .btn{min-width:92px}
.rd-drafts{display:grid;gap:6px;margin-top:6px}.rd-dr{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;justify-content:space-between;border:1px solid var(--line);border-radius:10px;padding:7px 9px;font-size:12.5px}.rd-dr>span:first-child{min-width:0;flex:1 1 220px}
.sg-dos{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}.sg-do{white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.sg-gaps{display:grid;gap:6px;margin:6px 0}.sg-gap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:8px 10px}
.sg-gap b{display:block;font-size:13px}.sg-gap small{display:block;font-size:11.5px;color:var(--muted)}
.sgc-ah>span{text-transform:none;letter-spacing:0;font-weight:600;color:var(--muted);display:flex;align-items:center;gap:6px}
/* Báo chí & nguồn */
.pr-f{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 10px}.pr-f .chip{cursor:pointer;font-size:12.5px}.pr-f .chip.on{border-color:var(--gold,#e8c76f);color:var(--gold,#e8c76f)}.pr-f .chip b{margin-left:3px}
.pr-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.pr-it{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;border:1px solid var(--line);border-radius:14px;padding:11px 13px;background:var(--surface)}
.pr-it.competitor{opacity:.6}.pr-t b{font-size:14px}.pr-t a{color:var(--muted);text-decoration:none;margin-left:4px}
.pr-tags{display:flex;flex-wrap:wrap;gap:5px;margin:5px 0}.pr-tags span{font-size:11px;border:1px solid var(--line);border-radius:999px;padding:2px 8px}
.pr-ci{color:var(--gold,#e8c76f);border-color:color-mix(in srgb,var(--gold,#e8c76f) 50%,transparent)!important}.pr-pr{color:var(--gold,#e8c76f);letter-spacing:1px}
.pr-st.dr{color:#c9a24a}.pr-st.se{color:#6f9fd8}.pr-st.re{color:#a78bd8}.pr-st.li{background:#2f6b3f;border-color:#2f6b3f!important;color:#fff}.pr-st.sk{opacity:.6}
.pr-main p{margin:4px 0 0;line-height:1.45}.pr-act{display:flex;flex-direction:column;gap:6px;align-items:stretch;min-width:118px}.pr-sel{font-size:12.5px;padding:5px 8px;border-radius:8px}
@media(max-width:980px){.pr-list{grid-template-columns:1fr}}
@media(max-width:560px){.pr-it{grid-template-columns:1fr}.pr-act{flex-direction:row;flex-wrap:wrap}}
/* Backlink */
.bl-sum{display:flex;gap:14px;align-items:flex-start;border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin-top:4px}.bl-sum p{margin:0 0 4px;font-size:14px;line-height:1.55}
.bl-sc{flex:none;width:74px;height:74px;border-radius:50%;border:3px solid var(--gold,#e8c76f);display:grid;place-items:center;align-content:center}.bl-sc b{font-size:24px;line-height:1;color:var(--gold,#e8c76f)}.bl-sc small{font-size:11px;color:var(--muted)}
.bl-tb{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 14px}
.bl-r{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:8px;align-items:center;border-top:1px solid var(--line);padding:6px 0;font-size:13px}
.bl-r a{color:inherit;text-decoration:none}.bl-r small{display:block;color:var(--muted);font-size:11.5px}.bl-r .pr-ty{font-size:10.5px;border:1px solid var(--line);border-radius:999px;padding:1px 7px;margin-left:4px}
.bl-q{color:var(--gold,#e8c76f);font-size:12px;letter-spacing:1px}.bl-n{color:var(--muted);font-size:12px;white-space:nowrap}.bl-r.spam{opacity:.6}.bl-r.spam .pr-ty{color:var(--bad)}
.pr-bl a,.pr-mn a{color:var(--gold,#e8c76f)}.pr-mn .btn{margin-left:6px}
@media(max-width:980px){.bl-tb{grid-template-columns:1fr}}
/* Bài recap sau buổi */
.rc-kpi{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.rc-kpi>div{border:1px solid var(--line);border-radius:12px;padding:8px 10px}.rc-kpi b{display:block;font-size:22px;color:var(--gold,#e8c76f)}.rc-kpi small{font-size:11.5px;color:var(--muted)}.rc-kpi p{grid-column:1/-1;margin:4px 0 0}
.rc-src{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;margin-bottom:8px}
.rc-al{border:1px solid var(--line);border-radius:14px;padding:10px;display:flex;flex-direction:column;gap:5px;background:var(--surface)}
.rc-th{display:grid;grid-template-columns:repeat(2,1fr);gap:4px;border-radius:10px;overflow:hidden}.rc-th img{width:100%;aspect-ratio:1;object-fit:cover;display:block}
.rc-card{border:1px solid var(--line);border-radius:16px;padding:14px;background:var(--surface);margin-bottom:12px;display:grid;gap:10px}
.rc-hd{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.rc-hd b{display:block}.rc-strip{display:flex;gap:5px;overflow-x:auto;max-width:100%}.rc-strip img{width:64px;height:64px;object-fit:cover;border-radius:8px;flex:none}
.rc-tabs{margin:0}.rc-tx textarea{width:100%;font-size:14px;line-height:1.55}.rc-blog{display:grid;gap:6px}.rc-q{margin:0}
.rc-opts{display:grid;grid-template-columns:1fr 1fr;gap:12px}.rc-chk{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:4px;font-size:13px}.rc-cons{font-weight:700}
.rc-sl{display:grid;gap:8px}.rc-row{display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px;border:1px solid var(--line);border-radius:14px;padding:10px;background:var(--surface)}.rc-row img{width:64px;height:64px;object-fit:cover;border-radius:10px}.rc-row b{display:block}
.rc-chs{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}.rc-ch{font-size:11.5px;border:1px solid var(--line);border-radius:999px;padding:2px 9px}.rc-ch.done{border-color:#2f6b3f}.rc-ch.failed{border-color:var(--bad);color:var(--bad)}.rc-ch a{color:var(--gold,#e8c76f)}
.rc-pick{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px;margin-bottom:10px}.rc-pick label{position:relative;display:block}.rc-pick img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px;display:block}.rc-pick input{position:absolute;top:6px;left:6px;width:20px;height:20px}
.rc-slot{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:8px}.rc-slot .chip{cursor:pointer}
@media(max-width:760px){.rc-opts{grid-template-columns:1fr}}
/* Lịch nội dung */
a[data-nav="plan"].has-due::after{content:"";width:8px;height:8px;border-radius:50%;background:var(--bad,#d9534f);margin-left:auto}
.pl-due .pl-dr{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:12px;align-items:center;border-top:1px solid var(--line);padding:9px 0}.pl-dr b{display:block}.pl-dr small{color:var(--muted);font-size:12px}
.pl-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}
.pl-day{border:1px solid var(--line);border-radius:14px;padding:8px;background:var(--surface);min-height:120px;display:flex;flex-direction:column;gap:6px}.pl-day.today{border-color:var(--gold,#e8c76f);box-shadow:0 0 0 1px var(--gold,#e8c76f) inset}
.pl-day header{display:flex;justify-content:space-between;align-items:baseline}.pl-day header small{color:var(--muted);font-size:11.5px}
.pl-slot{display:grid;grid-template-columns:20px minmax(0,1fr);gap:6px;align-items:start;text-align:left;border:1px solid var(--line);border-left:4px solid var(--c);border-radius:9px;padding:5px 6px;background:var(--bg,transparent);color:inherit;font:inherit;cursor:pointer}
.pl-slot b{display:block;font-size:12px}.pl-slot small{display:block;font-size:11px;color:var(--muted);line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pl-slot i,.pl-s i{font-style:normal;font-weight:800;width:18px;height:18px;border-radius:50%;display:inline-grid;place-items:center;font-size:11px;border:1px solid var(--line)}
.pl-slot.posted i,.pl-s.posted i{background:#2f6b3f;border-color:#2f6b3f;color:#fff}.pl-slot.scheduled i,.pl-s.scheduled i{border-color:#6f9fd8;color:#6f9fd8}.pl-slot.due i,.pl-s.due i{border-color:#e0a030;color:#e0a030}.pl-slot.missed i,.pl-s.missed i{border-color:var(--bad);color:var(--bad)}
.pl-slot.missed{opacity:.75}.pl-slot.due{background:color-mix(in srgb,#e0a030 10%,transparent)}
.pl-legend{display:flex;flex-wrap:wrap;gap:12px;margin:10px 0 4px;font-size:12px;color:var(--muted)}.pl-s{display:inline-flex;align-items:center;gap:6px}
.pl-topics{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}
.pl-tp{text-align:left;border:1px solid var(--line);border-top:4px solid var(--c);border-radius:14px;padding:11px 12px;background:var(--surface);color:inherit;font:inherit;cursor:pointer;display:flex;flex-direction:column;gap:5px}.pl-tp.off{opacity:.55}.pl-tp.add{align-items:center;justify-content:center;border-style:dashed;border-top:1px dashed var(--line);color:var(--muted);min-height:100px}
.pl-tp small{font-size:12px;line-height:1.4}.pl-tps{display:flex;flex-wrap:wrap;gap:4px}.pl-tps em{font-style:normal;font-size:11px;border:1px solid var(--line);border-radius:999px;padding:1px 7px}
.pl-ef{display:grid;grid-template-columns:1fr auto auto;gap:10px}.pl-er{display:flex;flex-wrap:wrap;gap:6px;align-items:center;border-top:1px solid var(--line);padding:7px 0}.pl-er select{max-width:220px}.pl-dws{display:flex;flex-wrap:wrap;gap:4px}.pl-dws .chip{cursor:pointer;font-size:12px}
.rc-tabs button{min-height:36px;padding:5px 13px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--muted);font:inherit;font-size:13.5px;font-weight:600;cursor:pointer}.rc-tabs button.on{border-color:var(--gold);background:var(--gold-soft);color:var(--fg)}
@media(max-width:1100px){.pl-week{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:640px){.pl-week{grid-template-columns:1fr 1fr}.pl-due .pl-dr{grid-template-columns:1fr}.pl-ef{grid-template-columns:1fr}}
.pl-er input[type=time],.rc-slot input[type=time]{width:130px;flex:none}.pl-er select{width:auto;flex:none}.pl-er [data-del]{flex:none}
.pl-ef input[type=color]{width:56px;height:40px;padding:2px}
/* recap card gọn: trái clip + ảnh, phải chữ */
.rc-card{grid-template-columns:200px minmax(0,1fr);align-items:start;gap:14px}
.rc-media{display:grid;gap:8px}.rc-clip{display:grid;gap:5px}.rc-clip video{width:100%;aspect-ratio:9/16;border-radius:12px;background:#000;object-fit:cover}
.rc-clipst{aspect-ratio:9/16;border:1px dashed var(--line);border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:10px;text-align:center}
.rc-mu{font-size:12px;padding:5px 8px}.rc-media .rc-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.rc-media .rc-strip img{width:100%;height:auto;aspect-ratio:1}
.rc-body{display:grid;gap:8px;min-width:0}.rc-hd{display:block}.rc-hd b{display:inline;margin-right:8px}
.rc-tabs{display:flex;flex-wrap:wrap;gap:6px}.rc-q{font-size:13px}
.rc-more{border:1px solid var(--line);border-radius:10px;padding:7px 10px;font-size:13px}.rc-more summary{cursor:pointer;font-weight:600}.rc-more .rc-chk{margin-top:6px}.rc-more .rc-chk b{width:100%}
.rc-when{font-size:13px}.rc-when input[type=datetime-local]{width:auto;padding:3px 6px;font-size:12.5px}
.rc-pick{grid-template-columns:repeat(auto-fill,minmax(84px,1fr))}
@media(max-width:760px){.rc-card{grid-template-columns:1fr}.rc-clip video,.rc-clipst{max-width:200px}}
.rc-info{border:1px solid var(--line);border-radius:10px;padding:9px 12px;line-height:1.55;margin:0 0 12px}
.pl-it{color:var(--gold,#e8c76f)!important;font-weight:600}
.pl-asg{display:grid;gap:5px;border:1px solid var(--line);border-left:4px solid var(--gold,#e8c76f);border-radius:10px;padding:9px 11px;margin-bottom:10px}
.pl-bk{display:grid;gap:8px}.pl-bg{border:1px solid var(--line);border-left:4px solid var(--c);border-radius:12px;padding:8px 12px;background:var(--surface)}.pl-bg summary{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;cursor:pointer}.pl-bg summary span{font-size:12px;color:var(--muted)}
.pl-bi{display:grid;grid-template-columns:86px minmax(0,1fr) auto;gap:10px;align-items:center;border-top:1px solid var(--line);padding:7px 0;font-size:13px}.pl-bi b{display:block}.pl-bi select{font-size:12px;padding:4px 6px;max-width:170px}
.pl-bs{font-size:11px;border-radius:999px;padding:2px 8px;border:1px solid var(--line);text-align:center}.pl-bs.ok{background:#2f6b3f;border-color:#2f6b3f;color:#fff}.pl-bs.mk{border-color:#6f9fd8;color:#6f9fd8}.pl-bs.sc{border-color:var(--gold);color:var(--gold)}
@media(max-width:640px){.pl-bi{grid-template-columns:1fr}}
/* Tổng quan KPI */
.nav-home{font-weight:700}a[data-nav="home"].has-due::after{content:"";width:8px;height:8px;border-radius:50%;background:var(--bad,#d9534f);margin-left:auto}
.hm-tot{display:grid;gap:8px}.hm-big{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.hm-big b{font-size:clamp(26px,4vw,38px);line-height:1.1;color:var(--gold);font-variant-numeric:tabular-nums}.hm-big span{color:var(--muted);font-size:14px}
.hm-bar{position:relative;height:10px;border-radius:9px;background:var(--line)}.hm-bar i{display:block;height:100%;border-radius:9px;background:linear-gradient(90deg,#d9b45c,#f0d48a)}.hm-bar em{position:absolute;top:-4px;width:2px;height:18px;background:var(--fg);opacity:.55;transform:translateX(-1px)}
.hm-brands{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:16px}
.hm-b{display:grid;gap:10px;align-content:start}.hm-b header{display:flex;justify-content:space-between;align-items:center;gap:8px}.hm-b h2{margin:0;font-size:17px}
.hm-st{font-size:11.5px;font-weight:700;border-radius:999px;padding:2px 9px}.hm-b.ok .hm-st{background:#2f6b3f;color:#fff}.hm-b.lag .hm-st{background:color-mix(in srgb,var(--bad) 18%,transparent);color:var(--bad)}
.hm-kv{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.hm-kv small{display:block;font-size:11.5px;color:var(--muted)}.hm-kv b{font-size:15px;font-variant-numeric:tabular-nums}
.hm-spark{display:flex;align-items:flex-end;gap:2px;height:46px}.hm-spark i{flex:1;background:color-mix(in srgb,var(--gold) 55%,transparent);border-radius:2px 2px 0 0;min-width:2px}.hm-spark i.now{background:var(--gold)}
.hm-acts .btn{min-height:36px}.lnk{background:none;border:0;color:var(--muted);cursor:pointer;padding:0 2px}
.hm-ib{display:grid;gap:6px}.hm-it{display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:11px 12px;color:inherit;text-decoration:none;background:var(--surface);min-height:52px}
.hm-it:hover{border-color:var(--gold)}.hm-it.p0{border-left:4px solid var(--bad)}.hm-it.p1{border-left:4px solid var(--gold)}
.hm-k{font-size:11.5px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.hm-t b{display:block;font-size:14px}.hm-t small{color:var(--muted);font-size:12.5px}.hm-go{color:var(--gold);font-weight:700;font-size:13px;white-space:nowrap}
@media(max-width:980px){.hm-brands{grid-template-columns:1fr}}
@media(max-width:560px){.hm-it{grid-template-columns:1fr auto}.hm-k{grid-column:1/-1}.hm-kv{grid-template-columns:1fr 1fr}}
.hm-tg{display:inline-flex;align-items:center;gap:5px;flex-wrap:wrap}.hm-tin{width:90px;padding:4px 8px;font-size:15px}
.hm-tq{font-size:15px;line-height:1.6;margin:0 0 12px}
.hm-adv{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.hm-av{border:1px solid var(--line);border-radius:14px;padding:12px 14px;display:grid;gap:8px;align-content:start;background:var(--surface)}
.hm-av header{display:flex;justify-content:space-between;gap:8px;align-items:center}.hm-av p{margin:0;font-size:13.5px;line-height:1.55}.hm-pt{background:var(--gold-soft);border-radius:10px;padding:8px 10px;font-variant-numeric:tabular-nums}
.hm-kt{font-size:11.5px;font-weight:700;border-radius:999px;padding:2px 9px}.hm-kt.ok{background:#2f6b3f;color:#fff}.hm-kt.md{background:color-mix(in srgb,#e0a030 20%,transparent);color:#b27a10}.hm-kt.lo{background:color-mix(in srgb,var(--bad) 18%,transparent);color:var(--bad)}
.hm-steps{margin:0;padding-left:18px;display:grid;gap:10px;font-size:13.5px}.hm-steps small{display:block;color:var(--muted);font-size:12.5px;line-height:1.45}.hm-steps .hm-ue{color:var(--gold)}
.hm-mt td{vertical-align:middle}.hm-owe{color:var(--bad)}.hm-mf{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.hm-mf .field{margin:0}
@media(max-width:980px){.hm-adv{grid-template-columns:1fr}}@media(max-width:560px){.hm-mf{grid-template-columns:1fr}}
/* r206: nền theo giao diện sáng/tối, sửa ô chữ trắng trên nền trắng ở chế độ tối */
:root{--soft:var(--sunk)}
.lr-bar{background:var(--line)}.lr-bar i{background:var(--gold)}
.lr-stats>div{background:var(--sunk);border:1px solid var(--line);color:var(--fg);padding:12px 14px}
.lr-stats b{color:var(--gold);font-size:22px;font-variant-numeric:tabular-nums}
.lr-iss{display:grid;gap:8px}
.lr-iss li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 10px;align-items:start;background:var(--sunk);color:var(--fg);border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:10px;padding:10px 12px;margin:0;font-size:13.5px;line-height:1.55}
.lr-iss li>b{grid-row:span 2;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:3px 9px;background:var(--gold-soft);color:var(--gold);white-space:nowrap}
.lr-iss li.lv-loi,.lr-iss li.lv-goi-y{border-color:var(--line)}.lr-iss li.lv-loi{border-left-color:var(--bad)}.lr-iss li.lv-loi>b{background:color-mix(in srgb,var(--bad) 18%,transparent);color:var(--bad)}
.lr-iss li.lv-goi-y{border-left-color:#8aa4c8}.lr-iss li.lv-goi-y>b{background:color-mix(in srgb,#8aa4c8 20%,transparent);color:#6f8fb8}
.lr-iss li>.small{grid-column:2;color:var(--fg)!important;opacity:.85;background:var(--surface);border-radius:8px;padding:6px 9px;margin-top:4px}
.lr-hb{background:var(--sunk);color:var(--fg)}
.br-iss li{background:var(--sunk);color:var(--fg)}
.as-card{color:#121110}
/* Tổng quan: thẻ KPI / Doanh thu */
.hm-tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin:0 0 16px}.hm-tabs button{background:none;border:0;border-bottom:3px solid transparent;padding:10px 16px;font:inherit;font-weight:700;color:var(--muted);cursor:pointer;min-height:44px}.hm-tabs button.on{color:var(--fg);border-bottom-color:var(--gold)}
.rv-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.rv-head h1{margin:0;font-size:24px}
.rv-flt{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:12px 14px;margin-bottom:14px}
.rv-sel{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:10px;padding:2px 4px 2px 10px;background:var(--surface)}.rv-sel span{font-size:13px;color:var(--muted)}.rv-sel select{border:0;background:transparent;font:inherit;font-weight:600;padding:6px 4px;min-height:36px}
.rv-cus{display:inline-flex;align-items:center;gap:6px}.rv-cus input{width:auto}
.rv-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.rv-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.rv-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px 16px;display:grid;gap:4px;align-content:start}.rv-card small{font-weight:700;color:var(--fg);font-size:14px}
.rv-card b{font-size:clamp(18px,2.4vw,24px);font-variant-numeric:tabular-nums}.rv-card b.neg{color:var(--bad)}
.rv-d{font-size:12px;font-weight:700;color:var(--muted)}.rv-d.up{color:#2f8a4a}.rv-d.dn{color:var(--bad)}
.rv-p h3{margin:0 0 10px;font-size:15px}.rv-pill{display:inline-flex;gap:10px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:6px 10px;font-weight:700;margin-bottom:8px;font-variant-numeric:tabular-nums}
.rv-svg{width:100%;height:auto;display:block}.rv-grid line.rv-grid,.rv-svg .rv-grid{stroke:var(--line);stroke-width:1}.rv-ax{fill:var(--muted);font-size:11px}
.rv-cur{fill:none;stroke:var(--gold);stroke-width:2.5}.rv-prev{fill:none;stroke:var(--muted);stroke-width:1.5;stroke-dasharray:4 4;opacity:.8}.rv-hit{fill:transparent;cursor:pointer}.rv-hit:hover{fill:var(--gold);fill-opacity:.4}
.rv-lg{display:flex;gap:16px;justify-content:center;font-size:12px;color:var(--muted);margin-top:4px;flex-wrap:wrap}.rv-lg i{display:inline-block;width:22px;height:0;border-top:2.5px solid var(--gold);vertical-align:middle;margin-right:6px}.rv-lg i.p{border-top:1.5px dashed var(--muted)}
.rv-ch{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;padding:9px 0;border-top:1px solid var(--line)}.rv-ch small{display:block;color:var(--muted);font-size:12.5px}.rv-chv{text-align:right;display:grid;justify-items:end}.rv-chv b{font-variant-numeric:tabular-nums}
.rv-chb{grid-column:1/-1;height:5px;border-radius:9px;background:var(--line);overflow:hidden}.rv-chb i{display:block;height:100%;background:var(--gold)}
@media(max-width:980px){.rv-grid{grid-template-columns:1fr}}@media(max-width:480px){.rv-cards{grid-template-columns:1fr 1fr}.rv-card{padding:12px}}
/* Mẫu thắng / tốn tiền: 2 cột bằng nhau, nhãn tình trạng thật trên Meta */
.rp-adg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start;margin-top:16px}@media(max-width:860px){.rp-adg{grid-template-columns:1fr}}
.rp-st{font-style:normal;font-size:11.5px;font-weight:700;border-radius:99px;padding:1px 8px;margin-left:8px;vertical-align:1px;white-space:nowrap}.rp-st:empty{display:none}
.rp-st.on{background:rgba(47,138,74,.16);color:#3aa35c}.rp-st.off{background:var(--sunk);color:var(--muted)}.rp-st.bad{background:rgba(200,60,60,.15);color:var(--bad)}.rp-st.wait{background:rgba(200,160,60,.16);color:var(--gold)}
.rp-ad.stopped{opacity:.72}.rp-ad.stopped:hover{opacity:1}
/* KPI trong Lập chiến dịch */
.cp-kpi label{font-weight:700}.cp-kbar{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;background:var(--sunk);border-radius:10px;padding:8px 12px;font-size:13.5px;margin:6px 0}.cp-kbar a{font-weight:700;white-space:nowrap}
.cp-krow{display:grid;grid-template-columns:200px minmax(0,1fr);gap:10px;align-items:center}.cp-krow .ok{color:#3aa35c;font-weight:700}.neg{color:var(--bad)}@media(max-width:560px){.cp-krow{grid-template-columns:1fr}}
.cp-kg{border:1px solid var(--line);border-radius:12px;padding:12px 14px}
.rv-sel span{white-space:nowrap}
/* Lịch nội dung gọn: chủ đề ở đầu, 48 giờ dạng thẻ, lịch tuần trạng thái bằng màu */
.pl-topics{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}
.pl-topics .pl-tp{padding:10px 12px;gap:4px}.pl-topics .pl-tp>small:not(.muted){display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pl-topics .pl-tp.add{min-height:0}
.pl-n{font-style:normal;font-size:12px;background:#e0a030;color:#1a1408;border-radius:99px;padding:1px 8px;margin-left:6px;vertical-align:2px}
.pl-dg{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:8px}
.pl-dc{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--line);border-left:4px solid var(--c);border-radius:12px;padding:9px 10px;background:var(--surface)}
.pl-dt b{display:block;font-size:13px}.pl-dt small{color:var(--muted);font-size:11.5px}
.pl-db{min-width:0;display:grid;gap:2px}.pl-db>b{font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pl-chs{display:flex;gap:4px;flex-wrap:wrap}.pl-chs em{font-style:normal;font-size:11px;font-weight:700;border:1px solid var(--line);border-radius:6px;padding:0 6px;background:var(--sunk)}
.pl-dit{font-size:12px;color:var(--fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pl-dit i{font-style:normal;font-size:10.5px;margin-left:4px}
.pl-da{display:flex;gap:6px}.pl-da .btn{min-width:36px}
.pl-legend{margin:0 0 10px}
.pl-slot{grid-template-columns:16px minmax(0,1fr);padding:6px 6px 6px 5px;border-left-width:4px}
.pl-slot.posted{border-left-color:#2f8a4a}.pl-slot.scheduled{border-left-color:#6f9fd8}.pl-slot.due{border-left-color:#e0a030}.pl-slot.missed{border-left-color:var(--bad)}.pl-slot.empty{border-left-color:var(--line)}
.pl-slot i{width:15px;height:15px;font-size:9.5px;margin-top:1px}
.pl-slot b{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.pl-k{font-style:normal;font-size:10.5px;font-weight:700;background:var(--sunk);border-radius:5px;padding:0 5px}
.pl-slot small.pl-tn{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.pl-slot small.pl-it{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#e0a030}
@media(max-width:640px){.pl-dg{grid-template-columns:1fr}}
#plDue{margin-top:18px}.pl-db>b{white-space:normal;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}
/* Bảng Xưởng video: bước tiếp theo, kéo thả, cột trống thu gọn */
.kanban{grid-auto-columns:minmax(230px,1fr)}
.kanban .col.is-empty{opacity:.75}
@media(min-width:1100px){.kanban{display:flex;overflow-x:auto}.kanban .col{flex:1 1 220px;min-width:210px}.kanban .col.is-empty{flex:0 0 150px;min-width:150px}}
.kanban .col-h{position:relative}.kb-hint{color:var(--muted);font-size:11.5px;padding:0 4px;margin-top:-4px}
.kb-add{margin-left:auto;margin-right:6px;width:26px;height:26px;border-radius:8px;border:1px dashed var(--line);background:none;color:var(--gold);font-weight:800;cursor:pointer}.kb-add:hover{border-color:var(--gold)}
.kb-card{border-left:3px solid var(--st-c,var(--line));display:grid;gap:8px;padding:11px 12px;cursor:default}
.kb-card[draggable=true]{cursor:grab}.kb-card.dragging{opacity:.4;transform:rotate(1.5deg)}
.kb-card[data-st=kich-ban]{--st-c:var(--muted)}.kb-card[data-st=tu-lieu]{--st-c:#c9c3b6}.kb-card[data-st=dung]{--st-c:#e0a030}.kb-card[data-st=duyet]{--st-c:#d9a441}.kb-card[data-st=sua]{--st-c:#e08a3a}.kb-card[data-st=xong]{--st-c:#3aa35c}
.kb-card.over{box-shadow:0 0 0 1px var(--bad) inset}
.kb-card .ttl{font-weight:700;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.kb-ck{opacity:0;transition:opacity .15s}.kb-card:hover .kb-ck,.kb-card.sel .kb-ck,.kb-ck:focus-visible,#projects:has(.kb-card.sel) .kb-ck{opacity:1}@media(hover:none){.kb-ck{opacity:1}}
.kb-facts{display:flex;flex-wrap:wrap;gap:4px}.kb-facts span{font-size:11.5px;background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:1px 6px;color:var(--muted)}.kb-facts span.over{color:var(--bad);border-color:var(--bad)}.kb-facts span.fbn{color:#e08a3a;border-color:#e08a3a}
.kb-next{display:flex;justify-content:space-between;align-items:center;font-size:12.5px;font-weight:700;color:var(--gold);border-top:1px solid var(--line);padding-top:7px;text-decoration:none}.kb-next:hover{color:var(--fg)}
.kb-dragging .col{transition:background .15s}.kanban .col.drop-on{background:color-mix(in srgb,var(--gold) 14%,var(--sunk));outline:2px dashed var(--gold);outline-offset:-4px}
.pr-f .chip.on{background:var(--gold,#e8c76f);color:#120f08;border-color:var(--gold,#e8c76f)}.pr-f .chip.on b{color:#120f08}
/* Chiến lược tháng */
.stg-mon{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}
.stg-bs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:12px}@media(max-width:1100px){.stg-bs{grid-template-columns:1fr}}
.stg-b{border:1px solid var(--line);border-radius:14px;padding:12px 14px;background:var(--surface)}.stg-b h3{margin:0 0 8px;font-size:16px}
.stg-b .field{margin-bottom:8px}.stg-b textarea{min-height:0}
.stg-r2{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media(max-width:560px){.stg-r2{grid-template-columns:1fr}}
.stg-rs{display:grid;gap:16px}.stg-x header{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:6px}.stg-x header h2{margin:0}.stg-kpi{margin-left:auto;font-size:18px;color:var(--gold)}
.stg-fn{display:flex;flex-wrap:wrap;align-items:stretch;gap:6px}.stg-fn>div{flex:1 1 120px;background:var(--sunk);border-radius:10px;padding:8px 10px;display:grid;gap:2px}.stg-fn small{color:var(--muted);font-size:12px}.stg-fn b{font-size:17px;font-variant-numeric:tabular-nums}.stg-ar{align-self:center;color:var(--muted);font-weight:800}
.stg-wk{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.stg-wk>div{border:1px solid var(--line);border-radius:12px;padding:10px;display:grid;gap:4px;align-content:start}.stg-wk small{color:var(--muted);font-size:12px}.stg-wk p{margin:0;font-size:12.5px}
.stg-wb{height:46px;display:flex;align-items:flex-end;background:var(--sunk);border-radius:8px;overflow:hidden}.stg-wb i{display:block;width:100%;background:linear-gradient(var(--gold),color-mix(in srgb,var(--gold) 50%,transparent))}
.stg-2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:6px}@media(max-width:800px){.stg-2{grid-template-columns:1fr}}
.stg-cps{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}.stg-cp{border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:12px;padding:10px 12px;display:grid;gap:4px;align-content:start}.stg-cp small{color:var(--muted);font-size:12.5px}.stg-cp p{margin:0;font-size:13px;font-style:italic}.stg-cp .btn{justify-self:start;margin-top:4px}
.stg-nd{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.stg-nd span{border:1px solid var(--line);border-radius:10px;padding:6px 10px;display:grid}.stg-nd small{color:var(--muted);font-size:12px}
.hm-trk{border:1px solid var(--line);border-left:4px solid #3aa35c;border-radius:12px;padding:10px 12px;display:grid;gap:6px;margin:4px 0}.hm-trk.lag{border-left-color:var(--bad)}.hm-trk>div{display:grid;gap:1px}.hm-trk small{color:var(--muted);font-size:12px}.hm-trk b{font-size:15px}.hm-trk.ok b{color:#3aa35c}.hm-trk.lag>div>b{color:var(--bad)}.hm-trk p{margin:0;font-size:12.5px}
.hm-svc{display:grid;gap:5px}.hm-svc span{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 8px;font-size:12px}.hm-svc em{font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hm-svc b{font-size:12px!important;color:inherit!important}.hm-svc i{grid-column:1/-1;height:4px;background:var(--sunk);border-radius:9px;overflow:hidden}.hm-svc u{display:block;height:100%;background:var(--gold)}
.hm-nostrat{display:block;font-size:13px;font-weight:700;border:1px dashed var(--gold);border-radius:10px;padding:8px 10px;color:var(--gold);text-decoration:none}
/* Hộp phản biện KPI */
.kc{display:grid;gap:10px;margin-top:14px;border-top:1px solid var(--line);padding-top:14px}#stgChat .kc{margin-top:0;border-top:0;padding-top:0}
.kc-h{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.kc-h h3{margin:0 0 2px;font-size:16px}.kc-h p{margin:0}
.kc-facts{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.kc-facts small{color:var(--muted)}.kc-facts span{font-size:12.5px;background:color-mix(in srgb,var(--gold) 14%,transparent);border:1px solid color-mix(in srgb,var(--gold) 40%,transparent);border-radius:99px;padding:3px 6px 3px 10px;display:inline-flex;gap:6px;align-items:center}.kc-facts button{background:none;border:0;color:var(--muted);cursor:pointer;font-size:11px}
.kc-l{display:flex;flex-direction:column;gap:8px;max-height:420px;overflow-y:auto;padding:2px}
.kc-m{max-width:86%;background:var(--sunk);border-radius:14px 14px 14px 4px;padding:9px 12px;align-self:flex-start}.kc-m p{margin:0;font-size:14px;line-height:1.5}
.kc-m.me{align-self:flex-end;background:color-mix(in srgb,var(--gold) 20%,var(--surface));border-radius:14px 14px 4px 14px}.kc-m.err p{color:var(--bad)}
.kc-a{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);margin-top:8px;padding-top:8px;font-size:12.5px}.kc-a em{font-style:normal;color:#3aa35c;font-weight:700}
.kc-in{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}.kc-in textarea{resize:vertical}
.stg-req>summary{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:baseline;cursor:pointer;list-style:none}.stg-req>summary::-webkit-details-marker{display:none}.stg-req>summary b{font-size:16px}.stg-req>summary span{font-size:13px;color:var(--muted)}.stg-req>summary:after{content:'Sửa ▾';margin-left:auto;font-size:12.5px;font-weight:700;color:var(--gold)}.stg-req[open]>summary:after{content:'Thu gọn ▴'}.stg-steps{margin:0 0 12px}#hmStrat{margin:18px 0}
.stg-steps{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}.stg-st{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:8px 14px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--fg);font:inherit;font-weight:700;font-size:13.5px;cursor:pointer;box-shadow:0 1px 0 rgba(0,0,0,.25)}.stg-st:hover{border-color:var(--gold)}.stg-st.done{background:var(--gold);border-color:var(--gold);color:#120f08}.stg-st i{font-style:normal}@media(max-width:560px){.stg-st{flex:1 1 calc(50% - 8px);justify-content:center}}
/* Thẻ trang (Thư viện, Nghiên cứu khách hàng) */
.cu-tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin:0 0 16px;overflow-x:auto;scrollbar-width:none}.cu-tabs::-webkit-scrollbar{display:none}
.cu-tabs a{display:inline-flex;align-items:center;gap:7px;padding:11px 16px;min-height:44px;border-bottom:3px solid transparent;font-weight:700;color:var(--muted);text-decoration:none;white-space:nowrap}
.cu-tabs a i{font-style:normal;opacity:.8}.cu-tabs a.on{color:var(--fg);border-bottom-color:var(--gold)}.cu-tabs a:hover{color:var(--fg)}
/* Inforgraphic KPI: mục tiêu, đã đạt, còn, tỉ lệ chốt */
.hm-ig{display:grid;grid-template-columns:120px minmax(0,1fr);gap:16px;align-items:center}
.hm-ring{position:relative;width:120px;height:120px}.hm-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.hm-ring circle{fill:none;stroke-width:12}.hm-ring .bg{stroke:color-mix(in srgb,var(--fg) 10%,transparent)}.hm-ring .fg{stroke:var(--gold);stroke-linecap:round}.hm-ring .ex{stroke:var(--fg);stroke-width:16}
.hm-ring>div{position:absolute;inset:0;display:grid;place-content:center;text-align:center}.hm-ring b{font-size:24px;line-height:1}.hm-ring small{font-size:11.5px;color:var(--muted)}
.hm-igs{display:grid;grid-template-columns:1fr 1fr;gap:8px}.hm-ic{border-radius:12px;padding:9px 11px;background:color-mix(in srgb,var(--fg) 5%,transparent);border-left:3px solid var(--line);display:grid;gap:1px;min-width:0}
.hm-ic small{font-size:11.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-weight:700}.hm-ic b{font-size:20px;font-variant-numeric:tabular-nums;white-space:nowrap}.hm-ic em{font-style:normal;font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hm-ic.t{border-left-color:var(--muted)}.hm-ic.a{border-left-color:var(--gold)}.hm-ic.a b{color:var(--gold)}.hm-ic.l{border-left-color:var(--bad)}.hm-ic.c{border-left-color:#3aa35c}
.hm-igp{margin:10px 0 0}
@media(max-width:480px){.hm-ig{grid-template-columns:1fr;justify-items:center}.hm-igs{width:100%}.hm-ic b{font-size:17px}}
.od-src{color:var(--gold)!important;font-weight:600}.od-src.unk{color:var(--muted)!important;font-weight:400}
.hm-b header h2 a{color:inherit;text-decoration:none}.hm-b header h2 a small{color:var(--gold)}.hm-b header h2 a:hover{color:var(--gold)}#hmBrands .hm-nostrat{grid-column:1/-1;width:100%;text-align:left;background:none;cursor:pointer;font:inherit;font-weight:700;min-height:44px}
/* Đợt 4: dễ bấm trên điện thoại, máy tính bảng (màn cảm ứng hoặc màn hẹp) */
@media (pointer:coarse), (max-width:760px){
  .btn{min-height:44px}.btn.sm{min-height:40px;padding-left:12px;padding-right:12px}
  .chip,button.chip,label.chip{min-height:40px;display:inline-flex;align-items:center;padding-left:12px;padding-right:12px}
  select,input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),textarea{min-height:44px;font-size:16px}
  .lnk{min-width:36px;min-height:36px;display:inline-flex;align-items:center;justify-content:center}
  input[type=checkbox],input[type=radio]{width:20px;height:20px}
  .tv-ch,.pr-sel,.rc-mu,.cp-pc2,.seg button,.rg-seg button,.ac2-sub button,.hm-tabs button{min-height:40px}
  .nav a{min-height:44px}
}
@media (max-width:760px){
  body{font-size:15px}.small,p.small,.muted.small{font-size:14px}
  .xh h1{font-size:clamp(26px,8vw,34px)}
  .hb-acts{gap:8px}.hb-acts .btn{flex:1 1 auto}
  .panel{padding:14px}
  table{font-size:14px}
}
@media (pointer:coarse), (max-width:760px){[role=group] button,[role=tablist] button,[role=tablist] a,.cp-viz button{min-height:40px}}
@media (pointer:coarse), (max-width:760px){.seg2 button,.ak-tabs button,.ak-bar button{min-height:40px}}
.hb-acts .btn:not(.gold):not(.primary){background:transparent!important;box-shadow:none!important;border:1px solid color-mix(in srgb,var(--gold) 55%,transparent)!important;color:var(--fg)!important}.hb-acts .btn:not(.gold):not(.primary):hover{background:color-mix(in srgb,var(--gold) 12%,transparent)!important}
/* Việc đang chạy + nút Dừng */
.rb{position:fixed;left:50%;transform:translateX(-50%);bottom:18px;z-index:60}
.rb-pill{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;min-height:40px;border-radius:999px;border:1px solid var(--gold);background:var(--surface);color:var(--fg);font:inherit;font-weight:700;font-size:13.5px;cursor:pointer;box-shadow:0 8px 24px -10px rgba(0,0,0,.6)}
.rb-pop{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);width:min(380px,calc(100vw - 32px));background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:10px 12px;box-shadow:0 18px 40px -12px rgba(0,0,0,.6);display:grid;gap:4px;max-height:60vh;overflow:auto}
.rb-h{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.rb-r{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;border-top:1px solid var(--line);padding:8px 0}.rb-r small{display:block;color:var(--muted);font-size:12px}
.btn.run-stop,.run-stop{background:transparent!important;border:1px solid var(--bad)!important;color:var(--bad)!important;box-shadow:none!important;white-space:nowrap}.run-stop:hover{background:color-mix(in srgb,var(--bad) 12%,transparent)!important}
.sg-run{display:flex;align-items:center;gap:12px}.sg-run>div{flex:1}
@media(max-width:760px){.rb{bottom:84px}}
/* Chiến lược tháng: 4 thẻ */
.stg-tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin:0 0 14px;overflow-x:auto;scrollbar-width:none}.stg-tabs::-webkit-scrollbar{display:none}
.stg-tabs button{display:inline-flex;align-items:center;gap:6px;background:none;border:0;border-bottom:3px solid transparent;padding:10px 14px;min-height:44px;font:inherit;font-weight:700;color:var(--muted);cursor:pointer;white-space:nowrap}
.stg-tabs button i{font-style:normal;color:#3aa35c}.stg-tabs button.on{color:var(--fg);border-bottom-color:var(--gold)}
.stg-trs{display:grid;gap:14px}.stg-tr header{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}.stg-tr h3{margin:0}
.stg-tw{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px}.stg-tw>div{border:1px solid var(--line);border-radius:12px;padding:10px;display:grid;gap:3px}.stg-tw small{color:var(--muted);font-size:12px}.stg-tw em{font-style:normal;font-size:12.5px}
.stg-tw>div.past{opacity:.65}.stg-tw>div.now{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold) inset}.stg-now{font-size:12px;font-weight:700;color:var(--gold)}
/* Hỏi Quản lý Xưởng: chọn chủ đề, mọi phản biện ở một chỗ */
.ag-ctx{display:flex;gap:4px;padding:6px 14px 0;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}.ag-ctx::-webkit-scrollbar{display:none}
.ag-ctx button{background:none;border:0;border-bottom:3px solid transparent;padding:8px 10px;min-height:40px;font:inherit;font-weight:700;font-size:13px;color:var(--muted);cursor:pointer;white-space:nowrap}.ag-ctx button.on{color:var(--fg);border-bottom-color:var(--gold)}
.ag-sub .kc{margin-top:0;border-top:0;padding-top:0}.ag-sub .kc-l{max-height:none}.ag-sub .kc-h h3{display:none}
.ag-sub.sgc{display:grid;gap:10px}
.ag-open-ctx{display:flex;width:100%;justify-content:space-between;align-items:center;min-height:48px;margin:12px 0;padding:12px 16px;border:1px dashed var(--gold);border-radius:12px;background:color-mix(in srgb,var(--gold) 8%,transparent);color:var(--gold);font:inherit;font-weight:700;cursor:pointer;text-align:left}.ag-open-ctx:hover{background:color-mix(in srgb,var(--gold) 15%,transparent)}
.msg-tools{display:flex;gap:2px;justify-content:flex-end;margin-top:4px;opacity:.55;transition:opacity .15s}.kc-m:hover .msg-tools,.sgc-m:hover .msg-tools,.ag-m:hover .msg-tools{opacity:1}@media(hover:none){.msg-tools{opacity:.9}}
.msg-tools button{background:none;border:0;color:var(--muted);font:inherit;font-size:12px;font-weight:600;padding:4px 7px;border-radius:7px;cursor:pointer;min-height:28px}.msg-tools button:hover{color:var(--fg);background:color-mix(in srgb,var(--fg) 8%,transparent)}.msg-tools button[data-mact=del]:hover{color:var(--bad)}
.stg-acts{gap:6px;margin-left:auto}
@media(min-width:1100px){body.ag-on #view{margin-right:min(470px,40vw);transition:margin .2s}body.ag-on .ag-panel{width:min(470px,40vw)}body.ag-on .rb{left:calc(50% - 235px)}}
.rpk-g{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}@media(max-width:900px){.rpk-g{grid-template-columns:1fr 1fr}}.rpk{background:var(--sunk);border-radius:12px;padding:10px 12px;display:grid;gap:2px}.rpk small{color:var(--muted);font-size:12px;font-weight:700}.rpk b{font-size:20px;font-variant-numeric:tabular-nums}.rpk em{font-style:normal;font-size:12px;color:var(--muted)}.rpk-w{margin-bottom:16px}
/* Lịch sử KPI */
#hmHist{margin:18px 0}.hh-ps{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}
.hh-t{display:grid;margin-top:12px}.hh-r{display:grid;grid-template-columns:110px minmax(0,1.3fr) minmax(0,1fr) 90px 110px;gap:10px;align-items:center;padding:9px 0;border-top:1px solid var(--line);font-variant-numeric:tabular-nums}
.hh-r small{display:block;color:var(--muted);font-size:11.5px}.hh-r em{font-style:normal;font-weight:700;font-size:12.5px}.hh-r em.ok{color:#3aa35c}.hh-r em.lag{color:var(--bad)}
.hh-h{font-size:12px;color:var(--muted);font-weight:700;border-top:0}.hh-r.cur{background:color-mix(in srgb,var(--gold) 6%,transparent)}
.hh-bar{position:relative;height:10px;background:var(--sunk);border-radius:9px}.hh-bar i{position:absolute;left:0;top:0;bottom:0;background:var(--gold);border-radius:9px}.hh-bar u{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--fg)}
.stg-past{min-height:36px;border-radius:10px;margin-right:6px}
@media(max-width:640px){.hh-bh{display:none}.hh-r{grid-template-columns:72px minmax(0,1fr) 64px 86px}.hh-bar{display:none}}
/* Cần đội kiểm tra: lưới thẻ cân đối, cùng một bộ nút */
.lr-ih2 h3{margin:0 0 4px}.lr-iss2{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}@media(max-width:980px){.lr-iss2{grid-template-columns:1fr}}
.lr-iss2>li{background:var(--sunk);border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:12px;padding:12px 14px;display:grid;gap:8px;color:var(--fg)}.lr-iss2>li.lv-loi{border-left-color:var(--bad)}.lr-iss2>li.lv-goi-y{border-left-color:#6f9fd8}.lr-iss2>li.closed{opacity:.7}
.lr-ih{display:flex;gap:8px;align-items:center}.lr-ih b{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:3px 9px;background:color-mix(in srgb,var(--bad) 18%,transparent);color:var(--bad)}.lv-canh-bao .lr-ih b{background:color-mix(in srgb,var(--gold) 18%,transparent);color:var(--gold)}.lv-goi-y .lr-ih b{background:color-mix(in srgb,#6f9fd8 18%,transparent);color:#6f9fd8}.lr-ih em{font-style:normal;font-size:12px;color:#3aa35c;font-weight:700}
.lr-iss2 p{margin:0;font-size:14px;line-height:1.5}.lr-fx{font-size:13px;background:color-mix(in srgb,var(--fg) 5%,transparent);border-radius:8px;padding:7px 10px}
.lr-acts{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.lr-man{position:relative}.lr-man>summary{list-style:none;cursor:pointer}.lr-man>summary::-webkit-details-marker{display:none}
.lr-links{position:absolute;z-index:20;top:calc(100% + 6px);left:0;min-width:280px;max-width:360px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:10px;display:grid;gap:8px;box-shadow:0 14px 30px -12px #000a}.lr-links>div{display:grid;gap:4px;font-size:13px}.lr-links .btn{justify-self:start}
.lr-prop{border:1px solid color-mix(in srgb,var(--gold) 45%,transparent);border-radius:10px;padding:10px;display:grid;gap:8px;background:color-mix(in srgb,var(--gold) 6%,transparent)}.lr-prop>b{color:var(--gold);font-size:13px}
.lr-ch{display:grid;gap:6px}.lr-ch>small{color:var(--muted);font-weight:700;font-size:12px}.lr-diff{display:grid;gap:3px;font-size:12.5px}.lr-diff del{color:var(--bad);opacity:.85}.lr-diff ins{text-decoration:none;color:#3aa35c}
.lr-ask{font-size:13px;display:grid;gap:6px}.lr-ans{display:flex;gap:6px}.lr-ans input{flex:1;min-width:0}
.lr-closed{margin-top:12px}.lr-closed>summary{cursor:pointer;color:var(--muted);font-weight:700;font-size:13px}
.lr-news .lr-nw{display:inline-block;vertical-align:top;margin-right:24px}
#hmCus{margin:0 0 18px}.hc-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}.hc{background:var(--sunk);border:1px solid var(--line);border-radius:12px;padding:12px;display:grid;gap:6px}.hc-h{display:flex;justify-content:space-between;gap:6px}.hc>small{color:var(--muted);font-size:12px}.hc-v{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.hc-v b{font-size:22px;color:var(--gold);font-variant-numeric:tabular-nums}.hc-v span{color:var(--muted);font-size:13px}.hc-v em{font-style:normal;font-weight:700;font-size:12px;margin-left:auto}.hc-v em.ok{color:#3aa35c}.hc-in{display:flex;gap:6px}.hc-in input{flex:1;min-width:0}
.kb-stop{margin-left:6px;width:26px;height:26px;border-radius:7px;border:1px solid var(--bad);background:none;color:var(--bad);font-size:10px;cursor:pointer;flex:none}.kb-stop:hover{background:color-mix(in srgb,var(--bad) 14%,transparent)}.qrow{position:relative}.qrow .run-stop{justify-self:end}
.ad-job{display:flex;gap:10px;align-items:center}.ad-job .ad-job-t{flex:1;min-width:0}
.rp-cdo{display:flex;gap:4px;flex-wrap:wrap;margin-top:6px}
.br-do{display:flex;gap:6px;margin-top:6px;flex-wrap:wrap}.rp-fx{margin-left:6px;vertical-align:1px}.ag-al li{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.ag-al li a{flex:1;min-width:0}.ag-alfix{padding:2px 8px;min-height:28px}
.ct-rec{display:grid;gap:10px;align-content:start}.ct-rl{list-style:none;margin:0;padding:0;display:grid;gap:6px}.ct-rl li{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:8px;align-items:baseline;background:var(--sunk);border-radius:10px;padding:8px 10px}.ct-rl small{color:var(--muted);font-size:11.5px;text-transform:uppercase;letter-spacing:.04em}.ct-rl em{font-style:normal;font-size:12px;color:var(--muted)}
.ct-ad>span:first-child{display:grid;gap:2px;min-width:0}.ct-ad>span:first-child b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ct-ad>span:first-child small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11.5px}.ct-ad .btn{justify-self:start;margin-top:2px}
.ct-rbtn{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ct-rbtn .btn{justify-content:center;white-space:nowrap}

/* Giao lệnh: hội thoại tách hẳn khỏi danh sách việc */
.ib-thread{display:flex;flex-direction:column;gap:8px;margin:0 0 16px;padding:12px;border-radius:14px;background:var(--sunk)}
.ib-me,.ib-x{max-width:88%;padding:9px 12px;border-radius:14px;font-size:13.5px;line-height:1.5}
.ib-me{align-self:flex-end;background:var(--gold-soft);border-bottom-right-radius:4px}
.ib-x{align-self:flex-start;background:var(--bg);border:1px dashed var(--line);border-bottom-left-radius:4px}
.ib-me small,.ib-x small{display:block;font-size:11.5px;color:var(--muted);margin-bottom:2px}
.ib-me p,.ib-x p{margin:0;white-space:pre-wrap}
.ib-go{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;align-items:center}
.ib-sec{margin-bottom:14px;border-radius:14px}
.ib-sec h4{display:flex;align-items:center;gap:8px;margin:0 0 8px;font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.ib-sec h4 span{background:var(--line);color:var(--fg);border-radius:20px;padding:1px 8px;font-size:12px}
.ib-sec.new h4{color:var(--gold)}.ib-sec.new h4 span{background:var(--gold);color:#1a1405}
.ib-sec.new .ib-r{border-left:3px solid var(--gold)}
.ib-sec.ib-flash{box-shadow:0 0 0 3px var(--gold-soft);transition:box-shadow .3s}
@media (max-width:560px){.ib-me,.ib-x{max-width:100%}}

.rc.rc-focus{outline:3px solid var(--gold);outline-offset:2px;box-shadow:0 0 0 8px var(--gold-soft)}
.rc-fbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:10px;padding-top:10px;border-top:1px dashed var(--line)}
.rc-fbar span{flex:1;min-width:140px;font-size:12.5px;color:var(--gold);font-weight:600}

/* Đang diễn ra */
.pu .panel-h{flex-wrap:wrap;gap:10px}
.pu-sum{display:flex;flex-wrap:wrap;gap:6px}
.pu-s{display:flex;align-items:baseline;gap:5px;padding:5px 10px;border-radius:20px;font-size:12.5px;background:var(--sunk);color:var(--muted)}
.pu-s b{font-size:16px;color:var(--fg)}
.pu-s.late b{color:var(--bad)}.pu-s.idle b{color:var(--warn)}.pu-s.wait b{color:var(--gold)}.pu-s.run b{color:var(--ok)}
.pu-s.zero{opacity:.55}
.pu-live{border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin-bottom:12px;background:var(--sunk)}
.pu-lh{display:flex;align-items:center;gap:8px;font-size:12.5px;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}
.pu-lr{display:flex;align-items:center;gap:10px;padding:6px 0;border-top:1px solid var(--line)}
.pu-lr:first-of-type{border-top:0}
.pu-lr a{flex:1;min-width:0;display:flex;flex-direction:column;color:inherit;text-decoration:none}
.pu-lr small{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pu-gs{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}
.pu-g{border:1px solid var(--line);border-radius:12px;padding:10px;background:var(--surface);display:flex;flex-direction:column;gap:6px}
.pu-g.hot{border-color:color-mix(in srgb,var(--bad) 45%,var(--line))}
.pu-g header{display:flex;align-items:center;gap:8px}
.pu-g header a{flex:1;display:flex;flex-direction:column;color:inherit;text-decoration:none}
.pu-g header small{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.pu-n{min-width:26px;height:26px;border-radius:13px;background:var(--sunk);display:grid;place-items:center;font-weight:700;font-size:13px;padding:0 6px}
.pu-l{display:flex;flex-direction:column;gap:2px}
.pu-i{display:flex;align-items:center;gap:6px;border-radius:8px;padding-right:4px}
.pu-i.mine{background:var(--gold-soft)}
.pu-ia{flex:1;min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:center;padding:7px 6px;color:inherit;text-decoration:none;min-height:40px}
.pu-i:hover{background:var(--sunk)}
.pu-t{display:flex;flex-direction:column;min-width:0}
.pu-t b{font-size:13.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pu-t small{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pu-go{color:var(--muted)}
.pu-b{font-size:10.5px;font-weight:700;padding:2px 7px;border-radius:10px;white-space:nowrap;text-transform:uppercase;letter-spacing:.03em}
.pu-b.late{background:var(--bad-soft);color:var(--bad)}
.pu-b.idle{background:var(--warn-soft);color:var(--warn)}
.pu-b.wait{background:var(--gold-soft);color:var(--gold)}
.pu-b.run{background:var(--ok-soft);color:var(--ok)}
.pu-b.open{background:var(--sunk);color:var(--muted)}
.pu-more{align-self:flex-start;font-size:12.5px}
.pu-at{margin:10px 0 0}
@media (max-width:560px){.pu-gs{grid-template-columns:1fr}}

.rn-std{border:1px solid var(--line);border-radius:12px;padding:12px;margin:10px 0;background:var(--sunk);display:flex;flex-direction:column;gap:6px}
.rn-sr{display:flex;gap:8px;align-items:flex-start;padding:6px 0;border-top:1px solid var(--line);font-size:13px}
.rn-sr span{display:flex;flex-direction:column;gap:2px;min-width:0}
.rn-sr del{color:var(--muted)}.rn-sr ins{text-decoration:none;font-weight:600;color:var(--ok)}

/* Quảng cáo theo tháng trong Lịch sử KPI */
.hh-ad{border:1px solid var(--line);border-radius:12px;padding:12px;margin:4px 0 10px;background:var(--sunk);display:flex;flex-direction:column;gap:10px}
.hha-h small{display:block;color:var(--muted);font-size:12.5px}
.hha-tip{margin:0;padding:8px 12px;border-radius:10px;background:var(--gold-soft);font-size:13.5px}
.hha-l{display:flex;flex-direction:column;gap:8px}
.hha-r{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,2fr) auto;gap:12px;align-items:center;padding:10px;border-radius:10px;background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--line)}
.hha-r.good{border-left-color:var(--ok)}.hha-r.bad{border-left-color:var(--bad)}
.hha-n{display:flex;flex-direction:column;gap:2px;min-width:0}
.hha-n b{font-size:13.5px;overflow-wrap:anywhere}.hha-n small{color:var(--muted);font-size:12px;overflow-wrap:anywhere}
.hha-v{align-self:flex-start;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:2px 7px;border-radius:10px}
.hha-v.good{background:var(--ok-soft);color:var(--ok)}.hha-v.mid{background:var(--sunk);color:var(--muted)}.hha-v.bad{background:var(--bad-soft);color:var(--bad)}
.hha-m{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.hha-m span{display:flex;flex-direction:column}.hha-m small{font-size:11px;color:var(--muted)}.hha-m b{font-size:14px;font-variant-numeric:tabular-nums}.hha-m em{font-size:11px;color:var(--muted);font-style:normal}
.hha-a{display:flex;flex-direction:column;gap:6px}
@media(max-width:760px){.hha-r{grid-template-columns:1fr}.hha-m{grid-template-columns:repeat(2,minmax(0,1fr))}.hha-a{flex-direction:row;flex-wrap:wrap}}

.pu-f{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}
.pu-f .chip b{margin-left:4px;font-variant-numeric:tabular-nums}
.pu-who{font-style:normal;font-weight:700;color:var(--gold)}
.pu-o{flex:none;font:600 11.5px var(--body);border-radius:14px;border:1px dashed var(--line);background:transparent;color:var(--muted);padding:5px 8px;min-height:30px;max-width:110px;cursor:pointer;appearance:none;-webkit-appearance:none;text-align:center}
.pu-o.on{border-style:solid;color:var(--fg);background:var(--sunk)}
.pu-o.me{border-style:solid;border-color:var(--gold);color:var(--gold)}
span.pu-o{cursor:default;display:inline-grid;place-items:center;min-width:30px}

button.pu-s{border:1px solid transparent;cursor:pointer;font:inherit;font-size:12.5px;min-height:34px}
button.pu-s:hover{border-color:var(--line)}
button.pu-s.on{border-color:var(--gold);background:var(--gold-soft);opacity:1}

/* Bản nháp chiến dịch */
.pu-del{flex:none;width:32px;height:30px;border-radius:14px;border:1px dashed var(--line);background:transparent;color:var(--muted);cursor:pointer;font-size:13px}
.pu-del:hover{border-color:var(--bad);color:var(--bad)}
.pu-del.sure{width:auto;padding:0 8px;border-style:solid;border-color:var(--bad);color:var(--bad);font-weight:700;font-size:11.5px}
.dr-box{display:flex;flex-direction:column;gap:10px}
.dr-h h3{display:flex;align-items:center;gap:8px;margin:0}
.dr-h p{margin:4px 0 0}
.dr-l{display:flex;flex-direction:column;gap:6px}
.dr-r{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.dr-r.cur{border-color:var(--gold);background:var(--gold-soft)}
.dr-n{display:flex;flex-direction:column;min-width:0}.dr-n b{overflow-wrap:anywhere}.dr-n small{color:var(--muted);font-size:12px}
.dr-miss{color:var(--warn)}
.dr-a{display:flex;gap:6px;align-items:center}
#rnSaved{font-size:12px;font-weight:500;margin-left:8px}
@media(max-width:600px){.dr-r{grid-template-columns:1fr}.dr-a .btn{flex:1}}

/* Đang diễn ra gọn: chấm màu thay nhãn trạng thái, nút người làm nhỏ */
.pu-d{width:9px;height:9px;border-radius:50%;flex:none;background:var(--muted)}
.pu-d.late{background:var(--bad)}.pu-d.idle{background:var(--warn)}.pu-d.wait{background:var(--gold)}.pu-d.run{background:var(--ok)}.pu-d.open{background:var(--line);box-shadow:inset 0 0 0 1px var(--muted)}
.pu-ia{gap:9px;padding:6px 4px}
.pu-s.late::before,.pu-s.idle::before,.pu-s.wait::before,.pu-s.run::before{content:"";width:8px;height:8px;border-radius:50%;align-self:center;margin-right:2px}
.pu-s.late::before{background:var(--bad)}.pu-s.idle::before{background:var(--warn)}.pu-s.wait::before{background:var(--gold)}.pu-s.run::before{background:var(--ok)}
.pu-o{width:30px;height:30px;min-height:30px;padding:0;border-radius:50%;font-size:11px;max-width:none;display:inline-grid;place-items:center}
select.pu-o.open{width:130px;border-radius:10px;padding:0 6px;text-align:left}
.pu-del{width:30px;height:30px;border-radius:50%}

.rn-std details{border-top:1px solid var(--line);padding-top:6px}
.rn-std summary{cursor:pointer;padding:4px 0}
.rn-sr small{display:block}
.pr-k{color:var(--ok);font-weight:700;width:16px;text-align:center}

/* Mẫu quảng cáo: tư vấn bên trái, lời mới và thông số bên phải */
.adw-2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:18px;align-items:start}
.adw-2 .adw-l{position:sticky;top:0;max-height:62vh;overflow:auto;padding-right:6px}
.adw-2 .adw-r{display:flex;flex-direction:column;gap:10px}
.adw-2 h4{margin:0 0 8px}
.adw-2 .adw-vs{max-height:46vh;overflow:auto}
@media (max-width:860px){.adw-2{grid-template-columns:1fr}.adw-2 .adw-l{position:static;max-height:none}.adw-2 .adw-vs{max-height:none}}
.modal-card.xwide #modalBody:has(#adwBox){overflow:auto}

/* Khung gộp Tiền đi đâu · Từng ngày · Từng tháng & KPI */
.ovt-h{flex-wrap:wrap;gap:10px}
.ovt-seg button{font-weight:700}
.ovt-note{font-size:12.5px;color:var(--muted)}
.ovt-hist .panel-h h2{display:none}
.ovt-hist .panel-h p{margin-top:0}

.ib-thread{position:relative}
.ib-clr{position:absolute;top:8px;left:10px;font:600 12px var(--body);border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:14px;padding:4px 10px;cursor:pointer;z-index:1}
.ib-clr:hover{border-color:var(--bad);color:var(--bad)}

/* Chạy lại mẫu: thông số bên trái, nội dung bên phải */
.rl2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:20px;align-items:start}
.rl2-l,.rl2-r{display:flex;flex-direction:column;gap:10px}
.rl2 .adw-h{display:flex;gap:12px;align-items:center}.rl2 .adw-h img{width:72px;height:72px;object-fit:cover;border-radius:10px}.rl2 .adw-h div{display:flex;flex-direction:column}
.rl2-h{margin:6px 0 0;font-size:14px}
.rl2 .grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.rl2 textarea{min-height:260px}
.rl2-sw{display:flex;gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:12px;cursor:pointer;background:var(--sunk)}
.rl2-sw input{position:absolute;opacity:0;pointer-events:none}
.rl2-sw .sw{flex:none;width:46px;height:26px;border-radius:13px;background:var(--line);position:relative;transition:background .2s}
.rl2-sw .sw::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .2s;box-shadow:0 1px 3px rgba(0,0,0,.3)}
.rl2-sw input:checked + .sw{background:var(--ok)}
.rl2-sw input:checked + .sw::after{transform:translateX(20px)}
.rl2-sw input:focus-visible + .sw{outline:2px solid var(--gold);outline-offset:2px}
.rl2-sw span:last-child{display:flex;flex-direction:column}.rl2-sw small{color:var(--muted);font-size:12px}
.modal-card.xwide #modalBody:has(.rl2){overflow:auto}
@media (max-width:860px){.rl2{grid-template-columns:1fr}}

.ag-adc .adc{border:0;padding:0;background:transparent;box-shadow:none}
.ag-adc .adc-log{max-height:none}

/* Xem lại một chiến dịch */
.cv{display:flex;flex-direction:column;gap:12px}
.cv-top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;align-items:center}
.cv-meta{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:13px;color:var(--muted)}
.cv-acts{display:flex;gap:8px;flex-wrap:wrap}
.cv-dup{border:1px solid var(--gold);border-radius:12px;padding:12px;background:var(--gold-soft);display:flex;flex-direction:column;gap:6px}
.cv h4{margin:6px 0 0}
.cv-sets{display:flex;flex-direction:column;gap:6px}
.cv-set{padding:8px 10px;border:1px solid var(--line);border-radius:10px}
.cv-set small{display:block;color:var(--muted);font-size:12px;margin-top:2px}
.cv-ads{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:10px}
.cv-ad{display:grid;grid-template-columns:84px minmax(0,1fr);gap:10px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.cv-ad img,.cv-ad .adw-noimg{width:84px;height:84px;object-fit:cover;border-radius:8px;display:grid;place-items:center;background:var(--sunk)}
.cv-ab{display:flex;flex-direction:column;gap:3px;min-width:0}.cv-ab b{overflow-wrap:anywhere}.cv-ab small{color:var(--muted);font-size:12px}.cv-ab p{margin:2px 0;font-size:12.5px}
.cv-aa{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.modal-card.xwide #modalBody:has(.cv){overflow:auto}

.rc-cv{color:inherit;text-decoration:none}.rc-cv:hover{text-decoration:underline;color:var(--gold)}

/* Chiến dịch mở ngay trong thẻ (không cửa sổ mới) */
.rc.cv-open{border-color:var(--gold)}
.cv-in{margin-top:12px;padding-top:12px;border-top:1px dashed var(--line);display:flex;flex-direction:column;gap:10px}
.cv-bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px}
.cv-in .cv-acts{display:flex;gap:6px;flex-wrap:wrap}
.cv-in .cv-dup{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px;border-radius:10px;border:1px solid var(--gold);background:var(--gold-soft)}
.cv-in .cv-dup input{flex:1;min-width:220px}
.cv-in .cv-dup small{flex-basis:100%}
.cv-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:14px;align-items:start}
.cv-cols h5{margin:0 0 6px;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.cv-in .cv-sets,.cv-in .cv-ads{display:flex;flex-direction:column;gap:6px}
.cv-in .cv-set{padding:8px 10px;border:1px solid var(--line);border-radius:10px}
.cv-in .cv-set small{display:block;color:var(--muted);font-size:12px;margin-top:2px}
.cv-in .cv-ad{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px;border:1px solid var(--line);border-radius:10px;background:var(--sunk)}
.cv-in .cv-ad img,.cv-in .cv-ad .adw-noimg{width:56px;height:56px;object-fit:cover;border-radius:8px;display:grid;place-items:center;background:var(--surface)}
.cv-in .cv-ab{display:flex;flex-direction:column;gap:2px;min-width:0}
.cv-in .cv-ab b{font-size:13.5px}.cv-in .cv-ab small{font-size:12px;color:var(--muted)}
.cv-in .cv-ab p{margin:0;font-size:12.5px;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.cv-in .cv-aa{display:flex;flex-direction:column;gap:6px}
@media (max-width:860px){.cv-cols{grid-template-columns:1fr}.cv-in .cv-ad{grid-template-columns:48px minmax(0,1fr)}.cv-in .cv-aa{grid-column:1/-1;flex-direction:row}}

/* Soạn chiến dịch mới từ mẫu cũ: thẻ mẫu và chẩn đoán ngay đầu form */
.rl-ban{border:1px solid var(--gold);border-radius:14px;padding:12px;margin-bottom:14px;background:var(--gold-soft);display:flex;flex-direction:column;gap:10px}
.rl-head{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:12px;align-items:center}
.rl-head img,.rl-head .adw-noimg{width:64px;height:64px;object-fit:cover;border-radius:10px;display:grid;place-items:center;background:var(--sunk)}
.rl-head div{display:flex;flex-direction:column;min-width:0}.rl-head b{overflow-wrap:anywhere}
.rl-advbox{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.rl-advbox > input{flex:1;min-width:240px}
.rl-advh{flex-basis:100%}
.rl-adv{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:14px;flex-basis:100%;font-size:13.5px}
.rl-adv p{margin:0 0 6px}
.rl-vs{display:flex;flex-direction:column;gap:8px}
.rl-v{border:1px solid var(--line);border-radius:10px;padding:10px;background:var(--surface);display:flex;flex-direction:column;gap:4px}
.rl-v em{font-style:normal;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--gold)}
.rl-v p{margin:0;white-space:pre-wrap;font-size:13px;max-height:140px;overflow:auto}
.rl-v .btn{align-self:flex-start}
@media (max-width:860px){.rl-adv{grid-template-columns:1fr}.rl-head{grid-template-columns:48px minmax(0,1fr)}.rl-head .btn{grid-column:1/-1}}

.rl-nm{display:flex;gap:6px;align-items:center;margin:2px 0}
.rl-nm input{flex:1;min-width:0;font-weight:700}
.rl-v.used{border-color:var(--ok);box-shadow:0 0 0 2px var(--ok-soft);background:var(--ok-soft)}
.rl-v.used em::after{content:" · đang dùng";color:var(--ok)}

.rl-head{grid-template-columns:150px minmax(0,1fr) auto}
.rl-media{position:relative;display:block;width:150px;aspect-ratio:1/1;border-radius:12px;overflow:hidden;background:var(--sunk)}
.rl-head .rl-media img{width:100%;height:100%;object-fit:cover;border-radius:0}
.rl-mk{position:absolute;left:6px;bottom:6px;font-size:11px;font-weight:700;padding:2px 8px;border-radius:10px;background:rgba(0,0,0,.65);color:#fff}
.rl-media.vid::after{content:"▶";position:absolute;inset:0;display:grid;place-items:center;font-size:30px;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.6)}
.rl-mnote{font-size:12px;color:var(--muted)}.rl-mnote a{color:var(--gold)}
@media (max-width:860px){.rl-head{grid-template-columns:100px minmax(0,1fr)}.rl-media{width:100px}}

.rc-iss{margin:6px 0 0;font-size:12.5px;color:var(--bad)}
.rl-pill.wait{background:var(--gold-soft);color:var(--gold)}

/* ===== Điện thoại: trang chủ gọn, việc đang diễn ra lên trước, nút đủ lớn để chạm ===== */
@media (max-width:640px){
  .br-hero .xh-i,.br-hero .xh-t > p{display:none}
  .br-hero h1{font-size:30px;margin:2px 0 8px}
  .br-hero .hb-acts{display:grid;grid-template-columns:1fr 1fr;gap:8px!important}
  .br-hero .hb-acts .btn{min-height:44px;font-size:13.5px;padding:8px}
  .ib-a{flex-wrap:wrap}.ib-a .btn{flex:1 1 40%}
  .pu .panel-h p{display:none}
  .pu-sum{gap:4px}.pu-s{padding:5px 8px}
  .cv-cols{grid-template-columns:1fr}
  .rl-head{grid-template-columns:90px minmax(0,1fr)}.rl-media{width:90px}.rl-head > .btn{grid-column:1/-1}
  .rl-nm{flex-wrap:wrap}.rl-nm input{flex-basis:100%}
  .dr-a{flex-wrap:wrap}
  .rn-go{display:flex;flex-wrap:wrap;gap:8px}.rn-go .btn{flex:1 1 45%;min-height:46px}
  .ovt-seg{width:100%;display:grid!important;grid-template-columns:repeat(3,1fr)}.ovt-seg button{font-size:12.5px;padding:8px 4px}
}
@media (pointer:coarse){
  .pu-o,.pu-del{width:40px;height:40px;min-height:40px}
  select.pu-o.open{height:40px}
  .ib-clr{min-height:36px;padding:6px 12px}
  .pu-i .pu-ia{min-height:48px}
}
/* r260: phản biện kế hoạch quảng cáo trong Hỏi Quản lý Xưởng */
.an-peek{display:grid;gap:8px;margin-top:10px;border-top:1px solid var(--line);padding-top:10px}
.an-peek .an-msg span{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.an-ma{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.ag-tk>summary,.ag-adc>summary{cursor:pointer;font-weight:600;font-size:13.5px;padding:6px 0}
.ag-tk{border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:10px}
.ag-tk .an-talk{border-top:0;padding-top:4px;margin-top:6px}
.bk-del{margin-left:6px;min-width:36px;min-height:36px;border:1px solid var(--line);border-radius:10px;background:transparent;color:var(--muted);cursor:pointer;vertical-align:middle}
.bk-del:hover{color:var(--bad);border-color:var(--bad)}.bk-del.sure{color:#fff;background:var(--bad);border-color:var(--bad);font-weight:600;padding:0 10px}
td:has(> select[data-bk]){white-space:nowrap}
.an-sol-l li{padding-right:0}.an-sol-l li>span:nth-child(2){flex:1;min-width:0}
.an-act{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end;flex:none;max-width:46%}
.an-sol-l li.off .an-act{opacity:1}
@media (max-width:700px){.an-sol-l li{flex-wrap:wrap}.an-act{max-width:none;width:100%;justify-content:flex-start;padding-left:38px}}
.stg-adl{margin:8px 0 0;padding-left:20px;display:grid;gap:4px}
.hm-tabs a{display:inline-flex;align-items:center;border-bottom:3px solid transparent;padding:10px 16px;font-weight:700;color:var(--muted);text-decoration:none;min-height:44px;white-space:nowrap}.hm-tabs a.on{color:var(--fg);border-bottom-color:var(--gold)}.hm-tabs a:hover{color:var(--fg)}
.hm-tabs{overflow-x:auto;scrollbar-width:none}
/* r261: ô giao lệnh gọn trên trang, nhập lệnh trong Hỏi Quản lý Xưởng */
.ib-cmdbar{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);margin-bottom:12px}
.ib-cmdlast{display:grid;gap:2px;min-width:0;flex:1 1 260px}.ib-cmdlast small{color:var(--muted);font-size:12px}.ib-cmdlast span{font-weight:600}.ib-cmdlast em{font-style:normal;color:var(--muted);font-size:13px}
.ag-sub .brc-log{max-height:none}
.qy-tabs{grid-template-columns:repeat(auto-fit,minmax(0,1fr));grid-auto-flow:column}
.qy-req .tbl-wrap{overflow-x:auto}
/* r262: sức khoẻ theo kênh */
.chh-w{display:grid;gap:10px}
.chh-t{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px}.chh-t h3{margin:0}.chh-t small{color:var(--muted)}
.chh-g{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}
@media (max-width:560px){.chh-g{grid-template-columns:1fr 1fr}}
.chh{display:flex;flex-direction:column;gap:6px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface);min-width:0}
.chh-h{display:flex;align-items:center;gap:8px}.chh-h b{flex:1;min-width:0}
.chh-st{font-size:11.5px;font-weight:700;padding:2px 8px;border-radius:999px;white-space:nowrap;background:var(--sunk);color:var(--muted)}
.chh-st.ok{background:color-mix(in srgb,var(--ok) 18%,transparent);color:var(--ok)}.chh-st.mid{background:color-mix(in srgb,var(--gold) 20%,transparent);color:var(--gold)}.chh-st.bad{background:color-mix(in srgb,var(--bad) 18%,transparent);color:var(--bad)}
.chh.bad{border-color:color-mix(in srgb,var(--bad) 45%,var(--line))}.chh.off{opacity:.92}
.chh p{margin:0;font-size:13.5px}.chh small{color:var(--muted);font-size:12px}.chh-a{margin-top:auto;padding-top:4px}
.an-sol-l li.off{opacity:1}.an-sol-l li.off>span:not(.an-act){opacity:.6}
/* r263: nút làm mới chỉ icon */
.rc-ref{display:inline-grid;place-items:center;width:34px;height:34px;margin-left:6px;vertical-align:middle;border:1px solid var(--line);border-radius:10px;background:transparent;color:var(--fg);font-size:16px;line-height:1;cursor:pointer}
.rc-ref:hover{border-color:var(--gold);color:var(--gold)}.rc-ref:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.rc-ref.busy{color:var(--gold);border-color:var(--gold);animation:rcspin 1s linear infinite;cursor:wait}
@keyframes rcspin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.rc-ref.busy{animation:none}}
@media (pointer:coarse){.rc-ref{width:40px;height:40px}}
/* r264: tin nhắn chào của quảng cáo tin nhắn */
.wl{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:16px;align-items:start}
.wl-ed{display:grid;gap:10px;min-width:0}
.wl-top{display:flex;gap:12px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap}.wl-top p{margin:0;flex:1 1 280px}
.wl-qs{display:grid;gap:8px}
.wl-q{display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px;align-items:start}
.wl-n{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--sunk);color:var(--muted);font-weight:700;font-size:13px}
.wl-qf{display:grid;gap:6px;min-width:0}.wl-qf input{font-weight:600}.wl-qf textarea{font-size:13.5px}
.wl-pv{position:sticky;top:12px;display:grid;gap:8px;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--sunk)}
.wl-bub{background:var(--surface);border:1px solid var(--line);border-radius:16px 16px 16px 4px;padding:10px 12px;font-size:13.5px;white-space:pre-wrap;word-break:break-word}
.wl-chips{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.wl-chips span{border:1px solid var(--gold);color:var(--gold);border-radius:999px;padding:5px 12px;font-size:13px;font-weight:600;max-width:100%;text-align:right}
.wl-chips span.muted{border-color:var(--line);color:var(--muted);font-weight:400}
.wl-go{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:10px}.wl-go .small{flex:1 1 260px}
.wl-no{margin:6px 0}
.cv-wl:not(:empty){grid-column:1/-1;margin-top:10px;padding:12px;border:1px dashed var(--line);border-radius:12px}
.cv-aa{display:flex;flex-wrap:wrap;gap:6px}.cv-aa .btn.on{border-color:var(--gold);color:var(--gold)}
.as-ad{background:color-mix(in srgb,var(--gold) 18%,transparent);color:var(--gold)}
@media (max-width:760px){.wl{grid-template-columns:1fr}.wl-pv{position:static}}
.cv-wl .wl{grid-template-columns:1fr}.cv-wl .wl-pv{position:static}
/* r265: sửa chiến dịch và đăng lại */
.cv-ed:not([hidden]){margin:12px 0;padding:14px;border:1px solid var(--gold);border-radius:14px;background:var(--surface)}
.ce{display:grid;gap:12px}.ce-h{display:grid;gap:4px}.ce-h h5{margin:0;font-size:15px}
.ce-g{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1.4fr);gap:12px;align-items:start}
.ce-st{flex-wrap:wrap}.ce-g input[type=date]{margin-top:6px}
.ce-ad{display:grid;gap:8px;padding-top:10px;border-top:1px solid var(--line)}
.ce-wl>summary{cursor:pointer;font-weight:600;padding:6px 0}.ce-wl .wl{margin-top:8px}
.ce-go{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
@media (max-width:900px){.ce-g{grid-template-columns:1fr}.ce .wl{grid-template-columns:1fr}.ce .wl-pv{position:static}}
/* r266: thao tác chiến dịch gọn: nút chính + Sửa + menu ⋯ */
.rc-a{align-items:center}
.rc-more{position:relative}
.rc-more>summary{list-style:none;min-width:36px;justify-content:center;font-weight:800;letter-spacing:1px}.rc-more>summary::-webkit-details-marker{display:none}
.rc-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:30;min-width:220px;display:grid;padding:6px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 12px 30px rgba(0,0,0,.28)}
.rc-menu a,.rc-menu button{display:flex;align-items:center;gap:8px;min-height:38px;padding:8px 10px;border:0;border-radius:8px;background:none;color:var(--fg);font:inherit;font-size:13.5px;font-weight:600;text-align:left;text-decoration:none;cursor:pointer;white-space:nowrap}
.rc-menu a:hover,.rc-menu button:hover,.rc-menu a:focus-visible,.rc-menu button:focus-visible{background:var(--sunk);color:var(--gold)}
.run-act .rc-more{display:inline-block}
.ce-when{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}.ce-when input{flex:1 1 130px;min-width:0}.ce-sth{display:block;margin-top:6px}
/* r268: trạng thái từng mẫu ngay trên thẻ chiến dịch */
.rc-ads{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:2px 0 10px}
.rc-ad{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;background:var(--sunk);font-size:12.5px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rc-ad i{width:8px;height:8px;border-radius:50%;flex:none;background:var(--muted)}
.rc-ad.ok i{background:var(--ok)}.rc-ad.wait i{background:var(--gold)}.rc-ad.bad i{background:var(--bad)}.rc-ad.off{color:var(--muted)}
/* r270: hàng tên mẫu: ô tên + nút nằm cùng một hàng */
.rl-head .rl-nm{flex-direction:row;align-items:center;gap:6px;flex-wrap:nowrap}
.rl-head .rl-nm .btn{flex:none;min-height:38px;white-space:nowrap}
.rl-head .rl-nm input{height:38px}
.rl-x{align-self:start;border:1px solid var(--line);background:transparent;color:var(--muted);border-radius:10px;padding:7px 12px;font:inherit;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap}
.rl-x:hover{color:var(--bad);border-color:var(--bad)}
@media (max-width:560px){.rl-head .rl-nm{flex-wrap:wrap}.rl-head .rl-nm input{flex-basis:100%}.rl-head > .rl-x{grid-column:1/-1;justify-self:start}}
/* r271: theo dõi tự động + kiểm tra theo mục */
#ovMon .ov2-bh{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px}#ovMon .ov2-bh span{flex:1 1 300px}#ovMon .ov2-bh em{font-style:normal;font-size:13px;background:var(--bad);color:#fff;border-radius:999px;padding:1px 8px;margin-left:4px}
.mon-l{display:grid;gap:6px}
.mon-r{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--fg);text-decoration:none}
.mon-r:hover{border-color:var(--gold)}.mon-r.bad{border-left:3px solid var(--bad)}.mon-r.wait{border-left:3px solid var(--gold)}
.mon-lv{font-size:11.5px;font-weight:700;padding:2px 8px;border-radius:999px;background:var(--sunk);white-space:nowrap}.mon-r.bad .mon-lv{color:var(--bad)}.mon-r.wait .mon-lv{color:var(--gold)}.mon-r.off .mon-lv{color:var(--muted)}
.mon-b{display:grid;min-width:0}.mon-b small{color:var(--muted)}.mon-go{color:var(--muted);font-size:18px}
.mon-unk{margin-top:8px}.mon-unk>summary,.ck-more>summary{cursor:pointer;font-weight:600;font-size:13.5px;padding:6px 0;color:var(--muted)}
.ck{display:grid;gap:8px}.ck-h{display:grid;gap:6px}.ck-h h3{margin:0}
.ck-sum{display:flex;flex-wrap:wrap;gap:6px}.ck-sum span{font-size:12.5px;font-weight:700;padding:3px 10px;border-radius:999px;background:var(--sunk)}.ck-sum .bad{color:var(--bad)}.ck-sum .ok{color:var(--ok)}.ck-sum .off{color:var(--muted)}
.ck-r{display:grid;grid-template-columns:96px minmax(0,1fr);gap:10px;padding:10px 0;border-top:1px solid var(--line)}
.ck-r p{margin:4px 0 0;font-size:13.5px}.ck-fix{color:var(--gold)}
.ck-st{font-size:12px;font-weight:700;align-self:start;padding:2px 8px;border-radius:999px;background:var(--sunk);text-align:center}.ck-r.bad .ck-st{color:var(--bad)}.ck-r.ok .ck-st{color:var(--ok)}.ck-r.off .ck-st{color:var(--muted)}
@media (max-width:560px){.ck-r{grid-template-columns:1fr}.ck-st{justify-self:start}}
/* r273: spam */
.as-sp{background:var(--sunk);color:var(--muted)}
.as-del:hover,.as-del.sure{color:var(--bad);border-color:var(--bad)}
.ch-st.off{background:var(--sunk);color:var(--muted)}
.wl-gy{display:flex;gap:6px;flex-wrap:wrap}.wl-gy .btn.on{outline:2px solid var(--gold);outline-offset:1px}
/* r278 Sổ token */
.tk-panel .panel-h{flex-wrap:wrap;gap:10px}
.tk-days{display:flex;gap:6px;flex-wrap:wrap}
.tk-sum{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}
.tk-sum>div{background:#0002;border:1px solid var(--line);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:2px}
.tk-sum b{font-size:20px;color:var(--gold,#e2b85c)}
.tk-sum span{font-size:12px;opacity:.75}
.tk-tbl{overflow-x:auto}
.tk-tbl table{width:100%;border-collapse:collapse;font-size:13px}
.tk-tbl th,.tk-tbl td{padding:7px 8px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}
.tk-tbl td:first-child{white-space:normal}
.tk-tbl th{font-weight:600;opacity:.7;font-size:12px}
.tk-bar{width:28%;min-width:80px}
.tk-bar i{display:block;height:6px;border-radius:3px;background:var(--gold,#e2b85c)}
/* r282 nhóm chiến dịch theo tình trạng */
.rc-gf{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 12px}
.rc-gf button{background:#0002;border:1px solid var(--line);color:inherit;border-radius:999px;padding:5px 12px;font-size:12.5px;cursor:pointer;display:inline-flex;gap:6px;align-items:center}
.rc-gf button b{font-weight:700;opacity:.85}
.rc-gf button.on{background:var(--gold,#c9a14a);color:#1a1408;border-color:transparent}
.rc-gf button:disabled{opacity:.4;cursor:default}
.rc-grp{margin-bottom:16px}
.rc-gh{display:flex;align-items:baseline;gap:8px;margin:6px 0 8px;font-size:14px;flex-wrap:wrap}
.rc-gh i{width:9px;height:9px;border-radius:50%;background:#888;align-self:center}
.rc-gh span{font-size:12px;padding:1px 8px;border-radius:999px;background:#0003;border:1px solid var(--line)}
.rc-gh small{font-weight:400;opacity:.6;font-size:12px}
.rc-grp-run .rc-gh i{background:#4cc38a}
.rc-grp-wait .rc-gh i{background:#e2b85c}
.rc-grp-bad .rc-gh i{background:#e5675e}
.rc-grp-off .rc-gh i{background:#777}
/* r285 bảng lọc khách rác */
.rc-junk{margin-top:12px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#0002;display:flex;flex-direction:column;gap:10px}
.rc-junk h4{margin:0;font-size:14px}.rc-junk h4 small{font-weight:400;opacity:.6;font-size:12px;margin-left:6px}
.rc-junk-g{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
.rc-junk-g label{display:flex;flex-direction:column;gap:4px;font-size:12px;opacity:.9}
.rc-junk-g input[type=number]{width:70px}.rc-junk-g em{font-style:normal;opacity:.6;padding:0 6px;align-self:center}
.rc-junk-st:empty{display:none}
/* r286 yêu cầu đặt lịch dạng thẻ, rộng rãi, gọn trên điện thoại */
.qy-req,#asBody .bk-list{max-width:none;width:100%}
.bk-list{display:flex;flex-direction:column;gap:14px;margin-top:10px}
.bk-card{border:1px solid var(--line);border-left:4px solid #e0b04a;border-radius:14px;padding:16px 18px;background:#0001;display:flex;flex-direction:column;gap:14px}
.bk-card.st-confirmed{border-left-color:#2fb36b}.bk-card.st-done{border-left-color:#777;opacity:.85}.bk-card.st-declined{border-left-color:var(--bad);opacity:.8}
.bk-h{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}
.bk-who{display:flex;flex-direction:column;gap:2px;min-width:0}.bk-who b{font-size:16px}
.bk-st{display:flex;align-items:center;gap:6px}.bk-st select{min-height:38px;min-width:140px}
.bk-g{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:14px 20px}
.bk-f{display:flex;flex-direction:column;gap:4px;min-width:0}
.bk-f>small{font-size:11px;letter-spacing:.06em;text-transform:uppercase;opacity:.55}
.bk-sv{font-weight:600;line-height:1.4}.bk-when{font-weight:600;font-size:15px}
.bk-tags{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center}.bk-tags .bk-dh,.bk-tags .bk-web{margin-left:0}
.bk-note{margin:0;padding:10px 12px;border-radius:10px;background:#0002;font-size:13px;line-height:1.55;opacity:.9}
.bk-ord{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding-top:12px;border-top:1px dashed var(--line)}
.bk-on{margin-right:auto;font-size:14px}.bk-ord>.small.muted{margin-right:auto}.bk-msg{flex-basis:100%}
@media (max-width:720px){
  .bk-card{padding:14px;gap:12px;border-radius:12px}
  .bk-g{grid-template-columns:1fr 1fr}.bk-g .bk-f:first-child{grid-column:1/-1}
  .bk-st{width:100%}.bk-st select{flex:1}
  .bk-ord .btn{flex:1 1 auto;min-height:40px;justify-content:center}.bk-on{flex-basis:100%}
}
.qy:has(.qy-req){max-width:1180px}
/* r287 nút việc đề xuất: cùng kích thước, chữ gọn */
.an-act{display:flex;flex-wrap:nowrap;gap:6px;justify-content:flex-end;max-width:none}
.an-act .btn{flex:0 0 80px;width:80px;min-width:0;padding-left:4px;padding-right:4px;justify-content:center;text-align:center;white-space:nowrap}
@media (max-width:700px){.an-act{justify-content:stretch}.an-act .btn{flex:1 1 0;width:auto;min-height:38px}}
/* r290 nền tảng chiến dịch */
.rc-plat{display:inline-flex;flex-wrap:wrap;gap:4px;margin-right:6px;vertical-align:middle}
.rc-plat i{font-style:normal;font-size:10.5px;font-weight:700;padding:1px 7px;border-radius:999px;background:#ffffff14;border:1px solid var(--line)}
.rc-plat i.d-whatsapp{background:#25d36622;color:#2fb36b;border-color:#25d36655}.rc-plat i.d-instagram{background:#e1306c22;color:#e1306c;border-color:#e1306c55}.rc-plat i.d-messenger{background:#0a84ff22;color:#4aa3ff;border-color:#0a84ff55}
.rc-pf{margin-top:-4px;align-items:center}.rc-pf>.small{margin-right:2px}
.pl-seg{display:flex;flex-wrap:wrap;gap:4px}
.linkbtn{background:none;border:0;padding:0;color:var(--gold,#c9a14a);text-decoration:underline;cursor:pointer;font:inherit}
/* r291 câu hỏi sẵn: xoá từng câu, thêm câu */
.wl-q{grid-template-columns:28px minmax(0,1fr) 34px}
.wl-q .wl-x{order:3;width:34px;height:34px;border:1px solid var(--line);border-radius:10px;background:transparent;color:var(--muted);cursor:pointer;font-size:13px}
.wl-q .wl-x:hover{color:var(--bad);border-color:var(--bad)}
.wl-addr{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:6px;padding-left:36px}
/* r293 bản nháp trong danh sách chiến dịch */
#rnDraftsSlot .dr-box{border:0;padding:0;margin:0;background:none;box-shadow:none}
#rnDraftsSlot .dr-h{display:none}
.rc-grp-draft .rc-gh i{background:#6ea8ff}
.nav a[hidden],.nav-sub[hidden]{display:none!important}
/* r296 dòng tóm tắt sức khoẻ ở Tổng quan quảng cáo */
.ov-monl{display:flex;align-items:center;gap:12px;flex-wrap:wrap;text-decoration:none;color:inherit}
.ov-monl b{font-size:15px}.ov-monl span{opacity:.8;font-size:13px}.ov-monl em.bad{font-style:normal;color:var(--bad);font-weight:700}.ov-monl i{margin-left:auto;font-style:normal;color:var(--gold,#c9a14a);font-weight:600;font-size:13px}
/* r296 tab Chi phí */
.cv-k{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:14px 0}
.cv-k>div{border:1px solid var(--line);border-radius:14px;padding:14px 16px;display:flex;flex-direction:column;gap:4px;background:var(--surface,#0002)}
.cv-k small{opacity:.65;font-size:12px}.cv-k b{font-size:24px;color:var(--gold,#c9a14a)}.cv-k a{font-size:12.5px}
.hm-stl{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;text-decoration:none;color:inherit}.hm-stl p{opacity:.75;margin:4px 0 0}
.br-lrd{margin-top:12px;border-top:1px dashed var(--line);padding-top:10px}.br-lrd>summary{cursor:pointer;font-weight:600;font-size:13.5px}.br-lrd[open]>summary{margin-bottom:10px}
/* r298 trang chủ Bộ não: lời chào, ngày giờ, việc hôm nay */
.br-home h1 em{font-style:italic}
.br-td{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.br-td p{grid-column:1/-1;margin:4px 0 0}
.br-tc{display:flex;flex-direction:column;align-items:flex-start;gap:2px;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#0002;color:inherit;cursor:pointer;text-align:left}
.br-tc b{font-size:24px;line-height:1}.br-tc span{font-size:12.5px;opacity:.8}
.br-tc.bad b{color:var(--bad)}.br-tc.warn b{color:#e0b04a}.br-tc.ok b{color:#4cc38a}.br-tc.zero{opacity:.55}
.br-tc:hover{border-color:var(--gold,#c9a14a)}
.br-prof h2{font-size:22px}
.pm-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 14px;margin-top:8px}
.pm-c{display:flex;gap:8px;align-items:flex-start;font-weight:400}.pm-c span{display:flex;flex-direction:column;gap:1px}.pm-c b{font-size:13.5px}.pm-c small{font-size:11.5px;opacity:.65}
@media (max-width:600px){.pm-grid{grid-template-columns:1fr}}
/* r299 Mè Xửng: ảnh gửi kèm, Sổ phát triển */
.ag-in{flex-wrap:wrap}
.ag-imgs{display:flex;gap:6px;flex-wrap:wrap;width:100%}
.ag-th{position:relative;width:64px;height:64px;border-radius:8px;overflow:hidden;border:1px solid var(--line)}
.ag-th img{width:100%;height:100%;object-fit:cover}
.ag-th button{position:absolute;top:2px;right:2px;width:20px;height:20px;border-radius:50%;border:0;background:#000a;color:#fff;font-size:11px;cursor:pointer}
.ag-inb{display:flex;flex-direction:column;gap:6px;align-items:stretch}
.ag-att{cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.ag-mi{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:6px}
.ag-mi img{max-width:160px;max-height:120px;border-radius:8px;border:1px solid var(--line);display:block}
.dv-bar{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin:12px 0}
.dv-new{margin-bottom:12px}
.dv-list{display:flex;flex-direction:column;gap:12px}
.dv-c{border:1px solid var(--line);border-left:4px solid #e0b04a;border-radius:14px;padding:14px 16px;display:flex;flex-direction:column;gap:10px;background:#0001}
.dv-c.st-da-ap,.dv-c.st-xong{border-left-color:#2fb36b;opacity:.85}.dv-c.st-bo{border-left-color:#777;opacity:.7}.dv-c.st-loi{border-left-color:var(--bad)}.dv-c.st-dang-sua{border-left-color:#6ea8ff}
.dv-c header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;flex-wrap:wrap}
.dv-c header b{font-size:15px;display:block}.dv-c header small{opacity:.65}
.dv-st{font-size:11.5px;font-weight:700;padding:3px 10px;border-radius:999px;border:1px solid var(--line);white-space:nowrap}
.dv-st.ok{color:#2fb36b}.dv-st.bad{color:var(--bad)}.dv-st.warn{color:#e0b04a}.dv-st.run{color:#6ea8ff}
.dv-n{margin:0;font-size:13.5px;line-height:1.55}
.dv-sum{background:#0002;border-radius:10px;padding:10px 12px;font-size:13.5px}
.dv-diff pre{max-height:420px;overflow:auto;font-size:11.5px;background:#0003;padding:10px;border-radius:8px;white-space:pre}
.dv-a{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
/* r302 Trang giới thiệu Xưởng (#/gioi-thieu): kem, đen, vàng; tiêu đề in hoa đậm, infographic */
.xp{--bg:#faf7f0;--bg2:#f3eee2;--ink:#141414;--mut:#5d584d;--line:#e6dcc6;--gold:#b98a2b;--gold2:#d9b45c;--dk:#141210;font-family:var(--body);background:var(--bg);color:var(--ink);line-height:1.55;-webkit-font-smoothing:antialiased}
.xp *{box-sizing:border-box}
.xp-in{margin:-8px -4px 0;border-radius:18px;overflow:hidden}
.xp-w{max-width:1160px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.xp-nav{position:sticky;top:0;z-index:20;background:#faf7f0e8;backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.xp-nav .xp-w{display:flex;align-items:center;gap:20px;height:64px}
.xp-logo{display:flex;flex-direction:column;line-height:1;text-decoration:none;color:var(--ink)}
.xp-logo b{font-family:var(--display);font-style:italic;font-weight:700;font-size:21px}.xp-logo em{color:var(--gold)}
.xp-logo small{font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--mut);margin-top:4px}
.xp-nav nav{display:flex;gap:22px;margin-left:auto}.xp-nav nav a{color:var(--ink);text-decoration:none;font-weight:600;font-size:14px}.xp-nav nav a:hover{color:var(--gold)}
.xp-nb{display:flex;gap:8px}
@media (max-width:900px){.xp-nav nav{display:none}.xp-nb{margin-left:auto}}
.xp-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border-radius:999px;font-weight:700;font-size:15px;text-decoration:none;cursor:pointer;border:1.5px solid transparent;font-family:inherit;transition:transform .15s}
.xp-btn:hover{transform:translateY(-1px)}
.xp-btn.g{background:linear-gradient(180deg,#c99a3c,#a87a1c);color:#fff;box-shadow:0 6px 16px #a87a1c33}
.xp-btn.o{border-color:var(--gold2);color:var(--ink);background:#fff}
.xp-btn.sm{min-height:40px;padding:0 16px;font-size:13.5px}
.xp-tag{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border:1.5px solid var(--gold2);border-radius:999px;background:#fff8e8;color:#8a6516;font-size:11.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.xp-tag:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--gold)}
.xp h1,.xp h2{font-weight:800;text-transform:uppercase;letter-spacing:-.01em;line-height:1.12;text-wrap:balance;margin:16px 0 0}
.xp h1{font-size:clamp(30px,4.4vw,52px)}.xp h2{font-size:clamp(24px,3.2vw,36px)}
.xp h1 em,.xp h2 em{font-style:normal;color:var(--gold);display:block}
.xp h2 em{display:inline}
.xp-hero{padding:72px 0 64px;background:radial-gradient(ellipse at 85% 30%,#f6e7c3 0,transparent 55%),var(--bg)}
.xp-hg{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:40px;align-items:center}
@media (max-width:900px){.xp-hg{grid-template-columns:1fr}.xp-hero{padding:44px 0 40px}}
.xp-quote{margin:24px 0 0;padding-left:16px;border-left:4px solid var(--gold2);font-size:19px;font-style:italic;font-weight:600;max-width:520px}
.xp-quote b{color:var(--gold);font-style:normal}.xp-quote u{text-decoration-color:var(--gold2);text-decoration-thickness:2px;text-underline-offset:4px}
.xp-lead{color:var(--mut);font-size:16.5px;max-width:540px;margin:18px 0 0}
.xp-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.xp-hv{display:flex;justify-content:center}
.xi-wheel{width:min(420px,100%);height:auto;overflow:visible}
.xw-ring{fill:none;stroke:var(--gold2);stroke-width:1.5;stroke-dasharray:3 6}
.xw-s{fill:#fff;stroke:var(--gold2);stroke-width:1.5;transition:fill .2s}.xw-s.alt{fill:#fff6e0}
.xi-wheel a:hover .xw-s{fill:#f2dca6}
.xw-n{font-size:12px;font-weight:800;fill:var(--gold);text-anchor:middle;letter-spacing:.08em}
.xw-t{font-size:14px;font-weight:800;fill:var(--ink);text-anchor:middle}
.xw-core{fill:var(--dk)}.xw-c1{fill:#e6c470;font-size:22px;font-weight:800;text-anchor:middle;letter-spacing:.12em}.xw-c2{fill:#d8cfb8;font-size:11.5px;text-anchor:middle}
.xp-sec{padding:84px 0}.xp-sec.alt{background:var(--bg2)}
.xp-sec.dark{background:var(--dk);color:#f4efe3}.xp-sec.dark .xp-h p{color:#c9c0ab}.xp-sec.dark .xp-tag{background:#2a2316;color:#e6c470;border-color:#6b5420}
@media (max-width:700px){.xp-sec{padding:56px 0}}
.xp-h{text-align:center;max-width:820px;margin:0 auto 40px}.xp-h p{color:var(--mut);font-size:16.5px;margin:14px auto 0;max-width:680px}
.xp svg{flex:none}
.xp .ic{width:20px;height:20px;flex:none}
.xp .ic circle{fill:var(--gold)}.xp .ic path{fill:none;stroke:#fff;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
/* 01 ngày */
.xd{max-width:980px;margin:0 auto}
.xd-bar{display:flex;height:16px;border-radius:999px;overflow:hidden;background:#ece5d4}
.xd-me{width:7%;background:var(--gold)}.xd-x{flex:1;background:repeating-linear-gradient(90deg,#1d1a14 0 22px,#2b261c 22px 24px)}
.xd-lg{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-top:10px;font-size:13.5px;color:var(--mut)}
.xd-lg i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:-1px}.xd-lg i.me{background:var(--gold)}.xd-lg i.x{background:#1d1a14}
.xd-lg b{color:var(--ink)}
.xd-tl{list-style:none;margin:36px 0 0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;position:relative}
.xd-tl:before{content:"";position:absolute;left:0;right:0;top:9px;height:2px;background:var(--line)}
.xd-tl li{position:relative;padding-top:30px}
.xd-tl li:before{content:"";position:absolute;top:2px;left:0;width:16px;height:16px;border-radius:50%;background:#fff;border:3px solid var(--gold)}
.xd-tl time{font-size:12px;font-weight:800;letter-spacing:.08em;color:var(--gold);text-transform:uppercase}
.xd-tl b{display:block;font-size:16px;margin:4px 0}.xd-tl p{margin:0;font-size:13.5px;color:var(--mut)}
@media (max-width:900px){.xd-tl{grid-template-columns:1fr;gap:18px}.xd-tl:before{left:7px;right:auto;width:2px;top:0;bottom:0;height:auto}.xd-tl li{padding:0 0 0 32px}}
/* 02 trước, sau */
.xv{max-width:1000px;margin:0 auto;display:grid;gap:12px}
.xv-hd,.xv-r{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
.xv-hd span{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--mut);padding:0 18px}.xv-hd span+span{color:var(--gold)}
.xv-r p{margin:0;display:flex;gap:12px;align-items:flex-start;padding:18px;border-radius:16px;font-size:15px}
.xv-r .no{background:#fff;border:1px solid var(--line);color:var(--mut)}.xv-r .no .ic circle{fill:#c9c1af}
.xv-r .ok{background:var(--dk);color:#f4efe3;font-weight:600}
@media (max-width:700px){.xv-hd{display:none}.xv-r{grid-template-columns:1fr;gap:6px}}
/* 03 sáu chặng */
.xs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;counter-reset:s}
.xs article{position:relative;background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;display:flex;flex-direction:column;gap:8px;scroll-margin-top:84px}
.xs article>i{font-style:normal;font-size:44px;font-weight:800;line-height:1;color:transparent;-webkit-text-stroke:1.5px var(--gold2)}
.xs h3{margin:6px 0 0;font-size:21px;font-weight:800;text-transform:uppercase}
.xs small{color:var(--gold);font-weight:700;font-size:12.5px}
.xs p{margin:4px 0 0;color:var(--mut);font-size:14.5px}
.xs ul{list-style:none;margin:8px 0 0;padding:12px 0 0;border-top:1px dashed var(--line);display:grid;gap:8px}
.xs li{display:flex;gap:8px;font-size:14px;font-weight:600}
.xs-back{text-align:center;margin:26px 0 0;color:var(--mut)}.xs-back b{color:var(--gold)}
@media (max-width:980px){.xs{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.xs{grid-template-columns:1fr}}
/* 04 phễu */
.xf{max-width:980px;margin:0 auto;display:grid;gap:10px}
.xf-r{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:16px;align-items:center}
.xf-b{width:var(--w);margin:0 auto;min-height:64px;display:flex;align-items:center;gap:16px;padding:12px 22px;border-radius:14px;background:linear-gradient(90deg,#c99a3c,#a87a1c);color:#fff}
.xf-r:nth-child(2) .xf-b{background:linear-gradient(90deg,#b88b31,#956c18)}.xf-r:nth-child(3) .xf-b{background:linear-gradient(90deg,#a37a26,#7f5c14)}.xf-r:nth-child(4) .xf-b{background:linear-gradient(90deg,#8c6820,#6a4d10)}.xf-r:nth-child(5) .xf-b{background:#f4efe3;color:var(--ink)}
.xf-b b{font-size:17px;font-weight:800;text-transform:uppercase;min-width:84px}.xf-b span{font-size:14px;opacity:.92}
.xf-r em{font-style:normal;font-size:13px;font-weight:700;color:#e6c470;border-left:2px solid #6b5420;padding-left:12px}
@media (max-width:760px){.xf-r{grid-template-columns:1fr;gap:4px}.xf-b{width:100%;flex-direction:column;align-items:flex-start;gap:2px}.xf-r em{border:0;padding:0 0 8px 4px}}
/* 05 Mè Xửng */
.xm{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}
@media (max-width:860px){.xm{grid-template-columns:1fr}}
.xm-chat{background:#fff;border:1px solid var(--line);border-radius:22px;padding:20px;display:flex;flex-direction:column;gap:12px}
.xm-chat small{font-size:12px;font-weight:800;color:var(--mut)}.xm-chat p{margin:4px 0 0;font-size:15px}
.xm-chat .xm-u{display:block;align-self:flex-end;max-width:86%;background:var(--bg2);border-radius:16px 16px 4px 16px;padding:12px 14px}
.xm-chat .xm-m{display:block;max-width:92%;background:var(--dk);color:#f4efe3;border-radius:16px 16px 16px 4px;padding:12px 14px}.xm-chat .xm-m small{color:#e6c470}
.xm-t{background:#fff;border:1px solid var(--line);border-radius:22px;padding:20px}
.xm-tt{display:block;font-size:15px;font-weight:800;text-transform:uppercase;margin-bottom:12px}
.xm-g{display:grid;grid-template-columns:minmax(0,1fr) 84px 110px;font-size:14px}
.xm-g span{padding:11px 6px;border-top:1px solid var(--line);display:flex;align-items:center}
.xm-g span:nth-child(-n+3){border-top:0;font-size:11.5px;font-weight:800;color:var(--mut);text-transform:uppercase;letter-spacing:.04em;line-height:1.3}
.xm-g span:nth-child(3n+2),.xm-g span:nth-child(3n){justify-content:center;text-align:center}
.xm-g .n{color:#b9b09c}
.xm-n{margin:12px 0 0;font-size:13.5px;color:var(--mut)}
/* 06 nguyên tắc */
.xn{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:20px;overflow:hidden}
.xn>div{background:#fff;padding:26px}
.xn em{font-style:normal;font-size:13px;font-weight:800;color:var(--gold);letter-spacing:.1em}
.xn h3{margin:6px 0;font-size:18px;font-weight:800}.xn p{margin:0;color:var(--mut);font-size:14.5px}
@media (max-width:860px){.xn{grid-template-columns:1fr 1fr}}@media (max-width:560px){.xn{grid-template-columns:1fr}}
/* 07 kết nối: trung tâm và các vệ tinh */
.xk{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 240px minmax(0,1fr);grid-template-rows:auto auto auto;gap:16px 40px;max-width:1000px;margin:0 auto}
.xk-n{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 18px;position:relative}
.xk-n b{display:block;font-weight:800;text-transform:uppercase;font-size:15px}.xk-n span{font-size:13.5px;color:var(--mut)}
.xk .p0{grid-area:1/1}.xk .p1{grid-area:1/3}.xk .p2{grid-area:2/1}.xk .p3{grid-area:2/3}.xk .p4{grid-area:3/1}.xk .p5{grid-area:3/3}
.xk-c{grid-area:1/2/4/3;align-self:center;justify-self:center;width:190px;height:190px;border-radius:50%;background:var(--dk);color:#e6c470;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 0 0 14px #f1e3bd,0 0 0 15px var(--gold2)}
.xk-c b{font-size:24px;font-weight:800;letter-spacing:.12em}.xk-c span{font-size:12px;color:#d8cfb8}
.xk .p0:after,.xk .p2:after,.xk .p4:after{content:"";position:absolute;top:50%;right:-66px;width:66px;border-top:2px dashed var(--gold2)}
.xk .p1:before,.xk .p3:before,.xk .p5:before{content:"";position:absolute;top:50%;left:-66px;width:66px;border-top:2px dashed var(--gold2)}
@media (max-width:820px){.xk{grid-template-columns:1fr 1fr;gap:12px}.xk .xk-n{grid-area:auto}.xk-c{grid-area:1/1/2/3;width:150px;height:150px;margin:8px 0 20px}.xk .xk-n:before,.xk .xk-n:after{display:none}}
@media (max-width:480px){.xk{grid-template-columns:1fr}.xk-c{grid-area:auto}}
/* 08 phù hợp */
.xa{max-width:1000px;margin:0 auto}
.xa-ch{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.xa-ch span{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border:1.5px solid var(--gold2);border-radius:999px;background:#fff;font-weight:700;font-size:14px}
.xa-sc{margin-top:40px}
.xa-line{position:relative;height:10px;border-radius:999px;background:linear-gradient(90deg,var(--gold2),var(--gold),#6a4d10);margin:0 8px 40px}
.xa-line span{position:absolute;top:18px;transform:translateX(-50%);font-size:13px;font-weight:800;white-space:nowrap}
.xa-line span:first-child{transform:none}.xa-line span:last-child{transform:translateX(-100%)}
.xa-c{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.xa-c>div{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px}.xa-c b{font-weight:800}.xa-c p{margin:6px 0 0;color:var(--mut);font-size:14px}
@media (max-width:700px){.xa-c{grid-template-columns:1fr}}
/* 09 bắt đầu */
.xb{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;counter-reset:b}
.xb li{position:relative;padding:22px;border-radius:20px;background:#fff;border:1px solid var(--line)}
.xb i{font-style:normal;display:inline-flex;width:44px;height:44px;border-radius:50%;align-items:center;justify-content:center;background:var(--dk);color:#e6c470;font-weight:800;font-size:18px}
.xb h3{margin:14px 0 6px;font-size:17px;font-weight:800;text-transform:uppercase}.xb p{margin:0;color:var(--mut);font-size:14.5px}
.xb li:not(:last-child):after{content:"›";position:absolute;right:-13px;top:30px;width:22px;height:22px;border-radius:50%;background:var(--gold);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;z-index:1}
@media (max-width:900px){.xb{grid-template-columns:1fr 1fr}.xb li:after{display:none}}@media (max-width:520px){.xb{grid-template-columns:1fr}}
/* 10 hỏi đáp */
.xq{max-width:860px;margin:0 auto;display:grid;gap:10px}
.xq details{background:#fff;border:1px solid var(--line);border-radius:16px;padding:0 20px}
.xq summary{cursor:pointer;font-weight:800;font-size:16px;min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none}
.xq summary::-webkit-details-marker{display:none}
.xq summary:after{content:"+";flex:none;width:28px;height:28px;border-radius:50%;border:1.5px solid var(--gold2);display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:18px}
.xq details[open] summary:after{content:"–"}
.xq p{margin:0 0 18px;color:var(--mut)}
/* liên hệ */
.xc{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:32px;align-items:center;background:var(--dk);color:#f4efe3;border-radius:28px;padding:44px}
.xc h2{margin:0}.xc h2 em{color:#e6c470;display:inline}.xc p{color:#c9c0ab;margin:14px 0 0}
.xc-l{display:grid;gap:10px}
.xc-l a{display:flex;flex-direction:column;padding:12px 18px;border:1px solid #3b3326;border-radius:14px;color:#f4efe3;text-decoration:none;font-weight:700;min-height:48px;justify-content:center}
.xc-l a:hover{border-color:#e6c470}.xc-l small{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#e6c470}
@media (max-width:820px){.xc{grid-template-columns:1fr;padding:28px 22px}}
.xp-foot{border-top:1px solid var(--line);padding:24px 0;font-size:13.5px;color:var(--mut)}
.xp-foot .xp-w{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.xp-foot a{color:var(--gold);font-weight:700;text-decoration:none}
.xp [id^="xi-"]{scroll-margin-top:72px}
/* r303 Rà soát điện thoại: thanh mục hiện đủ chữ, thẻ chiến dịch không cắt số, đầu trang gọn */
@media (max-width:640px){
  /* thanh mục con: xếp thành chip nhiều dòng, không cắt chữ ở mép phải */
  .cu-tabs,.hm-tabs{flex-wrap:wrap;overflow:visible;border-bottom:0;gap:6px;margin-bottom:14px}
  .cu-tabs a,.hm-tabs a,.hm-tabs button{white-space:nowrap;border:1px solid var(--line)!important;border-radius:999px;padding:7px 13px;min-height:38px;font-size:13.5px;line-height:1.2}
  .cu-tabs a.on,.hm-tabs a.on,.hm-tabs button.on{background:var(--gold,#d9b45c);border-color:var(--gold,#d9b45c)!important;color:#141109}
  .cu-tabs a i{display:none}
  .ac2-tabs{position:static;flex-wrap:wrap;overflow:visible;gap:4px}
  .ac2-t{flex:1 1 calc(50% - 4px);min-height:40px;padding:6px 8px}.ac2-t span{white-space:nowrap;font-size:13px}
  .qy-sc{flex-wrap:wrap;overflow:visible}
  .qy-sc button{min-height:38px;padding:7px 13px}
  /* đầu trang: chữ nhỏ lại, bỏ dòng nhãn, đỡ chiếm cả màn hình đầu */
  .xh{padding:16px 14px!important}
  .xh .hb-kick{display:none}
  .xh h1{font-size:26px!important;line-height:1.15}
  .xh-t > p{font-size:14px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  /* chọn kênh quảng cáo: 2 cột cho đủ tên */
  .rch{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rch-t{padding:9px 10px;gap:8px}
  /* tổng số chiến dịch: số lớn không tràn khung */
  .rc-sum{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .rc-sum>div{padding:10px 12px!important;min-width:0}
  .rc-sum b{font-size:18px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .rc-top{flex-direction:column;gap:10px}
  .rc-tools{align-items:stretch;width:100%}
  .rc-acc,.rc-th{justify-content:flex-start}
  /* thẻ chiến dịch: tên xuống dòng đủ, nút một hàng, số liệu 2 cột */
  .rc{padding:12px!important}
  .rc-h{flex-wrap:wrap;gap:8px;align-items:flex-start}
  .rc-n{flex:1 1 calc(100% - 24px)}
  .rc-n b{white-space:normal;overflow:visible;font-size:15px;line-height:1.3;word-break:break-word}
  .rc-plat{display:flex;margin:4px 0}
  .rc-h .rl-pill,.rc-h .pill{margin-left:18px}
  .rc-a{width:100%;flex-wrap:wrap}
  .rc-a .btn{flex:1;min-height:40px}
  .rc-ms{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  .rc-m{padding:8px 10px}
  .rc-m small{font-size:10.5px}
  .rc-m b{font-size:15px;overflow:visible;white-space:normal;word-break:break-all}
  /* hộp, bảng chung: bớt lề cho rộng chỗ */
  .box{padding:14px}
  .box .box{padding:12px}
  .tbl-wrap{margin-left:-4px;margin-right:-4px}
  /* lịch 7 ngày: ngày tháng nhỏ lại cho khỏi chồng nhau */
  .jb-h small{display:block}.jb-h b{display:block;font-size:10px;font-weight:600;letter-spacing:-.02em;white-space:nowrap}
  /* ô mục tiêu ở Tổng quan: nút nằm gọn trong ô */
  .hm-ic{min-width:0}.hm-ic .btn{max-width:100%;white-space:normal;padding-left:8px;padding-right:8px;font-size:12.5px}
  /* form soạn chiến dịch: ngày bắt đầu và kết thúc không bị bóp, tiêu đề mục gọn */
  .rl-f .row-wrap:has(#rnStart){display:grid!important;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:6px}
  .rl-f .row-wrap:has(#rnStart) span{white-space:nowrap}
  #rnStart,#rnEnd{min-width:0;width:100%;padding-left:8px;padding-right:4px}
  .rn-s{padding:14px 12px}.rn-s h4{flex-wrap:wrap;row-gap:2px}.rn-s h4 small{flex-basis:100%;margin-left:38px}
  /* Hộp thư, cài đặt kênh: thẻ không rộng quá màn hình, tên trang và ghi chú xếp hai dòng */
  .ch-card{max-width:100%;min-width:0}.ch-card>*{min-width:0}
  .as-pf label.check{flex-wrap:wrap;align-items:flex-start}.as-pf label.check>span{flex-basis:100%;padding-left:24px}
  /* nút Mè Xửng nhỏ gọn, không che nội dung */
  .ag-fab{padding:10px!important;bottom:calc(80px + env(safe-area-inset-bottom))!important;right:10px!important;opacity:.92}
}
/* r304 Tin nhắn của người hỏi trong Mè Xửng: không lấy kiểu nút tài khoản (.me) làm bong bóng tròn */
.ag-m.me{display:block;border:0;border-radius:0;padding:0;background:none;font:inherit;cursor:default}
.ag-m.me .ag-mi{justify-content:flex-end}
.ag-m.me .ag-mi img{max-width:110px;max-height:150px}
/* Dịch vụ cần quảng cáo: tiêu đề trụ cột không bị bóp thành cột chữ dọc */
@media (max-width:640px){
  .ad-pl-h{flex-wrap:wrap;gap:8px 10px}
  .ad-pl-h>div{flex:1 1 calc(100% - 46px)}
  .ad-pl-n{order:3;margin-left:46px}
  .ad-pl-tools{order:4;flex-basis:100%;display:flex;gap:8px;margin-left:0}.ad-pl-tools .btn{flex:1;min-height:40px}
  .ag-h b{font-size:15px}
}

/* r307 Nút đầu khung Mè Xửng: ba nút tròn cùng cỡ, biểu tượng nét mảnh, nút đóng chỉ có dấu X */
.ag-hb{gap:6px;align-items:center}
.ag-hb .icon-btn{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;padding:0;line-height:0}
.ag-hb .icon-btn svg{display:block}

/* Nhắm theo số thật */
.rc-aud h5{margin:6px 0 0;font-size:13px}
.rc-aud .aud-d{gap:6px;align-items:center}
.aud-g{display:grid;gap:4px;overflow-x:auto}
.aud-h,.aud-r{display:grid;grid-template-columns:56px repeat(3,minmax(96px,1fr));gap:4px;align-items:stretch}
.aud-h b{font-size:11px;letter-spacing:.06em;text-transform:uppercase;opacity:.6;text-align:center}
.aud-r>b{font-size:12px;align-self:center}
.aud-c{position:relative;overflow:hidden;border-radius:8px;padding:6px 8px;background:#ffffff08;border:1px solid var(--line);display:flex;flex-direction:column;gap:1px;min-width:0}
.aud-c i{position:absolute;left:0;bottom:0;height:3px;background:currentColor;opacity:.5}
.aud-c em{font-style:normal;font-weight:700;font-size:13px}.aud-c small{font-size:11px;opacity:.65}
.aud-c.good{background:#2f9e6224;border-color:#2f9e6266;color:#2f9e62}.aud-c.ok{color:inherit}
.aud-c.bad{background:#d9534f1f;border-color:#d9534f55;color:#c9483f}.aud-c.thin,.aud-c.none{opacity:.55}
.aud-c.sum{background:transparent}
.aud-sg{font-size:13px;line-height:1.5;padding:10px 12px;border-radius:10px;background:#c2a0561a;border:1px solid #c2a05644}
.aud-sg em{opacity:.75}
.aud-rg ul{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:4px}
.aud-rg li{display:grid;grid-template-columns:1fr auto auto;gap:10px;font-size:12px;align-items:center}.aud-rg li small{opacity:.6}
.aud-btns{display:flex;flex-wrap:wrap;gap:6px}
@media (max-width:560px){.aud-h,.aud-r{grid-template-columns:44px repeat(2,minmax(0,1fr))}.aud-h b:last-child,.aud-c.sum{display:none}.aud-btns .btn{flex:1 1 100%}}
/* ===== Trang giới thiệu Xưởng (xz): xưởng sản xuất vàng, đen, trắng ===== */
.xz{--cr:#faf7f0;--cr2:#f3ecdc;--ink:#141414;--mut:#5d584d;--line:#e6dcc6;--g:#c2a056;--g2:#e3c06f;--g3:#f4dc9c;--gt:#8a6a26;--dk:#151310;--dk2:#1d1a15;--dmut:#bdb4a0;--ok:#2f9e62;--bad:#c9483f;font-family:var(--body);background:#fff;color:var(--ink);line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:clip}
.xz *{box-sizing:border-box}.xz-in{margin:-8px -4px 0;border-radius:18px;overflow:hidden}
.xz a{color:inherit;text-decoration:none}
.xz-w{max-width:1180px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.xz-sec{padding-block:88px}.xz-cream{background:var(--cr)}.xz-dk{background:var(--dk);color:#f4efe3}
.xz-k{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--gt)}
.xz-dk .xz-k,.xz-h.lt .xz-k{color:var(--g2)}
.xz-h{max-width:760px;margin-bottom:40px;display:grid;gap:10px}
.xz-h h2{margin:0;font-size:clamp(28px,4.2vw,46px);line-height:1.08;font-weight:800;text-transform:uppercase;letter-spacing:-.01em;text-wrap:balance}
.xz-h h2 em{font-style:normal;color:var(--g)}.xz-dk .xz-h h2{color:#fff}.xz-dk .xz-h h2 em{color:var(--g2)}
.xz-h p{margin:0;font-size:17px;color:var(--mut);max-width:62ch}.xz-dk .xz-h p{color:var(--dmut)}
.xz-ic{flex:none;width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:var(--ink);color:var(--g2)}.xz-ic svg{width:19px;height:19px}
.xz-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border-radius:999px;font-weight:800;font-size:15px;border:1.5px solid transparent;cursor:pointer;font-family:inherit;transition:transform .2s}
.xz-btn:hover{transform:translateY(-2px)}.xz-btn.g{background:linear-gradient(180deg,#e8cf95,#c2a056);color:#151310}.xz-btn.o{border-color:currentColor;background:transparent;color:inherit}.xz-btn.sm{min-height:40px;padding:0 16px;font-size:14px}
/* thanh trên, chân trang */
.xz-nav{position:sticky;top:0;z-index:20;background:rgba(21,19,16,.92);backdrop-filter:blur(10px);color:#f4efe3;border-bottom:1px solid #ffffff14}
.xz-nav .xz-w{display:flex;align-items:center;gap:20px;min-height:64px}
.xz-logo{display:flex;flex-direction:column;line-height:1.05}.xz-logo b{font-size:19px;font-weight:800}.xz-logo em{font-style:normal;color:var(--g2)}.xz-logo small{font-size:10.5px;letter-spacing:.14em;color:var(--dmut);text-transform:uppercase}
.xz-nav nav{display:flex;gap:22px;margin-left:auto;font-size:14px;font-weight:600}.xz-nav nav a{opacity:.8}.xz-nav nav a:hover{opacity:1;color:var(--g2)}
.xz-nb{display:flex;gap:8px}
@media (max-width:860px){.xz-nav nav{display:none}.xz-nb{margin-left:auto}}
.xz-foot{background:var(--dk);color:var(--dmut);font-size:13px}.xz-foot .xz-w{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-block:22px}.xz-foot a{color:var(--g2)}
/* hero */
.xz-hero{padding-block:72px 84px;position:relative;overflow:hidden}
.xz-hero:before{content:"";position:absolute;inset:-30% -10% auto auto;width:720px;height:720px;border-radius:50%;background:radial-gradient(circle,rgba(194,160,86,.16),transparent 65%);pointer-events:none}
.xz-hg{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:40px;align-items:center;position:relative}
.xz-ht{display:grid;gap:20px;justify-items:start}
.xz-hero h1{margin:0;font-size:clamp(36px,5.6vw,66px);line-height:1.02;font-weight:800;text-transform:uppercase;letter-spacing:-.02em;color:#fff}
.xz-hero h1 em{font-style:normal;color:var(--g2)}.xz-hero h1 span{display:block;margin-top:12px;font-family:var(--display);font-style:italic;text-transform:none;font-weight:500;font-size:.56em;letter-spacing:0;color:var(--g3)}
.xz-lead{margin:0;font-size:17.5px;color:#d9d1bf;max-width:56ch}.xz-lead b{color:#fff}
.xz-cta{display:flex;gap:12px;flex-wrap:wrap}
.xz-facts{display:flex;gap:10px;flex-wrap:wrap}.xz-facts span{display:flex;align-items:baseline;gap:8px;border:1px solid #ffffff1f;border-radius:14px;padding:10px 14px;font-size:13px;color:var(--dmut);background:#ffffff06}.xz-facts b{font-size:26px;font-weight:800;color:var(--g2);line-height:1}
@media (max-width:980px){.xz-hg{grid-template-columns:1fr}.xz-hv{max-width:620px;width:100%;margin:0 auto}}
/* vòng sáu chặng */
.xz-wh{position:relative;width:100%;aspect-ratio:800/780;container-type:inline-size}
.xz-wh svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.xz-wh .rg{fill:none;stroke:#ffffff1a;stroke-width:2}.xz-wh .sp{stroke:rgba(194,160,86,.55);stroke-width:2;stroke-dasharray:3 7}
.xz-wh .ar{fill:none;stroke:var(--g2);stroke-width:4;stroke-linecap:round;animation:xzArc 12s ease-in-out infinite}.xz-wh .ar.lp{stroke-dasharray:.06 .05}
@keyframes xzArc{0%{stroke-opacity:.35}6%,14%{stroke-opacity:1}22%,100%{stroke-opacity:.35}}
.xz-wh .dt{fill:var(--g3);filter:drop-shadow(0 0 6px rgba(244,220,156,.9))}
.xz-wb{position:absolute;width:26.5%;transform:translate(-50%,-50%);padding:2.2cqw 1.6cqw;border-radius:2.6cqw;background:var(--dk2);border:max(1.5px,.3cqw) solid var(--g);text-align:center;display:flex;flex-direction:column;align-items:center;gap:.4cqw;animation:xzOn 12s infinite}
.xz-wb i{font-style:normal;font-size:max(9px,1.85cqw);font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--g2);line-height:1.1}
.xz-wb b{font-size:max(13px,3.1cqw);font-weight:800;color:#fff;line-height:1.15}.xz-wb small{font-size:max(9.5px,1.75cqw);color:var(--dmut);line-height:1.3}
@keyframes xzOn{0%,15%{background:#3a2f17;border-color:var(--g3);box-shadow:0 0 0 .6cqw rgba(227,192,111,.14),0 0 3cqw rgba(227,192,111,.35);transform:translate(-50%,-50%) scale(1.04)}20%,100%{background:var(--dk2);border-color:var(--g);box-shadow:none;transform:translate(-50%,-50%)}}
.xz-wc{position:absolute;width:28.5%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 50% 35%,#211b10,#0b0a08 70%);border:max(1.5px,.35cqw) solid var(--g);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:1cqw}
.xz-wc:after{content:"";position:absolute;inset:-2cqw;border-radius:50%;border:max(1px,.25cqw) solid rgba(194,160,86,.55);animation:xzPulse 3s ease-out infinite}
@keyframes xzPulse{0%{transform:scale(.92);opacity:.9}100%{transform:scale(1.22);opacity:0}}
.xz-wc b{font-size:max(14px,3.6cqw);font-weight:800;letter-spacing:.04em;color:var(--g2);line-height:1}.xz-wc span{font-size:max(9.5px,1.8cqw);color:#d9d1bf;line-height:1.45}
.xz-wp{position:absolute;transform:translate(-50%,-50%);white-space:nowrap;background:var(--g2);color:#151310!important;font-weight:800;font-size:max(10px,2cqw);padding:1.4cqw 2.6cqw;border-radius:999px}
@media (max-width:420px){.xz-wb{padding:6px 4px}.xz-wb small,.xz-wc span{display:none}.xz-wp{font-size:9.5px;padding:5px 9px}}
/* một ngày */
.xz-day{display:grid;gap:28px}
.xz-split{display:flex;border-radius:16px;overflow:hidden;font-size:13.5px;min-height:64px}
.xz-split span{display:flex;flex-direction:column;justify-content:center;padding:10px 16px;gap:2px}.xz-split b{font-size:15px}
.xz-split .ow{flex:0 0 18%;background:var(--ink);color:#f4efe3}.xz-split .ow b{color:var(--g2)}
.xz-split .x{flex:1;background:linear-gradient(90deg,#f4dc9c,#c2a056);color:#151310;transform-origin:left;transform:scaleX(.08);transition:transform 1.6s cubic-bezier(.2,.8,.2,1) .2s}
.xz-day.in .xz-split .x{transform:none}
.xz-tl{position:relative;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;padding-top:28px}
.xz-tl:before{content:"";position:absolute;left:18px;right:18px;top:10px;border-top:2px dashed #d6c39a}
.xz-tl-run{position:absolute;left:18px;top:3px;width:16px;height:16px;border-radius:50%;background:var(--g);box-shadow:0 0 0 5px rgba(194,160,86,.2);animation:xzRun 9s linear infinite}
@keyframes xzRun{0%{left:18px}100%{left:calc(100% - 34px)}}
.xz-tn{position:relative;display:grid;gap:6px;align-content:start;padding:16px 14px;border-radius:18px;background:var(--cr);border:1px solid var(--line);opacity:0;transform:translateY(14px);transition:.6s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--d)*.12s)}
.xz-tn:before{content:"";position:absolute;left:22px;top:-22px;width:10px;height:10px;border-radius:50%;background:#fff;border:2px solid var(--g)}
.xz-day.in .xz-tn{opacity:1;transform:none}
.xz-tn time{font-size:12px;font-weight:800;color:var(--gt);letter-spacing:.06em;text-transform:uppercase}.xz-tn b{font-size:16px}.xz-tn p{margin:0;font-size:13.5px;color:var(--mut)}
@media (max-width:980px){.xz-tl{grid-template-columns:repeat(3,minmax(0,1fr))}.xz-tl:before,.xz-tl-run,.xz-tn:before{display:none}.xz-tl{padding-top:0}}
@media (max-width:560px){.xz-tl{grid-template-columns:1fr 1fr}.xz-split .ow{flex-basis:34%}}
/* trước, sau */
.xz-vs{display:grid;gap:12px}
.xz-vr{display:grid;grid-template-columns:minmax(0,1fr) 56px minmax(0,1fr);align-items:stretch;opacity:0;transform:translateY(12px);transition:.6s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--d)*.12s)}
.xz-vs.in .xz-vr{opacity:1;transform:none}
.xz-vr p{margin:0;display:flex;gap:12px;align-items:center;padding:16px 18px;border-radius:16px;font-size:15px}
.xz-vr .no{background:#fff;border:1px solid var(--line);color:var(--mut)}.xz-vr .no .xz-ic{background:#f6e2df;color:var(--bad)}
.xz-vr .ok{background:var(--ink);color:#f4efe3;font-weight:600}.xz-vr .ok .xz-ic{background:var(--g2);color:#151310}
.xz-arw{position:relative;align-self:center;height:2px;margin:0 6px;background:linear-gradient(90deg,#d6c39a,var(--g))}
.xz-arw:after{content:"";position:absolute;right:-2px;top:-5px;border:6px solid transparent;border-left:9px solid var(--g);border-right:0}
.xz-arw:before{content:"";position:absolute;left:0;top:-3px;width:8px;height:8px;border-radius:50%;background:var(--g);animation:xzShot 2.4s ease-in-out infinite;animation-delay:inherit}
@keyframes xzShot{0%{left:0;opacity:0}20%{opacity:1}80%{opacity:1}100%{left:calc(100% - 8px);opacity:0}}
@media (max-width:720px){.xz-vr{grid-template-columns:1fr;gap:0}.xz-arw{width:2px;height:22px;margin:0 0 0 34px;background:linear-gradient(180deg,#d6c39a,var(--g))}.xz-arw:after{right:auto;left:-5px;top:auto;bottom:-6px;border:6px solid transparent;border-top:9px solid var(--g);border-bottom:0}.xz-arw:before{display:none}}
/* bản đồ: dây chuyền một việc + cửa sổ từng trang */
.xz-line{position:relative;margin-bottom:36px;padding:26px 24px 22px;border-radius:26px;background:radial-gradient(120% 140% at 50% 0%,#2a2317 0%,#17140f 60%);border:1px solid #c2a05640;overflow:hidden}
.xz-line:before{content:"";position:absolute;inset:0;background-image:radial-gradient(#ffffff10 1px,transparent 1px);background-size:18px 18px;pointer-events:none}
.xz-lt{position:relative;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin-bottom:22px}.xz-lt b{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--g2)}.xz-lt span{font-size:14px;color:var(--dmut)}
.xz-rail{position:relative;display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:6px}
.xz-belt{position:absolute;left:calc(100%/18);right:calc(100%/18);top:27px;height:14px;border-radius:999px;background:#0b0a08;border:1.5px solid #c2a05666;box-shadow:inset 0 2px 6px #000}
.xz-belt:before{content:"";position:absolute;inset:3px 4px;border-radius:999px;background:repeating-linear-gradient(90deg,#c2a05659 0 10px,transparent 10px 20px);animation:xzBelt 1s linear infinite}
@keyframes xzBelt{to{background-position:20px 0}}
.xz-belt .tok{position:absolute;z-index:3;top:50%;left:0;width:34px;height:40px;margin:-26px 0 0 -17px;border-radius:8px;background:#fff;color:#151310;display:grid;place-items:center;box-shadow:0 8px 18px -6px rgba(0,0,0,.6),0 0 0 3px #e3c06f;opacity:0}
.xz-belt .tok svg{width:20px;height:20px}
.xz-line.in .tok{animation:xzTok 10s linear infinite}
@keyframes xzTok{0%{left:0;opacity:0}3%{opacity:1}86%{left:100%;opacity:1}92%,100%{left:100%;opacity:0}}
.xz-stn{position:relative;z-index:2;display:grid;justify-items:center;gap:10px;text-align:center}
.xz-stn .ci{position:relative;width:62px;height:62px;border-radius:20px;display:grid;place-items:center;background:#1d1a15;border:1.5px solid #c2a05680;color:var(--g2);transition:.3s}
.xz-stn .ci svg{width:26px;height:26px}
.xz-stn .ci em{position:absolute;right:-7px;top:-7px;width:22px;height:22px;border-radius:50%;background:#151310;border:1.5px solid var(--g);font-style:normal;font-size:11px;font-weight:800;color:var(--g2);display:grid;place-items:center}
.xz-line.in .xz-stn .ci{animation:xzStn 10s infinite;animation-delay:calc(var(--i)*1.075s)}
@keyframes xzStn{0%,9%{background:linear-gradient(180deg,#f4dc9c,#c2a056);color:#151310;border-color:#f4dc9c;box-shadow:0 0 0 6px rgba(227,192,111,.14),0 0 26px rgba(227,192,111,.5);transform:translateY(-4px)}14%,100%{background:#1d1a15;color:var(--g2);border-color:#c2a05680;box-shadow:none;transform:none}}
.xz-stn b{font-size:13px;line-height:1.3;color:#f4efe3}
.xz-bands{position:relative;display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:6px;margin-top:16px}
.xz-bands span{position:relative;text-align:center;font-size:10.5px;line-height:1.35;text-wrap:balance;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--g2);padding-top:10px;border-top:2px solid var(--g)}
.xz-bands span:before,.xz-bands span:after{content:"";position:absolute;top:-6px;width:2px;height:10px;background:var(--g)}.xz-bands span:before{left:0}.xz-bands span:after{right:0}
.xz-bands span.d{color:var(--dmut);border-color:#ffffff33}.xz-bands span.d:before,.xz-bands span.d:after{background:#ffffff33}
.xz-ret{position:relative;margin:14px calc(100%/18) 0;height:46px;border:2px dashed #e3c06f99;border-top:0;border-radius:0 0 46px 46px}
.xz-ret:before{content:"";position:absolute;left:-8px;top:-10px;border:7px solid transparent;border-bottom:11px solid #e3c06f;border-top:0}
.xz-ret span{position:absolute;left:50%;bottom:-14px;transform:translateX(-50%);white-space:nowrap;background:var(--g2);color:#151310;font-size:12.5px;font-weight:800;padding:6px 14px;border-radius:999px}
@media (max-width:900px){.xz-rail{grid-template-columns:1fr;gap:12px}.xz-belt{left:30px;right:auto;top:31px;bottom:31px;width:14px;height:auto}.xz-belt:before{inset:4px 3px;background:repeating-linear-gradient(180deg,#c2a05659 0 10px,transparent 10px 20px);animation:xzBeltV 1s linear infinite}
  @keyframes xzBeltV{to{background-position:0 20px}}
  .xz-belt .tok{left:50%;top:0;margin:-20px 0 0 -17px}.xz-line.in .tok{animation-name:xzTokV}
  @keyframes xzTokV{0%{top:0;opacity:0}3%{opacity:1}86%{top:100%;opacity:1}92%,100%{top:100%;opacity:0}}
  .xz-stn{grid-template-columns:62px 1fr;justify-items:start;align-items:center;text-align:left;gap:16px}.xz-stn b{font-size:15px}.xz-bands{display:none}.xz-ret{margin:20px 0 6px;height:auto;border:0}.xz-ret:before{display:none}.xz-ret span{position:static;transform:none;display:inline-block;white-space:normal}}
.xz-map{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.xz-st{position:relative;overflow:hidden;display:grid;gap:14px;align-content:start;padding:20px;border-radius:24px;background:linear-gradient(180deg,#221e17,#191611);border:1px solid #ffffff17;scroll-margin-top:80px;opacity:0;transform:translateY(16px);transition:.7s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--d)*.1s)}
.xz-st.in{opacity:1;transform:none}
.xz-sth{position:relative;display:flex;align-items:center;gap:14px}
.xz-sth .bi{flex:none;width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(180deg,#f4dc9c,#c2a056);color:#151310;box-shadow:0 10px 24px -12px rgba(227,192,111,.7)}.xz-sth .bi svg{width:26px;height:26px}
.xz-st.sp .xz-sth .bi{background:#0b0a08;color:var(--g2);border:1.5px solid var(--g2)}
.xz-sth i{display:block;font-style:normal;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--g2)}
.xz-sth h3{margin:2px 0 0;font-size:20px;color:#fff;line-height:1.15}.xz-sth small{font-size:13px;color:var(--dmut)}
.xz-sth .wm{position:absolute;right:-4px;top:-14px;font-style:normal;font-size:72px;font-weight:800;line-height:1;color:transparent;-webkit-text-stroke:1.5px #c2a05638;pointer-events:none}
.xz-wins{display:grid;gap:10px}
.xz-win{border-radius:14px;background:#0f0d0a;border:1px solid #ffffff14;overflow:hidden;box-shadow:0 14px 30px -22px #000;opacity:0;transform:translateY(10px) scale(.98);transition:.55s cubic-bezier(.2,.8,.2,1);transition-delay:calc(.2s + var(--j)*.12s)}
.xz-st.in .xz-win{opacity:1;transform:none}
.xz-win .bar{display:flex;align-items:center;gap:5px;padding:8px 12px;background:#ffffff08;border-bottom:1px solid #ffffff0f}
.xz-win .bar i{width:7px;height:7px;border-radius:50%;background:#ffffff26}.xz-win .bar i:first-child{background:#c2a056}
.xz-win .bar b{margin-left:8px;font-size:14px;color:#fff}
.xz-win .tb{display:flex;flex-wrap:wrap;gap:2px 4px;padding:6px 10px 0;border-bottom:1px solid #ffffff0f}
.xz-win .tb span{position:relative;font-size:12.5px;padding:6px 8px 9px;color:#a69d8b;transition:color .3s}
.xz-win .tb span:after{content:"";position:absolute;left:8px;right:8px;bottom:-1px;height:2px;border-radius:2px;background:var(--g2);transform:scaleX(0);transition:transform .35s}
.xz-win .tb span.on{color:#f4dc9c}.xz-win .tb span.on:after{transform:none}
.xz-win .sk{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:10px 12px 12px}
.xz-win .sk i{grid-column:1/-1;height:6px;border-radius:4px;background:#ffffff12}
.xz-win .sk u{height:22px;border-radius:6px;background:linear-gradient(90deg,#ffffff08,#ffffff14,#ffffff08);background-size:200% 100%;animation:xzSk 2.4s linear infinite}
.xz-win .sk u:first-of-type{background:linear-gradient(90deg,#c2a05626,#c2a05645,#c2a05626);background-size:200% 100%}
@keyframes xzSk{to{background-position:-200% 0}}
@media (max-width:760px){.xz-map{grid-template-columns:1fr}.xz-line{padding:20px 16px}}
/* người duyệt, máy làm */
.xz-ln{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.xz-lr{background:var(--cr);border:1px solid var(--line);border-radius:22px;padding:16px 14px;display:flex;flex-direction:column;gap:12px;opacity:0;transform:translateY(14px);transition:.6s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--i)*.1s)}
.xz-lr.in{opacity:1;transform:none}
.xz-lr .who b{display:block;font-size:15px;font-weight:800;text-transform:uppercase}.xz-lr .who small{font-size:12px;color:var(--mut)}
.xz-strip{position:relative;height:64px;border-radius:14px;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 10px}
.xz-strip:before{content:"";position:absolute;left:30px;right:30px;top:50%;border-top:2px dashed #d6c39a}
.xz-strip .nd{position:relative;z-index:1;width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center}.xz-strip .nd svg{width:22px;height:22px}
.xz-strip .sy{background:var(--ink);color:var(--g2)}.xz-strip .sy svg{animation:xzGear 4s linear infinite}
@keyframes xzGear{to{transform:rotate(360deg)}}
.xz-strip .pe{background:#fff;color:var(--ink);border:1.5px solid var(--line);border-radius:50%}
.xz-strip .pe i{position:absolute;right:-6px;top:-6px;width:20px;height:20px;border-radius:50%;background:var(--ok);color:#fff;font-style:normal;font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center;transform:scale(0);animation:xzOk 6s infinite;animation-delay:calc(var(--i)*.6s)}
.xz-strip .rs{background:#fff;color:#b8bcb3;border:1.5px solid var(--line);animation:xzRs 6s infinite;animation-delay:calc(var(--i)*.6s)}
.xz-strip .dc{position:absolute;z-index:2;top:50%;left:22px;width:16px;height:20px;margin-top:-10px;border-radius:3px;background:#fff;border:1.5px solid var(--g);box-shadow:0 4px 8px -4px rgba(0,0,0,.4);animation:xzDoc 6s ease-in-out infinite;animation-delay:calc(var(--i)*.6s)}
.xz-strip .dc:before{content:"";position:absolute;left:3px;right:3px;top:5px;height:2px;background:var(--g);box-shadow:0 4px 0 var(--g),0 8px 0 #d6c39a}
@keyframes xzDoc{0%{left:22px;opacity:0}8%{opacity:1}35%,45%{left:calc(50% - 8px);opacity:1}70%{left:calc(100% - 38px);opacity:1}76%,100%{left:calc(100% - 38px);opacity:0}}
@keyframes xzOk{0%,38%{transform:scale(0)}45%{transform:scale(1.3)}50%,92%{transform:scale(1)}100%{transform:scale(0)}}
@keyframes xzRs{0%,70%{background:#fff;color:#b8bcb3;border-color:var(--line);box-shadow:none}76%,94%{background:linear-gradient(180deg,#e8cf95,#c2a056);color:#151310;border-color:#e8cf95;box-shadow:0 0 16px rgba(194,160,86,.55)}100%{background:#fff;color:#b8bcb3}}
.xz-cp{display:grid;gap:6px;font-size:12.5px;line-height:1.4}.xz-cp span{display:flex;gap:8px;align-items:flex-start}
.xz-cp em{flex:none;font-style:normal;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;border-radius:6px;padding:2px 6px;margin-top:1px}
.xz-cp .a em{background:var(--ink);color:var(--g2)}.xz-cp .b em{background:var(--ok);color:#fff}.xz-cp .c em{background:#f2e6c4;color:#7a5b16}.xz-cp .c{font-weight:700}
@media (max-width:1100px){.xz-ln{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:760px){.xz-ln{grid-template-columns:1fr 1fr}}@media (max-width:480px){.xz-ln{grid-template-columns:1fr}}
/* hành trình khách */
.xz-fn{display:grid;gap:10px;justify-items:center}
.xz-fr{width:var(--w);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;opacity:0;transform:scaleX(.9);transition:.7s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--d)*.12s)}
.xz-fn.in .xz-fr{opacity:1;transform:none}
.xz-fb{position:relative;overflow:hidden;display:flex;gap:14px;align-items:baseline;padding:16px 20px;border-radius:16px;background:linear-gradient(90deg,#2a2317,#3a2f17);border:1px solid #c2a05655}
.xz-fb b{font-size:19px;color:var(--g3);flex:none}.xz-fb span{font-size:14px;color:#d9d1bf}
.xz-fb .pk{position:absolute;top:0;bottom:0;left:-30%;width:30%;background:linear-gradient(90deg,transparent,rgba(244,220,156,.18),transparent);animation:xzSweep 4s ease-in-out infinite;animation-delay:calc(var(--d)*.5s)}
@keyframes xzSweep{0%{left:-30%}60%,100%{left:110%}}
.xz-fr em{font-style:normal;font-size:12px;font-weight:700;color:var(--g2);white-space:nowrap;padding:5px 10px;border:1px solid #c2a05666;border-radius:999px}
@media (max-width:760px){.xz-fr{width:100%;grid-template-columns:1fr}.xz-fb{flex-direction:column;gap:4px}.xz-fr em{justify-self:start}}
/* Mè Xửng */
.xz-mx{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}
.xz-chat{display:grid;gap:12px;padding:22px;border-radius:24px;background:var(--dk);color:#f4efe3}
.xz-chat small{display:block;font-size:11.5px;font-weight:700;opacity:.7;margin-bottom:4px}.xz-chat p{margin:0;font-size:14.5px;line-height:1.55}
.xz-chat .u{justify-self:end;max-width:85%;background:#ffffff12;border-radius:18px 18px 4px 18px;padding:12px 14px}
.xz-chat .m{max-width:90%;background:linear-gradient(180deg,#e8cf95,#c2a056);color:#151310;border-radius:18px 18px 18px 4px;padding:12px 14px}
.xz-chat .ty{display:flex;gap:5px;padding:12px 14px;background:#ffffff12;border-radius:16px;width:max-content}.xz-chat .ty i{width:7px;height:7px;border-radius:50%;background:var(--g2);animation:xzTy 1s infinite}.xz-chat .ty i:nth-child(2){animation-delay:.15s}.xz-chat .ty i:nth-child(3){animation-delay:.3s}
@keyframes xzTy{0%,60%,100%{transform:none;opacity:.4}30%{transform:translateY(-4px);opacity:1}}
.xz-chat .u,.xz-chat .ty,.xz-chat .m{opacity:0;transform:translateY(10px)}
.xz-chat.in .u{animation:xzIn .5s .2s forwards}.xz-chat.in .ty{animation:xzIn .4s .9s forwards,xzOut .3s 2.4s forwards}.xz-chat.in .m{animation:xzIn .5s 2.6s forwards}
.xz-chat.in .ty{position:relative}
@keyframes xzIn{to{opacity:1;transform:none}}@keyframes xzOut{to{opacity:0;height:0;padding:0;margin:-6px 0}}
.xz-perm{padding:22px;border-radius:24px;background:#fff;border:1px solid var(--line);display:grid;gap:14px}.xz-perm .tt{font-size:17px}
.xz-perm .g{display:grid;grid-template-columns:minmax(0,1.6fr) repeat(2,minmax(0,.7fr));font-size:14px}
.xz-perm .g span{padding:10px 6px;border-top:1px solid var(--line);display:flex;align-items:center}.xz-perm .g span:nth-child(-n+3){border-top:0;font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--mut)}
.xz-perm .g .y,.xz-perm .g .n{justify-content:center}.xz-perm .g .xz-ic{width:26px;height:26px;border-radius:50%;background:var(--ok);color:#fff}.xz-perm .g .xz-ic svg{width:15px;height:15px}.xz-perm .g .n{color:#b8b1a2}
.xz-perm p{margin:0;font-size:13.5px;color:var(--mut)}
@media (max-width:860px){.xz-mx{grid-template-columns:1fr}}
/* kết nối */
.xz-kg{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:32px;align-items:center}.xz-kg .xz-h{margin:0}
.xz-hub{position:relative;width:100%;max-width:520px;aspect-ratio:1;margin:0 auto}
.xz-hub svg{position:absolute;inset:0;width:100%;height:100%}.xz-hub line{stroke:#d6c39a;stroke-width:1.5;stroke-dasharray:3 6}
.xz-hub .pl{stroke:var(--g);stroke-width:3;stroke-dasharray:14 400;stroke-dashoffset:0;animation:xzPl 3s linear infinite}
@keyframes xzPl{from{stroke-dashoffset:150}to{stroke-dashoffset:-30}}
.xz-hn{position:absolute;width:31%;transform:translate(-50%,-50%) scale(.8);opacity:0;padding:12px;border-radius:16px;background:#fff;border:1.5px solid var(--line);box-shadow:0 10px 24px -16px rgba(0,0,0,.35);text-align:center;display:grid;gap:3px;transition:.6s cubic-bezier(.3,1.3,.5,1);transition-delay:calc(var(--d)*.1s)}
.xz-hub.in .xz-hn{opacity:1;transform:translate(-50%,-50%)}
.xz-hn b{font-size:15px}.xz-hn span{font-size:11.5px;color:var(--mut);line-height:1.35}
.xz-hc{position:absolute;left:50%;top:50%;width:27%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:var(--dk);border:2px solid var(--g);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.xz-hc:after{content:"";position:absolute;inset:-8px;border-radius:50%;border:1.5px solid var(--g);animation:xzPulse 2.6s ease-out infinite}
.xz-hc b{color:var(--g2);font-size:clamp(14px,3.2vw,18px);font-weight:800;letter-spacing:.06em}.xz-hc span{color:#d9d1bf;font-size:11px}
@media (max-width:860px){.xz-kg{grid-template-columns:1fr}}
@media (max-width:480px){.xz-hn{width:34%;padding:8px 6px}.xz-hn span{display:none}}
/* nguyên tắc */
.xz-rule{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.xz-rule>div{position:relative;display:grid;gap:10px;align-content:start;padding:22px;border-radius:22px;background:#fff;border:1px solid var(--line);opacity:0;transform:translateY(14px);transition:.6s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--d)*.1s)}
.xz-rule>div.in{opacity:1;transform:none}
.xz-rule em{position:absolute;right:18px;top:14px;font-style:normal;font-size:40px;font-weight:800;color:#efe5cf;line-height:1}
.xz-rule b{font-size:17px}.xz-rule p{margin:0;font-size:14px;color:var(--mut)}
@media (max-width:900px){.xz-rule{grid-template-columns:1fr 1fr}}@media (max-width:560px){.xz-rule{grid-template-columns:1fr}}
/* bắt đầu */
.xz-steps{position:relative;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.xz-steps .ln{position:absolute;left:28px;right:28px;top:27px;height:3px;background:#efe5cf;border-radius:3px;overflow:hidden}
.xz-steps .ln:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#c2a056,#e8cf95);transform:scaleX(0);transform-origin:left;transition:transform 1.8s cubic-bezier(.2,.8,.2,1) .2s}
.xz-steps.in .ln:after{transform:none}
.xz-steps li{position:relative;display:grid;gap:8px;align-content:start}
.xz-steps li>i{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#fff;border:2px solid #efe5cf;font-style:normal;font-size:20px;font-weight:800;color:#b8b1a2;transition:.4s;transition-delay:calc(.3s + var(--d)*.4s)}
.xz-steps.in li>i{background:var(--ink);color:var(--g2);border-color:var(--g)}
.xz-steps h3{margin:6px 0 0;font-size:17px}.xz-steps p{margin:0;font-size:14px;color:var(--mut)}
.xz-who{display:flex;flex-wrap:wrap;gap:8px;margin-top:36px}.xz-who span{padding:8px 14px;border-radius:999px;background:var(--cr);border:1px solid var(--line);font-size:13.5px;font-weight:600}
@media (max-width:860px){.xz-steps{grid-template-columns:1fr 1fr}.xz-steps .ln{display:none}}@media (max-width:480px){.xz-steps{grid-template-columns:1fr}}
/* hỏi đáp, liên hệ */
.xz-qg{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:32px;align-items:start}.xz-qg .xz-h{margin:0}
.xz-faq{display:grid;gap:10px}.xz-faq details{background:#fff;border:1px solid var(--line);border-radius:16px;padding:0 18px}
.xz-faq summary{cursor:pointer;list-style:none;padding:16px 28px 16px 0;font-weight:700;font-size:15.5px;position:relative}.xz-faq summary::-webkit-details-marker{display:none}
.xz-faq summary:after{content:"+";position:absolute;right:0;top:12px;font-size:22px;color:var(--g)}.xz-faq details[open] summary:after{content:"–"}
.xz-faq p{margin:0 0 16px;font-size:14.5px;color:var(--mut)}
@media (max-width:860px){.xz-qg{grid-template-columns:1fr}}
.xz-end{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:28px;align-items:center;padding:40px;border-radius:30px;background:linear-gradient(110deg,#e8cf95,#c2a056);color:#151310;position:relative;overflow:hidden}
.xz-end:after{content:"";position:absolute;right:-90px;top:-90px;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.4),transparent 70%)}
.xz-end .xz-k{color:#5a4410}.xz-end h2{margin:8px 0 10px;font-size:clamp(28px,4vw,44px);line-height:1.05;font-weight:800;text-transform:uppercase}.xz-end h2 em{font-style:normal;color:#fff;text-shadow:0 1px 0 rgba(0,0,0,.15)}.xz-end p{margin:0;font-size:16px;max-width:52ch}
.xz-ct{display:grid;gap:10px;position:relative;z-index:1}.xz-ct a{display:flex;flex-direction:column;padding:12px 18px;border-radius:16px;background:#151310;color:#f4efe3!important;font-weight:700;font-size:15px;min-height:44px}.xz-ct small{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--g2)}
@media (max-width:860px){.xz-end{grid-template-columns:1fr;padding:26px 20px}}
@media (max-width:560px){.xz-sec{padding-block:60px}.xz-h{margin-bottom:28px}}
@media (prefers-reduced-motion:reduce){.xz *,.xz *:before,.xz *:after{animation:none!important;transition:none!important}.xz .xz-tn,.xz .xz-vr,.xz .xz-st,.xz .xz-win,.xz .xz-lr,.xz .xz-fr,.xz .xz-hn,.xz .xz-rule>div,.xz-tabs span,.xz-chat .u,.xz-chat .m{opacity:1;transform:none}.xz-hn{transform:translate(-50%,-50%)}.xz-split .x{transform:none}.xz-chat .ty,.xz-wh .dt{display:none}}
/* toàn trang nền đen (31/10) */
.xz{background:var(--dk);color:#f4efe3;--line:#ffffff17;--mut:#bdb4a0;--cr:#1d1a15}
.xz-sec,.xz-cream{background:var(--dk);border-top:1px solid #ffffff0d}.xz-sec:nth-of-type(even){background:#100e0b}
.xz-k{color:var(--g2)}.xz-h h2{color:#fff}.xz-h h2 em{color:var(--g2)}.xz-h p{color:var(--dmut)}
.xz-ic{border:1px solid #c2a05655}
.xz-split .ow{background:#0b0a08;border:1px solid #ffffff1f;border-right:0;border-radius:16px 0 0 16px}
.xz-tn{background:var(--dk2);border-color:var(--line)}.xz-tn b{color:#fff}.xz-tn p{color:var(--dmut)}.xz-tn time{color:var(--g2)}.xz-tn:before{background:var(--dk)}
.xz-vr .no{background:var(--dk2);border-color:var(--line);color:var(--dmut)}.xz-vr .no .xz-ic{background:#3a1d16;color:#e8826b;border-color:#e8826b44}
.xz-vr .ok{background:#2a2317;border:1px solid #c2a05666;color:#fff}
.xz-lr{background:var(--dk2);border-color:var(--line)}.xz-lr .who b{color:#fff}.xz-lr .who small{color:var(--dmut)}.xz-cp{color:#d9d1bf}.xz-cp .c{color:#fff}
.xz-strip{background:#0f0d0a;border:1px solid #ffffff12}.xz-strip .pe{background:#1d1a15;color:#f4efe3;border-color:#ffffff24}.xz-strip .rs{background:#1d1a15;color:#6f685a;border-color:#ffffff24}.xz-strip .dc{background:#f4efe3}
@keyframes xzRs{0%,70%{background:#1d1a15;color:#6f685a;border-color:#ffffff24;box-shadow:none}76%,94%{background:linear-gradient(180deg,#e8cf95,#c2a056);color:#151310;border-color:#e8cf95;box-shadow:0 0 16px rgba(194,160,86,.55)}100%{background:#1d1a15;color:#6f685a}}
.xz-chat{background:var(--dk2);border:1px solid var(--line)}
.xz-perm{background:var(--dk2);border-color:var(--line)}.xz-perm .tt{color:#fff}.xz-perm .g span{border-color:var(--line)}.xz-perm .g span:nth-child(-n+3){color:var(--dmut)}.xz-perm .g .n{color:#6f685a}.xz-perm p{color:var(--dmut)}
.xz-hub line{stroke:#c2a05666}.xz-hn{background:var(--dk2);border-color:#c2a05655;box-shadow:0 10px 24px -16px #000}.xz-hn b{color:#fff}.xz-hn span{color:var(--dmut)}
.xz-rule>div{background:var(--dk2);border-color:var(--line)}.xz-rule em{color:#ffffff10}.xz-rule b{color:#fff}.xz-rule p{color:var(--dmut)}
.xz-steps .ln{background:#ffffff14}.xz-steps li>i{background:var(--dk2);border-color:#ffffff20;color:#6f685a}.xz-steps.in li>i{background:linear-gradient(180deg,#f4dc9c,#c2a056);color:#151310;border-color:#f4dc9c}.xz-steps h3{color:#fff}.xz-steps p{color:var(--dmut)}
.xz-who span{background:var(--dk2);border-color:var(--line);color:#d9d1bf}
.xz-faq details{background:var(--dk2);border-color:var(--line)}.xz-faq summary{color:#fff}.xz-faq p{color:var(--dmut)}
/* trước và sau: tranh minh hoạ */
.xz-ba{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.xz-bc{padding:20px;border-radius:24px;background:var(--dk2);border:1px solid var(--line);display:grid;gap:14px;opacity:0;transform:translateY(16px);transition:.7s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--d)*.12s)}
.xz-bc.in{opacity:1;transform:none}
.xz-bc h3{margin:0;display:flex;align-items:center;gap:10px;font-size:19px;color:#fff}.xz-bc h3 em{font-style:normal;font-size:12px;font-weight:800;color:#151310;background:var(--g2);border-radius:999px;padding:3px 9px}
.xz-bc .pn{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr);gap:8px;align-items:stretch}
.xz-bc .be,.xz-bc .af{display:grid;grid-template-rows:auto 150px auto;gap:10px;padding:12px;border-radius:18px}
.xz-bc .be{background:#0f0d0a;border:1px dashed #e8826b55}.xz-bc .af{background:linear-gradient(180deg,#2a2317,#1a1610);border:1px solid #c2a05677}
.xz-bc .lb{justify-self:start;font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:3px 8px;border-radius:6px}.xz-bc .be .lb{background:#3a1d16;color:#e8826b}.xz-bc .af .lb{background:var(--g2);color:#151310}
.xz-bc p{margin:0;font-size:13.5px;line-height:1.45}.xz-bc .be p{color:var(--dmut)}.xz-bc .af p{color:#fff;font-weight:600}
.xz-bc .sw{align-self:center;justify-self:center;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--g2);color:#151310;font-weight:800;animation:xzSw 2s ease-in-out infinite}
@keyframes xzSw{50%{transform:translateX(4px)}}
.xz-bc .il{position:relative;border-radius:12px;overflow:hidden;background:#0a0907}
/* 1 trước: cửa sổ rơi vãi */
.il-scat span{position:absolute;width:74px;padding:16px 6px 6px;border-radius:7px;background:#1d1a15;border:1px solid #ffffff24;font-size:10.5px;font-weight:700;color:#cfc6b2;text-align:center;animation:ilJit 3s ease-in-out infinite;animation-delay:calc(var(--i)*-.6s)}
.il-scat span i{position:absolute;top:6px;width:5px;height:5px;border-radius:50%;background:#ffffff33}.il-scat span i:first-child{left:6px;background:#e8826b}.il-scat span i:nth-child(2){left:14px}
.il-scat span:nth-child(1){left:6%;top:10%;--r:-8deg}.il-scat span:nth-child(2){left:52%;top:6%;--r:6deg}.il-scat span:nth-child(3){left:28%;top:40%;--r:3deg}.il-scat span:nth-child(4){left:62%;top:52%;--r:-5deg}.il-scat span:nth-child(5){left:4%;top:62%;--r:7deg}
@keyframes ilJit{0%,100%{transform:rotate(var(--r)) translate(0,0)}50%{transform:rotate(calc(var(--r)*-1)) translate(3px,-4px)}}
.il-scat b{position:absolute;left:44%;bottom:6%;width:30px;height:30px;border-radius:50%;border:2px dashed #e8826b;color:#e8826b;display:grid;place-items:center;font-size:16px}
/* 1 sau: một bảng */
.il-dash{position:absolute;inset:10px;display:grid;grid-template-rows:auto 1fr auto;gap:6px;padding:8px 10px;border-radius:10px;background:#16130e;border:1px solid #c2a05655}
.il-dash .h{font-size:10.5px;font-weight:800;color:var(--g2);display:flex;align-items:center;gap:5px}.il-dash .h i{width:6px;height:6px;border-radius:50%;background:#2f9e62;box-shadow:0 0 0 3px #2f9e6233}
.il-dash .bars{display:flex;align-items:flex-end;gap:6px;border-bottom:1px solid #ffffff1a}
.il-dash .bars i{flex:1;height:var(--h);border-radius:4px 4px 0 0;background:linear-gradient(180deg,#f4dc9c,#c2a056);transform:scaleY(0);transform-origin:bottom;transition:transform .8s cubic-bezier(.3,1.3,.5,1);transition-delay:calc(.3s + var(--i)*.08s)}
.xz-bc.in .il-dash .bars i{transform:none}
.il-dash .sr{display:flex;gap:4px}.il-dash .sr em{font-style:normal;font-size:9.5px;padding:1px 6px;border-radius:999px;border:1px solid #c2a05666;color:#d9d1bf}
/* 2: điện thoại */
.il-ph{position:absolute;inset:6px 12%;display:flex;flex-direction:column;gap:4px;padding:6px 8px;border-radius:14px;background:#16130e;border:1.5px solid #ffffff24}
.il-ph time{align-self:center;font-size:9.5px;font-weight:700;color:#8f8775}
.il-ph p{margin:0;max-width:92%;padding:5px 8px;border-radius:10px;font-size:10.5px!important;line-height:1.35;font-weight:500!important}
.il-ph .cu{align-self:flex-start;background:#ffffff14;color:#f4efe3!important}
.il-ph .late{margin-top:auto;align-self:center;background:transparent;color:#e8826b!important;text-decoration:line-through;text-decoration-color:#e8826b88;text-align:center}
.il-ph .ty{display:flex;gap:3px;align-self:flex-end;background:#c2a05633}.il-ph .ty i{width:5px;height:5px;border-radius:50%;background:var(--g2);animation:xzTy 1s infinite}.il-ph .ty i:nth-child(2){animation-delay:.15s}.il-ph .ty i:nth-child(3){animation-delay:.3s}
.il-ph .re{align-self:flex-end;background:linear-gradient(180deg,#e8cf95,#c2a056);color:#151310!important;font-weight:700!important;opacity:0;transform:translateY(6px)}
.xz-bc.in .il-ph .ty{animation:ilHide 6s infinite}.xz-bc.in .il-ph .re{animation:ilShow 6s infinite}
@keyframes ilHide{0%,30%{opacity:1;max-height:20px}36%,100%{opacity:0;max-height:0;padding:0}}
@keyframes ilShow{0%,34%{opacity:0;transform:translateY(6px)}42%,92%{opacity:1;transform:none}100%{opacity:0}}
/* 3: lịch */
.il-cal{position:absolute;inset:12px;display:grid;grid-template-columns:repeat(7,1fr);gap:5px;align-content:center}
.il-cal i{aspect-ratio:1;border-radius:6px;border:1px dashed #ffffff26}
.il-cal i.x{border:1px solid #e8826b88;background:repeating-linear-gradient(135deg,#e8826b22 0 4px,transparent 4px 8px)}
.il-cal .vid{position:absolute;right:0;bottom:-2px;font-size:10px;font-weight:700;color:#e8826b;background:#3a1d16;padding:3px 8px;border-radius:6px;transform:rotate(-4deg)}
.il-cal.ok i{position:relative;border:1px solid #c2a05644;background:#1d1a15}
.il-cal.ok i:after{content:"";position:absolute;inset:28%;border-radius:50%;background:var(--g2);transform:scale(0);transition:transform .4s cubic-bezier(.3,1.5,.5,1);transition-delay:calc(.3s + var(--i)*.09s)}
.il-cal.ok i.v:after{border-radius:2px;inset:30% 26%;background:none;border-left:9px solid var(--g2);border-top:6px solid transparent;border-bottom:6px solid transparent;width:0;height:0}
.xz-bc.in .il-cal.ok i:after{transform:none}
/* 4: thẻ giá */
.il-tag span{position:absolute;top:50%;display:grid;padding:7px 10px 7px 16px;border-radius:6px 14px 14px 6px;background:#1d1a15;border:1px solid #e8826b88;color:#f4efe3;font-weight:800;font-size:15px;transform:translateY(-50%) rotate(var(--r));animation:ilJit 3.4s ease-in-out infinite;animation-delay:calc(var(--i)*-.8s)}
.il-tag span:before{content:"";position:absolute;left:6px;top:50%;width:5px;height:5px;margin-top:-2.5px;border-radius:50%;background:#e8826b}
.il-tag span small{font-size:9.5px;font-weight:600;color:var(--dmut)}
.il-tag span:nth-child(1){left:5%}.il-tag span:nth-child(2){left:36%;top:38%}.il-tag span:nth-child(3){left:67%;top:62%}
.il-hub svg{position:absolute;inset:0;width:100%;height:100%}.il-hub path{fill:none;stroke:var(--g);stroke-width:2;stroke-dasharray:4 5;vector-effect:non-scaling-stroke;animation:ilFlow 1s linear infinite}
@keyframes ilFlow{to{stroke-dashoffset:-9}}
.il-hub b{position:absolute;z-index:1;left:50%;top:10px;transform:translateX(-50%);display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:var(--g2);color:#151310;font-size:11.5px;white-space:nowrap}.il-hub b em{font-style:normal;background:#151310;color:var(--g2);border-radius:999px;padding:1px 7px}
.il-hub span{position:absolute;z-index:1;bottom:10px;transform:translateX(-50%);display:grid;justify-items:center;padding:4px 8px;border-radius:8px;background:#16130e;border:1px solid #c2a05699;font-weight:800;font-size:12.5px;color:var(--g3);opacity:0;transition:.5s;transition-delay:calc(.4s + var(--i)*.15s)}
.il-hub span small{font-size:9px;font-weight:600;color:var(--dmut)}
.il-hub span:nth-of-type(1){left:16.7%}.il-hub span:nth-of-type(2){left:50%}.il-hub span:nth-of-type(3){left:83.3%}
.xz-bc.in .il-hub span{opacity:1}
@media (max-width:980px){.xz-ba{grid-template-columns:1fr}}
@media (max-width:520px){.xz-bc{padding:14px}.xz-bc .pn{grid-template-columns:1fr}.xz-bc .sw{transform:rotate(90deg);animation:none}.il-ph{inset:8px 22%}}
@media (prefers-reduced-motion:reduce){.xz-bc{opacity:1;transform:none}.il-dash .bars i,.il-cal.ok i:after{transform:none}.il-hub span,.il-ph .re{opacity:1;transform:none}.il-ph .ty{display:none}}
.xz-end h2 .nw{white-space:nowrap}
/* nguyên tắc: lưới bento có minh hoạ */
.xz-rule{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.xz-ru{position:relative;overflow:hidden;display:grid;grid-template-rows:150px auto;border-radius:24px;background:var(--dk2);border:1px solid var(--line);opacity:0;transform:translateY(16px);transition:.7s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--d)*.1s)}
.xz-ru.in{opacity:1;transform:none}
.xz-ru:hover{border-color:#c2a05666}
.xz-ru.w2{grid-column:span 2}.xz-ru.w3{grid-column:1/-1;grid-template-rows:none;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}
.xz-ru .ril{position:relative;margin:12px 12px 0;border-radius:16px;overflow:hidden;background:radial-gradient(120% 120% at 50% 0%,#2a2317,#0f0d0a 70%)}
.xz-ru.w3 .ril{margin:12px 0 12px 12px;min-height:170px}
.xz-ru .rtx{position:relative;display:grid;gap:6px;align-content:start;padding:16px 20px 20px}
.xz-ru .rtx em{position:absolute;right:18px;top:10px;font-style:normal;font-size:34px;font-weight:800;line-height:1;color:transparent;-webkit-text-stroke:1.2px #c2a05666}
.xz-ru .rtx b{font-size:18px;color:#fff;padding-right:52px}.xz-ru .rtx p{margin:0;font-size:14px;color:var(--dmut);line-height:1.5}
.xz-ru.w3 .rtx{align-content:center;padding:24px 28px}.xz-ru.w3 .rtx b{font-size:22px}
/* 01 một nguồn */
.r-hub svg{position:absolute;inset:0;width:100%;height:100%}.r-hub path{fill:none;stroke:var(--g);stroke-width:2;stroke-dasharray:4 6;vector-effect:non-scaling-stroke;animation:ilFlow .9s linear infinite}
.r-hub b{position:absolute;z-index:1;left:50%;top:50%;transform:translate(-50%,-50%);padding:12px 18px;border-radius:999px;background:linear-gradient(180deg,#f4dc9c,#c2a056);color:#151310;font-size:14px;box-shadow:0 0 0 8px rgba(227,192,111,.12),0 0 30px rgba(227,192,111,.45)}
.r-hub span{position:absolute;z-index:1;transform:translate(-50%,-50%);padding:6px 12px;border-radius:10px;background:#16130e;border:1px solid #c2a05699;color:var(--g3);font-size:12.5px;font-weight:700;white-space:nowrap;animation:rPing 4s infinite;animation-delay:calc(var(--i)*1s)}
.r-hub span:nth-of-type(1){left:13%;top:19%}.r-hub span:nth-of-type(2){left:13%;top:81%}.r-hub span:nth-of-type(3){left:87%;top:19%}.r-hub span:nth-of-type(4){left:87%;top:81%}
@keyframes rPing{0%,18%{border-color:#f4dc9c;box-shadow:0 0 16px rgba(227,192,111,.5)}30%,100%{border-color:#c2a05699;box-shadow:none}}
/* 02 người duyệt */
.r-st{position:absolute;left:14px;right:14px;top:50%;transform:translateY(-50%)}
/* 03 số thật */
.r-num .bars{position:absolute;left:18px;right:18px;bottom:16px;top:40px;display:flex;align-items:flex-end;gap:8px;border-bottom:1px solid #ffffff1f}
.r-num .bars i{flex:1;height:var(--h);border-radius:5px 5px 0 0;background:linear-gradient(180deg,#f4dc9c,#c2a056);transform:scaleY(0);transform-origin:bottom;transition:transform .8s cubic-bezier(.3,1.3,.5,1);transition-delay:calc(.2s + var(--i)*.08s)}
.r-num .bars i:last-child{background:repeating-linear-gradient(135deg,#ffffff1a 0 5px,transparent 5px 10px);border:1px dashed #ffffff40;border-bottom:0}
.xz-ru.in .r-num .bars i{transform:none}
.r-num .tip{position:absolute;left:18px;top:12px;font-size:11px;font-weight:700;color:#151310;background:var(--g2);border-radius:6px;padding:3px 8px;animation:rBob 3s ease-in-out infinite}
.r-num .nd{position:absolute;right:16px;top:12px;font-size:11px;font-weight:700;color:var(--dmut);border:1px dashed #ffffff40;border-radius:6px;padding:2px 8px}
@keyframes rBob{50%{transform:translateY(-3px)}}
/* 04 đúng mực */
.r-copy{position:absolute;inset:0;display:grid;place-content:center;gap:10px;padding:16px;text-align:center}
.r-copy p{margin:0;font-size:15px;line-height:1.6;color:#f4efe3}
.r-copy s{display:inline-block;color:#e8826b;text-decoration:none;position:relative;margin:0 4px}
.r-copy s:after{content:"";position:absolute;left:0;right:0;top:55%;height:2px;background:#e8826b;transform:scaleX(0);transform-origin:left;animation:rStrike 5s infinite}
.r-copy ins{display:inline-block;text-decoration:none;color:#151310;background:var(--g2);border-radius:6px;padding:0 6px;opacity:0;transform:translateY(6px);animation:rIns 5s infinite}
@keyframes rStrike{0%,15%{transform:scaleX(0)}30%,90%{transform:scaleX(1)}100%{transform:scaleX(0)}}
@keyframes rIns{0%,32%{opacity:0;transform:translateY(6px)}42%,90%{opacity:1;transform:none}100%{opacity:0}}
.r-copy>span{justify-self:center;font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--g2);border:1px solid #c2a05666;border-radius:999px;padding:3px 10px}
/* 05 đúng người */
.r-role{position:absolute;inset:14px 16px;display:grid;gap:8px;align-content:center}
.r-role>div{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;animation:rRole 6s infinite;animation-delay:calc(var(--i)*2s)}
.r-role .who{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;color:#f4efe3;width:96px}.r-role .who svg{width:16px;height:16px;color:var(--g2)}
.r-role i{height:2px;background:repeating-linear-gradient(90deg,#c2a05688 0 5px,transparent 5px 9px)}
.r-role .scr{width:34px;height:28px;border-radius:7px;border:1.5px solid #c2a05688;display:grid;place-items:center;color:var(--g2)}.r-role .scr svg{width:16px;height:16px}
@keyframes rRole{0%,28%{opacity:1}36%,100%{opacity:.4}}
.r-role>div{opacity:.4}
/* 06 dữ liệu */
.r-safe{position:absolute;inset:16px;display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto 1fr;gap:12px 16px}
.r-safe .lk{grid-row:1/3;width:92px;display:grid;justify-items:center;align-content:center;gap:8px;border-radius:18px;background:#16130e;border:1.5px solid var(--g);color:var(--g2);position:relative}
.r-safe .lk:after{content:"";position:absolute;inset:-6px;border-radius:22px;border:1.5px solid #c2a05666;animation:xzPulse 2.6s ease-out infinite}
.r-safe .lk svg{width:34px;height:34px}.r-safe .lk em{font-style:normal;font-size:11px;font-weight:700;text-align:center;color:#d9d1bf}
.r-safe .key{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:10px;background:#16130e;border:1px solid #ffffff1a}.r-safe .key small{font-size:11px;color:var(--dmut)}.r-safe .key b{color:var(--g2);letter-spacing:2px}
.r-safe .lg{list-style:none;margin:0;padding:0;display:grid;gap:4px;align-content:start}
.r-safe .lg li{font-size:12px;color:#d9d1bf;padding:4px 10px;border-left:2px solid var(--g);background:#ffffff06;border-radius:0 6px 6px 0;opacity:0;transform:translateX(-8px);transition:.5s;transition-delay:calc(.3s + var(--i)*.2s)}
.xz-ru.in .r-safe .lg li{opacity:1;transform:none}
@media (max-width:900px){.xz-rule{grid-template-columns:1fr 1fr}.xz-ru.w2{grid-column:1/-1}.xz-ru.w3{grid-template-columns:1fr;grid-template-rows:auto auto}.xz-ru.w3 .ril{margin:12px 12px 0;min-height:190px}}
@media (max-width:600px){.xz-rule{grid-template-columns:1fr}.xz-ru.w2,.xz-ru.w3{grid-column:auto}.r-hub span{font-size:11px;padding:5px 8px}.r-safe{grid-template-columns:1fr;grid-template-rows:auto auto auto}.r-safe .lk{grid-row:auto;width:auto;grid-auto-flow:column;padding:8px}.xz-ru.w3 .ril{min-height:250px}}
@media (prefers-reduced-motion:reduce){.xz-ru{opacity:1;transform:none}.r-num .bars i,.r-safe .lg li{transform:none;opacity:1}.r-copy ins{opacity:1;transform:none}.r-copy s:after{transform:none}.r-role>div{opacity:1}}
.r-safe .lk svg{position:static;display:block;width:34px;height:34px}.r-safe .lg li{background:#ffffff08}
.xz-ru.w3 .ril{min-height:200px}
.xz-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;max-width:560px}.xz-facts span{flex-direction:column;align-items:flex-start;gap:4px;line-height:1.3}
@media (max-width:480px){.xz-facts span{font-size:12px;padding:9px 10px}.xz-facts b{font-size:22px}}
/* bản đồ: con đường từ trên xuống, mỗi chặng là một trạm máy */
.xz-road{position:relative;display:grid;gap:26px;padding:10px 0 20px}
.xz-road:before{content:"";position:absolute;left:50%;top:0;bottom:56px;width:18px;margin-left:-9px;border-radius:999px;background:#0b0a08;border:1.5px solid #c2a05666;box-shadow:inset 0 2px 8px #000}
.xz-road:after{content:"";position:absolute;left:50%;top:4px;bottom:60px;width:8px;margin-left:-4px;border-radius:999px;background:repeating-linear-gradient(180deg,#c2a05680 0 12px,transparent 12px 24px);animation:rdBelt 1.2s linear infinite}
@keyframes rdBelt{to{background-position:0 24px}}
.rd-r{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) 96px minmax(0,1fr);align-items:center;gap:20px}
.rd-n{position:relative;justify-self:center;width:76px;height:76px;border-radius:24px;display:grid;place-items:center;background:#1d1a15;border:2px solid #c2a05699;color:var(--g2);transition:.5s}
.rd-n span svg{width:32px;height:32px;display:block}
.rd-n em{position:absolute;right:-9px;top:-9px;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--g2);color:#151310;font-style:normal;font-weight:800;font-size:13px;border:3px solid var(--dk)}
.rd-r.in .rd-n{background:linear-gradient(180deg,#f4dc9c,#c2a056);color:#151310;border-color:#f4dc9c;box-shadow:0 0 0 8px rgba(227,192,111,.12),0 0 34px rgba(227,192,111,.45)}
.rd-r.in .rd-n:after{content:"";position:absolute;inset:-8px;border-radius:30px;border:1.5px solid var(--g2);animation:xzPulse 2.6s ease-out infinite}
.rd-r.sp .rd-n{border-radius:50%}.rd-r.sp.in .rd-n:after{border-radius:50%}
.rd-c{position:relative;display:grid;gap:10px;padding:20px;border-radius:22px;background:linear-gradient(180deg,#221e17,#191611);border:1px solid #ffffff17;opacity:0;transition:.7s cubic-bezier(.2,.8,.2,1)}
.rd-r.lt .rd-c{transform:translateX(-24px)}.rd-r.rt .rd-c{transform:translateX(24px)}
.rd-r.in .rd-c{opacity:1;transform:none}
.rd-c:before{content:"";position:absolute;top:50%;width:22px;height:2px;background:repeating-linear-gradient(90deg,var(--g) 0 5px,transparent 5px 9px)}
.rd-r.lt .rd-c:before{right:-22px}.rd-r.rt .rd-c:before{left:-22px}
.rd-h i{display:block;font-style:normal;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--g2)}
.rd-h h3{margin:2px 0 0;font-size:22px;color:#fff;line-height:1.15}.rd-h small{font-size:13.5px;color:var(--dmut)}
.rd-p{display:grid;gap:6px;padding:10px 12px;border-radius:12px;background:#0f0d0a;border:1px solid #ffffff12;border-left:3px solid var(--g)}
.rd-p b{font-size:14.5px;color:#fff}.rd-p span{display:flex;flex-wrap:wrap;gap:5px}
.rd-p em{font-style:normal;font-size:12px;padding:3px 9px;border-radius:999px;background:#c2a0561a;border:1px solid #c2a05644;color:#e8dcc0}
.rd-a{display:grid;place-items:center;opacity:0;transform:scale(.92);transition:.7s cubic-bezier(.2,.8,.2,1) .15s}
.rd-r.in .rd-a{opacity:1;transform:none}
.rd-a svg{width:100%;max-width:300px;height:auto;overflow:visible}
.rd-a .sk{fill:none;stroke:#c2a056;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.rd-a .fl{fill:#c2a05640;stroke:#e3c06f;stroke-width:2}
.rd-a .ln{stroke:#ffffff30;stroke-width:3;stroke-linecap:round}.rd-a .dk{stroke:#151310;stroke-width:3;stroke-linecap:round;opacity:.6}
/* minh hoạ chuyển động */
.rd-a .ck{fill:none;stroke:#f4dc9c;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1}
.rd-r.in .rd-a .ck{animation:rdCk 4.5s infinite}.rd-a .ck.c1{animation-delay:.6s!important}.rd-a .ck.c2{animation-delay:1.2s!important}
@keyframes rdCk{0%,8%{stroke-dashoffset:1}20%,85%{stroke-dashoffset:0}100%{stroke-dashoffset:1}}
.rd-a .beam{fill:#f4dc9c;filter:drop-shadow(0 0 6px #f4dc9c);animation:rdBeam 2.4s ease-in-out infinite}
@keyframes rdBeam{0%,100%{transform:translateY(0)}50%{transform:translateY(96px)}}
.rd-a .mag{fill:#c2a05622;stroke:#f4dc9c;stroke-width:3;stroke-linecap:round;animation:rdMag 4s ease-in-out infinite}
@keyframes rdMag{0%,100%{transform:translate(70px,62px)}50%{transform:translate(130px,70px)}}
.rd-a .arw{fill:none;stroke:#f4dc9c;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;animation:rdArw 2.6s ease-in infinite}
@keyframes rdArw{0%{transform:translate(60px,-36px);opacity:0}20%{opacity:1}45%,80%{transform:none;opacity:1}100%{opacity:0}}
.rd-a .hit{fill:none;stroke:#f4dc9c;stroke-width:2;transform-origin:96px 70px;animation:rdHit 2.6s ease-out infinite}
@keyframes rdHit{0%,44%{transform:scale(1);opacity:0}48%{opacity:1}80%,100%{transform:scale(3.2);opacity:0}}
.rd-a .film{animation:rdFilm 3.5s linear infinite}.rd-a .fr{fill:#1d1a15;stroke:#c2a056;stroke-width:1.5}.rd-a .pl{fill:#e3c06f}.rd-a .hole{fill:#ffffff26}
@keyframes rdFilm{to{transform:translateX(-58px)}}
.rd-a .w{fill:none;stroke:#f4dc9c;stroke-width:3;stroke-linecap:round;opacity:.2;animation:rdW 1.8s infinite}.rd-a .w1{animation-delay:.3s}.rd-a .w2{animation-delay:.6s}
@keyframes rdW{0%,100%{opacity:.15}40%{opacity:1}}
.rd-a .b1,.rd-a .b2{transform-box:fill-box;transform-origin:left bottom;animation:rdPop 4s infinite}.rd-a .b2{transform-origin:right bottom;animation-delay:1.2s}
@keyframes rdPop{0%,6%{transform:scale(.4);opacity:0}16%,88%{transform:none;opacity:1}100%{opacity:0}}
.rd-a .lnD{fill:none;stroke:#f4dc9c;stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;animation:rdLine 4s ease-in-out infinite}
@keyframes rdLine{0%{stroke-dashoffset:1}50%,90%{stroke-dashoffset:0}100%{stroke-dashoffset:0;opacity:0}}
.rd-a .dt{fill:#f4dc9c;filter:drop-shadow(0 0 6px #f4dc9c);animation:rdDot 4s infinite}@keyframes rdDot{0%,45%{opacity:0}55%,90%{opacity:1}100%{opacity:0}}
.rd-end{position:relative;z-index:1;display:flex;justify-content:center}
.rd-end span{padding:10px 18px;border-radius:999px;background:var(--g2);color:#151310;font-weight:800;font-size:14px;box-shadow:0 0 0 6px rgba(227,192,111,.12)}
@media (max-width:900px){.xz-road:before{left:38px}.xz-road:after{left:38px}
  .rd-r,.rd-r.rt{grid-template-columns:76px minmax(0,1fr);gap:16px;align-items:start}
  .rd-r .rd-n{grid-column:1;grid-row:1}.rd-r .rd-c{grid-column:2;grid-row:1}.rd-r .rd-a{grid-column:2;grid-row:2;justify-self:start;max-width:240px}
  .rd-r.lt .rd-c,.rd-r.rt .rd-c{transform:translateX(16px)}.rd-r.in .rd-c{transform:none}.rd-c:before{left:-16px!important;right:auto!important;width:16px;top:38px}
  .rd-end{justify-content:flex-start}}
@media (max-width:480px){.rd-n{width:64px;height:64px;border-radius:20px}.rd-r,.rd-r.rt{grid-template-columns:64px minmax(0,1fr);gap:12px}.xz-road:before{left:32px}.xz-road:after{left:32px}.rd-c{padding:14px}.rd-h h3{font-size:19px}}
@media (prefers-reduced-motion:reduce){.rd-c,.rd-a{opacity:1;transform:none}.xz-road *{animation:none!important}.rd-a .ck,.rd-a .lnD{stroke-dashoffset:0}}
.rd-a svg svg{overflow:hidden}
.br-act{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0 10px}
.br-tone{display:grid;gap:6px;font-size:14px}.br-tone p{margin:0}.br-tone .btn{justify-self:start}
/* nhiều nhãn */
.bsw{position:relative;margin:8px 12px 4px}
.bsw-b{width:100%;display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;border:1px solid var(--line,#e6dcc6);background:var(--surface,#fff);cursor:pointer;text-align:left;font-family:inherit;color:inherit}
.bsw-b i,.bsw-o i,.brand-bar i{flex:none;width:10px;height:10px;border-radius:50%}
.bsw-b span{display:grid;line-height:1.2;min-width:0}.bsw-b small{font-size:10.5px;opacity:.6;text-transform:uppercase;letter-spacing:.08em}.bsw-b b{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bsw-b em{margin-left:auto;font-style:normal;opacity:.6}
.bsw-m{position:absolute;z-index:60;left:0;right:0;top:calc(100% + 6px);padding:6px;border-radius:14px;background:var(--surface,#fff);border:1px solid var(--line,#e6dcc6);box-shadow:0 18px 40px -18px rgba(0,0,0,.45);display:grid;gap:2px}
.bsw-o{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:10px;border:0;background:none;cursor:pointer;font:inherit;color:inherit;text-align:left;min-height:40px}
.bsw-o:hover{background:#c2a0561a}.bsw-o.on{background:#c2a05626;font-weight:700}.bsw-o small{margin-left:auto;font-size:11px;opacity:.6}.bsw-o[data-down]{opacity:.55}
.bsw-m p{margin:4px 8px 4px;font-size:11.5px;opacity:.6;line-height:1.4}
.brand-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:10px 16px 0;padding:10px 14px;border-radius:12px;border:1px solid var(--brand-c,#e3c06f);background:color-mix(in srgb,var(--brand-c,#e3c06f) 12%,transparent);font-size:13.5px}
.brand-bar a.btn{margin-left:auto}
body.in-brand .top .brand .mark{box-shadow:0 0 0 3px var(--brand-c)}
.bsw-m{right:auto;width:max-content;min-width:100%;max-width:min(360px,calc(100vw - 24px))}
.bsw-o{font-size:14px;gap:10px}.bsw-o span,.bsw-o small{white-space:nowrap}.bsw-o small{padding-left:14px}
.bsw-m p{white-space:normal;max-width:300px}
.bsw-m{position:fixed;right:auto;width:max-content;max-width:min(340px,calc(100vw - 16px))}
.bsw-m p{max-width:none;white-space:normal}
.brs{position:relative}.brs-x{position:absolute;right:6px;top:6px;width:24px;height:24px;border-radius:50%;border:0;background:transparent;color:inherit;opacity:.5;cursor:pointer;font-size:16px;line-height:1}.brs-x:hover{opacity:1;background:#0000001a}
.brs.brs-add{flex-direction:column;align-items:stretch;gap:6px;cursor:default;border-style:dashed;border-color:var(--line);background:transparent}
.brs-add input{width:100%;padding:7px 10px;border-radius:8px;border:1px solid var(--line);background:var(--surface);color:inherit;font:inherit;font-size:13px}.brs-add .btn{align-self:flex-start}
.bl-l{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 10px}.bl-l:empty{display:none}
.bl-i{display:inline-flex;align-items:center;gap:8px;padding:6px 6px 6px 12px;border-radius:999px;border:1px solid var(--line);font-size:13px;max-width:100%}.bl-i a{opacity:.7;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:260px}
.bl-i button{border:0;background:transparent;color:inherit;opacity:.5;cursor:pointer;font-size:15px;width:22px;height:22px;border-radius:50%}.bl-i button:hover{opacity:1;background:#0000001a}
.bl-add{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.bl-add input{flex:1 1 220px;padding:8px 10px;border-radius:8px;border:1px solid var(--line);background:var(--surface);color:inherit;font:inherit;font-size:13px}
.su-top{display:flex;align-items:center;gap:18px}.su-top h2{margin:0}
.su-ring{flex:none;width:76px;height:76px;border-radius:50%;display:grid;place-content:center;text-align:center;background:radial-gradient(closest-side,var(--surface,#fff) 78%,transparent 80% 100%),conic-gradient(var(--gold,#c2a056) calc(var(--p)*1%),var(--line,#e6dcc6) 0)}
.su-ring b{font-size:18px;line-height:1}.su-ring small{font-size:10.5px;opacity:.6}.su-ring.sm{width:52px;height:52px}.su-ring.sm b{font-size:14px}
.su-l{list-style:none;margin:14px 0;padding:0;display:grid;gap:10px}
.su-s{display:grid;grid-template-columns:40px minmax(0,1fr);gap:14px;padding:16px;border-radius:16px;border:1px solid var(--line);background:var(--surface)}
.su-s>i{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-weight:800;border:2px solid var(--line)}
.su-s.ok>i{background:var(--gold,#c2a056);border-color:var(--gold,#c2a056);color:#151310}
.su-c b{font-size:16px}.su-c p{margin:4px 0 10px;font-size:13.5px;opacity:.75}
.su-f{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;align-items:end}.su-f label{display:grid;gap:4px;font-size:12px;opacity:.9}
.su-f input,.su-f select{padding:8px 10px;border-radius:8px;border:1px solid var(--line);background:var(--surface);color:inherit;font:inherit;font-size:14px}.su-f .btn{justify-self:start}
.su-a{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.su-nudge{display:flex;align-items:center;gap:14px;margin:0 0 16px;padding:14px 16px;border-radius:16px;border:1px solid var(--brand-c,#c2a056);background:color-mix(in srgb,var(--brand-c,#c2a056) 10%,transparent);text-decoration:none;color:inherit}
.su-nudge span:nth-child(2){display:grid;gap:2px;min-width:0}.su-nudge small{opacity:.7;font-size:12.5px}.su-nudge em{margin-left:auto;font-style:normal;font-weight:700;white-space:nowrap}

/* r323: nhãn riêng (đăng nhập mang tên nhãn), địa chỉ đăng nhập, quyền hỗ trợ */
.wl-logo{width:72px;height:72px;margin:0 auto 10px;border-radius:20px;display:grid;place-items:center;font:600 34px/1 var(--serif,Georgia,serif);color:#111;background:var(--wl,#e3c06f)}
.wl-name{text-align:center;font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--wl,#e3c06f);margin-bottom:6px}
.dm-l{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:8px}
.dm-l li{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:10px 12px;border:1px solid var(--line,#2a2a2a);border-radius:10px}
.dm-l li>div{min-width:0}.dm-l a{word-break:break-all;margin-right:8px}
.dm-ok{color:#7ec8a9;font-size:13px}.dm-w{color:#e3c06f;font-size:13px}.dm-no{color:#9a948a;font-size:13px}
.dm-add{display:flex;gap:8px;flex-wrap:wrap}.dm-add input{flex:1;min-width:200px}
.sup-hand{margin-top:10px;padding:12px;border:1px dashed var(--line,#2a2a2a);border-radius:10px}
.sup-rq{padding:10px 12px;border-left:3px solid #e3c06f;background:rgba(227,192,111,.06);margin:8px 0}.sup-rq p{margin:4px 0 0}
.sup-acts{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:10px 0}
.sup-log{margin-top:8px}.sup-log summary{cursor:pointer;font-size:13px;color:var(--muted,#9a948a)}
.sup-gate{max-width:620px;margin:40px auto;text-align:left}.sup-lock{font-size:36px;margin-bottom:6px}
/* r325: nút Làm mới rõ chữ */
.rc-ref{width:auto;height:auto;display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:600;border-color:var(--gold);color:var(--gold);animation:none}
.rc-ref i{font-style:normal;display:inline-block}.rc-ref small{font-weight:400;opacity:.7;font-size:11px}
.rc-ref.busy{animation:none}.rc-ref.busy i{animation:rcspin 1s linear infinite}
.rc-plat i.d-web{background:#e3c06f22;color:#e3c06f;border-color:#e3c06f66}
/* r331: nhắc lại khách đã biết mình */
.rm-box .rm-h{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:flex-start}.rm-box .rm-h>div:first-child{flex:1;min-width:260px}.rm-box h3{margin:0 0 4px}
.rm-l{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;margin:12px 0 6px}
.rm-a{padding:10px 12px;border:1px solid var(--line);border-radius:10px;display:grid;gap:4px}.rm-a b{font-size:13px}.rm-a small{font-size:12px;color:var(--muted)}
.rm-a.ok{border-color:#7ec8a955}.rm-a.ex{border-style:dashed}.rm-a .err{color:var(--bad)}
/* r333: sao lưu dữ liệu */
.bk-l{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:4px;max-height:220px;overflow:auto}.bk-l li{display:flex;justify-content:space-between;gap:12px;font-size:12px}
/* r333: chữ ký Mè Xửng trên tiêu đề trang giới thiệu */
.xz-hero h1 .xz-sig{display:block;width:max-content;max-width:100%;padding:.04em .16em .14em .06em;margin:0 0 .02em -.06em;line-height:1.15;font-family:var(--display);font-style:italic;font-weight:700;text-transform:none;letter-spacing:.005em;font-size:.78em;color:var(--g2);background:linear-gradient(100deg,#c99a45 0%,#f3dc9b 22%,#fff6d8 30%,#f3dc9b 38%,#d9ad55 60%,#f6e6b8 100%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:xzSigIn 1.1s cubic-bezier(.2,.8,.2,1) both,xzSigShine 5.5s ease-in-out 1.2s infinite}
@keyframes xzSigIn{from{opacity:0;transform:translateY(.25em);filter:blur(6px);letter-spacing:.12em}to{opacity:1;transform:none;filter:blur(0);letter-spacing:.005em}}
@keyframes xzSigShine{0%,100%{background-position:100% 0}50%{background-position:0 0}}
/* r339: sơ đồ kết nối: biểu tượng + tên, dịch vụ là từng chip (không còn chữ mồ côi) */
.xz-hub{max-width:580px}
.xz-hub .xz-hn{width:34%;padding:12px 10px 13px;gap:9px;border-radius:18px;background:linear-gradient(180deg,#221e17,#17140f);border-color:#c2a0564d;box-shadow:0 14px 30px -18px #000,inset 0 1px 0 #ffffff0d}
.xz-hn .hn-t{display:flex;align-items:center;justify-content:center;gap:8px}.xz-hn .hn-t b{font-size:15px;color:#fff;letter-spacing:.01em}
.xz-ic.sm{width:26px;height:26px;border-radius:8px;background:#c2a0561f;color:var(--g2)}.xz-ic.sm svg{width:15px;height:15px}
.xz-hn .hn-c{display:flex;flex-wrap:wrap;justify-content:center;gap:4px}
.xz-hn .hn-c em{font-style:normal;white-space:nowrap;font-size:10.5px;line-height:1;padding:5px 7px;border-radius:999px;background:#ffffff0a;border:1px solid #ffffff14;color:#d9d1bf}
.xz-hub .xz-hc{width:28%}
@media (max-width:480px){.xz-hub .xz-hn{width:30%;padding:8px 4px}.xz-hn .hn-c{display:none}.xz-hn .hn-t{flex-direction:column;gap:4px}.xz-hn .hn-t b{font-size:12px}}
.xz-hub .xz-hn .xz-ic svg{position:static;inset:auto;width:15px;height:15px}
/* r341: tem Trước / Có Xưởng: chữ căn giữa trong viền, kiểu tem đóng dấu */
.xz-bc .lb{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:24px;padding:0 11px 0 9px;border-radius:999px;font-size:10px;line-height:1;letter-spacing:.14em;font-weight:700;white-space:nowrap;box-sizing:border-box}
.xz-bc .lb:before{content:"";flex:none;width:14px;height:14px;border-radius:50%;display:grid;place-items:center;font-size:9px;line-height:14px;text-align:center;letter-spacing:0;font-weight:800}
.xz-bc .be .lb{background:#2a1612;color:#f0937d;border:1px solid #e8826b66;box-shadow:0 0 0 3px #2a161299,inset 0 0 0 1px #00000040}
.xz-bc .be .lb:before{content:"✕";background:#e8826b26;color:#f0937d}
.xz-bc .af .lb{background:linear-gradient(180deg,#f3d58e,#d8ae58);color:#1a160f;border:1px solid #fff2c466;box-shadow:0 0 0 3px #c2a05633,0 6px 14px -8px #d8ae58,inset 0 1px 0 #fff7dc}
.xz-bc .af .lb:before{content:"✓";background:#1a160f;color:#f3d58e}
.xz-hero .xz-k{white-space:nowrap}@media (max-width:560px){.xz-hero .xz-k{font-size:clamp(8.5px,2.75vw,12px);letter-spacing:.1em}}
.xz p,.xz-fb span,.xz small,.xz li,.xz-hn span,.xz-tn p{text-wrap:pretty}

.xz-perm .g{grid-template-columns:minmax(0,1fr) max-content max-content;column-gap:10px}.xz-perm .g span:nth-child(-n+3){white-space:nowrap;justify-content:center;font-size:11px;letter-spacing:.05em}.xz-perm .g span:nth-child(1){justify-content:flex-start}
@media (max-width:560px){.xz-perm .g{grid-template-columns:minmax(0,1fr) 64px 78px;column-gap:4px}.xz-perm .g span:nth-child(-n+3){white-space:normal;text-align:center;font-size:9.5px;line-height:1.3}}
.xz-h h2 .xz-mag{font-family:var(--display);font-style:italic;font-weight:700;text-transform:none;letter-spacing:0;white-space:nowrap;font-size:1.04em;color:var(--g2);padding-right:.06em}

/* r346: hành trình khách dạng phễu: mỗi tầng hẹp dần, chữ căn giữa, nhãn chặng thẳng cột bên phải */
@media (min-width:761px){
.xz-fn{width:min(100%,920px);margin:0 auto;gap:6px;justify-items:stretch}
.xz-fr{width:100%;grid-template-columns:minmax(0,1fr) 180px;gap:18px}
.xz-fb{justify-self:center;width:var(--w);min-width:max-content;flex-direction:column;align-items:center;gap:3px;text-align:center;padding:14px 46px;border:0;border-radius:6px;clip-path:polygon(0 0,100% 0,calc(100% - 26px) 100%,26px 100%);background:linear-gradient(180deg,hsl(40 32% calc(22% - var(--d)*2%)),hsl(40 38% calc(15% - var(--d)*1.5%)))}
.xz-fb:after{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,#e3c06f88,transparent)}
.xz-fb b{font-size:18px}.xz-fb span{white-space:nowrap;font-size:13.5px}
.xz-fr em{justify-self:start;position:relative}.xz-fr em:before{content:"";position:absolute;right:100%;top:50%;width:12px;border-top:1px dashed #c2a05666}
}
/* ===== r350: Tổng phổ âm thanh: mỗi phần là một nhịp trên khuông, sóng âm nối các phần ===== */
.xz{--staff:#c2a05624}
/* tiêu đề nhịp: số nhịp lớn nghiêng tạp chí đè lên khuông 5 dòng, một nốt nhạc chạy dọc khuông */
.xz-h{position:relative}
.xz-bar{position:relative;height:74px;margin:0 0 6px;display:flex;align-items:center}
.xz-mn{position:relative;z-index:1;font-family:var(--display);font-style:italic;font-weight:700;font-size:78px;line-height:1;letter-spacing:-.02em;color:transparent;-webkit-text-stroke:1.2px var(--g2);padding-right:18px;background:var(--dk);background-clip:padding-box}
.xz-sec:nth-of-type(even) .xz-mn{background:#100e0b}
.xz-staff{position:absolute;left:0;right:0;top:50%;height:41px;transform:translateY(-50%);background:repeating-linear-gradient(180deg,var(--staff) 0 1px,transparent 1px 10px);mask-image:linear-gradient(90deg,#000 0,#000 70%,transparent)}
.xz-staff b{position:absolute;top:50%;left:var(--p);width:11px;height:8px;margin-top:-4px;border-radius:50%;background:var(--g2);transform:rotate(-20deg);box-shadow:0 0 14px #e3c06f88;animation:xzNote 7s ease-in-out infinite}
.xz-staff b:after{content:"";position:absolute;right:-1px;bottom:3px;width:1.5px;height:24px;background:var(--g2)}
@keyframes xzNote{0%,100%{transform:translate(0,0) rotate(-20deg)}25%{transform:translate(60px,-10px) rotate(-20deg)}50%{transform:translate(120px,5px) rotate(-20deg)}75%{transform:translate(60px,10px) rotate(-20deg)}}
.xz-k .xz-nt{font-style:normal;margin-right:6px;color:var(--g2);display:inline-block;animation:xzBob 2.4s ease-in-out infinite}
@keyframes xzBob{50%{transform:translateY(-3px)}}
.xz-kg .xz-bar,.xz-qg .xz-bar{max-width:520px}
/* sóng âm nối các phần: một dải sóng mảnh chạy ngang ở mép trên mỗi phần */
.xz-sec{position:relative}
.xz-sec:before{content:"";position:absolute;left:0;right:0;top:-1px;height:28px;pointer-events:none;opacity:.55;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='28' viewBox='0 0 240 28'%3E%3Cpath d='M0 14 C 20 2, 40 2, 60 14 S 100 26, 120 14 S 160 2, 180 14 S 220 26, 240 14' fill='none' stroke='%23c2a056' stroke-width='1.2'/%3E%3Cpath d='M0 14 C 30 8, 30 8, 60 14 S 90 20, 120 14 S 150 8, 180 14 S 210 20, 240 14' fill='none' stroke='%23c2a056' stroke-opacity='.45' stroke-width='1'/%3E%3C/svg%3E") repeat-x 0 50%/240px 28px;animation:xzWave 9s linear infinite;mask-image:linear-gradient(90deg,transparent,#000 15%,#000 85%,transparent)}
@keyframes xzWave{to{background-position:240px 50%}}
/* khuông dưới phần mở đầu: sáu chặng là sáu nốt, vạch đọc nhạc chạy qua */
.xz-score{position:relative;margin:56px 0 0;height:150px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:start}
.xz-score-st{position:absolute;left:0;right:0;top:24px;height:49px;background:repeating-linear-gradient(180deg,#c2a05640 0 1px,transparent 1px 12px)}
.xz-score-st i{display:none}
.xz-score-st .ph{position:absolute;top:-10px;bottom:-10px;width:2px;left:0;background:linear-gradient(180deg,transparent,var(--g2),transparent);box-shadow:0 0 18px var(--g2);animation:xzPh 12s linear infinite}
@keyframes xzPh{to{left:100%}}
.xz-note{position:relative;display:grid;justify-items:center;gap:6px;text-decoration:none;color:inherit;padding-top:calc(var(--y)*6px + 12px)}
.xz-note .hd{width:20px;height:14px;border-radius:50%;background:var(--g2);transform:rotate(-20deg);box-shadow:0 0 0 4px #e3c06f1a,0 0 18px #e3c06f66;position:relative;animation:xzHit 12s linear infinite;animation-delay:calc(var(--i)*2s)}
.xz-note .hd:after{content:"";position:absolute;right:0;bottom:6px;width:2px;height:34px;background:var(--g2);transform:rotate(20deg);transform-origin:bottom}
@keyframes xzHit{0%,4%{transform:rotate(-20deg) scale(1.45);box-shadow:0 0 0 10px #e3c06f22,0 0 30px #e3c06f}10%,100%{transform:rotate(-20deg) scale(1)}}
.xz-note b{font-family:var(--display);font-style:italic;font-size:15px;color:var(--g2);margin-top:30px}
.xz-note small{font-size:12px;letter-spacing:.06em;text-transform:uppercase;font-weight:700;color:#e9e1cf;text-align:center;text-wrap:balance;max-width:14ch}
.xz-note:hover small{color:var(--g2)}
@media (max-width:640px){.xz-score{height:auto;grid-template-columns:repeat(3,minmax(0,1fr));row-gap:18px}.xz-score-st{display:none}.xz-note{padding-top:0}.xz-note b{margin-top:6px}.xz-mn{font-size:56px}.xz-bar{height:58px}}
@media (prefers-reduced-motion:reduce){.xz-sec:before,.xz-staff b,.xz-score-st .ph,.xz-note .hd,.xz-k .xz-nt{animation:none!important}}
/* r350b: nốt nằm đúng trên dòng kẻ, tên chặng thẳng hàng */
.xz-note{height:150px;padding-top:0;display:block;text-align:center}
.xz-note .hd{position:absolute;left:50%;top:calc(24px + var(--y)*6px - 6px);width:18px;height:12px;margin-left:-9px;transform:rotate(-18deg);animation-name:xzHit2}
.xz-note .hd:after{right:0;bottom:5px;height:36px;transform:rotate(18deg);transform-origin:bottom right}
@keyframes xzHit2{0%,4%{transform:rotate(-18deg) scale(1.5);box-shadow:0 0 0 10px #e3c06f22,0 0 30px #e3c06f}10%,100%{transform:rotate(-18deg) scale(1)}}
.xz-note b{position:absolute;left:0;right:0;top:86px;margin:0}
.xz-note small{position:absolute;left:50%;transform:translateX(-50%);top:108px;width:100%}
@media (max-width:640px){.xz-note{height:auto;display:grid;justify-items:center;gap:4px}.xz-note .hd{position:relative;left:auto;top:auto;margin:16px 0 0}.xz-note b,.xz-note small{position:static;transform:none}}
.xz-sec{isolation:isolate}.xz-sec:before{z-index:-1;top:-13px}

/* r358 đĩa than sáu chặng, đồng bộ ai.healiverse.vn */
@property --a{syntax:'<number>';inherits:true;initial-value:0}
.xz .hvd{display:grid;grid-template-columns:minmax(0,520px) minmax(0,1fr);gap:64px;align-items:center;margin:44px auto 8px;max-width:1180px;transition:--a .9s cubic-bezier(.6,0,.2,1)}
.xz .hvd-disc{position:relative;width:100%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle closest-side,#0e0c09 0 30%,transparent 30.5%),repeating-radial-gradient(circle,#1d1a14 0 1.5px,#110f0b 1.5px 4px);box-shadow:0 0 0 1px #c9a24f40,0 0 0 10px #c9a24f0d,0 40px 80px -30px #000c,inset 0 0 60px #000a}
.xz .hvd-gr{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,transparent 0 30deg,#ffffff14 55deg,transparent 80deg 210deg,#ffffff0f 235deg,transparent 260deg);animation:hvdSpin 16s linear infinite;pointer-events:none}
@keyframes hvdSpin{to{transform:rotate(360deg)}}
.xz .hvd-arc{position:absolute;inset:-6px;border-radius:50%;background:conic-gradient(from calc(var(--a)*72deg - 36deg),#e3c06f 0 72deg,#c9a24f26 72deg 360deg);-webkit-mask:radial-gradient(circle closest-side,transparent calc(100% - 5px),#000 calc(100% - 4px));mask:radial-gradient(circle closest-side,transparent calc(100% - 5px),#000 calc(100% - 4px));pointer-events:none;filter:drop-shadow(0 0 8px #e3c06f88)}
.xz .hvd-loop{position:absolute;left:calc(50% + 47% * sin(-30deg));top:calc(50% - 47% * cos(-30deg));transform:translate(-50%,-50%);color:#e3c06f;font-size:18px;line-height:1;background:#17140f;padding:2px 4px;border-radius:50%}
.xz button.hvd-s{position:absolute;left:calc(50% + 37% * sin(calc(var(--i)*72deg)));top:calc(50% - 37% * cos(calc(var(--i)*72deg)));transform:translate(-50%,-50%);display:grid;justify-items:center;gap:8px;background:none!important;border:0!important;padding:0!important;margin:0;cursor:pointer;color:#cfc4ad;width:120px;box-shadow:none!important}
.xz .hvd-s i{display:grid!important;place-items:center;width:52px;height:52px;border-radius:50%!important;border:1.5px solid #c9a24f99!important;background:#17140f!important;color:#e3c06f!important;font:italic 700 20px/1 var(--display)!important;transition:.35s;padding:0!important;margin:0!important}
.xz .hvd-s b{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;line-height:1.3;text-align:center;text-wrap:balance;color:inherit;transition:.35s}
.xz .hvd-s:hover i{border-color:#e3c06f!important}
.xz .hvd-s.on i{background:linear-gradient(145deg,#f0d48a,#b8913f)!important;color:#17140f!important;border-color:#f0d48a!important;box-shadow:0 0 0 6px #e3c06f26,0 0 28px #e3c06f99;transform:scale(1.12)}
.xz .hvd-s.on b{color:#f3e7c9}
.xz .hvd-s:focus-visible{outline:2px solid #e3c06f;outline-offset:6px;border-radius:12px}
.xz .hvd-lab{position:absolute;left:50%;top:50%;width:40%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:repeating-radial-gradient(circle,#0000 0 6px,#00000010 6px 7px),radial-gradient(circle at 35% 30%,#f2d891,#c9a24f 55%,#8f6d2c);box-shadow:0 0 0 1px #f0d48a66,0 10px 30px #0008;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#1a150c;text-align:center}
.xz .hvd-ln{font:italic 700 clamp(34px,4.4vw,58px)/1 var(--display)}
.xz .hvd-hole{width:12px;height:12px;border-radius:50%;background:#0e0c09;box-shadow:inset 0 1px 2px #000}
.xz .hvd-lt{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;max-width:80%;line-height:1.3;text-wrap:balance}
.xz .hvd-p{display:none}
.xz .hvd-p.on{display:block;animation:hvdIn .5s ease both}
@keyframes hvdIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.xz .hvd-ph{display:flex;align-items:flex-end;gap:18px;margin-bottom:26px}
.xz .hvd-pn-n{font:italic 700 96px/.8 var(--display);color:transparent;-webkit-text-stroke:1.5px #e3c06f}
.xz .hvd-ph small{display:block;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#c9a24f;margin-bottom:6px}
.xz .hvd-ph h3{margin:0;font-size:clamp(26px,2.6vw,36px);font-weight:800;text-transform:uppercase;color:#f6efe0;line-height:1.1}
.xz .hvd-io{display:grid;grid-template-columns:1fr 40px 1fr;align-items:stretch;margin-bottom:22px}
.xz .hvd-io>div{padding:16px 18px;border-radius:14px;font-size:16px;line-height:1.45;color:#efe6d2}
.xz .hvd-io small{display:block;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:6px;color:#a89f8c}
.xz .hvd-io .in{background:#ffffff0a;border:1px solid #ffffff14}
.xz .hvd-io .out{background:linear-gradient(145deg,#c9a24f26,#c9a24f0d);border:1px solid #c9a24f88}
.xz .hvd-io .out small{color:#e3c06f}
.xz .hvd-io em{position:relative;align-self:center;height:2px;background:linear-gradient(90deg,#c9a24f33,#e3c06f)}
.xz .hvd-io em:after{content:"";position:absolute;right:-1px;top:-4px;border:5px solid transparent;border-left:7px solid #e3c06f;border-right:0}
.xz .hvd-p p{font-size:17px;line-height:1.65;color:#d8cfbd;max-width:56ch;margin:0 0 24px}
.xz button.hvd-nx{display:inline-flex;align-items:center;gap:10px;background:none!important;border:0!important;border-bottom:1px solid #c9a24f66!important;border-radius:0!important;padding:0 0 4px!important;color:#e3c06f!important;font-size:14px;font-weight:700;cursor:pointer;box-shadow:none!important}
.xz button.hvd-nx span{transition:transform .3s}
.xz button.hvd-nx:hover span{transform:translateX(4px)}
@media (max-width:900px){.xz .hvd{grid-template-columns:1fr;gap:36px}.xz .hvd-disc{max-width:440px;margin:0 auto}}
@media (max-width:560px){.xz .hvd-disc{max-width:340px}.xz .hvd-s b{display:none}.xz .hvd-s i{width:44px;height:44px;font-size:17px!important}.xz button.hvd-s{width:44px;left:calc(50% + 38% * sin(calc(var(--i)*72deg)));top:calc(50% - 38% * cos(calc(var(--i)*72deg)))}.xz .hvd-pn-n{font-size:72px}.xz .hvd-io{grid-template-columns:1fr;gap:0}.xz .hvd-io em{width:2px;height:22px;justify-self:center;background:linear-gradient(180deg,#c9a24f33,#e3c06f)}.xz .hvd-io em:after{right:-4px;top:auto;bottom:-2px;border:5px solid transparent;border-top:7px solid #e3c06f;border-bottom:0}}
@media (prefers-reduced-motion:reduce){.xz .hvd-gr{animation:none}.xz .hvd{transition:none}.xz .hvd-p.on{animation:none}}
.xz .hvd-ta{position:absolute;inset:0;pointer-events:none;z-index:3}
.xz .hvd-ta i{position:absolute;display:block;padding:0;margin:0;border:0;border-radius:0}
.xz .hvd-ta i.b{left:95%;top:5%;width:24px;height:24px;margin:-12px 0 0 -12px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#fff0c4,#c9a24f 50%,#6f5626 85%);box-shadow:0 4px 10px #000b,0 0 0 4px #17140f,0 0 0 5px #c9a24f55}
.xz .hvd-ta i.r{left:95%;top:5%;width:3px;height:23%;margin-left:-1.5px;border-radius:2px;background:linear-gradient(90deg,#8f6d2c,#f4dc9c 50%,#b8913f);transform-origin:50% 0;transform:rotate(76deg);box-shadow:2px 4px 6px #0009;animation:hvdArm 4s ease-in-out infinite}
@keyframes hvdArm{50%{transform:rotate(76.6deg)}}
.xz .hvd-ta i.h{left:50%;top:auto;bottom:-11px;width:8px;height:14px;margin-left:-4px;border-radius:2px 2px 3px 3px;background:linear-gradient(90deg,#6f5626,#efd492 50%,#8f6d2c);transform:rotate(-18deg);transform-origin:50% 0;box-shadow:1px 3px 4px #0009}
.xz .hvd-ta i.h:after{content:"";position:absolute;left:50%;bottom:-3px;width:2px;height:3px;margin-left:-1px;background:#e3c06f;box-shadow:0 0 6px 1px #e3c06f}
.xz .hvd-ta i.w{left:95%;top:5%;width:9px;height:14px;margin:-24px 0 0 -4.5px;border-radius:3px;background:linear-gradient(90deg,#3a3329,#9a8a6a 50%,#2a241b);transform-origin:50% 24px;transform:rotate(76deg);box-shadow:0 2px 4px #000a}
@media (max-width:560px){.xz .hvd-ta i.b{width:18px;height:18px;margin:-9px 0 0 -9px}.xz .hvd-ta i.r{width:2px}}
@media (prefers-reduced-motion:reduce){.xz .hvd-ta i.r{animation:none}}
/* trong phần mở đầu Xưởng: đĩa trên, khung chi tiết dưới */
.xz .xz-hv .hvd{display:block;margin:0;max-width:none}
.xz .xz-hv .hvd-disc{max-width:500px;margin:0 auto}
.xz .xz-hv .hvd-pn{max-width:560px;margin:34px auto 0}
.xz .xz-hv .hvd-ph{margin-bottom:18px}
.xz .xz-hv .hvd-pn-n{font-size:64px}
.xz .xz-hv .hvd-p p{font-size:15.5px;margin-bottom:16px}
.xz .xz-hv .hvd{padding-top:28px}
/* r359 tem "Có Mè Xửng": xanh lá, viền, không đổ nền */
.xz-bc .af .lb{background:transparent;color:#5fd38a;border:1.5px solid #5fd38a;box-shadow:none}
.xz-bc .af .lb:before{background:transparent;color:#5fd38a;box-shadow:inset 0 0 0 1.5px #5fd38a}
/* r361 dải số liệu phần mở đầu: như dòng ghi chú trên bìa đĩa, ngăn bằng vạch nhịp */
.xz-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;max-width:600px;margin-top:8px;padding-top:20px;border-top:1px solid #c2a05640;position:relative}
.xz-facts:before{content:"";position:absolute;left:0;top:-1px;width:64px;height:1px;background:var(--g2)}
.xz-facts span{display:flex;flex-direction:row;align-items:center;gap:12px;padding:2px 18px;border:0;border-left:1px solid #c2a05633;border-radius:0;background:none;font-size:13px;line-height:1.35;color:#cfc6b3;text-wrap:balance}
.xz-facts span:first-child{padding-left:0;border-left:0}
.xz-facts b{flex:none;font:italic 700 48px/.9 var(--display);color:var(--g2);letter-spacing:-.02em}
@media (max-width:560px){.xz-facts span{flex-direction:column;align-items:flex-start;gap:6px;padding:0 12px;font-size:12px}.xz-facts b{font-size:38px}}
/* r362 minh hoạ cạnh tiêu đề Hỏi đáp: Mè Xửng trả lời câu hỏi thật */
.xz-qh{display:grid;gap:36px}
@media (min-width:861px){.xz-qh{position:sticky;top:96px}}
.xz-qa{position:relative;max-width:420px;padding:40px 0 0 0}
.xz-qa .qm{position:absolute;right:-6px;top:-34px;font:italic 700 230px/1 var(--display);color:transparent;-webkit-text-stroke:1.5px #c2a05666;pointer-events:none;user-select:none}
.xz-qa .cd{position:relative;display:grid;gap:10px;padding:18px;border-radius:22px;background:linear-gradient(180deg,#1f1a13,#15120e);border:1px solid #c2a05655;box-shadow:0 30px 60px -30px #000}
.xz-qa .hd{display:flex;align-items:center;gap:10px;padding-bottom:12px;margin-bottom:2px;border-bottom:1px solid #ffffff12}
.xz-qa .hd i{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#f2d891,#c2a056 60%,#8f6d2c);color:#1a150c;font:italic 700 14px/1 var(--display)}
.xz-qa .hd b{display:block;font-size:14px;color:#f4efe3}
.xz-qa .hd small{display:flex;align-items:center;gap:6px;font-size:11.5px;color:#5fd38a}
.xz-qa .hd small:before{content:"";width:6px;height:6px;border-radius:50%;background:#5fd38a;box-shadow:0 0 0 3px #5fd38a26}
.xz-qa p{margin:0;max-width:86%;padding:10px 13px;font-size:13.5px;line-height:1.45;border-radius:16px}
.xz-qa .u{justify-self:end;background:#2c261d;color:#efe6d2;border-bottom-right-radius:5px}
.xz-qa .m{justify-self:start;color:#f4efe3;border:1px solid #c2a05699;background:#c2a0560f;border-bottom-left-radius:5px}
.xz-qa .ty{display:flex;gap:5px;padding:13px 15px}
.xz-qa .ty i{width:6px;height:6px;border-radius:50%;background:var(--g2);animation:xzTy 1.2s ease-in-out infinite}
.xz-qa .ty i:nth-child(2){animation-delay:.15s}.xz-qa .ty i:nth-child(3){animation-delay:.3s}
@keyframes xzTy{0%,60%,100%{opacity:.3;transform:none}30%{opacity:1;transform:translateY(-3px)}}
@media (max-width:860px){.xz-qa{max-width:440px}.xz-qa .qm{font-size:170px;top:-20px}}
@media (prefers-reduced-motion:reduce){.xz-qa .ty i{animation:none;opacity:.7}}
.xz-qa .qm{z-index:2;top:-62px;right:-14px;font-size:180px;-webkit-text-stroke:1.5px #c2a056aa}
@media (max-width:860px){.xz-qa{display:none}}
/* r363 Hỏi đáp: hai cột rộng bằng nhau, khung trò chuyện rộng hết cột */
@media (min-width:861px){.xz-qg{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px}}
.xz-qa{max-width:none}
/* r363b: hai cột cao bằng nhau, danh sách hỏi đáp giãn đều theo cột trái */
@media (min-width:861px){
.xz-qg{align-items:stretch}
.xz-qh{position:static}
.xz-qg .xz-faq{display:flex;flex-direction:column;gap:12px}
.xz-qg .xz-faq details{flex:1 1 auto;display:flex;flex-direction:column;justify-content:center}
.xz-qg .xz-faq summary:after{top:50%;transform:translateY(-50%)}
.xz-qg .xz-faq details[open]{justify-content:flex-start}
.xz-qg .xz-faq details[open] summary:after{top:16px;transform:none}
}
/* r364 Mè Xửng: bốn việc, mỗi việc ghi rõ ai dùng được và một ví dụ trò chuyện thật */
.xz-h .nw{white-space:nowrap}
.xz-mx2{display:grid;gap:14px;margin-top:8px}
.xz-mx2 .mx-r{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:28px;align-items:center;padding:24px 26px;border-radius:24px;background:var(--dk2);border:1px solid var(--line);opacity:0;transform:translateY(14px);transition:.7s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--d)*.08s)}
.xz-mx2 .mx-r.in{opacity:1;transform:none}
.xz-mx2 .mx-t{display:flex;gap:18px;align-items:flex-start}
.xz-mx2 .mx-t em{flex:none;font:italic 700 46px/.9 var(--display);color:transparent;-webkit-text-stroke:1.2px var(--g2)}
.xz-mx2 h3{margin:0 0 8px;font-size:20px;color:#fff}
.xz-mx2 .mx-who{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:999px;font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.xz-mx2 .mx-who:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.xz-mx2 .mx-who.all{color:#5fd38a;border:1px solid #5fd38a88}
.xz-mx2 .mx-who.dev{color:var(--g2);border:1px solid #c2a056aa}
.xz-mx2 .mx-t p{margin:10px 0 0;font-size:14.5px;line-height:1.55;color:var(--dmut);max-width:46ch}
.xz-mx2 .mx-c{display:grid;gap:8px}
.xz-mx2 .mx-c small{display:block;font-size:11px;font-weight:700;opacity:.7;margin-bottom:3px}
.xz-mx2 .mx-c p{margin:0;font-size:13.5px;line-height:1.5}
.xz-mx2 .mx-c .u{justify-self:end;max-width:88%;padding:10px 13px;border-radius:16px 16px 4px 16px;background:#ffffff10;color:#efe6d2}
.xz-mx2 .mx-c .m{justify-self:start;max-width:92%;padding:10px 13px;border-radius:16px 16px 16px 4px;background:linear-gradient(180deg,#e8cf95,#c2a056);color:#151310}
@media (max-width:860px){.xz-mx2 .mx-r{grid-template-columns:1fr;gap:18px;padding:20px}.xz-mx2 .mx-t em{font-size:38px}}
@media (prefers-reduced-motion:reduce){.xz-mx2 .mx-r{opacity:1;transform:none}}
.xz .hvd button,.xz .hvd-nx{font-family:inherit}
@media (max-width:600px){#xz-me-xung .xz-h p br{display:none}}
/* r365 Mè Xửng: màn hình Xưởng thu nhỏ, khung Mè Xửng ở góc phải, bốn việc chạy lần lượt */
.xz-mx3{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,.75fr);gap:28px;align-items:center;margin-top:8px}
.xz-mx3 .mx-scr{position:relative;aspect-ratio:16/10;border-radius:20px;background:#100e0b;border:1px solid #c2a05640;overflow:hidden;box-shadow:0 40px 80px -40px #000;opacity:0;transform:translateY(16px);transition:.8s cubic-bezier(.2,.8,.2,1)}
.xz-mx3 .mx-scr.in{opacity:1;transform:none}
.mx-scr .bar{display:flex;align-items:center;gap:6px;height:30px;padding:0 12px;border-bottom:1px solid #ffffff10;background:#16130f}
.mx-scr .bar i{width:8px;height:8px;border-radius:50%;background:#ffffff1f}.mx-scr .bar span{margin-left:10px;font-size:10.5px;color:#a89f8c;letter-spacing:.04em}
.mx-scr .bd{display:grid;grid-template-columns:12% 1fr;height:calc(100% - 30px)}
.mx-scr .sb{display:grid;align-content:start;gap:10px;padding:14px 10px;border-right:1px solid #ffffff0d}
.mx-scr .sb em{height:6px;border-radius:4px;background:#ffffff14}.mx-scr .sb em:nth-child(2){background:#c2a05666}
.mx-scr .mn{display:grid;grid-template-rows:auto 1fr auto;gap:10px;padding:12px;min-height:0}
.mx-scr .kp{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.mx-scr .kp b{display:grid;gap:6px;padding:9px;border-radius:10px;background:#ffffff08;border:1px solid #ffffff0d}
.mx-scr .kp i{height:5px;width:40%;border-radius:3px;background:#ffffff1f}.mx-scr .kp u{height:10px;width:70%;border-radius:3px;background:#c2a05555;text-decoration:none}
.mx-scr .row{display:grid;grid-template-columns:1.25fr 1fr;gap:10px;min-height:0}
.mx-scr .ch{position:relative;display:flex;align-items:flex-end;gap:7%;padding:12px 12px 10px;border-radius:10px;background:#ffffff06;border:1px solid #ffffff0d}
.mx-scr .ch i{flex:1;height:0;border-radius:4px 4px 0 0;background:#c2a05666;transition:height 1s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--i)*.07s)}
.mx-scr.in .ch i{height:var(--h)}
.mx-scr .ch svg{position:absolute;inset:12px 12px 10px;width:calc(100% - 24px);height:calc(100% - 22px);overflow:visible}
.mx-scr .ch path{fill:none;stroke:#e3c06f;stroke-width:1.5;vector-effect:non-scaling-stroke;stroke-dasharray:300;stroke-dashoffset:300;transition:stroke-dashoffset 2s ease .4s}
.mx-scr.in .ch path{stroke-dashoffset:0}
.mx-scr .ib{display:grid;gap:6px;align-content:start;padding:8px;border-radius:10px;background:#ffffff06;border:1px solid #ffffff0d}
.mx-scr .ib p{display:flex;gap:7px;align-items:center;margin:0;padding:5px;border-radius:7px}
.mx-scr .ib p i{width:14px;height:14px;border-radius:50%;background:#ffffff1a;flex:none}.mx-scr .ib p span{display:grid;gap:4px;flex:1}.mx-scr .ib u{height:4px;border-radius:3px;background:#ffffff17;text-decoration:none}.mx-scr .ib u+u{width:60%}
.mx-scr .tb{display:grid;gap:4px;padding:8px;border-radius:10px;background:#ffffff06;border:1px solid #ffffff0d}
.mx-scr .tb span{display:grid;grid-template-columns:1.4fr 1fr 1fr 0fr;gap:8px;transition:grid-template-columns .8s}
.mx-scr .tb u{height:5px;border-radius:3px;background:#ffffff14;text-decoration:none}.mx-scr .tb .hd u{background:#ffffff26}
.mx-scr .tb .nc{background:#5fd38a!important;opacity:0;transition:opacity .6s .4s}
.mx-scr[data-s="3"] .tb span{grid-template-columns:1.4fr 1fr 1fr 1fr}.mx-scr[data-s="3"] .tb .nc{opacity:.8}
.mx-scr .spot{position:absolute;border-radius:12px;border:1.5px solid #e3c06f;box-shadow:0 0 0 4px #e3c06f1f,0 0 26px #e3c06f55;transition:all .8s cubic-bezier(.6,0,.2,1);pointer-events:none;left:15%;top:56%;width:47%;height:28%}
.mx-scr[data-s="0"] .spot{left:13.5%;top:35%;width:47%;height:39%}
.mx-scr[data-s="1"] .spot{left:61.5%;top:35%;width:36%;height:15%}
.mx-scr[data-s="2"] .spot{left:2%;top:17%;width:9%;height:8%}
.mx-scr[data-s="3"] .spot{left:13.5%;top:76%;width:84%;height:19%}
.mx-scr[data-s="0"] .ch i:nth-child(4){background:#e3c06f;box-shadow:0 0 14px #e3c06f88}
.mx-scr[data-s="1"] .ib .r0{background:#c2a05622}
.mx-chat{position:absolute;right:14px;bottom:14px;width:min(320px,58%);display:grid;gap:7px;padding:12px;border-radius:16px;background:#1d1912f2;border:1px solid #c2a05677;box-shadow:0 20px 40px -10px #000c;backdrop-filter:blur(6px)}
.mx-chat .ch-h{display:flex;align-items:center;gap:8px;padding-bottom:8px;border-bottom:1px solid #ffffff12}
.mx-chat .ch-h i{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#f2d891,#c2a056 60%,#8f6d2c);color:#1a150c;font:italic 700 10px/1 var(--display)}
.mx-chat .ch-h b{font-size:12px;color:#f4efe3}.mx-chat .ch-h small{margin-left:auto;display:flex;align-items:center;gap:5px;font-size:10px;color:#5fd38a}.mx-chat .ch-h small:before{content:"";width:5px;height:5px;border-radius:50%;background:#5fd38a}
.mx-chat .mx-cv{display:none;gap:6px;border:0;padding:0;margin:0}.mx-chat .mx-cv.on{display:grid}
.mx-chat p{margin:0;max-width:90%;padding:7px 10px;font-size:11.5px;line-height:1.4;border-radius:12px}
.mx-chat small{display:block;font-size:9.5px;opacity:.65;margin-bottom:2px}
.mx-chat .u{justify-self:end;background:#ffffff12;color:#efe6d2;border-bottom-right-radius:4px;animation:mxIn .4s both}
.mx-chat .ty{display:flex;gap:4px;width:max-content;background:#ffffff0d;animation:mxTy 1.5s both}
.mx-chat .ty i{width:5px;height:5px;border-radius:50%;background:#e3c06f;animation:xzTy 1s infinite}.mx-chat .ty i:nth-child(2){animation-delay:.15s}.mx-chat .ty i:nth-child(3){animation-delay:.3s}
.mx-chat .m{justify-self:start;background:linear-gradient(180deg,#e8cf95,#c2a056);color:#151310;border-bottom-left-radius:4px;animation:mxIn .45s 1.5s both}
@keyframes mxIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@keyframes mxTy{0%,8%{opacity:0;max-height:0;padding:0 10px}12%,85%{opacity:1;max-height:30px;padding:7px 10px}100%{opacity:0;max-height:0;padding:0 10px;margin-top:-6px}}
.xz-mx3 .mx-ls{display:grid;gap:8px}
.xz-mx3 button.mx-it{position:relative;display:flex;align-items:center;gap:12px;width:100%;padding:14px 14px;border-radius:16px;border:1px solid var(--line);background:var(--dk2);color:inherit;font-family:inherit;text-align:left;cursor:pointer;overflow:hidden;transition:border-color .3s,background .3s}
.xz-mx3 .mx-it .xz-ic{flex:none;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;border:1px solid #c2a05655;color:var(--g2);transition:.3s}
.xz-mx3 .mx-it .tx{display:grid;gap:2px;flex:1;min-width:0}.xz-mx3 .mx-it b{font-size:15px;color:#fff}.xz-mx3 .mx-it small{font-size:12.5px;color:var(--dmut)}
.xz-mx3 .who{flex:none;width:8px;height:8px;border-radius:50%}.xz-mx3 .who.all{background:#5fd38a;box-shadow:0 0 0 3px #5fd38a22}.xz-mx3 .who.dev{background:var(--g2);box-shadow:0 0 0 3px #c2a05633}
.xz-mx3 .mx-it .pg{position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--g2)}
.xz-mx3 .mx-it.on{border-color:#c2a056aa;background:linear-gradient(90deg,#c2a0561a,#c2a05605)}
.xz-mx3 .mx-it.on .xz-ic{background:var(--g2);color:#151310;border-color:var(--g2)}
.xz-mx3 .mx-it.on .pg{animation:mxPg 5s linear both}.xz-mx3.hold .mx-it.on .pg{animation:none;width:100%}
@keyframes mxPg{to{width:100%}}
.xz-mx3 .lg{display:flex;flex-wrap:wrap;gap:6px 16px;padding:6px 4px 0;font-size:11.5px;color:var(--dmut)}.xz-mx3 .lg span{display:flex;align-items:center;gap:7px}
@media (max-width:980px){.xz-mx3{grid-template-columns:1fr}}
@media (max-width:560px){.mx-chat{width:auto;left:10px;right:10px;bottom:10px}.mx-scr{aspect-ratio:4/5}.mx-scr .bd{grid-template-columns:1fr}.mx-scr .sb{display:none}.mx-scr .spot{display:none}.mx-scr .row{grid-template-columns:1fr}.mx-scr .ib,.mx-scr .tb{display:none}}
@media (prefers-reduced-motion:reduce){.mx-chat .u,.mx-chat .m{animation:none}.mx-chat .ty{display:none}.xz-mx3 .mx-it.on .pg{animation:none;width:100%}}
.mx-scr[data-s="0"] .spot{left:13.3%;top:20%;width:46.8%;height:64.5%}
.mx-scr[data-s="1"] .spot{left:61.2%;top:21%;width:37%;height:9.5%}
.mx-scr[data-s="2"] .spot{left:1.2%;top:12.6%;width:10.6%;height:4.6%}
.mx-scr[data-s="3"] .spot{left:13.3%;top:84.5%;width:84.8%;height:12.5%}
@media (max-width:560px){.xz-mx3 .mx-scr{aspect-ratio:auto}.mx-scr .bd{height:auto}.mx-scr .row{min-height:150px}.mx-scr .mx-chat{position:relative;left:auto;right:auto;bottom:auto;width:auto;margin:0 10px 10px}}
/* r367 sửa giao diện: hộp duyệt trước khi dựng, bảng việc chia cột đều, điện thoại */
#rdSum.rd-sum,#pvSum.rd-sum{display:block}
@media (min-width:1100px){.kanban,#projects .kanban{display:grid!important;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);overflow-x:visible}.kanban .col,.kanban .col.is-empty{min-width:0;flex:none;opacity:1}}
.kanban .card{min-width:0}.kanban .card b,.kanban .card h3,.kanban .card h4{overflow-wrap:anywhere}
.modal-card{max-height:calc(100dvh - 32px)}.modal-card.xwide{height:calc(100dvh - 32px)}
.od-quick .qy-pill{border:1px solid var(--line);background:var(--surface);color:var(--fg)}
.od-quick .qy-pill.mute{color:var(--muted)}
.od-notes label.check{display:flex;align-items:center;gap:10px}
.od-box input[type=date],.od-box input[type=time],.od-box input[type=datetime-local],#view input[type=date],#view input[type=datetime-local]{width:100%;max-width:100%;min-width:0;box-sizing:border-box;-webkit-appearance:none;appearance:none;text-align:left}
.sg-run>div{min-width:0}.sg-run b,.rc-card b,.rc-card h3,.rc-card h4,.rc-card .t{overflow-wrap:anywhere}
.cr-tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.cr-tabs>*{flex:none;white-space:nowrap}
@media (max-width:700px){
#view{overflow-x:hidden}
#view input,#view select,#view textarea{max-width:100%;min-width:0;box-sizing:border-box}
#view .field{margin-bottom:12px}
#view .qy-2{gap:0 12px}
.od-stsel{grid-template-columns:repeat(2,minmax(0,1fr))}
.od-stsel span{font-size:13px;line-height:1.25}
.od-meta{grid-template-columns:1fr}
.rd-sum li{gap:12px}.rd-sum li b{text-align:right}
.modal{padding:10px}.modal-card{padding:16px;max-height:calc(100dvh - 20px - env(safe-area-inset-bottom))}.modal-card.xwide{height:calc(100dvh - 20px - env(safe-area-inset-bottom))}
}
/* r368 bài recap: tách Video recap và Bài viết recap, chọn ảnh, chọn kênh rõ ràng */
.rc-card.rc2{display:grid;grid-template-columns:1fr;gap:14px}
.rc2 .rc-hd b{overflow-wrap:anywhere}
.rc2 .rc-two{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:14px;align-items:start}
.rc2 .rc-pane{display:grid;gap:8px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--sunk,rgba(0,0,0,.03));min-width:0}
.rc2 .rc-ph{display:flex;align-items:center;gap:10px;margin-bottom:2px}
.rc2 .rc-ph h4{margin:0;font-size:15px}
.rc2 .rc-pk{font:italic 700 20px/1 var(--display);color:var(--gold)}
.rc2 .rc-lb{font-size:12px;font-weight:700;color:var(--muted);margin-top:4px}
.rc2 .rc-lb .muted{font-weight:500}
.rc2 .rc-clip video{width:100%;max-height:360px;border-radius:12px;background:#000}
.rc2 .rc-clipst{display:flex;align-items:center;gap:8px;min-height:120px;justify-content:center;border:1px dashed var(--line);border-radius:12px}
.rc2 .rc-mur{gap:8px}.rc2 .rc-mur select{flex:1;min-width:0}
.rc2 textarea{width:100%;box-sizing:border-box}
.rc2 .rc-pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:6px}
.rc2 .rc-pi{position:relative;padding:0;border:2px solid transparent;border-radius:10px;overflow:hidden;cursor:pointer;background:none;aspect-ratio:1;opacity:.45;transition:opacity .2s,border-color .2s}
.rc2 .rc-pi img{width:100%;height:100%;object-fit:cover;display:block}
.rc2 .rc-pi.on{opacity:1;border-color:var(--gold)}
.rc2 .rc-pi i{position:absolute;top:4px;left:4px;min-width:20px;height:20px;border-radius:10px;display:grid;place-items:center;font-style:normal;font-size:11px;font-weight:800;background:#0009;color:#fff;border:1px solid #fff6}
.rc2 .rc-pi.on i{background:var(--gold);color:#141109;border-color:var(--gold)}
.rc2 .rc-pi:not(.on) i{display:none}
.rc2 .rc-chips{display:flex;flex-wrap:wrap;gap:6px}
.rc2 .rc-chp{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 12px;border-radius:999px;border:1px solid var(--line);font-size:13px;cursor:pointer;user-select:none;max-width:100%}
.rc2 .rc-chp input{position:absolute;opacity:0;pointer-events:none}
.rc2 .rc-chp span{overflow-wrap:anywhere}
.rc2 .rc-chp:before{content:"";width:14px;height:14px;border-radius:4px;border:1.5px solid var(--muted);flex:none}
.rc2 .rc-chp.on{border-color:var(--gold);background:color-mix(in srgb,var(--gold) 14%,transparent)}
.rc2 .rc-chp.on:before{background:var(--gold);border-color:var(--gold);box-shadow:inset 0 0 0 2px var(--surface)}
.rc2 .rc-chp.dis{opacity:.45;cursor:not-allowed}
.rc2 .rc-foot{display:grid;gap:10px;padding-top:4px;border-top:1px solid var(--line)}
@media (max-width:860px){.rc2 .rc-two{grid-template-columns:1fr}}
.rc2 .rc-chp{position:relative}
@media (max-width:560px){.rc2 .rc-pgrid{grid-template-columns:repeat(4,minmax(0,1fr))}}
/* r370 Lịch đăng recap: mỗi kênh một dòng, trạng thái rõ */
.rc-sl2{display:grid;gap:12px}
.rc-sl2 .rr{display:grid;grid-template-columns:72px minmax(0,1fr);gap:16px;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}
.rc-sl2 .rr>img{width:72px;height:72px;border-radius:12px;object-fit:cover}
.rc-sl2 .rr-m{min-width:0;display:grid;gap:10px}
.rc-sl2 .rr-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:space-between}
.rc-sl2 .rr-top b{min-width:0;flex:1 1 280px;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rc-sl2 .rr-st{flex:none;font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;border:1px solid var(--gold);color:var(--gold)}
.rc-sl2 .rr-st.posted{border-color:var(--ok);color:var(--ok)}
.rc-sl2 .rr-sub{font-size:12.5px;color:var(--muted);margin-top:-6px}
.rc-sl2 .rr-sub:empty{display:none}
.rc-sl2 .rr-ch{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:0 18px;border-top:1px solid var(--line)}
.rc-sl2 .rr-c,.rc-sl2 .rr-z{display:grid;grid-template-columns:86px minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 2px;border-bottom:1px solid var(--line);font-size:13px}
.rc-sl2 .pf{font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.rc-sl2 .nm{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rc-sl2 .s{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:12.5px;white-space:nowrap}
.rc-sl2 .s:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--muted)}
.rc-sl2 .rr-c.ok .s{color:var(--ok)}.rc-sl2 .rr-c.ok .s:before{background:var(--ok)}
.rc-sl2 .rr-c.wait .s{color:var(--gold)}.rc-sl2 .rr-c.wait .s:before{background:var(--gold)}
.rc-sl2 .rr-c.bad .s{color:var(--bad)}.rc-sl2 .rr-c.bad .s:before{background:var(--bad)}
.rc-sl2 .s a{color:inherit;text-decoration:none}.rc-sl2 .s a:hover{text-decoration:underline}
.rc-sl2 .rr-z{border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:var(--sunk,rgba(0,0,0,.03))}
.rc-sl2 .rr-z.due{border-color:var(--gold);background:color-mix(in srgb,var(--gold) 10%,transparent)}
.rc-sl2 .rr-z .nm{white-space:normal}
.rc-sl2 .rr-za{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
@media (max-width:640px){.rc-sl2 .rr{grid-template-columns:56px minmax(0,1fr);gap:12px;padding:12px}.rc-sl2 .rr>img{width:56px;height:56px}.rc-sl2 .rr-ch{grid-template-columns:1fr}.rc-sl2 .rr-c{grid-template-columns:72px minmax(0,1fr) auto}.rc-sl2 .rr-z{grid-template-columns:1fr}.rc-sl2 .rr-za{justify-content:flex-start}.rc-sl2 .rr-top b{white-space:normal;overflow-wrap:anywhere}}
@media (max-width:640px){.rc-sl2 .rr{grid-template-columns:1fr}.rc-sl2 .rr>img{display:none}.rc-sl2 .rr-c{grid-template-columns:68px minmax(0,1fr) auto}}
/* r371 lịch hẹn: bộ lọc Hôm nay / Sắp tới / Đã qua / Theo ngày / Tất cả */
.qy-sc{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.qy-sc button{flex:none;white-space:nowrap}
.qy-sep{display:flex;align-items:center;gap:12px;margin:22px 0 4px;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.qy-sep:after{content:"";flex:1;height:1px;background:var(--line)}
/* r373 thẻ đơn ở quầy: khung Phòng & Host nằm trong thẻ, ảnh đã gửi hiện thành ô, link album gửi khách */
.qy-asg{margin:14px 16px 0}
@media (max-width:760px){.qy-asg{margin:12px 12px 0}}
.qy-contact .qy-pill{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.qy-ph-list figure.old img{opacity:.85}
.qy-gl{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 14px;margin:4px 0 12px;padding:12px 14px;border-radius:14px;border:1px solid var(--gold,#c9a24f);background:color-mix(in srgb,var(--gold,#c9a24f) 10%,transparent)}
.qy-gl b{display:block;font-size:14px}.qy-gl small{display:block;color:var(--muted);font-size:12.5px;line-height:1.4}
.qy-gl>div:first-child{min-width:0;flex:1 1 220px}
.qy-gl-b{display:flex;flex-wrap:wrap;gap:6px}
.qy-gl-b .btn{min-height:40px}
.qy-ev{align-items:center}.qy-ev b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.qy-ev>div{min-width:0;flex:1}
.qy-evi{flex:none;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,var(--gold,#c9a24f) 16%,transparent);color:var(--gold,#c9a24f)}
.qy-act i svg{display:block}
.qy-drok{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 14px;border-radius:14px;border:1px solid color-mix(in srgb,var(--ok) 55%,transparent);background:color-mix(in srgb,var(--ok) 10%,transparent)}
.qy-drok .ok{flex:none;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--ok);color:#fff;font-weight:800}
.qy-drok>div{flex:1 1 180px;min-width:0}.qy-drok b{display:block;font-size:14px}.qy-drok small{color:var(--muted);font-size:12.5px}
.qy-drok .btn{min-height:40px}
/* r376 thẻ đơn: ảnh, link album, Drive gọn trong ít dòng */
.qy-ph-list{grid-template-columns:repeat(auto-fill,minmax(68px,1fr));gap:6px}
.qy-ph-list figure,.qy-ph-add{border-radius:12px}
.qy-ph-add small{font-size:11px}.qy-ph-add span{font-size:22px;line-height:1}
.qy-ph-list figure span{font-size:10px;padding:2px}
.qy-gl{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:10px 12px;margin:2px 0 10px}
.qy-gl b{font-size:13.5px;flex:1 1 auto;display:block}
.qy-gl-b{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:6px;flex:1 1 300px}
.qy-gl-b .btn{min-height:44px;justify-content:center;padding:0 10px;white-space:nowrap}
.qy-drv{gap:6px}
.qy-dv{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:var(--sunk);border:1px solid transparent}
.qy-dv.ok{border-color:color-mix(in srgb,var(--ok) 45%,transparent)}
.qy-dv .qy-evi{width:34px;height:34px}
.qy-dv .m{flex:1;min-width:0}
.qy-dv .m b{display:block;font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.qy-dv .m small{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--muted)}
.qy-dv .m small b.ok{display:inline;color:var(--ok)}
.qy-dvb{flex:none;display:inline-flex;align-items:center;min-height:40px;padding:0 12px;border-radius:10px;border:1px solid var(--line);font-weight:700;font-size:13px;color:var(--fg);text-decoration:none}
.qy-dvx{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;font-size:12.5px}
.qy-dvx a{color:var(--muted);text-decoration:underline;text-underline-offset:3px}
.qy-dvx .btn{min-height:40px}
.qy-tg{display:inline-flex;align-items:center;gap:8px;cursor:pointer;color:var(--fg);min-height:40px}
.qy-tg input{position:absolute;opacity:0;pointer-events:none}
.qy-tg span{position:relative;width:34px;height:20px;border-radius:999px;background:var(--line);transition:.2s}
.qy-tg span:after{content:"";position:absolute;left:2px;top:2px;width:16px;height:16px;border-radius:50%;background:#fff;transition:.2s}
.qy-tg input:checked+span{background:var(--ok)}.qy-tg input:checked+span:after{left:16px}
.qy-drok{display:none}
/* r377 album recap: nút bỏ album, chọn video cho clip */
.rc-al{position:relative}
.rc-alx{position:absolute;top:8px;right:8px;width:32px;height:32px;border-radius:50%;border:1px solid var(--line);background:color-mix(in srgb,var(--surface) 88%,transparent);color:var(--muted);font-size:18px;line-height:1;cursor:pointer;display:grid;place-items:center;z-index:2}
.rc-alx:hover{color:var(--bad);border-color:var(--bad)}
.rc-th video{width:100%;height:100%;object-fit:cover;display:block}
.rc-pk-h{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:10px 0 6px}
.rc-pickv label{position:relative}.rc-pickv video{width:100%;aspect-ratio:9/16;object-fit:cover;border-radius:10px;display:block;background:#000}
.rc-pickv small{display:block;font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* r378 Ảnh & video buổi: thẻ folder có ảnh xem trước, lọc theo ngày */
.mt-evg{display:block}
.ev-top2{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:0 0 14px}
.ev-fl{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;flex:1 1 auto;min-width:0}.ev-fl .chip{flex:none;white-space:nowrap}
.ev-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:14px}
.ev-c2{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:18px;background:var(--surface);overflow:hidden;min-width:0}
.ev-c2.hl{border-color:var(--gold);box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 25%,transparent)}
.ev-th{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:1fr 1fr;gap:3px;aspect-ratio:16/8;background:var(--sunk)}
.ev-th.none{display:flex;align-items:center;justify-content:center;aspect-ratio:16/6}
.ev-th .t{position:relative;display:block;overflow:hidden;background:#111}
.ev-th .t.big{grid-row:1/3}
.ev-th img,.ev-th video{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.ev-th .t:hover img,.ev-th .t:hover video{transform:scale(1.04)}
.ev-th .pl{position:absolute;left:8px;bottom:8px;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#000a;color:#fff;font-size:10px;font-style:normal}
.ev-th .more{position:absolute;inset:0;display:grid;place-items:center;background:#000a;color:#fff;font-weight:800;font-size:18px}
.ev-emp{padding:16px;text-align:center;color:var(--muted);font-size:13px}
.ev-bd{display:grid;gap:8px;padding:12px 14px 14px}
.ev-hd{display:flex;align-items:center;gap:8px;min-width:0}
.ev-hd b{min-width:0;flex:1;font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ev-dt{flex:none;font-size:11px;font-weight:800;letter-spacing:.04em;padding:3px 8px;border-radius:999px;background:color-mix(in srgb,var(--gold) 16%,transparent);color:var(--gold)}
.ev-mt{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12.5px;color:var(--muted)}
.ev-mt .w{color:var(--warn);font-weight:700}.ev-mt .ok{color:var(--ok);font-weight:700}
.ev-mt>span{display:inline-flex;align-items:center;gap:5px}
.ev-pb{height:4px;border-radius:4px;background:var(--line);overflow:hidden}.ev-pb i{display:block;height:100%;background:var(--gold);transition:width .6s}
.ev-a2{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.ev-a2 .btn{min-height:38px}
.ev-sp{flex:1}
.ev-lk{border:0;background:none;color:var(--muted);font:inherit;font-size:12.5px;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:6px 4px}
.ev-lk.bad:hover{color:var(--bad)}
.ev-lk[disabled]{opacity:.4;cursor:not-allowed}
@media (max-width:560px){.ev-grid{grid-template-columns:1fr}.ev-th{aspect-ratio:16/10}}
/* r379 tách hẳn hai mục Bài viết recap / Video recap */
.rc-mode{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px 0 4px}
.rc-mode button{position:relative;display:grid;gap:2px;text-align:left;padding:14px 16px;border-radius:16px;border:1.5px solid var(--line);background:var(--surface);color:var(--fg);font:inherit;cursor:pointer;transition:.2s}
.rc-mode button b{font-size:16px}.rc-mode button small{color:var(--muted);font-size:12.5px}
.rc-mode button i{position:absolute;top:12px;right:14px;min-width:26px;height:26px;padding:0 8px;border-radius:13px;display:grid;place-items:center;font-style:normal;font-weight:800;font-size:13px;background:var(--sunk);color:var(--muted)}
.rc-mode button.on{border-color:var(--gold);background:color-mix(in srgb,var(--gold) 12%,var(--surface))}
.rc-mode button.on i{background:var(--gold);color:#141109}
#rcReady.m-post .rc-pv,#rcReady.m-video .rc-pp{display:none}
#rcReady.m-post .rc2 .rc-two,#rcReady.m-video .rc2 .rc-two{grid-template-columns:1fr}
#rcReady.m-video .rc-novid,#rcReady.m-post .rc-nophoto{display:none}
#rcReady.m-video .rc2 .rc-clip video{max-height:520px;width:auto;max-width:100%;margin:0 auto;display:block}
.rc2 .rc-dn{margin-left:auto;font-size:12px;font-weight:700;color:var(--ok)}
.rc2 .rc-pane.done{opacity:.75}
@media (max-width:560px){.rc-mode{grid-template-columns:1fr 1fr;gap:6px}.rc-mode button{padding:10px 12px}.rc-mode button small{display:none}.rc-mode button b{font-size:14px}}
/* r380 Ảnh & video buổi trên điện thoại: phần đầu gọn, tổng quan một hàng */
@media (max-width:640px){
.xh:has(#evSum){padding:16px;gap:12px}
.xh:has(#evSum) .xh-t>p{display:none}
.xh:has(#evSum) h1{font-size:28px;margin:0 0 8px}
.xh:has(#evSum) .hb-acts{margin-top:4px}.xh:has(#evSum) .hb-acts .search{max-width:none!important;width:100%}
#evSum{padding:10px;border-radius:14px}#evSum .xh-ih{display:none}
#evSum .xh-stats.big{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
#evSum .xh-stats .xs{padding:8px 6px;text-align:center}
#evSum .xh-stats .xs b{font-size:18px}#evSum .xh-stats .xs small{font-size:10.5px;line-height:1.2;display:block}
.ev-top2 .btn{min-height:40px;padding:0 14px}
}
/* r381 Bài Recap: folder ảnh cùng kiểu thẻ với Bài viết & hình; Video Recap trong Xưởng video */
.rc-grid .pv-card{position:relative;cursor:pointer}
.rc-grid .pv-cover{position:relative}
.rc-grid .rc-cnt{position:absolute;left:10px;bottom:10px;padding:3px 9px;border-radius:999px;background:#000a;color:#fff;font-size:11.5px;font-weight:700;backdrop-filter:blur(4px)}
.rc-grid .rc-alx{position:absolute;top:10px;right:10px;width:32px;height:32px;border-radius:50%;border:1px solid #fff4;background:#0008;color:#fff;font-size:18px;line-height:1;cursor:pointer;display:grid;place-items:center;z-index:2}
.rc-grid .rc-alx:hover{background:var(--bad);border-color:var(--bad)}
.ch-st.wait{color:var(--gold)}
.rc-grid .rc-go{font-size:12.5px;font-weight:700;color:var(--gold);margin-left:auto;opacity:0;transition:opacity .2s}
.rc-grid .pv-card.fresh:hover .rc-go,.rc-grid .pv-card.fresh:focus-visible .rc-go{opacity:1}
@media (hover:none){.rc-grid .rc-go{opacity:1}}
.rc-card.flash{box-shadow:0 0 0 3px var(--gold);transition:box-shadow .3s}
.vrc-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px}
.vrc-c{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--surface);cursor:pointer;transition:transform .15s,border-color .15s}
.vrc-c:hover{transform:translateY(-2px);border-color:var(--gold)}
.vrc-c.busy{opacity:.6;pointer-events:none}
.vrc-th{position:relative;display:grid;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;gap:2px;aspect-ratio:4/3;background:#000}
.vrc-th video{width:100%;height:100%;object-fit:cover;display:block}
.vrc-th video:first-child{grid-row:1/3}
.vrc-th video:only-child{grid-column:1/-1}
.vrc-n{position:absolute;left:10px;bottom:10px;padding:3px 9px;border-radius:999px;background:#000a;color:#fff;font-size:11.5px;font-weight:700}
.vrc-b{display:grid;gap:4px;padding:12px 14px 14px}
.vrc-b b{font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vrc-go{justify-self:start;margin-top:6px;font-size:12.5px;font-weight:700;padding:4px 10px;border-radius:999px;border:1px solid var(--gold);color:var(--gold)}
.vrc-go.on{border-color:var(--ok);color:var(--ok)}
/* r383 thẻ folder đều nhau, nút ẩn trên mọi folder */
.rc-grid{align-items:stretch}
.rc-grid .pv-card{display:flex;flex-direction:column}
.rc-grid .pv-cover{aspect-ratio:4/3;overflow:hidden}
.rc-grid .pv-cover img{width:100%;height:100%;object-fit:cover;display:block}
.rc-grid .pv-info{flex:1;display:flex;flex-direction:column;gap:6px}
.rc-grid .pv-info b{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.rc-grid .pv-info .row-wrap{margin-top:auto}
.vrc-c{position:relative}
.vrc-c .rc-alx{position:absolute;top:10px;right:10px;width:32px;height:32px;border-radius:50%;border:1px solid #fff4;background:#0008;color:#fff;font-size:18px;line-height:1;cursor:pointer;display:grid;place-items:center;z-index:2}
.vrc-c .rc-alx:hover{background:var(--bad);border-color:var(--bad)}
/* r384 thẻ bài recap: 2 cột viết bài | hiệu chỉnh, lịch chọn giờ đăng */
.rc2 .rc-pp{padding:0;background:none;border:0}
.rc2 .rc-pp2{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,1fr);gap:16px;align-items:start}
.rc2 .rc-w{display:grid;gap:8px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface);min-width:0}
.rc2 .rc-w textarea{min-height:360px;font-size:14.5px;line-height:1.6;resize:vertical}
.rc2 .rc-wact{gap:6px;margin-top:2px}
.rc2 .rc-s{display:grid;gap:10px;position:sticky;top:80px}
.rc2 .rc-sb{display:grid;gap:8px;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--sunk,rgba(0,0,0,.03))}
.rc2 .rc-s .rc-pgrid{grid-template-columns:repeat(auto-fill,minmax(64px,1fr))}
.rc2 .rc-cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.rc2 .rc-cd{display:grid;gap:4px;align-content:start;justify-items:center;padding:6px 2px 8px;border-radius:10px;background:var(--surface);border:1px solid var(--line);min-height:84px}
.rc2 .rc-cd small{font-size:10.5px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}
.rc2 .rc-cd b{font-size:13px}
.rc2 .rc-cd i{color:var(--muted);font-style:normal;font-size:12px}
.rc2 .rc-cd.off{opacity:.55}
.rc2 .rc-tm{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:30px;padding:0 8px;border-radius:8px;border:1px solid var(--line);font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}
.rc2 .rc-tm input[type=radio]{position:absolute;opacity:0;pointer-events:none}
.rc2 .rc-tm.on{background:var(--gold);border-color:var(--gold);color:#141109}
.rc2 .rc-cal2{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.rc2 .rc-cal2 .rc-tm{min-height:36px;padding:0 12px}
.rc2 .rc-cal2 .rc-tm.pick input[type=datetime-local]{font-size:12px;padding:2px 6px;min-height:28px;border-radius:6px}
.rc2 .rc-fin{gap:10px}.rc2 .rc-okb{width:100%;min-height:48px;justify-content:center}
@media (max-width:980px){.rc2 .rc-pp2{grid-template-columns:1fr}.rc2 .rc-s{position:static}.rc2 .rc-w textarea{min-height:260px}}
@media (max-width:420px){.rc2 .rc-cal{grid-template-columns:repeat(4,minmax(0,1fr))}}
/* r385 lịch 7 ngày trong thẻ bài recap */
.rc2 .rc-sch{margin-top:14px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.rc2 .rc-sch-h{display:grid;gap:2px;margin-bottom:10px}.rc2 .rc-sch-h b{font-size:15px}.rc2 .rc-sch-h small{color:var(--muted);font-size:12.5px}
.rc2 .jb-c.plan{outline:1.5px dashed var(--gold);outline-offset:-3px}
.rc2 .jb-pl{position:absolute;right:4px;bottom:2px;font-size:10px;font-weight:800;color:var(--gold)}
.rc2 .rc-jside{display:grid;gap:10px}
.rc2 .rc-jside input[type=datetime-local]{width:100%}
.rc2 .rc-jside .cs-h{display:flex;flex-wrap:wrap;gap:6px}
/* r385b: tiêu đề ngày trong lịch bài recap không bẻ dòng */
.rc2 .rc-sch .jb-h small{display:block;white-space:nowrap;margin:0}
.rc2 .rc-sch .jb-h b{white-space:nowrap}
/* r386: trang Kịch bản đọc theo cảnh */
.sc3{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,1fr);gap:16px;align-items:start}
.sc3-side{position:sticky;top:12px}
.sc3-h{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:6px}
.sc3-h h3{margin:0}
.sc3-st{display:flex;gap:6px;flex-wrap:wrap}
.sc3-st span{font-size:12px;color:var(--muted);background:var(--sunk);border:1px solid var(--line);border-radius:999px;padding:3px 10px}
.sc3-st b{color:var(--fg)}
.sc3-bar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0 10px}
.sc3-bar select{flex:1 1 180px;min-width:0}
.sc3-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin:0 0 8px}
.sc3-legend span{display:inline-flex;align-items:center;gap:6px}
.sc3-k{width:10px;height:10px;border-radius:3px;display:inline-block}
.sc3-k.img{background:var(--muted);opacity:.55}.sc3-k.vo{background:var(--gold)}
.sc3-board{display:flex;flex-direction:column;gap:8px;max-height:640px;overflow:auto;padding-right:2px}
.sc3-c{all:unset;box-sizing:border-box;display:grid;grid-template-columns:52px minmax(0,.9fr) minmax(0,1.3fr);gap:0;border:1px solid var(--line);border-radius:12px;background:var(--surface);cursor:pointer;overflow:hidden;transition:border-color .15s}
.sc3-c:hover,.sc3-c:focus-visible{border-color:var(--gold)}
.sc3-n{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font:700 18px/1 var(--display);color:var(--gold);background:var(--sunk);border-right:1px solid var(--line)}
.sc3-n small{font:600 10.5px var(--body);color:var(--muted)}
.sc3-img{padding:12px 14px;font-size:13px;line-height:1.55;color:var(--muted);border-right:1px dashed var(--line);font-style:italic}
.sc3-img::before{content:"HÌNH";display:block;font:700 10px/1 var(--body);letter-spacing:.08em;font-style:normal;margin-bottom:6px;opacity:.75}
.sc3-vo{padding:12px 14px;font-size:15px;line-height:1.6;color:var(--fg);border-left:3px solid var(--gold);margin-left:-1px;display:flex;flex-direction:column;gap:6px}
.sc3-vo::before{content:"LỜI";display:block;font:700 10px/1 var(--body);letter-spacing:.08em;color:var(--gold)}
.sc3-vo small{font-size:11px;color:var(--muted)}
.sc3-c em{opacity:.6}
.sc3-sec{font:700 12px var(--body);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:8px 0 0}
.sc3-empty{border:1px dashed var(--line);border-radius:12px;padding:32px 16px;text-align:center;display:flex;flex-direction:column;gap:6px;color:var(--muted)}
.sc3-empty b{color:var(--fg)}
.sc3-ed textarea.script{min-height:420px}
.sc3-tabs{display:flex;width:100%;margin:4px 0 12px}
.sc3-tabs button{flex:1}
.sc3 .sc-chat{margin-top:0}
.sc3 #nBox .nlist{max-height:260px}
@media(max-width:900px){.sc3{grid-template-columns:1fr}.sc3-side{position:static}}
@media(max-width:600px){.sc3-c{grid-template-columns:40px minmax(0,1fr)}.sc3-n{grid-row:span 2;font-size:15px}.sc3-img{border-right:0;border-bottom:1px dashed var(--line);padding:10px 12px}.sc3-vo{padding:10px 12px;font-size:14.5px}.sc3-board{max-height:none}.sc3-bar .sc3-vw{order:3;width:100%}.sc3-bar .sc3-vw button{flex:1}}
/* r386: tab Tư liệu gọn, chia 3 mục */
.ml-tabs{display:flex;width:100%;max-width:560px;margin:0 0 14px}
.ml-tabs button{flex:1;min-height:38px;white-space:nowrap}
.ml-tabs em{font-style:normal;font-size:11px;background:var(--gold);color:#111;border-radius:999px;padding:1px 7px;margin-left:4px}
.ml-tabs em:empty{display:none}
.ml-gh{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin:6px 0 8px}
.ml-gh b{font-size:12px;letter-spacing:.07em;text-transform:uppercase}
.ml-gh span{font-size:12px;color:var(--muted)}
.ml-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}
.ml-grid.ml-g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.ml-t{border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:12px;display:flex;flex-direction:column;gap:8px;min-width:0}
.ml-th{display:flex;flex-direction:column;gap:2px}
.ml-th b{font-size:13.5px;line-height:1.3}
.ml-th small{font-size:11.5px;color:var(--gold);font-weight:700}
.ml-th small:empty{display:none}
.ml-hint{margin:0;font-size:12px;line-height:1.45;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ml-drop{padding:10px 8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:56px;font-size:12px}
.ml-drop strong{font-size:13.5px;color:var(--gold)}
.ml-files{max-height:220px;overflow:auto}
.ml-files .file{grid-template-columns:34px minmax(0,1fr) auto;gap:8px;font-size:12px}
.ml-files .thumb{width:34px;height:34px}
.ml-dr{padding:0;margin-top:4px}
.ml-dr summary{cursor:pointer;list-style:none;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;padding:14px 16px}
.ml-dr summary::-webkit-details-marker{display:none}
.ml-dr summary::before{content:"＋";color:var(--gold);font-weight:700}
.ml-dr[open] summary::before{content:"－"}
.ml-dr summary span{font-size:12px;color:var(--muted)}
.ml-dr[open]{padding-bottom:14px}
.ml-dr > :not(summary){margin-left:16px;margin-right:16px}
.ml-lead{margin:0 0 10px;font-size:13px;color:var(--muted)}
#tab-tu-lieu .refs{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:1000px){.ml-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){
  .ml-grid,.ml-grid.ml-g3{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .ml-t{padding:10px;gap:6px}
  .ml-hint{display:none}
  .ml-tabs{max-width:none}
  .ml-tabs button{padding:6px 6px;font-size:12.5px}
  #tab-tu-lieu .refs{grid-template-columns:1fr}
  #tab-tu-lieu .refs .grid4{grid-template-columns:1fr}
  #tab-tu-lieu .md-all{position:sticky;bottom:calc(8px + env(safe-area-inset-bottom,0px));z-index:5;background:var(--surface);box-shadow:0 6px 24px rgba(0,0,0,.35);padding:10px 12px}
  #tab-tu-lieu .md-all .btn.md-ok{width:100%;justify-content:center}
  .drow{grid-template-columns:1fr!important}
}
#tab-tu-lieu .ml-dr{padding:0}
#tab-tu-lieu .ml-dr[open]{padding-bottom:14px}
@media(max-width:600px){.ml-grid.ml-g3{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.ml-g3 .ml-t{padding:8px}.ml-g3 .ml-th b{font-size:12.5px}.ml-drop span{display:none}.ml-drop{min-height:44px}}
/* r387: gộp Duyệt tư liệu vào thanh đầu trang, nút Bỏ bài recap */
#tab-tu-lieu #mdAll{display:none!important}
#cfMedia .btn.md-ok{background:#23985a!important;background-image:none!important;border-color:#23985a!important;color:#fff!important;box-shadow:0 2px 0 #18703f!important}
@media(max-width:600px){#cfMedia .row-wrap{width:100%}#cfMedia .row-wrap .btn{flex:1 1 100%;justify-content:center}}
.rc2 .rc-hd{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.rc-drop{margin-left:auto;border:1px solid var(--line);background:transparent;color:var(--muted);font:600 12px var(--body);padding:6px 12px;border-radius:999px;cursor:pointer;min-height:32px}
.rc-drop:hover{border-color:var(--bad);color:var(--bad)}
/* r388: lịch đăng của chủ đề dạng lưới ô như Lịch 7 ngày */
.pl-sch{border:1px solid var(--line);border-radius:14px;padding:14px;margin-top:14px;background:var(--surface)}
.pl-sch-h{display:flex;flex-direction:column;gap:2px;margin-bottom:10px}
.pl-sch-h small{font-size:12px;color:var(--muted)}
.pl-eg{overflow-x:auto}
.pl-eh,.pl-er{display:grid;grid-template-columns:minmax(170px,1.4fr) repeat(7,minmax(46px,1fr)) 112px 36px;gap:5px;align-items:center;min-width:640px}
.pl-eh{font-size:11px;font-weight:700;color:var(--muted);text-align:center;padding:0 0 4px}
.pl-eh span:first-child{text-align:left}
.pl-er{margin-bottom:5px;padding:0;border:0}
.pl-er select{height:46px;min-width:0}
.pl-er input[type=time]{height:46px;min-width:0;padding:0 8px}
.pl-cell{position:relative;height:46px;border-radius:9px;background:var(--sunk);border:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;cursor:pointer;transition:background .15s,border-color .15s;user-select:none}
.pl-cell input{position:absolute;opacity:0;pointer-events:none}
.pl-cell b{font-size:11px;color:var(--muted);font-weight:700}
.pl-cell i{font-style:normal;font-size:11px;font-weight:700;display:none}
.pl-cell:hover{border-color:var(--gold)}
.pl-cell:has(input:checked){background:var(--gold);border-color:var(--gold)}
.pl-cell:has(input:checked) b{color:#1a1408;opacity:.7}
.pl-cell:has(input:checked) i{display:block;color:#1a1408}
.pl-cell:has(input:focus-visible){outline:2px solid var(--gold);outline-offset:2px}
.pl-x{height:36px;width:36px;border-radius:9px;border:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer}
.pl-x:hover{border-color:var(--bad);color:var(--bad)}
.pl-add{margin-top:6px;width:100%;height:42px;border:1.5px dashed var(--line);border-radius:10px;background:transparent;color:var(--gold);font:700 13px var(--body);cursor:pointer}
.pl-add:hover{border-color:var(--gold)}
@media(max-width:700px){
  .pl-eh{display:none}
  .pl-eh,.pl-er{min-width:0}
  .pl-er{grid-template-columns:repeat(7,minmax(0,1fr));padding:10px 0;border-bottom:1px solid var(--line);margin:0}
  .pl-er select{grid-column:1/-1;order:-2}
  .pl-er input[type=time]{grid-column:1/6}
  .pl-er .pl-x{grid-column:6/8;width:100%;height:46px}
  .pl-cell{height:50px}
}
.pl-eh,.pl-er{grid-template-columns:minmax(170px,1.4fr) repeat(7,minmax(46px,1fr)) 132px 36px}
.pl-er select,.pl-er input[type=time]{width:100%;box-sizing:border-box}
@media(max-width:700px){.pl-eh,.pl-er{grid-template-columns:repeat(7,minmax(0,1fr))}}
.pl-er select{max-width:none!important}
.rc-again{margin-left:auto;border:1px solid var(--gold);background:transparent;color:var(--gold);font:700 12px var(--body);padding:5px 12px;border-radius:999px;cursor:pointer;min-height:30px}
.rc-again:hover{background:var(--gold);color:#1a1408}
/* r390: Sửa chủ đề chia 2 cột: trái nội dung, phải lịch */
.pl-two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:18px;align-items:start}
.pl-left{display:flex;flex-direction:column;gap:2px;min-width:0}
.pl-left textarea{resize:vertical;min-height:0}
.pl-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:8px}
.pl-two .pl-sch{margin-top:0;position:sticky;top:0}
.pl-two .pl-er{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;min-width:0;padding:10px 0;border-bottom:1px solid var(--line);margin:0}
.pl-two .pl-er:first-child{padding-top:0}
.pl-two .pl-er select{grid-column:1/5;order:-2;height:42px}
.pl-two .pl-er input[type=time]{grid-column:5/7;order:-1;height:42px}
.pl-two .pl-er .pl-x{grid-column:7/8;order:-1;width:100%;height:42px}
.pl-two .pl-cell{height:48px}
@media(max-width:900px){.pl-two{grid-template-columns:1fr}.pl-two .pl-sch{position:static}}
@media(max-width:600px){.pl-two .pl-er select{grid-column:1/-1}.pl-two .pl-er input[type=time]{grid-column:1/6;order:0}.pl-two .pl-er .pl-x{grid-column:6/8;order:0}}
/* r392: khuôn chung cho luồng sản xuất video và bài hình */
.ml-grid.ml-g2{grid-template-columns:repeat(2,minmax(0,1fr))}
/* Chuẩn chung các xưởng: tuỳ chọn bên trái, kết quả (nhật ký thiết kế) bên phải */
.pv-design.pv-d2{display:grid;grid-template-columns:minmax(300px,1fr) minmax(0,1.5fr);gap:16px;max-width:none;align-items:start}
.pv-d2 .pv-dside{order:1;position:sticky;top:12px}
.pv-d2 > .log{order:2;min-width:0}
@media(max-width:900px){.pv-design.pv-d2{grid-template-columns:1fr}.pv-d2 .pv-dside{order:0;position:static}}
@media(max-width:600px){.ml-grid.ml-g2{grid-template-columns:repeat(2,minmax(0,1fr))}.pv-sb .row-wrap{width:100%}.pv-sb .row-wrap .btn{flex:1 1 100%;justify-content:center}}
.box.ml-dr{padding:0}.box.ml-dr[open]{padding-bottom:14px}
/* r394: một khuôn nút cho toàn Xưởng (giữ quy ước bt90: nút vàng chữ trắng)
   - Mọi nút: vàng, chữ trắng, cao 40px (bản nhỏ 32px), bo 10px/8px, cùng cỡ chữ.
   - Duyệt / chốt / xếp lịch: xanh lá (ok, md-ok, sc-ok, v-ok, rc-okb).
   - Xoá, dừng: đỏ (danger, run-stop).
   - Lựa chọn thay thế: đen viền vàng (btn-dk). Nút phụ: vàng sẫm (ghost). */
html body .btn{height:40px;min-height:40px;padding:0 16px;border-radius:10px;font-size:13.5px;line-height:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;box-sizing:border-box;text-decoration:none}
html body .btn.sm{height:32px;min-height:32px;padding:0 12px;border-radius:8px;font-size:12.5px}
html body .btn.primary,html body .btn.gold,html body .btn.teal,html body .btn.btn-gy{background:#b0832f!important;border-color:#c79a45!important;color:#fff!important}
html body .btn.ok,html body .btn.md-ok,html body .btn.sc-ok,html body .btn.v-ok,html body .btn.rc-okb{background:#23985a!important;background-image:none!important;border-color:#2aa866!important;color:#fff!important;box-shadow:0 2px 0 #18703f!important}
html body .btn.ok:hover:not(:disabled),html body .btn.md-ok:hover:not(:disabled),html body .btn.sc-ok:hover:not(:disabled),html body .btn.v-ok:hover:not(:disabled),html body .btn.rc-okb:hover:not(:disabled){background:#1f8a52!important}
html body .btn.run-stop{background:#c0453a!important;border-color:#d4574b!important;color:#fff!important;box-shadow:0 2px 0 rgba(0,0,0,.25)}
html body .btn.pl-add{width:100%;margin-top:8px}
html body .pl-er .btn.pl-x{width:100%;height:42px;min-height:42px;padding:0}
html body .btn.rc-again{margin-left:auto}
html body .btn.rc-drop{margin-left:auto}
/* r394: cỡ nút cố định mọi nơi. Máy tính 40px / nhỏ 32px; điện thoại 44px / nhỏ 40px cho dễ bấm */
html body .btn{height:40px!important;min-height:40px!important;border-radius:10px!important;font-size:13.5px!important}
html body .btn.sm{height:32px!important;min-height:32px!important;border-radius:8px!important;font-size:12.5px!important}
@media(max-width:700px){html body .btn{height:44px!important;min-height:44px!important}html body .btn.sm{height:40px!important;min-height:40px!important}}
/* r395: thư mục kho sửa ngay tại chỗ */
.fd-lead{margin:0 0 12px}
.fd-h{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 8px}
.fd-h b{font-size:12px;letter-spacing:.07em;text-transform:uppercase}
.fd-h .fd-kc{display:inline-flex;gap:6px;flex-wrap:wrap;margin:0}
.fd-tb{border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:8px}
.fd-th,.fd-r{display:grid;grid-template-columns:150px minmax(140px,.8fr) minmax(200px,1.6fr) 28px 64px 40px;gap:8px;align-items:center;padding:8px 10px}
.fd-th{font-size:11px;font-weight:700;color:var(--muted);background:var(--sunk);border-bottom:1px solid var(--line)}
.fd-th span:nth-child(3){grid-column:3/5}
.fd-r{border-bottom:1px solid var(--line)}
.fd-r select,.fd-r input{height:38px;min-width:0;width:100%;box-sizing:border-box}
.fd-r input[data-l]{font-size:12.5px;color:var(--muted)}
.fd-open{color:var(--gold);text-decoration:none;font-weight:700;text-align:center}
.fd-n{font-size:12.5px;font-weight:700;text-align:right;color:var(--gold)}
.fd-r .btn.danger{width:36px;padding:0}
.fd-empty{padding:14px 10px}
.fd-tf{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:10px}
.fd-sv{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}
.fd-st{margin:0 0 14px}
.fd-lk{all:unset;cursor:pointer;color:var(--gold);font-weight:700}
.fd-lk:hover{text-decoration:underline}
@media(max-width:760px){.fd-th{display:none}.fd-r{grid-template-columns:1fr 1fr 40px;padding:10px}.fd-r select{grid-column:1/2}.fd-r input[data-n]{grid-column:2/4}.fd-r input[data-l]{grid-column:1/-1;order:5}.fd-r .fd-open{display:none}.fd-r .fd-n{grid-column:1/3;text-align:left;order:6}.fd-r .fd-n::after{content:" file"}.fd-r .btn.danger{order:7}}
.sc3-back{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 8px}
/* r397: ô số Tổng quan đăng bài: số lớn trên, nhãn dưới (không bị lẫn lớp .xs của trang khác) */
.xh-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.xh-stats .xs{display:flex!important;flex-direction:column;justify-content:center;gap:4px;grid-template-columns:none!important;padding:12px 14px!important;min-height:72px;border-radius:12px;position:relative;overflow:hidden}
.xh-stats .xs::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--gold);opacity:.55}
.xh-stats .xs.warn::before{background:#e8b04a;opacity:1}.xh-stats .xs.bad::before{background:var(--bad);opacity:1}
.xh-stats .xs b{font-size:26px!important;line-height:1!important;white-space:nowrap;overflow:visible!important;text-overflow:clip!important}
.xh-stats .xs small{display:block;font-size:12px;font-weight:600;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.xh-stats .xs.bad b{color:var(--bad)}.xh-stats .xs.warn b{color:#e8b04a}
@media(max-width:520px){.xh-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* r399: ô Tìm nhanh toàn Xưởng */
.gs-w{position:relative;flex:none}
.gs-f{display:flex;align-items:center;gap:8px;height:40px;padding:0 10px;border-radius:10px;border:1px solid #2e2920;background:#141210;color:#a99c86;cursor:text}
.gs-f:focus-within{border-color:#d9b45c;background:#1a1712}
.gs-f>span{font-size:16px;line-height:1}
.gs-f input{all:unset;flex:1;min-width:0;font:500 13.5px var(--body);color:#f4efe2}
.gs-f input::placeholder{color:#7d7564}
.gs-f kbd{font:600 10.5px var(--body);color:#7d7564;border:1px solid #2e2920;border-radius:6px;padding:2px 6px;white-space:nowrap}
.gs-ic{display:none;width:40px;height:40px;border-radius:10px;border:1px solid #2e2920;background:#141210;color:#f4efe2;font-size:18px;cursor:pointer}
.gs-res{position:fixed;z-index:400;max-height:min(70vh,560px);overflow-y:auto;background:#141210;border:1px solid #3a3326;border-radius:14px;box-shadow:0 18px 48px rgba(0,0,0,.55);padding:6px}
.gs-g{font:700 10.5px var(--body);letter-spacing:.14em;text-transform:uppercase;color:#7d7564;padding:10px 10px 4px}
.gs-i{display:flex;flex-direction:column;gap:2px;padding:9px 10px;border-radius:10px;text-decoration:none;color:#f4efe2}
.gs-i b{font-size:13.5px;font-weight:600}
.gs-i small{font-size:11.5px;color:#a99c86;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gs-i mark{background:rgba(217,180,92,.3);color:inherit;border-radius:3px;padding:0 1px}
.gs-i.on,.gs-i:hover{background:rgba(217,180,92,.14)}
.gs-empty{padding:16px 12px;font-size:13px;color:#a99c86}
@media (min-width:1100px){#shell>.top .gs-w{margin:0 0 4px}}
@media (max-width:1099px){
  .gs-ic{display:block}
  .gs-f{display:none}
  .gs-w.open{position:fixed;left:8px;right:8px;top:calc(8px + env(safe-area-inset-top,0px));z-index:401}
  .gs-w.open .gs-ic{display:none}
  .gs-w.open .gs-f{display:flex;height:48px;box-shadow:0 10px 30px rgba(0,0,0,.5)}
  .gs-w.open .gs-f kbd{display:none}
}
/* r400: Nguyên liệu dựng chia theo thư mục: thẻ thư mục dùng chung khuôn thẻ folder (pv-card) */
.mt-dirs{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
a.mt-dir2{text-decoration:none;color:inherit}
.mt-crumb{grid-column:1/-1;display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 4px}
.mt-g>.mt-dirs{grid-column:1/-1}

/* r402: toàn Xưởng dùng font Manrope giống website thesoundhealing.vn */
html,body,button,input,select,textarea,.modal,.btn,dialog{font-family:var(--body)}
h1,h2,h3,h4,h5,h6{font-family:var(--display)}
code,kbd,pre,.mono{font-family:var(--mono,ui-monospace,SFMono-Regular,Menlo,monospace)}
h1 em,h2 em,h3 em{font-style:normal}
/* r404: giao diện điện thoại gọn như app: menu dạng danh sách nhóm, đầu trang ngắn, danh sách tin nhắn một dòng */
@media (max-width:760px){
  /* Menu: mỗi nhóm là một thẻ danh sách, không còn ô trống */
  .m-sheet-card{padding:6px 14px calc(18px + env(safe-area-inset-bottom))}
  .m-sheet-card h4{margin:16px 4px 6px;font-size:10.5px;letter-spacing:.14em}
  .m-grid{display:flex!important;flex-direction:column;gap:0;background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden}
  .m-grid a{flex-direction:row!important;justify-content:flex-start!important;align-items:center;gap:12px!important;min-height:50px!important;padding:6px 14px!important;border-radius:0!important;border:0!important;border-bottom:1px solid var(--line)!important;background:transparent!important;font-size:15px;font-weight:600;text-align:left;position:relative}
  .m-grid a:last-child{border-bottom:0!important}
  .m-grid a::after{content:"›";margin-left:auto;font-size:20px;color:var(--muted);font-weight:400}
  .m-grid a.on{background:color-mix(in srgb,#d9b45c 12%,transparent)!important}
  .m-grid .m-ic{width:32px!important;height:32px!important;border-radius:9px!important;font-size:16px!important;flex:none}
  .m-ci{flex-direction:row!important;align-items:center;gap:12px;padding:12px 14px!important;border-radius:16px!important;background:#d9b45c!important}
  .m-ci b{display:flex;align-items:center;gap:10px;font-size:15px}
  .m-ci small{margin-left:auto;font-size:12px;opacity:.75}
  .m-acc{margin-top:16px!important;padding:10px 14px!important;border-radius:16px!important}
  /* Đầu trang (xh): ngắn gọn, bỏ đoạn mô tả dài */
  .xh{padding:14px!important;gap:12px!important;border-radius:16px!important;margin-bottom:12px!important}
  .xh-t h1{font-size:26px!important;margin:2px 0 6px!important}
  .xh-t>p{display:none}
  .xh-t .hb-kick{font-size:10px}
  .xh .hb-acts{gap:8px!important}
  /* Hộp thư */
  .as-pw .as-sw{padding:8px 12px!important;border-radius:14px!important}
  .as-chs{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto;gap:6px!important;margin:10px -14px 0;padding:0 14px 4px;scrollbar-width:none}
  .as-chs::-webkit-scrollbar{display:none}
  .as-chs>*{flex:none;font-size:12.5px!important;padding:4px 10px 4px 4px!important;white-space:nowrap}
  .xh-i .as-chart{height:90px!important}
  .as-rail{flex-wrap:nowrap!important;overflow-x:auto;scrollbar-width:none;border-radius:14px!important}
  .as-rail::-webkit-scrollbar{display:none}
  .as-rail>*{flex:none;white-space:nowrap}
  .as-flt{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto;gap:6px!important;scrollbar-width:none;padding-bottom:2px}
  .as-flt::-webkit-scrollbar{display:none}
  .as-flt>*{flex:none;height:36px;padding:0 14px!important;font-size:13.5px!important}
  .as-row{display:grid!important;grid-template-columns:40px minmax(0,1fr)!important;gap:10px!important;padding:10px 4px!important;align-items:start}
  .as-row .as-av{width:40px!important;height:40px!important;font-size:15px!important}
  .as-rb{min-width:0}
  .as-top{display:flex!important;align-items:center;gap:6px;flex-wrap:nowrap!important;min-width:0}
  .as-top b{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14.5px}
  .as-top .chip{flex:none;font-size:10.5px!important;padding:1px 7px!important;height:auto!important}
  .as-top .small.muted{flex:none;font-size:11.5px;white-space:nowrap}
  .as-rb>.small.muted{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}
  .as-last{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:13px!important;margin:2px 0 4px}
  .as-row .ch-st{font-size:11px!important;padding:1px 8px!important}
}
/* r405: khối Chiến dịch trên Meta gọn: tiêu đề và nút Làm mới cùng hàng, khoảng thời gian một hàng */
.rc-wrap .rc-head h3{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:nowrap}
.rc-wrap .rc-ref{margin-left:auto;flex:none;height:32px;padding:0 12px;border-radius:999px;gap:6px;font:600 12.5px var(--body)}
.rc-wrap .rc-ref small{font:500 11.5px var(--body);color:var(--muted);letter-spacing:0}
.rc-wrap .rc-head>p{margin:4px 0 0;font-size:12.5px;line-height:1.45}
.rc-wrap .rg-seg{display:flex;flex-wrap:nowrap!important;width:100%;overflow-x:auto;scrollbar-width:none;margin:10px 0 2px}
.rc-wrap .rg-seg::-webkit-scrollbar{display:none}
.rc-wrap .rg-seg button{flex:1 0 auto;min-height:34px;padding:0 10px;font-size:13px;white-space:nowrap}
@media(max-width:600px){.rc-wrap .rc-ref small{display:none}.rc-wrap .rg-seg button{padding:0 8px;font-size:12.5px}}
/* r407: Bình luận seeding */
.sd-box{border:1px solid var(--line);border-radius:12px;padding:12px;background:var(--surface);display:flex;flex-direction:column;gap:8px}
.sd-h{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;flex-wrap:wrap}
.sd-h>div{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 220px}
.sd-h b{font-size:13.5px}.sd-h small{font-size:12px;color:var(--muted);line-height:1.4}
.sd-list{display:flex;flex-direction:column;gap:6px}
.sd-r{display:grid;grid-template-columns:118px minmax(0,1fr) 36px;gap:6px;align-items:start}
.sd-r select{height:38px;min-width:0;width:100%}
html body .sd-r textarea{min-height:38px!important;height:auto;max-height:132px;field-sizing:content;resize:vertical;overflow:auto;font:inherit;font-size:13px;line-height:1.45;padding:8px 10px;box-sizing:border-box;width:100%}
@media (max-width:520px){.sd-r{grid-template-columns:minmax(0,1fr) 36px}.sd-r select{grid-column:1/-1}}
html body .sd-r .btn.danger{width:36px;padding:0;height:38px!important;min-height:38px!important}
.sd-add{align-self:flex-start}
.sd-panel .sd-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}
.sd-it{border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:var(--surface);display:flex;flex-direction:column;gap:6px}
.sd-it-h{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12.5px}
.sd-it-h small{color:var(--muted)}.sd-it-h a{margin-left:auto}
.sd-it p{margin:0;font-size:13px;line-height:1.5}
.sd-done{margin-top:12px}.sd-done summary{cursor:pointer;font-size:13px;font-weight:600;margin-bottom:8px}
.sd-sent{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}
.sd-si{border:1px solid var(--line);border-radius:10px;padding:8px 10px;font-size:12.5px}.sd-si p{margin:4px 0 0;font-size:13px}
@media(max-width:600px){.sd-r{grid-template-columns:1fr 40px}.sd-r select{grid-column:1/2}.sd-r textarea{grid-column:1/-1;order:3}}
/* r408: kết quả Tìm nhanh gọn: biểu tượng, tên một dòng, nhóm ở dòng phụ */
.gs-res{padding:6px;border-radius:14px}
.gs-g{padding:10px 10px 4px;font-size:10px}
.gs-i{flex-direction:row!important;align-items:center;gap:10px!important;padding:7px 10px!important;min-height:44px;box-sizing:border-box}
.gs-ri{flex:none;width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:#1f1b14;color:#d9b45c;font-size:14px;font-style:normal;line-height:1;overflow:hidden}
.gs-ri svg{width:16px;height:16px}
.gs-ri .bl,.gs-ri i{width:16px;height:16px}
.gs-tx{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}
.gs-tx b{font-size:13.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gs-tx small{font-size:11.5px;color:#8f8573;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gs-tag{flex:none;font-style:normal;font-size:10.5px;font-weight:700;color:#d9b45c;border:1px solid #3a3326;border-radius:999px;padding:2px 8px}
.gs-i.on .gs-ri,.gs-i:hover .gs-ri{background:#d9b45c;color:#141109}
/* r409: hàng nút Đặt lịch & check-in: các ô bằng nhau, một dòng, gọn */
.qy-tabs{display:flex!important;gap:4px!important;padding:4px!important;border-radius:14px!important}
.qy-tabs button{flex:1 1 0;min-width:0;min-height:44px!important;padding:0 10px!important;gap:6px!important;border-radius:10px!important;font-size:14px!important;white-space:nowrap}
.qy-tabs button i{font-size:15px!important;flex:none}
.qy-tabs button.on{box-shadow:none!important}
@media(max-width:600px){.qy-tabs button{flex-direction:column;gap:2px!important;font-size:11.5px!important;padding:6px 4px!important}.qy-tabs button i{font-size:17px!important}}
/* r410: Khách để lại số, chuỗi email, Conversions API */
.ld-list{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:12px;overflow:hidden;margin:10px 0}
.ld-r{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1.6fr) 130px;gap:10px;align-items:center;padding:8px 12px;border-bottom:1px solid var(--line)}
.ld-r:last-child{border-bottom:0}
.ld-who{display:flex;flex-direction:column;min-width:0}.ld-who b{font-size:13.5px}.ld-who small{font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ld-ct{display:flex;gap:6px;align-items:center;flex-wrap:wrap;min-width:0}
.ld-r select{height:34px}
.ld-seq{margin-top:12px;border-top:1px solid var(--line);padding-top:10px}
.ld-seq summary{cursor:pointer;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ld-st{border:1px solid var(--line);border-radius:12px;padding:10px;margin:8px 0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ld-sth{grid-column:1/-1;display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600}.ld-sth input{width:70px;height:34px}
.ld-lg{display:flex;flex-direction:column;gap:6px}.ld-lg label{font-size:11.5px;color:var(--muted);font-weight:700}
.ld-lg textarea{font:inherit;font-size:13px;line-height:1.5}
.capi-ev{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}.capi-ev span{font-size:12px;border:1px solid var(--line);border-radius:999px;padding:3px 10px}
@media(max-width:700px){.ld-r{grid-template-columns:1fr}.ld-st{grid-template-columns:1fr}}
/* r412 Zalo OA */
.zl-box{margin:14px 0}.zl-box .panel-h{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.zl-ok{color:#2e7d4f;font-weight:600;font-size:13px}.zl-off{color:var(--muted);font-size:13px}
.zl-two{display:grid;grid-template-columns:1fr 1fr;gap:18px}@media(max-width:760px){.zl-two{grid-template-columns:1fr}}
.zl-two>div{display:flex;flex-direction:column;gap:8px;min-width:0}
.zl-st{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;margin-top:6px}.zl-st b{flex:none;width:22px;height:22px;border-radius:50%;background:var(--gold);color:#fff;display:grid;place-items:center;font-size:12px}
.zl-url{display:flex;gap:8px;align-items:center}.zl-url code{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:7px 10px;border:1px solid var(--line);border-radius:8px;font-size:12.5px}
.zl-f{display:flex;flex-direction:column;gap:6px}.zl-f input,.zl-f textarea{width:100%}
.zl-hi{box-shadow:0 0 0 3px var(--gold);transition:box-shadow .3s}
.zl-mini{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.zl-ic{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:rgba(0,104,255,.1);flex:none}
.zl-mt{flex:1;min-width:180px;display:flex;flex-direction:column;gap:2px}.zl-mt small{color:var(--muted);font-size:12.5px}.zl-ma{display:flex;gap:6px}
.zl-box .panel-h .btn{margin-left:auto}
/* r418 thẻ Zalo, bot */
.ch-ic.zl-i{background:#fff;padding:3px}.ch-ic.zl-i .bl{width:100%;height:100%}
.zb-r{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:10px 0;border-bottom:1px solid var(--line)}.zb-r b{min-width:120px}.zb-r .btn{margin-left:auto}
.zb-code{font-family:var(--mono,monospace);letter-spacing:.06em;color:var(--gold)}
/* r431 Quản lý app: cần chú ý, tìm/lọc, hoá đơn */
.ap-kpis{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
.ap-kpi.warn{border-color:color-mix(in srgb,#d9822b 45%,var(--line))}.ap-kpi.warn b{color:#d9822b}
.ap-sub{margin:0 0 14px;display:inline-flex}
.ap-tag.warn{background:color-mix(in srgb,#d9822b 14%,transparent);color:#b5651d;border-color:transparent}
.ap-tag.ok{background:color-mix(in srgb,#2fb67c 14%,transparent);color:#1f8a5b;border-color:transparent}
.ap-iss{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}
.ap-attn-l{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.ap-attn-l li{display:grid;grid-template-columns:minmax(160px,1fr) 2fr auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid var(--line)}
.ap-attn-l li:first-child{border-top:0}
@media (max-width:700px){.ap-attn-l li{grid-template-columns:1fr auto}.ap-attn-l .ap-iss{grid-column:1/-1;order:3}}
.ap-tools{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0 0 12px}
.ap-tools input[type=search]{flex:1 1 240px;min-width:0;min-height:40px;padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--fg);font:inherit}
.ap-fil{display:flex;flex-wrap:wrap;gap:6px}.ap-fil .chip{cursor:pointer;font:inherit;font-size:13px}.ap-fil .chip small{opacity:.7}
.ap-months{display:flex;gap:10px;align-items:flex-end;overflow-x:auto;padding:4px 0}
.ap-m{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:44px}
.ap-m i{display:block;width:22px;background:var(--gold);border-radius:4px 4px 0 0}
.ap-m b{font-size:12px;font-variant-numeric:tabular-nums}.ap-m small{color:var(--muted);font-size:11px}
.ap-tbl{min-width:900px}.ap-tbl td .mono{word-break:break-all}
@media (max-width:700px){.ap-sub{display:flex;overflow-x:auto}.ap-sub button{white-space:nowrap}}
.ap-doms{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.ap-dom{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
/* r431 thêm ảnh cho folder buổi: folder mới, link Drive, tìm trong Drive */
.ev-addbar{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.ea-res ul{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;max-height:50vh;overflow:auto}
.ea-res li{display:flex;gap:8px;align-items:center;padding:8px 0;border-top:1px solid var(--line)}.ea-res li>div{flex:1;min-width:0}.ea-res li b{overflow-wrap:anywhere}
.ev-upfloat{position:fixed;right:max(16px,env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:60;width:min(360px,calc(100vw - 32px));background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px;box-shadow:0 10px 30px rgba(0,0,0,.25);display:flex;flex-direction:column;gap:6px}
.ea-two{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:start}
.ea-or{align-self:center;display:flex;align-items:center;justify-content:center}.ea-or span{font-size:12px;color:var(--muted);white-space:nowrap}
.ea-drop{position:relative;display:flex;align-items:center;justify-content:center;min-height:48px;padding:10px 12px;border:1px dashed var(--gold);border-radius:12px;cursor:pointer;color:var(--gold);font-weight:600;text-align:center}
.ea-drop:hover{background:color-mix(in srgb,var(--gold) 8%,transparent)}.ea-drop input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
@media (max-width:720px){.ea-two{grid-template-columns:1fr}.ea-or{justify-content:flex-start}}
/* r433 Duyệt & chạy kế hoạch: việc đã xong gạch xanh, việc chưa làm được có dấu ! thay ô tích */
.pl-step.done{border-color:color-mix(in srgb,#2fb67c 45%,var(--line));background:color-mix(in srgb,#2fb67c 7%,transparent)}
.pl-step.done b{text-decoration:line-through;text-decoration-color:#2fb67c;color:var(--muted)}
.pl-ck{flex:none;width:20px;height:20px;border-radius:50%;background:#2fb67c;color:#fff;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;margin-top:1px}
.pl-ok{color:#2fb67c;font-size:13px;font-weight:600}
.pl-lock{flex:none;width:20px;height:20px;border-radius:50%;border:1.5px solid var(--bad,#e0443a);color:var(--bad,#e0443a);font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;margin-top:1px}
/* Cài Xưởng lên màn hình chính */
.inst{margin-top:14px;border:1px solid var(--line,#e5dccb);border-radius:14px;padding:12px;text-align:left}
.inst-row{display:flex;align-items:center;gap:12px}
.inst-row img{width:40px;height:40px;border-radius:10px;flex:none}
.inst-t{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.inst-t b{font-size:14.5px}.inst-t span{font-size:12.5px;color:var(--muted)}
.inst-b{flex:none;min-height:40px}
.inst-s{margin:10px 0 0;padding:0;list-style:none;font-size:13.5px;line-height:1.45;display:flex;flex-direction:column;gap:8px}
.inst-s li{display:flex;align-items:center;gap:10px}
.inst-n{width:12px;color:var(--gold,#a67c2e);font-weight:800}
.inst-ic{flex:none;width:34px;height:34px;border-radius:9px;background:#fff;border:1px solid var(--line,#e5dccb);display:grid;place-items:center}
.inst-s li>span:last-child{flex:1;min-width:0}
/* Tài liệu cho Bộ não học */
#brDocs .bd-add{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:12px;margin-bottom:12px}
@media(max-width:700px){#brDocs .bd-add{grid-template-columns:1fr}}
.bd-drop{display:flex;flex-direction:column;justify-content:center;gap:4px;min-height:96px;padding:12px 14px;border:1.5px dashed var(--gold,#b08e45);border-radius:12px;cursor:pointer;text-align:center}
.bd-drop b{font-size:14px}.bd-drop span{font-size:12px;color:var(--muted)}
.bd-drop:hover{background:var(--gold-soft,rgba(194,160,86,.08))}
.bd-note{display:flex;flex-direction:column;gap:8px;min-width:0}
.bd-note textarea{width:100%;resize:vertical}
.bd-note .row-wrap{display:flex;gap:8px;flex-wrap:wrap}.bd-note .row-wrap input{flex:1;min-width:160px}
.bd-learn{color:var(--gold,#a67c2e);margin:4px 0 10px}
.bd-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.bd-list li{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid var(--line,#e5dccb);border-radius:12px}
.bd-i{flex:none;width:28px;text-align:center;font-size:18px;line-height:1.4}
.bd-t{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.bd-t b{font-size:14px}.bd-t small{font-size:12px;color:var(--muted)}
.bd-t span{font-size:12.5px;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
/* Quản lý app › Bảng giá */
.ap-prices{display:flex;flex-direction:column;gap:10px}
.ap-pr{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,220px) minmax(0,1.6fr) minmax(0,1.2fr);gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--line,#e5dccb);border-radius:12px}
.ap-pr-t{display:flex;flex-direction:column;gap:2px;min-width:0}
.ap-pr-i{display:flex;align-items:center;gap:6px}.ap-pr-i input{width:100%;font-weight:700;text-align:right}
@media(max-width:900px){.ap-pr{grid-template-columns:1fr}}
.ap-den-t{min-width:880px}.ap-den-t td:first-child{min-width:190px}
.ap-pr-i span{white-space:nowrap}

/* ===== Quản lý app: hồ sơ một doanh nghiệp ===== */
.ap-name{color:inherit;text-decoration:none}
.ap-name:hover b{color:var(--gold);text-decoration:underline}
.aw-head{align-items:flex-start}
.aw-back{display:inline-block;margin-bottom:6px;color:var(--muted);text-decoration:none}
.aw-back:hover{color:var(--gold)}
.aw-tags{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px}
.aw-contact{margin:8px 0 0;overflow-wrap:anywhere}
.aw-acts{justify-content:flex-end}
.aw-iss{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}
.aw-kpis{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
.aw-tabs{margin-bottom:14px;overflow-x:auto;max-width:100%}
.aw-tabs small{color:var(--muted);font-weight:400}
.aw-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.aw-grid>.panel{margin:0}
.aw-span{grid-column:1/-1}
.aw-spark{display:flex;align-items:flex-end;gap:2px;height:92px;padding-top:4px;border-bottom:1px solid var(--line)}
.aw-spark i{flex:1;min-width:2px;background:var(--gold);border-radius:2px 2px 0 0}
.aw-spark i.z{background:var(--line)}
.aw-spark-x{display:flex;justify-content:space-between;margin-top:4px}
.aw-meters{display:flex;flex-direction:column;gap:12px}
.aw-meter-t{display:flex;justify-content:space-between;font-size:13px}
.aw-meter-t b{font-variant-numeric:tabular-nums}
.aw-meter .ap-bar{max-width:none;height:6px}
.aw-chips{display:flex;flex-wrap:wrap;gap:6px}
.aw-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px;margin-bottom:12px}
.aw-stat{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--sunk)}
.aw-stat b{font-size:20px;font-variant-numeric:tabular-nums}
.aw-stat span{font-size:12px;color:var(--muted)}
.aw-log{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.aw-log li{display:grid;grid-template-columns:110px 1fr;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}
.aw-log li:last-child{border-bottom:0}
.aw-ext{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}
.aw-ext .btn{display:flex;flex-direction:column;align-items:flex-start;gap:2px;height:auto;padding:10px 12px;text-align:left}
@media (max-width:760px){.aw-grid{grid-template-columns:1fr}.aw-acts{justify-content:flex-start}.aw-log li{grid-template-columns:1fr;gap:2px}}
.aw-live{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:0 0 12px;padding:10px 14px;border-radius:12px;background:#14120f;color:#e6c47a;font-size:13px}
.aw-live .btn{border-color:#e6c47a;color:#e6c47a;background:transparent}
.ap-fg{margin-bottom:10px}
.ap-fg-t{display:block;margin:0 0 6px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
/* Thẻ Mè Đen: nền đen chữ vàng, ánh vàng lướt qua (giống nút Hệ thống Elite) */
.seg button.ap-den-tab{position:relative;overflow:hidden;background:#14120f;color:#e6c47a;border:1px solid #6b5627;margin:0 2px;letter-spacing:.01em}
.seg button.ap-den-tab i{font-style:normal;font-size:10px;color:#c2a056;margin-right:2px}
.seg button.ap-den-tab::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 35%,rgba(230,196,122,.35) 50%,transparent 65%);transform:translateX(-120%);animation:apDenFlash 3.2s ease-in-out infinite}
.seg button.ap-den-tab:hover{border-color:#e6c47a;color:#f3d999}
.seg button.ap-den-tab.on{background:#0b0a08;color:#f3d999;border-color:#e6c47a;box-shadow:0 0 0 1px #e6c47a inset,0 2px 8px rgba(194,160,86,.35)}
@keyframes apDenFlash{0%,55%{transform:translateX(-120%)}85%,100%{transform:translateX(120%)}}
@media (prefers-reduced-motion:reduce){.seg button.ap-den-tab::after{animation:none;display:none}}
/* Bảng tính năng dạng cần gạt (Sửa doanh nghiệp) */
.ap-fx{margin-top:4px}
.fx-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px}
.fx-head h3{margin:0 0 2px;font-size:15px}
.fx-head p{margin:0;font-size:13px;color:var(--muted);max-width:62ch}
.fx-mine{color:var(--gold);font-weight:600}
.fx-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;align-items:start}
.fx-g{border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:4px 14px}
.fx-g h4{margin:10px 0 2px;font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);font-weight:600}
.fx-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--line)}
.fx-g h4+.fx-row{border-top:0}
.fx-t{min-width:0;display:flex;flex-direction:column;gap:2px}
.fx-t b{font-size:14px;font-weight:600;color:var(--muted)}
.fx-row.on .fx-t b{color:var(--fg)}
.fx-t small{font-size:12px;color:var(--muted)}
.fx-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--line);margin-right:6px;vertical-align:middle}
.fx-dot.ok{background:var(--ok)}
.fx-undo{all:unset;cursor:pointer;color:var(--muted);text-decoration:underline;font-size:12px}
.fx-undo:hover{color:var(--gold)}
.fx-sw{flex:none;position:relative;width:46px;height:28px;border-radius:999px;border:1px solid var(--line);background:var(--sunk);cursor:pointer;padding:0;transition:background .18s,border-color .18s}
.fx-sw i{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .18s}
.fx-sw[aria-checked="true"]{background:var(--gold);border-color:var(--gold)}
.fx-sw[aria-checked="true"] i{transform:translateX(18px)}
.fx-sw:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
@media (max-width:640px){.fx-head{flex-direction:column}}
/* Bảng tính năng mặc định từng gói */
.pf-t{min-width:760px}
.pf-t td,.pf-t th{vertical-align:middle}
.pf-c{text-align:center;width:120px}
.pf-c .fx-sw{margin:0 auto}
.pf-g td{font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);font-weight:600;background:var(--sunk);padding-top:10px}
/* Hộp thư đi cùng nút Đặt lịch & check-in (đầu menu) */
#shell>.top .nav a.nav-inbox{margin:-6px 0 10px}
body.is-reception .nav a.nav-inbox{display:none!important}
.panel.warn{border-color:var(--warn);background:var(--warn-soft)}.panel.warn h2{color:var(--warn)}
/* r465: nút gạt bật/tắt chiến dịch và mẫu quảng cáo thay cho nút Tạm dừng */
.rc-tog{display:inline-flex;align-items:center;gap:8px}
.rc-tog .fx-sw{margin:0}
.rc-tog .fx-sw[aria-checked="true"]{background:var(--ok);border-color:var(--ok)}
.brand-txt b{max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Quầy: ngôn ngữ email và ảnh */
.qy-lng{margin:0 16px 14px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.qy-lng-r{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:8px}
.qy-lng-s{display:inline-grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border-radius:12px;background:var(--sunk)}
.qy-lng-s button{min-height:40px;min-width:108px;border:0;border-radius:9px;background:transparent;color:var(--muted);font:700 13.5px var(--body);cursor:pointer}
.qy-lng-s button.on{background:var(--fg);color:var(--bg)}

/* Bảng giá gói: bảng gọn, nhập bên trái, khách trả bên phải */
.pz .panel-h{align-items:flex-start;gap:12px;flex-wrap:wrap}
.pz .tbl-wrap{margin-top:12px}
.pz-t{width:100%;border-collapse:separate;border-spacing:0;font-size:14px;min-width:760px}
.pz-t th,.pz-t td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}
.pz-t thead th{font-size:11.5px;font-weight:700;letter-spacing:.03em;color:var(--muted);background:var(--sunk);border-bottom:1px solid var(--line)}
.pz-t thead tr:first-child th{padding-top:12px}
.pz-t th.pz-g{text-align:left;font-size:16px;font-weight:800;color:var(--fg);letter-spacing:0;vertical-align:bottom;width:24%}
.pz-t th.pz-grp{text-align:center;text-transform:uppercase;font-size:10.5px;letter-spacing:.1em;border-bottom:1px dashed var(--line)}
.pz-t .pz-out{background:color-mix(in srgb,var(--sunk) 60%,#e9c46a 12%)}
.pz-t tbody th{text-align:left;font-weight:500}
.pz-t tbody th b{font-size:15px;margin-right:6px}.pz-t tbody th small{display:block;color:var(--muted);font-size:12px;margin-top:2px}
.pz-t tbody th .ap-tag{margin-right:4px;vertical-align:1px}
.pz-t tbody tr:last-child th,.pz-t tbody tr:last-child td{border-bottom:0}
.pz-t tbody tr:hover td,.pz-t tbody tr:hover th{background:var(--sunk)}
.pz-in{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:0 10px;min-height:40px;transition:border-color .15s}
.pz-in:focus-within{border-color:#c2a056;box-shadow:0 0 0 3px #c2a05633}
.pz-in input{border:0!important;background:transparent!important;box-shadow:none!important;width:110px;text-align:right;font-weight:800;font-size:15px;padding:0;min-height:38px;font-variant-numeric:tabular-nums}
.pz-in i{font-style:normal;color:var(--muted);font-size:13px}
.pz-o{font-weight:700;font-variant-numeric:tabular-nums;color:var(--fg)}
.pz-o.pz-save{color:var(--ok)}
.pz-e{margin-top:4px}
.pz-note{margin:12px 0 0}
.pz-e .pz-in input{width:92px}.pz-e th,.pz-e td{padding-left:8px;padding-right:8px}.pz-e th.pz-g{width:12%}
.pz-e{min-width:900px}
.pz-in input:focus{outline:none!important}
/* Mức dùng tháng trong bảng Quản lý app: lưới nhỏ, mỗi chỉ số một vạch */
.ap-use{min-width:250px}
.ap-use{display:grid;grid-template-columns:repeat(2,minmax(110px,1fr));gap:6px 12px}
.ap-um{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:0 6px;font-size:11.5px;line-height:1.3}
.ap-um em{font-style:normal;color:var(--muted)}
.ap-um b{font-weight:700;font-variant-numeric:tabular-nums}
.ap-um b i{font-style:normal;font-weight:400;color:var(--muted)}
.ap-um s{grid-column:1/-1;display:block;height:3px;border-radius:2px;background:var(--line);overflow:hidden;text-decoration:none;margin-top:2px}
.ap-um s u{display:block;height:100%;background:var(--gold,#b8892f);text-decoration:none}
.ap-um s u.hot,.ap-um.ap-over s u{background:var(--warn)}
.aw-meters{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px 20px}
#navBrandsL a[data-nav="apps"]{margin-left:16px}
/* Xoá doanh nghiệp: hai lựa chọn */
.ap-del-pick{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}.ap-del-pick .btn{flex:1;min-height:44px}
.ap-del{color:var(--muted)}
/* Thanh toán gửi khách trong hồ sơ doanh nghiệp: cột trái chọn, cột phải số tiền + nút (điện thoại xếp dọc) */
.pay .pay-wrap{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}
.pay-form{display:flex;flex-direction:column;gap:20px;min-width:0}
.pay-step{display:flex;flex-direction:column;gap:8px}
.pay-k{font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.pay-k i{font-style:normal;text-transform:none;letter-spacing:0;font-weight:500}
.pay-opts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.pay-o{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;min-height:56px;border:1px solid var(--line);border-radius:12px;padding:10px 14px;background:transparent;color:var(--fg);cursor:pointer;font:inherit}
.pay-o b{font-size:15px}.pay-o span{font-size:12.5px;color:var(--muted)}
.pay-o.on{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold);background:var(--gold-soft)}.pay-o:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.pay-seg{display:flex;background:var(--sunk,rgba(127,127,127,.12));border-radius:999px;padding:4px;align-self:flex-start;max-width:100%}
.pay-seg button{min-height:40px;padding:0 16px;border:0;border-radius:999px;background:transparent;color:var(--fg);font:600 14px/1 inherit;font-family:inherit;cursor:pointer;white-space:nowrap}
.pay-seg button em{font-style:normal;font-size:11px;font-weight:800;color:var(--gold);margin-left:4px}
.pay-seg button.on{background:var(--gold);color:#151310}.pay-seg button.on em{color:#151310}
.pay-hint{margin:0;font-size:13px;color:var(--muted)}
.pay-tg{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:12px;padding:10px 14px;cursor:pointer;min-height:56px}
.pay-tg input{position:absolute;opacity:0;width:1px;height:1px}
.pay-box{width:20px;height:20px;flex:none;border:2px solid var(--muted);border-radius:6px;display:grid;place-items:center}
.pay-tg input:checked+.pay-box{background:var(--gold);border-color:var(--gold)}.pay-tg input:checked+.pay-box::after{content:"";width:10px;height:5px;border:2px solid #151310;border-top:0;border-right:0;transform:rotate(-45deg) translate(1px,-1px)}
.pay-tg input:focus-visible+.pay-box{outline:2px solid var(--gold);outline-offset:2px}
.pay-tg b{display:block;font-size:14px}.pay-tg small{display:block;font-size:12.5px;color:var(--muted)}
.pay-sp{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}.pay-sp>span{white-space:nowrap}.pay-sp select{min-height:36px;border:1px solid var(--line);border-radius:10px;padding:0 10px;background:var(--surface);color:var(--fg);font:inherit;min-width:0}
.pay-in{min-height:44px;border:1px solid var(--line);border-radius:12px;padding:0 14px;background:var(--surface);color:var(--fg);font:inherit;width:100%;box-sizing:border-box}
.pay-side{border:1px solid var(--line);border-radius:16px;padding:18px;display:flex;flex-direction:column;gap:10px;position:sticky;top:16px;background:var(--gold-soft)}
.pay-plan{font-size:16px;font-weight:700}
.pay-dl{margin:4px 0 0;display:flex;flex-direction:column;gap:8px}.pay-dl div{display:flex;justify-content:space-between;gap:12px;font-size:13.5px}.pay-dl dt{color:var(--muted)}.pay-dl dd{margin:0;font-weight:700}.pay-dl .free{color:var(--ok)}
.pay-tot{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--fg);padding-top:10px;margin-top:2px}.pay-tot span{font-weight:700}.pay-tot b{font-size:26px;color:var(--gold);letter-spacing:-.02em}
.pay-go{width:100%;min-height:48px;justify-content:center;margin-top:4px}
.pay-made{border-top:1px dashed var(--line);padding-top:12px;margin-top:4px;display:flex;flex-direction:column;gap:8px}
.pay-url{font-size:12.5px;word-break:break-all;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:8px 10px}
.pay-mbtn{display:flex;gap:6px;flex-wrap:wrap}.pay-mbtn .btn{flex:1;justify-content:center;min-height:40px}
@media (max-width:900px){.pay .pay-wrap{grid-template-columns:1fr}.pay-side{position:static}}
@media (max-width:560px){.pay-opts{grid-template-columns:1fr}.pay-o{flex-direction:row;justify-content:space-between;align-items:center}.pay-seg{align-self:stretch}.pay-seg button{flex:1;padding:0 8px}.pay-sp{flex-wrap:wrap}.pay-sp select{flex:1}}

.pay-disc{display:grid;grid-template-columns:auto 160px minmax(0,1fr);gap:8px;align-items:center}
.pay-seg.sm button{min-height:40px;padding:0 14px}
.pay-vat{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pay-vat label{display:flex;flex-direction:column;gap:4px;font-size:12.5px;color:var(--muted)}
@media (max-width:560px){.pay-disc{grid-template-columns:1fr}.pay-vat{grid-template-columns:1fr}}

/* Hoá đơn điện tử Haravan trong Đơn hàng web */
.od-hv{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;justify-content:space-between;padding:12px 14px;margin:0 0 12px;border:1px solid var(--line,#2a2a2a);border-radius:12px;background:var(--surface)}
.od-hv-t{display:flex;flex-direction:column;gap:2px;min-width:0}.od-hv-b{display:flex;gap:6px;flex-wrap:wrap}.od-hv details{flex-basis:100%}
.od-inv-pick{display:grid;gap:8px;margin:4px 0 12px}
.od-inv-pick label{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--line,#2a2a2a);border-radius:10px;cursor:pointer;min-height:44px}
.od-inv-pick label:has(input:checked){border-color:var(--gold,#d8b25a);background:rgba(216,178,90,.08)}
.od-inv-pick input{margin-top:3px;width:18px;height:18px;flex:none;accent-color:var(--gold,#d8b25a)}
.od-inv-pick span{display:flex;flex-direction:column;gap:2px}.od-inv-pick small{opacity:.7}
.od-inv #odIV{margin-bottom:10px}.od-inv .btn.primary{width:100%;min-height:44px}
.od-inv-ok{color:var(--ok,#5fbf7f)}

.od-hv-err>div{display:flex;align-items:center;gap:10px;padding:6px 0;border-top:1px solid var(--line,#2a2a2a)}.od-hv-err>div span{flex:1;min-width:0}
.od-hv-err>.btn{margin-top:8px}.od-hv-err p{margin:6px 0 0}
.od-inv{margin-top:16px;padding-top:16px;border-top:1px solid var(--line,#2a2a2a)}.od-inv-h{margin:0 0 8px;font-size:15px}.od-inv .btn.sm{width:auto}

/* Ghép tên hoá đơn Haravan */
.od-hvl{flex-basis:100%;border-top:1px solid var(--line,#2a2a2a);padding-top:12px;margin-top:4px}
.od-hvl-h{display:flex;flex-wrap:wrap;gap:10px 16px;justify-content:space-between;align-items:flex-end;margin-bottom:10px}.od-hvl-h>div:first-child{display:flex;flex-direction:column;gap:2px;min-width:0}
.od-hvl-f{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.od-hvl-f input[type=search]{min-height:40px;min-width:220px}
.od-hvl-l{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.od-hvl-l li{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:8px 16px;align-items:center;padding:10px 0 10px 12px;border-top:1px solid var(--line,#2a2a2a);border-left:3px solid transparent}
.od-hvl-l li.ok{border-left-color:var(--ok,#5fbf7f)}.od-hvl-l li.sug{border-left-color:var(--gold,#d8b25a)}
.od-hvl-w,.od-hvl-s{display:flex;flex-direction:column;gap:3px;min-width:0}.od-hvl-w small,.od-hvl-s small{opacity:.75}
.od-hvl-s select{min-height:40px;width:100%}
@media (max-width:720px){.od-hvl-l li{grid-template-columns:1fr}.od-hvl-f input[type=search]{min-width:0;width:100%}}
.od-hvl-f select{min-height:40px;max-width:260px}.od-hvl-s small .btn.sm{margin-left:6px;min-height:28px;padding:0 10px}
@media (max-width:720px){.od-hvl-f select{max-width:none;width:100%}}
.od-hvl-v{display:flex;flex-direction:column;gap:2px}.panel .od-hvl{margin:12px 0 0;padding-top:12px}

/* khung ghép: đầu gọn một hàng */
.hvl-top{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.hvl-t{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}.hvl-t>b{font-size:15px}
.hvl-prog{height:4px;border-radius:9px;background:var(--line,#2a2a2a);overflow:hidden}.hvl-prog i{display:block;height:100%;background:var(--gold,#d8b25a)}
.hvl-bar{display:grid;grid-template-columns:minmax(180px,260px) auto minmax(160px,1fr) auto;gap:8px;align-items:center;margin-bottom:8px}
.hvl-bar select,.hvl-bar input[type=search],.hvl-bar .btn{min-height:40px;height:40px;margin:0;width:100%}.hvl-bar .btn{width:auto;padding:0 16px}
.hvl-only{white-space:nowrap;margin:0}
.od-hvl-l li{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);padding:12px 0 12px 14px}
.od-hvl-s small{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px}.od-hvl-s small .btn.sm{margin-left:0}
@media (max-width:720px){.hvl-bar{grid-template-columns:1fr auto}.hvl-bar input[type=search],.hvl-only{grid-column:1/-1}.od-hvl-l li{grid-template-columns:1fr}}

/* Thanh toán theo hợp đồng Mè Đen */
.pay .panel-h{flex-wrap:wrap;gap:12px}.pay-mode{flex:none}
.ct-2{display:grid;grid-template-columns:2fr 1fr;gap:10px}.ct-2 label,.pay-vat label{display:flex;flex-direction:column;gap:4px}.ct-2 label span{font-size:12px;opacity:.75}
.ct-pre{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.ct-chip{min-height:34px;padding:0 12px;border-radius:99px;border:1px dashed var(--line-2,#3a3a3a);background:transparent;color:inherit;font:600 13px inherit;cursor:pointer}
.ct-chip:hover{border-color:var(--gold,#d8b25a);color:var(--gold,#d8b25a)}
.ct-items,.ct-parts{display:flex;flex-direction:column;gap:8px}
.ct-row{display:grid;grid-template-columns:minmax(0,1fr) 64px 80px 140px 120px auto;gap:6px;align-items:center}
.ct-t{text-align:right;font-variant-numeric:tabular-nums}
.ct-part{display:grid;grid-template-columns:minmax(0,1fr) 96px 130px auto;gap:6px;align-items:center}.ct-part b{text-align:right;font-variant-numeric:tabular-nums}
.ct-pct{display:flex;align-items:center;gap:4px}.ct-pct input{width:100%}
.ct-sideparts{border-top:1px dashed var(--line,#2a2a2a);padding-top:10px;margin-top:10px}
.ct-made{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid var(--line,#2a2a2a)}
.ct-row .btn,.ct-part .btn{background:transparent!important;border:1px solid var(--line,#ddd)!important;color:inherit!important;box-shadow:none!important;opacity:.75}
@media (max-width:820px){.ct-row{grid-template-columns:56px 72px minmax(0,1fr);padding-bottom:10px;border-bottom:1px dashed var(--line,#ddd)}.ct-row .ct-name{grid-column:1/-1}.ct-row .ct-t{grid-column:1/3;text-align:left}.ct-row .btn{justify-self:end}.ct-2{grid-template-columns:1fr}.ct-part{grid-template-columns:minmax(0,1fr) 84px}.ct-part b{text-align:left}.ct-part .btn{justify-self:end}}

/* ===== Tối ưu điện thoại (r519): chữ phụ đủ đọc, nút đủ to để chạm, thông báo rộng ngang màn hình ===== */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
@media (max-width:760px){
  .toast{left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));max-width:none;transform:translateY(-10px);border-radius:14px;padding:12px 16px;text-align:left;line-height:1.45;font-size:14.5px;box-shadow:0 10px 30px rgba(0,0,0,.25)}
  .toast.show{transform:translateY(0)}
  main small,main .small,.hb-kick,.xh-ih,.jb-add,.pu-o,.pb2-share,.pb2-ok,.cp-st,.ap-tag,.pipe-l,.ct-how,.cv-h,.pay-k,.od-hvl-w small,.od-hvl-s small{font-size:12.5px!important;line-height:1.45}
  .hb-kick,.xh-ih,.pay-k{letter-spacing:.06em}
  main code{font-size:12.5px}
  main input,main select,main textarea{font-size:16px} /* iOS không tự phóng to khi gõ */
}
@media (pointer:coarse){
  main .btn,main button.btn{min-height:40px}
  main .btn.sm{min-height:36px}
  .brs-x,.cp-del{min-width:40px;min-height:40px}
  main .seg button,main .pay-seg button,main .tabs button,main [role=tab]{min-height:40px}
  main select,main input:not([type=checkbox]):not([type=radio]):not([type=range]){min-height:42px}
  main input[type=checkbox],main input[type=radio]{width:20px;height:20px}
}
@media (pointer:coarse){.rc-gf button{min-height:38px;padding:0 14px}}
.pb2-p dd{min-width:0;overflow-wrap:anywhere}.pb2-p dd a{overflow-wrap:anywhere;word-break:break-word}

/* Hợp đồng trực tuyến */
.hd-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.hd-row{width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--panel,transparent);color:inherit;text-align:left;cursor:pointer;font:inherit;min-height:56px}
.hd-row:hover{border-color:var(--gold,#c9a24e)}.hd-n{display:flex;flex-direction:column;gap:2px;min-width:0}.hd-n small{opacity:.7}.hd-r{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.hd-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start}.hd-main{min-width:0}
.hd-side{position:sticky;top:12px;display:flex;flex-direction:column;gap:12px;padding:16px;border:1px solid var(--line);border-radius:16px}
.hd-2{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:8px}.hd-2 label,.hd-a label,.hd-side label{display:flex;flex-direction:column;gap:4px}.hd-2 label span,.hd-a label span{font-size:12.5px;opacity:.75}
.hd-a{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.hd-cl{border:1px solid var(--line);border-radius:14px;padding:12px;margin-bottom:10px}.hd-cl.chg{border-color:var(--gold,#c9a24e);background:rgba(201,162,78,.06)}
.hd-clh{display:flex;align-items:center;gap:8px;margin-bottom:8px}.hd-clh input{flex:1;min-width:0}.hd-clb{display:flex;gap:4px;flex:none}.hd-cl textarea{width:100%;resize:vertical;line-height:1.6}
.hd-tx{line-height:1.65}.hd-df{margin-top:8px;font-size:14px}.hd-df ins{background:#dff3e4;text-decoration:none}.hd-df del{background:#fbe1dc;color:#9a3a2a}
.hd-cm{display:flex;flex-direction:column;gap:6px;margin-top:10px}.hd-cmi{background:var(--cream,#faf5ea);color:#16130f;border-radius:10px;padding:8px 10px;font-size:14px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.hd-cmi.admin{background:#eef3ff}.hd-cmi.done{opacity:.55}.hd-cmi small{opacity:.7}
.hd-rp{display:flex;gap:6px}.hd-rp input{flex:1;min-width:0}
.hd-pad{width:100%;height:150px;border:1.5px dashed var(--fg,#16130f);border-radius:12px;background:#fff;touch-action:none}
.hd-sig{display:flex;flex-direction:column;gap:8px}.hd-sigimg{max-width:100%;height:70px;object-fit:contain;background:#fff;border-radius:8px;margin-top:6px}
.hd-tpl{display:flex;flex-direction:column;gap:6px}.hd-tpli{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--line);border-radius:10px}.hd-tpli span{display:flex;flex-direction:column}.hd-tpli small{opacity:.7}
@media (max-width:900px){.hd-grid{grid-template-columns:1fr}.hd-side{position:static}}
@media (max-width:620px){.hd-2,.hd-a{grid-template-columns:1fr}.hd-row{flex-direction:column;align-items:flex-start}.hd-r{justify-content:flex-start}}
/* r521: máy tính bảng cũng là màn hình chạm; hàng hoá đơn nền tảng xuống dòng thay vì tràn */
.ck-row>*{min-width:0}.ck-act{flex-wrap:wrap}
@media (max-width:1100px){.ck-row{grid-template-columns:minmax(0,1fr) auto}.ck-row>:nth-child(2){grid-column:1/-1;order:3}.ck-act{grid-column:1/-1;justify-content:flex-start}}
@media (max-width:1100px) and (hover:none),(max-width:1100px) and (pointer:coarse){html body .btn{height:44px!important;min-height:44px!important}html body .btn.sm{height:40px!important;min-height:40px!important}main select,main input:not([type=checkbox]):not([type=radio]):not([type=range]){min-height:42px}}
/* r526 Xưởng hoạt họa: bộ hình tối đa 8 nội dung. Màn hình làm việc: viền nhẹ, nhãn nhỏ, vàng đen trắng, không đổ màu chuyển */
.dh{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:18px;align-items:start}
/* Thống nhất toàn hệ thống: tuỳ chọn bên trái, xem trước bên phải (điện thoại: xem trước ở trên) */
.dh>.dh-pv{order:2}
.dh-pv{position:sticky;top:12px;display:flex;flex-direction:column;gap:10px;min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px}
.dh-pvh{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;min-height:32px}
.dh-lbl{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}
.dh-seg{display:flex;gap:4px;flex-wrap:wrap}
.dh-seg button{font:600 12px var(--body);min-height:32px;padding:0 10px;border-radius:8px;border:1px solid var(--line);background:var(--surface);color:var(--fg);cursor:pointer}
.dh-seg button.on{background:var(--fg);color:var(--bg);border-color:var(--fg)}
.dh-cvw{display:flex;justify-content:center;align-items:center;background:var(--sunk);border-radius:10px;padding:10px;min-height:120px}
.dh-cvw canvas{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100vh - 400px);min-height:240px;border-radius:6px;border:1px solid var(--line);background:#f4efe6}
.dh-ctl{display:flex;align-items:center;gap:10px;min-width:0}
.dh-ctl input[type=range]{flex:1;min-width:0;accent-color:var(--gold);height:44px}
.dh-play{min-width:92px;min-height:44px}
.dh-time{font-size:12px;color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}
.dh-pvb{display:flex;gap:8px;flex-wrap:wrap}.dh-pvb .btn{min-height:40px}
#dhReel.on{border-color:var(--gold);color:var(--gold-deep,var(--gold))}
.dh-bar{display:flex;flex-direction:column;gap:8px;border-top:1px solid var(--line);padding-top:10px}
.dh-btns{display:grid;grid-template-columns:1fr 1fr;gap:8px}.dh-btns .btn{min-height:46px;white-space:normal;line-height:1.25;padding:8px 10px}
.dh-msg{font-size:12.5px;color:var(--muted);min-height:18px}.dh-msg.warn{color:var(--warn,#b25e09);font-weight:600}
.dh-prog{height:6px;border-radius:99px;background:var(--sunk);overflow:hidden}.dh-prog i{display:block;height:100%;width:0;background:var(--gold);transition:width .2s}
.dh-ed{display:flex;flex-direction:column;gap:10px;min-width:0}
.dh-sec{background:var(--surface);border:1px solid var(--line);border-radius:12px;min-width:0}
.dh-sec>summary{list-style:none;display:flex;align-items:center;gap:10px;min-height:52px;padding:6px 14px;cursor:pointer;-webkit-tap-highlight-color:transparent}
.dh-sec>summary::-webkit-details-marker{display:none}
.dh-sec>summary::after{content:"";width:8px;height:8px;border-right:1.6px solid var(--muted);border-bottom:1.6px solid var(--muted);transform:rotate(45deg);margin:-4px 4px 0 auto;flex:none;transition:transform .15s}
.dh-sec[open]>summary::after{transform:rotate(-135deg);margin-top:4px}
.dh-st{font-weight:700;font-size:14.5px;flex:none}
.dh-sh{font-size:12px;color:var(--muted);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;text-align:right}
.dh-sb{padding:2px 14px 14px;display:flex;flex-direction:column;gap:10px;min-width:0}.dh-sb>.btn:not(.dh-add){align-self:flex-start}
.dh-f{display:flex;flex-direction:column;gap:4px;min-width:0}
.dh-f>span{font-size:12px;font-weight:600;color:var(--muted)}.dh-f>span em{font-style:normal;font-weight:500;opacity:.85;margin-left:4px}
.dh-f input:not([type=range]),.dh-f textarea,.dh-f select{width:100%;box-sizing:border-box;font:15px/1.45 var(--body);min-height:44px;padding:9px 11px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--fg)}
.dh-f textarea{resize:vertical}
.dh-f input[type=range]{accent-color:var(--gold);height:40px;width:100%}
.dh-k{font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:4px}
.dh-k .dh-hint{text-transform:none;letter-spacing:0;font-weight:500}
.dh-hint{font-size:12.5px;color:var(--muted);line-height:1.45}.dh-hint.dh-warn{color:var(--warn,#b25e09)}
.dh-row{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}
.dh-n{flex:0 0 auto;min-width:120px}
.dh-wbtn{display:flex;gap:8px;flex:1;flex-wrap:wrap;min-width:0}.dh-wbtn .btn{flex:1 1 160px;min-height:44px}
.dh-chips{display:flex;flex-wrap:wrap;gap:6px}
.dh-chip{font:600 13px var(--body);min-height:40px;padding:0 13px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--fg);cursor:pointer;display:inline-flex;align-items:center;gap:7px}
.dh-chip.on{background:var(--fg);color:var(--bg);border-color:var(--fg)}
.dh-chip:focus-visible,.dh-s:focus-visible,.dh-ty:focus-visible,.dh-tab:focus-visible,.dh-i:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.dh-sw{display:inline-flex;border-radius:5px;overflow:hidden;border:1px solid color-mix(in srgb,var(--fg) 15%,transparent)}.dh-sw i{width:11px;height:18px;display:block}
.dh-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.dh-col{display:flex;align-items:center;gap:10px;min-height:52px;padding:6px 10px;border:1px solid var(--line);border-radius:10px;cursor:pointer;min-width:0}
.dh-col input{width:38px;height:38px;border:0;padding:0;background:none;cursor:pointer;flex:none}
.dh-col span{display:flex;flex-direction:column;min-width:0}.dh-col b{font-size:13px}.dh-col em{font-style:normal;font-size:11.5px;color:var(--muted)}
.dh-col.own{border-color:var(--gold)}.dh-col.off{opacity:.55;cursor:default}
.dh-types{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px}
.dh-ty{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;min-height:56px;padding:8px 11px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--fg);cursor:pointer;min-width:0}
.dh-ty b{font-size:18px;line-height:1.15;font-weight:600}.dh-ty span{font-size:11.5px;color:var(--muted);line-height:1.3}
.dh-ty.on{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}
/* Nhóm phong cách: tự xuống dòng nên thêm bao nhiêu nhóm cũng không bị cắt */
.dh-tabs{display:flex;flex-wrap:wrap;gap:6px;padding:2px 0}
.dh-tab{flex:none;font:600 13px var(--body);min-height:44px;padding:0 14px;border:1px solid var(--line);border-radius:999px;background:none;color:var(--muted);cursor:pointer;white-space:nowrap}
.dh-tab:hover{color:var(--fg);border-color:var(--gold)}
.dh-tab.on{color:#151310;background:var(--gold);border-color:var(--gold)}
.dh-sub:empty,.dh-hint:empty{display:none}
.dh-stg{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:10px}
.dh-s{border:0;background:none;padding:0;cursor:pointer;text-align:left;min-width:0;color:var(--fg)}
.dh-sim{display:block;border-radius:8px;overflow:hidden;border:1px solid var(--line);background:var(--sunk);aspect-ratio:4/5}
.dh-sim.fm-square{aspect-ratio:1}.dh-sim.fm-story{aspect-ratio:9/16}
.dh-sim img{width:100%;height:100%;object-fit:cover;display:block}.dh-sim img[src=""]{visibility:hidden}
.dh-s.on .dh-sim{border-color:var(--gold);box-shadow:0 0 0 2px var(--gold)}
.dh-s b{display:block;font-size:12.5px;margin-top:5px;line-height:1.25}.dh-s em{display:block;font-style:normal;font-size:11px;color:var(--gold)}
.dh-items{display:flex;flex-direction:column;gap:8px}
.dh-it{border:1px solid var(--line);border-radius:10px;min-width:0}
.dh-it.on{border-color:var(--gold)}.dh-it.need{border-color:color-mix(in srgb,var(--warn,#b25e09) 55%,var(--line))}
.dh-ith{display:flex;align-items:center;gap:4px;min-width:0}
.dh-itsel{flex:1;display:flex;align-items:center;gap:10px;min-height:48px;padding:4px 4px 4px 12px;border:0;background:none;color:var(--fg);cursor:pointer;text-align:left;min-width:0;font:inherit}
.dh-no{font:700 12px var(--body);color:var(--gold);font-variant-numeric:tabular-nums;flex:none}
.dh-itm{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0;flex:1}.dh-itt{font-size:14px;font-weight:600;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dh-tag{flex:none;font-size:10.5px;line-height:1.5;font-weight:700;padding:2px 8px;border-radius:99px;background:var(--warn-soft,#fdecd9);color:var(--warn,#b25e09)}.dh-tag.ok{background:var(--ok-soft,#e1f4e8);color:var(--ok,#1d8148)}
.dh-ita{display:flex;flex:none;padding-right:4px}
.dh-ib{width:44px;height:44px;border:0;background:none;color:var(--muted);font-size:17px;cursor:pointer;border-radius:8px}
.dh-ib:hover:not(:disabled){color:var(--fg);background:var(--sunk)}.dh-ib:disabled{opacity:.3;cursor:default}
.dh-itb{padding:4px 12px 12px;display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--line)}
.dh-phw{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px;border:1px dashed var(--line);border-radius:10px}
.dh-phw.need{border-color:var(--warn,#b25e09);background:color-mix(in srgb,var(--warn-soft,#fdecd9) 55%,transparent)}
.dh-phw img{width:64px;height:64px;object-fit:cover;border-radius:8px;flex:none}
.dh-phw .dh-hint{flex:1 1 160px}
.dh-up{min-height:44px;cursor:pointer}
.dh-iq{width:100%;box-sizing:border-box;min-height:44px;padding:9px 11px;border:1px solid var(--line);border-radius:10px;font:15px var(--body);background:var(--surface);color:var(--fg)}
.dh-ic{display:grid;grid-template-columns:repeat(auto-fill,minmax(66px,1fr));gap:6px;max-height:248px;overflow-y:auto;padding:2px}
.dh-i{border:1px solid var(--line);border-radius:10px;background:#fff;padding:6px 2px;cursor:pointer;min-width:0;min-height:66px}
.dh-i.on{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold);background:#fdf6e3}
.dh-i img{width:36px;height:36px;display:block;margin:0 auto}.dh-i span{display:block;font-size:10.5px;color:#6b5e4d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dh-add{min-height:46px;border-style:dashed}
.dh-chk{display:flex;align-items:center;gap:10px;min-height:44px;font-size:14px;cursor:pointer}.dh-chk input{width:20px;height:20px;accent-color:var(--gold)}
@media (max-width:900px){
  .dh{grid-template-columns:minmax(0,1fr)}
  .dh-pv{position:static}
  .dh>.dh-pv{order:0}
  .dh-cvw canvas{max-height:56vh}
}
@media (max-width:760px){.dh-cvw canvas{max-height:46vh;min-height:200px}
}
@media (max-width:760px){
  .dh{padding-bottom:132px}
  .dh-pv{padding:10px;border-radius:12px}
  .dh-bar{position:fixed;left:0;right:0;bottom:calc(66px + env(safe-area-inset-bottom));z-index:57;background:var(--surface);border-top:1px solid var(--line);padding:8px 12px 10px;margin:0;gap:6px}
  .dh-msg{min-height:0;font-size:12px}
  .dh-cols{grid-template-columns:minmax(0,1fr)}
  .dh-sb{padding:2px 12px 12px}
}
/* Thể loại animation: hai nhóm, kèm chuyển cảnh và màu cho máy đồ hoạ động */
.agrp-h{display:flex;flex-direction:column;gap:1px;margin:12px 0 6px}.agrp-h b{font-size:13px}.agrp-h span{font-size:12px;color:var(--muted)}
.gopt{margin-top:6px;padding-top:4px;border-top:1px solid var(--line)}
.gchips{display:flex;flex-wrap:wrap;gap:6px}
.gchip{position:relative;cursor:pointer}.gchip input{position:absolute;opacity:0;pointer-events:none}
.gchip span{display:inline-flex;align-items:center;min-height:38px;padding:0 12px;border:1px solid var(--line);border-radius:999px;font-size:12.5px;font-weight:600;background:var(--surface)}
.gchip input:checked+span{background:var(--fg);color:var(--bg);border-color:var(--fg)}.gchip input:focus-visible+span{outline:2px solid var(--gold);outline-offset:2px}
.gnote{margin:6px 0 0;font-size:12px;color:var(--muted)}
.gcols{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:8px}
.gcol{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:4px 10px;border:1px solid var(--line);border-radius:10px;font-size:12.5px;cursor:pointer}
.gcol input[type=checkbox]{accent-color:var(--gold);width:18px;height:18px}.gcol input[type=color]{width:32px;height:32px;border:0;padding:0;background:none;cursor:pointer}
/* r526b Xưởng hoạt họa: ô màu tự chọn mở vòng màu; lưu và đăng */
.dh-col{font:inherit;color:var(--fg);background:var(--surface);text-align:left;width:100%}
.dh-col:disabled{cursor:default}.dh-col.act{border-color:var(--fg);box-shadow:inset 0 0 0 1px var(--fg)}
.dh-colsw{width:34px;height:34px;border-radius:8px;flex:none;border:1px solid color-mix(in srgb,var(--fg) 18%,transparent)}
.dh-cw[hidden]{display:none}
.dh-cwbg{display:none}
.dh-cwp{border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:12px;display:flex;flex-direction:column;gap:10px}
.dh-cwh{display:flex;align-items:center;justify-content:space-between;gap:8px}.dh-cwt{font-size:14px}
.dh-cwm{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:14px;align-items:start}
.dh-cwr{position:relative;width:100%;max-width:220px;aspect-ratio:1;margin:0 auto}
.dh-cwr canvas{width:100%;height:100%;display:block;border-radius:50%;touch-action:none;cursor:crosshair}
.dh-cwk{position:absolute;width:26px;height:26px;margin:-13px 0 0 -13px;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 1px rgba(0,0,0,.45);pointer-events:none}
.dh-cws{display:flex;flex-direction:column;gap:8px;min-width:0}
.dh-cwhx{display:flex;align-items:flex-end;gap:10px}.dh-cwhx .dh-f{flex:1}
.dh-cwsw{width:44px;height:44px;border-radius:10px;flex:none;border:1px solid var(--line)}
.dh-cwin{font-family:var(--mono)!important;text-transform:uppercase}
.dh-cwre{display:flex;flex-wrap:wrap;gap:6px}
.dh-cwrc{width:44px;height:44px;border-radius:10px;border:1px solid color-mix(in srgb,var(--fg) 18%,transparent);cursor:pointer;padding:0}
.dh-cwa{display:flex;gap:8px;justify-content:flex-end}.dh-cwa .btn{min-height:44px}
.dh-wide{min-height:46px}
.dh-sv{border:1px solid var(--gold);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:10px}
.dh-svh{display:flex;flex-direction:column;gap:2px}
.dh-sv .dh-row .btn{min-height:44px}
.dh-btns2{display:flex;flex-wrap:wrap;gap:6px}.dh-btns2 .btn{min-height:40px}
@media (max-width:760px){
  .dh-cw:not([hidden]){position:fixed;inset:0;z-index:90;display:flex;flex-direction:column;justify-content:flex-end}
  .dh-cwbg{display:block;position:absolute;inset:0;background:rgba(10,9,7,.45)}
  .dh-cwp{position:relative;border-radius:16px 16px 0 0;border-bottom:0;padding:14px 16px calc(14px + env(safe-area-inset-bottom));max-height:92vh;overflow-y:auto}
  .dh-cwm{grid-template-columns:minmax(0,1fr)}
  .dh-cwr{max-width:236px}
  body.dh-cw-on{overflow:hidden}
}
.dh-chk input{flex:none}.dh-chk>span{min-width:0}
/* Xưởng hoạt họa: thanh bước chung với Xưởng video, Xưởng bài viết */
.dh-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.dh-steps button{display:flex;align-items:center;gap:8px;min-height:44px;padding:6px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface);font:inherit;font-size:13px;font-weight:600;color:var(--fg);cursor:pointer;text-align:left;line-height:1.2}
.dh-steps button:hover{border-color:var(--gold)}
.dh-steps b{flex:none;display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--gold);color:#fff;font-size:12px}
.dh-grp{font-weight:700;font-size:14px;margin:6px 2px 0;scroll-margin-top:12px}.dh-grp .dh-hint{font-weight:400;margin-left:6px}
.dh-sec{scroll-margin-top:12px}
@media (max-width:760px){.dh-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Xưởng hoạt họa: ảnh cho bộ hình (chọn nhiều ảnh, gán theo thứ tự), thư viện Ảnh đã tải */
.dh-drop{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px;border:1.5px dashed var(--line);border-radius:12px;background:var(--sunk);transition:border-color .15s,background .15s}
.dh-drop .dh-hint{flex:1 1 180px;min-width:0}
.dh-drop.over{border-color:var(--gold);background:color-mix(in srgb,var(--gold) 10%,transparent)}
@media (hover:none),(max-width:760px){.dh-dsk{display:none}}
.dh-pool{display:flex;gap:10px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding:2px 2px 8px;min-width:0;max-width:100%}
.dh-pool[hidden]{display:none}
.dh-pt{position:relative;flex:none;width:96px;margin:0;scroll-snap-align:start}
.dh-pt img{display:block;width:96px;height:96px;object-fit:cover;border-radius:10px;border:1px solid var(--line);background:var(--sunk)}
.dh-pt.free img{opacity:.6}
.dh-pt.wait img{opacity:.45;filter:grayscale(.5)}
.dh-ptn{position:absolute;left:6px;top:6px;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:rgba(16,14,11,.78);color:#fff;font:700 12px/22px var(--body);text-align:center}
.dh-pt figcaption{font-size:12px;margin-top:4px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dh-pt:not(.free) figcaption{color:var(--fg);font-weight:600}
.dh-ptx{position:absolute;right:0;top:0;width:44px;height:44px;border:0;background:none;cursor:pointer;display:grid;place-items:center;padding:0;color:#fff;font-size:18px;line-height:1;z-index:0}
.dh-ptx::before{content:"";position:absolute;left:50%;top:50%;width:28px;height:28px;margin:-14px 0 0 -14px;border-radius:50%;background:rgba(16,14,11,.72);z-index:-1}
.dh-ptx:hover::before{background:rgba(16,14,11,.92)}
.dh-ptx:focus-visible{outline:2px solid var(--gold);outline-offset:-2px;border-radius:10px}
.dh-lib{border-top:1px solid var(--line);padding-top:8px}
.dh-lib[hidden]{display:none}
.dh-lib>summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:700;font-size:14px;gap:6px}
.dh-lib>summary span{color:var(--muted);font-weight:500}
#dhLib{display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.dh-libg{display:grid;grid-template-columns:repeat(auto-fill,minmax(98px,1fr));gap:10px;width:100%}
.dh-lt{min-width:0;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--surface)}
.dh-lt.on{border-color:var(--gold)}
.dh-lt img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:var(--sunk)}
.dh-lta{display:flex;flex-direction:column;gap:6px;padding:6px}
html body .dh .dh-lta .btn.sm,html body .dh #dhLib>.btn.sm,html body .dh .dh-phw .btn,html body .dh #dhPhB,html body .dh #dhMore{height:44px!important;min-height:44px!important}
.dh-lta .btn{width:100%;justify-content:center}
.dh-del{color:var(--bad,#b3261e)}
.dh-phe{width:64px;height:64px;border-radius:8px;flex:none;background:repeating-linear-gradient(135deg,var(--sunk) 0 6px,transparent 6px 12px);border:1px solid var(--line)}
.dh-chg{display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:8px;padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--sunk)}
.dh-chgi{display:flex;flex-direction:column;gap:4px;align-items:stretch;min-height:44px;padding:4px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--fg);cursor:pointer;font:600 12px/1.25 var(--body);text-align:left}
.dh-chgi img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:7px;display:block}
.dh-chgi.on{border-color:var(--gold);box-shadow:0 0 0 2px var(--gold)}
.dh-chgi.dh-none,.dh-chgi.dh-new{justify-content:center;text-align:center;min-height:78px}
.dh-chgi.dh-new{border-style:dashed}
.dh-chgi:focus-visible,.dh-chgi:hover{border-color:var(--gold)}
.dh-chgi:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
/* Xưởng hoạt họa: tìm phong cách, xem dạng lưới hoặc danh sách */
.dh-sbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.dh-sq{flex:1 1 140px;min-width:0;min-height:44px;padding:0 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--fg);font:500 14px var(--body)}
.dh-sq:focus{outline:2px solid var(--gold);outline-offset:1px;border-color:var(--gold)}
.dh-vw button{min-height:44px;padding:0 14px;font-size:13px}
.dh-vw button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.dh-pin{display:inline-block;font-size:11px;font-weight:700;color:var(--gold);letter-spacing:.02em}
.dh-s .dh-pin{display:block}
.dh-stg.dh-stl{grid-template-columns:minmax(0,1fr);gap:6px}
.dh-sr{display:flex;align-items:flex-start;gap:12px;padding:8px;border:1px solid var(--line);border-radius:10px;background:var(--surface);min-height:44px}
.dh-sr.on{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}
.dh-sr.pinned{background:color-mix(in srgb,var(--gold) 8%,var(--surface))}
.dh-sr .dh-sim{width:48px;flex:none}
.dh-sr.on .dh-sim{box-shadow:none}
.dh-srt{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.dh-sr b{margin-top:0;font-size:14px}
.dh-srn{font-size:12.5px;color:var(--muted);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.dh-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:3px}
.dh-tags i{font-style:normal;font-size:11px;font-weight:600;padding:2px 7px;border-radius:999px;border:1px solid var(--line);color:var(--muted)}
.dh-tags i.ph{color:var(--gold);border-color:color-mix(in srgb,var(--gold) 50%,var(--line))}
html body .dh .dh-tabs .dh-tab{min-height:44px!important;height:44px!important}
html body .dh .dh-lta .btn{padding:0 6px!important;font-size:12.5px!important;white-space:normal;line-height:1.2}
html body .dh .dh-lta .dh-del{background:var(--surface)!important;color:var(--bad,#b3261e)!important;border:1px solid var(--line)!important;box-shadow:none!important}

/* ===== Gợi ý nội dung: bộ 7 công cụ (goiy.js). Điện thoại một cột; máy tính: công cụ và thông tin bên trái, kết quả bên phải ===== */
.gy{min-width:0}
.gy-hd{margin:0 0 18px;max-width:760px}
.gy-hd h1{font:700 clamp(28px,5vw,40px)/1.15 var(--display);margin:6px 0 8px}
.gy-hd h1 em{font-family:"DFVN Gustavo",Georgia,serif;font-style:italic;font-weight:700;color:var(--gold)}
.gy-hd p{color:var(--muted);max-width:640px}
.gy-g{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}
.gy-l,.gy-r{display:flex;flex-direction:column;gap:14px;min-width:0}
.gy-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:14px}
.gy-t{display:flex;align-items:flex-start;gap:10px;text-align:left;min-height:60px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--fg);font:inherit;cursor:pointer;min-width:0}
.gy-t:hover{border-color:var(--gold)}
.gy-t.on{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold);background:var(--gold-soft)}
.gy-tn{flex:none;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:13px;background:var(--sunk);color:var(--fg)}
.gy-t.on .gy-tn{background:var(--gold);color:#fff}
.gy-tt{display:flex;flex-direction:column;min-width:0}
.gy-tt b{font-size:13.5px;line-height:1.3;overflow-wrap:anywhere}
.gy-tt small{display:none;color:var(--muted);font-size:12.5px;line-height:1.35;margin-top:2px}
.gy-form{gap:14px}
.gy-q h2{font:700 20px/1.25 var(--display);margin:2px 0 4px}
.gy-q p{color:var(--muted);font-size:14px}
.gy-qn{font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--gold)}
.gy-form textarea,.gy-form input:not([type=checkbox]),.gy-form select{width:100%;min-height:44px;font:inherit;font-size:15px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--fg)}
.gy-form textarea{resize:vertical}
.gy-lh{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.gy-lh label{margin:0}
.gy-sa{display:flex;gap:6px}
.gy .btn.sm,.gy-link{min-height:44px}
.gy-vl{display:flex;flex-direction:column;gap:6px;max-height:340px;overflow-y:auto;border:1px solid var(--line);border-radius:10px;padding:6px;background:var(--sunk)}
.gy-v{display:flex;gap:10px;align-items:flex-start;padding:8px 10px;border-radius:8px;background:var(--surface);cursor:pointer;min-height:44px}
.gy-v input{flex:none;width:20px;height:20px;margin:2px 0 0;accent-color:var(--gold)}
.gy-vb{display:flex;flex-direction:column;gap:3px;min-width:0}
.gy-vt{font-size:14px;line-height:1.35;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere}
.gy-vm{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:12.5px;color:var(--muted)}
.gy-vm b{color:var(--fg)}
.gy-vl>*{flex-shrink:0}
.gy-miss{display:flex;flex-direction:column;gap:8px;align-items:flex-start;padding:12px;border-radius:10px;background:var(--warn-soft);color:var(--fg);font-size:14px}
.gy-miss .btn{min-height:44px}
.gy-go{display:flex;gap:8px;flex-wrap:wrap}
.gy-go .btn{flex:1 1 150px;min-height:48px;font-size:15px}
.gy-go .btn:disabled{opacity:.55;cursor:wait}
.gy-tip{margin-top:-6px}
.gy-res{min-height:220px;gap:14px}
.gy-empty{display:flex;flex-direction:column;gap:6px;justify-content:center;min-height:190px;padding:8px;color:var(--muted)}
.gy-empty b{color:var(--fg);font-size:17px}
.gy-wait{display:flex;align-items:center;gap:10px;min-height:120px;padding:8px}
.gy-wait div{display:flex;flex-direction:column}
.gy-wait small{color:var(--muted)}
.gy-errb{display:flex;flex-direction:column;gap:8px;align-items:flex-start;padding:14px;border-radius:10px;background:var(--bad-soft)}
.gy-errb b{color:var(--bad)}
.gy-rh{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}
.gy-rh h2{font:700 21px/1.25 var(--display);margin-top:2px;overflow-wrap:anywhere}
.gy-note{padding:10px 12px;border-left:3px solid var(--gold);background:var(--gold-soft);border-radius:0 8px 8px 0;font-size:14px}
.gy-tw{overflow-x:auto;border:1px solid var(--line);border-radius:10px;max-width:100%}
.gy-tb{border-collapse:collapse;width:100%;font-size:13px;min-width:640px}
.gy-tb th,.gy-tb td{padding:8px 10px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}
.gy-tb th:first-child,.gy-tb td:first-child{text-align:left;white-space:normal;min-width:200px;max-width:280px}
.gy-tb th{background:var(--sunk);font-weight:700;font-size:12px}
.gy-tb tr:last-child td{border-bottom:0}
.gy-s{display:flex;flex-direction:column;gap:10px;padding-top:6px}
.gy-s h3{font:700 17px/1.3 var(--display);padding-bottom:6px;border-bottom:2px solid var(--gold);align-self:flex-start}
.gy-lead{color:var(--muted);font-size:14.5px;white-space:pre-line}
.gy-i{position:relative;border:1px solid var(--line);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:8px;background:var(--surface)}
.gy-i.star{border-color:var(--gold);box-shadow:inset 3px 0 0 var(--gold)}
.gy-star{align-self:flex-start;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}
.gy-i h4{font-size:16px;line-height:1.35;overflow-wrap:anywhere}
.gy-i dl{margin:0;display:flex;flex-direction:column;gap:6px}
.gy-i dl div{display:grid;grid-template-columns:minmax(0,1fr);gap:1px}
.gy-i dt{font-size:12px;font-weight:700;color:var(--muted)}
.gy-i dd{margin:0;font-size:14.5px;white-space:pre-line;overflow-wrap:anywhere}
.gy-ia{display:flex;gap:6px;flex-wrap:wrap}
.gy-today{padding:12px 14px;border-radius:12px;background:var(--ink,#1a1a1a);color:#f6e7bf}
.gy-today p{color:#fff;margin-top:2px}
.gy-hh{font-size:15px;display:flex;gap:8px;align-items:baseline}
.gy-hh small{font:500 12.5px var(--body)}
.gy-hl{display:flex;flex-direction:column;gap:4px}
.gy-hi{display:flex;flex-direction:column;text-align:left;gap:1px;padding:9px 10px;min-height:44px;border:0;border-radius:8px;background:transparent;color:var(--fg);font:inherit;cursor:pointer;min-width:0}
.gy-hi:hover,.gy-hi.on{background:var(--sunk)}
.gy-hi b{font-size:14px;overflow-wrap:anywhere}
.gy-hi small{color:var(--muted);font-size:12.5px}
@media (min-width:640px){.gy-i dl div{grid-template-columns:150px minmax(0,1fr);gap:12px}.gy-tt small{display:block}}
@media (min-width:900px){
  .gy-g{grid-template-columns:minmax(360px,440px) minmax(0,1fr);gap:20px}
  .gy-tools{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}
}
.gy-r>*{flex-shrink:0}
@media (max-width:700px){html body .gy .btn.sm,html body .btn.sm.gy-link{height:44px!important;min-height:44px!important}}
@media (max-width:1100px) and (hover:none),(max-width:1100px) and (pointer:coarse){html body .gy .btn.sm,html body .btn.sm.gy-link{height:44px!important;min-height:44px!important}}
.dh-itw{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border:1px dashed var(--line);border-radius:12px;background:color-mix(in srgb,var(--gold) 5%,transparent)}
.dh-itw .dh-wbtn .btn{flex:1 1 130px}.dh-itw .dh-itwm{margin:0}
/* ===== Xưởng video: khung xem trước kiểu dựng (tuỳ chọn bên trái, xem trước bên phải; điện thoại: xem trước ở trên) ===== */
.vrw{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,400px);gap:20px;align-items:start}
.vrw-l{min-width:0}
.vrv{position:sticky;top:0;z-index:3;display:flex;flex-direction:column;gap:10px;min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px}
.vrv-h{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-height:28px}
.vrv-t{font-size:13px;margin-left:auto;text-align:right;min-width:0}
.vrv-tag{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:2px 8px;border-radius:999px;border:1px dashed var(--muted);color:var(--muted)}
.vrv-seg button{min-height:36px}
.vrv-g{display:flex;flex-direction:column;gap:8px}
.vrv-cvw{padding:8px}
.vrv-cvw canvas{max-height:min(44vh,460px);min-height:0;max-width:100%}
.vrv-n{margin:0}
.vrw .gopt .fp-h{margin-top:12px}
.gpal span{gap:7px}.gpal .dh-sw:empty{display:none}
.gcolw{display:contents}
.gopt .gcols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.gopt .gcw-host:not(:empty){margin-top:8px}
.gopt .gcol-reset{margin-top:8px}
.gtypes{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:6px}
.gty{position:relative;cursor:pointer;min-width:0}.gty input{position:absolute;opacity:0;pointer-events:none}
.gty span{display:flex;flex-direction:column;gap:2px;min-height:52px;padding:7px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.gty b{font-size:16px;line-height:1.15;font-weight:600}.gty em{font-style:normal;font-size:11px;color:var(--muted);line-height:1.3}
.gty input:checked+span{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}.gty input:focus-visible+span{outline:2px solid var(--gold);outline-offset:2px}
.gsnd{margin-top:10px}
/* hình minh hoạ từng kiểu dựng */
.vrv-s{display:flex;flex-direction:column;gap:10px;align-items:center;background:var(--sunk);border-radius:10px;padding:12px;min-width:0}
.vs-f{position:relative;overflow:hidden;border-radius:8px;border:1px solid var(--line);background:#2a2622;color:#fff;width:100%;flex:none}
.vs-f.story{aspect-ratio:9/16;width:auto;height:min(42vh,400px);max-width:100%}
.vs-f.wide{aspect-ratio:16/9}
.vs-f.story.sm{height:auto;width:100%}
.vs-row3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%}
.vs-cap{position:absolute;left:0;right:0;bottom:0;background:rgba(0,0,0,.55);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:700;padding:4px 6px;text-align:center}
.vs-ppl{position:absolute;left:50%;bottom:0;width:46%;aspect-ratio:1/1.1;transform:translateX(-50%);border-radius:50% 50% 0 0;background:linear-gradient(#8a7a6a,#5a4d42);opacity:.85}
.vs-ppl i{position:absolute;left:50%;top:-38%;width:52%;aspect-ratio:1;transform:translateX(-50%);border-radius:50%;background:#9c8b7a}
.vs-f.wide .vs-ppl{width:24%}
.vs-sub{position:absolute;left:8%;right:8%;bottom:12%;text-align:center;font:600 clamp(10px,2.6vw,15px)/1.3 var(--body);color:#fff;text-shadow:0 0 4px rgba(0,0,0,.9),0 1px 2px rgba(0,0,0,.9);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vs-f.sm .vs-sub{font-size:9px;bottom:22%}
.vs-f.sm .vs-end{bottom:34%}
.vs-subf{background:linear-gradient(160deg,#6d5a48,#3d332b 70%)}
.vs-lb{position:absolute;top:8px;font-size:10.5px;font-weight:700;padding:2px 7px;border-radius:999px;background:rgba(0,0,0,.5)}.vs-lb.l{left:8px}.vs-lb.r{right:8px}
.vs-tho{background:linear-gradient(160deg,#c9a77e,#7b5a3d)}
.vs-tho .vs-half{position:absolute;inset:0 50% 0 0;background:rgba(120,120,120,.55);backdrop-filter:grayscale(1);-webkit-backdrop-filter:grayscale(1);border-right:2px solid #fff}
.vs-cut{display:flex;flex-direction:column;gap:5px;width:100%;font-size:11.5px;color:var(--muted)}
.vs-bar{display:flex;gap:3px;height:16px}.vs-bar i{flex:1;border-radius:3px;background:var(--gold,#c9a24a)}
.vs-bar i.x{background:repeating-linear-gradient(45deg,var(--line) 0 4px,transparent 4px 8px);border:1px dashed var(--muted)}
.vs-bar.ok i{background:color-mix(in srgb,var(--gold,#c9a24a) 80%,#000)}.vs-bar.soft i{border-radius:8px}
.vs-bar.hlb{position:absolute;left:8px;right:8px;bottom:10px;height:12px}.vs-bar.hlb i{background:rgba(255,255,255,.3)}.vs-bar.hlb i.p{background:var(--gold,#c9a24a)}
.vs-hl{display:flex;flex-direction:column;gap:8px;width:100%}
.vs-src{background:linear-gradient(160deg,#6d5a48,#2e2620)}
.vs-hook,.vs-f .vs-hook{position:absolute;top:10%;left:8%;right:8%;text-align:center;font-size:9px;font-weight:700;background:#fff;color:#1d1a16;border-radius:5px;padding:3px 4px;animation:vsPop 3s ease-in-out infinite}
.vs-hlc,.vs-tvc{background:linear-gradient(170deg,#7d6650,#2e2620)}
.vs-tvc.main{outline:2px solid var(--gold,#c9a24a);outline-offset:2px}
.vs-end{position:absolute;left:8%;right:8%;bottom:26%;display:flex;flex-direction:column;align-items:center;gap:2px;background:rgba(20,16,12,.8);border-radius:5px;padding:4px;font-size:8.5px;text-align:center;animation:vsEnd 4s ease-in-out infinite}
.vs-end b{font-size:9px;line-height:1.2;overflow-wrap:anywhere}.vs-end i{font-style:normal;opacity:.8}
.vs-line{background:radial-gradient(circle at 50% 38%,#1d2950,#0b1022 70%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6%}
.vs-bowl{width:42%;max-width:180px;fill:none;stroke:#bfe4ff;stroke-width:2.2;stroke-linecap:round;filter:drop-shadow(0 0 4px #7cc6ff);stroke-dasharray:100;animation:vsDraw 3.2s ease-out infinite}
.vs-rings{position:absolute;left:50%;top:34%;width:0;height:0}.vs-rings i{position:absolute;left:-40px;top:-40px;width:80px;height:80px;border-radius:50%;border:1.5px solid rgba(160,215,255,.5);animation:vsRing 3.2s ease-out infinite}.vs-rings i:nth-child(2){animation-delay:1s}.vs-rings i:nth-child(3){animation-delay:2s}
.vs-tt{position:relative;max-width:84%;text-align:center;font:600 clamp(14px,3.4vw,22px)/1.2 var(--display,var(--body))}
.vs-tt em{font-style:italic;color:#ffd98a}
.vs-line .vs-tt{color:#e6f4ff;text-shadow:0 0 8px rgba(124,198,255,.6)}
.vs-tl{position:absolute;left:10%;right:10%;bottom:8%;height:2px;background:rgba(191,228,255,.35);display:flex;justify-content:space-between}.vs-tl i{width:9px;height:9px;margin-top:-4px;border-radius:50%;background:#bfe4ff;box-shadow:0 0 6px #7cc6ff}
.vs-giay{background:#f3ead8 repeating-radial-gradient(circle at 30% 20%,rgba(120,90,50,.05) 0 1px,transparent 1px 3px);color:#3b2f22;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6%;padding:8%}
.vs-giay .vs-tt{background:linear-gradient(90deg,#8a5a2b,#c98a4a,#7a6a9a);-webkit-background-clip:text;background-clip:text;color:transparent}
.vs-giay .vs-tt em{color:inherit}
.vs-card{background:#fffaf0;border-radius:6px;box-shadow:0 3px 10px rgba(80,60,30,.22);padding:8px 10px;font-size:11px;max-width:86%;text-align:center;animation:vsSlide 3.6s ease-out infinite}
.vs-bill{width:52%;background:#fff;border-radius:3px;box-shadow:0 2px 6px rgba(80,60,30,.18);padding:6px;display:flex;flex-direction:column;gap:4px}.vs-bill i{height:3px;background:#d9cbb2;border-radius:2px}.vs-bill i:nth-child(2){width:70%}.vs-bill b{height:0;border-top:1px dashed #b9a582;margin-top:2px}
.vs-foot{background:linear-gradient(160deg,#5f7d6c,#2b3a33 70%)}
.vs-ph{position:absolute;top:8px;left:8px;font-size:10.5px;padding:2px 7px;border-radius:999px;background:rgba(0,0,0,.45)}
.vs-key{position:absolute;left:8%;top:22%;max-width:70%;background:#fff;color:#1d1a16;padding:5px 8px;border-radius:4px;font-size:clamp(11px,2.6vw,15px);line-height:1.25;box-shadow:4px 4px 0 var(--gold,#c9a24a);animation:vsPop 3s ease-in-out infinite}
.vs-key em{font-style:normal;background:linear-gradient(transparent 55%,#ffe27a 55%)}
.vs-arw{position:absolute;right:12%;top:44%;width:26%;fill:none;stroke:#ffe27a;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:100;animation:vsDraw 3s ease-out infinite}
.vs-ring{position:absolute;left:50%;bottom:22%;width:24%;aspect-ratio:1;transform:translateX(-50%);border:2.5px solid #ffe27a;border-radius:50%;animation:vsPulse 2.4s ease-in-out infinite}
.vs-recap{background:#3a2b20}
.vs-warm{position:absolute;inset:0;animation:vsFade 6s ease-in-out infinite}.vs-warm.a{background:radial-gradient(circle at 30% 40%,#e8b77d,#6e4a2e 70%)}.vs-warm.b{background:radial-gradient(circle at 70% 60%,#d79a8a,#4c3428 70%);animation-delay:3s}
.vs-ty{position:absolute;top:12%;left:8%;right:8%;display:flex;flex-direction:column;gap:3px;text-align:center}.vs-ty b{font:italic 600 clamp(12px,3vw,17px)/1.2 var(--display,var(--body))}.vs-ty i{font-style:normal;font-size:11px;opacity:.9}
.vs-logo{position:absolute;left:8%;right:8%;bottom:10%;display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center;animation:vsEnd 6s ease-in-out infinite}.vs-logo b{font-size:12px;letter-spacing:.02em}.vs-logo i{font-style:normal;font-size:10.5px;opacity:.85}
@keyframes vsDraw{0%{stroke-dashoffset:100}55%,100%{stroke-dashoffset:0}}
@keyframes vsRing{0%{transform:scale(.6);opacity:.9}100%{transform:scale(2.4);opacity:0}}
@keyframes vsPop{0%,8%{transform:scale(.85);opacity:0}18%,85%{transform:scale(1);opacity:1}100%{opacity:0}}
@keyframes vsSlide{0%{transform:translateY(14px);opacity:0}25%,100%{transform:none;opacity:1}}
@keyframes vsPulse{0%,100%{transform:translateX(-50%) scale(1);opacity:.9}50%{transform:translateX(-50%) scale(1.12);opacity:.5}}
@keyframes vsFade{0%,100%{opacity:1}50%{opacity:0}}
@keyframes vsEnd{0%,55%{opacity:0;transform:translateY(6px)}70%,100%{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.vrv-s *{animation:none!important}}
@media (max-width:900px){
  .vrw{grid-template-columns:minmax(0,1fr);gap:14px}
  .vrv{order:-1;position:static}
  .vrv-cvw canvas{max-height:40vh}
  .vs-f.story{height:min(40vh,360px)}
}
@media (max-width:480px){.gopt .gcols{grid-template-columns:minmax(0,1fr)}.gtypes{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* hộp thoại rộng trên điện thoại: hàng nút khớp lề 16px, không tràn ngang */
@media (max-width:700px){.modal-card.xwide .modal-actions{margin:0 -16px -16px;padding:12px 16px 14px}}
/* Bộ icon nét SVG thay emoji: cao bằng chữ, theo màu chữ */
svg.xi{display:inline-block;width:1.15em;height:1.15em;vertical-align:-.2em;flex:none;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;position:static;overflow:visible}
.ni svg.xi{width:14px;height:14px;vertical-align:0}
body.sb-mini #shell>.top .nav a .ni svg.xi{width:16px;height:16px}
.icon-btn svg.xi,.btn svg.xi{vertical-align:-.22em}

/* Thẻ bài recap bị lỗi: một hàng gọn, tên dài tự cắt */
html body .rc-card.rc-err{display:flex;grid-template-columns:none;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 14px}
.rc-err-t{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1 1 260px}
.rc-err-t b{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:normal}
.rc-err-t span{font-size:12.5px;color:var(--bad)}
.rc-err-a{display:flex;gap:8px;flex:none}
/* Bài viết mới: chọn cách làm (Thiết kế HEALIVERSE hoặc Bộ hình tĩnh theo mẫu) */
.pv-picks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.pv-pick{position:relative;display:flex;flex-direction:column;gap:6px;text-align:left;padding:16px;min-height:150px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--fg);font:inherit;cursor:pointer}
.pv-pick:hover,.pv-pick:focus-visible{border-color:var(--gold);outline:none;box-shadow:0 0 0 3px rgba(185,138,43,.18)}
.pv-pick b{font-size:16px}.pv-pick span{font-size:14px;line-height:1.45}.pv-pick small{color:var(--muted);font-size:12px;line-height:1.45;margin-top:auto}
.pv-pick.last{border-color:var(--gold)}.pv-pick em{position:absolute;top:10px;right:12px;font-style:normal;font-size:11px;font-weight:700;color:var(--gold)}
@media (max-width:560px){.pv-picks{grid-template-columns:minmax(0,1fr)}.pv-pick{min-height:0}.pv-pick em{position:static;order:-1}}
/* Thẻ Bài Recap chờ duyệt (gọn): trái sửa chữ theo ngôn ngữ, nền tảng; phải ảnh và một khối đăng */
.rc-card.rc3{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:12px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface);margin-bottom:14px}
.rc3-hd{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.rc3-ht{display:grid;gap:2px;min-width:0}.rc3-ht b{font-size:16px;overflow-wrap:anywhere}.rc3-ht small{font-size:12px}
.rc3-body{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:14px;align-items:start}
.rc3-ed,.rc3-side{display:grid;gap:10px;min-width:0}
.rc3-tabs{display:flex;flex-wrap:wrap;gap:4px;padding:3px;border-radius:10px;background:var(--sunk);width:max-content;max-width:100%}
.rc3-tabs button{min-height:34px;padding:4px 12px;border:0;border-radius:8px;background:none;color:var(--muted);font:600 13px var(--body);cursor:pointer}
.rc3-tabs button.on{background:var(--surface);color:var(--fg);box-shadow:0 1px 3px rgba(0,0,0,.12)}
.rc3-tabs button small{font-weight:500;opacity:.7}
.rc3-tabs.sm button{min-height:30px;font-size:12px;padding:3px 10px}
.rc3-ta{width:100%;box-sizing:border-box;min-height:120px;max-height:calc(10 * 1.5em + 24px);overflow:auto;resize:vertical;line-height:1.5;font:inherit;font-size:14px;line-height:1.5;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--fg)}
.rc3-sd{border:1px solid var(--line);border-radius:10px;background:var(--sunk)}
.rc3-sd>summary{display:flex;align-items:center;gap:6px;min-height:40px;padding:6px 12px;cursor:pointer;font:600 13px var(--body);color:var(--fg)}
.rc3-sd[open]>summary{border-bottom:1px solid var(--line)}
.rc3-sd .sd-box{border:0;margin:0;background:none}
.rc3-act{display:flex;flex-wrap:wrap;gap:6px}
.rc3-blk{display:grid;gap:8px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--sunk)}
.rc3-lb{font:700 12px var(--body);color:var(--muted)}.rc3-lb .muted{font-weight:500}
.rc3-ph{display:grid;grid-template-columns:repeat(auto-fill,minmax(56px,1fr));gap:6px}
.rc3-ph .rc-pi{aspect-ratio:1;width:100%;height:auto}
.rc3-lg{display:grid;gap:6px;padding-bottom:8px;border-bottom:1px dashed var(--line)}
.rc3-lg:has([data-rcl]:not(:checked)) .rc-chips{opacity:.45}
.rc3-lgc{display:flex;align-items:center;gap:8px;min-height:32px}.rc3-lgc small{margin-left:auto}
.rc3-when{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.rc3-when select,.rc3-when input[type=datetime-local]{min-height:40px;flex:1 1 180px;min-width:0}
.rc3-pub .rc-okb{width:100%;min-height:44px}
@media (max-width:900px){.rc3-body{grid-template-columns:minmax(0,1fr)}}
@media (max-width:560px){.rc-card.rc3{padding:12px}.rc3-act .btn,.rc3-hd .btn,.rc3-tabs button{min-height:44px}.rc3-tabs{width:100%}.rc3-tabs button{flex:1 1 0}}
.rc3 .rc-pi{position:relative;padding:0;border:2px solid transparent;border-radius:10px;overflow:hidden;cursor:pointer;background:none;aspect-ratio:1;opacity:.45;transition:opacity .2s,border-color .2s}
.rc3 .rc-pi img{width:100%;height:100%;object-fit:cover;display:block}
.rc3 .rc-pi.on{opacity:1;border-color:var(--gold)}
.rc3 .rc-pi i{position:absolute;top:4px;left:4px;min-width:20px;height:20px;border-radius:10px;display:grid;place-items:center;font-style:normal;font-size:11px;font-weight:800;background:#0009;color:#fff;border:1px solid #fff6}
.rc3 .rc-pi.on i{background:var(--gold);color:#141109;border-color:var(--gold)}
.rc3 .rc-chips{display:flex;flex-wrap:wrap;gap:6px}
.rc3 .rc-chp{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 12px;border-radius:999px;border:1px solid var(--line);font-size:13px;cursor:pointer;user-select:none;max-width:100%}
.rc3 .rc-chp input{position:absolute;opacity:0;pointer-events:none}
.rc3 .rc-chp span{overflow-wrap:anywhere}
.rc3 .rc-chp:before{content:"";width:14px;height:14px;border-radius:4px;border:1.5px solid var(--muted);flex:none}
.rc3 .rc-chp.on{border-color:var(--gold);background:color-mix(in srgb,var(--gold) 14%,transparent)}
.rc3 .rc-chp.on:before{background:var(--gold);border-color:var(--gold);box-shadow:inset 0 0 0 2px var(--surface)}
.rc3 .rc-chp.dis{opacity:.45;cursor:not-allowed}
.rc3 .rc-chp{position:relative}
/* nút chính cỡ nhỏ (Lưu, Thêm, Phát...) trên điện thoại vẫn đủ 44px để bấm */
@media(max-width:700px){html body .btn.sm:is(.gold,.primary),html body button.btn.sm[type=submit]{height:44px!important;min-height:44px!important}}
/* Menu trái thu gọn (máy tính): logo, nút mở rộng ngay dưới logo, chấm nhãn, nút tìm, nút biểu tượng */
@media (min-width:1100px){
  body.sb-mini #shell>.top .brand{order:-2}
  body.sb-mini #shell>.top .sb-tg{order:-1;flex:none;width:44px;height:44px;border-radius:12px;font-size:20px;margin:0 auto 8px;border-color:#d9b45c}
  body.sb-mini #shell>.top .bsw{margin:0 auto 6px;width:44px;flex:none}
  body.sb-mini #shell>.top .bsw-b{width:44px;height:44px;padding:0;justify-content:center;gap:0}
  body.sb-mini #shell>.top .bsw-b span,body.sb-mini #shell>.top .bsw-b em{display:none}
  body.sb-mini #shell>.top .bsw-b i{width:14px;height:14px}
  body.sb-mini #shell>.top .bsw-m{left:calc(100% + 10px);top:0;min-width:260px}
  body.sb-mini #shell>.top .gs-w{margin:0 auto 8px}
  body.sb-mini #shell>.top .gs-f{display:none}
  body.sb-mini #shell>.top .gs-ic{display:grid;place-items:center;width:44px;height:44px}
  body.sb-mini #shell>.top .gs-w.open .gs-ic{border-color:#d9b45c}
  body.sb-mini #shell>.top .gs-w.open .gs-f{display:flex;position:fixed;left:calc(var(--sbw) + 8px);top:16px;width:420px;height:48px;z-index:401;box-shadow:0 10px 30px rgba(0,0,0,.45)}
  body.sb-mini #shell>.top .nav a.quay-nav{width:44px;height:44px;padding:0;margin:2px auto 10px;border-radius:12px;box-shadow:none}
  body.sb-mini #shell>.top .nav a.quay-nav .ni,body.sb-mini #shell>.top .nav a.quay-nav .qy-logo{width:20px;height:20px}
}
html[data-theme="light"] body.sb-mini .sb-tg{border-color:#c9a24a}
/* Quản lý app › Nối hộ kênh */
.as-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.as-r{display:flex;gap:12px 16px;align-items:center;justify-content:space-between;padding:12px 0;border-top:1px solid var(--line)}
.as-r:first-child{border-top:0}.as-m{display:flex;flex-direction:column;gap:3px;min-width:0}.as-m>.ap-tag{align-self:flex-start}.as-m a{color:inherit}
.as-a{display:flex;gap:8px;flex:none}
.as-prov{display:flex;flex-direction:column;gap:8px}.as-pv{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}.as-pv .btn{min-width:200px;justify-content:space-between}
.as-web .btn{align-self:flex-start}.as-web{display:flex;flex-direction:column}
.as-url{word-break:break-all;user-select:all;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--sunk);margin:0 0 6px}
.as-grid{margin-bottom:16px}
@media(max-width:700px){.as-r{flex-direction:column;align-items:stretch}.as-a .btn{flex:1}.as-pv .btn{min-width:0;flex:1 1 100%}html body .as-a .btn.sm,html body .as-tbl .btn.sm,html body #asRe,html body .as-f button{height:44px!important;min-height:44px!important}}
