:root {
    --font-display: "Sora", system-ui, sans-serif;
    --font-sans: "IBM Plex Sans", system-ui, sans-serif;
    --font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
    --bg: #edf2f7;
    --panel: #ffffff;
    --panel-2: #e5ecf4;
    --ink: #0f1b2d;
    --muted: #4c5769;
    --line: rgba(15, 27, 45, 0.1);
    --accent: #1d5fbf;
    --accent-2: #0c8dbf;
    --radius: 18px;
    --shadow-soft: 0 18px 70px rgba(16, 23, 33, 0.12);
    --shadow-lean: 0 10px 26px rgba(16, 23, 33, 0.08);
    --content-max: 1620px;
    --content-gutter: clamp(14px, 2.8vw, 28px);
    --content-rail: clamp(0px, 1.6vw, 24px);
    --section-space: clamp(24px, 4vw, 46px);
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    width: 100%;
}

body {
    margin: 0;
    min-width: 320px;
    overflow-x: hidden;
    font-family: var(--font-sans);
    color: var(--ink);
    line-height: 1.75;
    letter-spacing: -0.01em;
    background:
        radial-gradient(circle at 20% 20%, rgba(255, 255, 255, 0.08), transparent 40%),
        #d2d6de;
}

a {
    color: var(--accent);
    text-decoration: none;
}

a:hover {
    color: var(--accent-2);
    text-decoration: underline;
}

img {
    max-width: 100%;
}

main {
    display: block;
}

pre {
    margin: 0;
    padding: 14px;
    border: 1px solid #1f2937;
    border-radius: 12px;
    background: #0f172a;
    color: #e5e7eb;
    font-family: var(--font-mono);
    line-height: 1.65;
    overflow-x: auto;
}

blockquote {
    margin: 0 0 16px;
    padding: 14px;
    border-left: 4px solid var(--accent);
    border-radius: 8px;
    background: color-mix(in srgb, var(--accent) 8%, transparent);
    color: var(--ink);
}

.bg-grid {
    position: fixed;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    opacity: 0.16;
    background-image:
        linear-gradient(var(--line) 1px, transparent 1px),
        linear-gradient(90deg, var(--line) 1px, transparent 1px),
        radial-gradient(circle at 80% 10%, color-mix(in srgb, var(--accent) 6%, transparent), transparent 40%);
    background-size: 120px 120px, 120px 120px, 100% 100%;
}

.wrap {
    width: 100%;
    max-width: var(--content-max);
    margin: 0 auto;
    padding: 0 var(--content-gutter);
    position: relative;
    z-index: 1;
}

/* Base layout system: shared skeleton for every page */
.page-main {
    padding: clamp(22px, 4vw, 44px) 0 clamp(34px, 6vw, 62px);
}

.page-stack {
    display: grid;
    gap: clamp(14px, 2.2vw, 24px);
}

.page-stack > * {
    width: 100%;
}

.page-panel {
    border: 1px solid var(--line);
    border-radius: var(--radius);
    background: color-mix(in srgb, var(--panel) 97%, #fff 3%);
    box-shadow: var(--shadow-soft);
}

.page-panel--padded {
    padding: clamp(16px, 2.2vw, 30px);
}

.site-header {
    position: sticky;
    top: 0;
    z-index: 20;
    border-bottom: 1px solid var(--line);
    backdrop-filter: blur(14px);
    background: color-mix(in srgb, var(--bg) 70%, #b2bfce 30%);
}

.header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: clamp(10px, 2vw, 20px);
    padding: 14px 0;
}

.branding {
    display: flex;
    align-items: center;
    gap: clamp(10px, 1.8vw, 18px);
    min-width: 0;
    flex: 1;
}

.brand-mark {
    width: clamp(96px, 13vw, 170px);
    height: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    flex-shrink: 0;
}

.brand-logo {
    width: 100%;
    height: auto;
    max-height: 80px;
    display: block;
    object-fit: contain;
}

.brand-text {
    display: grid;
    gap: 2px;
    align-content: center;
    align-items: flex-start;
    text-align: left;
    min-width: 0;
}

.brand-subtext {
    display: grid;
    gap: 2px;
    align-items: flex-start;
    text-align: left;
}

.site-title {
    margin: 0;
    font-size: clamp(15px, 1.5vw, 18px);
    font-weight: 800;
    letter-spacing: -0.02em;
    color: var(--ink);
    line-height: 1.2;
}

.site-tagline {
    margin: 0;
    font-size: clamp(11px, 1.1vw, 13px);
    color: var(--muted);
    line-height: 1.35;
    text-align: left;
}

.header-actions {
    margin-left: auto;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 6px 8px;
    gap: 8px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: color-mix(in srgb, var(--panel) 92%, #fff 8%);
    box-shadow: var(--shadow-lean);
}

.site-nav {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    font-size: 13px;
}

.site-nav a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 7px 11px;
    border: 1px solid color-mix(in srgb, var(--line) 70%, transparent);
    border-radius: 10px;
    background: color-mix(in srgb, var(--panel-2) 32%, transparent);
    color: var(--ink);
    font-weight: 700;
    transition: background 120ms ease, color 120ms ease, border-color 120ms ease;
}

.site-nav a:hover {
    text-decoration: none;
    border-color: color-mix(in srgb, var(--accent) 40%, var(--line) 60%);
    background: color-mix(in srgb, var(--panel-2) 70%, transparent);
}

.site-nav a.nav-jellybee {
    color: #3f2d00;
    border-color: #d4a900;
    background: #ffd84d;
}

.site-nav a.nav-jellybee:hover {
    color: #2f2200;
    border-color: #be9800;
    background: #ffcc21;
}

.site-nav .nav-disabled {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 7px 11px;
    border: 1px dashed color-mix(in srgb, var(--accent-2) 58%, var(--line) 42%);
    border-radius: 10px;
    background: color-mix(in srgb, var(--accent-2) 12%, var(--panel-2) 88%);
    color: color-mix(in srgb, var(--accent-2) 70%, var(--muted) 30%);
    font-weight: 700;
    cursor: not-allowed;
    opacity: 0.72;
    user-select: none;
}
.nav-dropdown {
    position: relative;
}

.nav-dropdown > summary {
    list-style: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 7px 11px;
    border: 1px solid color-mix(in srgb, var(--line) 70%, transparent);
    border-radius: 10px;
    background: color-mix(in srgb, var(--panel-2) 32%, transparent);
    color: var(--ink);
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    transition: background 120ms ease, color 120ms ease, border-color 120ms ease;
}

.nav-dropdown > summary::-webkit-details-marker {
    display: none;
}

.nav-dropdown > summary::after {
    content: "▾";
    font-size: 11px;
    color: var(--muted);
}

.nav-dropdown[open] > summary,
.nav-dropdown > summary:hover {
    border-color: color-mix(in srgb, var(--accent) 40%, var(--line) 60%);
    background: color-mix(in srgb, var(--panel-2) 70%, transparent);
}

.nav-dropdown-menu {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    min-width: 196px;
    padding: 8px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: color-mix(in srgb, var(--panel) 97%, #fff 3%);
    box-shadow: var(--shadow-lean);
    display: grid;
    gap: 6px;
    z-index: 30;
}

.nav-dropdown-menu a {
    width: 100%;
}

.hero {
    position: relative;
    overflow: hidden;
    margin: 0;
    padding: clamp(16px, 2.4vw, 28px);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    background: var(--panel);
    box-shadow: var(--shadow-soft);
}

.hero::before {
    content: "";
    position: absolute;
    inset: 0;
    border: 1px solid var(--line);
    border-radius: calc(var(--radius) + 2px);
    transform: translate(8px, 10px);
    opacity: 0.35;
    pointer-events: none;
}

.hero::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(130deg, color-mix(in srgb, var(--accent) 10%, transparent), transparent 55%);
}

.hero h1 {
    margin: 10px 0 12px;
    font-family: var(--font-display);
    font-size: clamp(28px, 4.6vw, 48px);
    line-height: 1.08;
    letter-spacing: -0.02em;
    color: var(--ink);
    position: relative;
    z-index: 1;
}

.diagram-flow {
    margin-top: 18px;
    padding: 8px;
    border: 1px dashed var(--line);
    border-radius: 16px;
    background: color-mix(in srgb, var(--panel-2) 70%, transparent);
    position: relative;
    overflow: hidden;
}

.diagram-flow::before {
    content: "";
    position: absolute;
    inset: 8px;
    border: 1px solid var(--line);
    border-radius: 12px;
    opacity: 0.35;
    pointer-events: none;
}

.diagram-flow img.diagram-img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: contain;
    border-radius: 10px;
}

.diagram-caption {
    margin: 12px auto 0 !important;
    max-width: min(100%, 74ch);
    color: var(--muted);
    text-align: center;
    font-size: 13px;
    padding: 0 clamp(4px, 1.5vw, 12px);
}

.section {
    margin-top: clamp(28px, 5vw, 52px);
    padding: 0 var(--content-rail);
}

.section-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 16px;
}

.section-head h2 {
    margin: 0;
    font-size: 18px;
    font-family: var(--font-display);
    letter-spacing: -0.01em;
    color: var(--ink);
}

.section-head p {
    margin: 0;
    color: var(--muted);
    font-size: 14px;
}

.post-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
    gap: 16px;
}

.post {
    background: var(--panel);
    border-radius: var(--radius);
    padding: 24px;
    border: 1px solid var(--line);
    box-shadow: var(--shadow-soft);
}

.site-footer {
    border-top: 1px solid var(--line);
    background: color-mix(in srgb, var(--bg) 74%, #b2bfce 26%);
    padding: 20px 0;
}

.footer-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px;
    font-size: 14px;
    color: var(--muted);
}

.footer-inner a {
    color: var(--accent);
}

.section--research {
    position: relative;
    margin-top: 44px;
    padding: 0 var(--content-rail);
}

.section--research::before {
    content: "";
    position: absolute;
    inset: -12px 0 auto;
    height: 120px;
    pointer-events: none;
    opacity: 0.5;
    background: radial-gradient(circle at 30% 0%, color-mix(in srgb, var(--accent) 18%, transparent), transparent 60%);
}

.section-head--featured {
    display: grid;
    gap: 10px;
    padding: 18px 18px 16px;
    border-radius: 16px;
    border: 1px solid var(--line);
    background: color-mix(in srgb, var(--panel) 92%, #fff 8%);
    box-shadow: var(--shadow-lean);
    position: relative;
    overflow: hidden;
}

.section-head--featured::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: 0.5;
    background: linear-gradient(120deg, color-mix(in srgb, var(--accent) 12%, transparent), transparent 55%);
}

.section-kicker {
    position: relative;
    z-index: 1;
    width: max-content;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 10px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--accent) 16%, transparent);
    color: var(--accent);
    font-weight: 800;
    font-size: 10px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.post-grid--featured {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
    gap: 18px;
}

.post--entry {
    width: 100%;
    max-width: none;
    padding: clamp(20px, 2.2vw, 34px);
}

.paper-entry {
    line-height: 1.8;
}

.paper-entry .paper-index ol {
    margin: 0;
    padding-left: 1.2rem;
    columns: 2;
    column-gap: 26px;
}

.paper-entry .paper-table-wrap {
    overflow-x: auto;
}

.paper-entry .paper-table {
    width: 100%;
    min-width: 760px;
    border-collapse: collapse;
}

.paper-entry .paper-table th,
.paper-entry .paper-table td {
    border: 1px solid var(--line);
    padding: 10px 12px;
    text-align: left;
    vertical-align: top;
    font-size: 13px;
    line-height: 1.55;
}

/* Neutralize rigid Google Web Designer offsets */
.gwd-main-16zv,
.gwd-div-1nnq,
.gwd-div-181f,
.gwd-div-72e8,
.gwd-header-nysq,
.gwd-div-r8dq,
.gwd-nav-r0h4,
.gwd-div-cv9d,
.gwd-div-1as7,
.gwd-div-mpdt,
.gwd-div-r6hm,
.gwd-span-hoy7 {
    left: auto !important;
    top: auto !important;
    width: auto !important;
    height: auto !important;
    transform: none !important;
}

.gwd-a-37gz,
.gwd-p-lyse,
.gwd-p-182c,
.gwd-p-jgu6 {
    position: static !important;
    left: auto !important;
    top: auto !important;
    width: auto !important;
    height: auto !important;
    transform: none !important;
}

.gwd-span-1lhg {
    width: clamp(96px, 13vw, 170px) !important;
    height: auto !important;
}

.gwd-img-u04u {
    position: static !important;
    left: auto !important;
    top: auto !important;
    width: 100% !important;
    height: auto !important;
    max-height: 170px !important;
    object-fit: contain !important;
}

@media (max-width: 1024px) {
    .hero::before {
        transform: translate(6px, 7px);
    }

    .paper-entry .paper-index ol {
        columns: 1;
    }
}

@media (max-width: 860px) {
    .header-inner {
        flex-direction: column;
        align-items: stretch;
        padding: 12px 0;
    }

    .branding {
        width: 100%;
        justify-content: flex-start;
    }

    .brand-mark,
    .gwd-span-1lhg {
        width: clamp(84px, 28vw, 124px) !important;
    }

    .header-actions {
        width: 100%;
        margin-left: 0;
        justify-content: flex-start;
    }

    .site-nav {
        width: 100%;
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 8px;
    }

    .site-nav a,
    .nav-dropdown > summary {
        width: 100%;
        padding: 8px 10px;
    }

    .nav-dropdown-menu {
        position: static;
        margin-top: 8px;
        min-width: 0;
    }

    .page-main {
        padding: clamp(16px, 4.8vw, 26px) 0 clamp(24px, 7vw, 40px);
    }

    .hero {
        margin: 0;
        border-radius: 16px;
    }

    .section,
    .section--research {
        padding: 0;
    }
}

@media (max-width: 620px) {
    .site-nav {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .brand-text,
    .brand-subtext,
    .site-title,
    .site-tagline {
        text-align: left !important;
        align-items: flex-start !important;
    }

    .post {
        padding: 16px;
        border-radius: 14px;
    }

    .page-panel {
        border-radius: 14px;
    }

    .page-panel--padded {
        padding: 14px;
    }

    .hero {
        padding: 14px;
    }

    .diagram-flow {
        margin-top: 12px;
        padding: 6px;
    }

    .footer-inner {
        font-size: 13px;
    }
}

/* ===== Migrated Inline CSS: index.html ===== */

body.page-home p {
    margin: 0px;
}
body.page-home h1 {
    margin: 0px;
}
body.page-home h2 {
    margin: 0px;
}
body.page-home h3 {
    margin: 0px;
}

body.page-home {
    width: 100%;
    min-height: 100%;
    background-color: transparent;
    transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
    -webkit-transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
    -moz-transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
    perspective: 1400px;
    -webkit-perspective: 1400px;
    -moz-perspective: 1400px;
    transform-style: preserve-3d;
    -webkit-transform-style: preserve-3d;
    -moz-transform-style: preserve-3d;
}
body.page-home * {
    transform-style: preserve-3d;
    -webkit-transform-style: preserve-3d;
    -moz-transform-style: preserve-3d;
}
.gwd-p-lyse {
    left: 0px;
    top: 32px;
    width: 517px;
    height: 23px;
    transform-origin: 258.5px 11.5px 0px;
    -webkit-transform-origin: 258.5px 11.5px 0px;
    -moz-transform-origin: 258.5px 11.5px 0px;
}
.gwd-span-1qvl {
    font-size: 15px;
}
.gwd-main-16zv {
    left: -127px;
    top: -22px;
}
.gwd-div-1nnq {
    left: -54px;
    top: 96px;
}
.gwd-img-14t8 {
    position: absolute;
    transform-origin: 50% 50% 0px;
    -webkit-transform-origin: 50% 50% 0px;
    -moz-transform-origin: 50% 50% 0px;
    left: 6.64%;
    top: 73.78%;
}
.gwd-img-1uvj {
    width: 15.82%;
    height: 148.7%;
}
.gwd-span-1lhg {}
.gwd-div-cv9d {
    left: 0px;
}
.gwd-div-181f {
    left: 0px;
    top: 0px;
}
.gwd-div-72e8 {
    top: 16px;
    left: 0px;
}
.gwd-header-nysq {
    left: 0px;
    top: 0px;
}
.gwd-img-u04u {
    left: 0px;
    top: 14px;
}
.gwd-a-37gz {
    top: 0px;
    left: 0px;
    width: 517px;
    height: 30px;
    transform-origin: 50% 50% 0px;
    -webkit-transform-origin: 50% 50% 0px;
    -moz-transform-origin: 50% 50% 0px;
}
.gwd-div-1as7 {
    top: 38px;
}
.gwd-span-vbz9 {
    font-weight: bold;
}
.gwd-div-mpdt {
    top: -5px;
}
.gwd-span-192s {
    font-weight: normal;
}
.gwd-span-7kdl {
    font-weight: normal;
}

body.page-home #pagedeck {
    overflow: hidden !important;
}
.gwd-div-r8dq {
    left: 334px;
    top: 74px;
}
.gwd-img-u04u {
    top: 0px;
    width: 187px;
    height: 193px;
    transform-origin: 66.781px 84px 0px;
    -webkit-transform-origin: 66.781px 84px 0px;
    -moz-transform-origin: 66.781px 84px 0px;
    left: 0px;
}
.gwd-span-1lhg {
    height: 148px;
    width: 133.57px;
}
.gwd-a-37gz {
    text-align: left;
}
.gwd-p-182c {
    text-align: left;
}
.gwd-p-jgu6 {
    text-align: left;
}
.gwd-nav-r0h4 {
    left: 184px;
    top: 32px;
}
.gwd-header-nysq {
    left: 9px;
}
.gwd-div-itwz {
    top: 1px;
}
.gwd-span-1xnj {
    left: 35px;
    top: -1px;
}
.gwd-span-16cb {
    left: 0px;
    top: 2px;
    width: 24px;
    height: 35px;
    transform-origin: 50% 50% 0px;
    -webkit-transform-origin: 50% 50% 0px;
    -moz-transform-origin: 50% 50% 0px;
}
.gwd-div-1nnq {
    left: -54px;
    border-image-source: none;
    border-image-width: 1;
    border-image-outset: 0;
    border-image-repeat: stretch;
    border-color: rgb(17, 32, 56);
    top: 96px;
}
.gwd-p-n4cu {
    top: 1px;
}
.gwd-div-r6hm {
    width: 1107px;
    height: 106px;
    transform-origin: 50% 50% 0px;
    -webkit-transform-origin: 50% 50% 0px;
    -moz-transform-origin: 50% 50% 0px;
    left: 18px;
    top: 136px;
}
.gwd-a-16ha {
    position: absolute;
    font-family: "Sora, system-ui, sans-serif";
    font-size: 18px;
    font-weight: bold;
    left: 226px;
    top: -786px;
    width: 48px;
    height: 302px;
}
.gwd-span-1khn {
    color: rgb(29, 95, 191);
}
.gwd-span-1jcf {
    left: 55px;
    top: 103px;
}
.gwd-span-qcuq {
    left: 0px;
    top: 1px;
}
.gwd-div-mpdt {
    left: 0px;
    top: -5px;
}
.gwd-img-1nxv {
    left: 8px;
    top: 8px;
}
.gwd-span-hoy7 {
    transform-origin: -10px -64px 0px;
    -webkit-transform-origin: -10px -64px 0px;
    -moz-transform-origin: -10px -64px 0px;
    left: 60px;
    top: -511px;
    min-block-size: 0px;
    min-height: 0px;
    min-inline-size: 0px;
    min-width: 0px;
}
.diagram-caption {
    margin-inline: auto;
    margin-left: auto;
    margin-right: auto;
    max-width: min(100%, 74ch);
    padding-inline: clamp(4px, 1.5vw, 12px);
}
.image-slider {
    position: relative;
    width: min(100%, 1160px);
    margin: 0 auto;
    overflow: hidden;
    border-radius: 16px;
}
.hero-marketing {
    position: relative;
    z-index: 1;
}
.hero.hero-marketing::before,
.hero.hero-marketing::after {
    display: none;
}
.hero.hero-marketing {
    background: linear-gradient(180deg, #f0f4f9 0%, #e8edf4 52%, #e0e7f0 100%);
    border: 1px solid rgba(164, 174, 188, 0.4);
    box-shadow:
        0 0 0 1px rgba(255, 255, 255, 0.66),
        0 0 0 6px rgba(255, 255, 255, 0.34),
        0 14px 34px rgba(22, 31, 45, 0.1),
        var(--shadow-soft);
}
.diagram-flow {
    border: 1px solid var(--line);
    background: color-mix(in srgb, var(--panel) 98%, #fff 2%);
}
.diagram-flow::before {
    display: none;
}
.capture-stack {
    display: grid;
    gap: 34px;
    max-width: 1380px;
    margin: 0 auto;
}
.capture-module {
    display: grid;
    gap: 12px;
    align-items: start;
}

.workflow-bridge {
    display: grid;
    gap: 0;
    justify-items: center;
    padding: 2px 0;
}

.workflow-bridge-figure {
    margin: 0 auto;
    width: min(100%, 900px);
    display: grid;
    justify-items: center;
}

.workflow-bridge-img {
    display: block;
    width: 100%;
    max-width: 900px;
    height: auto;
    margin: 0 auto;
    border-radius: 14px;
    border: 1px solid rgba(214, 222, 233, 0.32);
    opacity: 0.84;
    filter: saturate(0.82) contrast(0.9);
    -webkit-mask-image: linear-gradient(to bottom, transparent 0%, black 18%, black 82%, transparent 100%);
    mask-image: linear-gradient(to bottom, transparent 0%, black 18%, black 82%, transparent 100%);
    box-shadow:
        0 0 0 1px rgba(255, 255, 255, 0.34),
        0 10px 24px rgba(0, 0, 0, 0.14);
}

.capture-module--crypto .image-panel {
    margin-top: 0;
    border: 0;
    background: linear-gradient(180deg, rgba(202, 211, 224, 0.72) 0%, rgba(189, 199, 214, 0.68) 100%);
    box-shadow: 0 10px 22px rgba(20, 30, 44, 0.08);
    border-radius: 14px;
}

.capture-module--crypto {
    --crypto-item-height: 84px;
    --crypto-item-gap: 8px;
    --crypto-panel-padding: 10px;
    --crypto-total-height: calc((var(--crypto-item-height) * 3) + (var(--crypto-item-gap) * 2) + (var(--crypto-panel-padding) * 2));
}

.capture-module--crypto .control-features {
    height: var(--crypto-total-height);
    grid-template-rows: repeat(3, var(--crypto-item-height));
    gap: var(--crypto-item-gap);
    padding: var(--crypto-panel-padding);
    border-color: rgba(160, 171, 188, 0.46);
    background: linear-gradient(180deg, #cfd6e1 0%, #c4ccd9 100%);
}

.capture-module--crypto .feature-item {
    height: var(--crypto-item-height);
    align-content: center;
    align-items: center;
    border-color: rgba(166, 178, 196, 0.5);
    background: #e5ebf3;
}

.capture-module--crypto .feature-item:hover {
    border-color: rgba(150, 163, 182, 0.58);
    background: #edf2f8;
}

.capture-module--crypto .feature-item p {
    color: #25374f;
}

.capture-module--crypto .feature-icon {
    border-color: rgba(165, 177, 197, 0.62);
    color: #2b3f5a;
    background: #eff4fa;
    font-family: var(--font-mono);
    font-weight: 700;
}

.capture-module--crypto .image-slider {
    height: var(--crypto-total-height);
    align-self: stretch;
}

.capture-module--crypto .image-slide {
    height: 100%;
    aspect-ratio: auto;
    overflow: hidden;
}

.capture-module--crypto .image-slide .diagram-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.crypto-slice--backend {
    object-position: 50% 20%;
}

.crypto-slice--control {
    object-position: 0% 20%;
}

.crypto-slice--receptor {
    object-position: 100% 20%;
}

.capture-module--crypto .image-slide .diagram-img.crypto-block-img {
    object-fit: contain;
    object-position: center top;
    background: #e9edf3;
}

.crypto-flow {
    padding: 18px 16px 16px;
    color: #d6deea;
    border-radius: 12px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.03) 0%, rgba(255, 255, 255, 0) 100%);
}

.crypto-columns {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    align-items: stretch;
}

.crypto-stage {
    position: relative;
    border-radius: 12px;
    padding: 12px 10px 10px;
    background: linear-gradient(180deg, rgba(214, 223, 236, 0.12) 0%, rgba(194, 204, 220, 0.09) 100%);
    border: 1px solid rgba(208, 218, 234, 0.2);
    box-shadow: none;
}

.crypto-stage:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 52px;
    right: -15px;
    width: 30px;
    height: 3px;
    border-radius: 999px;
    background: #9fb2d0;
    box-shadow: none;
}

.crypto-stage:not(:last-child)::before {
    content: "";
    position: absolute;
    top: 47px;
    right: -17px;
    width: 0;
    height: 0;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 10px solid #9fb2d0;
}

.crypto-stage h4 {
    margin: 0 0 8px;
    font-family: "Sora", var(--font-display);
    font-size: clamp(20px, 2vw, 32px);
    line-height: 1.05;
    color: #dbe4f1;
}

.crypto-icons {
    display: flex;
    gap: 8px;
    margin-bottom: 10px;
}

.crypto-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 64px;
    min-height: 44px;
    padding: 6px 10px;
    border-radius: 11px;
    border: 1px solid rgba(206, 216, 232, 0.34);
    background: linear-gradient(180deg, rgba(204, 214, 230, 0.18) 0%, rgba(182, 194, 212, 0.16) 100%);
    color: #edf3fc;
    font-family: var(--font-mono);
    font-size: 12px;
    letter-spacing: 0.05em;
    font-weight: 700;
    box-shadow: none;
}

.crypto-stage ul {
    margin: 0;
    padding-left: 22px;
    display: grid;
    gap: 6px;
}

.crypto-stage li {
    color: #d0dbeb;
    font-size: 15px;
    line-height: 1.3;
}

.crypto-stage li::marker {
    color: #b8c8dd;
}

.crypto-lane {
    margin-top: 14px;
    display: grid;
    grid-template-columns: auto 1fr auto 1fr auto;
    align-items: center;
    gap: 12px;
    padding: 8px 10px;
    border-radius: 10px;
    background: rgba(214, 223, 236, 0.08);
}

.crypto-mail {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 42px;
    border-radius: 8px;
    font-size: 24px;
    line-height: 1;
    border: 1px solid transparent;
}

.crypto-mail--blue {
    background: rgba(164, 182, 214, 0.2);
    border-color: rgba(182, 196, 222, 0.48);
}

.crypto-mail--gold {
    background: rgba(186, 196, 214, 0.2);
    border-color: rgba(194, 206, 226, 0.52);
}

.crypto-mail--red {
    background: rgba(174, 186, 206, 0.2);
    border-color: rgba(188, 202, 224, 0.52);
}

.crypto-arrow {
    position: relative;
    height: 4px;
    border-radius: 999px;
}

.crypto-arrow::after {
    content: "";
    position: absolute;
    right: -2px;
    top: -4px;
    width: 0;
    height: 0;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
}

.crypto-arrow--blue {
    background: #9fb2d0;
}

.crypto-arrow--blue::after {
    border-left: 10px solid #9fb2d0;
}

.crypto-arrow--gold {
    background: #b6c4d9;
}

.crypto-arrow--gold::after {
    border-left: 10px solid #b6c4d9;
}

.crypto-reject {
    margin-top: 12px;
    margin-left: auto;
    width: fit-content;
    padding: 8px 12px;
    border-radius: 10px;
    border: 1px solid rgba(206, 218, 236, 0.44);
    background: linear-gradient(180deg, rgba(176, 188, 210, 0.3) 0%, rgba(154, 168, 194, 0.28) 100%);
    color: #eef3fb;
    font-family: "Sora", var(--font-display);
    font-size: clamp(17px, 1.6vw, 34px);
    font-weight: 700;
    line-height: 1.1;
    box-shadow: none;
}

.module-unified {
    display: block;
    padding: 12px;
    border: 0;
    border-radius: 16px;
    background: linear-gradient(180deg, rgba(232, 238, 246, 0.72) 0%, rgba(222, 230, 240, 0.66) 100%);
    backdrop-filter: blur(8px);
    box-shadow:
        0 8px 24px rgba(22, 30, 44, 0.08),
        inset 0 1px 0 rgba(255, 255, 255, 0.38);
}

.module-unified--reverse {
    display: block;
}

.module-unified--single {
    display: block;
}

.module-unified .control-features,
.module-unified .image-panel {
    border-radius: 12px;
}

.image-panel--split {
    display: grid;
    grid-template-columns: minmax(260px, 340px) minmax(0, 1fr);
    gap: 12px;
    align-items: stretch;
}

.image-panel--split-reverse {
    grid-template-columns: minmax(0, 1fr) minmax(260px, 340px);
}

.control-features {
    border: 1px solid color-mix(in srgb, var(--line) 90%, #fff 10%);
    border-radius: 14px;
    background: color-mix(in srgb, var(--panel-2) 8%, #fff 92%);
    padding: 10px;
    display: grid;
    gap: 8px;
}

.feature-item {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 8px;
    align-items: start;
    padding: 8px;
    border: 1px solid color-mix(in srgb, var(--line) 78%, #fff 22%);
    border-radius: 10px;
    background: color-mix(in srgb, var(--panel) 96%, #fff 4%);
    cursor: pointer;
    transition: border-color 120ms ease, background 120ms ease, box-shadow 120ms ease;
}

.feature-item:hover {
    border-color: color-mix(in srgb, var(--accent) 42%, var(--line) 58%);
    background: color-mix(in srgb, var(--accent) 8%, #fff 92%);
}

.feature-item.is-active {
    border: 2px solid #facc15;
    background: color-mix(in srgb, #facc15 10%, #fff 90%);
    box-shadow: 0 0 0 1px rgba(250, 204, 21, 0.24);
}

.feature-item p {
    margin: 0;
    font-size: 13px;
    line-height: 1.45;
    color: #213758;
}

.feature-icon {
    width: 34px;
    height: 34px;
    border-radius: 9px;
    border: 1px solid color-mix(in srgb, var(--accent) 35%, #fff 65%);
    color: var(--accent);
    background: color-mix(in srgb, var(--accent) 10%, #fff 90%);
    display: grid;
    place-items: center;
}

.feature-icon svg {
    width: 18px;
    height: 18px;
    display: block;
}

.capture-module--control .image-panel,
.capture-module--swarm .image-panel {
    margin-top: 0;
    border: 0;
    background: linear-gradient(180deg, rgba(202, 211, 224, 0.72) 0%, rgba(189, 199, 214, 0.68) 100%);
    box-shadow: 0 10px 22px rgba(20, 30, 44, 0.08);
}

.capture-module--control .capture-intro,
.capture-module--swarm .capture-intro,
.capture-module--system .capture-intro {
    padding: 14px 16px;
    border: 0;
    background: linear-gradient(165deg, rgba(234, 240, 248, 0.7) 0%, rgba(223, 231, 241, 0.66) 58%, rgba(213, 223, 236, 0.62) 100%);
    backdrop-filter: blur(8px);
    box-shadow:
        0 8px 20px rgba(20, 30, 44, 0.07),
        inset 0 1px 0 rgba(255, 255, 255, 0.2);
}

.capture-module--control .capture-intro h3,
.capture-module--swarm .capture-intro h3,
.capture-module--system .capture-intro h3 {
    margin: 0 0 8px;
    font-family: "Sora", var(--font-display);
    font-size: clamp(24px, 2.7vw, 36px);
    line-height: 1.04;
    letter-spacing: -0.02em;
    font-weight: 850;
    text-transform: none;
    color: #1a2333;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.65);
}

.capture-module--system .capture-intro h3 {
    font-weight: 400;
}

.capture-module--swarm .capture-intro h3 .swarm-subtitle {
    font-weight: 400;
    font-family: "Sora", var(--font-display);
}

.capture-module--control .capture-intro h3 .control-subtitle {
    font-weight: 400;
    font-family: "Sora", var(--font-display);
}

.capture-module--control .capture-intro p,
.capture-module--swarm .capture-intro p,
.capture-module--system .capture-intro p {
    margin: 0;
    font-size: clamp(14px, 1.05vw, 16px);
    line-height: 1.66;
    color: #5f7188;
    max-width: 94ch;
    letter-spacing: 0.01em;
}

.capture-module--control .image-slider,
.capture-module--swarm .image-slider {
    width: 100%;
    max-width: 720px;
}

.capture-module--swarm {
    --swarm-item-height: 48px;
    --swarm-item-gap: 8px;
    --swarm-panel-padding: 10px;
    --swarm-total-height: calc((var(--swarm-item-height) * 5) + (var(--swarm-item-gap) * 4) + (var(--swarm-panel-padding) * 2));
}

.capture-module--swarm .control-features {
    height: var(--swarm-total-height);
    grid-template-rows: repeat(5, var(--swarm-item-height));
    gap: var(--swarm-item-gap);
    padding: var(--swarm-panel-padding);
}

.capture-module--swarm .feature-item {
    height: var(--swarm-item-height);
    align-content: center;
    align-items: center;
    padding: 4px 8px;
}

.capture-module--swarm .image-slider {
    height: var(--swarm-total-height);
    align-self: stretch;
}

.capture-module--swarm .image-slide {
    height: 100%;
    aspect-ratio: auto;
    overflow: hidden;
}

.capture-module--control .image-slider {
    height: 100%;
    align-self: stretch;
}

.capture-module--control .image-slide {
    height: 100%;
    aspect-ratio: auto;
}

.capture-module--control .control-features {
    height: auto;
    align-self: stretch;
    grid-template-rows: repeat(5, minmax(0, auto));
}

.capture-module--system .image-panel {
    margin-top: 0;
    border-color: transparent;
    background: transparent;
}

.capture-module--system .module-unified {
    padding: 4px 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
}

.capture-module--system .capture-intro {
    text-align: left;
}

.capture-module--system .capture-intro h3 {
    margin-bottom: 6px;
}

.capture-module--system .capture-intro p {
    margin: 0;
    max-width: 78ch;
}

.capture-module--control .image-slide .diagram-img,
.capture-module--swarm .image-slide .diagram-img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    box-sizing: border-box;
    object-fit: contain;
    image-rendering: auto;
    border: 2px solid rgba(198, 207, 220, 0.58);
    box-shadow:
        0 0 0 2px rgba(255, 255, 255, 0.5),
        0 16px 36px rgba(0, 0, 0, 0.2);
}

.capture-module--control .image-slide .diagram-img {
    max-height: 100%;
}

.capture-module--swarm .image-slide .diagram-img {
    width: 100%;
    height: 100%;
    max-height: 100%;
    object-fit: cover;
    object-position: center top;
}

.capture-module--swarm .feature-item p {
    font-size: 12.5px;
    line-height: 1.22;
}

.capture-module--swarm .feature-icon {
    width: 30px;
    height: 30px;
}

.capture-module--control .control-features,
.capture-module--swarm .control-features {
    border-color: rgba(160, 171, 188, 0.46);
    background: linear-gradient(180deg, #cfd6e1 0%, #c4ccd9 100%);
}

.capture-module--control .feature-item,
.capture-module--swarm .feature-item {
    border-color: rgba(166, 178, 196, 0.5);
    background: #e5ebf3;
}

.capture-module--control .feature-item:hover,
.capture-module--swarm .feature-item:hover {
    border-color: rgba(150, 163, 182, 0.58);
    background: #edf2f8;
}

.capture-module--control .feature-item.is-active,
.capture-module--swarm .feature-item.is-active {
    border: 2px solid #facc15;
    background: #e9edf4;
    box-shadow: none;
}

.image-slide.is-active .diagram-img {
    border: 2px solid #facc15;
    box-shadow:
        0 0 0 2px rgba(255, 255, 255, 0.5),
        0 16px 36px rgba(0, 0, 0, 0.2);
}

.capture-module--control .feature-item p,
.capture-module--swarm .feature-item p {
    color: #25374f;
}

.capture-module--control .feature-icon,
.capture-module--swarm .feature-icon {
    border-color: rgba(165, 177, 197, 0.62);
    color: #2b3f5a;
    background: #eff4fa;
}
.capture-intro {
    border: 1px solid color-mix(in srgb, var(--line) 90%, #fff 10%);
    border-radius: 14px;
    background: color-mix(in srgb, var(--panel-2) 10%, #fff 90%);
    padding: 12px 14px;
}
.capture-intro h3 {
    margin: 0 0 6px;
    font-size: 14px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--muted);
}
.capture-intro p {
    margin: 0;
    font-size: 14px;
    line-height: 1.58;
    color: var(--ink);
}
.capture-meta {
    margin-top: 8px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}
.capture-meta span {
    display: block;
    padding: 8px 10px;
    border: 1px dashed var(--line);
    border-radius: 10px;
    background: color-mix(in srgb, var(--panel) 96%, #fff 4%);
    font-family: var(--font-mono);
    font-size: 12px;
    color: var(--muted);
}
.hero-title {
    margin: 10px 0 8px;
    font-family: "Fraunces", serif;
    font-size: clamp(28px, 4vw, 44px);
    line-height: 1.08;
    letter-spacing: -0.01em;
}
.hero-lead {
    margin: 0 0 14px;
    max-width: 960px;
    color: #1f314f;
    font-size: 15px;
}
.image-slide {
    display: none;
    margin: 0;
    width: 100%;
    aspect-ratio: 16 / 10;
}
.image-slide.is-active {
    display: grid;
    place-items: center;
}
.image-slide .diagram-img {
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100%;
    display: block;
    object-fit: contain;
    image-rendering: auto;
    cursor: zoom-in;
    border-radius: 16px;
    border: 2px solid color-mix(in srgb, var(--accent) 55%, #ffffff 45%);
    box-shadow:
        0 0 0 3px color-mix(in srgb, var(--accent) 14%, transparent),
        0 16px 36px rgba(15, 27, 45, 0.16);
}
.image-slide .diagram-caption {
    display: none;
}
.image-slide.has-video {
    position: relative;
}
.image-slide.has-video::after {
    content: "▶ PLAY";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 10px 16px;
    border: 1px solid rgba(255, 255, 255, 0.5);
    border-radius: 999px;
    background: rgba(11, 26, 45, 0.78);
    color: #ffffff;
    font-family: var(--font-display);
    font-size: 14px;
    letter-spacing: 0.04em;
    pointer-events: none;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.28);
}
.slider-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    border: 1px solid rgba(255, 255, 255, 0.35);
    background: rgba(31, 41, 55, 0.82);
    color: #fff;
    width: 40px;
    height: 40px;
    border-radius: 999px;
    cursor: pointer;
    font-size: 24px;
    line-height: 1;
}
.slider-btn:hover {
    background: rgba(31, 41, 55, 0.95);
}
.slider-btn.prev {
    left: 12px;
}
.slider-btn.next {
    right: 12px;
}
.marketing-video {
    margin-top: 18px;
}
.lightbox {
    position: fixed;
    inset: 0;
    display: none;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.82);
    z-index: 9999;
    padding: 24px;
}
.lightbox.is-open {
    display: flex;
}
.lightbox-img,
.lightbox-video {
    max-width: min(98vw, 1800px);
    max-height: 92vh;
    width: auto;
    height: auto;
    object-fit: contain;
    border-radius: 8px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.45);
}
.lightbox-close {
    position: absolute;
    top: 18px;
    right: 18px;
    width: 44px;
    height: 44px;
    border: 1px solid rgba(255, 255, 255, 0.45);
    border-radius: 999px;
    background: rgba(16, 30, 52, 0.78);
    color: #fff;
    font-size: 28px;
    line-height: 1;
    cursor: pointer;
}

.lightbox-close::before {
    content: "\00d7";
}

.gwd-a-37gz,
.gwd-p-lyse,
.gwd-p-182c,
.gwd-p-jgu6,
.gwd-div-1as7 {
    position: static !important;
    top: auto !important;
    left: auto !important;
    width: auto !important;
    height: auto !important;
    transform: none !important;
}
.brand-text {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.brand-subtext {
    display: grid;
    gap: 4px;
}
.site-title {
    line-height: 1.2;
}
.brand-text,
.brand-subtext,
.site-title,
.site-tagline {
    align-items: flex-start;
    text-align: left !important;
}
.pill-tagline {
    color: #7c3aed !important;
    font-weight: 600;
}
.post-grid--featured {
    grid-template-columns: 1fr;
}
.post--entry {
    width: 100%;
    max-width: none;
    padding: clamp(24px, 2.2vw, 34px);
}
.series-title {
    margin-top: 20px;
    margin-bottom: 10px;
    font-weight: 800;
    letter-spacing: -0.01em;
}
.entry-subtitle {
    margin-bottom: 20px;
    color: #273b5d;
    font-style: italic;
}
.post--entry p {
    margin-bottom: 14px;
}
.paper-entry {
    line-height: 1.8;
}
.paper-entry .paper-index {
    margin: 0 0 22px;
    padding: 14px 16px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: color-mix(in srgb, var(--panel-2) 16%, #fff 84%);
}
.paper-entry .paper-index h3 {
    margin: 0 0 8px;
    font-size: 14px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--muted);
}
.paper-entry .paper-index ol {
    margin: 0;
    padding-left: 1.2rem;
    columns: 2;
    column-gap: 26px;
}
.paper-entry .paper-index li {
    margin: 4px 0;
    font-size: 13px;
}
.paper-entry .paper-abstract {
    margin: 6px 0 18px;
    padding: 14px 16px;
    border-left: 3px solid color-mix(in srgb, var(--line) 85%, #fff 15%);
    background: color-mix(in srgb, var(--panel-2) 14%, #fff 86%);
    border-radius: 10px;
}
.paper-entry .paper-section {
    margin-top: 24px;
    padding: 14px 16px 8px;
    border: 1px solid color-mix(in srgb, var(--line) 92%, transparent);
    border-radius: 12px;
    background: color-mix(in srgb, var(--panel) 98%, #fff 2%);
    box-shadow: none;
}
.paper-entry .paper-section h3 {
    margin: 0 0 12px;
    font-size: 18px;
    letter-spacing: -0.01em;
    color: var(--ink);
    display: flex;
    align-items: center;
    gap: 8px;
}
.paper-entry .paper-section h3::before {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--line) 90%, #fff 10%);
    flex: 0 0 8px;
}
.paper-entry .paper-section p {
    text-indent: 1.35em;
}
.paper-entry .paper-section p.no-indent {
    text-indent: 0;
}
.paper-entry .paper-list {
    margin: 8px 0 16px;
    padding-left: 1.4rem;
}
.paper-entry .paper-list li {
    margin: 6px 0;
}
.paper-entry .paper-note {
    margin-top: 10px;
    padding: 10px 12px;
    border: 1px dashed var(--line);
    border-radius: 10px;
    background: color-mix(in srgb, var(--panel-2) 12%, transparent);
    font-family: var(--font-mono);
    font-size: 12px;
    line-height: 1.6;
    white-space: pre-wrap;
}
.paper-entry .paper-pre {
    margin: 12px 0 18px;
    padding: 12px 14px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 10px;
    background: #111b2f;
    font-family: var(--font-mono);
    color: #dce8ff;
    font-size: 12px;
    line-height: 1.68;
    overflow-x: auto;
    white-space: pre;
}
.paper-entry .paper-table-wrap {
    margin-top: 12px;
    overflow-x: auto;
}
.paper-entry .paper-table {
    width: 100%;
    min-width: 760px;
    border-collapse: collapse;
    border: 1px solid var(--line);
    background: color-mix(in srgb, var(--panel) 94%, #fff 6%);
}
.paper-entry .paper-table th,
.paper-entry .paper-table td {
    border: 1px solid var(--line);
    padding: 10px 12px;
    text-align: left;
    vertical-align: top;
    font-size: 13px;
    line-height: 1.55;
}
.paper-entry .paper-table th {
    font-weight: 700;
    background: color-mix(in srgb, var(--panel-2) 20%, #fff 80%);
}
.paper-entry .paper-table tbody tr:nth-child(even) {
    background: color-mix(in srgb, var(--panel-2) 10%, #fff 90%);
}
.paper-entry .paper-table td strong {
    color: var(--ink);
}
.section--research .section-head--featured {
    width: 100%;
}
.section--research .post-grid.post-grid--featured {
    width: 100%;
}

/* Reusable code block system for technical entries */
.post--entry .code-block {
    margin: 20px 0;
    border: 1px solid var(--line);
    border-radius: 14px;
    overflow: hidden;
    box-shadow: var(--shadow-lean);
    background: #0d1628;
}
.post--entry .code-label {
    display: block;
    padding: 8px 12px;
    font-family: var(--font-mono);
    font-size: 12px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #d7e4ff;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.post--entry .code-block pre {
    margin: 0;
    padding: 14px 16px;
    border: 0;
    border-radius: 0;
    background: transparent;
    overflow-x: auto;
}
.post--entry .code-block code {
    font-family: var(--font-mono);
    font-size: 13px;
    line-height: 1.68;
    color: #dbe8ff;
}
.post--entry .code-block.c .code-label {
    background: linear-gradient(90deg, color-mix(in srgb, var(--accent) 45%, #0d1628), #0d1628);
}
.post--entry .code-block.asm .code-label {
    background: linear-gradient(90deg, color-mix(in srgb, var(--accent-2) 40%, #0d1628), #0d1628);
}

/* Optional token helpers for manual syntax coloring */
.post--entry .tok-k { color: #8cc8ff; }   /* keyword */
.post--entry .tok-t { color: #a5d6ff; }   /* type / register */
.post--entry .tok-f { color: #ffd38a; }   /* function / mnemonic */
.post--entry .tok-s { color: #b6efb0; }   /* string / immediate */
.post--entry .tok-c { color: #7f97bb; }   /* comment */
.post--entry .tok-n { color: #e5edff; }   /* normal */
@media (max-width: 960px) {
    .paper-entry .paper-index ol {
        columns: 1;
    }

    .crypto-columns {
        grid-template-columns: 1fr;
    }

    .crypto-stage h4 {
        font-size: clamp(22px, 5.2vw, 30px);
    }

    .crypto-stage:not(:last-child)::after,
    .crypto-stage:not(:last-child)::before {
        display: none;
    }

    .crypto-lane {
        margin-top: 10px;
    }
}
@media (max-width: 760px) {
    .capture-meta {
        grid-template-columns: 1fr;
    }

    .image-panel--split,
    .image-panel--split-reverse {
        grid-template-columns: 1fr;
    }

    .image-slider {
        width: 100%;
    }
    .capture-module--swarm .control-features,
    .capture-module--swarm .image-slider,
    .capture-module--swarm .feature-item {
        height: auto;
    }
    .capture-module--crypto .control-features,
    .capture-module--crypto .image-slider,
    .capture-module--crypto .feature-item {
        height: auto;
    }
    .capture-module--swarm .control-features {
        grid-template-rows: repeat(5, minmax(0, auto));
    }
    .capture-module--crypto .control-features {
        grid-template-rows: repeat(3, minmax(0, auto));
    }
    .image-slide {
        aspect-ratio: 16 / 10;
    }
    .slider-btn {
        width: 34px;
        height: 34px;
        font-size: 21px;
    }
    .slider-btn.prev {
        left: 6px;
    }
    .slider-btn.next {
        right: 6px;
    }
    .lightbox {
        padding: 12px;
    }
    .lightbox-close {
        width: 38px;
        height: 38px;
        top: 10px;
        right: 10px;
        font-size: 24px;
    }
}
@media (min-width: 1101px) and (max-width: 1107px) and (min-height: 47px) and (max-height: 53px) {}
/* ===== Migrated Inline CSS: jellybee-menu.html ===== */


    .map-hero {
      padding: 22px;
      margin-bottom: 0;
    }
    .map-kicker {
      display: inline-block;
      font-size: 11px;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      color: var(--accent);
      font-weight: 800;
      margin-bottom: 8px;
    }
    .map-title {
      margin: 0;
      font-family: var(--font-display);
      font-size: clamp(26px, 3vw, 36px);
      line-height: 1.1;
    }
    .map-sub {
      margin: 10px 0 0;
      color: var(--muted);
      max-width: 74ch;
    }
    .menu-layout {
      display: grid;
      grid-template-columns: minmax(0, 1fr) 300px;
      gap: 34px;
      margin-top: 34px;
      align-items: start;
    }
    .menu-routes {
      position: relative;
      display: grid;
      gap: 0;
      padding-left: 30px;
    }
    .menu-routes::before {
      content: "";
      position: absolute;
      left: 11px;
      top: 8px;
      bottom: 8px;
      border-left: 1px solid color-mix(in srgb, var(--accent) 34%, var(--line) 66%);
    }
    .menu-route {
      position: relative;
      display: grid;
      grid-template-columns: 72px minmax(0, 210px) minmax(0, 1fr);
      gap: 18px;
      align-items: start;
      padding: 18px 0 18px 22px;
      border-bottom: 1px solid color-mix(in srgb, var(--line) 78%, transparent);
      color: var(--ink);
      text-decoration: none;
      transition: color 140ms ease, padding-left 140ms ease;
    }
    .menu-route::before {
      content: "";
      position: absolute;
      left: -34px;
      top: 24px;
      width: 23px;
      border-top: 1px solid color-mix(in srgb, var(--accent) 42%, var(--line) 58%);
    }
    .menu-route::after {
      content: "->";
      position: absolute;
      right: 0;
      top: 18px;
      color: color-mix(in srgb, var(--muted) 72%, transparent);
      font-family: var(--font-mono);
      font-size: 12px;
    }
    .menu-route:hover,
    .menu-route:focus-visible {
      color: var(--accent);
      padding-left: 30px;
      outline: none;
    }
    .menu-route--primary {
      border-top: 1px solid color-mix(in srgb, var(--line) 78%, transparent);
    }
    .route-index {
      color: color-mix(in srgb, var(--accent) 82%, #111827 18%);
      font-family: var(--font-mono);
      font-size: 18px;
      font-weight: 800;
      line-height: 1;
    }
    .route-label {
      color: var(--accent);
      font-size: 11px;
      font-weight: 800;
      letter-spacing: 0.1em;
      text-transform: uppercase;
    }
    .menu-route strong {
      font-family: var(--font-display);
      font-size: 18px;
      line-height: 1.2;
      letter-spacing: 0;
      color: var(--ink);
    }
    .menu-route span:last-child {
      color: var(--muted);
      font-size: 13px;
      line-height: 1.5;
    }
    .menu-status {
      padding: 6px 0 0 18px;
      border-left: 1px solid color-mix(in srgb, var(--line) 82%, transparent);
      background: transparent;
    }
    .status-title {
      margin: 0 0 8px;
      color: var(--accent);
      font-size: 11px;
      font-weight: 800;
      letter-spacing: 0.1em;
      text-transform: uppercase;
    }
    .menu-status p:not(.status-title) {
      margin: 0 0 14px;
      color: var(--ink);
      line-height: 1.55;
    }
    .menu-status dl {
      display: grid;
      gap: 8px;
      margin: 0;
    }
    .menu-status dl div {
      display: grid;
      grid-template-columns: 70px 1fr;
      gap: 8px;
      padding-top: 8px;
      border-top: 1px dashed color-mix(in srgb, var(--line) 72%, transparent);
    }
    .menu-status dt,
    .menu-status dd {
      margin: 0;
      font-size: 13px;
      line-height: 1.4;
    }
    .menu-status dt {
      color: var(--muted);
    }
    .menu-status dd {
      color: var(--ink);
      font-weight: 700;
    }
    .system-infra-figure {
      margin: 24px 0 0;
    }
    .system-infra-figure img {
      display: block;
      width: min(100%, 1180px);
      height: auto;
      margin: 0 auto;
      border: 1px solid var(--line);
      border-radius: 12px;
    }
    .tree-shell {
      overflow-x: auto;
      padding: 18px;
    }
    .tree {
      min-width: 980px;
      font-size: 14px;
    }
    .tree ul {
      margin: 0;
      padding-left: 32px;
      position: relative;
      list-style: none;
    }
    .tree ul::before {
      content: "";
      position: absolute;
      left: 13px;
      top: 0;
      bottom: 0;
      border-left: 1px solid color-mix(in srgb, var(--line) 92%, transparent);
    }
    .tree li {
      margin: 9px 0;
      position: relative;
      padding-left: 16px;
    }
    .tree li::before {
      content: "";
      position: absolute;
      left: -19px;
      top: 14px;
      width: 19px;
      border-top: 1px solid color-mix(in srgb, var(--line) 92%, transparent);
    }
    .tree > ul {
      padding-left: 0;
    }
    .tree > ul::before {
      display: none;
    }
    .tree > ul > li::before {
      display: none;
    }
    .tree-node {
      display: inline-flex;
      align-items: center;
      gap: 7px;
      padding: 5px 9px;
      border: 1px solid var(--line);
      border-radius: 8px;
      background: color-mix(in srgb, var(--panel-2) 10%, transparent);
      color: var(--ink);
      font-weight: 700;
      white-space: nowrap;
      line-height: 1.25;
    }
    .tree-branch > summary.tree-node {
      border-style: dashed;
      color: #34445f;
      background: color-mix(in srgb, var(--panel-2) 8%, #fff 92%);
    }
    .tree-branch {
      display: block;
    }
    .tree-branch > summary {
      list-style: none;
      cursor: pointer;
      width: max-content;
    }
    .tree-branch > summary::-webkit-details-marker {
      display: none;
    }
    .tree-branch > summary .tree-toggle {
      width: 16px;
      height: 16px;
      border: 1px solid var(--line);
      border-radius: 4px;
      display: inline-grid;
      place-items: center;
      font-family: var(--font-mono);
      font-size: 12px;
      color: var(--muted);
      background: color-mix(in srgb, var(--panel) 98%, #fff 2%);
      line-height: 1;
    }
    .tree-branch > summary .tree-toggle::before {
      content: "+";
    }
    .tree-branch[open] > summary .tree-toggle::before {
      content: "-";
    }
    .tree-leaf {
      display: block;
    }
    .leaf-link {
      display: inline-flex;
      align-items: baseline;
      gap: 7px;
      padding: 6px 10px;
      border: 1px solid color-mix(in srgb, var(--accent) 28%, var(--line) 72%);
      border-radius: 8px;
      background: color-mix(in srgb, var(--accent) 6%, #fff 94%);
      color: var(--ink);
      text-decoration: none;
      white-space: nowrap;
      width: max-content;
    }
    .leaf-link:hover {
      border-color: color-mix(in srgb, var(--accent) 46%, var(--line) 54%);
      background: color-mix(in srgb, var(--accent) 10%, #fff 90%);
    }
    .leaf-date,
    .leaf-read {
      font-size: 12px;
      color: var(--muted);
      font-weight: 500;
    }
    .leaf-title {
      font-weight: 800;
      color: var(--ink);
    }
    .leaf-part {
      font-style: italic;
      font-weight: 400;
    }
    .leaf-kind {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 2px 7px;
      border-radius: 999px;
      border: 1px solid var(--line);
      font-size: 11px;
      font-weight: 700;
      line-height: 1.2;
      text-transform: lowercase;
      letter-spacing: 0.01em;
    }
    .leaf-kind.article {
      border-color: color-mix(in srgb, var(--accent) 42%, var(--line) 58%);
      color: #1c4f9b;
      background: color-mix(in srgb, var(--accent) 8%, #fff 92%);
    }
    .leaf-kind.schema {
      border-color: color-mix(in srgb, #0891b2 36%, var(--line) 64%);
      color: #0e6172;
      background: color-mix(in srgb, #0891b2 8%, #fff 92%);
    }
    .pill-tagline {
      color: #7c3aed !important;
      font-weight: 600;
    }
    @media (max-width: 980px) {
      .menu-layout {
        grid-template-columns: 1fr;
        gap: 24px;
      }
      .menu-route {
        grid-template-columns: 56px minmax(0, 1fr);
      }
      .menu-route span:last-child {
        grid-column: 2;
      }
      .tree-shell {
        padding: 14px;
      }
      .tree {
        min-width: 0;
      }
      .tree ul {
        padding-left: 22px;
      }
      .tree li {
        padding-left: 12px;
      }
      .tree li::before {
        left: -15px;
        width: 14px;
      }
      .tree-node {
        white-space: normal;
      }
      .leaf-link {
        display: grid;
        grid-template-columns: auto 1fr auto;
        gap: 6px 8px;
        width: 100%;
        max-width: 100%;
        white-space: normal;
        align-items: start;
      }
      .leaf-title {
        grid-column: 1 / -1;
      }
      .leaf-read {
        justify-self: end;
      }
    }
    @media (max-width: 620px) {
      .map-hero,
      .tree-shell {
        margin: 0 0 12px;
      }
      .map-hero {
        padding: 16px;
      }
      .menu-layout {
        margin-top: 18px;
        gap: 18px;
      }
      .menu-route {
        grid-template-columns: 44px 1fr;
        gap: 7px 12px;
        padding: 15px 0 15px 14px;
      }
      .route-index {
        grid-row: span 3;
        font-size: 16px;
      }
      .menu-status {
        padding: 0 0 0 14px;
      }
      .tree-shell {
        padding: 12px;
        overflow-x: visible;
      }
      .tree ul {
        padding-left: 16px;
      }
      .tree-node {
        font-size: 13px;
      }
      .leaf-date,
      .leaf-read {
        font-size: 11px;
      }
    }
  
/* ===== Shared Page CSS: root pages ===== */

.site-header {
    --header-logo-width: 260px;
    --header-item-gap: clamp(18px, 2.4vw, 34px);
}

.header-inner {
    min-height: 360px;
    padding: 14px 0;
}

.branding {
    display: grid;
    grid-template-columns: var(--header-logo-width) minmax(300px, 1fr) auto;
    gap: var(--header-item-gap);
    align-items: center;
    width: 100%;
}

.brand-mark,
.gwd-span-1lhg {
    width: var(--header-logo-width) !important;
    height: auto !important;
}

.brand-logo,
.gwd-img-u04u {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: left center !important;
}

.brand-text {
    min-width: 0;
    gap: 7px;
}

.site-title {
    font-size: clamp(26px, 2.4vw, 35px);
    font-weight: 900;
    line-height: 1;
}

.pill-tagline {
    font-size: clamp(18px, 1.08vw, 22px);
    font-weight: 900;
}

.site-tagline {
    font-size: clamp(14px, 0.87vw, 16px);
    line-height: 1.35;
    font-weight: 650;
}

.header-actions {
    justify-self: end;
    margin-left: 0;
    padding: 8px 10px;
    border-radius: 14px;
}

.site-nav {
    gap: 10px;
}

.site-nav a {
    min-height: 44px;
    padding: 10px 16px;
    border-radius: 10px;
    font-size: clamp(15px, 1.1vw, 17px);
    font-weight: 850;
}

@media (max-width: 860px) {
    .site-header {
        --header-logo-width: clamp(170px, 42vw, 260px);
    }

    .header-inner {
        min-height: auto;
        padding: 12px 0;
    }

    .branding {
        grid-template-columns: var(--header-logo-width) minmax(0, 1fr);
        gap: 12px var(--header-item-gap);
    }

    .header-actions {
        grid-column: 1 / -1;
        width: 100%;
        justify-self: stretch;
    }

    .site-nav {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .site-title {
        font-size: clamp(18px, 4.8vw, 25px);
    }

    .pill-tagline {
        font-size: clamp(10px, 2.6vw, 13px);
    }

    .site-tagline {
        font-size: clamp(9px, 2.2vw, 11px);
    }
}

.gwd-main-47p8 {
    top: 198px;
}

.capture-module--swarm .blog-swarm-slide .blog-swarm-video {
    display: block;
    width: min(100%, 1280px);
    height: auto;
    max-height: none;
    margin: 0 auto;
    border: 2px solid #ffd400;
    object-fit: contain;
    object-position: center;
}

.blog-swarm-panel,
.krberos-panel {
    display: block;
}

.capture-module--swarm .blog-swarm-slider {
    height: auto;
    max-width: 1280px;
    margin: 0 auto;
}

.capture-module--swarm .blog-swarm-slide {
    height: auto;
    aspect-ratio: auto;
    overflow: visible;
}

.capture-module--swarm .blog-swarm-slide::after {
    display: none;
}

.capture-module--control .krberos-slider {
    height: auto;
    max-width: 1440px;
    margin: 0 auto;
}

.capture-module--control .krberos-slide {
    height: auto;
    aspect-ratio: auto;
    overflow: visible;
}

.capture-module--control .krberos-slide .krberos-img {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: none;
    margin: 0 auto;
    object-fit: contain;
    object-position: center;
    border: 1px solid rgba(198, 207, 220, 0.58);
}

.contact-page {
    letter-spacing: 0;
}

.contact-shell {
    display: grid;
    gap: 22px;
    padding: clamp(22px, 4vw, 52px);
}

.contact-head {
    display: flex;
    gap: clamp(16px, 3vw, 28px);
    align-items: center;
}

.contact-title {
    display: grid;
    gap: 12px;
    align-content: center;
}

.contact-photo {
    margin: 0;
    flex: 0 0 auto;
    width: clamp(132px, 18vw, 220px);
}

.contact-photo img {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: contain;
    border: 1px solid var(--line);
    border-radius: 50%;
    background: #050505;
    box-shadow: var(--shadow-soft);
}

.contact-copy {
    display: grid;
    gap: 14px;
}

.contact-head h1 {
    margin: 0;
    color: var(--ink);
    font-family: var(--font-display);
    font-size: clamp(20px, 2.2vw, 28px);
    line-height: 1.12;
    letter-spacing: 0;
}

.contact-copy p {
    margin: 0;
    max-width: 78ch;
    color: var(--muted);
    font-size: clamp(14px, 1.2vw, 16px);
    line-height: 1.65;
}

.contact-socials {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}

.contact-social {
    display: inline-grid;
    place-items: center;
    width: 36px;
    height: 36px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    color: var(--ink);
    box-shadow: var(--shadow-lean);
    transition: color 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
}

.contact-social:hover,
.contact-social:focus-visible {
    border-color: color-mix(in srgb, var(--accent) 42%, var(--line) 58%);
    color: var(--accent);
    text-decoration: none;
    transform: translateY(-1px);
}

.contact-social svg {
    display: block;
    width: 19px;
    height: 19px;
}

.contact-sign {
    margin-top: 8px;
    padding-left: 14px;
    border-left: 3px solid #fbbf24;
    color: var(--ink);
    font-weight: 400;
}

.page-menu .page-main > .wrap {
    max-width: 1880px;
}

.system-map-hero {
    padding: clamp(18px, 2.8vw, 34px) clamp(24px, 5vw, 72px);
}

.system-map-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 820px);
    gap: 18px;
    align-items: start;
    width: 100%;
    max-width: none;
}

.system-map-lab-notes {
    --system-map-lab-line: #0ea5e9;
    display: grid;
    gap: 10px;
    width: min(100%, 820px);
    justify-self: end;
    margin-top: 0;
    padding: 16px 18px;
    border: 2px dotted color-mix(in srgb, var(--system-map-lab-line) 66%, transparent);
    border-radius: 14px;
    background: transparent;
}

.system-map-lab-notes:not([open]) {
    gap: 0;
}

.system-map-lab-summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    cursor: pointer;
    list-style: none;
}

.system-map-lab-summary::-webkit-details-marker {
    display: none;
}

.system-map-lab-title-row {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

.system-map-lab-icon {
    display: block;
    flex: 0 0 auto;
    width: 246x;
    height: 26px;
    object-fit: contain;
}

.system-map-lab-title {
    color: var(--ink);
    font-family: var(--font-display);
    font-size: 15px;
    font-weight: 800;
    line-height: 1.25;
}

.system-map-lab-toggle {
    display: inline-grid;
    place-items: center;
    flex: 0 0 auto;
    width: 26px;
    height: 26px;
    border: 1px solid color-mix(in srgb, var(--system-map-lab-line) 70%, var(--line) 30%);
    border-radius: 999px;
    color: var(--system-map-lab-line);
    font-family: var(--font-mono);
    font-size: 16px;
    font-weight: 800;
    line-height: 1;
}

.system-map-lab-toggle::before {
    content: "-";
}

.system-map-lab-notes:not([open]) .system-map-lab-toggle::before {
    content: "+";
}

.system-map-lab-list {
    display: grid;
    gap: 7px;
    margin: 0;
    padding: 0;
    list-style: none;
    color: #4c5769;
    font-size: 14px;
    line-height: 1.45;
}

.system-map-lab-list li {
    position: relative;
    padding-left: 18px;
}

.system-map-lab-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.68em;
    width: 7px;
    height: 7px;
    border: 2px solid var(--system-map-lab-line, #0ea5e9);
    border-radius: 999px;
    background: var(--panel);
}

.system-map {
    --system-map-line: #b7791f;
    display: grid;
    gap: 0;
    width: 100%;
    max-width: 1540px;
    margin: clamp(26px, 4vw, 46px) auto 0;
}

.system-map-entry {
    --system-map-lane-offset: 0px;
    display: grid;
    grid-template-columns: minmax(220px, 0.62fr) 56px minmax(0, 2.1fr);
    gap: clamp(14px, 2.4vw, 30px);
    align-items: center;
    min-height: clamp(164px, 18vw, 238px);
}

.system-map-entry--lane-left {
    --system-map-lane-offset: -18px;
}

.system-map-entry--lane-right {
    --system-map-lane-offset: 18px;
}

.system-map-entry--series-note {
    min-height: clamp(138px, 15vw, 190px);
}

.system-map-left {
    display: grid;
    gap: 6px;
    justify-items: end;
    text-align: right;
}

.system-map-icons {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 8px;
}

.system-map-left .system-map-icons {
    justify-content: flex-end;
}

.system-map-icon {
    position: relative;
    overflow: hidden;
    display: inline-grid;
    place-items: center;
    width: 36px;
    height: 36px;
    border: 1px solid color-mix(in srgb, var(--line) 72%, transparent);
    border-radius: 10px;
    background: #f8fafc;
    box-shadow: 0 8px 18px rgba(16, 23, 33, 0.09);
}

.system-map-icon::before {
    content: "";
    position: absolute;
    inset: 1px;
    border-radius: 8px;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.72), transparent 58%);
    pointer-events: none;
}

.system-map-icon img {
    position: relative;
    z-index: 1;
    display: block;
    width: 24px;
    height: 24px;
    border-radius: 6px;
    object-fit: contain;
}

.system-map-left-meta {
    display: grid;
    gap: 5px;
    justify-items: end;
    max-width: 300px;
}

.system-map-left-series {
    color: var(--accent);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.12em;
    line-height: 1.3;
    text-transform: uppercase;
}

.system-map-left-date {
    color: #64748b;
    font-family: var(--font-mono);
    font-size: 12px;
    font-weight: 650;
    line-height: 1.35;
}

.system-map-axis {
    position: relative;
    align-self: stretch;
    display: grid;
    place-items: center;
    transform: translateX(var(--system-map-lane-offset));
}

.system-map-axis::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: calc(50% - 2px);
    width: 4px;
    border-radius: 999px;
    background: linear-gradient(180deg, #8a5a00 0%, #d29d22 38%, var(--system-map-line) 100%);
    box-shadow:
        0 0 0 3px color-mix(in srgb, var(--system-map-line) 10%, transparent),
        0 0 18px rgba(183, 121, 31, 0.28);
}

.system-map-entry--series-single .system-map-axis::before {
    top: 50%;
    bottom: 50%;
}

.system-map-entry--series-start .system-map-axis::before {
    top: 50%;
}

.system-map-entry--series-end .system-map-axis::before {
    bottom: 50%;
}

.system-map-dot {
    position: relative;
    z-index: 1;
    width: 22px;
    height: 22px;
    border: 4px solid var(--system-map-line);
    border-radius: 999px;
    background: var(--panel);
    box-shadow:
        0 0 0 7px color-mix(in srgb, var(--system-map-line) 13%, transparent),
        0 0 22px rgba(183, 121, 31, 0.2);
}

.system-map-dot::before {
    content: "";
    position: absolute;
    inset: 4px;
    border-radius: inherit;
    background: color-mix(in srgb, var(--system-map-line) 70%, #fff 30%);
    opacity: 0.9;
}

.system-map-entry--series-end .system-map-dot::after {
    content: "";
    position: absolute;
    left: 50%;
    top: calc(100% + 8px);
    width: 11px;
    height: 11px;
    border-right: 3px solid var(--system-map-line);
    border-bottom: 3px solid var(--system-map-line);
    filter: drop-shadow(0 0 8px rgba(183, 121, 31, 0.34));
    transform: translateX(-50%) rotate(45deg);
}

.system-map-entry--series-bridge .system-map-dot::after {
    content: "";
    position: absolute;
    top: calc(100% + 2px);
    left: -49px;
    width: 88px;
    height: 146px;
    border: 0;
    border-radius: 0;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 88 146'%3E%3Cpath d='M60 2 C60 34 52 54 42 68 C32 84 25 104 24 138' fill='none' stroke='%23b7791f' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
    filter: drop-shadow(0 0 8px rgba(183, 121, 31, 0.28));
    pointer-events: none;
    transform: none;
    transform-origin: center;
}

.system-map-right {
    display: grid;
    gap: 8px;
    min-width: 0;
    max-width: none;
    padding: 18px 0;
}

.system-map-title-row {
    display: block;
}

.system-map-title {
    margin: 0;
    font-family: var(--font-display);
    font-size: clamp(20px, 2.2vw, 30px);
    line-height: 1.12;
    letter-spacing: 0;
}

.system-map-desc {
    margin: 8px 0 0;
    max-width: 78ch;
    color: var(--muted);
    font-size: clamp(13px, 1.02vw, 15px);
    line-height: 1.55;
}

.system-map-desc code {
    font-family: var(--font-mono);
    font-size: 0.92em;
}

.system-map-title a {
    color: var(--ink);
    font-weight: 800;
    text-decoration-line: underline;
    text-decoration-thickness: 0.06em;
    text-decoration-color: color-mix(in srgb, var(--system-map-line) 72%, transparent);
    text-underline-offset: 0.16em;
}

.system-map-title a::after {
    content: "";
    display: inline-block;
    width: 0.46em;
    height: 0.46em;
    margin-left: 0.36em;
    border-top: 3px solid var(--system-map-line);
    border-right: 3px solid var(--system-map-line);
    vertical-align: 0.12em;
    transform: rotate(45deg);
}

.system-map-entry--series-note .system-map-title {
    max-width: 66ch;
    color: #64748b;
    font-size: clamp(15px, 1.25vw, 18px);
    font-weight: 400;
    line-height: 1.28;
}

.system-map-entry--series-note .system-map-desc {
    max-width: 62ch;
    font-size: clamp(12px, 0.95vw, 14px);
}

.system-map-entry--series-note .system-map-dot {
    width: 18px;
    height: 18px;
    border-width: 3px;
}

.system-map-entry--series-note .system-map-right {
    grid-template-columns: 36px minmax(0, 1fr);
    column-gap: 14px;
    align-items: center;
}

.system-map-note-icon {
    display: block;
    width: 28px;
    height: 28px;
    object-fit: contain;
}

.system-map-title-tail {
    font-weight: 500;
    white-space: nowrap;
}

.system-map-entry--latest .system-map-title a {
    text-decoration-line: underline line-through;
    text-decoration-thickness: 0.08em;
    text-decoration-color: #dc2626;
    text-decoration-skip-ink: none;
}

.system-map-title a:hover,
.system-map-title a:focus-visible {
    color: var(--accent);
    text-decoration-line: underline;
    text-decoration-color: color-mix(in srgb, var(--accent) 72%, transparent);
    outline: none;
}

.system-map-entry--latest .system-map-title a:hover,
.system-map-entry--latest .system-map-title a:focus-visible {
    text-decoration-line: underline line-through;
    text-decoration-thickness: 0.08em;
    text-decoration-color: #dc2626;
}

.system-map-sublogs {
    position: relative;
    display: grid;
    gap: 10px;
    margin-top: 14px;
    padding: 12px 0 0 28px;
}

.system-map-sublogs::before {
    content: "";
    position: absolute;
    left: 9px;
    top: -6px;
    bottom: 12px;
    border-left: 2px dashed color-mix(in srgb, var(--system-map-line, #b7791f) 48%, transparent);
}

.system-map-sublogs::after {
    content: "";
    position: absolute;
    z-index: 0;
    left: -56px;
    right: 0;
    top: 38px;
    border-top: 2px dashed color-mix(in srgb, var(--system-map-line, #b7791f) 58%, transparent);
}

.system-map-sublog {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 5px;
    width: min(100%, 720px);
    max-width: 720px;
    padding: 11px 13px;
    border: 1px solid color-mix(in srgb, var(--system-map-line, #b7791f) 18%, var(--line) 82%);
    border-radius: 10px;
    background: color-mix(in srgb, var(--system-map-line, #b7791f) 5%, var(--panel) 95%);
    color: var(--ink);
    text-decoration: none;
}

.system-map-sublog::before {
    content: "";
    position: absolute;
    left: -19px;
    top: 25px;
    width: 18px;
    border-top: 2px dashed color-mix(in srgb, var(--system-map-line, #b7791f) 48%, transparent);
}

.system-map-sublog::after {
    content: "";
    position: absolute;
    left: -24px;
    top: 21px;
    width: 8px;
    height: 8px;
    border: 2px solid color-mix(in srgb, var(--system-map-line, #b7791f) 72%, transparent);
    border-radius: 999px;
    background: var(--panel);
}

.system-map-sublog:hover,
.system-map-sublog:focus-visible {
    border-color: color-mix(in srgb, var(--system-map-line, #b7791f) 36%, var(--line) 64%);
    color: var(--accent);
    text-decoration: none;
    outline: none;
}

.system-map-sublog-title {
    font-family: var(--font-display);
    font-size: 15px;
    font-weight: 800;
    line-height: 1.25;
}

.system-map-sublog-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    color: var(--muted);
    font-family: var(--font-mono);
    font-size: 11px;
    line-height: 1.35;
}

@media (max-width: 780px) {
    .system-map-head {
        grid-template-columns: 1fr;
    }

    .system-map-lab-notes {
        justify-self: stretch;
        width: 100%;
    }

    .system-map-entry {
        grid-template-columns: 34px minmax(0, 1fr);
        gap: 0 18px;
        align-items: start;
        min-height: auto;
        padding: 32px 0;
    }

    .system-map-entry--lane-left,
    .system-map-entry--lane-right {
        --system-map-lane-offset: 0px;
    }

    .system-map-entry--series-bridge .system-map-dot::after {
        display: none;
    }

    .system-map-axis {
        grid-column: 1;
        grid-row: 1 / span 2;
    }

    .system-map-left,
    .system-map-right {
        grid-column: 2;
    }

    .system-map-left {
        justify-items: start;
        text-align: left;
    }

    .system-map-left .system-map-icons {
        justify-content: flex-start;
    }

    .system-map-left-meta {
        justify-items: start;
    }

    .system-map-right {
        max-width: none;
        padding: 14px 0 0;
    }

    .system-map-entry--series-note .system-map-right {
        grid-template-columns: 30px minmax(0, 1fr);
        column-gap: 10px;
    }

    .system-map-note-icon {
        width: 26px;
        height: 26px;
    }

    .system-map-sublogs {
        padding-left: 24px;
    }

    .system-map-sublogs::after {
        left: 9px;
    }
}

@media (max-width: 760px) {
    .contact-shell {
        padding: 18px;
    }

    .contact-head {
        align-items: flex-start;
    }

    .contact-photo {
        width: min(170px, 52vw);
    }
}

@media (max-width: 520px) {
    .system-map-hero {
        padding: 16px;
    }

    .system-map-title {
        font-size: 20px;
    }

    .system-map-left-series {
        font-size: 11px;
    }
}


/* ===== Migrated Inline CSS: blogs/jellybeesystem-internals/compilator-internals/Abstractions,%20Aspects,%20and%20PIC%20Modularity%20The%20Compiler%20Subversion/index.html ===== */

    body.page-blog-picpill .paper-card { padding: clamp(22px, 2.2vw, 34px); }
    body.page-blog-picpill .paper-kicker { display: inline-block; margin-bottom: 8px; font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--accent); font-weight: 800; }
    body.page-blog-picpill .paper-title { margin: 0; font-size: clamp(28px, 3.5vw, 42px); font-family: var(--font-display); line-height: 1.08; letter-spacing: -0.02em; }
    body.page-blog-picpill .paper-subtitle { margin: 10px 0 18px; font-style: italic; color: var(--muted); font-size: 16px; }
    body.page-blog-picpill .paper-section { margin-top: 22px; padding-top: 14px; border-top: 1px dashed var(--line); }
    body.page-blog-picpill .paper-section--jmp-box {
      position: relative;
      margin-top: 26px;
      padding: 14px 16px 12px;
      border: 2px dashed #f97316;
      border-radius: 12px;
      background: transparent;
    }
    body.page-blog-picpill .paper-section--salto-jmp .mini-jmp-linkbox {
      position: relative;
      display: inline-flex;
      align-items: center;
      gap: 6px;
      width: fit-content;
      margin: 8px 0 14px auto;
      padding: 4px 8px;
      border: 1px dashed #f97316;
      border-radius: 8px;
      background: transparent;
    }
    body.page-blog-picpill .paper-section--salto-jmp .mini-jmp-linkbox-sticker {
      position: static;
      width: 12px;
      height: 12px;
      object-fit: contain;
      pointer-events: none;
    }
    body.page-blog-picpill .paper-section--salto-jmp .mini-jmp-linkbox-title {
      display: inline-block;
      color: #7c3aed;
      text-decoration: none;
      font-family: var(--font-sans);
      font-size: 13px;
      line-height: 1.2;
      letter-spacing: 0;
      font-weight: 400;
    }
    body.page-blog-picpill .paper-section--salto-jmp .mini-jmp-linkbox-title:hover,
    body.page-blog-picpill .paper-section--salto-jmp .mini-jmp-linkbox-title:focus-visible {
      color: #6d28d9;
      text-decoration: underline;
      text-decoration-color: #f97316;
      text-decoration-thickness: 1px;
      text-underline-offset: 2px;
    }
    body.page-blog-picpill .jmp-box-sticker {
      position: absolute;
      top: 10px;
      right: 10px;
      width: 24px;
      height: 24px;
      object-fit: contain;
      z-index: 2;
      pointer-events: none;
    }
    body.page-blog-picpill .jmp-box-sticker-left {
      left: 10px;
      right: auto;
      top: -8px;
    }
    body.page-blog-picpill .paper-section h2 { margin: 0 0 10px; font-size: 20px; letter-spacing: -0.01em; }
    body.page-blog-picpill .paper-section p { margin: 0 0 12px; line-height: 1.8; }
    body.page-blog-picpill .paper-list { margin: 0 0 12px; padding-left: 1.2rem; list-style: disc; }
    body.page-blog-picpill .paper-list li { margin: 6px 0; line-height: 1.7; }
    body.page-blog-picpill .paper-steps { margin: 0 0 12px; padding-left: 1.2rem; }
    body.page-blog-picpill .paper-steps li { margin: 6px 0; line-height: 1.7; }
    body.page-blog-picpill .paper-steps--indented { margin-left: 18px; padding-left: 1.35rem; }
    body.page-blog-picpill .json-build-tree { margin: 12px 0 16px; padding: 14px; border: 1px solid var(--line); border-radius: 10px; background: var(--panel); font-size: 13px; line-height: 1.6; overflow-x: auto; }
    body.page-blog-picpill .json-build-tree ul { margin: 0; padding-left: 22px; list-style: none; position: relative; }
    body.page-blog-picpill .json-build-tree > ul { padding-left: 0; }
    body.page-blog-picpill .json-build-tree ul ul::before { content: ""; position: absolute; left: 7px; top: 0; bottom: 0; border-left: 1px solid var(--line); }
    body.page-blog-picpill .json-build-tree li { margin: 4px 0; padding-left: 18px; position: relative; min-width: max-content; }
    body.page-blog-picpill .json-build-tree li::before { content: ""; position: absolute; left: 0; top: 0.85em; width: 12px; border-top: 1px solid var(--line); }
    body.page-blog-picpill .json-build-tree > ul > li { padding-left: 0; }
    body.page-blog-picpill .json-build-tree > ul > li::before { display: none; }
    body.page-blog-picpill .json-build-tree code,
    body.page-blog-picpill .json-build-tree .json-dir { font-family: var(--font-mono); font-weight: 700; color: var(--ink); }
    body.page-blog-picpill .json-build-tree em { color: var(--muted); font-style: italic; }
    body.page-blog-picpill .code-file-caption { max-width: calc(100% - 10px); display: inline-flex; flex-wrap: wrap; align-items: center; gap: 5px; margin: 10px 0 5px 10px; padding: 0; color: #63307b; font-family: var(--font-display); font-size: clamp(8px, 0.9vw, 12px); line-height: 1; font-weight: 500; letter-spacing: 0; }
    body.page-blog-picpill .code-file-icon { position: relative; width: 15px; height: 18px; display: inline-grid; place-items: center; flex: 0 0 auto; border-radius: 4px; border: 1px solid #63307b; background: #feda00; box-shadow: 0 1px 0 rgba(15, 27, 45, 0.14); color: #63307b; font-family: var(--font-mono); font-size: 6px; font-weight: 800; overflow: hidden; }
    body.page-blog-picpill .code-file-icon::after { content: ""; position: absolute; top: 0; right: 0; width: 6px; height: 6px; border-left: 1px solid #63307b; border-bottom: 1px solid #63307b; background: #63307b; clip-path: polygon(0 0, 100% 100%, 100% 0); }
    body.page-blog-picpill .code-file-icon span { position: relative; z-index: 1; transform: translateY(1px); }
    body.page-blog-picpill .code-file-name { overflow-wrap: anywhere; }
    body.page-blog-picpill .code-file-name strong { color: var(--ink); font-weight: 900; }
    body.page-blog-picpill .code-file-caption + .paper-pre { margin-top: 0; }
    body.page-blog-picpill .paper-pre { margin: 10px 0 14px; padding: 12px 14px; border: 1px solid var(--line); border-radius: 10px; background: var(--panel); color: var(--ink); font-family: var(--font-mono); font-size: 12px; line-height: 1.65; overflow-x: auto; white-space: pre; }
    body.page-blog-picpill .paper-pre code { display: block; white-space: pre; }
    body.page-blog-picpill .paper-pre code.hljs { padding: 0; background: transparent; }
    body.page-blog-picpill .pill-macro { color: #7c3aed !important; font-weight: 700; }
    body.page-blog-picpill .pill-tag-marker { color: #16a34a !important; font-weight: 700; }
    body.page-blog-picpill .paper-figure { margin: 8px 0 22px; text-align: center; }
    body.page-blog-picpill .paper-figure img { display: block; width: min(100%, 620px); height: auto; margin: 0 auto; border: 1px solid var(--line); border-radius: 10px; }
    body.page-blog-picpill .paper-figure--yellow-border img { width: min(100%, 900px); border: 1px solid #fbbf24; border-radius: 10px; box-shadow: 0 0 0 1px rgba(251, 191, 36, 0.2); }
    body.page-blog-picpill .paper-figure--pill-model img { width: min(100%, 225px); border: 0; border-radius: 0; box-shadow: none; }
    body.page-blog-picpill .paper-figure--diagram img { width: min(100%, 900px); border: 0; border-radius: 0; box-shadow: none; }
    body.page-blog-picpill .paper-figure figcaption { margin-top: 8px; font-size: 13px; color: var(--muted); text-align: center; }
    body.page-blog-picpill .paper-figure--diagram figcaption { font-size: 11px; line-height: 1.45; }
    body.page-blog-picpill .paper-video-wrap {
      margin: 8px 0 4px;
      text-align: center;
    }
    body.page-blog-picpill .paper-video {
      display: block;
      width: min(100%, 720px);
      height: auto;
      margin: 0 auto;
      border: 1px solid var(--line);
      border-radius: 10px;
      background: #000;
    }
    body.page-blog-picpill .paper-table-wrap { overflow-x: auto; margin-top: 8px; }
    body.page-blog-picpill .paper-table { width: 100%; min-width: 760px; border-collapse: collapse; border: 1px solid var(--line); background: var(--panel); }
    body.page-blog-picpill .paper-table th, body.page-blog-picpill .paper-table td { border: 1px solid var(--line); padding: 10px 12px; text-align: left; vertical-align: top; font-size: 13px; line-height: 1.55; }
    body.page-blog-picpill .paper-table th { background: var(--panel); font-weight: 700; }
    body.page-blog-picpill .paper-toc {
      margin: 2px 0 16px;
      padding: 14px 16px;
      border: 1px solid var(--line);
      border-radius: 12px;
      background: var(--panel);
    }
    body.page-blog-picpill .paper-toc h2 {
      margin: 0 0 8px;
      font-size: 14px;
      letter-spacing: -0.01em;
    }
    body.page-blog-picpill .paper-toc .paper-list {
      margin: 0;
      padding-left: 1.1rem;
      font-size: 12px;
      line-height: 1.45;
    }
    body.page-blog-picpill .paper-toc .paper-list li {
      margin: 4px 0;
    }
    body.page-blog-picpill .paper-toc .paper-list ul {
      margin-top: 4px;
      padding-left: 1rem;
      list-style: circle;
      font-size: 11.5px;
    }
    body.page-blog-picpill .paper-section h3 {
      margin: 14px 0 8px;
      font-size: 16px;
      letter-spacing: -0.01em;
      color: var(--ink);
    }
    body.page-blog-picpill .unified-flow-diagram {
      margin: 8px auto 12px;
      padding: 10px;
      border: 1px dashed #ea580c;
      border-radius: 14px;
      background: linear-gradient(180deg, #fff7ed 0%, #fffdf9 100%);
      box-shadow: inset 0 1px 0 #ffffff;
      display: grid;
      gap: 8px;
      max-width: 780px;
    }
    body.page-blog-picpill .unified-flow-lane {
      border: 1px solid #fed7aa;
      border-radius: 12px;
      background: #fff;
      padding: 9px;
      display: grid;
      gap: 6px;
    }
    body.page-blog-picpill .unified-flow-title {
      margin: 0;
      text-align: center;
      font-size: 11px;
      line-height: 1.3;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      font-weight: 800;
      color: #1f4ea3;
      font-family: var(--font-sans);
    }
    body.page-blog-picpill .unified-flow-node {
      border: 1px solid #fde0c7;
      border-radius: 10px;
      background: linear-gradient(180deg, #ffffff 0%, #fffaf4 100%);
      color: var(--ink);
      padding: 8px 9px;
      text-align: left;
      font-family: var(--font-mono);
      font-size: 11px;
      line-height: 1.35;
      font-weight: 600;
    }
    body.page-blog-picpill .unified-flow-node-head {
      display: flex;
      align-items: center;
      gap: 8px;
      margin-bottom: 4px;
      font-family: var(--font-sans);
      font-weight: 800;
      letter-spacing: 0.02em;
    }
    body.page-blog-picpill .unified-flow-step {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-width: 32px;
      height: 18px;
      padding: 0 6px;
      border-radius: 999px;
      border: 1px solid #fdba74;
      background: #ffedd5;
      color: #9a3412;
      font-family: var(--font-mono);
      font-size: 10px;
      line-height: 1;
    }
    body.page-blog-picpill .unified-flow-phase {
      color: #7c2d12;
      text-transform: uppercase;
      font-size: 10px;
      letter-spacing: 0.08em;
    }
    body.page-blog-picpill .unified-flow-node-body {
      color: #1f2937;
    }
    body.page-blog-picpill .unified-flow-node--small {
      font-size: 10.5px;
      background: linear-gradient(180deg, #fff 0%, #fff7ed 100%);
    }
    body.page-blog-picpill .unified-flow-arrow {
      margin: 1px 0;
      text-align: center;
      font-size: 10px;
      font-family: var(--font-mono);
      color: var(--muted);
      letter-spacing: 0.03em;
      text-transform: uppercase;
    }
    body.page-blog-picpill .unified-flow-arrow::before {
      content: "↓ ";
      color: #f97316;
      font-weight: 800;
    }
    body.page-blog-picpill .unified-flow-sep {
      text-align: center;
      font-family: var(--font-mono);
      font-size: 11px;
      font-weight: 700;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      color: #b45309;
    }
    body.page-blog-picpill .unified-flow-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 6px;
    }
    body.page-blog-picpill .spoof-flowchart {
      margin: 8px auto 12px;
      max-width: 760px;
      padding: 10px;
      border: 1px dashed #ea580c;
      border-radius: 14px;
      background: linear-gradient(180deg, #fff7ed 0%, #fffdf9 100%);
    }
    body.page-blog-picpill .spoof-flow-step {
      border: 1px solid #fed7aa;
      border-radius: 10px;
      background: #fff;
      padding: 10px 11px;
    }
    body.page-blog-picpill .spoof-flow-step-title {
      margin: 0 0 6px;
      font-family: var(--font-sans);
      font-size: 12px;
      letter-spacing: 0.04em;
      text-transform: uppercase;
      font-weight: 800;
      color: #7c2d12;
    }
    body.page-blog-picpill .spoof-flow-step p {
      margin: 0 0 8px;
      line-height: 1.5;
      font-size: 12px;
    }
    body.page-blog-picpill .spoof-flow-snippet {
      margin: 0;
      padding: 8px 10px;
      font-size: 10.5px;
      line-height: 1.45;
      border-color: #f1d2b3;
      background: #fffaf4;
    }
    body.page-blog-picpill .spoof-flow-connector {
      width: 2px;
      height: 18px;
      margin: 4px auto;
      background: linear-gradient(180deg, #fb923c 0%, #ea580c 100%);
      position: relative;
      border-radius: 2px;
    }
    body.page-blog-picpill .spoof-flow-connector::after {
      content: "";
      position: absolute;
      left: 50%;
      transform: translateX(-50%);
      bottom: -6px;
      width: 0;
      height: 0;
      border-left: 5px solid transparent;
      border-right: 5px solid transparent;
      border-top: 7px solid #ea580c;
    }
    body.page-blog-picpill .pill-tagline {
      color: #7c3aed !important;
      font-weight: 600;
    }
    @media (max-width: 860px) {
      body.page-blog-picpill .paper-card {
        padding: 18px;
      }
      body.page-blog-picpill .paper-section {
        margin-top: 18px;
        padding-top: 12px;
      }
      body.page-blog-picpill .paper-section--salto-jmp .mini-jmp-linkbox-title {
        font-size: 12px;
      }
      body.page-blog-picpill .paper-table {
        min-width: 620px;
      }
      body.page-blog-picpill .unified-flow-grid {
        grid-template-columns: 1fr;
      }
      body.page-blog-picpill .unified-flow-node {
        text-align: left;
      }
      body.page-blog-picpill .spoof-flowchart {
        max-width: 100%;
      }
      body.page-blog-picpill .spoof-flow-step-title {
        font-size: 11px;
      }
    }
    @media (max-width: 560px) {
      body.page-blog-picpill .paper-card {
        padding: 14px;
        border-radius: 14px;
      }
      body.page-blog-picpill .paper-title {
        font-size: clamp(24px, 9vw, 34px);
      }
      body.page-blog-picpill .paper-section h2 {
        font-size: 18px;
      }
      body.page-blog-picpill .paper-section--salto-jmp .mini-jmp-linkbox {
        padding: 3px 7px;
      }
      body.page-blog-picpill .paper-section--salto-jmp .mini-jmp-linkbox-title {
        font-size: 11.5px;
      }
      body.page-blog-picpill .paper-pre {
        font-size: 11px;
        padding: 10px 11px;
      }
    }
  
/* ===== Migrated Inline CSS: blogs/informe-flujo-messagebox-solo/index.html ===== */


    body.page-blog-informe .paper-card { padding: clamp(22px, 2.2vw, 34px); }
    body.page-blog-informe .paper-kicker { display: inline-block; margin-bottom: 8px; font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--accent); font-weight: 800; }
    body.page-blog-informe .paper-title { margin: 0; font-size: clamp(28px, 3.5vw, 42px); font-family: var(--font-display); line-height: 1.08; letter-spacing: -0.02em; }
    body.page-blog-informe .paper-subtitle { margin: 10px 0 18px; font-style: italic; color: var(--muted); font-size: 16px; }
    body.page-blog-informe .paper-section { margin-top: 22px; padding-top: 14px; border-top: 1px dashed var(--line); }
    body.page-blog-informe .paper-section h2 { margin: 0 0 10px; font-size: 20px; letter-spacing: -0.01em; }
    body.page-blog-informe .paper-section p { margin: 0 0 12px; line-height: 1.8; }
    body.page-blog-informe .paper-pre { margin: 10px 0 14px; padding: 12px 14px; border: 1px solid rgba(255,255,255,0.09); border-radius: 10px; background: #111b2f; color: #dce8ff; font-family: var(--font-mono); font-size: 12px; line-height: 1.65; overflow-x: auto; white-space: pre; }
    body.page-blog-informe .paper-pre code { display: block; white-space: pre; }
    body.page-blog-informe .paper-pre code.hljs { padding: 0; background: transparent; }
    body.page-blog-informe .pill-tagline {
      color: #7c3aed !important;
      font-weight: 600;
    }
    @media (max-width: 860px) {
      body.page-blog-informe .paper-card {
        padding: 18px;
      }
      body.page-blog-informe .paper-section {
        margin-top: 18px;
        padding-top: 12px;
      }
    }
    @media (max-width: 560px) {
      body.page-blog-informe .paper-card {
        padding: 14px;
        border-radius: 14px;
      }
      body.page-blog-informe .paper-title {
        font-size: clamp(24px, 9vw, 34px);
      }
      body.page-blog-informe .paper-section h2 {
        font-size: 18px;
      }
      body.page-blog-informe .paper-pre {
        font-size: 11px;
        padding: 10px 11px;
      }
    }

/* ===== Local Highlight.js Theme (no external CSS links) ===== */

body.page-blog-picpill .hljs {
    color: #1f2937;
}
body.page-blog-picpill .hljs-comment,
body.page-blog-picpill .hljs-quote {
    color: #64748b;
    font-style: italic;
}
body.page-blog-picpill .paper-code--asm .hljs-comment,
body.page-blog-picpill .paper-code--asm .asm-semicolon-comment {
    color: #15803d;
    font-style: normal;
}
body.page-blog-picpill .hljs-keyword,
body.page-blog-picpill .hljs-selector-tag,
body.page-blog-picpill .hljs-built_in,
body.page-blog-picpill .hljs-type {
    color: #1d4ed8;
}
body.page-blog-picpill .hljs-string,
body.page-blog-picpill .hljs-attr,
body.page-blog-picpill .hljs-symbol,
body.page-blog-picpill .hljs-bullet {
    color: #15803d;
}
body.page-blog-picpill .hljs-title,
body.page-blog-picpill .hljs-function,
body.page-blog-picpill .hljs-section {
    color: #7c2d12;
}
body.page-blog-picpill .hljs-number,
body.page-blog-picpill .hljs-literal {
    color: #b45309;
}
body.page-blog-picpill .hljs-meta,
body.page-blog-picpill .hljs-doctag {
    color: #0f766e;
}

body.page-blog-informe .hljs {
    color: #dce8ff;
}
body.page-blog-informe .hljs-comment,
body.page-blog-informe .hljs-quote {
    color: #8aa2c7;
    font-style: italic;
}
body.page-blog-informe .hljs-keyword,
body.page-blog-informe .hljs-selector-tag,
body.page-blog-informe .hljs-built_in,
body.page-blog-informe .hljs-type {
    color: #8cc8ff;
}
body.page-blog-informe .hljs-string,
body.page-blog-informe .hljs-attr,
body.page-blog-informe .hljs-symbol,
body.page-blog-informe .hljs-bullet {
    color: #b6efb0;
}
body.page-blog-informe .hljs-title,
body.page-blog-informe .hljs-function,
body.page-blog-informe .hljs-section {
    color: #ffd38a;
}
body.page-blog-informe .hljs-number,
body.page-blog-informe .hljs-literal {
    color: #facc15;
}
body.page-blog-informe .hljs-meta,
body.page-blog-informe .hljs-doctag {
    color: #67e8f9;
}
  
