/* generated by tools/unify_styles.py, do not edit by hand.
   Shared content styles for every page. Load before assets/site.css. */

/* ---- cz-f15f95: used by 90 pages ---- */
:root:where(:has(> body.cz-f15f95)){--bg:#ffffff; --fg:#1f2937; --muted:#64748b; --accent:#2563eb;
  --border:#e2e8f0; --code-bg:#f8fafc; --th-bg:#f1f5f9; --row:#fafbfc;
  --good:#16a34a; --bad:#dc2626; --warn:#b45309;
  --ink:#0f172a; --violet:#7c3aed;
  --easy:#047857; --easy-bg:#ecfdf5; --easy-bd:#a7f3d0;
  --med:#b45309;  --med-bg:#fffbeb;  --med-bd:#fde68a;
  --hard:#b91c1c; --hard-bg:#fef2f2; --hard-bd:#fecaca;}
:where(body.cz-f15f95) *{box-sizing:border-box}
html:where(:has(> body.cz-f15f95)){scroll-behavior:smooth}
body:where(.cz-f15f95){margin:0; background:var(--bg); color:var(--fg);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  line-height:1.65; font-size:17px;}
:where(body.cz-f15f95) .wrap,:where(body.cz-f15f95).wrap{max-width:960px; margin:0 auto; padding:48px 24px 96px}
:where(body.cz-f15f95) h1{font-size:2.1rem; line-height:1.2; margin:0 0 .3em; letter-spacing:-.02em}
:where(body.cz-f15f95) h2{font-size:1.5rem; margin:2.2em 0 .6em; padding-bottom:.25em; border-bottom:2px solid var(--border)}
:where(body.cz-f15f95) h3{font-size:1.15rem; margin:1.8em 0 .4em; scroll-margin-top:16px}
:where(body.cz-f15f95) h4{font-size:1rem; margin:1.4em 0 .3em; color:var(--ink)}
:where(body.cz-f15f95) p{margin:.7em 0}
:where(body.cz-f15f95) .lead,:where(body.cz-f15f95).lead{color:var(--muted); font-size:1.05rem; font-style:italic; margin-bottom:1.5em}
:where(body.cz-f15f95) a{color:var(--accent); text-decoration:none}
:where(body.cz-f15f95) a:hover{text-decoration:underline}
:where(body.cz-f15f95) ul,:where(body.cz-f15f95) ol{padding-left:1.4em}
:where(body.cz-f15f95) li{margin:.35em 0}
:where(body.cz-f15f95) strong{color:var(--ink)}
:where(body.cz-f15f95) .backlink,:where(body.cz-f15f95).backlink{font-size:.9rem; margin-bottom:1.5em}
:where(body.cz-f15f95) .chapmeta,:where(body.cz-f15f95).chapmeta{display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin:0 0 1.2em}
:where(body.cz-f15f95) .badge,:where(body.cz-f15f95).badge{display:inline-block; font-size:.72rem; font-weight:700; letter-spacing:.05em;
       text-transform:uppercase; padding:.28em .7em; border-radius:999px;
       background:#eff6ff; color:#1d4ed8; border:1px solid #bfdbfe}
:where(body.cz-f15f95) .badge.part,:where(body.cz-f15f95).badge.part{background:#f5f3ff; color:#6d28d9; border-color:#ddd6fe}
:where(body.cz-f15f95) .badge.ds,:where(body.cz-f15f95).badge.ds{background:#ecfdf5; color:#047857; border-color:#a7f3d0}
:where(body.cz-f15f95) .badge.soon,:where(body.cz-f15f95).badge.soon{background:#f8fafc; color:#64748b; border-color:var(--border)}
:where(body.cz-f15f95) .pill,:where(body.cz-f15f95).pill{display:inline-block; font-size:.68rem; font-weight:800; letter-spacing:.05em;
      text-transform:uppercase; padding:.16em .6em; border-radius:999px;
      vertical-align:middle; margin-left:.5em; white-space:nowrap}
:where(body.cz-f15f95) .pill.easy,:where(body.cz-f15f95).pill.easy{background:var(--easy-bg); color:var(--easy); border:1px solid var(--easy-bd)}
:where(body.cz-f15f95) .pill.med,:where(body.cz-f15f95).pill.med{background:var(--med-bg);  color:var(--med);  border:1px solid var(--med-bd)}
:where(body.cz-f15f95) .pill.hard,:where(body.cz-f15f95).pill.hard{background:var(--hard-bg);color:var(--hard); border:1px solid var(--hard-bd)}
:where(body.cz-f15f95) .chips,:where(body.cz-f15f95).chips{display:flex; flex-wrap:wrap; gap:8px; margin:.9em 0 1.1em}
:where(body.cz-f15f95) .chip,:where(body.cz-f15f95).chip{font-size:.8rem; padding:.25em .7em; border-radius:8px; border:1px solid var(--border);
      background:var(--code-bg); color:var(--ink)}
:where(body.cz-f15f95) .chip b,:where(body.cz-f15f95).chip b{color:var(--muted); font-weight:600; text-transform:uppercase; font-size:.72rem;
        letter-spacing:.04em; margin-right:.4em}
:where(body.cz-f15f95) code{font-family:"SF Mono",ui-monospace,Menlo,Consolas,monospace; font-size:.9em;
     background:var(--code-bg); padding:.1em .35em; border-radius:4px; border:1px solid var(--border)}
:where(body.cz-f15f95) pre{background:var(--code-bg); border:1px solid var(--border); border-radius:10px;
    padding:16px 18px; overflow-x:auto; margin:1em 0; line-height:1.55}
:where(body.cz-f15f95) pre code{background:none; border:none; padding:0; font-size:.85rem; color:var(--ink)}
:where(body.cz-f15f95) .cmt,:where(body.cz-f15f95).cmt{color:var(--good)}
:where(body.cz-f15f95) .kw,:where(body.cz-f15f95).kw{color:var(--violet); font-weight:600}
:where(body.cz-f15f95) .ln,:where(body.cz-f15f95).ln{color:#94a3b8; user-select:none}
:where(body.cz-f15f95) .py-kw,:where(body.cz-f15f95).py-kw{color:#7c3aed; font-weight:600}
:where(body.cz-f15f95) .py-bi,:where(body.cz-f15f95).py-bi{color:#0891b2}
:where(body.cz-f15f95) .py-str,:where(body.cz-f15f95).py-str{color:#b45309}
:where(body.cz-f15f95) .py-cmt,:where(body.cz-f15f95).py-cmt{color:#16a34a; font-style:italic}
:where(body.cz-f15f95) .py-num,:where(body.cz-f15f95).py-num{color:#be185d}
:where(body.cz-f15f95) .py-fn,:where(body.cz-f15f95).py-fn{color:#1d4ed8; font-weight:600}
:where(body.cz-f15f95) .py-dec,:where(body.cz-f15f95).py-dec{color:#9333ea}
:where(body.cz-f15f95) .py-self,:where(body.cz-f15f95).py-self{color:#0f766e; font-style:italic}
:where(body.cz-f15f95) .tmpl,:where(body.cz-f15f95).tmpl{background:#fffdf7; border:1px solid #fde68a; border-radius:10px;
      padding:4px 18px 14px; margin:1.1em 0}
:where(body.cz-f15f95) .tmpl .name,:where(body.cz-f15f95).tmpl .name{display:inline-block; font-weight:700; color:#92400e; font-size:.8rem;
            text-transform:uppercase; letter-spacing:.05em; margin:12px 0 -4px}
:where(body.cz-f15f95) .tmpl pre,:where(body.cz-f15f95).tmpl pre{background:#fffdf7; border:none; padding:10px 0 0; margin:.4em 0 0}
:where(body.cz-f15f95) .tmpl-cap,:where(body.cz-f15f95).tmpl-cap{color:var(--muted); font-size:.85rem; margin:-.6em 0 1.4em}
:where(body.cz-f15f95) table{border-collapse:collapse; width:100%; margin:1.2em 0; font-size:.95rem}
:where(body.cz-f15f95) th,:where(body.cz-f15f95) td{border:1px solid var(--border); padding:9px 12px; text-align:left; vertical-align:top}
:where(body.cz-f15f95) th{background:var(--th-bg); font-weight:600}
:where(body.cz-f15f95) tbody tr:nth-child(even){background:var(--row)}
:where(body.cz-f15f95) td.num{text-align:right; font-variant-numeric:tabular-nums}
:where(body.cz-f15f95) td.mono,:where(body.cz-f15f95) th.mono{font-family:"SF Mono",ui-monospace,Menlo,Consolas,monospace; font-size:.86rem}
:where(body.cz-f15f95) td.ok{color:var(--good)}
:where(body.cz-f15f95) td.bad{color:var(--bad)}
:where(body.cz-f15f95) figure{margin:1.6em 0; text-align:center}
:where(body.cz-f15f95) figure svg{max-width:100%; height:auto}
:where(body.cz-f15f95) .svgbox,:where(body.cz-f15f95).svgbox{border:1px solid var(--border); border-radius:10px; padding:14px;
        background:#fcfdff; box-shadow:0 1px 3px rgba(15,23,42,.05)}
:where(body.cz-f15f95) figcaption{color:var(--muted); font-size:.85rem; margin-top:.6em; text-align:center}
:where(body.cz-f15f95) .toc,:where(body.cz-f15f95).toc{background:var(--code-bg); border:1px solid var(--border); border-radius:10px; padding:16px 22px; margin:1.5em 0}
:where(body.cz-f15f95) .toc h2,:where(body.cz-f15f95).toc h2{border:none; margin:.1em 0 .4em; font-size:1.05rem}
:where(body.cz-f15f95) .toc ol,:where(body.cz-f15f95).toc ol{columns:2; column-gap:32px; margin:0}
:where(body.cz-f15f95) .note,:where(body.cz-f15f95).note{background:#eff6ff; border-left:4px solid var(--accent); border-radius:6px;
      padding:.6em 1em; margin:1.2em 0; color:#1e3a5f}
:where(body.cz-f15f95) .warn,:where(body.cz-f15f95).warn{background:#fffbeb; border-left:4px solid #f59e0b; border-radius:6px;
      padding:.6em 1em; margin:1.2em 0; color:#713f12}
:where(body.cz-f15f95) .keyidea,:where(body.cz-f15f95).keyidea{background:#fdf4ff; border:1px solid #f0abfc; border-radius:10px; padding:.6em 1.1em;
         margin:1.2em 0; color:#701a75}
:where(body.cz-f15f95) .recap,:where(body.cz-f15f95).recap{background:#f0fdf4; border:1px solid #86efac; border-radius:10px; padding:.9em 1.2em; margin:1.6em 0}
:where(body.cz-f15f95) .recap h3,:where(body.cz-f15f95).recap h3{margin:.1em 0 .4em; font-size:1rem; color:#065f46}
:where(body.cz-f15f95) .recap ul,:where(body.cz-f15f95).recap ul{margin:.3em 0}
:where(body.cz-f15f95) .say,:where(body.cz-f15f95).say{background:#f8fafc; border:1px dashed #cbd5e1; border-radius:10px; padding:.6em 1.1em;
     margin:1.1em 0; color:#334155; font-size:.95rem}
:where(body.cz-f15f95) .say b,:where(body.cz-f15f95).say b{color:var(--ink)}
:where(body.cz-f15f95) .def,:where(body.cz-f15f95).def{background:#f5f3ff; border-left:4px solid var(--violet); border-radius:6px;
     padding:.55em 1em; margin:1em 0; color:#4c1d95}
:where(body.cz-f15f95) .def b,:where(body.cz-f15f95).def b{color:#5b21b6}
:where(body.cz-f15f95) .def code,:where(body.cz-f15f95).def code{background:#ede9fe; border-color:#ddd6fe}
:where(body.cz-f15f95) .xlang,:where(body.cz-f15f95).xlang{font-size:.9rem; color:var(--muted); margin:.3em 0 1em; padding-left:.2em}
:where(body.cz-f15f95) .xlang b,:where(body.cz-f15f95).xlang b{color:var(--ink); font-weight:600}
:where(body.cz-f15f95) .prob,:where(body.cz-f15f95).prob{border:1px solid var(--border); border-left:4px solid var(--accent);
      border-radius:10px; padding:2px 20px 16px; margin:1.8em 0; background:#fff}
:where(body.cz-f15f95) .prob h3,:where(body.cz-f15f95).prob h3{margin-top:1.1em}
:where(body.cz-f15f95) .prob h4,:where(body.cz-f15f95).prob h4{color:var(--muted); text-transform:uppercase; letter-spacing:.05em; font-size:.75rem;
         margin:1.3em 0 .2em}
:where(body.cz-f15f95) .codepair,:where(body.cz-f15f95).codepair{display:grid; grid-template-columns:1fr 1fr; gap:14px; margin:1em 0 1.6em}
@media (max-width:720px){
:where(body.cz-f15f95) .codepair,:where(body.cz-f15f95).codepair{grid-template-columns:1fr}
:where(body.cz-f15f95) .toc ol,:where(body.cz-f15f95).toc ol{columns:1}
}
:where(body.cz-f15f95) .codebox,:where(body.cz-f15f95).codebox{border:1px solid var(--border); border-radius:10px; overflow:hidden; display:flex; flex-direction:column}
:where(body.cz-f15f95) .codebox .lbl,:where(body.cz-f15f95).codebox .lbl{font-size:.8rem; font-weight:700; padding:.4em .85em; color:#fff}
:where(body.cz-f15f95) .codebox.bad .lbl,:where(body.cz-f15f95).codebox.bad .lbl{background:var(--bad)}
:where(body.cz-f15f95) .codebox.good .lbl,:where(body.cz-f15f95).codebox.good .lbl{background:var(--good)}
:where(body.cz-f15f95) .codebox pre,:where(body.cz-f15f95).codebox pre{margin:0; border:none; border-radius:0; flex:1; background:#fff}
:where(body.cz-f15f95) hr{border:none; border-top:1px solid var(--border); margin:2.5em 0}
:where(body.cz-f15f95) .chapnav,:where(body.cz-f15f95).chapnav{display:flex; justify-content:space-between; gap:16px; margin:2.5em 0 1em; font-size:.92rem}
:where(body.cz-f15f95) .chapnav a,:where(body.cz-f15f95).chapnav a{font-weight:600}
:where(body.cz-f15f95) .chapnav span,:where(body.cz-f15f95).chapnav span{color:var(--muted)}
:where(body.cz-f15f95) footer{color:var(--muted); font-size:.85rem; text-align:center; margin-top:2em}
:where(body.cz-f15f95) .btnlist,:where(body.cz-f15f95).btnlist{display:flex; flex-direction:column; gap:9px}
:where(body.cz-f15f95) a.btn{display:flex; align-items:center; gap:11px; text-decoration:none;
      background:#fff; border:1.5px solid var(--border); border-radius:11px;
      padding:10px 15px; font-size:.95rem; font-weight:700; color:var(--accent);
      transition:border-color .15s,box-shadow .15s,transform .15s}
:where(body.cz-f15f95) a.btn:hover{border-color:var(--accent); box-shadow:0 1px 8px rgba(37,99,235,.12); transform:translateY(-1px)}
:where(body.cz-f15f95) a.btn .dot{width:11px; height:11px; border-radius:50%; background:#22d3ee; flex:none;
           box-shadow:0 0 0 3px rgba(34,211,238,.18)}
:where(body.cz-f15f95) a.btn .num{color:var(--accent); font-variant-numeric:tabular-nums; min-width:1.6em}
:where(body.cz-f15f95) a.btn .sep{color:var(--muted); font-weight:400; margin:0 .15em}
:where(body.cz-f15f95) a.btn .tag{margin-left:auto; font-size:.68rem; font-weight:700; color:#047857;
           background:#ecfdf5; border:1px solid #a7f3d0; border-radius:999px; padding:.15em .6em;
           text-transform:uppercase; letter-spacing:.04em}
:where(body.cz-f15f95) h2.part{font-size:1rem; margin:2em 0 .8em; color:#000; font-weight:700;
        text-transform:uppercase; letter-spacing:.05em; border-bottom:1px solid var(--border);
        padding-bottom:.3em}
:where(body.cz-f15f95) h2.part:first-of-type{margin-top:1.2em}
:where(body.cz-f15f95) .pcard,:where(body.cz-f15f95).pcard{border:1.5px solid var(--border); border-radius:12px; padding:14px 18px; margin:12px 0;
       background:#fff; transition:border-color .15s, box-shadow .15s}
:where(body.cz-f15f95) .pcard:hover,:where(body.cz-f15f95).pcard:hover{border-color:var(--accent); box-shadow:0 1px 8px rgba(37,99,235,.10)}
:where(body.cz-f15f95) .pcard .hd,:where(body.cz-f15f95).pcard .hd{display:flex; align-items:center; gap:10px; flex-wrap:wrap}
:where(body.cz-f15f95) .pcard .hd .n,:where(body.cz-f15f95).pcard .hd .n{font-variant-numeric:tabular-nums; color:var(--muted); font-weight:700; min-width:1.6em}
:where(body.cz-f15f95) .pcard .hd a,:where(body.cz-f15f95).pcard .hd a{font-size:1.05rem; font-weight:700}
:where(body.cz-f15f95) .pcard .why,:where(body.cz-f15f95).pcard .why{color:var(--muted); font-size:.9rem; margin:.4em 0 .5em}
:where(body.cz-f15f95) .pcard ul,:where(body.cz-f15f95).pcard ul{margin:.2em 0 .1em; padding-left:1.2em; font-size:.9rem; columns:2; column-gap:28px}
:where(body.cz-f15f95) .pcard li,:where(body.cz-f15f95).pcard li{margin:.15em 0; break-inside:avoid}
@media (max-width:720px){
:where(body.cz-f15f95) .pcard ul,:where(body.cz-f15f95).pcard ul{columns:1}
}

/* ---- cz-c3fcf5: used by 36 pages ---- */
:root:where(:has(> body.cz-c3fcf5)){--bg:#ffffff; --fg:#1f2937; --muted:#64748b; --accent:#2563eb;
  --border:#e2e8f0; --code-bg:#f8fafc; --th-bg:#f1f5f9; --row:#fafbfc;
  --good:#16a34a; --bad:#dc2626; --warn:#b45309;
  --ink:#0f172a; --violet:#7c3aed;}
:where(body.cz-c3fcf5) *{box-sizing:border-box}
html:where(:has(> body.cz-c3fcf5)){scroll-behavior:smooth}
body:where(.cz-c3fcf5){margin:0; background:var(--bg); color:var(--fg);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  line-height:1.65; font-size:17px;}
:where(body.cz-c3fcf5) .wrap,:where(body.cz-c3fcf5).wrap{max-width:960px; margin:0 auto; padding:48px 24px 96px}
:where(body.cz-c3fcf5) h1{font-size:2.1rem; line-height:1.2; margin:0 0 .3em; letter-spacing:-.02em}
:where(body.cz-c3fcf5) h2{font-size:1.5rem; margin:2.2em 0 .6em; padding-bottom:.25em; border-bottom:2px solid var(--border)}
:where(body.cz-c3fcf5) h3{font-size:1.15rem; margin:1.8em 0 .4em}
:where(body.cz-c3fcf5) h4{font-size:1rem; margin:1.4em 0 .3em; color:var(--ink)}
:where(body.cz-c3fcf5) p{margin:.7em 0}
:where(body.cz-c3fcf5) .lead,:where(body.cz-c3fcf5).lead{color:var(--muted); font-size:1.05rem; font-style:italic; margin-bottom:1.5em}
:where(body.cz-c3fcf5) a{color:var(--accent); text-decoration:none}
:where(body.cz-c3fcf5) a:hover{text-decoration:underline}
:where(body.cz-c3fcf5) ul,:where(body.cz-c3fcf5) ol{padding-left:1.4em}
:where(body.cz-c3fcf5) li{margin:.35em 0}
:where(body.cz-c3fcf5) strong{color:var(--ink)}
:where(body.cz-c3fcf5) .backlink,:where(body.cz-c3fcf5).backlink{font-size:.9rem; margin-bottom:1.5em}
:where(body.cz-c3fcf5) .chapmeta,:where(body.cz-c3fcf5).chapmeta{display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin:0 0 1.2em}
:where(body.cz-c3fcf5) .badge,:where(body.cz-c3fcf5).badge{display:inline-block; font-size:.72rem; font-weight:700; letter-spacing:.05em;
       text-transform:uppercase; padding:.28em .7em; border-radius:999px;
       background:#eff6ff; color:#1d4ed8; border:1px solid #bfdbfe}
:where(body.cz-c3fcf5) .badge.part,:where(body.cz-c3fcf5).badge.part{background:#f5f3ff; color:#6d28d9; border-color:#ddd6fe}
:where(body.cz-c3fcf5) .badge.ds,:where(body.cz-c3fcf5).badge.ds{background:#ecfdf5; color:#047857; border-color:#a7f3d0}
:where(body.cz-c3fcf5) .badge.soon,:where(body.cz-c3fcf5).badge.soon{background:#f8fafc; color:#64748b; border-color:var(--border)}
:where(body.cz-c3fcf5) code{font-family:"SF Mono",ui-monospace,Menlo,Consolas,monospace; font-size:.9em;
     background:var(--code-bg); padding:.1em .35em; border-radius:4px; border:1px solid var(--border)}
:where(body.cz-c3fcf5) pre{background:var(--code-bg); border:1px solid var(--border); border-radius:10px;
    padding:16px 18px; overflow-x:auto; margin:1em 0; line-height:1.5}
:where(body.cz-c3fcf5) pre code{background:none; border:none; padding:0; font-size:.85rem; color:var(--ink)}
:where(body.cz-c3fcf5) .cmt,:where(body.cz-c3fcf5).cmt{color:var(--good)}
:where(body.cz-c3fcf5) .kw,:where(body.cz-c3fcf5).kw{color:var(--violet); font-weight:600}
:where(body.cz-c3fcf5) .ln,:where(body.cz-c3fcf5).ln{color:#94a3b8; user-select:none}
:where(body.cz-c3fcf5) .pseudo,:where(body.cz-c3fcf5).pseudo{background:#fffdf7; border:1px solid #fde68a; border-radius:10px;
        padding:14px 18px; overflow-x:auto; margin:1.1em 0; line-height:1.55}
:where(body.cz-c3fcf5) .pseudo .name,:where(body.cz-c3fcf5).pseudo .name{font-weight:700; color:#92400e}
:where(body.cz-c3fcf5) .pseudo code,:where(body.cz-c3fcf5).pseudo code{background:none; border:none; padding:0; font-size:.86rem; color:var(--ink)}
:where(body.cz-c3fcf5) .pseudo .ln,:where(body.cz-c3fcf5).pseudo .ln{color:#c8a24a}
:where(body.cz-c3fcf5) .pseudo-cap,:where(body.cz-c3fcf5).pseudo-cap{color:var(--muted); font-size:.85rem; margin:-.6em 0 1.4em}
:where(body.cz-c3fcf5) table{border-collapse:collapse; width:100%; margin:1.2em 0; font-size:.95rem}
:where(body.cz-c3fcf5) th,:where(body.cz-c3fcf5) td{border:1px solid var(--border); padding:9px 12px; text-align:left; vertical-align:top}
:where(body.cz-c3fcf5) th{background:var(--th-bg); font-weight:600}
:where(body.cz-c3fcf5) tbody tr:nth-child(even){background:var(--row)}
:where(body.cz-c3fcf5) td.num{text-align:right; font-variant-numeric:tabular-nums}
:where(body.cz-c3fcf5) figure{margin:1.6em 0; text-align:center}
:where(body.cz-c3fcf5) figure svg{max-width:100%; height:auto}
:where(body.cz-c3fcf5) .svgbox,:where(body.cz-c3fcf5).svgbox{border:1px solid var(--border); border-radius:10px; padding:14px;
        background:#fcfdff; box-shadow:0 1px 3px rgba(15,23,42,.05)}
:where(body.cz-c3fcf5) figcaption{color:var(--muted); font-size:.85rem; margin-top:.6em; text-align:center}
:where(body.cz-c3fcf5) .toc,:where(body.cz-c3fcf5).toc{background:var(--code-bg); border:1px solid var(--border); border-radius:10px; padding:16px 22px; margin:1.5em 0}
:where(body.cz-c3fcf5) .toc h2,:where(body.cz-c3fcf5).toc h2{border:none; margin:.1em 0 .4em; font-size:1.05rem}
:where(body.cz-c3fcf5) .toc ol,:where(body.cz-c3fcf5).toc ol{columns:2; column-gap:32px; margin:0}
:where(body.cz-c3fcf5) .note,:where(body.cz-c3fcf5).note{background:#eff6ff; border-left:4px solid var(--accent); border-radius:6px;
      padding:.6em 1em; margin:1.2em 0; color:#1e3a5f}
:where(body.cz-c3fcf5) .warn,:where(body.cz-c3fcf5).warn{background:#fffbeb; border-left:4px solid #f59e0b; border-radius:6px;
      padding:.6em 1em; margin:1.2em 0; color:#713f12}
:where(body.cz-c3fcf5) .keyidea,:where(body.cz-c3fcf5).keyidea{background:#fdf4ff; border:1px solid #f0abfc; border-radius:10px; padding:.6em 1.1em;
         margin:1.2em 0; color:#701a75}
:where(body.cz-c3fcf5) .recap,:where(body.cz-c3fcf5).recap{background:#f0fdf4; border:1px solid #86efac; border-radius:10px; padding:.9em 1.2em; margin:1.6em 0}
:where(body.cz-c3fcf5) .recap h3,:where(body.cz-c3fcf5).recap h3{margin:.1em 0 .4em; font-size:1rem; color:#065f46}
:where(body.cz-c3fcf5) .recap ul,:where(body.cz-c3fcf5).recap ul{margin:.3em 0}
:where(body.cz-c3fcf5) .codepair,:where(body.cz-c3fcf5).codepair{display:grid; grid-template-columns:1fr 1fr; gap:14px; margin:1em 0 1.6em}
@media (max-width:720px){
:where(body.cz-c3fcf5) .codepair,:where(body.cz-c3fcf5).codepair{grid-template-columns:1fr}
:where(body.cz-c3fcf5) .toc ol,:where(body.cz-c3fcf5).toc ol{columns:1}
}
:where(body.cz-c3fcf5) .codebox,:where(body.cz-c3fcf5).codebox{border:1px solid var(--border); border-radius:10px; overflow:hidden; display:flex; flex-direction:column}
:where(body.cz-c3fcf5) .codebox .lbl,:where(body.cz-c3fcf5).codebox .lbl{font-size:.8rem; font-weight:700; padding:.4em .85em; color:#fff}
:where(body.cz-c3fcf5) .codebox.bad .lbl,:where(body.cz-c3fcf5).codebox.bad .lbl{background:var(--bad)}
:where(body.cz-c3fcf5) .codebox.good .lbl,:where(body.cz-c3fcf5).codebox.good .lbl{background:var(--good)}
:where(body.cz-c3fcf5) .codebox pre,:where(body.cz-c3fcf5).codebox pre{margin:0; border:none; border-radius:0; flex:1; background:#fff}
:where(body.cz-c3fcf5) hr{border:none; border-top:1px solid var(--border); margin:2.5em 0}
:where(body.cz-c3fcf5) .chapnav,:where(body.cz-c3fcf5).chapnav{display:flex; justify-content:space-between; gap:16px; margin:2.5em 0 1em; font-size:.92rem}
:where(body.cz-c3fcf5) .chapnav a,:where(body.cz-c3fcf5).chapnav a{font-weight:600}
:where(body.cz-c3fcf5) .chapnav span,:where(body.cz-c3fcf5).chapnav span{color:var(--muted)}
:where(body.cz-c3fcf5) footer{color:var(--muted); font-size:.85rem; text-align:center; margin-top:2em}
:where(body.cz-c3fcf5) .btnlist,:where(body.cz-c3fcf5).btnlist{display:flex; flex-direction:column; gap:9px}
:where(body.cz-c3fcf5) a.btn{display:flex; align-items:center; gap:11px; text-decoration:none;
      background:#fff; border:1.5px solid var(--border); border-radius:11px;
      padding:10px 15px; font-size:.95rem; font-weight:700; color:var(--accent);
      transition:border-color .15s,box-shadow .15s,transform .15s}
:where(body.cz-c3fcf5) a.btn:hover{border-color:var(--accent); box-shadow:0 1px 8px rgba(37,99,235,.12); transform:translateY(-1px)}
:where(body.cz-c3fcf5) a.btn .dot{width:11px; height:11px; border-radius:50%; background:#22d3ee; flex:none;
           box-shadow:0 0 0 3px rgba(34,211,238,.18)}
:where(body.cz-c3fcf5) a.btn .num{color:var(--accent); font-variant-numeric:tabular-nums; min-width:1.6em}
:where(body.cz-c3fcf5) a.btn .sep{color:var(--muted); font-weight:400; margin:0 .15em}
:where(body.cz-c3fcf5) a.btn .tag{margin-left:auto; font-size:.68rem; font-weight:700; color:#047857;
           background:#ecfdf5; border:1px solid #a7f3d0; border-radius:999px; padding:.15em .6em;
           text-transform:uppercase; letter-spacing:.04em}
:where(body.cz-c3fcf5) span.btn{display:flex; align-items:center; gap:11px; background:#fbfcfe;
         border:1.5px dashed var(--border); border-radius:11px; padding:10px 15px;
         font-size:.95rem; font-weight:600; color:#94a3b8}
:where(body.cz-c3fcf5) span.btn .dot{width:11px; height:11px; border-radius:50%; background:#e2e8f0; flex:none}
:where(body.cz-c3fcf5) span.btn .num{font-variant-numeric:tabular-nums; min-width:1.6em}
:where(body.cz-c3fcf5) h2.part{font-size:1rem; margin:2em 0 .8em; color:#000; font-weight:700;
        text-transform:uppercase; letter-spacing:.05em; border-bottom:1px solid var(--border);
        padding-bottom:.3em}
:where(body.cz-c3fcf5) h2.part:first-of-type{margin-top:1.2em}

/* ---- cz-434717: used by 55 pages ---- */
:root:where(:has(> body.cz-434717)){--bg:#ffffff; --fg:#1f2937; --muted:#64748b; --accent:#2563eb;
    --border:#e2e8f0; --code-bg:#f8fafc; --th-bg:#f1f5f9; --row:#fafbfc;}
:where(body.cz-434717) *{box-sizing:border-box}
html:where(:has(> body.cz-434717)){scroll-behavior:smooth}
body:where(.cz-434717){margin:0; background:var(--bg); color:var(--fg);
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    line-height:1.65; font-size:17px;}
:where(body.cz-434717) .wrap,:where(body.cz-434717).wrap{max-width:880px; margin:0 auto; padding:48px 24px 96px}
:where(body.cz-434717) h1{font-size:2.1rem; line-height:1.2; margin:0 0 .3em; letter-spacing:-.02em}
:where(body.cz-434717) h2{font-size:1.5rem; margin:2.2em 0 .6em; padding-bottom:.25em; border-bottom:2px solid var(--border)}
:where(body.cz-434717) h3{font-size:1.15rem; margin:1.6em 0 .4em}
:where(body.cz-434717) p{margin:.7em 0}
:where(body.cz-434717) .lead,:where(body.cz-434717).lead{color:var(--muted); font-size:1.05rem; font-style:italic; margin-bottom:1.5em}
:where(body.cz-434717) a{color:var(--accent); text-decoration:none}
:where(body.cz-434717) a:hover{text-decoration:underline}
:where(body.cz-434717) ul,:where(body.cz-434717) ol{padding-left:1.4em}
:where(body.cz-434717) li{margin:.35em 0}
:where(body.cz-434717) code{font-family:"SF Mono",ui-monospace,Menlo,Consolas,monospace; font-size:.9em;
       background:var(--code-bg); padding:.1em .35em; border-radius:4px; border:1px solid var(--border)}
:where(body.cz-434717) pre{background:var(--code-bg); border:1px solid var(--border); border-radius:10px;
      padding:16px 18px; overflow-x:auto; margin:1em 0; line-height:1.5}
:where(body.cz-434717) pre code{background:none; border:none; padding:0; font-size:.85rem; color:#0f172a}
:where(body.cz-434717) .cmt,:where(body.cz-434717).cmt{color:#16a34a}
:where(body.cz-434717) table{border-collapse:collapse; width:100%; margin:1.2em 0; font-size:.95rem}
:where(body.cz-434717) th,:where(body.cz-434717) td{border:1px solid var(--border); padding:9px 12px; text-align:left; vertical-align:top}
:where(body.cz-434717) th{background:var(--th-bg); font-weight:600}
:where(body.cz-434717) tbody tr:nth-child(even){background:var(--row)}
:where(body.cz-434717) figure{margin:1.6em 0; text-align:center}
:where(body.cz-434717) figure img{max-width:100%; height:auto; border:1px solid var(--border);
             border-radius:10px; box-shadow:0 1px 3px rgba(15,23,42,.06)}
:where(body.cz-434717) figcaption{color:var(--muted); font-size:.85rem; margin-top:.5em}
:where(body.cz-434717) .toc,:where(body.cz-434717).toc{background:var(--code-bg); border:1px solid var(--border); border-radius:10px; padding:16px 22px; margin:1.5em 0}
:where(body.cz-434717) .toc h2,:where(body.cz-434717).toc h2{border:none; margin:.1em 0 .4em; font-size:1.05rem}
:where(body.cz-434717) .toc ol,:where(body.cz-434717).toc ol{columns:2; column-gap:32px; margin:0}
:where(body.cz-434717) .note,:where(body.cz-434717).note{background:#eff6ff; border-left:4px solid var(--accent); border-radius:6px; padding:.6em 1em; margin:1.2em 0; color:#1e3a5f}
:where(body.cz-434717) hr{border:none; border-top:1px solid var(--border); margin:2.5em 0}
:where(body.cz-434717) footer{color:var(--muted); font-size:.85rem; text-align:center; margin-top:3em}
:where(body.cz-434717) .backlink,:where(body.cz-434717).backlink{font-size:.9rem; margin-bottom:1.5em}
:where(body.cz-434717) .backlink .sep,:where(body.cz-434717).backlink .sep{color:var(--muted); margin:0 .4em}

/* ---- cz-ce3667: used by 21 pages ---- */
:root:where(:has(> body.cz-ce3667)){--bg:#fff;--fg:#1f2937;--muted:#64748b;--accent:#2563eb;--border:#e2e8f0;--dot:#22d3ee}
:where(body.cz-ce3667) *{box-sizing:border-box}
body:where(.cz-ce3667){margin:0;background:var(--bg);color:var(--fg);
       font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;line-height:1.6}
:where(body.cz-ce3667) .wrap,:where(body.cz-ce3667).wrap{max-width:640px;margin:0 auto;padding:56px 24px 96px}
:where(body.cz-ce3667) h1{font-size:2.2rem;margin:0 0 .2em;letter-spacing:-.02em}
:where(body.cz-ce3667) .lead,:where(body.cz-ce3667).lead{color:var(--muted);font-size:1.05rem;margin-bottom:2em}
:where(body.cz-ce3667) .backlink,:where(body.cz-ce3667).backlink{margin:0 0 1.6em}
:where(body.cz-ce3667) .backlink a,:where(body.cz-ce3667).backlink a{color:var(--accent);text-decoration:none;font-weight:600;font-size:.9rem}
:where(body.cz-ce3667) .backlink a:hover,:where(body.cz-ce3667).backlink a:hover{text-decoration:underline}
:where(body.cz-ce3667) h2.section{font-size:1.05rem;margin:2.4em 0 1em;color:#000;font-weight:600;
             text-transform:uppercase;letter-spacing:.05em}
:where(body.cz-ce3667) h2.section:first-of-type{margin-top:1em}
:where(body.cz-ce3667) .btnlist,:where(body.cz-ce3667).btnlist{display:flex;flex-direction:column;gap:10px;max-width:440px}
:where(body.cz-ce3667) a.btn{display:flex;align-items:center;gap:11px;text-decoration:none;
        background:#fff;border:1.5px solid var(--border);border-radius:11px;
        padding:11px 16px;font-size:.95rem;font-weight:700;color:var(--accent);
        transition:border-color .15s,box-shadow .15s,transform .15s}
:where(body.cz-ce3667) a.btn:hover{border-color:var(--accent);box-shadow:0 1px 8px rgba(37,99,235,.12);transform:translateY(-1px)}
:where(body.cz-ce3667) a.btn .dot{width:11px;height:11px;border-radius:50%;background:var(--dot);flex:none;
             box-shadow:0 0 0 3px rgba(34,211,238,.18)}
:where(body.cz-ce3667) a.btn .num{color:var(--accent);font-variant-numeric:tabular-nums}
:where(body.cz-ce3667) a.btn .sep{color:var(--muted);font-weight:400;margin:0 .15em}
:where(body.cz-ce3667) a.btn .count{margin-left:auto;font-size:.72rem;font-weight:600;color:var(--muted);
               text-transform:uppercase;letter-spacing:.04em}
:where(body.cz-ce3667) .backlink .sep,:where(body.cz-ce3667).backlink .sep{color:var(--muted); margin:0 .4em}

/* ---- cz-f9f15d: used by 37 pages ---- */
:root:where(:has(> body.cz-f9f15d)){--bg:#ffffff; --fg:#1f2937; --muted:#64748b; --accent:#2563eb;
    --border:#e2e8f0; --code-bg:#f8fafc; --th-bg:#f1f5f9; --row:#fafbfc;}
:where(body.cz-f9f15d) *{box-sizing:border-box}
html:where(:has(> body.cz-f9f15d)){scroll-behavior:smooth}
body:where(.cz-f9f15d){margin:0; background:var(--bg); color:var(--fg);
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    line-height:1.65; font-size:17px;}
:where(body.cz-f9f15d) .wrap,:where(body.cz-f9f15d).wrap{max-width:880px; margin:0 auto; padding:48px 24px 96px}
:where(body.cz-f9f15d) h1{font-size:2.1rem; line-height:1.2; margin:0 0 .3em; letter-spacing:-.02em}
:where(body.cz-f9f15d) h2{font-size:1.5rem; margin:2.2em 0 .6em; padding-bottom:.25em; border-bottom:2px solid var(--border)}
:where(body.cz-f9f15d) h3{font-size:1.15rem; margin:1.6em 0 .4em}
:where(body.cz-f9f15d) p{margin:.7em 0}
:where(body.cz-f9f15d) .lead,:where(body.cz-f9f15d).lead{color:var(--muted); font-size:1.05rem; font-style:italic; margin-bottom:1.5em}
:where(body.cz-f9f15d) a{color:var(--accent); text-decoration:none}
:where(body.cz-f9f15d) a:hover{text-decoration:underline}
:where(body.cz-f9f15d) ul,:where(body.cz-f9f15d) ol{padding-left:1.4em}
:where(body.cz-f9f15d) li{margin:.35em 0}
:where(body.cz-f9f15d) code{font-family:"SF Mono",ui-monospace,Menlo,Consolas,monospace; font-size:.9em;
       background:var(--code-bg); padding:.1em .35em; border-radius:4px; border:1px solid var(--border)}
:where(body.cz-f9f15d) pre{background:var(--code-bg); border:1px solid var(--border); border-radius:10px;
      padding:16px 18px; overflow-x:auto; margin:1em 0; line-height:1.5}
:where(body.cz-f9f15d) pre code{background:none; border:none; padding:0; font-size:.85rem; color:#0f172a}
:where(body.cz-f9f15d) .cmt,:where(body.cz-f9f15d).cmt{color:#16a34a}
:where(body.cz-f9f15d) table{border-collapse:collapse; width:100%; margin:1.2em 0; font-size:.95rem}
:where(body.cz-f9f15d) th,:where(body.cz-f9f15d) td{border:1px solid var(--border); padding:9px 12px; text-align:left; vertical-align:top}
:where(body.cz-f9f15d) th{background:var(--th-bg); font-weight:600}
:where(body.cz-f9f15d) tbody tr:nth-child(even){background:var(--row)}
:where(body.cz-f9f15d) figure{margin:1.6em 0; text-align:center}
:where(body.cz-f9f15d) figure img{max-width:100%; height:auto; border:1px solid var(--border);
             border-radius:10px; box-shadow:0 1px 3px rgba(15,23,42,.06)}
:where(body.cz-f9f15d) figcaption{color:var(--muted); font-size:.85rem; margin-top:.5em}
:where(body.cz-f9f15d) .toc,:where(body.cz-f9f15d).toc{background:var(--code-bg); border:1px solid var(--border); border-radius:10px; padding:16px 22px; margin:1.5em 0}
:where(body.cz-f9f15d) .toc h2,:where(body.cz-f9f15d).toc h2{border:none; margin:.1em 0 .4em; font-size:1.05rem}
:where(body.cz-f9f15d) .toc ol,:where(body.cz-f9f15d).toc ol{columns:2; column-gap:32px; margin:0}
:where(body.cz-f9f15d) .note,:where(body.cz-f9f15d).note{background:#eff6ff; border-left:4px solid var(--accent); border-radius:6px; padding:.6em 1em; margin:1.2em 0; color:#1e3a5f}
:where(body.cz-f9f15d) hr{border:none; border-top:1px solid var(--border); margin:2.5em 0}
:where(body.cz-f9f15d) footer{color:var(--muted); font-size:.85rem; text-align:center; margin-top:3em}
:where(body.cz-f9f15d) .backlink,:where(body.cz-f9f15d).backlink{font-size:.9rem; margin-bottom:1.5em}
:where(body.cz-f9f15d) .qcard,:where(body.cz-f9f15d).qcard{border:1px solid var(--border); border-radius:12px; padding:2px 22px 18px; margin:1.4em 0;
         box-shadow:0 1px 3px rgba(15,23,42,.04)}
:where(body.cz-f9f15d) .lbl,:where(body.cz-f9f15d).lbl{display:inline-block; font-size:.72rem; font-weight:700; text-transform:uppercase;
       letter-spacing:.05em; padding:.15em .6em; border-radius:999px; margin:1.3em 0 .2em}
:where(body.cz-f9f15d) .lbl.how,:where(body.cz-f9f15d).lbl.how{background:#eff6ff; color:#1d4ed8}
:where(body.cz-f9f15d) .lbl.signal,:where(body.cz-f9f15d).lbl.signal{background:#f0fdf4; color:#15803d}
:where(body.cz-f9f15d) .lbl.data,:where(body.cz-f9f15d).lbl.data{background:#fef3c7; color:#92400e}
:where(body.cz-f9f15d) .qcard h2,:where(body.cz-f9f15d).qcard h2{border-bottom:none; margin:.7em 0 .2em; font-size:1.3rem}
:where(body.cz-f9f15d) .qmini,:where(body.cz-f9f15d).qmini{border:1px solid var(--border); border-radius:10px; padding:2px 18px 14px; margin:1em 0; background:var(--row)}
:where(body.cz-f9f15d) .qmini h3,:where(body.cz-f9f15d).qmini h3{margin:.9em 0 .1em; font-size:1.08rem; border:none}
:where(body.cz-f9f15d) .backlink .sep,:where(body.cz-f9f15d).backlink .sep{color:var(--muted); margin:0 .4em}

/* ---- cz-4a3244: used by 2 pages ---- */
:root:where(:has(> body.cz-4a3244)){--bg:#ffffff; --fg:#1f2937; --muted:#64748b; --accent:#2563eb;
    --border:#c2ccd8; --code-bg:#f8fafc; --th-bg:#f1f5f9; --row:#fafbfc;
    --dot:#22d3ee;}
:where(body.cz-4a3244) *{box-sizing:border-box}
html:where(:has(> body.cz-4a3244)){scroll-behavior:smooth}
body:where(.cz-4a3244){margin:0; background:var(--bg); color:var(--fg);
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    line-height:1.65; font-size:17px;}
:where(body.cz-4a3244) .wrap,:where(body.cz-4a3244).wrap{max-width:880px; margin:0 auto; padding:40px 24px 120px}
:where(body.cz-4a3244) a{color:var(--accent); text-decoration:none}
:where(body.cz-4a3244) a:hover{text-decoration:underline}
:where(body.cz-4a3244) .backlink,:where(body.cz-4a3244).backlink{font-size:.9rem; margin-bottom:1.2em}
:where(body.cz-4a3244) h1{font-size:2rem; line-height:1.2; margin:0 0 .15em; letter-spacing:-.02em}
:where(body.cz-4a3244) .lead,:where(body.cz-4a3244).lead{color:var(--muted); font-size:1.05rem; margin:.2em 0 1.4em}
:where(body.cz-4a3244) .bar,:where(body.cz-4a3244).bar{position:sticky; top:0; z-index:20; background:rgba(255,255,255,.92);
       backdrop-filter:saturate(160%) blur(6px); border-bottom:1px solid var(--border);
       margin:0 -24px 1.4em; padding:10px 24px; display:flex; align-items:center; gap:10px; flex-wrap:wrap}
:where(body.cz-4a3244) .crumbs,:where(body.cz-4a3244).crumbs{font-size:.9rem; color:var(--muted); flex:1 1 auto; min-width:0}
:where(body.cz-4a3244) .crumbs a,:where(body.cz-4a3244).crumbs a{color:var(--accent)}
:where(body.cz-4a3244) .crumbs .sep,:where(body.cz-4a3244).crumbs .sep{color:var(--muted); margin:0 .35em}
:where(body.cz-4a3244) .crumbs .here,:where(body.cz-4a3244).crumbs .here{color:var(--fg); font-weight:600}
:where(body.cz-4a3244) .navbtns,:where(body.cz-4a3244).navbtns{display:flex; gap:8px; flex:none}
:where(body.cz-4a3244) .navbtns button,:where(body.cz-4a3244).navbtns button{border:1.5px solid var(--border); background:#fff; color:var(--accent);
    border-radius:9px; padding:6px 12px; font-size:.85rem; font-weight:600; cursor:pointer;
    transition:border-color .15s, box-shadow .15s, transform .15s}
:where(body.cz-4a3244) .navbtns button:hover,:where(body.cz-4a3244).navbtns button:hover{border-color:var(--accent); box-shadow:0 1px 8px rgba(37,99,235,.12); transform:translateY(-1px)}
:where(body.cz-4a3244) .navbtns button[disabled],:where(body.cz-4a3244).navbtns button[disabled]{color:var(--muted); border-color:var(--border); cursor:default; opacity:.5; transform:none; box-shadow:none}
:where(body.cz-4a3244) .menu,:where(body.cz-4a3244).menu{display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:12px; margin:1.2em 0}
:where(body.cz-4a3244) .node,:where(body.cz-4a3244).node{display:block; text-align:left; border:1.5px solid var(--border); border-radius:12px;
        background:#fff; padding:14px 16px; cursor:pointer; width:100%; font:inherit; color:inherit;
        transition:border-color .15s, box-shadow .15s, transform .15s}
:where(body.cz-4a3244) .node:hover,:where(body.cz-4a3244).node:hover{border-color:var(--accent); box-shadow:0 2px 12px rgba(37,99,235,.12); transform:translateY(-2px)}
:where(body.cz-4a3244) .node .nt,:where(body.cz-4a3244).node .nt{display:flex; align-items:center; gap:9px; font-weight:700; color:var(--accent); font-size:1.02rem}
:where(body.cz-4a3244) .node .nt .dot,:where(body.cz-4a3244).node .nt .dot{width:9px; height:9px; border-radius:50%; background:var(--dot); flex:none;
                 box-shadow:0 0 0 3px rgba(34,211,238,.18)}
:where(body.cz-4a3244) .node .nt .chev,:where(body.cz-4a3244).node .nt .chev{margin-left:auto; color:var(--muted); font-weight:400}
:where(body.cz-4a3244) .node .ns,:where(body.cz-4a3244).node .ns{color:var(--muted); font-size:.9rem; margin-top:.35em; line-height:1.5}
:where(body.cz-4a3244) .node.stub,:where(body.cz-4a3244).node.stub{opacity:.6}
:where(body.cz-4a3244) .node.stub .nt,:where(body.cz-4a3244).node.stub .nt{color:var(--muted)}
:where(body.cz-4a3244) .node.stub .nt .dot,:where(body.cz-4a3244).node.stub .nt .dot{background:#cbd5e1; box-shadow:none}
:where(body.cz-4a3244) .node.stub .tag,:where(body.cz-4a3244).node.stub .tag{margin-left:auto; font-size:.68rem; font-weight:700; text-transform:uppercase;
                  letter-spacing:.04em; color:var(--muted)}
:where(body.cz-4a3244) .detail,:where(body.cz-4a3244).detail{margin:1.2em 0}
:where(body.cz-4a3244) .detail h2,:where(body.cz-4a3244).detail h2{font-size:1.6rem; margin:.1em 0 .5em}
:where(body.cz-4a3244) .field,:where(body.cz-4a3244).field{border:1px solid var(--border); border-radius:12px; padding:2px 20px 16px; margin:1em 0;
         box-shadow:0 1px 3px rgba(15,23,42,.04)}
:where(body.cz-4a3244) .lbl,:where(body.cz-4a3244).lbl{display:inline-block; font-size:.72rem; font-weight:700; text-transform:uppercase;
       letter-spacing:.05em; padding:.15em .6em; border-radius:999px; margin:1.1em 0 .3em}
:where(body.cz-4a3244) .lbl.what,:where(body.cz-4a3244).lbl.what{background:#eff6ff; color:#1d4ed8}
:where(body.cz-4a3244) .lbl.when,:where(body.cz-4a3244).lbl.when{background:#f0fdf4; color:#15803d}
:where(body.cz-4a3244) .lbl.risk,:where(body.cz-4a3244).lbl.risk{background:#fef2f2; color:#b91c1c}
:where(body.cz-4a3244) .lbl.how,:where(body.cz-4a3244).lbl.how{background:#fef3c7; color:#92400e}
:where(body.cz-4a3244) .lbl.k1,:where(body.cz-4a3244).lbl.k1{background:#eff6ff; color:#1d4ed8}
:where(body.cz-4a3244) .lbl.k2,:where(body.cz-4a3244).lbl.k2{background:#f0fdf4; color:#15803d}
:where(body.cz-4a3244) .lbl.k3,:where(body.cz-4a3244).lbl.k3{background:#fef3c7; color:#92400e}
:where(body.cz-4a3244) .lbl.k4,:where(body.cz-4a3244).lbl.k4{background:#f5f3ff; color:#6d28d9}
:where(body.cz-4a3244) .lbl.k5,:where(body.cz-4a3244).lbl.k5{background:#ecfeff; color:#0e7490}
:where(body.cz-4a3244) .lbl.ex,:where(body.cz-4a3244).lbl.ex{background:#eef2ff; color:#4338ca}
:where(body.cz-4a3244) .field.ex-field,:where(body.cz-4a3244).field.ex-field{background:#f8fafc; border-style:dashed}
:where(body.cz-4a3244) .field p,:where(body.cz-4a3244).field p{margin:.2em 0 0}
:where(body.cz-4a3244) .field ul,:where(body.cz-4a3244).field ul{margin:.4em 0 0; padding-left:1.25em}
:where(body.cz-4a3244) .field li,:where(body.cz-4a3244).field li{margin:.32em 0; line-height:1.55}
:where(body.cz-4a3244) .field li strong,:where(body.cz-4a3244).field li strong{color:var(--fg); font-weight:700}
:where(body.cz-4a3244) .note,:where(body.cz-4a3244).note{background:#eff6ff; border-left:4px solid var(--accent); border-radius:6px;
        padding:.6em 1em; margin:1.2em 0; color:#1e3a5f; font-size:.95rem}
:where(body.cz-4a3244) footer{color:var(--muted); font-size:.85rem; text-align:center; margin-top:3em; border-top:1px solid var(--border); padding-top:1.4em}
:where(body.cz-4a3244) .floatnav,:where(body.cz-4a3244).floatnav{position:fixed; right:22px; bottom:22px; display:flex; flex-direction:column; gap:10px; z-index:50}
:where(body.cz-4a3244) .floatnav button,:where(body.cz-4a3244).floatnav button,:where(body.cz-4a3244) .floatnav a,:where(body.cz-4a3244).floatnav a{width:46px; height:46px; border-radius:50%;
    border:3px solid var(--fg); background:#fff; color:var(--accent);
    font-size:1.3rem; line-height:1; cursor:pointer; display:flex; align-items:center;
    justify-content:center; text-decoration:none; padding:0;
    box-shadow:0 2px 8px rgba(15,23,42,.12);
    transition:border-color .15s, box-shadow .15s, transform .15s}
:where(body.cz-4a3244) .floatnav button:hover,:where(body.cz-4a3244).floatnav button:hover,:where(body.cz-4a3244) .floatnav a:hover,:where(body.cz-4a3244).floatnav a:hover{border-color:var(--accent);
    box-shadow:0 4px 14px rgba(37,99,235,.22); transform:translateY(-2px)}
:where(body.cz-4a3244) .backlink .sep,:where(body.cz-4a3244).backlink .sep{color:var(--muted); margin:0 .4em}

/* ---- cz-93afd0: used by 3 pages ---- */
:root:where(:has(> body.cz-93afd0)){--bg:#ffffff; --fg:#1f2937; --muted:#64748b; --accent:#2563eb;
    --border:#e2e8f0; --code-bg:#f8fafc; --th-bg:#f1f5f9; --row:#fafbfc;}
:where(body.cz-93afd0) *{box-sizing:border-box}
html:where(:has(> body.cz-93afd0)){scroll-behavior:smooth}
body:where(.cz-93afd0){margin:0; background:var(--bg); color:var(--fg);
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    line-height:1.65; font-size:17px;}
:where(body.cz-93afd0) .wrap,:where(body.cz-93afd0).wrap{max-width:880px; margin:0 auto; padding:48px 24px 96px}
:where(body.cz-93afd0) h1{font-size:2.1rem; line-height:1.2; margin:0 0 .3em; letter-spacing:-.02em}
:where(body.cz-93afd0) h2{font-size:1.5rem; margin:2.2em 0 .6em; padding-bottom:.25em; border-bottom:2px solid var(--border)}
:where(body.cz-93afd0) h3{font-size:1.15rem; margin:1.6em 0 .4em}
:where(body.cz-93afd0) p{margin:.7em 0}
:where(body.cz-93afd0) .lead,:where(body.cz-93afd0).lead{color:var(--muted); font-size:1.05rem; font-style:italic; margin-bottom:1.5em}
:where(body.cz-93afd0) a{color:var(--accent); text-decoration:none}
:where(body.cz-93afd0) a:hover{text-decoration:underline}
:where(body.cz-93afd0) ul,:where(body.cz-93afd0) ol{padding-left:1.4em}
:where(body.cz-93afd0) li{margin:.35em 0}
:where(body.cz-93afd0) code{font-family:"SF Mono",ui-monospace,Menlo,Consolas,monospace; font-size:.9em;
       background:var(--code-bg); padding:.1em .35em; border-radius:4px; border:1px solid var(--border)}
:where(body.cz-93afd0) pre{background:var(--code-bg); border:1px solid var(--border); border-radius:10px;
      padding:16px 18px; overflow-x:auto; margin:1em 0; line-height:1.5}
:where(body.cz-93afd0) pre code{background:none; border:none; padding:0; font-size:.85rem; color:#0f172a}
:where(body.cz-93afd0) .cmt,:where(body.cz-93afd0).cmt{color:#16a34a}
:where(body.cz-93afd0) table{border-collapse:collapse; width:100%; margin:1.2em 0; font-size:.95rem}
:where(body.cz-93afd0) th,:where(body.cz-93afd0) td{border:1px solid var(--border); padding:9px 12px; text-align:left; vertical-align:top}
:where(body.cz-93afd0) th{background:var(--th-bg); font-weight:600}
:where(body.cz-93afd0) tbody tr:nth-child(even){background:var(--row)}
:where(body.cz-93afd0) figure{margin:1.6em 0; text-align:center}
:where(body.cz-93afd0) figure img{max-width:100%; height:auto; border:1px solid var(--border);
             border-radius:10px; box-shadow:0 1px 3px rgba(15,23,42,.06)}
:where(body.cz-93afd0) figcaption{color:var(--muted); font-size:.85rem; margin-top:.5em}
:where(body.cz-93afd0) .toc,:where(body.cz-93afd0).toc{background:var(--code-bg); border:1px solid var(--border); border-radius:10px; padding:16px 22px; margin:1.5em 0}
:where(body.cz-93afd0) .toc h2,:where(body.cz-93afd0).toc h2{border:none; margin:.1em 0 .4em; font-size:1.05rem}
:where(body.cz-93afd0) .toc ol,:where(body.cz-93afd0).toc ol{columns:2; column-gap:32px; margin:0}
:where(body.cz-93afd0) .note,:where(body.cz-93afd0).note{background:#eff6ff; border-left:4px solid var(--accent); border-radius:6px; padding:.6em 1em; margin:1.2em 0; color:#1e3a5f}
:where(body.cz-93afd0) hr{border:none; border-top:1px solid var(--border); margin:2.5em 0}
:where(body.cz-93afd0) footer{color:var(--muted); font-size:.85rem; text-align:center; margin-top:3em}
:where(body.cz-93afd0) .backlink,:where(body.cz-93afd0).backlink{font-size:.9rem; margin-bottom:1.5em; display:inline-block}
:where(body.cz-93afd0) .backlink .sep,:where(body.cz-93afd0).backlink .sep{color:var(--muted); margin:0 .4em}

/* ---- cz-530c80: used by 17 pages ---- */
:root:where(:has(> body.cz-530c80)){--bg:#ffffff; --fg:#1f2937; --muted:#64748b; --accent:#2563eb;
    --border:#e2e8f0; --code-bg:#f8fafc; --th-bg:#f1f5f9; --row:#fafbfc;}
:where(body.cz-530c80) *{box-sizing:border-box}
html:where(:has(> body.cz-530c80)){scroll-behavior:smooth}
body:where(.cz-530c80){margin:0; background:var(--bg); color:var(--fg);
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    line-height:1.65; font-size:17px;}
:where(body.cz-530c80) .wrap,:where(body.cz-530c80).wrap{max-width:960px; margin:0 auto; padding:48px 24px 96px}
:where(body.cz-530c80) h1{font-size:2.1rem; line-height:1.2; margin:0 0 .3em; letter-spacing:-.02em}
:where(body.cz-530c80) h2{font-size:1.5rem; margin:2.2em 0 .6em; padding-bottom:.25em; border-bottom:2px solid var(--border)}
:where(body.cz-530c80) h3{font-size:1.15rem; margin:1.8em 0 .4em}
:where(body.cz-530c80) p{margin:.7em 0}
:where(body.cz-530c80) .lead,:where(body.cz-530c80).lead{color:var(--muted); font-size:1.05rem; font-style:italic; margin-bottom:1.5em}
:where(body.cz-530c80) a{color:var(--accent); text-decoration:none}
:where(body.cz-530c80) a:hover{text-decoration:underline}
:where(body.cz-530c80) ul,:where(body.cz-530c80) ol{padding-left:1.4em}
:where(body.cz-530c80) li{margin:.35em 0}
:where(body.cz-530c80) code{font-family:"SF Mono",ui-monospace,Menlo,Consolas,monospace; font-size:.9em;
       background:var(--code-bg); padding:.1em .35em; border-radius:4px; border:1px solid var(--border)}
:where(body.cz-530c80) pre{background:var(--code-bg); border:1px solid var(--border); border-radius:10px;
      padding:16px 18px; overflow-x:auto; margin:1em 0; line-height:1.5}
:where(body.cz-530c80) pre code{background:none; border:none; padding:0; font-size:.85rem; color:#0f172a}
:where(body.cz-530c80) .cmt,:where(body.cz-530c80).cmt{color:#16a34a}
:where(body.cz-530c80) .kw,:where(body.cz-530c80).kw{color:#7c3aed; font-weight:600}
:where(body.cz-530c80) table{border-collapse:collapse; width:100%; margin:1.2em 0; font-size:.95rem}
:where(body.cz-530c80) th,:where(body.cz-530c80) td{border:1px solid var(--border); padding:9px 12px; text-align:left; vertical-align:top}
:where(body.cz-530c80) th{background:var(--th-bg); font-weight:600}
:where(body.cz-530c80) tbody tr:nth-child(even){background:var(--row)}
:where(body.cz-530c80) figure{margin:1.6em 0; text-align:center}
:where(body.cz-530c80) figure img{max-width:100%; height:auto; border:1px solid var(--border);
             border-radius:10px; box-shadow:0 1px 3px rgba(15,23,42,.06)}
:where(body.cz-530c80) figcaption{color:var(--muted); font-size:.85rem; margin-top:.5em}
:where(body.cz-530c80) .toc,:where(body.cz-530c80).toc{background:var(--code-bg); border:1px solid var(--border); border-radius:10px; padding:16px 22px; margin:1.5em 0}
:where(body.cz-530c80) .toc h2,:where(body.cz-530c80).toc h2{border:none; margin:.1em 0 .4em; font-size:1.05rem}
:where(body.cz-530c80) .toc ol,:where(body.cz-530c80).toc ol{columns:2; column-gap:32px; margin:0}
:where(body.cz-530c80) .note,:where(body.cz-530c80).note{background:#eff6ff; border-left:4px solid var(--accent); border-radius:6px; padding:.6em 1em; margin:1.2em 0; color:#1e3a5f}
:where(body.cz-530c80) hr{border:none; border-top:1px solid var(--border); margin:2.5em 0}
:where(body.cz-530c80) footer{color:var(--muted); font-size:.85rem; text-align:center; margin-top:3em}
:where(body.cz-530c80) .backlink,:where(body.cz-530c80).backlink{font-size:.9rem; margin-bottom:1.5em}
:where(body.cz-530c80) .codepair,:where(body.cz-530c80).codepair{display:flex; flex-direction:column; gap:14px; margin:1em 0 1.6em}
:where(body.cz-530c80) .codebox,:where(body.cz-530c80).codebox{border:1px solid var(--border); border-radius:10px; overflow:hidden; display:flex; flex-direction:column}
:where(body.cz-530c80) .codebox .lbl,:where(body.cz-530c80).codebox .lbl{font-size:.8rem; font-weight:700; padding:.4em .85em; color:#fff; letter-spacing:.01em}
:where(body.cz-530c80) .codebox.bad .lbl,:where(body.cz-530c80).codebox.bad .lbl{background:#dc2626}
:where(body.cz-530c80) .codebox.good .lbl,:where(body.cz-530c80).codebox.good .lbl{background:#16a34a}
:where(body.cz-530c80) .codebox pre,:where(body.cz-530c80).codebox pre{margin:0; border:none; border-radius:0; flex:1}
:where(body.cz-530c80) .triple,:where(body.cz-530c80).triple{background:#fdf4ff; border:1px solid #f0abfc; border-radius:10px; padding:.5em 1em; margin:1em 0;
          font-family:"SF Mono",ui-monospace,Menlo,Consolas,monospace; font-size:.95rem; color:#701a75}
:where(body.cz-530c80) .backlink .sep,:where(body.cz-530c80).backlink .sep{color:var(--muted); margin:0 .4em}

/* ---- cz-e9f72d: used by 5 pages ---- */
:root:where(:has(> body.cz-e9f72d)){--bg:#ffffff; --fg:#1f2937; --muted:#64748b; --accent:#2563eb;
    --border:#e2e8f0; --code-bg:#f8fafc; --th-bg:#f1f5f9; --row:#fafbfc;}
:where(body.cz-e9f72d) *{box-sizing:border-box}
html:where(:has(> body.cz-e9f72d)){scroll-behavior:smooth}
body:where(.cz-e9f72d){margin:0; background:var(--bg); color:var(--fg);
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    line-height:1.65; font-size:17px;}
:where(body.cz-e9f72d) .wrap,:where(body.cz-e9f72d).wrap{max-width:880px; margin:0 auto; padding:48px 24px 96px}
:where(body.cz-e9f72d) h1{font-size:2.1rem; line-height:1.2; margin:0 0 .3em; letter-spacing:-.02em}
:where(body.cz-e9f72d) h2{font-size:1.5rem; margin:2.2em 0 .6em; padding-bottom:.25em; border-bottom:2px solid var(--border)}
:where(body.cz-e9f72d) h3{font-size:1.15rem; margin:1.6em 0 .4em}
:where(body.cz-e9f72d) p{margin:.7em 0}
:where(body.cz-e9f72d) .lead,:where(body.cz-e9f72d).lead{color:var(--muted); font-size:1.05rem; font-style:italic; margin-bottom:1.5em}
:where(body.cz-e9f72d) a{color:var(--accent); text-decoration:none}
:where(body.cz-e9f72d) a:hover{text-decoration:underline}
:where(body.cz-e9f72d) ul,:where(body.cz-e9f72d) ol{padding-left:1.4em}
:where(body.cz-e9f72d) li{margin:.35em 0}
:where(body.cz-e9f72d) code{font-family:"SF Mono",ui-monospace,Menlo,Consolas,monospace; font-size:.9em;
       background:var(--code-bg); padding:.1em .35em; border-radius:4px; border:1px solid var(--border)}
:where(body.cz-e9f72d) pre{background:var(--code-bg); border:1px solid var(--border); border-radius:10px;
      padding:16px 18px; overflow-x:auto; margin:1em 0; line-height:1.5}
:where(body.cz-e9f72d) pre code{background:none; border:none; padding:0; font-size:.85rem; color:#0f172a}
:where(body.cz-e9f72d) .cmt,:where(body.cz-e9f72d).cmt{color:#16a34a}
:where(body.cz-e9f72d) table{border-collapse:collapse; width:100%; margin:1.2em 0; font-size:.95rem}
@media (max-width:640px){
body:where(.cz-e9f72d) .wrap table{display:block; overflow-x:auto; max-width:100%}
}
:where(body.cz-e9f72d) th,:where(body.cz-e9f72d) td{border:1px solid var(--border); padding:9px 12px; text-align:left; vertical-align:top}
:where(body.cz-e9f72d) th{background:var(--th-bg); font-weight:600}
:where(body.cz-e9f72d) tbody tr:nth-child(even){background:var(--row)}
:where(body.cz-e9f72d) figure{margin:1.6em 0; text-align:center}
:where(body.cz-e9f72d) figure img{max-width:100%; height:auto; border:1px solid var(--border);
             border-radius:10px; box-shadow:0 1px 3px rgba(15,23,42,.06)}
:where(body.cz-e9f72d) figcaption{color:var(--muted); font-size:.85rem; margin-top:.5em}
:where(body.cz-e9f72d) .toc,:where(body.cz-e9f72d).toc{background:var(--code-bg); border:1px solid var(--border); border-radius:10px; padding:16px 22px; margin:1.5em 0}
:where(body.cz-e9f72d) .toc h2,:where(body.cz-e9f72d).toc h2{border:none; margin:.1em 0 .4em; font-size:1.05rem}
:where(body.cz-e9f72d) .toc ol,:where(body.cz-e9f72d).toc ol{columns:2; column-gap:32px; margin:0}
:where(body.cz-e9f72d) .note,:where(body.cz-e9f72d).note{background:#eff6ff; border-left:4px solid var(--accent); border-radius:6px; padding:.6em 1em; margin:1.2em 0; color:#1e3a5f}
:where(body.cz-e9f72d) hr{border:none; border-top:1px solid var(--border); margin:2.5em 0}
:where(body.cz-e9f72d) footer{color:var(--muted); font-size:.85rem; text-align:center; margin-top:3em}
:where(body.cz-e9f72d) .backlink,:where(body.cz-e9f72d).backlink{font-size:.9rem; margin-bottom:1.5em}
:where(body.cz-e9f72d) .backlink .sep,:where(body.cz-e9f72d).backlink .sep{color:var(--muted); margin:0 .4em}

/* ---- cz-f8d765: used by 51 pages ---- */
:where(body.cz-f8d765) .sd-box,:where(body.cz-f8d765).sd-box{border-radius:10px; padding:.75em 1.1em; margin:1.2em 0; border:1px solid var(--border,#e2e8f0); border-left-width:5px}
:where(body.cz-f8d765) .sd-box > b:first-child,:where(body.cz-f8d765).sd-box > b:first-child,:where(body.cz-f8d765) .sd-box > strong:first-child,:where(body.cz-f8d765).sd-box > strong:first-child{display:block; margin-bottom:.25em; font-size:.8rem; letter-spacing:.06em; text-transform:uppercase}
:where(body.cz-f8d765) .sd-box p:first-of-type,:where(body.cz-f8d765).sd-box p:first-of-type{margin-top:.2em}
:where(body.cz-f8d765) .sd-box.tip,:where(body.cz-f8d765).sd-box.tip{background:#f0fdf4; border-left-color:#16a34a}
:where(body.cz-f8d765) .sd-box.tip > b:first-child,:where(body.cz-f8d765).sd-box.tip > b:first-child{color:#15803d}
:where(body.cz-f8d765) .sd-box.mistake,:where(body.cz-f8d765).sd-box.mistake{background:#fef2f2; border-left-color:#dc2626}
:where(body.cz-f8d765) .sd-box.mistake > b:first-child,:where(body.cz-f8d765).sd-box.mistake > b:first-child{color:#b91c1c}
:where(body.cz-f8d765) .sd-box.interview,:where(body.cz-f8d765).sd-box.interview{background:#faf5ff; border-left-color:#7c3aed}
:where(body.cz-f8d765) .sd-box.interview > b:first-child,:where(body.cz-f8d765).sd-box.interview > b:first-child{color:#6d28d9}
:where(body.cz-f8d765) .sd-box.intuition,:where(body.cz-f8d765).sd-box.intuition{background:#fffbeb; border-left-color:#d97706}
:where(body.cz-f8d765) .sd-box.intuition > b:first-child,:where(body.cz-f8d765).sd-box.intuition > b:first-child{color:#b45309}
:where(body.cz-f8d765) table.sd-est td:last-child{font-family:"SF Mono",ui-monospace,Menlo,Consolas,monospace; white-space:nowrap}
:where(body.cz-f8d765) table.sd-est tr.total td{font-weight:700; background:#eff6ff}
:where(body.cz-f8d765) ol.sd-quiz > li{margin:.9em 0}
:where(body.cz-f8d765) details.sd-ans{margin:.35em 0 0; border:1px dashed var(--border,#cbd5e1); border-radius:8px; padding:.3em .8em; background:#f8fafc}
:where(body.cz-f8d765) details.sd-ans > summary{cursor:pointer; color:var(--accent,#2563eb); font-weight:600; font-size:.92rem}
:where(body.cz-f8d765) details.sd-ans[open] > summary{margin-bottom:.3em}
:where(body.cz-f8d765) figure.sd-diagram svg{max-width:100%; height:auto; border:1px solid var(--border,#e2e8f0); border-radius:10px; background:#fff}
:where(body.cz-f8d765) figure.sd-diagram svg text{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
:where(body.cz-f8d765) dl.sd-terms{display:grid; grid-template-columns:max-content 1fr; gap:.35em 1.2em; margin:1em 0}
:where(body.cz-f8d765) dl.sd-terms dt{font-weight:600}
:where(body.cz-f8d765) dl.sd-terms dd{margin:0; color:var(--fg,#1f2937)}
@media (max-width:640px){
:where(body.cz-f8d765) dl.sd-terms{grid-template-columns:1fr}
:where(body.cz-f8d765) dl.sd-terms dd{margin-bottom:.5em}
}
@media (max-width:640px){
:where(body.cz-f8d765) .wrap table,:where(body.cz-f8d765).wrap table{display:block; overflow-x:auto; -webkit-overflow-scrolling:touch}
}
:root:where(:has(> body.cz-f8d765)){--accent:#185f58;--fg:#22312f;--muted:#53665f;--border:#d9e3de;--code-bg:#f5f7f4}
body:where(.cz-f8d765){background:#fcfcf9;line-height:1.75}
:where(body.cz-f8d765) .wrap,:where(body.cz-f8d765).wrap{max-width:1020px;padding-top:40px}
:where(body.cz-f8d765) .wrap > h1,:where(body.cz-f8d765).wrap > h1{max-width:900px;font-size:clamp(1.8rem,4vw,2.6rem);line-height:1.15}
:where(body.cz-f8d765) .wrap h2,:where(body.cz-f8d765).wrap h2{scroll-margin-top:100px;border-bottom-color:#d9e3de}
:where(body.cz-f8d765) .wrap h3,:where(body.cz-f8d765).wrap h3,:where(body.cz-f8d765) .sd-concept,:where(body.cz-f8d765).sd-concept{scroll-margin-top:100px}
:where(body.cz-f8d765) .wrap > p,:where(body.cz-f8d765).wrap > p,:where(body.cz-f8d765) .wrap > ul,:where(body.cz-f8d765).wrap > ul,:where(body.cz-f8d765) .wrap > ol,:where(body.cz-f8d765).wrap > ol{max-width:900px}
:where(body.cz-f8d765) .wrap .lead,:where(body.cz-f8d765).wrap .lead{font-style:normal;color:#53665f}
:where(body.cz-f8d765) .wrap a,:where(body.cz-f8d765).wrap a{color:#185f58}
:where(body.cz-f8d765) .wrap a:focus-visible,:where(body.cz-f8d765).wrap a:focus-visible,:where(body.cz-f8d765) .wrap summary:focus-visible,:where(body.cz-f8d765).wrap summary:focus-visible,:where(body.cz-f8d765) .wrap input:focus-visible,:where(body.cz-f8d765).wrap input:focus-visible{outline:3px solid #ad7525;outline-offset:4px}
:where(body.cz-f8d765) .wrap pre,:where(body.cz-f8d765).wrap pre{background:#f5f7f4;line-height:1.6;max-width:100%;tab-size:4}
:where(body.cz-f8d765) .wrap pre code,:where(body.cz-f8d765).wrap pre code{white-space:pre;font-size:.87rem}
:where(body.cz-f8d765) .wrap .toc,:where(body.cz-f8d765).wrap .toc{background:white;border-color:#d9e3de}
:where(body.cz-f8d765) .wrap .toc ol,:where(body.cz-f8d765).wrap .toc ol{columns:2;column-gap:28px}
:where(body.cz-f8d765) .wrap .toc li,:where(body.cz-f8d765).wrap .toc li{break-inside:avoid}
:where(body.cz-f8d765) .sd-start,:where(body.cz-f8d765).sd-start{background:#eef5f0;border:1px solid #c4dace;border-top:4px solid #185f58;border-radius:12px;padding:20px 24px;margin:24px 0}
:where(body.cz-f8d765) .sd-eyebrow,:where(body.cz-f8d765).sd-eyebrow{color:#185f58;font-size:.75rem;font-weight:750;letter-spacing:.09em;text-transform:uppercase;margin-top:0}
:where(body.cz-f8d765) .sd-assumptions,:where(body.cz-f8d765).sd-assumptions{font-size:.88rem;color:#4a6057;border-top:1px solid #c4dace;padding-top:12px}
:where(body.cz-f8d765) .sd-concept-grid,:where(body.cz-f8d765).sd-concept-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0}
:where(body.cz-f8d765) .sd-concept,:where(body.cz-f8d765).sd-concept{background:white;border:1px solid #d9e3de;border-radius:12px;padding:18px 20px}
:where(body.cz-f8d765) .sd-concept h3,:where(body.cz-f8d765).sd-concept h3{font-size:1.05rem;margin:0 0 10px;color:#185f58}
:where(body.cz-f8d765) .sd-concept p,:where(body.cz-f8d765).sd-concept p{font-size:.94rem;margin:10px 0}
:where(body.cz-f8d765) .sd-concept-example,:where(body.cz-f8d765).sd-concept-example{border-left:3px solid #c49a55;padding-left:12px}
:where(body.cz-f8d765) .sd-concept-limit,:where(body.cz-f8d765).sd-concept-limit{color:#53665f}
:where(body.cz-f8d765) .sd-concept-link,:where(body.cz-f8d765).sd-concept-link{text-decoration:underline dotted;text-underline-offset:4px}
:where(body.cz-f8d765) .sd-trace svg,:where(body.cz-f8d765).sd-trace svg{display:block;width:100%;max-width:760px;height:auto;margin:auto;font-family:inherit}
:where(body.cz-f8d765) .sd-trace figcaption,:where(body.cz-f8d765).sd-trace figcaption{max-width:760px;margin:8px auto}
:where(body.cz-f8d765) .sd-self-check,:where(body.cz-f8d765).sd-self-check,:where(body.cz-f8d765) .sd-sources,:where(body.cz-f8d765).sd-sources{background:#fff8e9;border:1px solid #ead9b3;border-radius:10px;padding:14px 18px;margin:20px 0}
:where(body.cz-f8d765) .sd-sources,:where(body.cz-f8d765).sd-sources{background:white;border-color:#d9e3de}
:where(body.cz-f8d765) .sd-self-check summary,:where(body.cz-f8d765).sd-self-check summary,:where(body.cz-f8d765) .sd-sources summary,:where(body.cz-f8d765).sd-sources summary{cursor:pointer;font-weight:650;line-height:1.5}
:where(body.cz-f8d765) .sd-reviewed,:where(body.cz-f8d765).sd-reviewed{font-size:.8rem;color:#53665f;text-align:center;border-top:1px solid #d9e3de;padding-top:18px;margin-top:40px}
:where(body.cz-f8d765) .wrap .btnlist,:where(body.cz-f8d765).wrap .btnlist{max-width:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
:where(body.cz-f8d765) .wrap a.btn,:where(body.cz-f8d765).wrap a.btn{flex-wrap:wrap;color:#185f58;border-color:#d9e3de;background:white;transition:border-color .15s}
:where(body.cz-f8d765) .wrap a.btn:hover,:where(body.cz-f8d765).wrap a.btn:hover{transform:none;border-color:#185f58;box-shadow:none}
:where(body.cz-f8d765) .wrap a.btn .dot,:where(body.cz-f8d765).wrap a.btn .dot{background:#24746d;box-shadow:none}
:where(body.cz-f8d765) .sd-card-description,:where(body.cz-f8d765).sd-card-description{display:block;flex-basis:100%;font-size:.86rem;line-height:1.55;font-weight:400;color:#53665f}
:where(body.cz-f8d765) .sd-search-label,:where(body.cz-f8d765).sd-search-label{display:block;font-weight:650;margin-bottom:8px}
:where(body.cz-f8d765) #guide-search,:where(body.cz-f8d765)#guide-search{display:block;width:100%;max-width:560px;padding:12px 16px;font:inherit;border:1px solid #99b8a8;border-radius:8px;background:white}
:where(body.cz-f8d765) #guide-search-count,:where(body.cz-f8d765)#guide-search-count{font-size:.85rem;color:#53665f}
:where(body.cz-f8d765) .sd-guide-catalog,:where(body.cz-f8d765).sd-guide-catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
:where(body.cz-f8d765) .sd-guide-card,:where(body.cz-f8d765).sd-guide-card{display:block;border:1px solid #d9e3de;background:white;border-radius:12px;padding:20px;text-decoration:none}
:where(body.cz-f8d765) .sd-guide-card:hover,:where(body.cz-f8d765).sd-guide-card:hover{border-color:#185f58;text-decoration:none}
:where(body.cz-f8d765) .sd-guide-card h3,:where(body.cz-f8d765).sd-guide-card h3{margin:0 0 10px;font-size:1.1rem}
:where(body.cz-f8d765) .sd-guide-card p,:where(body.cz-f8d765).sd-guide-card p{color:#22312f;font-size:.9rem;line-height:1.6}
:where(body.cz-f8d765) .sd-guide-card span,:where(body.cz-f8d765).sd-guide-card span{font-size:.76rem;color:#53665f;line-height:1.6;display:block}
:where(body.cz-f8d765) [hidden],:where(body.cz-f8d765)[hidden]{display:none!important}
@media(max-width:700px){
:where(body.cz-f8d765) .wrap,:where(body.cz-f8d765).wrap{padding:28px 18px 64px}
:where(body.cz-f8d765) .sd-concept-grid,:where(body.cz-f8d765).sd-concept-grid,:where(body.cz-f8d765) .wrap .btnlist,:where(body.cz-f8d765).wrap .btnlist,:where(body.cz-f8d765) .sd-guide-catalog,:where(body.cz-f8d765).sd-guide-catalog{grid-template-columns:1fr}
:where(body.cz-f8d765) .wrap .toc ol,:where(body.cz-f8d765).wrap .toc ol{columns:1}
:where(body.cz-f8d765) .sd-start,:where(body.cz-f8d765).sd-start{padding:16px}
:where(body.cz-f8d765) .wrap table,:where(body.cz-f8d765).wrap table{display:block;overflow-x:auto}
:where(body.cz-f8d765) .wrap .sd-terms,:where(body.cz-f8d765).wrap .sd-terms{grid-template-columns:1fr}
:where(body.cz-f8d765) .wrap .sd-terms dt,:where(body.cz-f8d765).wrap .sd-terms dt{overflow-wrap:anywhere}
:where(body.cz-f8d765) .wrap img,:where(body.cz-f8d765).wrap img{max-width:100%}
}
@media(prefers-reduced-motion:reduce){
html:where(:has(> body.cz-f8d765)){scroll-behavior:auto}
:where(body.cz-f8d765) .wrap *,:where(body.cz-f8d765).wrap *{transition:none!important}
}
@media print{
:where(body.cz-f8d765) .wrap,:where(body.cz-f8d765).wrap{max-width:none;padding:0}
:where(body.cz-f8d765) .sd-start,:where(body.cz-f8d765).sd-start,:where(body.cz-f8d765) .sd-concept,:where(body.cz-f8d765).sd-concept,:where(body.cz-f8d765) .sd-self-check,:where(body.cz-f8d765).sd-self-check{break-inside:avoid}
:where(body.cz-f8d765) .sd-concept-grid,:where(body.cz-f8d765).sd-concept-grid{display:block}
:where(body.cz-f8d765) .sd-concept,:where(body.cz-f8d765).sd-concept{margin-bottom:12px}
:where(body.cz-f8d765) .sd-trace,:where(body.cz-f8d765).sd-trace{break-inside:avoid}
:where(body.cz-f8d765) .wrap pre,:where(body.cz-f8d765).wrap pre{white-space:pre-wrap}
:where(body.cz-f8d765) .wrap pre code,:where(body.cz-f8d765).wrap pre code{white-space:pre-wrap}
:where(body.cz-f8d765) .sd-reviewed,:where(body.cz-f8d765).sd-reviewed{margin-top:20px}
}

/* ---- cz-e6bf8d: used by 146 pages ---- */
@import url('https://fonts.googleapis.com/css2?family=Atkinson+Hyperlegible:wght@400;700&family=Bitter:wght@500;600;700&display=swap');


:root{--bg:#fffaf6;--fg:#2a2140;--accent:#6d4aff;--muted:#6f6680;--border:#f0e2d9;--code-bg:#fbf6f2;--th-bg:#f8eee8;--row:#fffcfa;--surface:#fff;--surface-hover:#fff0ea;--border-strong:#d9c4b8;--text-primary:#2a2140;--text-secondary:#6f6680;--text-muted:#857c95;--primary:#6d4aff;--bg-alt:#fff0ea;--bp-ink:#2a2140;--bp-surface:#fff;--bp-accent-soft:#f1ecff;--bp-brand-soft:#fff0ea}
body:where(.cz-e6bf8d).guide-student{background:var(--bg);color:var(--fg);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;line-height:1.7;font-size:17px}
body:where(.cz-e6bf8d).guide-student h1,body:where(.cz-e6bf8d).guide-student h2,body:where(.cz-e6bf8d).guide-student h3{font-family:var(--bp-round);color:var(--bp-ink)}
body:where(.cz-e6bf8d).guide-student .wrap{max-width:1040px;padding-top:40px}
body:where(.cz-e6bf8d).guide-student .wrap h1{font-size:clamp(1.9rem,4vw,2.7rem);line-height:1.2;max-width:900px}
body:where(.cz-e6bf8d).guide-student .wrap h2{scroll-margin-top:95px;line-height:1.4;border-bottom-color:var(--border)}
body:where(.cz-e6bf8d).guide-student .wrap h3,:where(body.cz-e6bf8d) [id^="guide-concept-"],:where(body.cz-e6bf8d)[id^="guide-concept-"]{scroll-margin-top:95px}
body:where(.cz-e6bf8d).guide-student .wrap>p{max-width:900px}
body:where(.cz-e6bf8d).guide-student .lead{font-style:normal;line-height:1.65;color:var(--muted)}
body:where(.cz-e6bf8d).guide-student .wrap a{color:var(--accent)}
body:where(.cz-e6bf8d).guide-student :is(a,button,input,select,summary):focus-visible{outline:3px solid var(--bp-brand);outline-offset:4px}
body:where(.cz-e6bf8d).guide-student pre{white-space:pre;overflow-x:auto;line-height:1.6;border-radius:10px;background:var(--code-bg);border-color:var(--border)}
body:where(.cz-e6bf8d).guide-student pre code{white-space:pre;font-size:.88rem;color:var(--fg);background:none}
body:where(.cz-e6bf8d).guide-student table{border-collapse:collapse;width:100%;font-size:.95rem;overflow:visible}
body:where(.cz-e6bf8d).guide-student th{background:var(--th-bg)}
body:where(.cz-e6bf8d).guide-student :is(td,th){border-color:var(--border)}
body:where(.cz-e6bf8d).guide-student .toc{background:var(--surface)!important;padding:18px 24px}
body:where(.cz-e6bf8d).guide-student .toc li{break-inside:avoid}
:where(body.cz-e6bf8d) .guide-orientation,:where(body.cz-e6bf8d).guide-orientation{border:1px solid var(--border);border-top:4px solid var(--accent);border-radius:12px;background:var(--surface);padding:22px 26px;margin:24px 0;animation:guide-enter .45s ease-out both}
:where(body.cz-e6bf8d) .guide-eyebrow,:where(body.cz-e6bf8d).guide-eyebrow{font:700 .75rem/1.4 'Atkinson Hyperlegible',sans-serif;color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin:0 0 10px}
:where(body.cz-e6bf8d) .guide-orientation p,:where(body.cz-e6bf8d).guide-orientation p{margin:12px 0}
:where(body.cz-e6bf8d) .guide-scope,:where(body.cz-e6bf8d).guide-scope{font-size:.88rem;color:var(--muted);border-top:1px solid var(--border);padding-top:12px}
:where(body.cz-e6bf8d) .guide-concepts,:where(body.cz-e6bf8d).guide-concepts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0}
:where(body.cz-e6bf8d) .guide-concept,:where(body.cz-e6bf8d).guide-concept{border:1px solid var(--border);border-radius:12px;padding:18px 20px;background:var(--surface)}
:where(body.cz-e6bf8d) .guide-concept h3,:where(body.cz-e6bf8d).guide-concept h3{margin:0 0 10px!important;font-size:1.03rem!important}
:where(body.cz-e6bf8d) .guide-concept p,:where(body.cz-e6bf8d).guide-concept p{font-size:.94rem;line-height:1.7}
:where(body.cz-e6bf8d) .guide-example,:where(body.cz-e6bf8d).guide-example{border-left:3px solid #c89955;padding-left:12px}
:where(body.cz-e6bf8d) .guide-limit,:where(body.cz-e6bf8d).guide-limit{color:var(--muted)}
:where(body.cz-e6bf8d) .guide-concept-link,:where(body.cz-e6bf8d).guide-concept-link{text-decoration:underline dotted;text-underline-offset:4px}
:where(body.cz-e6bf8d) .guide-case,:where(body.cz-e6bf8d).guide-case{border:1px solid var(--border);border-radius:12px;padding:22px;background:var(--surface);margin:24px 0}
:where(body.cz-e6bf8d) .guide-trace svg,:where(body.cz-e6bf8d).guide-trace svg{display:block;width:100%;max-width:800px;height:auto;margin:auto;font-family:inherit}
:where(body.cz-e6bf8d) .guide-check,:where(body.cz-e6bf8d).guide-check{border:1px solid #d9bf96;background:#fff8ed;border-radius:10px;padding:14px 18px;margin:18px 0}
:where(body.cz-e6bf8d) .guide-check summary,:where(body.cz-e6bf8d).guide-check summary{cursor:pointer;font-weight:700;line-height:1.5}
:where(body.cz-e6bf8d) .guide-maintained,:where(body.cz-e6bf8d).guide-maintained{font-size:.8rem;color:var(--muted);text-align:center;margin-top:30px;padding-top:18px;border-top:1px solid var(--border)}
:where(body.cz-e6bf8d) .guide-search-label,:where(body.cz-e6bf8d).guide-search-label{display:block;font-weight:700;margin-bottom:8px}
:where(body.cz-e6bf8d) #guide-catalog-search,:where(body.cz-e6bf8d)#guide-catalog-search{font:inherit;width:100%;max-width:650px;padding:12px 16px;border:1px solid var(--border-strong);border-radius:9px;background:var(--surface);color:var(--fg)}
:where(body.cz-e6bf8d) .guide-catalog,:where(body.cz-e6bf8d).guide-catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:22px 0}
:where(body.cz-e6bf8d) .guide-catalog-card,:where(body.cz-e6bf8d).guide-catalog-card{display:block;padding:20px;border:1px solid var(--border);border-radius:12px;text-decoration:none!important;background:var(--surface)}
:where(body.cz-e6bf8d) .guide-catalog-card:hover,:where(body.cz-e6bf8d).guide-catalog-card:hover{border-color:var(--accent)}
:where(body.cz-e6bf8d) .guide-catalog-card h3,:where(body.cz-e6bf8d).guide-catalog-card h3{font-size:1.08rem;margin:0 0 9px}
:where(body.cz-e6bf8d) .guide-catalog-card p,:where(body.cz-e6bf8d).guide-catalog-card p{font-size:.92rem;line-height:1.6;color:var(--fg)}
:where(body.cz-e6bf8d) .guide-catalog-card small,:where(body.cz-e6bf8d).guide-catalog-card small{display:block;color:var(--muted);font-size:.77rem}
body:where(.cz-e6bf8d).guide-student .btnlist{grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr))}
:where(body.cz-e6bf8d) .guide-card-description,:where(body.cz-e6bf8d).guide-card-description{flex-basis:100%;font-weight:400;font-size:.87rem;line-height:1.6;color:var(--muted)}
:where(body.cz-e6bf8d) .guide-student .viz-menu,:where(body.cz-e6bf8d).guide-student .viz-menu{top:74px;right:16px}
:where(body.cz-e6bf8d) .guide-student .fb-toggle,:where(body.cz-e6bf8d).guide-student .fb-toggle{top:74px;right:62px}
:where(body.cz-e6bf8d) .guide-student .fb-toggle.fb-no-px,:where(body.cz-e6bf8d).guide-student .fb-toggle.fb-no-px{display:none}
:where(body.cz-e6bf8d) .guide-student .bar,:where(body.cz-e6bf8d).guide-student .bar{top:60px;z-index:800}
:where(body.cz-e6bf8d) .guide-student .viz-menu,:where(body.cz-e6bf8d).guide-student .viz-menu{top:auto;bottom:130px;right:18px}
:where(body.cz-e6bf8d) .guide-student .viz-menu-panel,:where(body.cz-e6bf8d).guide-student .viz-menu-panel{top:auto;bottom:calc(100% + 6px)}
:where(body.cz-e6bf8d) .guide-student .triple,:where(body.cz-e6bf8d).guide-student .triple{white-space:pre-wrap;overflow-wrap:anywhere}
:where(body.cz-e6bf8d) .guide-student .sd-start,:where(body.cz-e6bf8d).guide-student .sd-start,:where(body.cz-e6bf8d) .guide-student .sd-concept,:where(body.cz-e6bf8d).guide-student .sd-concept{background:var(--surface);border-color:var(--border)}
:where(body.cz-e6bf8d) .guide-student .sd-concept h3,:where(body.cz-e6bf8d).guide-student .sd-concept h3,:where(body.cz-e6bf8d) .guide-student .sd-start .sd-eyebrow,:where(body.cz-e6bf8d).guide-student .sd-start .sd-eyebrow{color:var(--accent)}
:where(body.cz-e6bf8d) [hidden],:where(body.cz-e6bf8d)[hidden]{display:none!important}
@keyframes guide-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
body:where(.cz-e6bf8d).guide-student.dark-mode{--bg:#1c1726;--fg:#f3eef8;--muted:#bdb3cc;--accent:#a991ff;--border:#3b3249;--code-bg:#251f31;--surface:#251f31;--surface-hover:#30283f;--th-bg:#30283f;--row:#211b2c;--text-primary:#f3eef8;--text-secondary:#bdb3cc;--text-muted:#bdb3cc;--primary:#a991ff;--bg-alt:#30283f;--bp-ink:#f3eef8;--bp-surface:#251f31;--bp-brand-soft:#3a2a2a;--bp-accent-soft:#30283f;background:var(--bg)}
body:where(.cz-e6bf8d).guide-student.dark-mode .bp-bar{background:rgba(28,23,38,.94)}
body:where(.cz-e6bf8d).guide-student.dark-mode :is(.note,.guide-check,.sd-self-check,.sd-box,.gist,.d-meta,.field,.codebox,.qa,.triple){background:#2a2338!important;color:var(--fg)!important;border-color:var(--border)!important}
body:where(.cz-e6bf8d).guide-student.dark-mode :is(.wrap td,.wrap th,.qa-body,.detail,.codebox .lbl,.bp-search-foot){background-color:var(--surface);color:var(--fg)}
body:where(.cz-e6bf8d).guide-student.dark-mode :is(.wrap code,.wrap pre code,.wrap h2.section,.wrap .lbl,.bp-nav-link){color:var(--fg)!important}
body:where(.cz-e6bf8d).guide-student.dark-mode .wrap :is(svg,figure img){background:#fff;border-radius:10px}
body:where(.cz-e6bf8d).guide-student.dark-mode .wrap :is(div,section,article,aside,nav,details){background:var(--surface)!important;color:var(--fg)!important}
body:where(.cz-e6bf8d).guide-student.dark-mode .wrap :is(p,li,summary,label,dt,dd){color:var(--fg)}
body:where(.cz-e6bf8d).guide-student.dark-mode .wrap :is(.chip,.lbl,.tag,.badge,.fillin,.best-h,.h,.idxrow,.node,.bar){background:var(--bg-alt)!important;color:var(--fg)!important}
body:where(.cz-e6bf8d).guide-student.dark-mode .wrap svg{color:#2a2140}
body:where(.cz-e6bf8d).guide-student .guide-trace{break-inside:avoid}
@media(max-width:760px){
body:where(.cz-e6bf8d).guide-student .wrap{padding:28px 18px 70px}
:where(body.cz-e6bf8d) .guide-concepts,:where(body.cz-e6bf8d).guide-concepts,:where(body.cz-e6bf8d) .guide-catalog,:where(body.cz-e6bf8d).guide-catalog{grid-template-columns:1fr}
:where(body.cz-e6bf8d) .guide-orientation,:where(body.cz-e6bf8d).guide-orientation,:where(body.cz-e6bf8d) .guide-case,:where(body.cz-e6bf8d).guide-case{padding:18px}
:where(body.cz-e6bf8d) .guide-student .toc ol,:where(body.cz-e6bf8d).guide-student .toc ol{columns:1}
:where(body.cz-e6bf8d) .guide-student .wrap table,:where(body.cz-e6bf8d).guide-student .wrap table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
:where(body.cz-e6bf8d) .guide-student .viz-menu,:where(body.cz-e6bf8d).guide-student .viz-menu{top:auto;bottom:130px}
:where(body.cz-e6bf8d) .guide-student .fb-toggle,:where(body.cz-e6bf8d).guide-student .fb-toggle{top:auto;bottom:130px}
:where(body.cz-e6bf8d) .guide-student .viz-menu-panel,:where(body.cz-e6bf8d).guide-student .viz-menu-panel{top:auto;bottom:calc(100% + 6px)}
}
@media(prefers-reduced-motion:reduce){
:where(body.cz-e6bf8d) .guide-orientation,:where(body.cz-e6bf8d).guide-orientation{animation:none}
html:where(:has(> body.cz-e6bf8d)){scroll-behavior:auto}
}
@media print{
body:where(.cz-e6bf8d).guide-student .wrap{max-width:none;padding:0}
body:where(.cz-e6bf8d).guide-student .wrap>section{break-inside:auto!important}
:where(body.cz-e6bf8d) .guide-concepts,:where(body.cz-e6bf8d).guide-concepts,:where(body.cz-e6bf8d) .guide-catalog,:where(body.cz-e6bf8d).guide-catalog{display:block}
:where(body.cz-e6bf8d) .guide-concept,:where(body.cz-e6bf8d).guide-concept,:where(body.cz-e6bf8d) .guide-catalog-card,:where(body.cz-e6bf8d).guide-catalog-card{margin-bottom:12px;break-inside:avoid}
:where(body.cz-e6bf8d) .guide-student .bp-bar,:where(body.cz-e6bf8d).guide-student .bp-bar,:where(body.cz-e6bf8d) .guide-student .bp-float,:where(body.cz-e6bf8d).guide-student .bp-float,:where(body.cz-e6bf8d) .guide-student .floatnav,:where(body.cz-e6bf8d).guide-student .floatnav{display:none!important}
:where(body.cz-e6bf8d) .guide-student .wrap pre,:where(body.cz-e6bf8d).guide-student .wrap pre{white-space:pre-wrap}
:where(body.cz-e6bf8d) .guide-student .wrap pre code,:where(body.cz-e6bf8d).guide-student .wrap pre code{white-space:pre-wrap}
:where(body.cz-e6bf8d) .guide-check,:where(body.cz-e6bf8d).guide-check,:where(body.cz-e6bf8d) .guide-orientation,:where(body.cz-e6bf8d).guide-orientation{background:white}
}

/* ---- cz-81006c: used by 147 pages ---- */
:where(body.cz-81006c) .viz-menu,:where(body.cz-81006c).viz-menu{position: fixed;
    top: 1rem;
    right: 1rem;
    z-index: 10000;
    font-family: inherit;}
:where(body.cz-81006c) .viz-menu-toggle,:where(body.cz-81006c).viz-menu-toggle{width: 36px;
    height: 36px;
    border-radius: 8px;
    border: 1px solid var(--border, #e2e8f0);
    background: var(--surface, #fff);
    color: var(--text-secondary, #64748b);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.15s, border-color 0.15s, transform 0.15s;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);}
:where(body.cz-81006c) .viz-menu-toggle:hover,:where(body.cz-81006c).viz-menu-toggle:hover{background: var(--surface-hover, #f8fafc);
    border-color: var(--border-strong, #cbd5e1);
    transform: scale(1.05);}
:where(body.cz-81006c) .viz-menu-panel,:where(body.cz-81006c).viz-menu-panel{position: absolute;
    top: calc(100% + 6px);
    right: 0;
    min-width: 200px;
    background: var(--surface, #fff);
    border: 1px solid var(--border, #e2e8f0);
    border-radius: 10px;
    padding: 4px;
    box-shadow: 0 8px 24px rgba(0,0,0,0.15);
    opacity: 0;
    transform: translateY(-4px) scale(0.97);
    pointer-events: none;
    transition: opacity 0.15s, transform 0.15s;}
:where(body.cz-81006c) .viz-menu.open .viz-menu-panel,:where(body.cz-81006c).viz-menu.open .viz-menu-panel{opacity: 1;
    transform: translateY(0) scale(1);
    pointer-events: auto;}
:where(body.cz-81006c) .viz-menu-item,:where(body.cz-81006c).viz-menu-item{display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 8px 12px;
    border: none;
    border-radius: 7px;
    background: transparent;
    color: var(--text-primary, #0f172a);
    font-size: 0.85rem;
    cursor: pointer;
    text-align: left;
    transition: background 0.1s;
    font-family: inherit;}
:where(body.cz-81006c) .viz-menu-item:hover,:where(body.cz-81006c).viz-menu-item:hover{background: var(--surface-hover, #f1f5f9);}
:where(body.cz-81006c) .viz-menu-icon,:where(body.cz-81006c).viz-menu-icon{width: 20px;
    text-align: center;
    font-size: 1rem;
    flex-shrink: 0;}
:where(body.cz-81006c) [data-animate],:where(body.cz-81006c)[data-animate]{opacity: 0;
    transition-property: opacity, transform, filter;
    transition-duration: 0.6s;
    transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);}
:where(body.cz-81006c) [data-animate="fade-up"],:where(body.cz-81006c)[data-animate="fade-up"]{transform: translateY(20px);}
:where(body.cz-81006c) [data-animate="fade-down"],:where(body.cz-81006c)[data-animate="fade-down"]{transform: translateY(-20px);}
:where(body.cz-81006c) [data-animate="fade-left"],:where(body.cz-81006c)[data-animate="fade-left"]{transform: translateX(-20px);}
:where(body.cz-81006c) [data-animate="fade-right"],:where(body.cz-81006c)[data-animate="fade-right"]{transform: translateX(20px);}
:where(body.cz-81006c) [data-animate="scale-up"],:where(body.cz-81006c)[data-animate="scale-up"]{transform: scale(0.95);}
:where(body.cz-81006c) [data-animate="blur-in"],:where(body.cz-81006c)[data-animate="blur-in"]{filter: blur(8px);}
:where(body.cz-81006c) [data-animate].is-visible,:where(body.cz-81006c)[data-animate].is-visible{opacity: 1;
    transform: none;
    filter: none;}
@media print{
:where(body.cz-81006c) .viz-menu,:where(body.cz-81006c).viz-menu{display: none !important;}
body:where(.cz-81006c){background: white !important; color: black !important;}
:where(body.cz-81006c) .dark-mode,:where(body.cz-81006c).dark-mode{all: unset;}
:where(body.cz-81006c) .card,:where(body.cz-81006c).card,:where(body.cz-81006c) .section,:where(body.cz-81006c).section,:where(body.cz-81006c) section{break-inside: avoid;}
:where(body.cz-81006c) .animate-in,:where(body.cz-81006c).animate-in{opacity: 1 !important; animation: none !important;}
:where(body.cz-81006c) [data-animate],:where(body.cz-81006c)[data-animate]{opacity: 1 !important; transform: none !important; filter: none !important; transition: none !important;}
@page{margin: 1.5cm;}
}
@media (prefers-reduced-motion: reduce){
:where(body.cz-81006c) *,:where(body.cz-81006c) *::before,:where(body.cz-81006c) *::after{animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;}
:where(body.cz-81006c) [data-animate],:where(body.cz-81006c)[data-animate]{opacity: 1 !important;
        transform: none !important;
        filter: none !important;
        transition: none !important;}
}

/* ---- cz-0ff7da: used by 9 pages ---- */
:where(body.cz-0ff7da) .bn-hook,:where(body.cz-0ff7da).bn-hook{font-size:1.1rem;background:rgba(234,179,8,.16);border-left:4px solid #ca8a04;border-radius:6px;padding:.7em 1em;margin:1.2em 0;color:inherit}
:where(body.cz-0ff7da) .bn-ex,:where(body.cz-0ff7da).bn-ex{background:rgba(34,197,94,.13);border-left:4px solid #16a34a;border-radius:6px;padding:.5em .9em;margin:.6em 0 1.2em;color:inherit}
:where(body.cz-0ff7da) .bn-remember,:where(body.cz-0ff7da).bn-remember{background:rgba(59,130,246,.10);border:1px solid rgba(59,130,246,.35);border-radius:10px;padding:.8em 1.2em;margin:1em 0}
:where(body.cz-0ff7da) .bn-remember li,:where(body.cz-0ff7da).bn-remember li{font-weight:600}

/* ---- cz-05a145: used by 120 pages ---- */
:where(body.cz-05a145) .floatnav,:where(body.cz-05a145).floatnav{position:fixed; right:22px; bottom:22px; display:flex; flex-direction:column; gap:10px; z-index:50}
:where(body.cz-05a145) .floatnav button,:where(body.cz-05a145).floatnav button,:where(body.cz-05a145) .floatnav a,:where(body.cz-05a145).floatnav a{width:46px; height:46px; border-radius:50%;
    border:3px solid var(--fg); background:#fff; color:var(--accent);
    font-size:1.3rem; line-height:1; cursor:pointer; display:flex; align-items:center;
    justify-content:center; text-decoration:none; padding:0;
    box-shadow:0 2px 8px rgba(15,23,42,.12);
    transition:border-color .15s, box-shadow .15s, transform .15s}
:where(body.cz-05a145) .floatnav button:hover,:where(body.cz-05a145).floatnav button:hover,:where(body.cz-05a145) .floatnav a:hover,:where(body.cz-05a145).floatnav a:hover{border-color:var(--accent);
    box-shadow:0 4px 14px rgba(37,99,235,.22); transform:translateY(-2px)}
@media print{
:where(body.cz-05a145) .floatnav,:where(body.cz-05a145).floatnav{display:none}
}

/* ---- cz-baf04c: used by 147 pages ---- */
:where(body.cz-baf04c) .fb-toggle,:where(body.cz-baf04c).fb-toggle{position: fixed;
    top: 1rem;
    right: 3.5rem;
    z-index: 10000;
    display: flex;
    align-items: center;
    gap: 6px;
    background: var(--surface, #fff);
    border: 1px solid var(--border, #e2e8f0);
    border-radius: 8px;
    padding: 5px 10px;
    cursor: pointer;
    font-family: inherit;
    font-size: 0.75rem;
    color: var(--text-secondary, #64748b);
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    transition: background 0.15s, border-color 0.15s;}
:where(body.cz-baf04c) .fb-toggle:hover,:where(body.cz-baf04c).fb-toggle:hover{background: var(--surface-hover, #f8fafc);
    border-color: var(--border-strong, #cbd5e1);}
:where(body.cz-baf04c) .fb-toggle.active,:where(body.cz-baf04c).fb-toggle.active{background: var(--primary, #0d9488);
    color: #fff;
    border-color: var(--primary, #0d9488);}
:where(body.cz-baf04c) .fb-section,:where(body.cz-baf04c).fb-section{position: relative;}
:where(body.cz-baf04c) .fb-trigger,:where(body.cz-baf04c).fb-trigger{position: absolute;
    top: 0.4rem;
    right: 0.4rem;
    width: 20px;
    height: 20px;
    border-radius: 4px;
    background: var(--primary, #0d9488);
    color: #fff;
    border: none;
    cursor: pointer;
    font-size: 11px;
    line-height: 20px;
    text-align: center;
    opacity: 0.5;
    transition: opacity 0.2s, transform 0.15s;
    z-index: 100;
    box-shadow: 0 1px 4px rgba(0,0,0,0.12);
    display: none;}
body:where(.cz-baf04c).fb-mode-on .fb-trigger{display: block;}
:where(body.cz-baf04c) .fb-trigger:hover,:where(body.cz-baf04c).fb-trigger:hover{opacity: 1; transform: scale(1.15);}
:where(body.cz-baf04c) .fb-inline-form,:where(body.cz-baf04c).fb-inline-form{position: absolute;
    top: 0.5rem;
    right: 2.8rem;
    background: var(--surface, #fff);
    border: 1px solid var(--border, #d0ddd6);
    border-radius: 10px;
    padding: 0.75rem;
    width: 280px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.12);
    z-index: 101;
    display: none;}
:where(body.cz-baf04c) .fb-inline-form.open,:where(body.cz-baf04c).fb-inline-form.open{display: block;}
:where(body.cz-baf04c) .fb-inline-form textarea,:where(body.cz-baf04c).fb-inline-form textarea{width: 100%;
    min-height: 60px;
    border: 1px solid var(--border, #d0ddd6);
    border-radius: 6px;
    padding: 0.5rem;
    font-family: var(--font-body, sans-serif);
    font-size: 0.8rem;
    resize: vertical;
    background: var(--bg, #f4f7f6);
    color: var(--text-primary, #0f1f1a);}
:where(body.cz-baf04c) .fb-inline-form textarea:focus,:where(body.cz-baf04c).fb-inline-form textarea:focus{outline: 2px solid var(--primary, #0d9488); border-color: transparent;}
:where(body.cz-baf04c) .fb-inline-form .fb-actions,:where(body.cz-baf04c).fb-inline-form .fb-actions{display: flex; gap: 0.4rem; margin-top: 0.5rem; justify-content: flex-end;}
:where(body.cz-baf04c) .fb-inline-form button,:where(body.cz-baf04c).fb-inline-form button{padding: 0.3rem 0.7rem;
    border-radius: 6px;
    border: none;
    font-size: 0.75rem;
    cursor: pointer;
    font-weight: 500;}
:where(body.cz-baf04c) .fb-submit,:where(body.cz-baf04c).fb-submit{background: var(--primary, #0d9488); color: #fff;}
:where(body.cz-baf04c) .fb-submit:hover,:where(body.cz-baf04c).fb-submit:hover{filter: brightness(1.1);}
:where(body.cz-baf04c) .fb-cancel,:where(body.cz-baf04c).fb-cancel{background: var(--bg-alt, #eaf0ee); color: var(--text-secondary, #4a6359);}
:where(body.cz-baf04c) .fb-section-label,:where(body.cz-baf04c).fb-section-label{font-size: 0.65rem;
    color: var(--text-muted, #7a9589);
    margin-bottom: 0.3rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;}
:where(body.cz-baf04c) .fb-toast,:where(body.cz-baf04c).fb-toast{position: fixed;
    bottom: 2rem;
    left: 50%;
    transform: translateX(-50%) translateY(20px);
    background: var(--text-primary, #0f1f1a);
    color: #fff;
    padding: 0.5rem 1.2rem;
    border-radius: 8px;
    font-size: 0.8rem;
    opacity: 0;
    transition: opacity 0.3s, transform 0.3s;
    z-index: 300;
    pointer-events: none;}
:where(body.cz-baf04c) .fb-toast.show,:where(body.cz-baf04c).fb-toast.show{opacity: 1; transform: translateX(-50%) translateY(0);}
:where(body.cz-baf04c) .fb-toggle-hint,:where(body.cz-baf04c).fb-toggle-hint{font-size: 0.6rem;
    opacity: 0.7;
    display: none;}
:where(body.cz-baf04c) .fb-toggle.fb-no-px .fb-toggle-hint,:where(body.cz-baf04c).fb-toggle.fb-no-px .fb-toggle-hint{display: inline;}
:where(body.cz-baf04c) .fb-toggle.fb-no-px,:where(body.cz-baf04c).fb-toggle.fb-no-px{cursor: default; opacity: 0.75;}
@media print{
:where(body.cz-baf04c) .fb-toggle,:where(body.cz-baf04c).fb-toggle,:where(body.cz-baf04c) .fb-trigger,:where(body.cz-baf04c).fb-trigger,:where(body.cz-baf04c) .fb-inline-form,:where(body.cz-baf04c).fb-inline-form{display: none !important;}
}
