:root{--bg: #000;--bg-2: #0a0a0c;--surface: rgb(63 70 97 / .14);--surface-solid: #2a2633;--surface-active: #342f3e;--border: #3a3646;--border-strong: #3f4661;--text: #f8f8f8;--text-muted: #cdd0d7;--text-faint: #8b8f9c;--accent: #fd1a29;--accent-hover: #ff3b46;--accent-2: #8a91bb;--accent-blue: #9aa3c9;--accent-soft: rgb(253 26 41 / .14);--accent-timeline: #d01620;--accent-timeline-hover: #e0222c;--accent-timeline-soft: rgb(208 22 32 / .16);--glass-blur: blur(10px);--shadow: 0 1px 2px rgb(0 0 0 / .3), 0 8px 24px rgb(0 0 0 / .22);--glow-1: rgb(253 26 41 / .05);--glow-2: rgb(63 70 97 / .08);--radius: 10px;--radius-sm: 7px;--maxw: 1120px;--green: #5fae7d;--font-sans: -apple-system, blinkmacsystemfont, "Segoe UI", helvetica, arial, sans-serif;--font-mono: ui-monospace, "Cascadia Code", "JetBrains Mono", "Source Code Pro", menlo, consolas, monospace;--tok-kw: #c9b6e0;--tok-type: var(--accent-2);--tok-str: var(--green);--tok-num: #f0a8ae;--tok-env: #cc3d46;--tok-com: var(--text-faint);--tok-warn: #ff4d57;--tok-warn-bg: rgb(253 26 41 / .13);--sig-recovered: #e0bd6c;--sig-recovered-hover: #f4d68c;--tok-fn: var(--accent-blue);--tok-punct: var(--text-muted)}*,*:before,*:after{box-sizing:border-box}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}html{scroll-behavior:smooth;scroll-padding-top:84px;-webkit-text-size-adjust:100%}body{margin:0;background:radial-gradient(120% 80% at 80% -10%,var(--glow-1),transparent 55%),radial-gradient(90% 70% at 0% 0%,var(--glow-2),transparent 50%),var(--bg);color:var(--text);font-family:var(--font-sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}.container{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:24px}.section{padding-block:88px}@media(max-width:768px){.section{padding-block:60px}}@media(max-width:480px){.container{padding-inline:18px}}h1,h2,h3,h4{margin:0;font-weight:650;line-height:1.15;letter-spacing:-.02em;color:var(--text)}h1{font-size:clamp(2.4rem,5vw,3.4rem)}h2{font-size:clamp(1.8rem,3.4vw,2.3rem)}h3{font-size:1.15rem;font-weight:600;letter-spacing:-.01em}p{margin:0}a{color:var(--accent-blue);text-decoration:none;transition:color .15s ease;&:hover{color:var(--accent-hover)}}.lede{max-width:62ch;color:var(--text-muted);font-size:1.08rem;line-height:1.65}.section-head{display:flex;flex-direction:column;gap:14px;max-width:70ch;margin-bottom:44px}.btn{--btn-pad-y: 11px;--btn-pad-x: 18px;display:inline-flex;gap:8px;align-items:center;justify-content:center;padding:var(--btn-pad-y) var(--btn-pad-x);border:1px solid transparent;border-radius:var(--radius-sm);font:inherit;font-size:.95rem;font-weight:550;line-height:1;color:var(--text);text-decoration:none;white-space:nowrap;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .1s ease,box-shadow .15s ease,color .15s ease;&:active{transform:translateY(1px)}& svg{width:1.05em;height:1.05em}}.btn-lg{--btn-pad-y: 14px;--btn-pad-x: 24px;font-size:1rem}.btn-sm{--btn-pad-y: 8px;--btn-pad-x: 13px;font-size:.85rem}.btn-primary{background:var(--accent);color:#15131c;&:hover{background:var(--accent-hover);color:#15131c}}.btn-secondary{background:var(--surface);border-color:var(--border-strong);color:var(--text);backdrop-filter:var(--glass-blur);&:hover{background:var(--surface-active);border-color:var(--accent);color:var(--text)}}.btn-ghost{background:transparent;color:var(--text-muted);&:hover{background:var(--surface-active);color:var(--text)}}.chip{display:inline-flex;gap:6px;align-items:center;padding:6px 12px;border:1px solid var(--border);border-radius:999px;background:var(--surface-solid);font-family:var(--font-mono);font-size:.82rem;color:var(--text);cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease;&:hover{border-color:var(--accent);color:var(--accent-hover)}}.badge{display:inline-flex;gap:6px;align-items:center;padding:4px 10px;border:1px solid var(--border-strong);border-radius:999px;background:var(--surface-solid);font-family:var(--font-mono);font-size:.74rem;font-weight:500;letter-spacing:.01em;color:var(--text-muted)}.badge-open{border-color:#5fae7d66;background:#5fae7d1f;color:var(--green)}.badge-cyan{border-color:#8a91bb66;background:#8a91bb1f;color:var(--accent-2)}@media(max-width:768px){.btn:not(.btn-lg,.btn-sm){--btn-pad-y: 13px}.btn-sm{--btn-pad-y: 12px}.chip{padding:11px 14px}}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}.luna-nav{position:sticky;top:0;z-index:50;display:block;border-bottom:1px solid var(--border);background:#000000b8;backdrop-filter:var(--glass-blur)}.luna-nav .nav-inner{display:flex;gap:18px;align-items:center;width:100%;max-width:var(--maxw);height:64px;margin-inline:auto;padding-inline:24px}.nav-brand{display:inline-flex;gap:10px;align-items:center;color:var(--text);&:hover{color:var(--text)}}.nav-preview{padding:1px 6px;border:1px solid var(--border);border-radius:999px;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.04em;color:var(--text-muted);text-transform:lowercase;white-space:nowrap}.nav-links{display:flex;gap:4px;align-items:center;margin-left:8px;& a{padding:8px 12px;border-radius:var(--radius-sm);font-size:.92rem;color:var(--text-muted);transition:color .15s ease,background .15s ease;&:hover{background:var(--surface-active);color:var(--text)}}}.nav-actions{display:flex;gap:10px;align-items:center;margin-left:auto}.nav-github{display:inline-flex;border:1px solid var(--border-strong);background:var(--surface-solid);color:var(--text);&:hover{border-color:var(--accent);background:var(--surface-active);color:var(--text)}& svg{color:var(--text)}&:disabled{opacity:.55;color:var(--text-muted);cursor:not-allowed;&:hover{border-color:var(--border-strong);background:var(--surface-solid);color:var(--text-muted)}}}.nav-soon{padding:1px 6px;border:1px solid var(--border);border-radius:999px;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.04em;color:var(--text-muted);text-transform:lowercase}.nav-hamburger{display:none;align-items:center;justify-content:center;width:42px;height:42px;padding:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-solid);color:var(--text);cursor:pointer;& svg{width:20px;height:20px}}.nav-mobile{display:none;flex-direction:column;gap:2px;padding:10px 12px 18px;border-top:1px solid var(--border);& a{padding:11px 12px;border-radius:var(--radius-sm);font-size:1rem;color:var(--text-muted);&:hover{background:var(--surface-active);color:var(--text)}}.nav-mobile-actions{display:flex;gap:10px;align-items:center;margin-top:10px}}@media(max-width:480px){.luna-nav .nav-inner{padding-inline:18px}.nav-mobile{padding-inline:6px}}@media(max-width:820px){.nav-links,.nav-github .btn-label{display:none}.nav-hamburger{display:inline-flex}.luna-nav.is-open .nav-mobile{display:flex}}.hero{position:relative;overflow:hidden;padding-block:48px 80px;--hero-height: min( calc(100dvh - 214px) , 1600px);min-height:var(--hero-height)}.hero:before{content:"";position:absolute;inset:-20% -10% auto auto;width:60%;height:120%;background:radial-gradient(50% 50% at 70% 30%,var(--glow-1),transparent 70%),radial-gradient(40% 40% at 90% 60%,var(--glow-2),transparent 70%);pointer-events:none;z-index:0}.hero .hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:48px;align-items:center}.hero-copy{display:flex;flex-direction:column;gap:22px;align-items:flex-start;min-width:0;& h1{max-width:360px;font-size:clamp(2rem,3.6vw,2.7rem);line-height:1.16}.hero-sub{max-width:min(54ch,100%);color:var(--text-muted);font-size:1.15rem;line-height:1.6}}.hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:4px}.hero-card{display:flex;flex-direction:column;width:max(100%,min(800px,calc(100% + max(0px,((100vw - var(--maxw)) / 2) - 24px))));border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);backdrop-filter:var(--glass-blur)}.hero-card-bar{display:flex;flex:0 0 auto;gap:8px;align-items:center;padding:11px 14px;border-bottom:1px solid var(--border);border-radius:var(--radius) var(--radius) 0 0;background:#00000024;.dot{width:11px;height:11px;border-radius:50%;background:var(--border-strong)}.hero-card-name{margin-left:6px;font-family:var(--font-mono);font-size:.78rem;color:var(--text-muted)}}luna-hero-code{display:contents}.hero-card-body{flex:1 1 auto;max-height:max(380px,calc(var(--hero-height) - 170px));margin:0;padding:10px 12px;overflow-x:auto;overflow-y:auto;border-radius:0 0 var(--radius) var(--radius);font-family:var(--font-mono);font-size:.78rem;line-height:1.7;color:var(--text);tab-size:4;white-space:pre;scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent;&::-webkit-scrollbar{width:10px;height:10px}&::-webkit-scrollbar-track{background:transparent}&::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:999px;background-clip:padding-box;background-color:var(--border-strong)}&::-webkit-scrollbar-thumb:hover{background-color:var(--accent)}}@media(max-width:920px){.hero{padding-block:44px 56px}.hero .hero-inner{grid-template-columns:minmax(0,1fr);gap:40px}.hero-card{order:2}.hero-card-body{max-height:380px}}.decompile{scroll-margin-top:84px;padding-top:44px}.decompile .section-head{margin-bottom:18px}.decompile-dialog{width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:none;border-radius:0;background:var(--bg);color:var(--text);overflow:hidden}.decompile-dialog:not([open]){display:none}.decompile-dialog::backdrop{background:var(--bg)}.decompile-dialog-inner{display:flex;flex-direction:column;width:100%;max-width:none;height:100dvh;margin-inline:0;padding:20px;overflow:hidden;>:not(.workspace){flex:0 0 auto}}.decompile-dialog .workspace{flex:1 1 auto;min-height:0;grid-template-rows:auto auto minmax(0,1fr)}.decompile-dialog .workspace-rail{display:flex;flex-direction:column;min-height:0}.decompile-dialog .rail-list{flex:1 1 auto;min-height:0;max-height:none}.decompile-dialog .workspace-main{min-height:0}.decompile-dialog .workspace-panel,.decompile-dialog .compare-panel{flex:1 1 auto;min-height:0;height:auto;max-height:none}.decompile-dialog .compare-panel{display:flex;flex-direction:column;overflow:hidden}.decompile-dialog .compare-sbs{flex:1 1 auto;min-height:0;grid-template-rows:minmax(0,1fr)}.decompile-dialog .compare-code{max-height:none}.decompile-expand{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;margin-left:auto;padding:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);cursor:pointer;transition:color .15s ease,background .15s ease,border-color .15s ease;&:hover{background:var(--surface-active);border-color:var(--border-strong);color:var(--text)}& svg{width:18px;height:18px}}.decompile-expand-placeholder{width:34px;height:34px;margin-left:auto;visibility:hidden}.decompile-input-row{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:stretch;margin-bottom:14px}.decompile-input{width:100%;min-width:0;padding:13px 16px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-solid);font-family:var(--font-mono);font-size:.92rem;color:var(--text);transition:border-color .15s ease,box-shadow .15s ease;&::placeholder{color:var(--text-faint)}&:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px var(--accent-soft)}}.decompile-network{appearance:none;padding:13px 36px 13px 14px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background-color:var(--surface-solid);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23a0a0a0' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;font-family:var(--font-mono);font-size:.9rem;color:var(--text);cursor:pointer;&:focus{border-color:var(--accent);outline:none}}.decompile-input:disabled,.decompile-network:disabled{opacity:.55;cursor:not-allowed;pointer-events:none}.decompile-input-row:has(.decompile-input:disabled){cursor:not-allowed}.decompile-pending{margin:-4px 0 14px;font-size:.82rem;color:var(--text-muted);& a{color:var(--accent-timeline);&:hover{color:var(--accent-timeline-hover)}}}.decompile-pending .pending-note-text{padding:3px 9px;margin-left:-9px;border-radius:4px;-webkit-box-decoration-break:clone;box-decoration-break:clone}.decompile-pending.is-flashing .pending-note-text{animation:pending-flash-fade 1.8s ease-out forwards}@keyframes pending-flash-fade{0%,40%{background:#c9b6e03d}to{background:transparent}}@media(prefers-reduced-motion:reduce){.decompile-pending.is-flashing .pending-note-text{animation:none;background:#c9b6e03d}}.decompile-examples{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:8px;.examples-label{font-size:.82rem;color:var(--text-muted)}}.decompile-examples .chip.is-active{border-color:var(--accent);color:var(--accent-hover)}.decompile-examples .chip .chip-check{display:inline-flex;align-items:center;margin-left:2px;& svg{width:13px;height:13px;color:var(--green)}}.workspace-status{padding:22px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);font-family:var(--font-mono);font-size:.84rem;color:var(--text-muted)}.decompile-hint{margin-top:12px;padding:10px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-solid);font-size:.88rem;color:var(--text-muted)}.workspace{display:grid;grid-template-columns:minmax(0,1fr);overflow:hidden;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);backdrop-filter:var(--glass-blur)}.workspace.has-rail{grid-template-columns:240px minmax(0,1fr)}.workspace-head{grid-column:1 / -1;display:flex;flex-wrap:nowrap;gap:12px;align-items:center;padding:14px 18px;border-bottom:1px solid var(--border);background:#00000024;.workspace-title{display:flex;flex:1 1 auto;gap:10px;align-items:center;min-width:0;font-weight:600;white-space:nowrap}.workspace-addr{padding:0;border:0;background:none;cursor:pointer;font:inherit;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;font-family:var(--font-mono);font-size:.82rem;color:var(--text-muted);&:hover{color:var(--text)}.addr-short{display:none}.addr-copied{display:inline-flex;gap:5px;align-items:center;color:var(--green);& svg{width:11px;height:11px}}}.workspace-meta{display:flex;flex:0 0 auto;flex-wrap:wrap;gap:8px;align-items:center;margin-left:auto;min-height:26px}.workspace-load-error{font-family:var(--font-mono);font-size:.78rem;color:var(--text-muted)}}@media(max-width:1023px){.workspace-head .workspace-addr .addr-full{display:none}.workspace-head .workspace-addr .addr-short{display:inline}}.workspace.is-loading .workspace-panel,.workspace.is-loading .compare-panel,.workspace.is-loading .workspace-rail{opacity:.55}.workspace-rail{padding:8px 12px 14px 2px;border-right:1px solid var(--border);background:#0000001a;transition:opacity .15s ease;display:flex;flex-direction:column;.rail-list{display:flex;flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;overflow-y:auto;max-height:540px;flex:0 1 auto;min-height:0}.rail-findings{display:flex;flex-direction:column;gap:2px;margin:auto 0 0;padding:8px 0 0;border-top:1px solid var(--border);list-style:none;flex:0 0 auto}.rail-finding{&:hover{background:var(--tok-warn-bg)}.tok-warn{background:none;margin-right:4px;font-size:.74rem}}.rail-item{display:block;width:100%;padding:7px 9px 7px 19px;border:none;border-radius:6px;background:transparent;font-family:var(--font-mono);font-size:.8rem;text-align:left;color:var(--text-muted);cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color .15s ease,background .15s ease;&:hover{background:var(--surface-active);color:var(--text)}&:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}}}.workspace-main{display:flex;flex-direction:column;min-width:0}.workspace-tabs{grid-column:1 / -1;display:flex;gap:30px;padding:0 20px;border-bottom:1px solid var(--border);overflow-x:auto;scrollbar-width:none;&::-webkit-scrollbar{display:none}.workspace-tab{flex:0 0 auto;padding:9px 0;white-space:nowrap;border:none;border-bottom:2px solid transparent;background:transparent;font:inherit;font-size:.88rem;color:var(--text-muted);cursor:pointer;transition:color .15s ease,border-color .15s ease;&:hover{color:var(--text)}&.is-active{color:var(--text);border-bottom-color:var(--accent)}}}.workspace-tab-links{display:flex;flex:0 0 auto;gap:14px;align-items:center;margin-left:auto;padding-left:12px}.workspace-tab-link{display:inline-flex;gap:3px;align-items:center;white-space:nowrap;font-size:.78rem;text-decoration:none;color:var(--text-faint);transition:color .15s ease;&:hover{color:var(--text)}.ext-arrow{display:inline-flex;flex:none;transform:translateY(.5px);& svg{width:10px;height:10px}}}@media(max-width:768px){.workspace-tab-links{display:none}}.workspace-panel{height:563px;margin:0;padding:18px 20px;overflow:auto;font-family:var(--font-mono);font-size:.84rem;line-height:1.7;color:var(--text);tab-size:4;white-space:pre;transition:opacity .15s ease;&.is-disasm{font-size:.76rem}}.workspace-panel.has-gutter,.compare-code.has-gutter{--code-pad-top: 4px;position:relative;display:flex;align-items:flex-start;padding:0}.panel-gutter{position:sticky;left:0;z-index:1;flex:0 0 auto;min-height:100%;padding:var(--code-pad-top) 6px 4px 6px;border-right:1px solid var(--border);background:var(--surface-solid);text-align:right;color:var(--text-faint);user-select:none;.gutter-line{display:block;transition:color .3s ease;&.is-jump-line{color:var(--text-muted)}}}.workspace-panel.has-gutter>code{flex:0 0 auto;padding:var(--code-pad-top) 8px 4px}.compare-code.has-gutter .panel-gutter{padding:var(--code-pad-top) 6px 4px 6px}.compare-code.has-gutter>code{flex:0 0 auto;padding:var(--code-pad-top) 8px 4px}.sig-new:before,:is(.rail-item,.symbols-line).is-recovered:before{content:"new";position:absolute;top:50%;font-size:.5rem;font-weight:600;letter-spacing:.02em;line-height:1;color:var(--sig-recovered);transform:translateY(calc(-50% - 1px)) rotate(-45deg);transition:color .15s ease}.sig-new{position:relative;display:inline-block;&:before{left:-1px}}:is(.rail-item,.symbols-line).is-recovered{position:relative;&:before{left:1px}&:hover:before{color:var(--sig-recovered-hover)}}.compare-code .src-jump{cursor:pointer;&:hover{filter:brightness(1.35)}}.workspace-panel :is(.dis-jump,.dis-ref){color:var(--tok-fn);cursor:pointer;&:after{content:"";display:inline-block;width:11px;height:11px;margin-left:4px;vertical-align:-1.5px;background-color:currentcolor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M1.5 6H9.5M6.5 3L10 6L6.5 9' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat}&:hover{filter:brightness(1.3)}}.dis-arrows{position:absolute;top:var(--code-pad-top);left:0;display:block;overflow:visible;pointer-events:none;user-select:none}.dis-arrow{color:var(--text-faint);opacity:.5;transition:opacity .15s ease,color .15s ease;&.is-hover{color:var(--tok-fn);opacity:1}.dis-arrow-line{fill:none;stroke:currentcolor;stroke-width:1}.dis-arrow-head{fill:currentcolor;stroke:none}}.jump-flash{position:absolute;left:0;height:1lh;background:#c9b6e024;pointer-events:none;animation:jump-flash-fade 1.8s ease-out forwards}@keyframes jump-flash-fade{0%,40%{opacity:1}to{opacity:0}}@media(prefers-reduced-motion:reduce){.jump-flash{animation:none}}.symbols-panel{display:grid;gap:2px;padding:8px 12px 14px 2px;white-space:normal;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);column-gap:18px;align-content:start;.symbols-col{display:flex;flex-direction:column;gap:2px;min-width:0}.symbols-line{display:block;max-width:100%;padding:7px 9px 7px 19px;flex-shrink:0;border:none;border-radius:6px;background:transparent;font-family:var(--font-mono);font-size:.8rem;text-align:left;color:var(--text-muted);cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color .15s ease,background .15s ease;&:hover{background:var(--surface-active);color:var(--text)}&:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}}}.compare-panel{height:563px;overflow:hidden;transition:opacity .15s ease}.compare-sbs{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:minmax(0,1fr);align-items:stretch;height:100%}.compare-col{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.compare-col+.compare-col{border-left:1px solid var(--border)}.compare-col-label,.compare-tools{min-height:38px;border-bottom:1px solid var(--border);background:#00000024}.compare-col-label{display:flex;gap:6px;align-items:center;padding:0 14px;font-family:var(--font-mono);font-size:.74rem;letter-spacing:.04em;color:var(--text);& svg{width:14px;height:14px;color:var(--green)}}.compare-tools{display:flex;flex-wrap:wrap;gap:4px;align-items:center;padding:4px 8px;.compare-tool{padding:5px 10px;border:none;border-radius:6px;background:transparent;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.01em;color:var(--text-muted);cursor:pointer;transition:color .15s ease,background .15s ease;&:hover{color:var(--text);background:var(--surface-active)}&.is-active{color:var(--tok-kw);background:#c9b6e024}}}.compare-code{flex:1 1 auto;min-height:0;margin:0;padding:12px 14px;overflow:auto;font-family:var(--font-mono);font-size:.8rem;line-height:1.6;color:var(--text);tab-size:4;white-space:pre}.compare-code-pseudo{color:var(--text-muted)}.gate-state{padding:22px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);backdrop-filter:var(--glass-blur);.gate-state-head{display:flex;gap:10px;align-items:center;margin-bottom:8px;font-weight:600}.gate-state-lede{margin-bottom:18px;color:var(--text-muted)}}.gate-paths{display:grid;grid-template-columns:1fr 1fr;gap:14px}.gate-path{display:flex;flex-direction:column;gap:12px;align-items:flex-start;padding:16px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-solid);.gate-path-text{font-size:.92rem;color:var(--text-muted)}}@media(max-width:768px){.decompile-input-row{grid-template-columns:1fr}.workspace-head{flex-wrap:wrap}.workspace.has-rail{grid-template-columns:minmax(0,1fr)}.workspace-rail{border-right:none;border-bottom:1px solid var(--border)}.workspace-rail .rail-list{max-height:190px}.workspace-rail .rail-item,.symbols-panel .symbols-line{padding:11px 10px}.compare-tools .compare-tool{min-height:40px;padding:8px 12px}.decompile-expand,.decompile-expand-placeholder{width:40px;height:40px}.compare-panel{height:auto;overflow:visible;max-height:none}.compare-code{max-height:300px}.gate-paths{grid-template-columns:1fr}.workspace-head .workspace-meta{margin-left:0;flex-shrink:1}.compare-sbs{height:auto;grid-template-columns:1fr}.compare-col+.compare-col{border-left:none;border-top:1px solid var(--border)}.decompile-dialog{overflow:auto}.decompile-dialog-inner{height:auto;min-height:100dvh;overflow:visible}.decompile-dialog .workspace-panel,.decompile-dialog .compare-panel{max-height:calc(100dvh - 220px)}.decompile-dialog .rail-list{max-height:190px}.decompile-dialog .compare-panel{overflow:auto;max-height:calc(100dvh - 220px)}}.rail-item .tok-type,.symbols-line .tok-type,.tok-kw{color:var(--tok-kw)}.tok-type{color:var(--tok-type)}.tok-str{color:var(--tok-str)}.tok-num{color:var(--tok-num)}.tok-env{color:var(--tok-env)}.tok-com{color:var(--tok-com);font-style:italic}.tok-warn{color:var(--tok-warn);background:var(--tok-warn-bg);font-weight:700}.tok-fn{color:var(--tok-fn)}.tok-punct{color:var(--tok-punct)}.decompile-dialog,.rail-list,.workspace-panel,.compare-panel,.compare-code{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent;&::-webkit-scrollbar{width:8px;height:8px}&::-webkit-scrollbar-track{background:transparent}&::-webkit-scrollbar-thumb{border-radius:999px;background-color:var(--border-strong)}&::-webkit-scrollbar-thumb:hover{background-color:var(--text-faint)}&::-webkit-scrollbar-corner{background:transparent}}.access-chart{--band: 110px;--node: 12px;--line-color: var(--border-strong);display:grid;grid-template-columns:repeat(6,1fr);grid-template-rows:auto var(--band) auto}.access-chart-line{grid-row:2;grid-column:1 / -1;width:100%;height:100%;& polyline{fill:none;stroke:var(--line-color);stroke-width:1.25}}.access-timeline{display:contents;margin:0;padding:0;list-style:none}.access-stage{display:contents}.access-stage:nth-child(1)>*{grid-column:1 / 3}.access-stage:nth-child(2)>*{grid-column:2 / 4}.access-stage:nth-child(3)>*{grid-column:3 / 5}.access-stage:nth-child(4)>*{grid-column:4 / 6}.access-stage:nth-child(5)>*{grid-column:5 / 7}.access-stage-node{z-index:1;grid-row:2;justify-self:center;width:var(--node);height:var(--node);border:1px solid var(--text-faint);border-radius:50%;background:var(--surface-solid)}.stage-top>.access-stage-node{align-self:start}.stage-bottom>.access-stage-node{align-self:end}.access-stage-text{padding:0 18px;text-align:center}.stage-top>.access-stage-text{grid-row:1;align-self:end;padding-bottom:14px}.stage-bottom>.access-stage-text{grid-row:3;align-self:start;padding-top:14px}.access-stage-label{display:block;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.05em;text-transform:uppercase;color:var(--text-faint)}.access-stage-title{margin:4px 0;font-size:.95rem;font-weight:600;color:var(--text-muted)}.access-stage-body{color:var(--text-faint);font-size:.85rem;line-height:1.5}.access-stage.is-current{.access-stage-node{border-color:var(--accent-timeline);background:var(--accent-timeline);box-shadow:0 0 0 4px var(--accent-timeline-soft)}.access-stage-label{color:var(--text-muted)}.access-stage-title{color:var(--text);font-weight:650}.access-stage-body{color:var(--text-muted)}}.access-research{display:flex;gap:20px;align-items:center;justify-content:space-between;margin-top:52px;padding:20px 24px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-solid)}.access-research-text{color:var(--text-muted);font-size:.95rem;line-height:1.6;& strong{color:var(--text);font-weight:600}}.access-research-actions{display:flex;flex-shrink:0;gap:10px;align-items:center}@media(max-width:900px){.access-chart{display:block}.access-chart-line{display:none}.access-timeline{display:grid;row-gap:30px}.access-stage{position:relative;display:flex;gap:14px;align-items:flex-start;&:not(:last-child):before{content:"";position:absolute;top:calc(var(--node) + 6px);bottom:-36px;left:calc(var(--node) / 2 - .5px);width:1px;background:var(--line-color)}}.access-stage>.access-stage-node{flex-shrink:0;align-self:flex-start;margin-top:2px}.access-stage>.access-stage-text{padding:0;text-align:left}.access-research{flex-direction:column;align-items:flex-start}.access-research-actions{flex-wrap:wrap}}.faq-head{flex-flow:row wrap;gap:8px 24px;align-items:baseline;max-width:none}.faq-note{color:var(--text-faint);font-size:.82rem;line-height:1.5}.faq-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 36px}.faq-item{position:relative;padding-top:16px;border-top:1px solid var(--border)}.faq-item.has-long .faq-question{padding-right:36px}.faq-question{margin:0 0 8px;color:var(--text);font-size:.98rem;font-weight:600;letter-spacing:-.01em;line-height:1.4}.faq-answer{color:var(--text-muted);font-size:.92rem;line-height:1.6}.faq-long{margin-top:0}.faq-long-summary{position:absolute;top:13px;right:0;display:flex;align-items:center;justify-content:flex-end;width:32px;height:28px;color:var(--text-faint);cursor:pointer;list-style:none;user-select:none}.faq-long-summary::marker,.faq-long-summary::-webkit-details-marker{display:none}.faq-long-summary:before{content:"+";font-size:1rem;line-height:1;transition:transform .15s ease}.faq-long[open]>.faq-long-summary:before{transform:rotate(45deg)}.faq-long-summary:hover{color:var(--text-muted)}.faq-long-body{margin-top:8px}.faq-long-body p{margin:0 0 10px;color:var(--text-muted);font-size:.92rem;line-height:1.65}.faq-long-body p:last-child{margin-bottom:0}.faq-long-figure{margin:12px 0 0}.faq-long-img{display:block;width:min(200px,100%);height:auto}@media(max-width:999px){.faq-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.faq-grid{grid-template-columns:1fr;gap:20px}}@media(max-width:768px){.faq-long-summary{top:5px;width:44px;height:44px}}.footer{border-top:1px solid var(--border);background:var(--bg-2)}.footer-line{display:flex;flex-wrap:wrap;gap:22px;align-items:center;padding-block:22px}.footer-byline{margin-inline-start:auto;color:var(--text-muted);font-size:.85rem;& a{color:var(--text-muted);&:hover{color:var(--text)}}}.footer-github{display:inline-flex;gap:8px;align-items:center;color:var(--text-muted);font-size:.9rem;& svg{width:18px;height:18px}&:hover{color:var(--text)}}@media(max-width:768px){.footer-github,.footer-byline{padding-block:9px}}.modal-backdrop{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;background:#05060a99;backdrop-filter:blur(6px);animation:modal-fade .18s ease}@keyframes modal-fade{0%{opacity:0}to{opacity:1}}.modal{position:relative;width:100%;max-width:480px;max-height:calc(100vh - 48px);overflow-y:auto;padding:28px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface-solid);box-shadow:0 24px 60px #00000080;animation:modal-rise .2s ease}@keyframes modal-rise{0%{transform:translateY(8px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-close{position:absolute;top:16px;right:16px;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);cursor:pointer;transition:color .15s ease,background .15s ease;&:hover{background:var(--surface-active);color:var(--text)}& svg{width:18px;height:18px}}.modal-title{margin:0 0 12px;padding-right:32px;font-size:1.3rem}.modal-body{margin-bottom:18px;color:var(--text-muted);font-size:.96rem;line-height:1.6}.modal-checklist{display:flex;flex-direction:column;gap:10px;margin:0 0 22px;padding:0;list-style:none;& li{display:flex;gap:10px;align-items:center;font-size:.92rem;color:var(--text)}}.modal-actions{display:flex;flex-direction:column;gap:10px;.btn{width:100%}}.modal-inline-note{margin-top:14px;padding:12px 14px;border:1px solid rgb(253 26 41 / .4);border-radius:var(--radius-sm);background:var(--accent-soft);font-size:.9rem;color:var(--text)}
