body.deck{--dtop:60px;--dfoot:112px}.deck .brand{color:inherit;text-decoration:none}.d-sec{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--mute);white-space:nowrap;font-size:11px}.d-count{font-family:var(--mono);color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;margin-right:6px;font-size:12px}.deck a.btn{text-decoration:none}.deck a.btn:not(.solid){color:inherit}.d-stage{left:16px;right:16px;top:var(--dtop);bottom:var(--dfoot);position:fixed}.d-stage .scaler,.peek-frame .scaler{transform-origin:0 0;position:absolute}body.deck{background:radial-gradient(1400px 800px at 50% 40%, #0c0e17, var(--bg))}.d-foot{height:var(--dfoot);padding:10px 20px calc(10px + env(safe-area-inset-bottom,0px));grid-template-rows:1fr auto auto;gap:8px;display:grid;position:fixed;bottom:0;left:0;right:0}.d-rel{scrollbar-width:none;justify-content:center;align-items:stretch;gap:8px;min-width:0;display:flex;overflow-x:auto}.rel-h{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--dim);align-self:center;margin-right:4px;font-size:10.5px}.rel{all:unset;cursor:pointer;border:1px solid var(--line);border-top:1.5px solid var(--k);background:#0a0c1499;flex-direction:column;justify-content:center;gap:2px;min-width:0;max-width:290px;padding:6px 12px;transition:background .2s,border-color .2s;display:flex}.rel:hover,.rel:focus-visible{border-color:var(--k);background:#ffffff0f}.rel small{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--k);font-size:10px}.rel span{color:#d4d9e6;white-space:nowrap;text-overflow:ellipsis;font-size:13px;line-height:1.25;overflow:hidden}.rel span i{font-style:normal;font-family:var(--mono);color:var(--k);margin-right:6px;font-size:11px}.rel.more{font-family:var(--mono);color:var(--mute);border-top-color:var(--line-2);justify-content:center;align-items:center;padding:6px 14px;font-size:12px}.d-prog{background:var(--line);height:2px;position:relative}.d-prog .pg-fill{background:linear-gradient(90deg,#8f7dff,#47c2ff,#38eeb0,#c4f24a,#ffb13b,#ff5a6e,#fff0c2);transition:width .4s;position:absolute;top:0;bottom:0;left:0}.d-prog b{background:var(--mute);width:1px;height:10px;position:absolute;top:-4px}.d-keys{text-align:center;color:var(--dim);font-size:11px}.d-keys kbd{margin:0 2px}.d-toc{z-index:25;left:0;top:var(--dtop);border-right:1px solid var(--line-2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#06070cf7;width:min(380px,92vw);padding:16px 14px 40px;position:fixed;bottom:0;overflow-y:auto}.toc-g{margin-bottom:18px}.toc-g h4{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink);margin:0 0 6px;font-size:11px;font-weight:500}.toc-g h4 em{color:var(--dim);margin-left:6px;font-style:normal}.toc-part{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--k);margin:10px 0 4px;font-size:10.5px}.toc-g button{all:unset;box-sizing:border-box;cursor:pointer;color:#c5cada;border-radius:4px;grid-template-columns:34px 1fr;gap:8px;width:100%;padding:4px 6px;font-size:13px;line-height:1.3;display:grid}.toc-g button i{font-style:normal;font-family:var(--mono);color:var(--k);padding-top:1px;font-size:11px}.toc-g button:hover{background:#ffffff0d}.toc-g button.on{color:#fff;box-shadow:inset 2px 0 var(--k);background:#ffffff14}.d-peek{z-index:30;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#030408d1;flex-direction:column;gap:12px;padding:18px 24px 24px;display:flex;position:fixed;inset:0}.peek-bar{color:var(--mute);align-items:center;gap:10px;font-size:13px;display:flex}.peek-bar b{color:var(--k);font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:500}.peek-bar .sp{flex:1}.peek-frame{flex:1;position:relative}.peek-frame .stage{box-shadow:0 0 0 1px var(--k), 0 40px 120px #000000b3}.d-pop{z-index:28;border:1px solid var(--line-2);pointer-events:none;background:#080a11f5;border-radius:6px;flex-direction:column;gap:6px;width:400px;padding:8px;display:flex;position:fixed;box-shadow:0 20px 60px #0009}.pop-frame{border-radius:3px;width:384px;height:216px;position:relative;overflow:hidden}.pop-frame .stage{transform-origin:0 0;position:absolute;top:0;left:0;transform:scale(.24)}.d-pop small{font-family:var(--mono);color:var(--mute);letter-spacing:.06em;font-size:10.5px}.d-row{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:0;display:grid}.d-nav{all:unset;box-sizing:border-box;border:1px solid var(--line);height:36px;color:var(--mute);white-space:nowrap;cursor:pointer;background:#0a0c1499;border-radius:6px;align-items:center;gap:8px;padding:0 14px;font-size:13px;display:inline-flex}.d-nav i{font-style:normal;font-family:var(--mono);font-size:13px;transition:transform .18s ease-out}.d-nav small{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--dim);font-size:10.5px}.d-prev small{color:var(--mute)}.d-next small:after{content:" ·";letter-spacing:0}.d-nav b{font-family:var(--mono);color:var(--k,var(--ink));font-size:12px;font-weight:500}.d-nav span{text-overflow:ellipsis;max-width:260px;color:var(--ink);overflow:hidden}.d-nav:hover,.d-nav:active{color:var(--ink);border-color:var(--line-2);background:#ffffff0d}.d-prev:hover i{transform:translate(-2px)}.d-next:hover i{transform:translate(2px)}.d-nav:focus-visible{outline:1.5px solid var(--ink);outline-offset:2px}body.deck #navHint{z-index:26;--c:var(--ink);position:fixed}#print{display:none}@media (max-width:900px){body.deck{--dfoot:96px}.d-sec{display:none}.rel{max-width:70vw}.d-stage .scaler{position:static;transform:none!important}.d-stage{overflow-y:auto}.d-pop{display:none!important}.d-row{gap:8px}.d-nav{height:40px;padding:0 14px;font-size:14px}.d-nav b,.d-nav span,.d-prev small{display:none}.d-next small{font-family:var(--sans);letter-spacing:0;text-transform:none;color:var(--ink);font-size:14px;font-weight:500}.d-next small:after{content:none}.d-rel{justify-content:flex-start}.d-rel .rel{flex:none;max-width:60vw}.rel-h{display:none}#navHint{display:none!important}}@page{size:1600px 900px;margin:0}body.printing{background:#05060a;overflow:visible}body.printing>:not(#print){display:none!important}body.printing #print{display:block}.p-page{break-after:page;page-break-after:always;width:1600px;height:900px;overflow:hidden}.p-page .stage{box-shadow:none;border:0;border-radius:0}.printing .cv-t{color:#fff;background:0 0;-webkit-background-clip:initial;background-clip:initial}.p-toc-cols{grid-template-columns:repeat(3,1fr);gap:30px 40px;display:grid}.p-toc-cols h4{margin:0 0 6px;font-size:24px;font-weight:600}.p-toc-cols p{font-family:var(--mono);color:var(--mute);margin:0;font-size:14px}@media print{html,body{-webkit-print-color-adjust:exact;-moz-print-color-adjust:exact;print-color-adjust:exact}}
