/* A single, calm academic-project visual system for the existing page. */
:root{--bg:#fff;--bg-system:#f1f5f9;--text:#17212b;--muted:#5d6b78;--line:#d7e0e8;--accent:#1f5e9e;--accent-dark:#174a7c;--accent-soft:#eaf2fa;--serif:Georgia,"Times New Roman",serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}body{background:var(--bg);color:var(--text);font:16px/1.6 var(--sans)}html,body{overflow-x:hidden}.container,.container-wide{width:min(calc(100% - 3rem),1160px)}

/* Header */
.top-nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;min-height:64px;padding:0 max(1.5rem,calc((100% - 1160px)/2));border-bottom:1px solid var(--line);background:rgba(255,255,255,.97);backdrop-filter:none}.top-nav .brand{position:static;margin-right:auto;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:var(--text);font-size:1rem;font-weight:800;letter-spacing:-.02em}.top-nav .page-nav{position:static;display:flex;gap:1.3rem;margin-left:auto;transform:none;opacity:1;pointer-events:auto;font-size:.84rem}.top-nav .page-nav a{padding:0;border:0;border-radius:0;color:var(--muted);text-decoration:none}.top-nav .page-nav a.active,.top-nav .page-nav a:hover{background:transparent;color:var(--accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.3em}

/* Hero and shared editorial structure */
.hero{min-height:0;padding:6.2rem 0 5.3rem;text-align:left;background:#fff;border-bottom:1px solid var(--line)}.hero .container{width:min(calc(100% - 3rem),1160px)}.hero h1{max-width:1100px;margin:0;font:700 clamp(3rem,6.2vw,5.5rem)/1.02 var(--serif);letter-spacing:-.055em}.hero .paper-title{max-width:930px;margin:.85rem 0 0;color:#3e4e5e;font:clamp(1.15rem,2vw,1.62rem)/1.42 var(--serif)}.venue{margin:.95rem 0 0;color:var(--accent);font-size:.76rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.link-row{justify-content:flex-start;margin:1.8rem 0 0}.button{min-height:auto;padding:.52rem .8rem;border:1px solid var(--text);border-radius:3px;background:transparent;box-shadow:none}.button.primary{border-color:var(--text);background:var(--text)}.coming-badge{border-radius:2px}.section{padding:5.4rem 0}.section+.section{border-top:1px solid var(--line)}.section-heading{max-width:930px;margin-bottom:1.8rem}.section-heading h2{margin:.2rem 0 0;font:700 clamp(2rem,4vw,3.5rem)/1.1 var(--serif);letter-spacing:-.04em}.eyebrow{color:var(--accent);font-size:.7rem;letter-spacing:.12em}.overview-copy,.section-copy{max-width:730px;color:var(--muted);font-size:1rem}

/* Overview and Why */
.overview-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin:2.1rem 0;background:var(--line);border:1px solid var(--line)}.overview-grid article{min-height:0;padding:1.05rem 1rem;background:#fff;border:0;border-radius:0;box-shadow:none;animation:none}.overview-grid strong{font:700 2rem/1 var(--serif)}.overview-grid span{margin-top:.45rem;color:var(--muted);font-size:.8rem}.overview-why{margin-top:4.7rem;padding-top:0}.why-grid{display:grid;grid-template-columns:1fr 56px 1fr;gap:2.2rem;align-items:stretch;margin:2rem 0 0}.why-grid article{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.why-grid article::before{display:none}.why-grid h3{margin:0;padding-bottom:.6rem;border-bottom:1px solid var(--line);font:700 1.25rem var(--serif)}.why-grid ul{display:block;margin:0;padding:0;list-style:none}.why-grid li{display:grid;grid-template-columns:1.8rem 1fr;gap:.55rem;padding:.73rem 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;color:var(--muted);font-size:.9rem;line-height:1.5;transition:none}.why-grid li:hover{background:transparent;transform:none}.why-grid i{display:grid;place-items:center;width:1.45rem;height:1.45rem;border-radius:0;background:transparent;box-shadow:none;font-style:normal}.why-arrow{align-self:center}.why-arrow b{display:block;width:auto;height:auto;border:0;border-radius:0;background:transparent;box-shadow:none;color:var(--accent);font-size:1.75rem;animation:none}

/* System */
#system{background:var(--bg-system)}.method-heading{margin-top:0}.figure-panel{margin:1.8rem 0 0;padding:.65rem;border:1px solid var(--line);border-radius:0;background:#fff;box-shadow:none}.figure-panel img{border-radius:0}.module-flow{display:flex;gap:0;margin:2.5rem 0 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow-x:auto;counter-reset:module}.module-flow i{display:none}.module-flow button{position:relative;flex:1;min-width:11rem;padding:1rem .8rem .9rem;border:0;border-right:1px solid var(--line);border-radius:0;background:transparent;counter-increment:module;text-align:left}.module-flow button::before{content:"0" counter(module);display:block;margin-bottom:.35rem;color:var(--accent);font-size:.67rem;font-weight:800;letter-spacing:.1em}.module-flow button:last-of-type{border-right:0}.module-flow button.active{border:0;border-right:1px solid var(--line);border-bottom:3px solid var(--accent);background:#fff}.module-flow b{font:700 1rem var(--serif)}.module-flow span{font-size:.76rem;line-height:1.4}.module-detail{min-height:0;margin-top:1.2rem;padding:1.25rem;border:1px solid var(--line);border-top:3px solid var(--accent);border-left:1px solid var(--line);border-radius:0;background:#fff;box-shadow:none}.module-detail h3{margin:0 0 .75rem;font:700 1.55rem var(--serif)}.adapt-copy{gap:2rem}.adapt-copy p:first-child{border-left:2px solid var(--accent);border-radius:0;background:var(--accent-soft)}.sca-demo article,.chain-strategies article,.attack-cards article,.property-grid .property-card,.validation-bridge article{border-color:var(--line);border-radius:0;box-shadow:none}.sca-demo article{background:#fff}.chain-paper-figure{border-color:var(--line);border-radius:0;box-shadow:none}.security-equation{border:0;border-radius:0;background:transparent}.security-equation span,.security-equation strong{border-radius:2px}.system-example{margin-top:5rem}.system-example .section-heading{margin-bottom:.8rem}.violation-tags span,.violation-tags strong{border-radius:2px}.system-example .walkthrough-steps{margin-top:1.8rem;border:1px solid var(--line);border-bottom:0;border-radius:0;background:#fff}.system-example .walkthrough-steps button{border-radius:0}.system-example .walkthrough-steps button.active{background:var(--accent-soft)}.system-example .explorer-panel{border:1px solid var(--line);border-top:0;border-radius:0;box-shadow:none}.system-example .node{border-color:var(--line);border-radius:0;background:#fff}.system-example .node>span,.system-example .walk-result{border-radius:0}

/* Findings */
#findings{background:#fff}.result-banner{margin:1.5rem 0;border-left:2px solid var(--accent);background:var(--accent-soft);font-family:var(--serif)}.spec-filter{display:grid;grid-template-columns:repeat(6,1fr);gap:0;margin:2rem 0 1rem;border:1px solid var(--line)}.spec-filter button{min-height:5.3rem;padding:.7rem;border:0;border-right:1px solid var(--line);border-radius:0;background:#fff;font-size:.8rem}.spec-filter button:last-child{border-right:0}.spec-filter button.active{border-color:var(--line);background:var(--accent-soft)}.findings-list{gap:0;border-top:1px solid var(--line)}.finding{border:0;border-bottom:1px solid var(--line);border-left:0;border-radius:0;background:#fff;box-shadow:none}.finding summary{padding:1rem 0}.badge{border-radius:0}.finding h3{font-size:1.12rem}.finding-body{padding:0 0 1.3rem;border-top:0}.finding-figure{padding:.55rem;border-color:var(--line);border-radius:0;box-shadow:none}.disclosure{margin-top:3rem;padding:1.2rem 0 0;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none}.disclosure-grid{gap:0;border:1px solid var(--line)}.disclosure-grid span{border:0;border-right:1px solid var(--line);border-radius:0}.disclosure-grid span:last-child{border-right:0}footer{background:var(--bg-system);border-top:1px solid var(--line)}

@media(max-width:760px){.container,.container-wide,.hero .container{width:min(calc(100% - 2rem),1160px)}.top-nav{min-height:58px;padding:0 1rem}.top-nav .page-nav{gap:.7rem;max-width:70vw;overflow-x:auto}.hero{padding:4.15rem 0}.section{padding:3.6rem 0}.overview-grid{grid-template-columns:1fr 1fr}.why-grid{grid-template-columns:1fr;gap:1.6rem}.why-arrow{display:none}.adapt-copy{grid-template-columns:1fr}.spec-filter{grid-template-columns:1fr 1fr}.spec-filter button{border-bottom:1px solid var(--line)}.disclosure-grid{grid-template-columns:1fr}.disclosure-grid span{border-right:0;border-bottom:1px solid var(--line)}.disclosure-grid span:last-child{border-bottom:0}}

/* Shared section typography and content spacing. */
.section-heading .eyebrow{margin-bottom:.4rem;font:700 clamp(1.3rem,1.35vw,1.5rem)/1.2 var(--sans);letter-spacing:.08em}.section-heading h2{font-size:clamp(1.6rem,2.5vw,2.5rem)}.system-example{padding:1.25rem;border-top:1px solid var(--line)}.finding-figure{width:60%;margin:1.1rem auto}.finding-figure img{width:100%;height:auto}
@media(max-width:760px){.finding-figure{width:100%}}

/* One shared radius for every visible card, panel, and interactive container. */
.overview-grid article,.why-grid article,.rq-grid article,.rq-detail,.figure-panel,.module-flow,.module-detail,.explorer-panel,.results-explorer,.finding,.finding-figure,.disclosure,.chain-paper-figure,.chain-scroller,.sca-demo article,.chain-strategies article,.attack-cards article,.property-grid .property-card,.validation-bridge article,.test-structure,.test-guidance,.property-detail,.candidate-example,.security-equation,.result-banner,.runtime-hero,.runtime-metrics span,.node,.walk-result{border-radius:12px}.spec-filter{border-radius:12px;overflow:hidden}.spec-filter button:first-child{border-radius:11px 0 0 11px}.spec-filter button:last-child{border-radius:0 11px 11px 0}.system-example .walkthrough-steps{border-radius:12px 12px 0 0}.system-example .explorer-panel{border-radius:0 0 12px 12px}.segmented-control button,.module-flow button,.property-grid .property-card,.attack-cards article,.validation-bridge article,.sca-demo article{border-radius:12px}.violation-tags span,.violation-tags strong,.badge,.chain-legend span,.sca-legend span,.test-structure li{border-radius:999px}
.overview-grid{gap:.75rem;background:transparent;border:0}.overview-grid article{border:1px solid var(--line);box-shadow:none}

/* Keep the site navigation visible at every scroll position. */
body{padding-top:64px}.top-nav{position:fixed;top:0;right:0;left:0;z-index:100}@media(max-width:760px){body{padding-top:58px}}
.button,.coming-badge{border-radius:12px}
.hero{text-align:center}.hero h1{margin-right:auto;margin-left:auto}.hero .paper-title{margin-right:auto;margin-left:auto}.link-row{justify-content:center}.button.primary{border-color:var(--accent-dark);background:var(--accent-dark)}

/* Disclosure follows the shared section title scale. */
.disclosure .eyebrow{margin-bottom:.4rem;font:700 clamp(1.3rem,1.35vw,1.5rem)/1.2 var(--sans);letter-spacing:.08em}.disclosure h3{font-size:clamp(1.6rem,2.5vw,2.5rem)}
.section-heading{max-width:none}

/* Arial Rounded locally, with web-font fallbacks for other devices. */
:root{--serif:"Arial Rounded MT Bold","Arial Rounded MT","Nunito Sans","Noto Sans",sans-serif;--sans:"Arial Rounded MT Bold","Arial Rounded MT","Nunito Sans","Noto Sans",sans-serif}
.hero h1,.section-heading h2,.disclosure h3{letter-spacing:normal}

/* Keep the SecOracle detail card consistent with every other module detail card. */
.module-detail:has(.oracle-group){background:#fff}
