@layer components{.kg-figure{display:contents}.fig{border-radius:var(--radius-3xl);background:var(--card);border:1px solid var(--border);box-shadow:var(--elev-md);scroll-margin-top:calc(var(--header-h) + 32px);margin:32px 0;overflow:hidden}.fig:target{outline:2px solid var(--meridian);outline-offset:4px}.fig-head{align-items:flex-start;gap:14px;padding:20px 22px 0;display:flex}.fig-head h3,.fig-head h4{margin:0;font-size:19px;line-height:1.25}.fig-head .gloss{color:var(--muted-foreground);margin:4px 0 0;font-size:15px;line-height:1.5}.fig-head .actions{gap:4px;margin-left:auto;display:flex}.fig-body{padding:20px 22px}.fig-use{background:var(--accent);color:var(--foreground);align-items:flex-start;gap:10px;padding:12px 22px;font-size:14.5px;display:flex}.fig-foot{border-top:1px solid var(--border);color:var(--muted-foreground);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;padding:10px 22px 14px;font-size:13px;line-height:1.5;display:flex}.fig-foot a{color:var(--primary-strong);align-items:center;gap:6px;text-decoration:none;display:inline-flex}.fig-foot a.cite{display:inline}.fig p{margin:0}.mini-btn{border:1px solid var(--border);background:var(--card);height:32px;color:var(--foreground);font:500 13px var(--font-sans);cursor:pointer;border-radius:10px;align-items:center;gap:6px;padding:0 10px;text-decoration:none;display:inline-flex}.mini-btn:hover{border-color:var(--input);color:var(--foreground)}.mini-btn.icon-only{justify-content:center;width:32px;padding:0}.mini-btn[aria-disabled=true]{cursor:default;color:var(--muted-foreground)}.matrix .cell.hl{background:var(--accent);border-color:var(--primary)}.hub .node.hl{outline:2px solid var(--primary);outline-offset:2px}.flow-step.hl .flow-gate{background:var(--primary)}.matrix{grid-template-rows:1fr 1fr 28px;grid-template-columns:28px 1fr 1fr;gap:8px;display:grid}.matrix .cell{border:1px solid var(--border);background:var(--background);border-radius:16px;align-content:start;gap:6px;min-height:120px;padding:14px 16px;display:grid}.matrix .cell b{font-family:var(--font-display);font-size:17px}.matrix .cell p{color:var(--muted-foreground);font-size:14px}.matrix .cell .risk{align-items:center;gap:6px;font-size:12.5px;font-weight:600;display:inline-flex}.matrix .ax-y{writing-mode:vertical-rl;color:var(--muted-foreground);grid-row:1/3;justify-content:space-between;font-size:12.5px;font-weight:600;display:flex;transform:rotate(180deg)}.matrix .ax-x{color:var(--muted-foreground);grid-column:2/4;justify-content:space-between;padding:0 6px;font-size:12.5px;font-weight:600;display:flex}.matrix .ax-title{color:var(--foreground)}.flow{gap:0;margin:0;padding:0;list-style:none;display:grid}.flow-step{grid-template-columns:44px 1fr auto;align-items:center;gap:14px;margin:0;padding:12px 0;display:grid;position:relative}.flow-step+.flow-step:before{content:"";background:var(--meridian);width:2px;height:20px;position:absolute;top:-10px;left:21px}.flow-gate{background:var(--ink);color:#fff;border-radius:10px;place-items:center;width:44px;height:44px;display:grid;transform:rotate(45deg)}.flow-gate span{font:700 15px var(--font-display);transform:rotate(-45deg)}.flow-q b{font-family:var(--font-display);font-size:16.5px;display:block}.flow-q span{color:var(--muted-foreground);font-size:14px}.flow-no{color:var(--muted-foreground);background:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:13px;display:inline-flex}.flow-end{background:var(--success-bg);color:var(--success);border-radius:14px;align-items:center;gap:10px;margin-top:8px;padding:12px 16px;font-weight:600;display:flex}.stepper{grid-template-columns:repeat(var(--n,4), minmax(0, 1fr));counter-reset:step;gap:10px;margin:0;padding:0;list-style:none;display:grid}.stepper[data-n="1"]{--n:1}.stepper[data-n="2"]{--n:2}.stepper[data-n="3"]{--n:3}.stepper[data-n="4"]{--n:4}.stepper[data-n="5"]{--n:5}.stepper[data-n="6"]{--n:6}.stepper .phase{color:var(--cyan-text);text-transform:uppercase;letter-spacing:.05em;border-top:2px solid var(--meridian);grid-column:1/-1;margin:0;padding-top:8px;font-size:12.5px;font-weight:600}.stepper .step{counter-increment:step;border:1px solid var(--border);background:var(--background);border-radius:14px;align-content:start;gap:4px;margin:0;padding:12px 14px;display:grid}.stepper .step:before{content:counter(step);background:var(--primary);width:26px;height:26px;color:var(--primary-foreground);font:700 13px var(--font-display);border-radius:999px;place-items:center;display:grid}.stepper .step b{font-size:15px;line-height:1.3}.stepper .step span{color:var(--muted-foreground);font-size:13.5px}.cycle{grid-template-columns:300px 1fr;align-items:center;gap:24px;display:grid}.cycle svg{width:100%;height:auto}.ring-track{fill:none;stroke:var(--border);stroke-width:14px}.ring-arc{fill:none;stroke:var(--primary);stroke-width:14px;stroke-linecap:round}.ring-arc.b{stroke:var(--meridian)}.ring-node{fill:var(--card);stroke:var(--primary);stroke-width:2px}.ring-nodes text{font-family:var(--font-display);text-anchor:middle;fill:var(--foreground);font-size:15px;font-weight:700}.cycle ol{counter-reset:c;gap:10px;margin:0;padding:0;list-style:none;display:grid}.cycle li{counter-increment:c;grid-template-columns:30px 1fr;gap:10px;margin:0;padding:0;display:grid}.cycle li:before{content:counter(c);background:var(--accent);width:28px;height:28px;color:var(--primary-strong);font:700 13px var(--font-display);border-radius:999px;place-items:center;display:grid}.cycle li b{display:block}.cycle li span span{color:var(--muted-foreground);font-size:14px}.hub{grid-template-rows:auto auto auto;grid-template-columns:1fr 1.1fr 1fr;align-items:stretch;gap:12px;display:grid}.hub .node{border:1px solid var(--border);background:var(--background);text-align:center;border-radius:14px;align-content:center;gap:2px;padding:12px 14px;display:grid}.hub .node b{font-family:var(--font-display);font-size:15px;line-height:1.3}.hub .node .lvl-label{font-size:13px;font-weight:600}.hub .node.core{background:var(--ink);color:var(--ink-foreground);border-color:var(--ink);padding:22px 16px}.hub .core{grid-area:2/2}.hub .n1{grid-area:1/2}.hub[data-nodes="4"] .n2,.hub[data-nodes="5"] .n2,.hub[data-nodes="6"] .n2{grid-area:2/1}.hub[data-nodes="4"] .n3,.hub[data-nodes="5"] .n3,.hub[data-nodes="6"] .n3{grid-area:2/3}.hub[data-nodes="4"] .n4{grid-area:3/2}.hub[data-nodes="5"] .n4,.hub[data-nodes="6"] .n4{grid-area:3/1}.hub[data-nodes="5"] .n5{grid-area:3/3}.hub[data-nodes="6"] .n5{grid-area:3/2}.hub[data-nodes="6"] .n6{grid-area:3/3}.lvl.high{color:var(--destructive,#b91c1c)}.lvl.mid{color:var(--warning)}.lvl.low{color:var(--success)}.hub .core .lvl.high{color:#fca5a5}.hub .core .lvl.mid{color:#fcd34d}.hub .core .lvl.low{color:#86efac}.table-wrap{border:1px solid var(--border);border-radius:16px;margin:0 0 1.4em;overflow-x:auto}.fig .table-wrap{margin:0}.cmp{border-collapse:collapse;width:100%;min-width:520px;font-size:14.5px}.cmp th,.cmp td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:11px 14px}.cmp thead th{background:var(--muted);font-weight:600}.cmp tbody th{width:28%;font-weight:600}.cmp tr:last-child td,.cmp tr:last-child th{border-bottom:0}.cite{color:var(--primary-strong);white-space:nowrap;cursor:pointer;border-bottom:1px dashed;text-decoration:none}.cite:hover{border-bottom-style:solid}.fig-ref,.case-ref{font-weight:600}.refs-section>p.muted{margin:0 0 16px;font-size:15px;line-height:1.6}.refs{gap:14px;margin:0;padding:0;list-style:none;display:grid}.refs>li{border:1px solid var(--border);background:var(--card);scroll-margin-top:calc(var(--header-h) + 32px);border-radius:14px;grid-template-columns:1fr auto;gap:6px 14px;margin:0;padding:14px 16px;display:grid}.refs>li:target{border-color:var(--meridian);box-shadow:0 0 0 3px var(--meridian-soft)}.refs .ref-text{font-size:15px;line-height:1.6}.refs .ref-text i{font-style:italic}.refs .ref-links{flex-wrap:wrap;grid-column:1/-1;gap:6px 14px;font-size:13px;display:flex}.refs .ref-links a{overflow-wrap:normal;align-items:center;gap:5px;text-decoration:none;display:inline-flex}.refs .ref-links a.doi{overflow-wrap:anywhere}.refs .doi{font-weight:600}.refs .nodoi{color:var(--muted-foreground);align-items:center;gap:5px;display:inline-flex}.refs .ref-actions{align-items:start;gap:4px;display:flex}.pop{z-index:80;border-radius:18px;gap:8px;width:min(380px,100vw - 24px);padding:14px 16px;font-size:14.5px;line-height:1.55;display:grid;position:absolute}.pop[hidden]{display:none}.pop .pop-kind{text-transform:uppercase;letter-spacing:.05em;color:var(--cyan-text);align-items:center;gap:6px;font-size:12px;font-weight:600;display:inline-flex}.pop .pop-title{font-family:var(--font-display);font-size:16.5px;font-weight:700}.pop .pop-actions{flex-wrap:wrap;gap:6px;margin-top:2px;display:flex}.pop .pop-foot{color:var(--muted-foreground);font-size:13px}.pop i{font-style:italic}.anchor-h{scroll-margin-top:calc(var(--header-h) + 32px);position:relative}.anchor-h .hlink{opacity:0;color:var(--muted-foreground);border-radius:6px;padding:4px;line-height:0;text-decoration:none;position:absolute;top:50%;left:-30px;transform:translateY(-50%)}.anchor-h:hover .hlink,.anchor-h .hlink:focus-visible{opacity:1}a.term{color:inherit;-webkit-text-decoration:underline dotted var(--meridian);text-decoration:underline dotted var(--meridian);text-underline-offset:4px;cursor:help;text-decoration-thickness:2px}.fw-ref{background:var(--accent);color:var(--primary-strong);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:1px 8px 1px 6px;font-size:.92em;font-weight:600;text-decoration:none;display:inline-flex}.fw-ref .i{vertical-align:-.12em;width:1em;height:1em}.backlinks{border-radius:var(--radius-3xl);border:1px solid var(--border);background:var(--card);padding:20px 22px}.backlinks h3{align-items:center;gap:8px;margin:0;font-size:18px;line-height:1.25;display:flex}.backlinks ul{gap:10px;margin:14px 0 0;padding:0;list-style:none;display:grid}.backlinks li{grid-template-columns:22px 1fr;gap:10px;margin:0;padding:0;display:grid}.backlinks li .i{color:var(--muted-foreground);margin-top:3px}.backlinks li a{overflow-wrap:normal;font-weight:600;text-decoration:none}.backlinks li q{color:var(--muted-foreground);quotes:"“" "”";margin-top:2px;font-size:14px;display:block}.toast{z-index:120;background:var(--ink);color:#fff;border-radius:999px;align-items:center;gap:8px;padding:10px 16px;font-size:14px;display:inline-flex;position:fixed;bottom:72px;left:50%;transform:translate(-50%)}.toast[hidden]{display:none}.callout{border:1px solid var(--border);background:var(--card);border-radius:18px;grid-template-columns:40px 1fr;gap:14px;margin:1.6em 0;padding:16px 18px;display:grid}.callout .icon-tile{width:40px;height:40px}.callout>div>b:first-child{font-family:var(--font-display);margin-bottom:4px;font-size:16px;display:block}.callout p{margin:0;font-size:15.5px;line-height:1.6}.callout p+p{margin-top:.6em}.callout.question .icon-tile{color:#1642b8;background:#e8efff}.callout.khoi{background:linear-gradient(135deg, var(--card), var(--accent));border-color:var(--primary)}.callout.khoi .icon-tile{background:var(--ink);color:var(--meridian)}.callout.pitfall .icon-tile{background:var(--warning-bg);color:var(--warning)}.callout.howto .icon-tile{background:var(--success-bg);color:var(--success)}.callout.summary .icon-tile{background:var(--muted);color:var(--foreground)}.tldr{border-radius:var(--radius-xl);background:var(--card);border:1px solid var(--border);border-left:3px solid var(--meridian);margin:0 0 1.8em;padding:18px 20px 6px}.tldr h2{margin:0 0 10px;font-size:12.5px}.tldr ul{margin:0;padding-left:1.2em;font-size:17px;line-height:1.6}.tldr li{margin:0 0 .4em;padding:0;list-style:outside}.entity-kind{color:var(--cyan-text);align-items:center;gap:8px;font-size:13px;font-weight:600;display:inline-flex}.facts{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;display:grid}.facts div{background:var(--muted);border-radius:14px;gap:2px;padding:12px 14px;display:grid}.facts dt{color:var(--muted-foreground);font-size:12.5px}.facts dd{margin:0;font-weight:600}:is(.prose,.kg-content) :is(.fig,.callout,.backlinks,.refs) p{margin:0}:is(.prose,.kg-content) :is(.fig-head,.backlinks) :is(h3,h4){margin:0;line-height:1.25}:is(.prose,.kg-content) :is(.refs,.backlinks ul,.flow,.cycle ol,.stepper){margin:0;padding-left:0}:is(.prose,.kg-content) :is(.refs,.backlinks,.flow,.cycle,.stepper) li{margin-bottom:0}:is(.prose,.kg-content) :is(.backlinks,.flow,.cycle) li{padding-left:0}:is(.prose,.kg-content) .refs>li{padding:14px 16px}:is(.prose,.kg-content) .stepper .step{padding:12px 14px}:is(.prose,.kg-content) .backlinks ul{margin-top:14px}:is(.prose,.kg-content) .fig{margin:2em 0}:is(.prose,.kg-content) .fig-foot a,:is(.prose,.kg-content) .refs a,:is(.prose,.kg-content) .backlinks a{overflow-wrap:normal}:is(.prose,.kg-content) .callout{margin:1.6em 0}:is(.prose,.kg-content) .callout p+p{margin-top:.6em}:root[data-theme=dark] .lvl.high{color:#f87171}:root[data-theme=dark] .callout.question .icon-tile{color:#a9cbff;background:#6fa8ff29}@media (max-width:720px){.fig-head{padding:16px 16px 0}.fig-body,.fig-use{padding-left:16px;padding-right:16px}.fig-foot{padding:10px 16px 12px}.matrix{grid-template-columns:22px 1fr 1fr}.matrix .cell{min-height:0;padding:10px 12px}.matrix .cell p{display:none}.stepper,.cycle{grid-template-columns:1fr}.cycle svg{max-width:260px;margin:0 auto}.hub{grid-template-columns:1fr 1fr}.hub[data-nodes] .node{grid-area:auto}.hub[data-nodes] .core,.hub[data-nodes] .n1{grid-area:auto/1/auto/-1}.flow-step{grid-template-columns:40px 1fr}.flow-no{grid-column:2;justify-self:start}.anchor-h .hlink{display:none}.refs>li{grid-template-columns:1fr}.backlinks{padding:16px}}}
