/* ==========================================================================
   Cẩm nang A–Z cho Hộ kinh doanh dưới 1 tỷ đồng — Giang Chi Hương
   ========================================================================== */

/* ---------- fonts ---------- */
@font-face{font-family:Lora;font-style:normal;font-weight:400;font-display:swap;
  src:url(../fonts/lora-vietnamese-400-normal.woff2) format('woff2');
  unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;}
@font-face{font-family:Lora;font-style:normal;font-weight:400;font-display:swap;
  src:url(../fonts/lora-latin-400-normal.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:Lora;font-style:normal;font-weight:600;font-display:swap;
  src:url(../fonts/lora-vietnamese-600-normal.woff2) format('woff2');
  unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;}
@font-face{font-family:Lora;font-style:normal;font-weight:600;font-display:swap;
  src:url(../fonts/lora-latin-600-normal.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:Lora;font-style:italic;font-weight:400;font-display:swap;
  src:url(../fonts/lora-vietnamese-400-italic.woff2) format('woff2');
  unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;}
@font-face{font-family:Lora;font-style:italic;font-weight:400;font-display:swap;
  src:url(../fonts/lora-latin-400-italic.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

@font-face{font-family:'Be Vietnam Pro';font-style:normal;font-weight:400;font-display:swap;
  src:url(../fonts/be-vietnam-pro-vietnamese-400-normal.woff2) format('woff2');
  unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;}
@font-face{font-family:'Be Vietnam Pro';font-style:normal;font-weight:400;font-display:swap;
  src:url(../fonts/be-vietnam-pro-latin-400-normal.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Be Vietnam Pro';font-style:normal;font-weight:600;font-display:swap;
  src:url(../fonts/be-vietnam-pro-vietnamese-600-normal.woff2) format('woff2');
  unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;}
@font-face{font-family:'Be Vietnam Pro';font-style:normal;font-weight:600;font-display:swap;
  src:url(../fonts/be-vietnam-pro-latin-600-normal.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Be Vietnam Pro';font-style:normal;font-weight:700;font-display:swap;
  src:url(../fonts/be-vietnam-pro-vietnamese-700-normal.woff2) format('woff2');
  unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;}
@font-face{font-family:'Be Vietnam Pro';font-style:normal;font-weight:700;font-display:swap;
  src:url(../fonts/be-vietnam-pro-latin-700-normal.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:500;font-display:swap;
  src:url(../fonts/jetbrains-mono-vietnamese-500-normal.woff2) format('woff2');
  unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:500;font-display:swap;
  src:url(../fonts/jetbrains-mono-latin-500-normal.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

/* ---------- tokens + ép sáng ---------- */
:root{
  color-scheme:only light;
  --red-900:#4E1A18; --red-700:#7B2E2B; --red-500:#A6453C;
  --beige-50:#FBF7F0; --beige-100:#F3E9DA; --beige-200:#E6D7C3;
  --ink:#2A2320; --muted:#6E6259; --gold:#B8893B;
  --serif:Lora,Georgia,serif;
  --sans:'Be Vietnam Pro','Segoe UI',system-ui,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,Menlo,monospace;
  --wrap:min(68ch,100%);
}
@media (prefers-color-scheme:dark){
  :root{
    --red-900:#4E1A18; --red-700:#7B2E2B; --red-500:#A6453C;
    --beige-50:#FBF7F0; --beige-100:#F3E9DA; --beige-200:#E6D7C3;
    --ink:#2A2320; --muted:#6E6259; --gold:#B8893B;
  }
}
html,body{background:var(--beige-50)!important;color:var(--ink)!important;}
*{-webkit-text-fill-color:currentColor;}
img{filter:none!important;}

*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{margin:0;font-family:var(--sans);font-size:16.5px;line-height:1.7;
  overflow-x:hidden;-webkit-font-smoothing:antialiased;}
@media(min-width:820px){body{font-size:17.5px;}}
a{color:var(--red-500);}
:focus-visible{outline:2.5px solid var(--gold);outline-offset:2px;border-radius:2px;}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
.noscript{padding:32px;text-align:center;font-family:var(--sans);}

/* ---------- watermark ---------- */
.wm-trace{position:fixed;inset:0;z-index:0;pointer-events:none;user-select:none;
  opacity:.05;background-repeat:repeat;display:none;}
body.unlocked .wm-trace{display:block;}
.wm-brand{margin:38px auto 4px;text-align:center;font-family:var(--serif);
  font-style:italic;font-size:15px;color:var(--red-700);opacity:.07;
  pointer-events:none;user-select:none;letter-spacing:.04em;}
@media print{
  .wm-trace,.wm-brand{-webkit-print-color-adjust:exact;print-color-adjust:exact;display:block!important;}
  .topbar,.nav,.drawer,.scrim,.fabmenu{display:none!important;}
}

/* ---------- cổng mã ---------- */
.gate{position:fixed;inset:0;z-index:60;background:var(--red-900);
  display:flex;align-items:center;justify-content:center;padding:24px;overflow:auto;}
.gate-in{width:100%;max-width:420px;text-align:left;color:#F6EBDD;}
.gate .seal{margin-bottom:22px;}
.gate h1{font-family:var(--serif);font-weight:600;font-size:27px;line-height:1.25;margin:0 0 6px;color:#fff;}
.gate .kick{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin:0 0 14px;}
.gate p.hint{font-size:13.5px;color:#D9C4B4;margin:8px 0 0;line-height:1.6;}
.gate label{display:block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;
  font-weight:600;color:#E7D2BE;margin:26px 0 8px;}
.gate input{width:100%;padding:14px 16px;font-family:var(--mono);font-size:17px;
  border:1.5px solid #8A5A50;border-radius:4px;background:#3B1211;color:#fff;}
.gate input:focus{border-color:var(--gold);}
.btn{display:inline-flex;align-items:center;gap:10px;border:0;cursor:pointer;
  font-family:var(--sans);font-weight:600;font-size:16px;padding:13px 22px;border-radius:4px;
  background:var(--gold);color:#2B1A08;text-decoration:none;}
.btn:hover{filter:brightness(1.06);}
.btn.ghost{background:transparent;color:#E7D2BE;border:1.5px solid #8A5A50;}
.btn.solid{background:var(--red-700);color:#fff;}
.gate .row{margin-top:18px;display:flex;flex-direction:column;gap:12px;align-items:flex-start;}
.gate .err{min-height:20px;margin-top:10px;font-size:13.5px;color:#F0B8A6;}
.gate .curve{display:block;margin-top:30px;}
.gate[hidden]{display:none;}

/* ---------- thanh trên ---------- */
.topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:6px;
  padding:8px 12px;background:rgba(251,247,240,.94);backdrop-filter:blur(6px);
  border-bottom:1px solid var(--beige-200);}
.iconbtn{border:0;background:none;cursor:pointer;padding:8px;line-height:0;border-radius:4px;color:var(--red-700);}
.iconbtn:hover{background:var(--beige-100);}
.crumbs{display:flex;gap:4px;align-items:center;overflow:hidden;font-size:12.5px;color:var(--muted);}
.crumbs a{color:var(--muted);text-decoration:none;padding:4px 6px;border-radius:3px;white-space:nowrap;}
.crumbs a:hover{background:var(--beige-100);color:var(--red-700);}
.crumbs .sep{opacity:.45;}
.crumbs .now{font-family:var(--mono);font-weight:500;color:var(--red-700);
  background:var(--beige-100);padding:3px 8px;border-radius:3px;white-space:nowrap;}

/* ---------- màn hình ---------- */
main{position:relative;z-index:1;}
.screen{display:none;padding:26px 20px 40px;}
.screen.on{display:block;animation:in .25s ease both;}
.screen:not(.on){display:none!important;}   /* chốt chặn: không quy tắc nào phía dưới được lộ màn hình đang ẩn */
@media(min-width:820px){.screen{padding:44px 48px 64px;}}
@keyframes in{from{opacity:0;transform:translateX(14px);}to{opacity:1;transform:none;}}
@media(prefers-reduced-motion:reduce){
  .screen.on{animation:fade .2s ease both;}
  @keyframes fade{from{opacity:0}to{opacity:1}}
}
.wrap{width:var(--wrap);margin:0 auto;}

.crumb{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);
  font-weight:600;margin:0 0 18px;}
.snum{font-family:var(--serif);font-weight:600;font-size:56px;line-height:1;color:var(--red-700);
  margin:0 0 2px;letter-spacing:-.02em;}
@media(min-width:820px){.snum{font-size:76px;}}
.stitle{font-family:var(--serif);font-weight:600;font-size:26px;line-height:1.3;
  color:var(--red-900);margin:0 0 4px;}
@media(min-width:820px){.stitle{font-size:34px;}}
.ssub{font-size:14px;color:var(--muted);margin:2px 0 0;}
.rule{width:44px;height:2px;background:var(--gold);margin:16px 0 26px;border:0;}

.screen p{margin:0 0 15px;}
.screen h3.bh,.screen h4.bh{font-family:var(--sans);font-weight:700;font-size:15px;
  letter-spacing:.02em;color:var(--red-700);margin:30px 0 10px;display:flex;gap:9px;align-items:flex-start;}
.screen h4.bh{font-size:14.5px;color:var(--red-500);margin-top:24px;}
.bh .ico{flex:0 0 20px;margin-top:1px;}
.screen ul,.screen ol{margin:0 0 15px;padding-left:22px;}
.screen li{margin:0 0 7px;}
.screen ul{list-style:none;padding-left:20px;}
.screen ul>li{position:relative;}
.screen ul>li::before{content:"";position:absolute;left:-16px;top:.72em;width:6px;height:6px;
  border:1.5px solid var(--red-500);border-radius:50%;}
.screen ol{list-style:decimal;padding-left:32px;}
.screen ol>li{padding-left:2px;}
.screen ol>li::marker{color:var(--red-500);font-family:var(--mono);font-weight:500;font-size:.92em;}
.mono{font-family:var(--mono);font-size:.94em;font-weight:500;}
strong{font-weight:600;color:var(--red-900);}

/* khối mở đầu / callout */
.call{display:flex;gap:12px;background:var(--beige-100);border-radius:6px;
  padding:15px 17px;margin:20px 0;font-size:15.5px;line-height:1.65;}
.call .ico{flex:0 0 21px;margin-top:2px;}
.call.warn{background:#F7E7E2;}
.call.aim{background:var(--beige-100);}
.cite{border-left:3px solid var(--red-500);background:var(--beige-100);
  padding:13px 16px;margin:20px 0;font-size:14.5px;border-radius:0 5px 5px 0;}
.cite .lab{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;
  font-weight:700;color:var(--red-700);margin-bottom:5px;}
.pull{text-align:center;font-family:var(--serif);font-style:italic;font-size:17.5px;
  line-height:1.6;color:var(--muted);margin:30px auto;max-width:52ch;}
.pull::before{content:"« ";}.pull::after{content:" »";}

/* thẻ vàng */
.promobox,.notebox{border-radius:8px;padding:20px 18px;margin:30px 0;}
.promobox{border:1.5px solid var(--gold);background:rgba(184,137,59,.055);}
.notebox{border:1px solid var(--beige-200);background:var(--beige-100);}
.promobox .tag,.notebox .tag{display:inline-block;font-size:10.5px;letter-spacing:.14em;
  text-transform:uppercase;font-weight:700;border-radius:99px;padding:3px 11px;margin-bottom:13px;}
.promobox .tag{color:#7A5A21;border:1px solid var(--gold);background:rgba(184,137,59,.12);}
.notebox .tag{color:var(--red-700);border:1px solid var(--red-500);background:#fff;}
.promobox>p:last-child,.notebox>p:last-child,
.promobox>ul:last-child,.notebox>ul:last-child{margin-bottom:0;}
.notebox .call{background:#fff;}

/* icon */
.ic{display:inline-block;width:1.05em;height:1.05em;vertical-align:-.16em;margin:0 2px;
  background-repeat:no-repeat;background-size:contain;}
.ic-ok{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237B2E2B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 13c2.4 1.6 4 3.4 5.2 5.4C11.6 12.4 15 7.6 20 4.6'/%3E%3C/svg%3E");}
.ic-no{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A6453C' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M5.4 5.1c4.4 4.5 8.8 9 13.3 13.6M18.8 5.3C14.3 9.7 9.8 14.2 5.2 18.7'/%3E%3C/svg%3E");}

/* ảnh */
figure.shot{margin:20px 0;}
figure.shot img{display:block;width:100%;height:auto;border:1px solid var(--beige-200);
  border-radius:6px;background:#fff;cursor:zoom-in;}
figure.shot.tall{max-width:360px;margin-inline:auto;}

/* bảng */
.tbl{margin:22px 0;}
.tbl table{width:100%;border-collapse:collapse;font-size:14.5px;}
.tbl th{background:var(--beige-100);color:var(--red-900);text-align:center;vertical-align:middle;
  font-weight:700;padding:11px 12px;font-size:13.5px;line-height:1.4;
  border:1px solid var(--beige-200);border-bottom:2px solid var(--red-700);}
.tbl td{padding:10px 12px;border:1px solid var(--beige-200);vertical-align:top;}
.tbl tbody tr:nth-child(odd){background:#fff;}
.tbl tbody tr:nth-child(even){background:var(--beige-50);}
.tbl td.num{font-family:var(--mono);text-align:right;white-space:nowrap;}
.tcards{display:none;}
.tcard{border:1px solid var(--beige-200);border-radius:6px;margin:0 0 12px;overflow:hidden;background:#fff;}
.tcard .r{display:flex;gap:10px;padding:9px 12px;border-top:1px solid var(--beige-200);font-size:14.5px;}
.tcard .r:first-child{border-top:0;background:var(--beige-100);}
.tcard .r:first-child .v{font-weight:600;color:var(--red-900);}
.tcard .k{flex:0 0 38%;font-size:12px;letter-spacing:.06em;text-transform:uppercase;
  font-weight:700;color:var(--red-700);line-height:1.45;padding-top:2px;}
.tcard .v{flex:1;}
.tcard .v.num{font-family:var(--mono);}
@media(max-width:640px){.tbl table{display:none;}.tcards{display:block;}}

/* tabs */
.tabs{margin:24px 0;}
.tabbar{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px;}
.tabbar button{font-family:var(--sans);font-size:13.5px;font-weight:600;cursor:pointer;
  padding:9px 14px;border-radius:4px;border:1px solid var(--beige-200);
  background:#fff;color:var(--muted);text-align:left;line-height:1.35;
  white-space:normal;flex:1 1 auto;min-width:min(100%,180px);max-width:100%;}
.tabbar button[aria-selected=true]{background:var(--red-500);border-color:var(--red-500);color:#fff;}
.tabpane{display:none;}
.tabpane.on{display:block;}
.tabpane>h5{font-family:var(--serif);font-weight:600;font-size:18px;color:var(--red-900);margin:0 0 12px;}
@media(max-width:520px){.tabbar{flex-direction:column;}.tabbar button{min-width:100%;}}

/* điều hướng dưới */
.nav{display:flex;justify-content:space-between;gap:12px;margin:40px auto 0;
  padding-top:18px;border-top:1px solid var(--beige-200);width:var(--wrap);}
.nav button{background:none;border:0;cursor:pointer;font-family:var(--sans);font-size:15px;
  font-weight:600;color:var(--red-700);padding:8px 4px;border-radius:4px;}
.nav button:disabled{opacity:.32;cursor:default;}
.nav button:hover:not(:disabled){color:var(--red-500);}

/* ---------- bìa ---------- */
.cover{background:var(--red-900);color:#F6EBDD;min-height:100svh;position:relative;
  overflow:hidden;padding:38px 22px;}
.screen.cover.on{display:flex;align-items:center;}
@media(min-width:820px){.cover{padding:64px 56px;}}
.cover .in{position:relative;z-index:2;max-width:min(600px,72%);}
.cover .kick{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin:0 0 22px;}
.cover .aud{font-size:13.5px;color:#D9C4B4;margin:0 0 18px;line-height:1.55;}
.cover h1{font-family:var(--serif);font-weight:600;font-size:clamp(30px,7.4vw,58px);
  line-height:1.14;margin:0;color:#fff;letter-spacing:-.01em;}
.cover h1 em{font-style:italic;color:var(--gold);}
.cover .sub{font-size:13.5px;color:#D9C4B4;margin:20px 0 0;line-height:1.6;}
.cover .author{font-family:var(--sans);font-weight:600;letter-spacing:.16em;font-size:14px;
  text-transform:uppercase;margin:26px 0 0;color:#fff;}
.cover .badge{display:inline-block;font-family:var(--mono);font-size:12.5px;color:var(--gold);
  border:1px solid rgba(184,137,59,.5);border-radius:99px;padding:5px 13px;margin:16px 0 26px;}
.cover .portrait{position:absolute;right:-4%;bottom:-2%;height:30%;z-index:1;
  filter:drop-shadow(0 6px 20px rgba(0,0,0,.35));}
@media(min-width:820px){.cover .portrait{height:42%;right:-2%;}}
.cover .curve{position:absolute;left:0;right:0;top:52%;z-index:0;width:100%;opacity:.9;}

/* ---------- ngăn mục lục ---------- */
.scrim{position:fixed;inset:0;background:rgba(42,35,32,.45);z-index:40;opacity:0;
  pointer-events:none;transition:opacity .2s;}
.scrim.on{opacity:1;pointer-events:auto;}
.drawer{position:fixed;top:0;left:0;bottom:0;width:min(340px,88vw);z-index:50;
  background:var(--beige-50);border-right:1px solid var(--beige-200);
  transform:translateX(-100%);transition:transform .25s ease;overflow-y:auto;
  overscroll-behavior:contain;padding:16px 16px 40px;}
.drawer.on{transform:none;}
@media(prefers-reduced-motion:reduce){.drawer{transition:none;}}
.drawer .head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;}
.drawer .head h2{font-family:var(--sans);font-size:12px;letter-spacing:.16em;text-transform:uppercase;
  font-weight:700;color:var(--muted);margin:0;}
.dpart{margin:20px 0 6px;display:flex;gap:11px;align-items:center;}
.dpart .sealnum{flex:0 0 32px;height:32px;position:relative;transform:rotate(-3.5deg);}
.dpart .sealnum span{position:absolute;inset:0;display:grid;place-items:center;
  font-family:var(--serif);font-weight:600;font-size:14px;color:var(--red-700);}
.dpart b{font-family:var(--sans);font-size:12.5px;font-weight:700;letter-spacing:.05em;
  text-transform:uppercase;color:var(--red-900);line-height:1.35;}
.drawer a.item,.toc a.item{display:flex;gap:12px;padding:8px 8px 8px 43px;border-radius:4px;
  text-decoration:none;color:var(--ink);font-size:14.5px;line-height:1.5;align-items:baseline;}
.drawer a.item:hover,.toc a.item:hover{background:var(--beige-100);}
.drawer a.item[aria-current=true],.toc a.item[aria-current=true]{background:var(--beige-100);color:var(--red-700);font-weight:600;}
.drawer a.item .n,.toc a.item .n{font-family:var(--mono);font-size:12.5px;color:var(--red-500);
  flex:0 0 44px;text-align:right;}
.drawer a.item .tt,.toc a.item .tt{flex:1;}
.drawer a.item .tt i,.toc a.item .tt i{color:var(--muted);font-size:13px;}
.toc{margin-top:4px;}
.toc .dpart{margin:26px 0 8px;}
.drawer .foot{margin-top:26px;padding-top:16px;border-top:1px solid var(--beige-200);font-size:13.5px;}
.drawer .foot .who{color:var(--muted);margin-bottom:8px;}
.drawer .foot button{background:none;border:0;color:var(--red-500);font-family:var(--sans);
  font-size:13.5px;cursor:pointer;padding:4px 0;text-decoration:underline;}

/* ---------- copyright / CTA / faq ---------- */
.plain h2{font-family:var(--serif);font-weight:600;font-size:26px;color:var(--red-900);margin:0 0 6px;}
.acc{border-top:1px solid var(--beige-200);}
.acc details{border-bottom:1px solid var(--beige-200);}
.acc summary{cursor:pointer;list-style:none;padding:15px 30px 15px 0;position:relative;
  font-weight:600;font-size:15.5px;color:var(--red-900);line-height:1.5;}
.acc summary::-webkit-details-marker{display:none;}
.acc summary::after{content:"";position:absolute;right:6px;top:22px;width:9px;height:9px;
  border-right:1.6px solid var(--red-500);border-bottom:1.6px solid var(--red-500);
  transform:rotate(45deg);transition:transform .18s;}
.acc details[open] summary::after{transform:rotate(-135deg);}
.acc .body{padding:0 0 16px;}
.cta{text-align:center;}
.cta .btns{display:flex;flex-direction:column;gap:12px;align-items:center;margin:26px 0;}
.cta .btns .btn{width:min(320px,100%);justify-content:center;}
.ctanote{font-size:14.5px;color:var(--muted);max-width:46ch;margin:0 auto 8px;}

/* ---------- lightbox ---------- */
.lb{position:fixed;inset:0;z-index:70;background:rgba(30,24,22,.94);display:none;
  align-items:center;justify-content:center;padding:16px;}
.lb.on{display:flex;}
.lb img{max-width:100%;max-height:88vh;object-fit:contain;border-radius:4px;}
.lb .close{position:absolute;top:14px;right:14px;background:none;border:0;color:#fff;
  font-size:28px;cursor:pointer;line-height:1;padding:8px;}
.lb .wmlb{position:absolute;inset:0;pointer-events:none;opacity:.09;background-repeat:repeat;}
.lb .cap{position:absolute;bottom:14px;left:0;right:0;text-align:center;color:#E7D2BE;font-size:13px;padding:0 20px;}

/* ---------- xem thử ---------- */
.paywall{text-align:center;padding:36px 20px 10px;border-top:1px dashed var(--beige-200);margin-top:30px;}
.paywall h3{font-family:var(--serif);font-size:22px;color:var(--red-900);margin:0 0 8px;}
.paywall p{color:var(--muted);max-width:44ch;margin:0 auto 18px;font-size:15px;}
.resume{position:fixed;left:50%;transform:translateX(-50%);bottom:18px;z-index:35;
  background:var(--red-700);color:#fff;border-radius:99px;padding:10px 16px;font-size:14px;
  display:flex;gap:12px;align-items:center;box-shadow:0 4px 18px rgba(78,26,24,.28);}
.resume button{background:none;border:0;color:#fff;font-family:var(--sans);font-size:14px;
  font-weight:600;cursor:pointer;text-decoration:underline;}
.resume .x{text-decoration:none;opacity:.7;font-size:17px;}

/* ---------- liên kết chéo trong nội dung ---------- */
.xref{color:var(--red-500);text-decoration:none;font-weight:600;
  border-bottom:1px dashed var(--red-500);padding:0 1px;white-space:nowrap;}
.xref:hover{background:var(--beige-100);}

/* ---------- dải chuyển nhanh giữa 2 cách làm ---------- */
.switch{margin:0 0 22px;}
.switch button{font-family:var(--sans);font-size:14px;font-weight:600;cursor:pointer;
  color:var(--red-700);background:var(--beige-100);border:1px solid var(--beige-200);
  border-radius:99px;padding:8px 16px;}
.switch button:hover{background:var(--beige-200);}

/* ---------- checklist tích được ---------- */
.chklist{list-style:none;padding-left:0!important;margin:16px 0 18px;}
.chklist>li{margin:0 0 2px;}
.chklist>li::before{content:none!important;}
.chklist label{display:flex;gap:11px;align-items:flex-start;cursor:pointer;
  padding:9px 11px;border-radius:6px;border:1px solid var(--beige-200);background:#fff;}
.chklist label:hover{background:var(--beige-100);}
.chklist input{flex:0 0 auto;width:19px;height:19px;margin:2px 0 0;accent-color:var(--red-700);cursor:pointer;}
.chklist li.done label{background:var(--beige-100);border-color:var(--beige-200);}
.chklist li.done span{color:var(--muted);text-decoration:line-through;text-decoration-thickness:1px;}

/* ---------- FAQ: số câu ---------- */
.acc summary{display:flex;gap:12px;align-items:baseline;}
.acc .qn{flex:0 0 auto;font-family:var(--mono);font-size:12px;font-weight:500;
  color:var(--red-500);background:var(--beige-100);border-radius:3px;padding:2px 7px;}

/* ---------- màn hình kết nối ---------- */
.ctaseal{display:flex;justify-content:center;margin-bottom:18px;}
.cta .stitle{text-align:center;margin-bottom:12px;}
.cta .ctanote{font-size:15.5px;color:var(--ink);max-width:44ch;margin:0 auto 4px;}
.cta .ctafine{font-size:13.5px;color:var(--muted);max-width:46ch;margin:18px auto 0;line-height:1.6;}
.cta .btns{margin:24px 0 4px;}
.btn.line{background:#fff;color:var(--red-700);border:1px solid var(--beige-200);}
.btn.line:hover{background:var(--beige-100);filter:none;}
.pwbtn{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;}

/* ---------- số mục cỡ lớn: co lại khi mã dài (10.6, 4.4a) ---------- */
.snum{font-size:clamp(38px,11vw,56px);}
@media(min-width:820px){.snum{font-size:68px;}}

/* ---------- chặn chọn / copy nội dung ---------- */
.screen{-webkit-user-select:none;-moz-user-select:none;user-select:none;
  -webkit-touch-callout:none;}
.gate input,.chklist input{-webkit-user-select:auto;user-select:auto;}
