:root{--color-bg:#262633;--color-bg-deep:#1c1c28;--color-surface:#313140e0;--color-surface-solid:#313140;--color-nav:#604d6e;--color-nav-deep:#53425f;--color-accent:#69e8a8;--color-accent-dim:#3de18e;--color-link:#80b788;--color-link-hover:#a2f1c9;--color-ink:#dbdbea;--color-ink-muted:#a8a8c0;--color-border:#5f5f7c8c;--font-display:"Varela Round", "Segoe UI", sans-serif;--font-body:"Quattrocento Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;--space:clamp(.9rem, 2.8vw, 1.35rem);--max:46rem;--radius:.35rem}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{min-height:100dvh;font-family:var(--font-body);color:var(--color-ink);background-color:var(--color-bg-deep);background-image:linear-gradient(#1c1c288c 0%,#1c1c28b8 100%),url(/images/theme/default-bg.jpg);background-position:top;background-size:cover;background-attachment:fixed;margin:0;font-size:1.05rem;line-height:1.65}img{max-width:100%;height:auto}a{color:var(--color-link)}a:hover{color:var(--color-link-hover)}.wrap{width:min(100% - 2 * var(--space), 52rem);margin-inline:auto}.page-shell{flex-direction:column;min-height:100dvh;display:flex}.topbar{background:var(--color-nav);color:#ebebeb;z-index:40;border-bottom:1px solid #ffffff0f;position:sticky;top:0;box-shadow:0 2px 10px #00000059}.topbar-inner{justify-content:space-between;align-items:center;gap:1rem;min-height:3.35rem;padding-block:.4rem;display:flex}.brand{color:#ebebeb;font-family:var(--font-display);letter-spacing:.02em;align-items:center;gap:.55rem;font-size:1.2rem;font-weight:400;text-decoration:none;display:inline-flex}.brand:hover{color:#fff}.brand-mark{object-fit:contain;flex-shrink:0;width:1.65rem;height:1.65rem}.nav{flex-wrap:wrap;gap:.2rem;display:flex}.nav a{color:#ebebebe6;border-radius:var(--radius);padding:.45rem .75rem;font-size:.95rem;text-decoration:none}.nav a:hover,.nav a[aria-current=page]{color:#fff;background:#00000038}.page-main{flex:1;padding-block:clamp(1.5rem,4vw,2.75rem)}.hero{border-radius:calc(var(--radius) + .2rem);border:1px solid var(--color-border);background-color:#0000;background-image:linear-gradient(135deg,#604d6e8c 0%,#313140bf 55%,#262633cc 100%),url(/images/theme/content-bg.png);background-position:50%;background-repeat:repeat,repeat;background-size:cover;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;margin-bottom:1.75rem;padding:clamp(1.4rem,4vw,2.25rem) clamp(1.1rem,3vw,1.75rem);position:relative;overflow:hidden;box-shadow:0 8px 28px #00000047}.hero:after{content:"";opacity:.45;pointer-events:none;background:url(/images/theme/botom-object.png) 100% 100%/contain no-repeat;width:min(42%,14rem);height:70%;position:absolute;bottom:-.25rem;right:-.5rem}.hero-brand{z-index:1;font-family:var(--font-display);color:#fff;text-shadow:0 1px 12px #00000059;margin:0 0 .65rem;font-size:clamp(2rem,6vw,2.85rem);font-weight:400;line-height:1.15;position:relative}.lede{z-index:1;color:var(--color-ink-muted);max-width:34rem;margin:0;font-size:1.12rem;position:relative}.prose h1,.prose h2,.prose h3{font-family:var(--font-display);color:#ebebeb;font-weight:400;line-height:1.25}.prose h1{margin-top:0}.prose p{margin-block:.85rem}.prose pre,.prose code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em}.prose pre{background:var(--color-bg-deep);border:1px solid var(--color-border);border-radius:var(--radius);color:#e8e8f2;padding:.9rem 1rem;overflow-x:auto}.prose code{background:#00000047;border-radius:.2rem;padding:.1em .35em}.prose pre code{background:0 0;padding:0}.prose img{border-radius:var(--radius);border:1px solid var(--color-border);background:#1a1a24;margin:1rem auto;display:block}.prose ul,.prose ol{padding-left:1.25rem}.cta-row{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex}.btn{border-radius:var(--radius);font:inherit;cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;padding:.7rem 1.2rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-primary{background:var(--color-accent);color:#1c1c28;border-color:var(--color-accent-dim)}.btn-primary:hover{background:var(--color-accent-dim);color:#111}.btn-ghost{border-color:var(--color-border);color:var(--color-ink);background:0 0}.btn-ghost:hover{border-color:var(--color-accent);color:var(--color-accent)}.section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:calc(var(--radius) + .15rem);backdrop-filter:blur(4px);padding:clamp(1.1rem,3vw,1.75rem);box-shadow:0 6px 20px #00000038}.section+.section{margin-top:1.25rem}.section h1,.section h2{font-family:var(--font-display);color:#ebebeb;margin-top:0}.article-meta{color:var(--color-ink-muted);margin:-.35rem 0 1.25rem;font-size:.9rem}.article-list{gap:.85rem;margin:0;padding:0;list-style:none;display:grid}.article-list a{color:inherit;border-radius:var(--radius);border:1px solid var(--color-border);background:#0000002e;padding:.85rem 1rem;text-decoration:none;transition:border-color .15s,background .15s;display:block}.article-list a:hover{border-color:var(--color-accent);background:#69e8a814}.article-list .title{font-family:var(--font-display);color:#ebebeb;font-size:1.05rem}.article-list .meta{color:var(--color-ink-muted);margin-top:.25rem;font-size:.85rem;display:block}.section-label{letter-spacing:.06em;text-transform:uppercase;color:var(--color-accent);margin-bottom:.75rem;font-size:.75rem;display:inline-block}.form{gap:.9rem;margin-top:1rem;display:grid}.form label{gap:.35rem;font-size:.95rem;font-weight:600;display:grid}.form input,.form textarea{font:inherit;border:1px solid var(--color-border);border-radius:var(--radius);color:#222;background:#fffffff5;padding:.65rem .75rem;font-weight:400}.form textarea{resize:vertical;min-height:9rem}.form .hp{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.form .status{margin:0;font-weight:500}.form .status[data-ok="1"]{color:var(--color-accent)}.form .status[data-ok="0"]{color:#ee5f5b}.site-footer{color:var(--color-ink-muted);border-top:1px solid var(--color-border);background:#1c1c28a6;margin-top:auto;padding:1.35rem 0 1.85rem;font-size:.9rem}.site-footer a{color:var(--color-link)}@media (width<=640px){.hero:after{opacity:.28;width:55%}.topbar-inner{flex-direction:column;align-items:flex-start}}
