/* Page styles (see lib/site-assets.ts) */
.diagram svg{width:100%;height:auto;display:block}
.pres.show{opacity:1}
.diagram{margin-top:22px;background:#F7F8FA;border:1px solid #E4E7EA;border-radius:16px;padding:28px 24px}
.diagram svg{width:100%;height:auto;display:block}
.diagram svg text{font-family:Inter,Arial,sans-serif}
@media (max-width:899px){
.diagram{overflow-x:auto;padding:16px;-webkit-overflow-scrolling:touch;min-width:0;max-width:100%}
.diagram svg{min-width:600px}
}
.dnodes i.off{background:#FF8A9A;box-shadow:0 0 12px rgba(255,138,154,.5)}
.sr-ans .h{font-size:13px}
.uc-px.show{opacity:1;transform:none}
.dy-sys .h{display:flex;justify-content:space-between;align-items:center;gap:10px}
.dy-nodes i.off{background:#FF8A9A;box-shadow:0 0 8px rgba(255,138,154,.4);animation:dablink .9s ease-in-out infinite}
@keyframes dablink{50%{opacity:.45}}
@media (prefers-reduced-motion:reduce){
.dy-nodes i.off{animation:none}
}
.bp-tocl{all:unset;display:flex;align-items:center;justify-content:space-between;gap:8px;font:700 11px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--red-t);cursor:default}
.bp-q{position:relative;margin:40px 0;padding:0 0 0 clamp(56px,8vw,84px)}
.bp-q::before{content:"\201C";position:absolute;left:0;top:-14px;font:800 clamp(88px,12vw,120px)/1 var(--sans);color:var(--red)}
.bp-q blockquote{margin:0}
.bp-q p{margin:0;font-size:clamp(20px,1.7vw,24px);line-height:1.42;font-weight:600;letter-spacing:-.01em;color:var(--ink);text-wrap:pretty}
.bp-q p :is(strong,b){font-weight:inherit}
.bp-q figcaption,.bp-q cite{display:flex;align-items:center;gap:12px;margin-top:20px;font-size:16px;line-height:1.4;font-style:normal;color:var(--muted)}
.bp-q figcaption::before,.bp-q cite::before{content:"";flex:none;width:28px;height:2px;background:var(--red)}
.bp-q figcaption b,.bp-q cite b{color:var(--ink);font-weight:700}
.bp-tbl{position:relative;margin:24px 0 30px;border:1px solid var(--line);border-radius:4px;background:#fff;overflow-x:auto;-webkit-overflow-scrolling:touch}
.bp-tbl:focus-visible{outline:2px solid var(--red);outline-offset:3px}
.bp-tbl table{width:100%;min-width:640px;border-collapse:collapse;font-size:15px;line-height:1.5}
.bp-tbl thead th{background:var(--ink);color:#fff;text-align:left;vertical-align:bottom;padding:14px 16px;font:700 11px/1.45 var(--mono);letter-spacing:.1em;text-transform:uppercase}
.bp-tbl thead th small{display:block;margin-top:4px;font:500 12px/1.4 var(--sans,Inter),sans-serif;letter-spacing:0;text-transform:none;color:#9AA1AC}
.bp-tbl tbody th{text-align:left;font-weight:700;color:var(--ink);width:26%}
.bp-tbl tbody th,.bp-tbl tbody td{padding:13px 16px;border-top:1px solid var(--line);vertical-align:top;color:var(--muted)}
.bp-tbl tbody tr:first-child th,.bp-tbl tbody tr:first-child td{border-top:0}
.bp-tbl tbody th{color:var(--ink)}
.bp-vid{position:relative;margin:30px 0;aspect-ratio:16/9;background:var(--ink);border-radius:8px;overflow:hidden}
.bp-vid iframe,.bp-vid video{position:absolute;inset:0;width:100%;height:100%;border:0}
@media (max-width:899px){
.bp-tocl{cursor:pointer;padding:4px 0}
}
@media (max-width:560px){
.bp-tbl{border:0;background:none;overflow:visible}
.bp-tbl table{min-width:0}
.bp-tbl thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.bp-tbl tbody tr{display:block;margin-bottom:12px;background:#fff;border:1px solid var(--line);border-top:3px solid var(--red);border-radius:4px}
.bp-tbl tbody th,.bp-tbl tbody td{display:block;width:auto;border-top:1px solid var(--line)!important}
.bp-tbl tbody th{border-top:0!important;background:#F7F8FA;font-size:15.5px}
.bp-tbl tbody td::before{content:attr(data-label);display:block;margin-bottom:3px;font:700 10px/1.4 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}
}
@keyframes gnping{to{transform:scale(2.8);opacity:0}}
@keyframes evflip{0%{transform:rotateX(90deg);opacity:0}60%{transform:rotateX(-12deg);opacity:1}100%{transform:none;opacity:1}}
:root{--t-h2s:clamp(28px,2.5vw,36px);--t-h3l:clamp(20px,1.7vw,24px)}
:root{--t-h2:clamp(32px,3.06vw,44px);--t-h2s:clamp(26px,2.22vw,32px)}
:focus-visible{outline:2px solid var(--red,#F5455C)!important;outline-offset:3px!important}
@keyframes hbar-ring{0%{transform:scale(.25);opacity:.6}100%{transform:scale(1.5);opacity:0}}
@keyframes hbar-core{0%,100%{opacity:1}50%{opacity:.55}}
