:root{--radius:16px;--theme:#f5f5f5;--entry:#ffffff;--primary:#111418;--secondary:#5f6368;--tertiary:#8d949e;--content:#20242a;--border:#e5e7eb;--accent:#111418;--signal:#0f766e;--code-bg:#f6f8fc;--code-border:#dde4ee;--code-fg:#1f2328;--code-muted:#6b7280;--code-toolbar:#eef2f7;--shadow:0 12px 30px rgba(15, 23, 42, 0.05)}html[data-theme=dark]{--theme:#1d1e20;--entry:#2e2e33;--primary:#dadadb;--secondary:#9b9c9d;--tertiary:#7d7d82;--content:#c4c4c5;--border:#333338;--accent:#ffffff;--signal:#7ee787;--code-bg:#1f2428;--code-border:#2e353b;--code-fg:#d4d4d4;--code-muted:#8b949e;--code-toolbar:#252b31;--shadow:0 16px 34px rgba(0, 0, 0, 0.28)}*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--theme);color:var(--primary);font:16px/1.7 segoe ui,Inter,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body::-webkit-scrollbar{width:11px}body::-webkit-scrollbar-thumb{background:var(--tertiary);border:3px solid var(--theme);border-radius:999px}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}svg{display:block}code,pre,kbd,samp{font-family:cascadia code,ibm plex mono,Consolas,monospace}.header{width:min(100% - 2rem,980px);margin:0 auto;padding-top:24px}.nav{display:flex;align-items:center;justify-content:space-between;gap:1rem}.logo{display:inline-flex;align-items:center;gap:.75rem}.logo a{font-size:1.1rem;font-weight:700;letter-spacing:-.01em}.logo-switches{display:inline-flex;align-items:center}#theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:1px solid var(--border);border-radius:999px;background:0 0;color:var(--primary);cursor:pointer}#theme-toggle:hover{background:var(--entry)}html[data-theme=light] #sun,html[data-theme=dark] #moon{display:none}#menu{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin:0;padding:0;list-style:none}#menu a{color:var(--secondary)}#menu a:hover,#menu a:focus-visible,.logo a:hover,.logo a:focus-visible,.archive-link:hover,.archive-link:focus-visible{color:var(--accent)}.main,.footer{width:min(100% - 2rem,760px);margin:0 auto}.main{padding:2rem 0 4rem}.footer{display:flex;flex-wrap:wrap;gap:.5rem;padding-bottom:3rem;color:var(--secondary);font-size:.95rem}.footer span{display:inline-flex;align-items:center;gap:.35rem}.first-entry,.post-entry,.post-single,.page-header,.archive-year,.toc{background:var(--entry);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.first-entry,.post-entry,.page-header,.archive-year{padding:1.4rem 1.5rem}.post-entry{position:relative;margin-top:1rem}.first-entry,.post-entry,.archive-year{transition:border-color 160ms ease,transform 160ms ease,box-shadow 160ms ease}.post-entry:hover,.archive-year:hover{border-color:var(--secondary);transform:translateY(-2px)}.home .first-entry,.home .post-entry,.home .home-tags .page-header{background:0 0;border:0;border-radius:0;box-shadow:none;padding-left:0;padding-right:0}.home .first-entry,.home .home-tags .page-header{padding-top:0}.home .post-entry{padding-top:1.1rem;padding-bottom:1.1rem;border-bottom:1px solid var(--border)}.home .post-entry:first-of-type{border-top:1px solid var(--border)}.home .post-entry:hover{border-color:var(--border);transform:none}.post-entry,.post-single,.toc{background:0 0;border:0;border-radius:0;box-shadow:none}.post-entry,.post-single{padding-left:0;padding-right:0}.post-entry{padding-top:1.1rem;padding-bottom:1.1rem;margin-top:0;border-bottom:1px solid var(--border)}.post-entry:hover{border-color:var(--border);transform:none}.post-single{padding-top:0;padding-bottom:0}.toc{padding:.9rem 0}.home-tags{margin:1rem 0 1.15rem}.entry-header h1,.entry-header h2,.page-header h1,.page-header h2,.post-title,.archive-year-header{margin:0;line-height:1.25;letter-spacing:-.02em}.entry-header h1,.post-title{font-size:clamp(2rem,4vw,2.8rem)}.entry-header h2,.page-header h2{font-size:1.45rem}.home-trace{position:relative;margin-top:1rem;padding:.95rem 1rem 1rem;overflow:hidden;border:1px solid var(--border);border-radius:18px;background:linear-gradient(180deg,color-mix(in srgb,var(--entry) 88%,transparent),color-mix(in srgb,var(--theme) 96%,transparent)),radial-gradient(circle at top right,color-mix(in srgb,var(--signal) 14%,transparent),transparent 38%)}.home-trace::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--signal) 12%,transparent) 50%,transparent 100%);opacity:.5;transform:translateX(-100%);animation:traceSweep 8s linear infinite;pointer-events:none}.trace-head,.trace-readout,.trace-metrics{position:relative;z-index:1}.trace-head{display:flex;align-items:center;gap:.45rem;color:var(--secondary);font:600 .77rem/1.2 cascadia code,ibm plex mono,Consolas,monospace;letter-spacing:.08em;text-transform:uppercase}.trace-dot{width:7px;height:7px;border-radius:999px;background:color-mix(in srgb,var(--signal) 85%,white 15%);box-shadow:0 0 10px color-mix(in srgb,var(--signal) 45%,transparent)}.trace-dot:nth-child(2){animation:traceBlink 2.2s ease-in-out infinite}.trace-dot:nth-child(3){animation:traceBlink 2.2s ease-in-out .75s infinite}.trace-title{margin-left:.35rem}.trace-map{position:relative;display:grid;grid-template-columns:1.25fr .8fr 1fr 1fr;align-items:stretch;gap:.45rem;margin:.85rem 0 .9rem;padding:.65rem;overflow:hidden;border:1px solid color-mix(in srgb,var(--border) 88%,transparent);border-radius:14px;background:linear-gradient(180deg,color-mix(in srgb,var(--entry) 70%,transparent),transparent),linear-gradient(90deg,color-mix(in srgb,var(--signal) 6%,transparent),transparent 28%,transparent 72%,color-mix(in srgb,var(--signal) 5%,transparent))}.trace-segment{position:relative;z-index:1;display:flex;flex-direction:column;gap:.2rem;min-width:0;min-height:64px;padding:.72rem .75rem;border:1px solid color-mix(in srgb,var(--border) 86%,transparent);border-radius:12px;background:color-mix(in srgb,var(--entry) 78%,transparent);color:var(--secondary);font:500 .78rem/1.2 cascadia code,ibm plex mono,Consolas,monospace;transition:border-color 180ms ease,background-color 180ms ease,transform 180ms ease,box-shadow 180ms ease}.trace-segment strong,.trace-segment em{position:relative;z-index:1}.trace-segment strong{color:var(--primary);font-style:normal}.trace-segment em{font-style:normal}.trace-segment.is-active{border-color:color-mix(in srgb,var(--signal) 60%,var(--border) 40%);background:color-mix(in srgb,var(--signal) 16%,var(--entry) 84%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--signal) 18%,transparent);transform:translateY(-1px)}.trace-seeker{position:absolute;z-index:0;top:10px;bottom:10px;width:70px;border-radius:999px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--signal) 32%,transparent),transparent);filter:blur(1px);pointer-events:none;animation:traceSeek 5.1s cubic-bezier(.22,1,.36,1)infinite}.trace-readout{display:flex;align-items:baseline;gap:.55rem;margin-top:.1rem;color:var(--secondary);font:500 .94rem/1.5 cascadia code,ibm plex mono,Consolas,monospace}.trace-prompt{color:var(--signal)}.trace-command{position:relative;padding-right:.2rem;color:var(--content)}.trace-command::after{content:"";display:inline-block;width:.62em;height:1.05em;margin-left:.12rem;vertical-align:-.18em;border-right:1px solid;animation:traceCursor 1s step-end infinite}.trace-bytes{display:grid;grid-template-columns:repeat(16,minmax(0,1fr));gap:.38rem;margin-top:.8rem;margin-bottom:.05rem}.trace-byte{padding:.18rem .28rem;border:1px solid color-mix(in srgb,var(--border) 84%,transparent);border-radius:8px;background:color-mix(in srgb,var(--entry) 70%,transparent);color:var(--secondary);text-align:center;font:500 .73rem/1 cascadia code,ibm plex mono,Consolas,monospace;transition:color 180ms ease,border-color 180ms ease,background-color 180ms ease,transform 180ms ease}.trace-byte.is-hot{color:var(--primary);border-color:color-mix(in srgb,var(--signal) 52%,var(--border) 48%);background:color-mix(in srgb,var(--signal) 18%,var(--entry) 82%);transform:translateY(-1px)}.trace-metrics{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.75rem;color:var(--secondary);font:500 .8rem/1.3 cascadia code,ibm plex mono,Consolas,monospace}.trace-chip{display:inline-flex;gap:.38rem;padding:.34rem .6rem;border:1px solid color-mix(in srgb,var(--border) 85%,transparent);border-radius:999px;background:color-mix(in srgb,var(--entry) 78%,transparent)}.trace-chip strong{color:var(--primary);font-weight:600}.home-labdeck{--pixel-accent:var(--signal);position:relative;margin-top:1rem;padding:1rem;overflow:hidden;border:1px solid var(--border);border-radius:8px;background:linear-gradient(180deg,color-mix(in srgb,var(--entry) 90%,transparent),color-mix(in srgb,var(--theme) 97%,transparent)),linear-gradient(90deg,color-mix(in srgb,var(--pixel-accent) 4%,transparent) 1px,transparent 1px),linear-gradient(180deg,color-mix(in srgb,var(--pixel-accent) 4%,transparent) 1px,transparent 1px),radial-gradient(circle at top right,color-mix(in srgb,var(--signal) 12%,transparent),transparent 44%);background-size:auto,8px 8px,8px 8px,auto;box-shadow:4px 4px color-mix(in srgb,var(--pixel-accent) 10%,transparent)}.home-labdeck::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--signal) 8%,transparent) 50%,transparent 100%);opacity:.55;transform:translateX(-100%);animation:traceSweep 10s linear infinite;pointer-events:none}.home-labdeck-bar,.home-labpanel{position:relative;z-index:1}.home-labdeck-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.85rem;margin-bottom:.95rem}.home-labdeck-label{margin:0;color:var(--secondary);font:700 .75rem/1.2 cascadia code,ibm plex mono,Consolas,monospace;letter-spacing:.08em;text-transform:uppercase}.home-labdeck-tabs,.playlab-actions,.playlab-choice-row,.playlab-progress{display:flex;flex-wrap:wrap;gap:.5rem}.home-lab-tab,.playlab-reset,.playlab-action,.heap-slot,.rev-puzzle-line{appearance:none;border:1px solid color-mix(in srgb,var(--border) 90%,transparent);background-color:color-mix(in srgb,var(--entry) 88%,transparent);color:var(--primary);font:inherit}.home-lab-tab,.playlab-reset,.playlab-action{display:inline-flex;align-items:center;justify-content:center;border-radius:6px;cursor:pointer;transition:border-color 160ms ease,color 160ms ease,background-color 160ms ease,transform 160ms ease}.home-lab-tab,.playlab-reset{padding:.42rem .78rem;color:var(--secondary);font:600 .76rem/1 cascadia code,ibm plex mono,Consolas,monospace;letter-spacing:.05em;text-transform:uppercase}.home-lab-tab:hover,.home-lab-tab:focus-visible,.home-lab-tab.is-active,.playlab-reset:hover,.playlab-reset:focus-visible{border-color:var(--secondary);color:var(--primary);background:color-mix(in srgb,var(--entry) 95%,transparent)}.home-labpanel{display:none}.home-labpanel.is-active{display:block}.playlab{--playlab-accent:#ef4444;--pixel-accent:var(--playlab-accent);display:grid;gap:.9rem}.playlab-malware{--playlab-accent:#f59e0b}.playlab-reversing{--playlab-accent:#38bdf8}.playlab-home{padding:0}.playlab-card{gap:1rem}.playlab-guide,.playlab-hint,.playlab-console,.playlab-choice-group,.heap-slot,.rev-puzzle-line,.mal-artifact,.labcard{position:relative;overflow:hidden;background-image:linear-gradient(180deg,color-mix(in srgb,var(--entry) 92%,transparent),color-mix(in srgb,var(--theme) 98%,transparent)),linear-gradient(90deg,color-mix(in srgb,var(--pixel-accent) 4%,transparent) 1px,transparent 1px),linear-gradient(180deg,color-mix(in srgb,var(--pixel-accent) 4%,transparent) 1px,transparent 1px);background-size:auto,8px 8px,8px 8px;box-shadow:4px 4px color-mix(in srgb,var(--pixel-accent) 10%,transparent)}.playlab-brief{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.playlab-label{margin:0;color:var(--playlab-accent);font:700 .74rem/1.2 cascadia code,ibm plex mono,Consolas,monospace;letter-spacing:.08em;text-transform:uppercase}.playlab-objective{margin:.42rem 0 0;color:var(--secondary);font-size:.94rem}.playlab-guide,.playlab-hint{border:1px solid color-mix(in srgb,var(--playlab-accent) 16%,var(--border) 84%);border-radius:8px}.playlab-guide{padding:.72rem .78rem .78rem}.playlab-guide-title,.playlab-hint-step,.playlab-hint-title{font-family:cascadia code,ibm plex mono,Consolas,monospace}.playlab-guide-title{margin:0 0 .58rem;color:var(--secondary);font-size:.73rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.playlab-guide-steps{display:flex;flex-wrap:wrap;gap:.48rem}.playlab-guide-step{display:inline-flex;align-items:center;min-height:34px;padding:.42rem .58rem;border:1px solid color-mix(in srgb,var(--playlab-accent) 14%,var(--border) 86%);border-radius:6px;background:color-mix(in srgb,var(--entry) 80%,transparent);color:var(--secondary);font-size:.77rem;line-height:1.35}.playlab-hint{display:grid;gap:.26rem;padding:.82rem .88rem}.playlab-hint-step{width:fit-content;min-height:26px;padding:.2rem .45rem;border:1px solid color-mix(in srgb,var(--playlab-accent) 30%,var(--border) 70%);border-radius:6px;background:color-mix(in srgb,var(--playlab-accent) 11%,var(--entry) 89%);color:var(--playlab-accent);font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.playlab-hint-title{color:var(--primary);font-size:.9rem}.playlab-hint-copy{margin:0;color:var(--secondary);font-size:.82rem;line-height:1.5}.playlab-stage{display:inline-flex;align-items:center;min-height:32px;padding:.34rem .62rem;border:1px solid color-mix(in srgb,var(--playlab-accent) 16%,var(--border) 84%);border-radius:6px;background:color-mix(in srgb,var(--entry) 84%,transparent);color:var(--secondary);font:600 .73rem/1 cascadia code,ibm plex mono,Consolas,monospace;letter-spacing:.05em;text-transform:uppercase}.playlab-stage.is-done{border-color:color-mix(in srgb,var(--playlab-accent) 50%,var(--border) 50%);background:color-mix(in srgb,var(--playlab-accent) 14%,var(--entry) 86%);color:var(--primary)}.heap-playground{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.58rem}.heap-slot,.rev-puzzle-line,.mal-artifact{width:100%;border-radius:8px;cursor:pointer;transition:border-color 160ms ease,background-color 160ms ease,transform 160ms ease,box-shadow 160ms ease}.heap-slot{display:grid;gap:.18rem;min-height:92px;padding:.78rem .75rem;text-align:left}.mal-playground{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.58rem}.mal-artifact{display:grid;gap:.24rem;min-height:112px;padding:.78rem .8rem;text-align:left}.heap-slot span,.rev-puzzle-addr,.rev-puzzle-op,.playlab-console-head,.playlab-line,.playlab-flag code,.mal-artifact-badge{font-family:cascadia code,ibm plex mono,Consolas,monospace}.heap-slot span{color:var(--primary);font-size:.86rem;font-weight:700}.heap-slot em,.heap-slot small{font-style:normal}.heap-slot em{color:var(--secondary);font-size:.77rem}.heap-slot small{color:var(--tertiary);font-size:.72rem}.mal-artifact-title,.mal-artifact-note{font-style:normal}.mal-artifact-badge{display:inline-flex;align-items:center;justify-content:center;width:fit-content;min-width:42px;min-height:24px;padding:0 .42rem;border:1px solid color-mix(in srgb,var(--playlab-accent) 24%,var(--border) 76%);border-radius:6px;color:var(--playlab-accent);font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.mal-artifact-title{color:var(--primary);font-size:.83rem;line-height:1.35}.mal-artifact-note{color:var(--secondary);font-size:.76rem;line-height:1.45}.heap-slot.is-live,.heap-slot.is-owned,.heap-slot.is-freed,.heap-slot.is-armed,.heap-slot.is-focus,.rev-puzzle-line.is-focus,.mal-artifact.is-focus{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--playlab-accent) 18%,transparent);transform:translateY(-1px)}.heap-slot.is-live{border-color:color-mix(in srgb,var(--playlab-accent) 40%,var(--border) 60%);background-color:color-mix(in srgb,var(--playlab-accent) 9%,var(--entry) 91%)}.heap-slot.is-freed{border-color:color-mix(in srgb,var(--playlab-accent) 28%,var(--border) 72%);background-color:color-mix(in srgb,var(--playlab-accent) 6%,var(--entry) 94%)}.heap-slot.is-armed,.heap-slot.is-focus,.rev-puzzle-line.is-focus{border-color:color-mix(in srgb,var(--playlab-accent) 52%,var(--border) 48%);background-color:color-mix(in srgb,var(--playlab-accent) 13%,var(--entry) 87%)}.heap-slot.is-owned{border-color:color-mix(in srgb,var(--playlab-accent) 70%,var(--border) 30%);background-color:color-mix(in srgb,var(--playlab-accent) 18%,var(--entry) 82%)}.mal-artifact.is-focus{border-color:color-mix(in srgb,var(--playlab-accent) 52%,var(--border) 48%);background-color:color-mix(in srgb,var(--playlab-accent) 12%,var(--entry) 88%)}.playlab-action{position:relative;min-height:36px;padding:.48rem .82rem;color:var(--secondary);font:600 .76rem/1 cascadia code,ibm plex mono,Consolas,monospace}.playlab-action:hover,.playlab-action:focus-visible,.heap-slot:hover,.heap-slot:focus-visible,.rev-puzzle-line:hover,.rev-puzzle-line:focus-visible{border-color:color-mix(in srgb,var(--playlab-accent) 40%,var(--border) 60%)}.playlab-action.is-selected{border-color:color-mix(in srgb,var(--playlab-accent) 38%,var(--border) 62%);color:var(--primary)}.playlab-action.is-recommended,.rev-puzzle-line.is-recommended,.mal-artifact.is-recommended{border-color:color-mix(in srgb,var(--playlab-accent) 64%,var(--border) 36%);background-color:color-mix(in srgb,var(--playlab-accent) 13%,var(--entry) 87%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--playlab-accent) 18%,transparent),4px 4px color-mix(in srgb,var(--playlab-accent) 12%,transparent)}.playlab-action.is-recommended{padding-right:2.3rem}.playlab-action.is-recommended::after,.rev-puzzle-line.is-recommended::after,.mal-artifact.is-recommended::after{content:"NEXT";position:absolute;top:.48rem;right:.48rem;display:inline-flex;align-items:center;min-height:20px;padding:0 .34rem;border:1px solid color-mix(in srgb,var(--playlab-accent) 28%,var(--border) 72%);border-radius:4px;background:color-mix(in srgb,var(--playlab-accent) 18%,var(--entry) 82%);color:var(--playlab-accent);font:700 .6rem/1 cascadia code,ibm plex mono,Consolas,monospace;letter-spacing:.08em;text-transform:uppercase}.playlab-action.is-correct{border-color:color-mix(in srgb,var(--playlab-accent) 58%,var(--border) 42%);background-color:color-mix(in srgb,var(--playlab-accent) 14%,var(--entry) 86%);color:var(--primary)}.playlab-action.is-wrong{border-color:color-mix(in srgb,#dc2626 56%,var(--border) 44%);background-color:color-mix(in srgb,#dc2626 10%,var(--entry) 90%);color:color-mix(in srgb,#dc2626 74%,var(--primary) 26%)}.playlab-action:disabled,.playlab-reset:disabled{cursor:not-allowed;opacity:.48;transform:none}.playlab-console,.playlab-choice-group{border:1px solid color-mix(in srgb,var(--playlab-accent) 16%,var(--border) 84%);border-radius:8px;background-color:color-mix(in srgb,var(--entry) 82%,transparent)}.playlab-console{padding:.82rem .9rem}.playlab-console-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem;color:var(--secondary);font-size:.78rem}.playlab-console-head code{padding:.15rem .42rem;border-radius:6px;background:color-mix(in srgb,var(--playlab-accent) 11%,var(--entry) 89%);color:var(--primary);font-size:.78rem}.playlab-console-feed{display:grid;gap:.34rem;margin-top:.72rem}.playlab-line{position:relative;padding-left:.85rem;color:var(--secondary);font-size:.79rem;line-height:1.45}.playlab-line::before{content:"";position:absolute;top:.68rem;left:0;width:.46rem;height:1px;background:color-mix(in srgb,var(--playlab-accent) 54%,transparent)}.playlab-line.is-good{color:var(--primary)}.playlab-line.is-bad{color:color-mix(in srgb,#dc2626 78%,var(--primary) 22%)}.playlab-flag{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;margin-top:.82rem;padding:.62rem .72rem;border:1px solid color-mix(in srgb,var(--playlab-accent) 32%,var(--border) 68%);border-radius:8px;background:color-mix(in srgb,var(--playlab-accent) 12%,var(--entry) 88%)}.playlab-flag span{color:var(--secondary);font:700 .75rem/1 cascadia code,ibm plex mono,Consolas,monospace;letter-spacing:.06em;text-transform:uppercase}.playlab-flag code{color:var(--primary);font-size:.84rem}.rev-playground,.playlab-choice-grid{display:grid;gap:.58rem}.rev-puzzle-line{display:grid;grid-template-columns:102px 1fr;align-items:center;gap:.7rem;min-height:48px;padding:.68rem .78rem;text-align:left}.rev-puzzle-addr{color:var(--playlab-accent);font-size:.78rem}.rev-puzzle-op{min-width:0;overflow:hidden;color:var(--primary);font-size:.8rem;text-overflow:ellipsis;white-space:nowrap}.playlab-choice-group{padding:.78rem .82rem .84rem}.playlab-choice-title{margin:0 0 .52rem;color:var(--secondary);font:700 .72rem/1.2 cascadia code,ibm plex mono,Consolas,monospace;letter-spacing:.08em;text-transform:uppercase}.labcard .playlab{margin-top:.08rem}.labcard{--lab-accent:#79c0ff;--pixel-accent:var(--lab-accent);position:relative;margin:1.6rem 0;padding:1.1rem 1.1rem 1.15rem;overflow:hidden;border:1px solid color-mix(in srgb,var(--lab-accent) 22%,var(--border) 78%);border-radius:10px;background:linear-gradient(180deg,color-mix(in srgb,var(--entry) 96%,transparent),color-mix(in srgb,var(--theme) 98%,transparent)),linear-gradient(90deg,color-mix(in srgb,var(--lab-accent) 4%,transparent) 1px,transparent 1px),linear-gradient(180deg,color-mix(in srgb,var(--lab-accent) 4%,transparent) 1px,transparent 1px),radial-gradient(circle at top right,color-mix(in srgb,var(--lab-accent) 12%,transparent),transparent 42%);background-size:auto,8px 8px,8px 8px,auto;box-shadow:5px 5px color-mix(in srgb,var(--lab-accent) 12%,transparent)}.labcard::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--lab-accent) 5%,transparent),transparent),repeating-linear-gradient(180deg,transparent 0 19px,color-mix(in srgb,var(--lab-accent) 5%,transparent) 19px 20px);pointer-events:none}.labcard-malware{--lab-accent:#f59e0b}.labcard-exploitation{--lab-accent:#ef4444}.labcard-reversing{--lab-accent:#38bdf8}.labcard-kernel{--lab-accent:#8b5cf6}.labcard-head,.labcard-body,.labcard-meta{position:relative;z-index:1}.labcard-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.labcard-heading{min-width:0}.labcard-kicker{margin:0;color:var(--lab-accent);font:700 .74rem/1.2 cascadia code,ibm plex mono,Consolas,monospace;letter-spacing:.08em;text-transform:uppercase}.labcard-title{margin:.35rem 0 0;font-size:1.24rem;line-height:1.2;letter-spacing:-.02em}.labcard-note{margin:.45rem 0 0;color:var(--secondary);font-size:.95rem}.labcard-status{flex:none;padding:.38rem .68rem;border:1px solid color-mix(in srgb,var(--lab-accent) 28%,var(--border) 72%);border-radius:6px;background:color-mix(in srgb,var(--lab-accent) 10%,var(--entry) 90%);color:var(--lab-accent);font:700 .73rem/1 cascadia code,ibm plex mono,Consolas,monospace;letter-spacing:.05em;text-transform:uppercase}.labcard-body{display:grid;gap:.85rem;margin-top:1rem}.labcard-meta{display:flex;flex-wrap:wrap;gap:.55rem}.labcard-mono{display:inline-flex;align-items:center;min-height:34px;padding:.4rem .62rem;border:1px solid color-mix(in srgb,var(--lab-accent) 16%,var(--border) 84%);border-radius:999px;background:color-mix(in srgb,var(--entry) 80%,transparent);color:var(--secondary);font:500 .79rem/1.3 cascadia code,ibm plex mono,Consolas,monospace}.malware-flow,.heap-lane,.rev-registers,.kernel-path,.kernel-rings,.heap-bins{display:grid;gap:.5rem}.malware-flow{grid-template-columns:repeat(4,minmax(0,1fr))}.malware-node,.heap-cell,.heap-bin,.kernel-stage,.kernel-pill,.rev-reg,.rev-line{position:relative;overflow:hidden;border:1px solid color-mix(in srgb,var(--lab-accent) 16%,var(--border) 84%);border-radius:12px;background:color-mix(in srgb,var(--entry) 84%,transparent);transition:border-color 180ms ease,background-color 180ms ease,transform 180ms ease,box-shadow 180ms ease}.malware-node{padding:.75rem .55rem;color:var(--secondary);text-align:center;font:600 .78rem/1.2 cascadia code,ibm plex mono,Consolas,monospace;text-transform:uppercase}.malware-node:not(:last-child)::after{content:"";position:absolute;top:50%;right:-.5rem;width:.55rem;height:1px;background:color-mix(in srgb,var(--lab-accent) 28%,transparent)}.malware-node.is-active,.heap-cell.is-hot,.heap-bin.is-active,.rev-line.is-current,.kernel-stage.is-active,.kernel-pill.is-active,.rev-reg.is-live{border-color:color-mix(in srgb,var(--lab-accent) 56%,var(--border) 44%);background:color-mix(in srgb,var(--lab-accent) 14%,var(--entry) 86%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--lab-accent) 18%,transparent);transform:translateY(-1px)}.malware-bars{display:grid;grid-template-columns:repeat(14,minmax(0,1fr));align-items:end;gap:.38rem;min-height:72px;padding:.35rem .1rem 0}.malware-bar{min-height:12px;border-radius:999px 999px 6px 6px;background:color-mix(in srgb,var(--lab-accent) 18%,var(--border) 82%);transition:height 220ms ease,background-color 220ms ease,transform 220ms ease}.malware-bar.is-hot{background:color-mix(in srgb,var(--lab-accent) 74%,white 10%);transform:translateY(-2px)}.heap-lane{position:relative;grid-template-columns:.7fr .8fr 1.15fr .95fr .9fr;align-items:stretch;padding:.15rem 0}.heap-cell{display:grid;gap:.2rem;min-height:74px;padding:.8rem .55rem;text-align:center;font-family:cascadia code,ibm plex mono,Consolas,monospace}.heap-cell strong,.heap-cell em{position:relative;z-index:1;font-style:normal}.heap-cell strong{color:var(--primary);font-size:.82rem}.heap-cell em{color:var(--secondary);font-size:.74rem}.heap-sweep{position:absolute;z-index:0;top:8px;bottom:8px;width:86px;border-radius:999px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--lab-accent) 28%,transparent),transparent);filter:blur(1px);pointer-events:none;animation:heapSweep 4.8s cubic-bezier(.22,1,.36,1)infinite}.heap-bins{grid-template-columns:repeat(4,minmax(0,1fr))}.heap-bin,.kernel-pill{padding:.52rem .6rem;color:var(--secondary);text-align:center;font:600 .77rem/1.15 cascadia code,ibm plex mono,Consolas,monospace;text-transform:uppercase}.rev-disasm{display:grid;gap:.42rem}.rev-line{display:grid;grid-template-columns:18px 104px 1fr;align-items:center;gap:.62rem;min-height:42px;padding:.5rem .68rem;color:var(--secondary);font:500 .78rem/1.25 cascadia code,ibm plex mono,Consolas,monospace}.rev-marker{color:color-mix(in srgb,var(--lab-accent) 44%,transparent);opacity:.35}.rev-line.is-current .rev-marker{opacity:1}.rev-addr{color:var(--lab-accent)}.rev-op{min-width:0;overflow:hidden;color:var(--primary);text-overflow:ellipsis;white-space:nowrap}.rev-registers{grid-template-columns:repeat(4,minmax(0,1fr))}.rev-reg{display:grid;gap:.15rem;min-height:58px;padding:.6rem .7rem}.rev-reg em,.rev-reg strong{font-family:cascadia code,ibm plex mono,Consolas,monospace;font-style:normal}.rev-reg em{color:var(--secondary);font-size:.72rem}.rev-reg strong{color:var(--primary);font-size:.8rem}.kernel-path{grid-template-columns:repeat(5,minmax(0,1fr))}.kernel-stage{padding:.72rem .55rem;color:var(--secondary);text-align:center;font:600 .76rem/1.2 cascadia code,ibm plex mono,Consolas,monospace;text-transform:uppercase}.kernel-stage:not(:last-child)::after{content:"";position:absolute;top:50%;right:-.48rem;width:.48rem;height:1px;background:color-mix(in srgb,var(--lab-accent) 30%,transparent)}.kernel-rings{grid-template-columns:repeat(4,minmax(0,1fr))}.kernel-pill{min-height:38px}.entry-content,.post-description,.post-content{color:var(--content)}.entry-content p,.post-description,.post-content p,.post-content ul,.post-content ol,.post-content blockquote{margin:.95rem 0}.entry-footer,.post-meta,.breadcrumbs,.archive-meta{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;color:var(--secondary);font-size:.92rem}.entry-footer{margin-top:.85rem}.breadcrumbs{margin-bottom:.5rem}.post-description{margin-top:.8rem;font-size:1.05rem}.post-meta{margin-top:.9rem}.entry-hint-parent,.archive-link{position:relative;z-index:1}.entry-hint-parent a:hover,.entry-hint-parent a:focus-visible{color:var(--accent)}.entry-content,.entry-footer{position:relative;z-index:1}.terms-tags,.post-tags,.social-icons{display:flex;flex-wrap:wrap;gap:.75rem;margin:0;padding:0;list-style:none}.terms-tags li a,.post-tags a{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .8rem;border:1px solid var(--border);border-radius:999px;background:var(--entry);color:var(--secondary);transition:border-color 160ms ease,color 160ms ease,transform 160ms ease}.terms-tags li a:hover,.post-tags a:hover{border-color:var(--secondary);color:var(--primary);transform:translateY(-1px)}.social-icons a{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--border);border-radius:999px;color:var(--secondary);transition:color 160ms ease,border-color 160ms ease,transform 160ms ease}.social-icons a:hover{color:var(--primary);border-color:var(--secondary);transform:translateY(-1px)}.social-icons svg{width:18px;height:18px}.social-label{padding:0 .75rem;font-size:.9rem}.page-header{margin-bottom:1rem}.page-header h1{font-size:clamp(1.8rem,4vw,2.4rem)}.post-single{padding:1.6rem}.post-cover{margin:1.35rem 0 0}.post-cover img{width:100%;border:1px solid var(--border);border-radius:calc(var(--radius) - 2px)}.post-cover-card .labcard{margin:0}.toc{margin:1.4rem 0;padding:1rem 1.1rem}.toc summary{cursor:pointer;color:var(--primary);font-weight:600}.toc .inner{margin-top:.9rem}.toc nav ul{margin:0;padding-left:1.2rem}.toc nav li+li{margin-top:.45rem}.post-content{margin-top:1.5rem}.post-content>*:first-child{margin-top:0}.post-content h2,.post-content h3,.post-content h4{margin-top:2rem;margin-bottom:.7rem;line-height:1.3;color:var(--primary)}.post-content ul,.post-content ol{padding-left:1.35rem}.post-content li+li{margin-top:.45rem}.post-content a{text-decoration:underline;text-underline-offset:.18em}.post-content hr{margin:2rem 0;border:0;border-top:1px solid var(--border)}.post-content blockquote{margin-left:0;padding-left:1rem;border-left:3px solid var(--border);color:var(--secondary)}.post-content img{margin:1.35rem 0;border:1px solid var(--border);border-radius:12px}.post-content table{width:100%;border-collapse:collapse;margin:1.35rem 0;overflow:hidden;border:1px solid var(--border);border-radius:12px}.post-content th,.post-content td{padding:.8rem .95rem;border-bottom:1px solid var(--border);text-align:left}.post-content :not(pre)>code{padding:.15rem .4rem;border-radius:8px;background:var(--code-bg);color:var(--code-fg);font-size:.92em}.post-content .highlight{margin:1.35rem 0;overflow:hidden;border:1px solid var(--code-border);border-radius:10px;background:var(--code-bg)}.copy-code{position:absolute;top:.7rem;right:.7rem;z-index:2;padding:.34rem .62rem;border:1px solid var(--code-border);border-radius:6px;background:var(--code-toolbar);color:var(--code-muted);font:600 .74rem/1 cascadia code,ibm plex mono,Consolas,monospace;cursor:pointer;transition:border-color 160ms ease,color 160ms ease,background-color 160ms ease}.copy-code:hover,.copy-code:focus-visible{border-color:color-mix(in srgb,var(--secondary) 44%,var(--code-border) 56%);color:var(--code-fg)}.post-content pre,.highlight pre{overflow-x:auto;margin:0;padding:2.5rem 1rem 1rem;border:0;border-radius:0;background:0 0}.post-content pre code,.post-content .highlight code,.post-content .highlight .chroma{color:var(--code-fg);font-size:.92rem;line-height:1.6}.post-content .highlight .chroma,.post-content .highlight .chroma *{font-weight:400!important}.post-content .highlight .chroma{background:0 0!important}.post-content .highlight .line{display:block}.post-content .highlight .ln,.post-content .highlight .lnt,.post-content .highlight .lntd{color:var(--code-muted)}.post-content .highlight .c,.post-content .highlight .ch,.post-content .highlight .cm,.post-content .highlight .c1,.post-content .highlight .cs,.post-content .highlight .cpf{color:#6a737d}.post-content .highlight .k,.post-content .highlight .kc,.post-content .highlight .kd,.post-content .highlight .kn,.post-content .highlight .kp,.post-content .highlight .kr,.post-content .highlight .kt,.post-content .highlight .ow{color:#0550ae}.post-content .highlight .nb,.post-content .highlight .bp,.post-content .highlight .vm{color:#0550ae}.post-content .highlight .na,.post-content .highlight .nc,.post-content .highlight .nd,.post-content .highlight .ne,.post-content .highlight .nf,.post-content .highlight .fm,.post-content .highlight .nt{color:#795e26}.post-content .highlight .s,.post-content .highlight .sa,.post-content .highlight .sb,.post-content .highlight .sc,.post-content .highlight .dl,.post-content .highlight .sd,.post-content .highlight .s2,.post-content .highlight .se,.post-content .highlight .sh,.post-content .highlight .si,.post-content .highlight .sx,.post-content .highlight .sr,.post-content .highlight .s1,.post-content .highlight .ss{color:#a31515}.post-content .highlight .m,.post-content .highlight .mb,.post-content .highlight .mf,.post-content .highlight .mh,.post-content .highlight .mi,.post-content .highlight .mo,.post-content .highlight .il{color:#b26f3f}.post-content .highlight .o,.post-content .highlight .p,.post-content .highlight .gd,.post-content .highlight .ge,.post-content .highlight .gh,.post-content .highlight .gi,.post-content .highlight .go,.post-content .highlight .gp,.post-content .highlight .gs,.post-content .highlight .gu,.post-content .highlight .gt{color:var(--code-fg)}.post-content .highlight .err{color:#d1242f;background:0 0}html[data-theme=dark] .post-content .highlight .c,html[data-theme=dark] .post-content .highlight .ch,html[data-theme=dark] .post-content .highlight .cm,html[data-theme=dark] .post-content .highlight .c1,html[data-theme=dark] .post-content .highlight .cs,html[data-theme=dark] .post-content .highlight .cpf{color:#6f7680}html[data-theme=dark] .post-content .highlight .k,html[data-theme=dark] .post-content .highlight .kc,html[data-theme=dark] .post-content .highlight .kd,html[data-theme=dark] .post-content .highlight .kn,html[data-theme=dark] .post-content .highlight .kp,html[data-theme=dark] .post-content .highlight .kr,html[data-theme=dark] .post-content .highlight .kt,html[data-theme=dark] .post-content .highlight .ow,html[data-theme=dark] .post-content .highlight .nb,html[data-theme=dark] .post-content .highlight .bp,html[data-theme=dark] .post-content .highlight .vm{color:#569cd6}html[data-theme=dark] .post-content .highlight .na,html[data-theme=dark] .post-content .highlight .nc,html[data-theme=dark] .post-content .highlight .nd,html[data-theme=dark] .post-content .highlight .ne,html[data-theme=dark] .post-content .highlight .nf,html[data-theme=dark] .post-content .highlight .fm,html[data-theme=dark] .post-content .highlight .nt{color:#dcdcaa}html[data-theme=dark] .post-content .highlight .s,html[data-theme=dark] .post-content .highlight .sa,html[data-theme=dark] .post-content .highlight .sb,html[data-theme=dark] .post-content .highlight .sc,html[data-theme=dark] .post-content .highlight .dl,html[data-theme=dark] .post-content .highlight .sd,html[data-theme=dark] .post-content .highlight .s2,html[data-theme=dark] .post-content .highlight .se,html[data-theme=dark] .post-content .highlight .sh,html[data-theme=dark] .post-content .highlight .si,html[data-theme=dark] .post-content .highlight .sx,html[data-theme=dark] .post-content .highlight .sr,html[data-theme=dark] .post-content .highlight .s1,html[data-theme=dark] .post-content .highlight .ss{color:#ce9178}html[data-theme=dark] .post-content .highlight .m,html[data-theme=dark] .post-content .highlight .mb,html[data-theme=dark] .post-content .highlight .mf,html[data-theme=dark] .post-content .highlight .mh,html[data-theme=dark] .post-content .highlight .mi,html[data-theme=dark] .post-content .highlight .mo,html[data-theme=dark] .post-content .highlight .il{color:#d19a66}.post-footer{margin-top:2rem}.post-tags{margin-top:0}.paginav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.6rem}.paginav a{min-height:86px;padding:1rem;border:1px solid var(--border);border-radius:14px;background:var(--entry)}.paginav .next{text-align:right}.paginav .title{color:var(--secondary);font-size:.9rem}.archive{display:grid;gap:1rem}.archive-year-header{margin-bottom:1rem;font-size:1.35rem}.archive-posts{display:grid;gap:.8rem}.archive-entry{display:grid;grid-template-columns:84px 1fr;gap:1rem;align-items:baseline}.archive-link{font-size:1rem}.top-link{position:fixed;right:24px;bottom:24px;width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:999px;background:var(--entry);color:var(--primary);box-shadow:var(--shadow);opacity:0;visibility:hidden;transition:opacity 160ms ease,visibility 160ms ease,transform 160ms ease}.top-link.show{opacity:1;visibility:visible}.top-link:hover{transform:translateY(-2px)}@keyframes traceBlink{50%{opacity:.32}}@keyframes traceCursor{50%{border-right-color:transparent}}@keyframes traceSweep{100%{transform:translateX(100%)}}@keyframes traceSeek{0%{left:-72px}100%{left:calc(100% - 12px)}}@keyframes heapSweep{0%{left:-90px}100%{left:calc(100% - 10px)}}@media(max-width:720px){.header,.main,.footer{width:min(100% - 1.2rem,760px)}.nav{align-items:flex-start;flex-direction:column}.paginav,.archive-entry{grid-template-columns:1fr}.post-single{padding:1.2rem}.home-labdeck-bar,.playlab-brief{flex-direction:column;align-items:flex-start}.malware-flow,.heap-lane,.kernel-path,.kernel-rings,.heap-bins{grid-template-columns:repeat(2,minmax(0,1fr))}.heap-playground{grid-template-columns:repeat(2,minmax(0,1fr))}.mal-playground{grid-template-columns:1fr}.rev-registers{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.home-labdeck{padding:.9rem .85rem .95rem}.labcard{padding:1rem .95rem 1.05rem}.labcard-head{flex-direction:column}.malware-flow,.heap-lane,.kernel-path,.kernel-rings,.heap-bins,.rev-registers,.mal-playground,.heap-playground{grid-template-columns:1fr}.home-labdeck-tabs,.playlab-actions,.playlab-choice-row{gap:.42rem}.playlab-action,.home-lab-tab,.playlab-reset{width:100%;justify-content:center}.rev-puzzle-line{grid-template-columns:1fr;gap:.3rem}.rev-line{grid-template-columns:18px 88px 1fr}}:root{--radius:2px}html[data-theme=light]{--theme:#efefef;--entry:#f7f7f7;--primary:#151515;--secondary:#5c5c5c;--tertiary:#818181;--content:#222222;--border:#d6d6d6;--accent:#111111;--signal:#4a4a4a;--code-bg:#f3f4f6;--code-border:#d6d6d6;--code-fg:#1f2328;--code-muted:#6b7280;--code-toolbar:#eceef1;--shadow:none}html[data-theme=dark]{--theme:#090909;--entry:#111214;--primary:#e7e7e7;--secondary:#a0a0a0;--tertiary:#6f6f6f;--content:#d6d6d6;--border:#2a2a2a;--accent:#f1f1f1;--signal:#b7b7b7;--code-bg:#0d0f10;--code-border:#272a2c;--code-fg:#dcdcdc;--code-muted:#7e848a;--code-toolbar:#141719;--shadow:none}body{background:linear-gradient(180deg,color-mix(in srgb,var(--theme) 96%,black 4%),var(--theme) 18rem),var(--theme);color:var(--primary);font:15px/1.78 ibm plex mono,cascadia code,Consolas,monospace}body::before{content:"";position:fixed;inset:0;background:repeating-linear-gradient( 180deg,transparent 0 3px,color-mix(in srgb,var(--signal) 4%,transparent) 3px 4px );opacity:.12;pointer-events:none}::selection{background:color-mix(in srgb,var(--signal) 30%,transparent);color:var(--primary)}.header,.main,.footer{width:min(100% - 2rem,860px)}.header{padding-top:20px}.nav{align-items:flex-start;padding-bottom:.8rem;border-bottom:1px solid var(--border)}.logo{gap:.65rem}.logo a,.entry-header h1,.entry-header h2,.page-header h1,.page-header h2,.post-title,.archive-year-header,.labcard-title{font-family:ibm plex mono,cascadia code,Consolas,monospace;letter-spacing:0}.logo a{font-size:.98rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.logo a::before{content:"~/ ";color:var(--signal)}#menu{gap:.7rem}#menu a,.home-lab-tab,.playlab-reset,.playlab-action,.terms-tags li a,.post-tags a,.copy-code,.social-icons a,.labcard-status,.playlab-stage,.labcard-mono,.paginav a{border-radius:2px}#menu a{display:inline-flex;align-items:center;gap:.2rem;color:var(--secondary);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase}#menu a::before{content:"[";color:var(--tertiary)}#menu a::after{content:"]";color:var(--tertiary)}#theme-toggle{width:auto;height:auto;padding:.36rem .46rem;border-radius:2px;background:var(--entry);box-shadow:none}#theme-toggle:hover,#theme-toggle:focus-visible{border-color:var(--signal);color:var(--accent)}.main{padding:1.45rem 0 3rem}.footer{padding-top:.9rem;padding-bottom:2.5rem;border-top:1px solid var(--border);color:var(--secondary);font-size:.8rem}.first-entry,.page-header,.archive-year,.toc,.home-labdeck,.labcard,.playlab-console,.playlab-choice-group,.heap-slot,.rev-puzzle-line,.mal-artifact,.post-content .highlight,.post-content table,.post-content img,.paginav a,.top-link{background:var(--entry)!important;border:1px solid var(--border)!important;border-radius:2px!important;box-shadow:none!important}.home-labdeck::before,.labcard::before,.home-trace::before{display:none!important}.home-trace,.trace-map,.trace-segment,.trace-byte{background:var(--entry)!important;border-color:var(--border)!important;box-shadow:none!important}.home .first-entry{margin-bottom:1rem;padding:1rem 1rem 1.1rem;background:var(--entry);border:1px solid var(--border)}.home .home-tags .page-header{padding:0 0 .55rem;background:0 0!important;border:0!important}.home .post-entry,.post-entry{padding:.9rem 0;margin-top:0;border-bottom:1px dashed var(--border)}.home .post-entry:first-of-type{border-top:1px dashed var(--border)}.post-entry:hover,.archive-year:hover{border-color:var(--border);transform:none}.home-info .entry-header h1,.post-title,.page-header h1{font-size:clamp(1.45rem,3vw,2rem);font-weight:600}.home-info .entry-header h1::before{content:"user@mrn1gativ3:~$";display:block;margin-bottom:.45rem;color:var(--signal);font-size:.72rem;letter-spacing:.08em}.page-header h1::before,.post-title::before{content:"./entry.md";display:block;margin-bottom:.45rem;color:var(--signal);font-size:.72rem;letter-spacing:.08em}.entry-header h2{font-size:1rem;font-weight:500}.entry-hint-parent a::before,.archive-link::before{content:"> ";color:var(--signal)}.entry-content,.post-description,.post-content{color:var(--content);font-family:segoe ui,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-weight:400;font-size:1.04rem;line-height:1.86;letter-spacing:0}.entry-content p,.post-description{color:var(--secondary)}.entry-content strong,.post-description strong,.post-content strong{font-weight:600}.post-content p,.post-content li,.post-content blockquote,.post-content table,.post-content th,.post-content td{font-weight:400}.entry-footer,.post-meta,.breadcrumbs,.archive-meta,.home-labdeck-label,.playlab-label,.labcard-kicker,.playlab-choice-title,.playlab-console-head,.playlab-line,.labcard-status,.playlab-stage,.toc summary,.copy-code{font-family:ibm plex mono,cascadia code,Consolas,monospace;letter-spacing:.04em;text-transform:uppercase}.breadcrumbs,.entry-footer,.post-meta,.archive-meta{font-size:.76rem;color:var(--secondary)}.home-labdeck{margin-top:1rem;padding:.9rem}.home-labdeck-bar{margin-bottom:.8rem;padding-bottom:.65rem;border-bottom:1px solid var(--border)}.home-labdeck-label{color:var(--signal);font-size:.72rem;letter-spacing:.1em}.home-lab-tab,.playlab-reset,.playlab-action,.terms-tags li a,.post-tags a,.social-icons a,.labcard-mono{min-height:0;padding:.42rem .58rem;background:0 0;border:1px solid var(--border);color:var(--secondary);font-size:.78rem;box-shadow:none}.home-lab-tab:hover,.home-lab-tab:focus-visible,.home-lab-tab.is-active,.playlab-reset:hover,.playlab-reset:focus-visible,.playlab-action:hover,.playlab-action:focus-visible,.terms-tags li a:hover,.post-tags a:hover,.social-icons a:hover,.social-icons a:focus-visible,.paginav a:hover,.paginav a:focus-visible{border-color:var(--signal);color:var(--accent);background:color-mix(in srgb,var(--signal) 8%,var(--entry) 92%);transform:none}.playlab{gap:.75rem}.playlab-brief{gap:.8rem}.playlab-objective,.labcard-note,.mal-artifact-note,.heap-slot small,.heap-slot em{color:var(--secondary)}.playlab-progress,.playlab-actions,.playlab-choice-row,.home-labdeck-tabs,.labcard-meta,.terms-tags,.post-tags,.social-icons{gap:.45rem}.playlab-stage{padding:.28rem .46rem;background:0 0;color:var(--secondary);font-size:.68rem}.playlab-stage.is-done{border-color:var(--signal)!important;background:color-mix(in srgb,var(--signal) 10%,var(--entry) 90%)!important;color:var(--accent)}.playlab-console,.playlab-choice-group,.heap-slot,.rev-puzzle-line,.mal-artifact,.labcard{background:var(--entry)!important}.heap-slot,.rev-puzzle-line,.mal-artifact{min-height:0}.heap-slot.is-live,.heap-slot.is-freed,.heap-slot.is-armed,.heap-slot.is-owned,.heap-slot.is-focus,.rev-puzzle-line.is-focus,.mal-artifact.is-focus,.playlab-action.is-selected,.playlab-action.is-correct{border-color:var(--signal)!important;background:color-mix(in srgb,var(--signal) 10%,var(--entry) 90%)!important;color:var(--accent)}.playlab-action.is-wrong{border-color:#8a3b3b!important;background:color-mix(in srgb,#8a3b3b 12%,var(--entry) 88%)!important;color:#e5b4b4}.labcard{margin:1.4rem 0;padding:.95rem}.labcard-head{padding-bottom:.65rem;border-bottom:1px solid var(--border)}.labcard-kicker,.playlab-label{color:var(--signal);font-size:.72rem;letter-spacing:.1em}.labcard-title{margin-top:.28rem;font-size:1rem;font-weight:600}.labcard-status::before{content:"[";color:var(--tertiary)}.labcard-status::after{content:"]";color:var(--tertiary)}.social-icons a{width:auto;height:auto;justify-content:flex-start;gap:.45rem}.social-prefix{color:var(--signal)}.social-name{color:inherit;text-transform:lowercase}.social-icons svg,.social-label{display:none}.terms-tags li a,.post-tags a{background:0 0}.post-single{padding:0}.post-cover img{border-radius:2px}.toc{padding:.85rem .95rem}.toc summary{color:var(--signal);font-size:.72rem}.toc summary::before{content:"[index] ";color:var(--tertiary)}.post-content{margin-top:1.35rem}.post-content h2,.post-content h3,.post-content h4{font-family:ibm plex mono,cascadia code,Consolas,monospace;font-weight:600;letter-spacing:0;scroll-margin-top:1.2rem}.post-content h2{color:#7cc6ff}.post-content h3{color:#f0c674}.post-content h4{color:#8fcf9f}.post-content h2 strong,.post-content h3 strong,.post-content h4 strong{color:inherit;font-weight:600}.post-content blockquote{padding-left:.85rem;border-left:1px solid var(--signal);color:var(--secondary)}.post-content table,.post-content img{border-radius:2px}.post-content .highlight{background:var(--code-bg)!important;border-color:var(--border)!important}.post-content pre,.post-content pre *,.post-content .highlight,.post-content .highlight *,.post-content :not(pre)>code{font-weight:400!important;font-synthesis-weight:none}.copy-code{top:.55rem;right:.55rem;padding:.28rem .45rem;background:0 0;border-color:var(--border);color:var(--secondary);font-size:.68rem}.copy-code:hover,.copy-code:focus-visible{border-color:var(--signal);color:var(--accent);background:color-mix(in srgb,var(--signal) 8%,transparent)}.post-content pre,.highlight pre{padding:2.2rem .95rem .95rem}.paginav{gap:.7rem}.paginav a{min-height:0;padding:.8rem .9rem;background:0 0}.archive{gap:.8rem}.archive-year{padding:.95rem 1rem}.archive-year-header{font-size:1rem;font-weight:600}.archive-entry{grid-template-columns:70px 1fr}.top-link{right:18px;bottom:18px;width:38px;height:38px;background:var(--entry)}.top-link:hover{border-color:var(--signal);color:var(--accent);transform:none}@media(max-width:720px){.header,.main,.footer{width:min(100% - 1.2rem,860px)}.home .first-entry{padding:.9rem}}.lab-toggle-shell{margin-top:1rem;border:1px solid var(--border);border-radius:2px;background:var(--entry)}.lab-toggle-shell[open]{border-color:var(--signal)}.lab-toggle-summary{display:flex;align-items:center;justify-content:space-between;gap:.9rem;padding:.75rem .85rem;list-style:none;cursor:pointer}.lab-toggle-summary::-webkit-details-marker{display:none}.lab-toggle-summary::before{content:"[+]";flex:none;color:var(--tertiary);font:.74rem/1 ibm plex mono,cascadia code,Consolas,monospace;letter-spacing:.08em}.lab-toggle-shell[open] .lab-toggle-summary::before{content:"[-]"}.lab-toggle-shell[open] .lab-toggle-summary{border-bottom:1px solid var(--border)}.lab-toggle-summary:hover,.lab-toggle-summary:focus-visible{color:var(--accent)}.lab-toggle-label,.lab-toggle-copy{font-family:ibm plex mono,cascadia code,Consolas,monospace;letter-spacing:.08em;text-transform:uppercase}.lab-toggle-label{flex:auto;min-width:0;color:var(--signal);font-size:.72rem}.lab-toggle-copy{flex:none;color:var(--secondary);font-size:.72rem;text-align:right}.lab-toggle-open{display:none}.lab-toggle-shell[open] .lab-toggle-open{display:inline}.lab-toggle-shell[open] .lab-toggle-closed{display:none}.lab-toggle-panel{padding:.85rem}.lab-toggle-panel .home-labdeck,.lab-toggle-panel .post-cover{margin-top:0}.lab-toggle-panel .labcard{margin:0}.post-lab-shell{margin-top:1.35rem}@media(max-width:720px){.lab-toggle-summary{align-items:flex-start;flex-direction:column}.lab-toggle-copy{text-align:left}}.playlab-grid{display:grid;grid-template-columns:minmax(0,1.55fr)minmax(280px,.95fr);gap:.85rem;align-items:start}.playlab-main,.playlab-sidecar{display:grid;gap:.75rem;min-width:0}.playlab-sideblock,.playlab-console,.playlab-choice-group,.heap-slot,.rev-puzzle-line,.mal-artifact{background:var(--entry)!important;background-image:none!important;border:1px solid var(--border)!important;border-radius:2px!important;box-shadow:none!important}.playlab-label{color:var(--signal);font-size:.7rem;letter-spacing:.1em}.playlab-objective{max-width:72ch;font-size:.84rem;line-height:1.6}.playlab-progress{gap:.35rem}.playlab-stage{padding:.22rem .38rem;color:var(--tertiary);font-size:.64rem}.playlab-stage.is-done{color:var(--accent)}.playlab-sideblock{padding:.8rem .85rem}.playlab-sidehead{margin:0 0 .7rem;color:var(--signal);font:600 .68rem/1.2 ibm plex mono,cascadia code,Consolas,monospace;letter-spacing:.08em;text-transform:uppercase}.playlab-kv{display:grid;grid-template-columns:78px minmax(0,1fr);gap:.65rem;align-items:start}.playlab-kv+.playlab-kv{margin-top:.58rem}.playlab-kv span{color:var(--secondary);font:600 .66rem/1.4 ibm plex mono,cascadia code,Consolas,monospace;letter-spacing:.08em;text-transform:uppercase}.playlab-kv code{overflow-wrap:anywhere;padding:0;background:0 0;color:var(--primary);font:.76rem/1.45 ibm plex mono,cascadia code,Consolas,monospace}.playlab-console{padding:.8rem .85rem}.playlab-console-head{color:var(--secondary);font-size:.67rem;letter-spacing:.08em}.playlab-console-head code{padding:0;background:0 0;color:var(--tertiary);font-size:.7rem}.playlab-console-feed{gap:.28rem;margin-top:.62rem}.playlab-line{padding-left:.7rem;color:var(--secondary);font-size:.73rem;line-height:1.5}.playlab-line::before{top:.58rem;width:.38rem;background:var(--border)}.playlab-line.is-good{color:var(--primary)}.playlab-line.is-bad{color:#d7a7a7}.playlab-flag{margin-top:.75rem;padding:.55rem .65rem;background:color-mix(in srgb,var(--border) 28%,var(--entry) 72%);border:1px solid var(--border)}.playlab-flag span{font-size:.66rem}.playlab-flag code{font-size:.78rem}.playlab-choice-grid,.rev-playground{gap:.55rem}.playlab-choice-group{padding:.78rem .85rem .85rem}.playlab-choice-title{margin-bottom:.6rem;color:var(--tertiary);font-size:.66rem;letter-spacing:.08em}.playlab-choice-row{display:grid;gap:.4rem}.playlab-action{justify-content:flex-start;min-height:0;padding:.55rem .65rem;border-radius:2px;color:var(--content);text-align:left;font:.76rem/1.5 ibm plex mono,cascadia code,Consolas,monospace}.playlab-action:hover,.playlab-action:focus-visible{background:color-mix(in srgb,var(--border) 32%,var(--entry) 68%)}.playlab-action.is-selected,.playlab-action.is-correct,.heap-slot.is-focus,.heap-slot.is-live,.heap-slot.is-freed,.heap-slot.is-armed,.heap-slot.is-owned,.rev-puzzle-line.is-focus,.mal-artifact.is-focus{border-color:color-mix(in srgb,var(--secondary) 58%,var(--border) 42%)!important;background:color-mix(in srgb,var(--secondary) 10%,var(--entry) 90%)!important;color:var(--accent)}.playlab-action.is-wrong{border-color:#6b4242!important;background:color-mix(in srgb,#6b4242 11%,var(--entry) 89%)!important;color:#ddb5b5}.playlab-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.42rem}.heap-playground{grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}.heap-slot{min-height:0;padding:.78rem .82rem;gap:.22rem;text-align:left}.heap-slot-name{color:var(--primary);font:600 .8rem/1.35 ibm plex mono,cascadia code,Consolas,monospace}.heap-slot-addr{color:var(--tertiary);font:.7rem/1.35 ibm plex mono,cascadia code,Consolas,monospace}.heap-slot small{color:var(--secondary);font-size:.72rem;line-height:1.45}.mal-playground{grid-template-columns:1fr;gap:.45rem}.mal-artifact{min-height:0;padding:.78rem .85rem;gap:.24rem;text-align:left}.mal-artifact-badge{min-width:0;min-height:0;padding:0;border:0;border-radius:0;background:0 0;color:var(--signal);font-size:.66rem}.mal-artifact-title,.rev-puzzle-op{color:var(--primary);font-size:.77rem;line-height:1.45}.mal-artifact-note{color:var(--secondary);font-size:.72rem;line-height:1.5}.rev-puzzle-line{grid-template-columns:84px 1fr;min-height:0;padding:.72rem .8rem;gap:.7rem}.rev-puzzle-addr{color:var(--tertiary);font-size:.69rem}.rev-puzzle-op{white-space:normal}.playlab-home .playlab-objective,.playlab-card .playlab-objective{max-width:none}@media(max-width:860px){.playlab-grid{grid-template-columns:1fr}}@media(max-width:640px){.playlab-actions,.heap-playground{grid-template-columns:1fr}.playlab-kv{grid-template-columns:1fr;gap:.2rem}}