/* Reaz Romen — shared Antfu-inspired editorial shell */
:root{color-scheme:light dark;--bg:#fbfaf7;--surface:#fff;--text:#292927;--text-strong:#171716;--muted:#74736d;--faint:#9a9992;--line:#deddd7;--line-soft:#ecebe6;--accent:#3f716c;--accent-soft:#3f716c14;--mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;--sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--content:68ch;--wide:1040px;--radius:8px}
html.dark{--bg:#111210;--surface:#151613;--text:#c9c8c2;--text-strong:#f1f0ea;--muted:#92918a;--faint:#73726d;--line:#30312e;--line-soft:#242522;--accent:#91bcb6;--accent-soft:#91bcb612}
*{box-sizing:border-box}html{background:var(--bg);overflow-x:hidden;scroll-behavior:smooth}body{margin:0;min-height:100vh;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:16px;line-height:1.72;text-rendering:optimizeLegibility}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;background-image:radial-gradient(circle at 1px 1px,color-mix(in srgb,var(--muted) 20%,transparent) 1px,transparent 0);background-size:18px 18px;mask-image:linear-gradient(to bottom right,rgba(0,0,0,.35),transparent 48%);opacity:.28}::selection{background:var(--accent-soft)}a{color:inherit;text-underline-offset:.18em}img,svg,video{max-width:100%;height:auto}button,input,textarea,select{font:inherit}
.skip-link{position:fixed;top:.5rem;left:.5rem;z-index:1000;transform:translateY(-180%);background:var(--surface);color:var(--text-strong);border:1px solid var(--line);border-radius:6px;padding:.55rem .75rem;text-decoration:none}.skip-link:focus{transform:none}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.site-header{position:relative;z-index:20}.site-header-inner{width:min(calc(100% - 2.5rem),var(--wide));min-height:76px;margin:0 auto;display:flex;align-items:center;gap:1.5rem}.brand{flex:0 0 auto;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:flex-start;color:var(--text-strong);font:700 .94rem/1 var(--mono);letter-spacing:-.03em;text-decoration:none}.nav{margin-left:auto;min-width:0;display:flex;align-items:center;gap:.75rem}.nav-scroll{display:flex;align-items:center;gap:1.5rem;min-width:0}.nav-scroll a{position:relative;display:inline-flex;align-items:center;min-height:44px;color:var(--muted);font-size:.94rem;text-decoration:none;white-space:nowrap}.nav-scroll a:hover,.nav-scroll a[aria-current=page]{color:var(--text-strong)}.nav-scroll a[aria-current=page]:after{content:"";position:absolute;left:0;right:0;bottom:6px;height:1px;background:var(--accent)}.nav-actions{display:flex;align-items:center;gap:.25rem;padding-left:.5rem;border-left:1px solid var(--line-soft)}.icon-link,.theme-toggle{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:7px;background:transparent;color:var(--muted);text-decoration:none;cursor:pointer}.icon-link:hover,.theme-toggle:hover{color:var(--text-strong);background:var(--accent-soft)}.icon{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.icon.icon-fill{fill:currentColor;stroke:none}.theme-toggle [hidden]{display:none!important}
main#rr-main,.page{position:relative;z-index:1;width:min(calc(100% - 2.5rem),var(--wide));margin:0 auto;padding:3rem 0 6rem}.prose{max-width:var(--content);margin-inline:auto;color:var(--text);font-size:1.02rem;line-height:1.78}.prose h1,.prose h2,.prose h3,.prose h4{color:var(--text-strong);font-family:var(--sans)}.prose h1{font-size:clamp(2.2rem,5vw,3.45rem);line-height:1.05;letter-spacing:-.048em;margin:0 0 2rem}.prose h2{font-size:clamp(1.5rem,3vw,2rem);line-height:1.18;letter-spacing:-.028em;margin:4rem 0 1rem}.prose h3{font-size:1.22rem;line-height:1.35;margin:3rem 0 .75rem}.prose p,.prose ul,.prose ol{margin:1.2em 0}.prose a{color:var(--text-strong);text-decoration-thickness:1px;text-decoration-color:color-mix(in srgb,var(--accent) 48%,transparent)}.prose a:hover{text-decoration-color:var(--accent)}.prose hr{border:0;border-top:1px solid var(--line);width:64px;margin:4rem auto}.prose code,.mono{font-family:var(--mono)}.prose :not(pre)>code{font-size:.9em;color:var(--text-strong);background:var(--accent-soft);border-radius:4px;padding:.14em .34em}.lead,.lede{font-size:1.08rem;color:var(--text-strong);line-height:1.72}.muted{color:var(--muted)}.eyebrow,.meta,.kicker{font:600 .72rem/1.5 var(--mono);letter-spacing:.065em;text-transform:uppercase;color:var(--muted)}
.home-page{max-width:var(--content)!important;padding-top:clamp(3rem,8vw,6.5rem)!important}.home-hero{padding-bottom:4rem}.home-hero h1{max-width:17ch;margin:0 0 1.5rem;font-size:clamp(2.45rem,6vw,3.7rem);line-height:1.02;letter-spacing:-.052em;color:var(--text-strong)}.home-hero .lead{max-width:60ch;font-size:1.14rem}.home-hero p{margin:1.1rem 0}.system-path-meta{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem .7rem;margin-top:2rem;color:var(--muted);font:500 .78rem/1.6 var(--mono)}.system-path-meta .path-sep{color:var(--faint)}.home-section{padding:3rem 0;border-top:1px solid var(--line)}.section-label{margin:0 0 1.5rem;font:600 .72rem/1.5 var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.index-list{display:grid}.index-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.5rem;align-items:start;padding:1.15rem 0;border-top:1px solid var(--line-soft);text-decoration:none}.index-row:first-child{border-top:0}.index-row strong{display:block;color:var(--text-strong);font-size:1.02rem}.index-row span{display:block;margin-top:.18rem;color:var(--muted);font-size:.92rem;line-height:1.55}.index-row .row-meta{margin:0;text-align:right;font:500 .72rem/1.5 var(--mono);white-space:nowrap}.area-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 3rem}.area-item{padding:1rem 0;border-top:1px solid var(--line-soft)}.area-item strong{display:block;color:var(--text-strong);font-weight:600}.area-item span{font-size:.9rem;color:var(--muted)}.home-contact{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.home-contact a{color:var(--text-strong)}
figure{margin:3rem 0}figure img,figure svg{display:block;width:100%;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface)}figcaption{margin-top:.65rem;color:var(--muted);font-size:.86rem;line-height:1.55}.figure-wide{width:min(92vw,920px);margin-left:50%;transform:translateX(-50%)}.figure-full{width:min(96vw,1180px);margin-left:50%;transform:translateX(-50%)}.device-shot img{object-fit:contain}.architecture-shot img,.dashboard-shot img{object-fit:cover}
pre{position:relative;max-width:100%;overflow:auto;margin:1.7rem 0;padding:1.15rem 1.15rem 1.25rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text-strong);font:500 .84rem/1.65 var(--mono);white-space:pre;overscroll-behavior-x:contain}pre code{font:inherit;background:none!important;padding:0!important}.code-tools{position:sticky;left:0;display:flex;justify-content:flex-end;gap:.4rem;height:0;z-index:2}.copy-code{transform:translateY(.45rem);border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--muted);font:600 .7rem/1 var(--mono);padding:.48rem .58rem;cursor:pointer}.copy-code:hover{color:var(--text-strong);border-color:var(--faint)}.table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}table{border-collapse:collapse;width:100%;font-size:.92rem}th,td{padding:.65rem .75rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{color:var(--text-strong);font-weight:600}
.button,.panel-link{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:.55rem .8rem;border:1px solid var(--line);border-radius:7px;background:transparent;color:var(--text-strong);font-weight:550;text-decoration:none}.button:hover,.panel-link:hover{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}.button.secondary{color:var(--muted)}.site-footer{position:relative;z-index:1;width:min(calc(100% - 2.5rem),var(--wide));margin:0 auto;padding:2rem 0 3rem;border-top:1px solid var(--line);color:var(--muted);font-size:.86rem}.site-footer nav{display:flex;flex-wrap:wrap;gap:1rem;margin-top:.75rem}.site-footer a{text-decoration:none}.site-footer a:hover{color:var(--text-strong)}.footer{position:relative;z-index:1;max-width:var(--content);margin:0 auto;padding:2rem 0 3rem;color:var(--muted);font-size:.86rem}.ext-icon{display:inline-block;width:14px;height:14px;margin-left:.28rem;vertical-align:-2px}.back-link{display:inline-flex;align-items:center;gap:.45rem;color:var(--muted);text-decoration:none;font-size:.9rem}.back-link:hover{color:var(--text-strong)}.back-link .icon{width:15px;height:15px}
@media(max-width:720px){body:before{background-size:22px 22px;opacity:.2}.site-header-inner{width:min(calc(100% - 1.5rem),var(--wide));min-height:68px;gap:.5rem}.brand{min-width:42px}.nav{gap:.2rem;overflow:hidden}.nav-scroll{gap:1.05rem;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;padding:0 .1rem}.nav-scroll::-webkit-scrollbar{display:none}.nav-scroll a{font-size:.9rem;min-height:42px}.nav-actions{padding-left:.2rem;background:var(--bg)}.icon-link,.theme-toggle{width:40px;height:40px}main#rr-main,.page{width:min(calc(100% - 1.5rem),var(--wide));padding:2rem 0 4rem}.home-page{padding-top:clamp(2.4rem,12vw,4.5rem)!important}.home-hero h1{font-size:clamp(2.15rem,10vw,2.75rem)}.system-path-meta{gap:.38rem .55rem;font-size:.72rem}.area-list{grid-template-columns:1fr}.index-row{grid-template-columns:1fr;gap:.35rem}.index-row .row-meta{text-align:left}.figure-wide,.figure-full{width:100%;margin-left:0;transform:none}.site-footer{width:min(calc(100% - 1.5rem),var(--wide))}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
.rr-global-header{border:0!important;background:transparent!important;box-shadow:none!important}.nav-scroll a{font-family:var(--sans)!important;font-weight:400!important;letter-spacing:0!important;text-transform:none!important}.nav-actions svg{display:block}

.nav{flex:1;justify-content:flex-end}.nav-actions{flex:0 0 auto}.verified{border:1px solid var(--line)!important;background:transparent!important;color:var(--muted)!important;border-radius:5px!important;box-shadow:none!important;padding:.08rem .35rem!important}
@media(max-width:720px){.nav{overflow:visible;min-width:0}.nav-scroll{flex:1;min-width:0}.nav-actions{flex:0 0 auto}.github-action{display:none}.system-path-meta{font-size:.76rem}}
/* TECH-AESTHETIC PASS — source-inspired pure SVG icon language */
:root{--accent:#0f766e;--accent-soft:#0f766e12;--tech-line:color-mix(in srgb,var(--accent) 24%,var(--line))}
html.dark{--accent:#5eead4;--accent-soft:#5eead412;--tech-line:color-mix(in srgb,var(--accent) 20%,var(--line))}
.tech-icon{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.icon-link,.theme-toggle{width:38px;height:38px;opacity:.66;transition:color .16s ease,background .16s ease,opacity .16s ease,transform .16s ease}
.icon-link:hover,.theme-toggle:hover{opacity:1;color:var(--accent);background:var(--accent-soft);transform:translateY(-1px)}
.section-label{display:flex;align-items:center;gap:.55rem}
.section-label::before{content:"//";font:600 .72rem/1 var(--mono);color:var(--accent);letter-spacing:0}
.home-hero{position:relative}
.home-hero::after{content:"";position:absolute;right:-9rem;top:1.5rem;width:7.5rem;height:7.5rem;pointer-events:none;opacity:.16;background-image:linear-gradient(var(--tech-line) 1px,transparent 1px),linear-gradient(90deg,var(--tech-line) 1px,transparent 1px);background-size:12px 12px;mask-image:linear-gradient(135deg,#000,transparent 72%)}
.system-path-meta{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-top:2rem}
.path-node{display:inline-flex;align-items:center;gap:.42rem;min-height:30px;color:var(--muted);white-space:nowrap}
.path-node .tech-icon{width:14px;height:14px;color:var(--accent);opacity:.78}
.path-connector{display:inline-flex;align-items:center;color:var(--faint)}
.path-arrow{width:12px;height:12px}
.index-row{grid-template-columns:34px minmax(0,1fr) auto;gap:1rem}
.index-icon,.area-icon,.case-icon,.group-icon,.system-icon,.snapshot-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--muted)}
.index-icon{width:30px;height:30px;border:1px solid var(--line-soft);border-radius:7px;align-self:start;transition:color .16s ease,border-color .16s ease,background .16s ease,transform .16s ease}
.index-icon .tech-icon{width:16px;height:16px}
.index-row:hover .index-icon{color:var(--accent);border-color:var(--tech-line);background:var(--accent-soft);transform:translateY(-1px)}
.index-row:hover strong{color:var(--accent)}
.area-item{display:grid;grid-template-columns:30px minmax(0,1fr);grid-template-rows:auto auto;gap:.12rem .85rem}
.area-icon{grid-row:1/3;width:28px;height:28px;border-radius:7px;background:var(--accent-soft);color:var(--accent);align-self:start;margin-top:.08rem}
.area-icon .tech-icon{width:15px;height:15px}
.area-item strong,.area-item span:not(.area-icon){grid-column:2}
.home-section>p>a,.home-contact a{display:inline-flex;align-items:center;gap:.35rem;transition:color .16s ease}
.home-section>p>a:hover,.home-contact a:hover{color:var(--accent)}
@media(max-width:860px){.home-hero::after{display:none}}
@media(max-width:720px){.index-row{grid-template-columns:30px minmax(0,1fr);gap:.75rem}.index-row .row-meta{grid-column:2}.system-path-meta{gap:.4rem .48rem}.path-node{font-size:.72rem}.path-node .tech-icon{width:13px;height:13px}.path-connector{display:none}}

/* Managed navigation submenus — dormant unless navigation.json defines children */
.nav-group{position:relative;display:inline-flex;align-items:center;min-height:44px}
.nav-group>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;min-height:44px;color:var(--muted);font-size:.94rem;white-space:nowrap}
.nav-group>summary::-webkit-details-marker{display:none}
.nav-group>summary:after{content:"⌄";margin-left:.35rem;font-size:.75em;color:var(--faint)}
.nav-group>summary:hover,.nav-group[data-current]>summary{color:var(--text-strong)}
.nav-submenu{position:absolute;top:calc(100% - 4px);left:0;z-index:60;display:grid;min-width:190px;padding:.4rem;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:0 12px 30px color-mix(in srgb,#000 12%,transparent)}
.nav-submenu a{display:flex!important;min-height:36px!important;padding:.4rem .55rem;border-radius:5px}
.nav-submenu a[aria-current=page]:after{display:none!important}
.nav-submenu a:hover{background:var(--accent-soft)}
@media(max-width:720px){
  .nav-group{position:static}
  .nav-group>summary{font-size:.9rem;min-height:42px}
  .nav-submenu{position:fixed;left:.75rem;right:.75rem;top:64px;min-width:0;max-height:calc(100vh - 80px);overflow:auto}
}

.archive-years{display:flex;flex-wrap:wrap;gap:.65rem;margin:2rem 0}.archive-years a{border:1px solid var(--line);border-radius:.3rem;padding:.5rem .75rem}.archive-rows{padding:0;list-style:none}.archive-rows li{display:grid;grid-template-columns:7rem 1fr auto;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line)}.archive-rows time,.archive-rows span{font-size:.85rem;color:var(--muted)}@media(max-width:640px){.archive-rows li{grid-template-columns:1fr;gap:.25rem}}
