/* Virtizik shared site theme — neon blue + green */
:root{
  --bg:#050b10; --bg2:#07131b; --panel:#0b1821; --panel2:#10232e;
  --panel3:#132b38; --text:#eaf4f8; --muted:#94aab5; --line:#1c4150;
  --blue:#20b8ff; --cyan:#20e0ff; --green:#6cff7c; --green2:#23e6a1;
  --amber:#ffd166; --red:#ff7180; --code:#03090d; --max:1120px;
  --shadow:0 18px 55px rgba(0,0,0,.28); --radius:18px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;color-scheme:dark}
body{margin:0;color:var(--text);font:16px/1.72 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;background:
 radial-gradient(circle at 82% -4%,rgba(32,184,255,.19),transparent 31rem),
 radial-gradient(circle at 12% 9%,rgba(108,255,124,.08),transparent 28rem),
 linear-gradient(180deg,#03080c 0%,var(--bg) 34rem,var(--bg2) 100%);min-height:100vh}
a{color:#75ddff;text-decoration:none}a:hover{color:#b9efff;text-decoration:underline;text-underline-offset:3px}
.shell,.wrap,.hero-inner,.header-inner{width:min(calc(100% - 36px),var(--max));margin-inline:auto}
.sitebar{position:sticky;top:0;z-index:30;background:rgba(3,9,13,.86);border-bottom:1px solid rgba(55,133,160,.28);backdrop-filter:blur(14px)}
.sitebar::before{content:"";display:block;height:3px;background:linear-gradient(90deg,var(--blue),var(--cyan) 45%,var(--green))}
.sitebar .inner,.nav-inner,.header-inner{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{font-weight:900;font-size:1.36rem;letter-spacing:-.045em;white-space:nowrap;color:var(--blue)!important;text-decoration:none!important}
.brand .brand-main{color:var(--blue)}.brand .brand-accent,.brand span{color:var(--green)}.brand .brand-dot{color:#c7d8df;font-weight:720;letter-spacing:-.025em}
.tagline,.nav-links{color:var(--muted);font-size:.9rem}.nav-links{display:flex;align-items:center;gap:18px}.nav-links a{color:#bdd0d8}
.hero,body>header{position:relative;padding:76px 0 50px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,rgba(18,67,88,.28),rgba(8,24,34,.07) 55%,rgba(35,230,161,.04))}
.hero::after,body>header::after{content:"";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,var(--blue),var(--green),transparent);opacity:.65}
.eyebrow,.kicker{margin:0 0 14px;color:var(--green);font-size:.82rem;font-weight:850;text-transform:uppercase;letter-spacing:.13em}
h1{margin:0;max-width:1040px;font-size:clamp(2.4rem,5.2vw,4.55rem);line-height:1.02;letter-spacing:-.048em;text-wrap:balance}
.subtitle,.deck{margin:21px 0 0;max-width:950px;color:#c4d6dd;font-size:clamp(1.05rem,1.9vw,1.24rem);line-height:1.58}
.meta{margin-top:23px;color:#8fa8b4;font-size:.92rem}.meta strong{color:#bdd3dc}
main{padding:42px 0 86px}.page-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:34px}.page-grid.has-sidebar{grid-template-columns:minmax(0,1fr) 270px}
.article-stack{display:grid;gap:28px;min-width:0}.section{background:linear-gradient(180deg,rgba(13,29,39,.96),rgba(10,24,33,.96));border:1px solid var(--line);border-radius:var(--radius);padding:clamp(23px,4vw,39px);box-shadow:var(--shadow);min-width:0}
.section:hover{border-color:#28566a}.section>h2:first-child{margin-top:0}.section>p:last-child,.section>div:last-child{margin-bottom:0}
h2,h3,h4{line-height:1.2;letter-spacing:-.025em;text-wrap:balance}h2{font-size:clamp(1.55rem,3vw,2.2rem);margin:2.5rem 0 1rem}h3{font-size:1.22rem;margin:2rem 0 .72rem;color:#dcf7ff}h4{font-size:1.02rem;color:#cce1e9}
p{margin:0 0 18px}ul,ol{padding-left:1.4rem}li{margin:.42rem 0}strong{color:#f4fbfd}
.lead{font-size:1.13rem;color:#cbdde4}.small,.tiny,.note{font-size:.9rem;color:var(--muted)}
code{font-family:"Cascadia Code","SFMono-Regular",Consolas,Menlo,monospace;font-size:.91em}code.inline,:not(pre)>code{padding:.12em .38em;border-radius:5px;border:1px solid #254654;background:#07121a;color:#bcecff;overflow-wrap:anywhere}
pre{position:relative;overflow:auto;margin:18px 0 24px;padding:19px 21px;background:linear-gradient(180deg,#02070a,var(--code));color:#d8eaf2;border:1px solid #1f4150;border-radius:12px;line-height:1.55;font-size:.86rem;box-shadow:inset 3px 0 0 rgba(32,184,255,.7);white-space:pre-wrap;word-break:break-word}
pre code{background:none!important;border:0!important;padding:0!important;color:inherit!important;font-size:inherit}.copy{position:absolute;top:10px;right:10px;border:1px solid #315667;border-radius:7px;background:#10232e;color:#cfedf7;padding:5px 9px;cursor:pointer}.copy:hover{border-color:var(--green);color:var(--green)}
.callout,.note,.warning,.success,.tldr,.terminal-note,.result{margin:22px 0;padding:18px 20px;border-radius:10px;border:1px solid #25566a;border-left:4px solid var(--blue);background:rgba(32,184,255,.075)}
.callout.good,.success{border-left-color:var(--green);border-color:rgba(108,255,124,.28);background:rgba(108,255,124,.06)}
.callout.warn,.warning{border-left-color:var(--amber);border-color:rgba(255,209,102,.28);background:rgba(255,209,102,.07)}
.callout.bad,.callout.danger,.bad{border-left-color:var(--red);border-color:rgba(255,113,128,.28);background:rgba(255,113,128,.065)}
.tldr{border-left-color:var(--green2);background:linear-gradient(90deg,rgba(35,230,161,.08),rgba(32,184,255,.045))}.tldr strong,.terminal-note strong{color:var(--green)}.result{font-family:"Cascadia Code",Consolas,monospace;color:#cce7f0;background:#061118;white-space:pre-wrap;overflow-wrap:anywhere}
figure{margin:26px 0 7px}figure img{display:block;width:100%;height:auto;border:1px solid #295063;border-radius:12px;box-shadow:0 16px 38px rgba(0,0,0,.32);background:#fff}figcaption{margin-top:10px;color:var(--muted);font-size:.9rem}
.root-grid,.env{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0}.env{grid-template-columns:repeat(2,minmax(0,1fr))}.card,.env>div{padding:17px 18px;background:var(--panel2);border:1px solid var(--line);border-radius:12px}.card strong,.env b{display:block;margin-bottom:7px;color:#8ae6ff}.env b{font-size:.74rem;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}
.timeline{display:grid;gap:13px;margin-top:18px}.step{display:grid;grid-template-columns:40px minmax(0,1fr);gap:14px;align-items:start}.num{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;font-weight:900;color:#05100e;background:linear-gradient(135deg,var(--blue),var(--green));box-shadow:0 0 18px rgba(32,224,255,.15)}
.kv{display:grid;grid-template-columns:minmax(130px,190px) minmax(0,1fr);gap:9px 18px;margin:18px 0}.kv>div:nth-child(odd){color:var(--muted)}
.table-wrap{overflow-x:auto;margin:20px 0}table{width:100%;border-collapse:separate;border-spacing:0;margin:20px 0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#08151d}th,td{padding:12px 14px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line);border-right:1px solid var(--line)}th{color:#9ceaff;background:#0d2532;font-size:.91rem}tr:last-child td{border-bottom:0}th:last-child,td:last-child{border-right:0}.status-good{color:var(--green);font-weight:800}.status-bad{color:#ff9da8;font-weight:800}
.toc{padding:18px 20px;background:#081720;border:1px solid var(--line);border-radius:12px}.toc a{display:block;padding:5px 0;border-bottom:1px dashed rgba(117,221,255,.18)}.toc a:last-child{border-bottom:0}.toc ol{margin:.4rem 0}.sidebar{align-self:start;position:sticky;top:91px}.sidebar .toc{box-shadow:var(--shadow)}
.badge,.pill{display:inline-block;margin:2px 5px 2px 0;padding:4px 9px;border:1px solid #285669;border-radius:999px;background:#0d2330;color:#9ceaff;font-size:.82rem}.badge.red{border-color:rgba(255,113,128,.35);color:#ffabb4;background:rgba(255,113,128,.07)}
.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.gallery-item{min-width:0}.path{white-space:pre-wrap}.delta{color:var(--green)}
.refs li,.sources li{margin-bottom:.65rem}hr{border:0;border-top:1px solid var(--line);margin:2.4rem 0}
footer.site-footer{border-top:1px solid var(--line);padding:30px 0 48px;color:#839aa5;font-size:.9rem}.footer-inner{display:flex;justify-content:space-between;gap:24px;align-items:center}.footer-brand{font-weight:800}.footer-brand .accent{color:var(--green)}
/* Home */
.home-hero{padding:96px 0 62px}.home-hero h1{max-width:870px}.home-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.post-card{display:flex;flex-direction:column;padding:24px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(180deg,rgba(13,29,39,.94),rgba(8,20,28,.95));box-shadow:var(--shadow);transition:transform .18s ease,border-color .18s ease}.post-card:hover{transform:translateY(-2px);border-color:#32728b;text-decoration:none}.post-card .category{color:var(--green);font-size:.76rem;font-weight:850;text-transform:uppercase;letter-spacing:.1em}.post-card h2{margin:9px 0 10px;font-size:1.28rem;color:#f0f8fb}.post-card p{color:#a9bec8;font-size:.94rem}.post-card .read{margin-top:auto;padding-top:12px;color:#75ddff;font-weight:700}.intro-panel{margin-bottom:26px;padding:20px 22px;border:1px solid var(--line);border-radius:14px;background:rgba(13,29,39,.75);color:#b7cbd4}
@media(max-width:900px){.page-grid.has-sidebar{grid-template-columns:1fr}.sidebar{position:static;order:-1}.root-grid{grid-template-columns:1fr}.home-grid{grid-template-columns:1fr}}
@media(max-width:720px){.tagline,.nav-links .hide-mobile{display:none}.hero,body>header{padding:52px 0 38px}.section{border-radius:14px;padding:22px 20px}.env,.gallery{grid-template-columns:1fr}.kv{grid-template-columns:1fr;gap:2px}.kv>div:nth-child(even){margin-bottom:10px}.footer-inner{display:block}.home-hero{padding:62px 0 46px}}
@media print{body{background:#fff;color:#111}.sitebar,.sidebar,.copy{display:none!important}.hero,body>header{background:#fff;color:#111}.subtitle,.deck,.meta,.eyebrow,.kicker{color:#333}.section{box-shadow:none;background:#fff;color:#111;border-color:#ccc}pre{white-space:pre-wrap;color:#111;background:#f4f4f4;border-color:#ccc}a{color:#000}}
