@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0bjc5tiuqdqro.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.0m6w47a4e5dy9.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.11u06r12fd6v_.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.0wxq9webf.ew4.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.067x_6k0k23tk.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.16ipb6fqu393i.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.0q-301v4kxxnr.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_885eabe0-module__mksUrq__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_885eabe0-module__mksUrq__variable{--font-milkdown-default:"Inter", "Inter Fallback"}
@font-face{font-family:Rubik;font-style:normal;font-weight:300 900;font-display:swap;src:url(../media/098850a6eb1f8577-s.0g1t.0rh7pnnu.woff2)format("woff2");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Rubik;font-style:normal;font-weight:300 900;font-display:swap;src:url(../media/6dac7af80352e41b-s.0n5n1r_vv7.6y.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Rubik;font-style:normal;font-weight:300 900;font-display:swap;src:url(../media/21445b8bd0ec5702-s.0iuj2wol7j-3b.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Rubik;font-style:normal;font-weight:300 900;font-display:swap;src:url(../media/87c7f5b5afcd23bd-s.06avho5za9mi..woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Rubik;font-style:normal;font-weight:300 900;font-display:swap;src:url(../media/d25394c5b8ff78eb-s.07mp_d91dgmcu.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Rubik;font-style:normal;font-weight:300 900;font-display:swap;src:url(../media/c9f6ebf08ddd616b-s.p.08ydm43xlmlw2.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Rubik Fallback;src:local(Arial);ascent-override:89.06%;descent-override:23.81%;line-gap-override:0.0%;size-adjust:104.98%}.rubik_bc46c852-module__uE16wG__className{font-family:Rubik,Rubik Fallback;font-style:normal}.rubik_bc46c852-module__uE16wG__variable{--font-milkdown-title:"Rubik", "Rubik Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/13bf9871fe164e7f-s.0s19wthhh_6~m.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/cc545e633e20c56d-s.0dza.stei.9v7.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/71b036adf157cdcf-s.03nf~dfjdkf~..woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/89b21bb081cb7469-s.0gfhww.tctz1o.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/3fe682a82f50d426-s.09q3q1i5159bl.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.1409xf.ylxg8g.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_800b3199-module__2Gp_aq__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_800b3199-module__2Gp_aq__variable{--font-milkdown-code:"JetBrains Mono", "JetBrains Mono Fallback"}
:root{--navbar-height:62px;--bg-base:#181818;--bg-surface:#111;--bg-surface-raised:#1a1a1a;--bg-hover:#222;--border-subtle:#222;--border-base:#333;--border-strong:#444;--text-primary:#ddd;--text-emphasis:#aaa;--text-body:#888;--text-secondary:#999;--text-muted:#666;--text-dim:#555;--text-link:#6b8096;--accent-red:#ef4444;--accent-yellow:#eab308;--accent-blue:#4fc3f7;--accent-cyan:#7ec8e3;--accent-warning:#ce9178;--gray-light:#e5e7eb;--gray-medium:#9ca3af;--gray-dark:#4b5563;--md-text:#c9d1d9;--md-heading:#e6edf3;--md-border:#30363d;--color-secondary:#6b9b9b;--color-edit-text:#ccc;--gap-xs:4px;--gap-sm:8px;--gap-md:12px;--gap-lg:clamp(20px, 1.25rem + .25vw, 30px);--gap-xl:clamp(30px, 1.875rem + .4vw, 48px);--box-padding:var(--gap-md);--reading-width:clamp(720px, 50vw, 1200px);--wide-width:87.5rem;--font-mono:"JetBrains Mono", "Menlo", "Consolas", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", monospace;--font-milkdown-default:Inter, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", Arial, Helvetica, sans-serif;--font-milkdown-title:Rubik, Inter, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", Arial, Helvetica, sans-serif;--font-milkdown-code:var(--font-mono);--font-secondary:var(--font-milkdown-default);--font-secondary-heading:var(--font-milkdown-title);--font-secondary-code:var(--font-milkdown-code)}[data-theme=visproto]{--bg-base:#050508;--bg-surface:#0b0c10;--bg-surface-raised:#111318;--bg-hover:#181a22;--border-subtle:#ffffff0f;--border-base:#ffffff1a;--border-strong:#ffffff24;--text-body:#8b8fa3}[data-theme=worldseed]{--bg-base:#060a0c;--bg-surface:#0a1014;--bg-surface-raised:#0e1519;--bg-hover:#141c22;--border-subtle:#ffffff0f;--border-base:#ffffff1a;--border-strong:#ffffff24;--text-body:#8a9498}[data-theme=senseclaw]{--bg-base:#050505;--bg-surface:#0a0a0a;--bg-surface-raised:#111;--bg-hover:#1a1a1a;--border-subtle:#ffffff0f;--border-base:#ffffff14;--border-strong:#ffffff24}*{scrollbar-width:thin;scrollbar-color:var(--border-base) transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-base);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-dim)}*,:before,:after{box-sizing:border-box}html{font-size:clamp(16px,.625rem + .3125vw,22px);overflow-x:hidden}body{background-color:var(--bg-base);color:var(--text-body);letter-spacing:.02em;font-size:.875rem;line-height:1.5;font-family:var(--font-mono);margin:0}body.has-fixed-nav{padding-top:var(--navbar-height)}img{margin:0;padding:0;line-height:1;list-style-type:none;display:block}.relative{position:relative}button{background:0 0;border:0;margin:0;padding:0}a{color:var(--text-link);text-decoration:none}h2,h3,h4,h5,h6{margin:0;padding:0;line-height:1}h1{font-size:clamp(2rem,1.5rem + 1.5vw,3.5rem);font-weight:100}h2{font-size:clamp(1.5rem,1.2rem + 1vw,2.75rem);font-weight:100}h3{font-size:clamp(1.1rem,1rem + .3vw,1.5rem);font-weight:600}h4{font-size:clamp(1rem,.95rem + .2vw,1.25rem);font-weight:600}label{color:var(--text-secondary)}ol,ul,li{margin:0;padding:0;list-style-type:none}ol li{margin-left:15px}.reading-frame,.page-frame,.vis-contained{width:100%;max-width:var(--reading-width);margin-left:auto;margin-right:auto}.vis-wide{width:100%;max-width:var(--wide-width);margin-left:auto;margin-right:auto}.vis-fullwidth{width:100%;max-width:none;min-height:70vh;padding:var(--gap-sm) var(--gap-md)}.vis-fullwidth.vis-contained,.vis-fullwidth .vis-contained{max-width:var(--wide-width);margin-left:auto;margin-right:auto}.container{width:100%;max-width:var(--reading-width);padding:var(--gap-lg) var(--gap-md) 0;margin-left:auto;margin-right:auto}.container-fluid{width:100%;max-width:none;padding:var(--gap-lg) var(--gap-md) 0}.row{flex-wrap:wrap;margin-left:-10px;margin-right:-10px;display:flex}.col,.col-auto,.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12,.col-xs,.col-xs-auto,.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12,.col-sm,.col-sm-auto,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-md,.col-md-auto,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-lg,.col-lg-auto,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12,.col-xl,.col-xl-auto,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-2xl,.col-2xl-auto,.col-2xl-1,.col-2xl-2,.col-2xl-3,.col-2xl-4,.col-2xl-5,.col-2xl-6,.col-2xl-7,.col-2xl-8,.col-2xl-9,.col-2xl-10,.col-2xl-11,.col-2xl-12,.col-3xl,.col-3xl-auto,.col-3xl-1,.col-3xl-2,.col-3xl-3,.col-3xl-4,.col-3xl-5,.col-3xl-6,.col-3xl-7,.col-3xl-8,.col-3xl-9,.col-3xl-10,.col-3xl-11,.col-3xl-12{width:100%;min-height:1px;padding-left:10px;padding-right:10px;position:relative}.col{flex-grow:1;flex-basis:0;max-width:100%}.col-auto{flex:none;width:auto;max-width:100%}.col-1{flex:0 0 8.33333%;max-width:8.33333%}.col-2{flex:0 0 16.6667%;max-width:16.6667%}.col-3{flex:0 0 25%;max-width:25%}.col-4{flex:0 0 33.3333%;max-width:33.3333%}.col-5{flex:0 0 41.6667%;max-width:41.6667%}.col-6{flex:0 0 50%;max-width:50%}.col-7{flex:0 0 58.3333%;max-width:58.3333%}.col-8{flex:0 0 66.6667%;max-width:66.6667%}.col-9{flex:0 0 75%;max-width:75%}.col-10{flex:0 0 83.3333%;max-width:83.3333%}.col-11{flex:0 0 91.6667%;max-width:91.6667%}.col-12{flex:0 0 100%;max-width:100%}.col-xs{flex-grow:1;flex-basis:0;max-width:100%}.col-xs-auto{flex:none;width:auto;max-width:100%}.col-xs-1{flex:0 0 8.33333%;max-width:8.33333%}.col-xs-2{flex:0 0 16.6667%;max-width:16.6667%}.col-xs-3{flex:0 0 25%;max-width:25%}.col-xs-4{flex:0 0 33.3333%;max-width:33.3333%}.col-xs-5{flex:0 0 41.6667%;max-width:41.6667%}.col-xs-6{flex:0 0 50%;max-width:50%}.col-xs-7{flex:0 0 58.3333%;max-width:58.3333%}.col-xs-8{flex:0 0 66.6667%;max-width:66.6667%}.col-xs-9{flex:0 0 75%;max-width:75%}.col-xs-10{flex:0 0 83.3333%;max-width:83.3333%}.col-xs-11{flex:0 0 91.6667%;max-width:91.6667%}.col-xs-12{flex:0 0 100%;max-width:100%}@media (min-width:576px){.col-sm{flex-grow:1;flex-basis:0;max-width:100%}.col-sm-auto{flex:none;width:auto;max-width:100%}.col-sm-1{flex:0 0 8.33333%;max-width:8.33333%}.col-sm-2{flex:0 0 16.6667%;max-width:16.6667%}.col-sm-3{flex:0 0 25%;max-width:25%}.col-sm-4{flex:0 0 33.3333%;max-width:33.3333%}.col-sm-5{flex:0 0 41.6667%;max-width:41.6667%}.col-sm-6{flex:0 0 50%;max-width:50%}.col-sm-7{flex:0 0 58.3333%;max-width:58.3333%}.col-sm-8{flex:0 0 66.6667%;max-width:66.6667%}.col-sm-9{flex:0 0 75%;max-width:75%}.col-sm-10{flex:0 0 83.3333%;max-width:83.3333%}.col-sm-11{flex:0 0 91.6667%;max-width:91.6667%}.col-sm-12{flex:0 0 100%;max-width:100%}}@media (min-width:768px){.col-md{flex-grow:1;flex-basis:0;max-width:100%}.col-md-auto{flex:none;width:auto;max-width:100%}.col-md-1{flex:0 0 8.33333%;max-width:8.33333%}.col-md-2{flex:0 0 16.6667%;max-width:16.6667%}.col-md-3{flex:0 0 25%;max-width:25%}.col-md-4{flex:0 0 33.3333%;max-width:33.3333%}.col-md-5{flex:0 0 41.6667%;max-width:41.6667%}.col-md-6{flex:0 0 50%;max-width:50%}.col-md-7{flex:0 0 58.3333%;max-width:58.3333%}.col-md-8{flex:0 0 66.6667%;max-width:66.6667%}.col-md-9{flex:0 0 75%;max-width:75%}.col-md-10{flex:0 0 83.3333%;max-width:83.3333%}.col-md-11{flex:0 0 91.6667%;max-width:91.6667%}.col-md-12{flex:0 0 100%;max-width:100%}}@media (min-width:992px){.col-lg{flex-grow:1;flex-basis:0;max-width:100%}.col-lg-auto{flex:none;width:auto;max-width:100%}.col-lg-1{flex:0 0 8.33333%;max-width:8.33333%}.col-lg-2{flex:0 0 16.6667%;max-width:16.6667%}.col-lg-3{flex:0 0 25%;max-width:25%}.col-lg-4{flex:0 0 33.3333%;max-width:33.3333%}.col-lg-5{flex:0 0 41.6667%;max-width:41.6667%}.col-lg-6{flex:0 0 50%;max-width:50%}.col-lg-7{flex:0 0 58.3333%;max-width:58.3333%}.col-lg-8{flex:0 0 66.6667%;max-width:66.6667%}.col-lg-9{flex:0 0 75%;max-width:75%}.col-lg-10{flex:0 0 83.3333%;max-width:83.3333%}.col-lg-11{flex:0 0 91.6667%;max-width:91.6667%}.col-lg-12{flex:0 0 100%;max-width:100%}}@media (min-width:1200px){.col-xl{flex-grow:1;flex-basis:0;max-width:100%}.col-xl-auto{flex:none;width:auto;max-width:100%}.col-xl-1{flex:0 0 8.33333%;max-width:8.33333%}.col-xl-2{flex:0 0 16.6667%;max-width:16.6667%}.col-xl-3{flex:0 0 25%;max-width:25%}.col-xl-4{flex:0 0 33.3333%;max-width:33.3333%}.col-xl-5{flex:0 0 41.6667%;max-width:41.6667%}.col-xl-6{flex:0 0 50%;max-width:50%}.col-xl-7{flex:0 0 58.3333%;max-width:58.3333%}.col-xl-8{flex:0 0 66.6667%;max-width:66.6667%}.col-xl-9{flex:0 0 75%;max-width:75%}.col-xl-10{flex:0 0 83.3333%;max-width:83.3333%}.col-xl-11{flex:0 0 91.6667%;max-width:91.6667%}.col-xl-12{flex:0 0 100%;max-width:100%}}@media (min-width:1536px){.col-2xl{flex-grow:1;flex-basis:0;max-width:100%}.col-2xl-auto{flex:none;width:auto;max-width:100%}.col-2xl-1{flex:0 0 8.33333%;max-width:8.33333%}.col-2xl-2{flex:0 0 16.6667%;max-width:16.6667%}.col-2xl-3{flex:0 0 25%;max-width:25%}.col-2xl-4{flex:0 0 33.3333%;max-width:33.3333%}.col-2xl-5{flex:0 0 41.6667%;max-width:41.6667%}.col-2xl-6{flex:0 0 50%;max-width:50%}.col-2xl-7{flex:0 0 58.3333%;max-width:58.3333%}.col-2xl-8{flex:0 0 66.6667%;max-width:66.6667%}.col-2xl-9{flex:0 0 75%;max-width:75%}.col-2xl-10{flex:0 0 83.3333%;max-width:83.3333%}.col-2xl-11{flex:0 0 91.6667%;max-width:91.6667%}.col-2xl-12{flex:0 0 100%;max-width:100%}}@media (min-width:1920px){.col-3xl{flex-grow:1;flex-basis:0;max-width:100%}.col-3xl-auto{flex:none;width:auto;max-width:100%}.col-3xl-1{flex:0 0 8.33333%;max-width:8.33333%}.col-3xl-2{flex:0 0 16.6667%;max-width:16.6667%}.col-3xl-3{flex:0 0 25%;max-width:25%}.col-3xl-4{flex:0 0 33.3333%;max-width:33.3333%}.col-3xl-5{flex:0 0 41.6667%;max-width:41.6667%}.col-3xl-6{flex:0 0 50%;max-width:50%}.col-3xl-7{flex:0 0 58.3333%;max-width:58.3333%}.col-3xl-8{flex:0 0 66.6667%;max-width:66.6667%}.col-3xl-9{flex:0 0 75%;max-width:75%}.col-3xl-10{flex:0 0 83.3333%;max-width:83.3333%}.col-3xl-11{flex:0 0 91.6667%;max-width:91.6667%}.col-3xl-12{flex:0 0 100%;max-width:100%}}.vis-toolbar{justify-content:space-between;align-items:center;gap:var(--gap-sm);z-index:50;padding:var(--gap-sm) 0;margin-bottom:var(--gap-sm);border-bottom:1px solid var(--border-subtle);background:var(--bg-base);flex-wrap:wrap;display:flex;position:sticky;top:3rem}.vis-toolbar-left,.vis-toolbar-right{align-items:center;gap:var(--gap-sm);flex-wrap:wrap;min-width:0;display:flex}.vis-main-list{min-width:0}.vis-mode-switch{align-items:center;min-width:0;max-width:100%;display:inline-flex}@media (max-width:48rem){.vis-fullwidth{padding-left:var(--gap-sm);padding-right:var(--gap-sm)}.vis-toolbar{top:0}.vis-toolbar-left,.vis-toolbar-right,.vis-mode-switch{width:100%}}.navbar{border-bottom:2px solid var(--border-subtle);flex-wrap:wrap;justify-content:space-between;align-items:center;padding:10px 20px;display:flex}.navbar-brand{white-space:nowrap;color:#fff;letter-spacing:.05em;text-transform:uppercase;margin:0 30px 0 0;padding:5px 0;font-size:.8125rem;font-weight:700;line-height:30px;display:inline-block}.navbar-brand:before{content:"> ";color:var(--text-dim);font-weight:400}.navbar-brand:hover{color:#fffc}#mainNavbar{transition:transform .3s}#mainNavbar.nav-hidden{transform:translateY(-100%)}body.nav-scrolled-up .admin-toolbar-wrapper{top:0}.navbar-dark .navbar-nav .nav-link{text-transform:uppercase;letter-spacing:.08em;color:#ffffff80;font-size:.8125rem}.navbar-dark .navbar-nav .nav-link:hover{color:#ffffffbf}.navbar-dark .navbar-nav .nav-link.current,.navbar-dark .navbar-nav .nav-link.b{color:#fff;font-weight:700}.navbar-dark .navbar-nav .nav-link.current:before,.navbar-dark .navbar-nav .nav-link.b:before{content:"[ ";color:var(--text-dim);font-weight:400}.navbar-dark .navbar-nav .nav-link.current:after,.navbar-dark .navbar-nav .nav-link.b:after{content:" ]";color:var(--text-dim);font-weight:400}.navbar-nav{flex-direction:column;margin-bottom:0;padding-left:0;list-style:none;display:flex}.navbar-nav .nav-link{padding:8px 12px;display:block}.navbar-toggler{cursor:pointer;color:#ffffff80;background-color:#0000;border:1px solid #ffffff1a;border-radius:0;align-items:center;padding:4px 8px;font-size:1.25rem;line-height:1;display:inline-flex}.navbar-toggler:hover{border-color:#ffffff40}.navbar-toggler-icon{vertical-align:middle;background:50%/100% 100% no-repeat;width:1.5em;height:1.5em;display:inline-block}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-collapse{visibility:visible;flex-grow:1;flex-basis:100%;display:none}.navbar-collapse.show{display:block}.navbar-expand-xl .navbar-toggler{display:flex}@media (min-width:1200px){.navbar-expand-xl .navbar-nav{flex-direction:row;align-items:center}.navbar-expand-xl .navbar-collapse{flex-basis:auto;align-items:center;display:flex!important}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-text{align-items:center;padding-top:0;padding-bottom:0;display:flex}.user-dropdown-menu{background:var(--bg-surface);border:1px solid var(--border-base);border-radius:0;min-width:160px;margin-top:8px;padding:6px 0}.user-dropdown-menu .dropdown-item{color:var(--text-emphasis);padding:8px 16px;font-size:.8125rem;transition:background .1s,color .1s}.user-dropdown-menu .dropdown-item:hover,.user-dropdown-menu .dropdown-item:focus{background:var(--bg-hover);color:var(--text-primary)}.user-dropdown-menu .dropdown-header{color:var(--text-body)}.user-dropdown-menu .dropdown-divider{border-top-color:#2a2a2a;margin:4px 0}.visnav{z-index:1050;background:var(--bg-base);border-bottom:2px solid var(--border-subtle);flex-wrap:wrap;align-items:center;padding:10px 20px;display:flex;position:sticky;top:0}.visnav-brand{color:#fff;letter-spacing:.08em;text-transform:uppercase;flex-shrink:0;margin-right:30px;padding:5px 0;font-size:1.25rem;font-weight:700;line-height:30px;text-decoration:none}.visnav-brand:before{content:"> ";color:var(--text-dim);font-weight:400}.visnav-brand:hover{color:#fffc;text-decoration:none}.visnav-toggle{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;margin-left:auto;padding:4px;display:none}.visnav-toggle:hover{color:#fff}.visnav-body{flex:1;align-self:stretch;align-items:center;display:flex}.visnav-links{flex:1;align-items:center;margin:0;padding:0;list-style:none;display:flex}.visnav-link{text-transform:uppercase;letter-spacing:.08em;color:#ffffff80;white-space:nowrap;padding:0 10px;font-size:.8125rem;text-decoration:none;display:block}.visnav-link:hover{color:#ffffffbf;text-decoration:none}.visnav-link.is-active{color:#fff;font-weight:700}.visnav-link.is-active:before{content:"[ ";color:var(--text-dim);font-weight:400}.visnav-link.is-active:after{content:" ]";color:var(--text-dim);font-weight:400}.visnav-link--disabled{cursor:default;pointer-events:none;color:#fff3!important}.visnav-right{align-self:stretch;align-items:center;gap:6px;display:flex}.visnav-auth{color:#fff6;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--border-base);padding:2px 8px;font-size:.6875rem;text-decoration:none}.visnav-auth:hover{color:var(--accent-yellow);border-color:var(--text-dim);text-decoration:none}.visnav-fx{border:1px solid var(--border-base);color:var(--text-dim);letter-spacing:.08em;cursor:pointer;background:0 0;padding:2px 6px;font-family:JetBrains Mono,monospace;font-size:.625rem;text-decoration:none;transition:color .15s,border-color .15s}.visnav-fx:hover{color:var(--text-secondary);border-color:var(--text-dim);text-decoration:none}.visnav-fx.is-active{color:var(--accent-yellow);border-color:var(--accent-yellow)}.visnav{transition:transform .3s,opacity .3s}.visnav.nav-hidden{opacity:0;pointer-events:none;transform:translateY(-100%)}.visnav-user{align-self:stretch;align-items:center;margin-left:6px;display:flex;position:relative}.visnav-user-btn{color:#ffffff80;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:0 10px;font-family:inherit;font-size:.8125rem;display:flex}.visnav-user-btn:hover{color:#ffffffbf}.visnav-caret{color:var(--text-dim);font-size:.5rem;transition:transform .2s}.visnav-dropdown.is-open~.visnav-caret,.visnav-user .visnav-dropdown.is-open+.visnav-caret{transform:rotate(180deg)}.visnav-dropdown{-webkit-backdrop-filter:blur(8px);z-index:1060;background:#0a0a0af2;border:1px solid #ffffff1a;min-width:140px;margin-top:8px;padding:4px 0;display:none;position:absolute;top:100%;right:0}.visnav-dropdown.is-open{display:block}.visnav-dropdown-item{letter-spacing:.05em;color:#fff9;padding:8px 16px;font-size:.8125rem;text-decoration:none;transition:color .15s,background .15s;display:block}.visnav-dropdown-item:hover{color:#ffffffe6;background:#ffffff0f;text-decoration:none}.visnav-dropdown-item--danger{color:#af5252cc}.visnav-dropdown-item--danger:hover{color:#d17878;background:#af52521a}.visnav-dropdown-sep{background:#ffffff14;height:1px;margin:4px 0}.visnav-dropdown-btn{text-align:left;cursor:pointer;background:0 0;border:none;width:100%;font-family:inherit}.visnav-dropdown-item.is-active{color:var(--accent-yellow)}@media (max-width:1199px){.visnav-toggle{display:block}.visnav-body{flex-direction:column;align-items:stretch;width:100%;display:none}.visnav-body.is-open{display:flex}.visnav-links{flex-direction:column;align-items:center;padding:8px 0}.visnav-link{padding:10px 8px}.visnav-right{border-top:1px solid var(--border-base);justify-content:center;align-self:auto;margin-top:6px;padding-top:10px}.visnav-user{align-self:auto;margin:0}.visnav-user-btn{border:1px solid #ffffff26;justify-content:center;width:100%;padding:8px 16px;font-size:.875rem}.visnav-dropdown{-webkit-backdrop-filter:none;background:#141414f2;width:100%;margin-top:4px;position:static}.visnav-dropdown-item{text-align:center;padding:10px 16px}}.visauth-container{max-width:400px;margin:60px auto 0}.visauth-card{border:1px solid var(--border-base);background:#0006;padding:24px}.visauth-title{text-align:center;color:var(--text-primary);margin-bottom:16px;font-size:1.125rem;font-weight:600}.visauth-error{color:#d17878;margin-bottom:12px;font-size:.8125rem}.visauth-field{margin-bottom:12px}.visauth-label{color:var(--text-body);margin-bottom:4px;font-size:.75rem;display:block}.visauth-input{background:var(--bg-surface);border:1px solid var(--border-strong);width:100%;color:var(--text-primary);box-sizing:border-box;padding:6px 8px;font-family:inherit;font-size:.875rem}.visauth-input:focus{border-color:var(--accent-cyan);outline:none}.visauth-hint{color:var(--text-muted);font-size:.6875rem}.visauth-checkbox-label{color:var(--text-body);cursor:pointer;font-size:.75rem}.visauth-submit{background:var(--bg-surface);border:1px solid var(--border-strong);width:100%;color:var(--text-primary);cursor:pointer;text-transform:uppercase;letter-spacing:.08em;margin-top:16px;padding:8px;font-family:inherit;font-size:.875rem;transition:border-color .15s,color .15s;display:block}.visauth-submit:hover{border-color:var(--accent-cyan);color:#fff}.visauth-links{text-align:center;margin-top:16px;font-size:.75rem}.visauth-link{color:var(--text-body);text-decoration:none}.visauth-link:hover{color:var(--text-emphasis);text-decoration:none}.visauth-link--accent{color:var(--accent-cyan)}.visauth-link--accent:hover{color:#fff}.visauth-sep{color:var(--border-strong);margin:0 6px}.visauth-page{--visauth-accent:#4a90e233;--visauth-accent-glow:#4a90e226;background:linear-gradient(135deg,#0a0a0a 0%,#1a1a1a 30%,#0f0f0f 70%,#050505 100%);position:relative}.visauth-page nav,.visauth-page .sg-nav,.visauth-page .visnav,.visauth-page footer,.visauth-page .welcome-bar{display:none!important}.visauth-page main,.visauth-page>div{display:contents!important}.visauth-page:before{content:"";pointer-events:none;z-index:0;background-image:linear-gradient(#ffffff05 1px,#0000 1px),linear-gradient(90deg,#ffffff05 1px,#0000 1px);background-size:40px 40px;animation:30s linear infinite visauth-grid-move;position:fixed;inset:0}.visauth-page:after{content:"";background:radial-gradient(circle, var(--visauth-accent) 0%, transparent 70%);pointer-events:none;z-index:0;border-radius:50%;width:300px;height:300px;animation:15s ease-in-out infinite alternate visauth-color-shift;position:fixed;top:20%;right:10%}@keyframes visauth-grid-move{0%{transform:translate(0)}to{transform:translate(40px,40px)}}@keyframes visauth-color-shift{0%{background:radial-gradient(circle, var(--visauth-accent) 0%, transparent 70%);transform:translate(0)}33%{background:radial-gradient(circle,#c0c0c006 0%,#0000 70%);transform:translate(-20px,20px)}66%{background:radial-gradient(circle,#4a90e205 0%,#0000 70%);transform:translate(20px,-20px)}to{background:radial-gradient(circle, var(--visauth-accent-glow) 0%, transparent 70%);transform:translate(0)}}.visauth-page .visauth-container{z-index:1;flex-direction:column;justify-content:center;align-items:center;max-width:400px;min-height:100vh;margin:0 auto;padding:20px;display:flex;position:relative}.visauth-page .visauth-card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#14141499;border:1px solid #ffffff1f;border-radius:2px;width:320px;padding:30px 25px;box-shadow:0 4px 12px #0000004d}.visauth-page .visauth-hero{font-family:var(--font-mono);letter-spacing:.15em;text-transform:uppercase;color:#fff;white-space:nowrap;border-right:2px solid var(--text-primary);margin-bottom:2rem;font-size:3rem;font-weight:400;overflow:visible}.visauth-page .visauth-hero-sub{font-family:var(--font-mono);color:#fff6;letter-spacing:.05em;white-space:nowrap;border-right:1px solid #ffffff4d;margin-bottom:2rem;font-size:.85rem;overflow:hidden}.visauth-page .visauth-hero-sub:before{content:"$ ";color:#6b9b9b99}.visauth-page .visauth-input{color:#fff;font-family:var(--font-mono);background:#1e1e1ecc;border:1px solid #ffffff26;border-radius:2px;padding:12px 15px;font-size:.9rem;transition:all .3s}.visauth-page .visauth-input:focus{box-shadow:0 0 8px var(--visauth-accent), 0 0 4px #ffffff1a, inset 0 0 8px #ffffff08;background:#282828e6;border-color:#fff6}.visauth-page .visauth-input::placeholder{color:#ffffff4d;font-family:var(--font-mono)}.visauth-page .visauth-label{color:#fffc;transition:color .3s}.visauth-page .visauth-submit{color:#fff;font-family:var(--font-mono);letter-spacing:.1em;background:linear-gradient(135deg,#1e1e1ee6,#141414f2);border:1px solid #ffffff40;border-radius:2px;padding:12px 30px;font-size:.85rem;font-weight:600;transition:all .3s;position:relative;overflow:hidden}.visauth-page .visauth-submit:before{content:"";background:linear-gradient(90deg, transparent, var(--visauth-accent-glow), transparent);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.visauth-page .visauth-submit:hover{box-shadow:0 0 12px var(--visauth-accent), 0 0 6px #ffffff1a, inset 0 0 12px #ffffff08;background:linear-gradient(135deg,#282828f2,#1e1e1e);border-color:#ffffff73;transform:translateY(-1px)}.visauth-page .visauth-submit:hover:before{left:100%}.visauth-page .visauth-checkbox{appearance:none;cursor:pointer;background:#1e1e1ecc;border:1px solid #ffffff4d;border-radius:2px;flex-shrink:0;width:16px;min-width:16px;height:16px;min-height:16px;margin:0;transition:all .2s;position:relative}.visauth-page .visauth-checkbox:checked{background:#ffffff1a;border-color:#fff9}.visauth-page .visauth-checkbox:checked:after{content:"x";color:#fff;font-family:var(--font-mono);font-size:.6875rem;font-weight:700;line-height:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.visauth-page .visauth-checkbox-label{cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;align-items:center;margin:0;padding:8px 0;display:flex}.visauth-page .visauth-checkbox-text{font-family:var(--font-mono);color:#ffffff80;margin-left:8px;font-size:.8rem;transition:color .3s}.visauth-page .visauth-checkbox-label:hover .visauth-checkbox-text{color:#fffc}.visauth-page .visauth-checkbox-label:hover .visauth-checkbox{border-color:#ffffff80}.visauth-page .visauth-link{color:#ffffff80;font-family:var(--font-mono);font-size:.8rem;transition:all .3s}.visauth-page .visauth-link:hover{color:#fff;text-shadow:0 0 8px var(--visauth-accent), 0 0 4px #ffffff26}.visauth-page .visauth-error{color:#fc4;background:#322a00cc;border:1px solid #ffcc444d;border-radius:2px;margin-bottom:1rem;padding:8px 12px;font-size:.85rem}.visauth-page .visauth-footer{font-family:var(--font-mono);color:#fff3;letter-spacing:.05em;margin-top:2rem;font-size:.7rem}@media (max-width:768px){.visauth-page .visauth-hero{letter-spacing:.1em;font-size:2rem}.visauth-page .visauth-card{width:90%;max-width:320px}}.tag{border:1px solid;border-color:var(--border-base);background-color:var(--bg-surface);color:var(--text-muted);border-radius:0;padding:3px 10px;font-size:.75rem;font-weight:700;line-height:1;display:inline-block}.tag-blue{color:#003954;background:#7ac8ff;border-color:#a7eaff}.tag-purple{color:#3e1756;background:#ac8fc1;border-color:#fcc7ff}.tag-yellow{color:#926d19;background:#ffedb9;border-color:#ffe7ba}.tag-orange{color:#713900;background:#ffba65;border-color:#ffd78b}.tag-green{color:#155724;background-color:#94e0a7;border-color:#b4ffc5}.tag-tl{margin:5px;position:absolute;top:0;left:0}.tag-tr{margin:5px;position:absolute;top:0;right:0}.tag-darkgray{border-color:var(--border-base);color:var(--text-dim);background-color:var(--bg-base)}.markdown-rendered{color:var(--md-text);word-wrap:break-word;font-size:1rem;line-height:1.8}.markdown-rendered h1,.markdown-rendered h2,.markdown-rendered h3,.markdown-rendered h4,.markdown-rendered h5,.markdown-rendered h6{color:var(--md-heading);margin-top:.625rem;font-weight:600;line-height:1.4}.markdown-rendered h1{border-bottom:1px solid var(--md-border);margin-bottom:1.5rem;padding-bottom:.3rem;font-size:2rem}.markdown-rendered h2{border-bottom:1px solid var(--md-border);color:#93b5c9;margin-bottom:1.25rem;padding-bottom:.25rem;font-size:1.75rem}.markdown-rendered h3{color:#9aa8b5;margin-bottom:1rem;font-size:1.5rem}.markdown-rendered h4{color:#8795a2;margin-bottom:.875rem;font-size:1.25rem}.markdown-rendered h5{color:#76848f;margin-bottom:.75rem;font-size:1.125rem}.markdown-rendered h6{color:#6a767f;margin-bottom:.75rem;font-size:1rem}.markdown-rendered>:first-child{margin-top:0}.markdown-rendered p{margin:.75rem 0}.markdown-rendered p:last-child{margin-bottom:0}.markdown-rendered strong{color:var(--md-heading);font-weight:600}.markdown-rendered em{color:var(--md-text)}.markdown-rendered a{color:#58a6ff;text-decoration:none}.markdown-rendered a:hover{text-decoration:underline}.markdown-rendered ul{margin:.5rem 0;padding-left:1.25rem}.markdown-rendered ol{margin:.5rem 0;padding-left:2.5rem}.markdown-rendered li{margin:.25rem 0;line-height:1.8}.markdown-rendered ul>li{list-style-type:disc}.markdown-rendered ol>li{list-style-type:decimal}.markdown-rendered ul ul>li{list-style-type:circle}.markdown-rendered ul ul ul>li{list-style-type:square}.markdown-rendered li>p{margin:.25rem 0}.markdown-rendered h1+ul,.markdown-rendered h1+ol,.markdown-rendered h2+ul,.markdown-rendered h2+ol,.markdown-rendered h3+ul,.markdown-rendered h3+ol,.markdown-rendered h4+ul,.markdown-rendered h4+ol{margin-top:0}.markdown-rendered ul ul,.markdown-rendered ul ol,.markdown-rendered ol ul,.markdown-rendered ol ol{margin:.25rem 0;padding-left:1.25rem}.markdown-rendered blockquote{color:#8b949e;background:#388bfd0a;border-left:3px solid #3b82f6;margin:1rem 0;padding:.25rem 1rem}.markdown-rendered blockquote p:first-child{margin-top:0}.markdown-rendered blockquote p:last-child{margin-bottom:0}.markdown-rendered code{font-family:var(--font-mono);color:var(--md-heading);background:#6e768133;border-radius:4px;padding:.2em .4em;font-size:.85em}.markdown-rendered pre{border:1px solid var(--md-border);background:#0d1117;border-radius:6px;margin:1rem 0;padding:1rem;overflow-x:auto}.markdown-rendered pre code{color:var(--md-text);background:0 0;border:none;border-radius:0;padding:0;font-size:.8125rem;line-height:1.5}.markdown-rendered hr{background:var(--md-border);border:none;height:1px;margin:1.5rem 0}.markdown-rendered table{border-collapse:collapse;width:100%;margin:1rem 0;font-size:.875rem}.markdown-rendered th,.markdown-rendered td{border:1px solid var(--md-border);text-align:left;padding:.5rem .75rem}.markdown-rendered th{color:var(--md-heading);background:#161b22;font-weight:600}.markdown-rendered td{color:var(--md-text)}.markdown-rendered tr:nth-child(2n) td{background:#6e76810f}.markdown-rendered img{border-radius:6px;max-width:100%;height:auto;margin:.5rem 0}.markdown-rendered li input[type=checkbox]{vertical-align:middle;margin-right:.4em}.hljs,.hljs-tag,.hljs-subst{color:#a2a2a2}code{color:#ff864c;font-family:var(--font-mono)}.btn{color:var(--text-body);border:1px solid var(--border-strong);background:var(--bg-surface);font-size:.8125rem;line-height:1.4;font-family:var(--font-mono);cursor:pointer;border-radius:0;align-items:center;gap:4px;padding:6px 14px;text-decoration:none;transition:all .15s;display:inline-flex}.btn:hover{color:var(--text-emphasis);background:var(--bg-surface-raised);border-color:var(--color-secondary,#6b9b9b);text-decoration:none}.btn--secondary{color:var(--text-dim);border-color:var(--border-base);background:0 0}.btn--secondary:hover{color:var(--text-emphasis);border-color:var(--text-dim);background:0 0}.btn--secondary.is-active{color:var(--text-primary);border-color:var(--accent-cyan)}.btn--primary{color:var(--accent-cyan);background-color:#1a2e38;border-color:#3a7a94}.btn--primary:hover{color:#a0ddf0;border-color:var(--accent-cyan);background-color:#243d4a}.btn--warning{color:var(--accent-warning);border-color:#8b5a2b}.btn--warning:hover{color:#e5a88a;border-color:var(--accent-warning)}.btn--danger{color:#af5252;border-color:#5c2d2d}.btn--danger:hover{color:#d17878;border-color:#af5252}.btn--cta{padding:var(--gap-sm) var(--gap-md);background-image:repeating-linear-gradient(0deg,#0000 0 2px,#0000001f 2px 3px);background-size:100% 3px;font-size:1rem;animation:4s linear infinite crt-scan}@keyframes crt-scan{0%{background-position:0 0}to{background-position:0 3px}}.btn--block{width:100%;display:block}.btn--sm{padding:3px 8px;font-size:.75rem}.btn-naked{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0}button.btn{font-family:inherit}a.btn{white-space:nowrap}:root{--input-bg:#0a0a0a;--input-bg-focus:#0e0e0e;--input-border:#191919;--input-border-focus:#232c2d;--input-text:var(--color-edit-text,#ccc);--input-placeholder:#333;--input-disabled-bg:#252525;--input-radius:0;--input-font:.9375rem;--input-padding:.375rem .75rem;--input-padding-sm:.25rem .5rem;--input-padding-lg:.5rem 1rem}.form-input,.form-control{background-color:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--input-radius);width:100%;color:var(--input-text);font-size:var(--input-font);padding:var(--input-padding);appearance:none;outline:none;font-family:inherit;line-height:1.5;transition:border-color .15s;display:block}.form-input:focus,.form-control:focus{background-color:var(--input-bg-focus);border-color:var(--input-border-focus);color:var(--input-text);outline:none}.form-input::placeholder,.form-control::placeholder{color:var(--input-placeholder)}.form-control::-webkit-input-placeholder{color:var(--input-placeholder)}.form-input:disabled,.form-input[readonly],.form-control:disabled,.form-control[readonly]{background-color:var(--input-disabled-bg);opacity:1;cursor:not-allowed}.form-input--sm,.form-control-sm{height:calc(1.5em + .5rem + 2px);padding:var(--input-padding-sm);font-size:.875rem;line-height:1.5}.form-input--lg,.form-control-lg{padding:var(--input-padding-lg);font-size:1.0625rem;line-height:1.5}textarea.form-input,textarea.form-control{resize:vertical;min-height:2.5rem}.form-select,.custom-select{background-color:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--input-radius);width:100%;color:var(--input-text);font-size:var(--input-font);padding:var(--input-padding);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='6'%3E%3Cpath d='M0 0l6 6 6-6' fill='none' stroke='%23666' stroke-width='1.5'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;outline:none;padding-right:2rem;font-family:inherit;line-height:1.5;display:block}.form-select:focus,.custom-select:focus{background-color:var(--input-bg-focus);border-color:var(--input-border-focus);outline:none}.form-select:disabled,.custom-select:disabled{background-color:var(--input-disabled-bg);opacity:1;cursor:not-allowed}.form-input[type=date],.form-input[type=datetime-local],.form-input[type=time],.form-input[type=month],.form-input[type=week],.form-control[type=date],.form-control[type=datetime-local],.form-control[type=time],.form-control[type=month],.form-control[type=week]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.form-input[type=color],.form-control[type=color]{cursor:pointer;height:2.25rem;padding:.25rem}.form-input[type=number],.form-control[type=number]{-moz-appearance:textfield}.form-input[type=number]::-webkit-inner-spin-button{opacity:.4}.form-input[type=number]::-webkit-outer-spin-button{opacity:.4}.form-control[type=number]::-webkit-inner-spin-button{opacity:.4}.form-control[type=number]::-webkit-outer-spin-button{opacity:.4}.form-check{cursor:pointer;color:var(--gray-medium,#9ca3af);align-items:center;gap:.5rem;font-size:.875rem;display:inline-flex}.form-check input[type=checkbox],.form-check input[type=radio]{accent-color:var(--accent-yellow,#eab308);cursor:pointer;margin:0}.form-check-input{margin:0;position:relative}.form-check-label{margin-bottom:0}.form-field,.form-group{margin-bottom:1rem}.form-label{color:var(--gray-medium,#9ca3af);margin-bottom:.375rem;font-size:.875rem;display:block}.form-hint{color:var(--gray-dark,#4b5563);margin-top:.25rem;font-size:.75rem;display:block}.form-row{gap:var(--gap-md,12px);flex-wrap:wrap;display:flex}.form-row>.col,.form-row>[class*=col-]{flex:1 1 0;min-width:0}.input-group{flex-wrap:wrap;align-items:stretch;width:100%;display:flex;position:relative}.input-group>.form-input,.input-group>.form-control{flex:auto;width:1%;min-width:0;position:relative}.input-group-prepend,.input-group-append{display:flex}.input-group-text{padding:var(--input-padding);font-size:var(--input-font);color:var(--text-body);background-color:var(--bg-surface-raised);border:1px solid var(--input-border);align-items:center;display:flex}.form-inline{align-items:center;gap:var(--gap-sm,8px);flex-flow:wrap;display:flex}.form-inline .form-input,.form-inline .form-select,.form-inline .form-control,.d-inline-flex .form-control{width:auto;display:inline-block}.alert{border:1px solid #0000;border-radius:0;margin-bottom:.5rem;padding:.4rem .75rem;position:relative}.alert.compact{padding:.1rem .4rem}.alert-link{font-weight:500}.alert-primary{color:#ddeaf9;background-color:#486380;border-color:#667f9a}.alert-primary .alert-link{color:#b9d1ea}.alert-secondary{color:#697075;background-color:#313131;border-color:#434548}.alert-secondary .alert-link{color:#919192}.alert-warning{color:#856404;background-color:#ffdf9d;border-color:#ffe7af}.alert-warning .alert-link{color:#6d4600}.alert-light{color:#b9b9b9;background-color:#151515;border-color:#212121}.alert-light:hover{background-color:#191919;border-color:#2f2f2f}.alert-light .alert-link,.alert-light a{color:#3c3c3c}.alert-success{color:#155724;background-color:#a0d48c;border-color:#a4f5b6}.alert-danger{color:#d8afb3;background-color:#981420;border-color:#bf3342}.alert-danger .alert-link{color:#f66}.table td,.table th{text-align:center;vertical-align:middle;background-color:#202020;border:none;padding:2px 0;font-size:.7rem;line-height:1.1}.table td{color:var(--text-secondary)}.table th{color:var(--text-muted)}.table tr th,.table tr td{border-bottom:1px solid #161515}.table thead tr th{color:var(--text-dim);background-color:var(--bg-surface);border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);line-height:1.5}thead tr th{color:var(--text-dim)}.table-dark{color:#aaa;background-color:#1d1e1f}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:#8484840d}.table-dark td,.table-dark th,.table-dark thead th{border-color:#111}.handle{cursor:grab}.admin-toolbar-wrapper{top:var(--navbar-height);z-index:100;width:100%;margin-bottom:1rem;transition:top .3s;position:sticky}.admin-toolbar{background:var(--bg-surface-raised);border-bottom:1px solid var(--border-base);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:8px 15px;display:flex}.admin-toolbar-btn{color:var(--text-body);border:1px solid var(--border-strong);background:var(--bg-surface);border-radius:0;align-items:center;gap:4px;padding:4px 10px;font-size:.75rem;line-height:1.4;text-decoration:none;transition:all .15s;display:inline-flex}.admin-toolbar-btn:hover{color:var(--text-emphasis);background:var(--bg-surface-raised);border-color:var(--color-secondary,#6b9b9b);text-decoration:none}.admin-toolbar-btn i{opacity:.7;font-size:.6875rem}.page-console{margin-top:var(--gap-lg);margin-bottom:var(--gap-lg);background:var(--bg-surface);border:1px solid var(--border-base);overflow:hidden}.page-console-header{padding:var(--gap-xs) var(--gap-md);background:var(--bg-surface-raised);border-bottom:1px solid var(--border-base);cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--text-muted);font-size:.6875rem;line-height:1;font-family:var(--font-mono);letter-spacing:.05em;justify-content:space-between;align-items:center;display:flex}.page-console-header:hover{color:var(--text-secondary)}.page-console-title:before{content:">";color:var(--text-dim);margin-right:var(--gap-xs)}.page-console-toggle{color:var(--text-dim);font-size:.875rem;line-height:1}.page-console-toggle:before{content:"−"}.page-console.is-collapsed .page-console-toggle:before{content:"+"}.page-console-body{color:#777;max-height:160px;font-size:.6875rem;line-height:1;font-family:var(--font-mono);padding:0;overflow-y:auto}.page-console.is-collapsed .page-console-body{display:none}.page-console-body ul{margin:0;padding:0;list-style:none}.page-console-body li{padding:var(--gap-xs) var(--gap-md);border-bottom:1px solid #1e1e1e;margin-bottom:0}.page-console-body li:last-child{border-bottom:none}.page-console-body .log-time{color:var(--text-dim);margin-right:var(--gap-sm)}.page-console-body .log-empty{color:var(--text-dim);padding:var(--gap-xs) var(--gap-md)}.ascii-frame{border:1px solid var(--border-strong);padding:var(--gap-md);margin-bottom:var(--gap-md);background:var(--bg-surface)}.ascii-section-title{letter-spacing:.05em;color:var(--text-primary);margin-bottom:var(--gap-md);padding-bottom:var(--gap-sm);border-bottom:1px solid var(--border-base);font-size:1rem;font-weight:500}.ascii-section-title:before{content:"> ";color:var(--text-dim);font-weight:400}.ascii-section-title--muted{color:var(--text-dim)}.ascii-divider{color:#333;letter-spacing:.3em;text-align:center;margin:var(--gap-md) 0;-webkit-user-select:none;user-select:none;font-size:.75rem}.ascii-divider:before{content:"── ── ── ── ──"}.ascii-badge{letter-spacing:.08em;color:var(--text-secondary);text-transform:uppercase;font-size:.6875rem;display:inline-block}.ascii-badge:before{content:"[ ";color:var(--text-dim)}.ascii-badge:after{content:" ]";color:var(--text-dim)}.ascii-prompt{color:#777;font-size:.75rem;font-family:var(--font-mono)}.ascii-prompt:before{content:"$ ";color:var(--accent-cyan)}.ascii-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary);font-size:.6875rem;font-weight:500}.ascii-label:before{content:"> ";color:var(--text-dim)}.card-clickable{cursor:pointer;transition:border-color .2s;position:relative}.card-clickable:hover{border-color:var(--accent-cyan)}.card-link-overlay{z-index:1;position:absolute;inset:0}.card-clickable a:not(.card-link-overlay),.card-clickable .tag{z-index:2;position:relative}.grid-s,.grid-md,.grid-m,.grid-ml,.grid-l{grid-template-columns:repeat(auto-fill, minmax(var(--grid-min), 1fr));gap:var(--grid-gap,var(--gap-md));display:grid}.grid-s{--grid-min:200px}.grid-md{--grid-min:220px}.grid-m{--grid-min:300px}.grid-ml{--grid-min:400px}.grid-l{--grid-min:480px}.square-media{aspect-ratio:1;background:var(--bg-surface);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.square-media>img,.square-media .square-media-img{background:var(--bg-surface-raised);aspect-ratio:auto;max-width:none;max-height:none;transition:transform .18s;display:block}.square-media.is-landscape>img,.square-media.is-landscape .square-media-img{width:100%;height:auto}.square-media.is-portrait>img,.square-media.is-portrait .square-media-img{width:auto;height:100%}.square-media.is-square>img,.square-media.is-square .square-media-img{width:100%;height:100%}[data-view=cover]{grid-template-columns:repeat(auto-fill, minmax(var(--vt-grid-min,230px), 1fr));gap:var(--vt-gap,var(--gap-md));display:grid}[data-view=cover][data-density=compact]{--vt-grid-min:140px;--vt-gap:4px}[data-view=cover][data-density=normal]{--vt-grid-min:230px}[data-view=cover][data-density=comfortable]{--vt-grid-min:380px}[data-view=list]{flex-direction:column;gap:1px;display:flex}[data-view=list]>*{align-items:center;gap:var(--gap-md);padding:var(--gap-sm) var(--gap-md);min-height:var(--vt-row-h,100px);border-bottom:1px solid var(--border-subtle,#222);transition:background .1s;display:flex}[data-view=list]>:hover{background:var(--bg-hover,#222)}[data-view=list][data-density=compact]{--vt-row-h:60px}[data-view=list][data-density=normal]{--vt-row-h:100px}[data-view=list][data-density=comfortable]{--vt-row-h:140px}[data-view=list] .vt-cover{width:var(--vt-row-h,100px);height:var(--vt-row-h,100px);flex-shrink:0;overflow:hidden}[data-view=list] .vt-cover img{object-fit:cover;width:100%;height:100%}[data-view=list] .vt-info{flex-direction:column;flex:1;justify-content:center;gap:2px;min-width:0;display:flex}[data-view=list] .vt-title{color:var(--text-primary,#ddd);white-space:nowrap;text-overflow:ellipsis;font-size:.9375rem;font-weight:600;overflow:hidden}[data-view=list] .vt-meta{color:var(--text-muted,#666);font-size:.75rem}[data-view=list] .vt-desc{color:var(--text-body,#888);text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;display:none;overflow:hidden}[data-view=list][data-density=comfortable] .vt-desc{display:block}[data-view=cover] .vt-cover,[data-view=cover] .vt-info,[data-view=cover] .vt-list-only,[data-view=list] .vt-cover-only{display:none}.vt-controls{align-items:center;gap:var(--gap-sm);min-width:0;max-width:100%;padding:var(--gap-sm) 0;color:var(--text-muted,#666);-webkit-user-select:none;user-select:none;flex-wrap:wrap;font-size:.75rem;display:flex}.vt-controls button{border:1px solid var(--border-base,#333);color:var(--text-body,#888);cursor:pointer;letter-spacing:.03em;background:0 0;padding:4px 10px;font-family:inherit;font-size:.6875rem;transition:border-color .15s,color .15s}.vt-controls button:hover{border-color:var(--border-strong,#444);color:var(--text-primary,#ddd)}.vt-controls button.active{border-color:var(--accent-cyan,#7ec8e3);color:var(--accent-cyan,#7ec8e3)}.vt-controls .vt-sep{background:var(--border-base,#333);width:1px;height:16px}.card-grid{gap:var(--gap-md);margin-bottom:var(--gap-lg);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));display:grid}.card{padding:var(--gap-md);background:var(--bg-surface);border:1px solid var(--border-strong);cursor:pointer;color:inherit;text-decoration:none;transition:border-color .2s;display:block;position:relative}.card:hover{border-color:var(--accent-cyan)}.card-title{color:var(--text-primary);font-size:1rem;font-weight:700;line-height:1.3}.card-title a{color:inherit;text-decoration:none}.card-title a:hover{color:var(--accent-cyan)}.card-thumb{aspect-ratio:2;width:100%;margin-bottom:var(--gap-sm);background-color:#0a0a0a;background-position:50%;background-size:cover}.card--cover{aspect-ratio:2;background-color:#0a0a0a;background-position:50%;background-size:cover;flex-direction:column;justify-content:flex-end;padding:0;display:flex;overflow:hidden}.card--cover .card-overlay{padding:var(--gap-lg) var(--gap-md) var(--gap-md);background:linear-gradient(#0000 0%,#0006 40%,#000000d9 100%);display:block}.card--cover .card-title{text-shadow:0 1px 3px #000c;font-size:.875rem}.card--cover .card-actions{top:var(--gap-sm);right:var(--gap-sm);gap:var(--gap-xs);opacity:0;transition:opacity .2s;display:flex;position:absolute}.card--cover:hover .card-actions{opacity:1}.card-action{color:var(--text-emphasis);cursor:pointer;padding:0 var(--gap-xs);background:#0009;font-size:.6875rem;line-height:1.6}.card-action:hover{color:#fff}.card-desc{color:var(--text-dim);margin-top:var(--gap-xs);font-size:.875rem}.card-badge{top:var(--gap-sm);right:var(--gap-sm);color:#e8a73b;padding:0 var(--gap-xs);border:1px solid #e8a73b;font-size:.625rem;line-height:1.4;position:absolute}.card-badge--muted{color:var(--text-dim);border-color:var(--border-strong)}.msg-grid{--msg-grid-min:240px;grid-template-columns:repeat(auto-fill, minmax(var(--msg-grid-min), 1fr));gap:var(--gap-sm);display:grid}.msg-grid-s{--msg-grid-min:180px}.msg-grid-l{--msg-grid-min:320px}.msg-grid-xl{--msg-grid-min:400px}.lang-switcher{align-items:center;gap:var(--gap-xs);font-size:.6875rem;display:flex}.lang-switcher a{color:var(--text-dim);padding:0 var(--gap-sm);border:1px solid var(--border-base);line-height:1.8;text-decoration:none;transition:border-color .2s,color .2s}.lang-switcher a:hover{color:var(--text-emphasis);border-color:var(--text-dim)}.lang-switcher a.is-active{color:var(--text-primary);border-color:var(--accent-cyan)}.info-table{border-collapse:collapse;width:100%;font-size:.8125rem}.info-table th,.info-table td{border-bottom:1px solid var(--border-base);padding:var(--gap-sm) var(--gap-md);text-align:left;vertical-align:top}.info-table th{color:var(--text-muted);white-space:nowrap;font-weight:400}.info-table td{color:var(--text-emphasis)}.info-table tr:last-child th,.info-table tr:last-child td{border-bottom:none}.page-title-box{border:1px solid var(--border-strong);margin-bottom:var(--gap-lg);background:0 0}.page-title-box-title{text-align:left;color:var(--text-primary);padding:var(--gap-md);text-transform:uppercase;margin:0;font-size:1.25rem;font-weight:500;line-height:1}.page-title-box-title:before{content:"> ";color:var(--text-dim);font-weight:400}.page-title-box-meta{text-align:left;color:var(--text-muted);padding:0 var(--gap-md) var(--gap-md);margin:0;font-size:.8125rem}.page-title-box-meta a{color:var(--text-link)}.page-title-box-divider{border:none;border-top:1px solid var(--border-base);margin:0}.page-title-box-tags{gap:var(--gap-xs);padding:var(--gap-md);flex-wrap:wrap;display:flex}.page-title-box-content{padding:var(--gap-md);color:silver;font-size:.8125rem}.page-title-box-content a{color:var(--text-link)}.page-title-box-actions{padding:var(--gap-md);align-items:center;gap:var(--gap-sm);flex-wrap:wrap;margin:0;display:flex}.page-title-box--with-avatar{align-items:flex-start;display:flex}.page-title-box-avatar{object-fit:cover;border:1px solid var(--border-strong);width:100px;height:100px;margin:var(--gap-md) 0 var(--gap-md) var(--gap-md);flex:0 0 100px}.page-title-box-body{flex:1;min-width:0}.para-title{color:var(--text-primary);margin:0 0 var(--gap-xs) 0;font-size:1rem;font-weight:500;line-height:1}.para-title:before{content:"> ";color:var(--text-dim);font-weight:400}.para-title-sub{color:var(--text-muted);margin:0 0 var(--gap-md) 0;font-size:.8125rem}.page-wrap{font-family:var(--font-mono);background:var(--bg-base);color:silver;padding:0 0 var(--gap-lg);margin:0 0 var(--gap-lg)}.page-wrap a{color:var(--accent-cyan)}.page-wrap a:hover{color:#9ee}.page-wrap input,.page-wrap select,.page-wrap textarea{background:var(--bg-surface-raised);border:1px solid var(--text-dim);color:silver;padding:6px 10px}.page-wrap label{color:var(--text-emphasis);margin-top:10px;display:block}.project-box{border:1px solid var(--border-strong);padding:var(--gap-md);margin-bottom:var(--gap-md)}.project-card{border:1px solid var(--border-strong);padding:var(--gap-md);margin-bottom:var(--gap-md);color:inherit;text-decoration:none;transition:border-color .2s;display:block}.project-card:hover{border-color:var(--accent-cyan);color:inherit;text-decoration:none}.project-card-head{flex-wrap:wrap;align-items:center;gap:.625rem;display:flex}.project-card-title{color:var(--text-primary);font-size:1rem}.project-card-desc{color:var(--text-body);margin-top:.375rem;font-size:.875rem}.project-status{padding:.125rem var(--gap-sm);border:1px solid var(--text-dim);display:inline-block}.project-status.planning{color:var(--text-body)}.project-status.active,.project-status.project-status-in_progress{color:var(--accent-cyan)}.project-status.completed,.project-status.project-status-completed{color:#6a9955}.project-status.paused{color:var(--accent-warning)}.project-status.project-status-pending{color:var(--text-body)}.project-status.project-status-unknow{color:var(--text-dim);border-color:var(--border-strong)}.project-summary{color:#8fbc8f;margin:var(--gap-md) 0}.project-risk-high{color:var(--accent-warning)}.project-risk-mid{color:#dcdcaa}.project-pagination{align-items:center;gap:var(--gap-xs);padding:var(--gap-md) 0;font-size:.8125rem;display:flex}.project-pagination a{padding:var(--gap-xs) 10px;border:1px solid var(--border-strong);color:var(--accent-cyan);text-decoration:none;transition:border-color .2s}.project-pagination a:hover{border-color:var(--accent-cyan);color:#9ee}.project-pagination .current{padding:var(--gap-xs) 10px;border:1px solid var(--accent-cyan);color:#fff;background:#7ec8e326}.project-pagination .disabled{padding:var(--gap-xs) 10px;color:var(--text-dim)}.project-pagination .ellipsis{padding:var(--gap-xs) var(--gap-xs);color:var(--text-dim)}.project-table{border-collapse:collapse;width:100%;font-size:.8125rem}.project-table th,.project-table td{border:1px solid var(--border-strong);padding:var(--gap-sm) var(--gap-md);text-align:left}.project-table th{color:var(--text-emphasis);background:var(--bg-surface-raised)}.project-title,.project-page-title{margin-bottom:var(--gap-md);padding:var(--gap-md);border:1px solid var(--text-dim);color:var(--text-secondary);text-align:left;font-size:.875rem;font-weight:500}.dropdown{position:relative}.dropdown-menu{z-index:1000;background:var(--bg-surface);border:1px solid var(--border-base);border-radius:0;min-width:160px;margin:2px 0 0;padding:6px 0;display:none;position:absolute;top:100%;left:0}.dropdown-menu.show{display:block}.dropdown-menu-right{left:auto;right:0}.dropdown-item{clear:both;width:100%;color:var(--text-emphasis);text-align:inherit;white-space:nowrap;background-color:#0000;border:0;padding:8px 16px;font-size:.8125rem;text-decoration:none;transition:background .1s,color .1s;display:block}.dropdown-item:hover,.dropdown-item:focus{color:var(--text-primary);background-color:var(--bg-hover);text-decoration:none}.dropdown-item.active{color:#fff;background-color:var(--border-base)}.dropdown-header{color:var(--text-body);white-space:nowrap;margin-bottom:0;padding:6px 16px;font-size:.75rem;display:block}.dropdown-divider{border-top:1px solid #2a2a2a;height:0;margin:4px 0;overflow:hidden}.modal{z-index:1050;background-color:#0009;outline:0;width:100%;height:100%;display:none;position:fixed;top:0;left:0;overflow:hidden auto}.modal.show{display:block}.modal-dialog{pointer-events:none;width:auto;max-width:500px;margin:1.75rem auto;position:relative}.modal .modal-dialog{pointer-events:auto}.modal-content{pointer-events:auto;background-color:var(--bg-surface-raised);border:1px solid var(--border-strong);border-radius:0;outline:0;flex-direction:column;width:100%;display:flex;position:relative}.modal-header{padding:var(--gap-md) var(--gap-lg);border-bottom:1px solid var(--border-base);justify-content:space-between;align-items:flex-start;display:flex}.modal-title{color:var(--text-primary);margin-bottom:0;font-size:1rem;line-height:1.5}.modal-body{padding:var(--gap-lg);color:var(--text-emphasis);flex:auto;position:relative}.modal-footer{padding:var(--gap-md) var(--gap-lg);border-top:1px solid var(--border-base);justify-content:flex-end;align-items:center;gap:var(--gap-sm);display:flex}.close{float:right;color:var(--text-body);text-shadow:none;opacity:.7;cursor:pointer;-webkit-appearance:none;background:0 0;border:0;padding:0;font-size:1.5rem;font-weight:700;line-height:1}.close:hover{color:var(--text-emphasis);opacity:1}button.close{background-color:#0000;border:0;padding:0}.badge{text-align:center;white-space:nowrap;vertical-align:baseline;color:var(--text-emphasis);background-color:var(--border-base);border-radius:0;padding:3px 8px;font-size:.75rem;font-weight:700;line-height:1;display:inline-block}.badge-primary{color:#afddf3;background-color:#177486}.badge-secondary{color:var(--text-secondary);background-color:#33363a}.badge-success{color:#a0d48c;background-color:#2d5f3a}.badge-danger{color:#d8afb3;background-color:#981420}.badge-warning{color:#ffdf9d;background-color:#856404}.img-fluid{max-width:100%;height:auto}.img-cover{object-fit:cover;width:100%;height:100%}.img-thumbnail{background-color:var(--bg-surface);border:1px solid var(--border-subtle);max-width:100%;height:auto;padding:0}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ss-popover{z-index:1060;max-width:260px;padding:var(--gap-sm) var(--gap-md);background:var(--bg-surface-raised);border:1px solid var(--border-strong);color:var(--text-emphasis);pointer-events:none;opacity:0;border-radius:0;font-size:.75rem;line-height:1.4;transition:opacity .15s;position:absolute}.ss-popover.show{opacity:1;pointer-events:auto}.list-group{flex-direction:column;margin-bottom:0;padding-left:0;display:flex}.list-group-item{padding:5px;font-size:.75rem}.site-footer{border-top:1px solid var(--border-base);background:var(--bg-surface-raised);color:var(--text-muted);margin-top:var(--gap-xl);font-size:.6875rem;font-family:var(--font-mono)}.site-footer-inner{justify-content:space-between;align-items:center;gap:var(--gap-sm);padding:var(--gap-sm) var(--gap-lg);flex-wrap:wrap;display:flex}.site-footer-copy a{color:var(--text-body);text-decoration:none}.site-footer-copy a:hover{color:var(--text-emphasis)}.site-footer-perf{color:var(--text-dim);margin-left:var(--gap-md)}.site-footer-lang{align-items:center;gap:var(--gap-sm);display:flex}.site-footer-lang a{color:var(--text-dim);text-decoration:none}.site-footer-lang a:hover{color:var(--text-emphasis)}.site-footer-lang a.is-active{color:var(--text-primary);font-weight:600}.site-footer-sep{color:#333}.flex{display:flex}.inline-flex{display:inline-flex}.inline-block{display:inline-block}.inline{display:inline}.block{display:block}.hidden{display:none}.grid{display:grid}.contents{display:contents}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.top-0{top:0}.right-0{right:0}.left-0{left:0}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-baseline{align-items:baseline}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.flex-wrap{flex-wrap:wrap}.flex-col{flex-direction:column}.min-w-0{min-width:0}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.w-full{width:100%}.w-0\.5{width:.125rem}.w-2{width:.5rem}.w-4{width:1rem}.w-6{width:1.5rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.h-2{height:.5rem}.h-3{height:.75rem}.h-6{height:1.5rem}.h-12{height:3rem}.h-full{height:100%}.max-w-xs{max-width:20rem}.max-w-sm{max-width:24rem}.max-w-2xl{max-width:42rem}.max-w-5xl{max-width:clamp(64rem,55vw,90rem)}.max-w-6xl{max-width:clamp(72rem,60vw,100rem)}.max-w-4xl{max-width:56rem}.max-h-32{max-height:8rem}.max-h-48{max-height:12rem}.max-h-60{max-height:15rem}.max-h-64{max-height:16rem}.min-h-screen{min-height:100vh}.mx-auto{margin-left:auto;margin-right:auto}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mb-10{margin-bottom:2.5rem}.ml-1{margin-left:.25rem}.ml-1\.5{margin-left:.375rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.py-12{padding-top:3rem;padding-bottom:3rem}.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.pt-12{padding-top:3rem}.pb-2{padding-bottom:.5rem}.pb-12{padding-bottom:3rem}.pl-2{padding-left:.5rem}.space-y-1>*+*{margin-top:.25rem}.space-y-2>*+*{margin-top:.5rem}.space-y-3>*+*{margin-top:.75rem}.space-y-4>*+*{margin-top:1rem}.text-xs{font-size:.75rem;line-height:1rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.font-light{font-weight:300}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.font-mono{font-family:var(--font-mono)}.italic{font-style:italic}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.tracking-wider{letter-spacing:.05em}.uppercase{text-transform:uppercase}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word;word-break:break-word}.select-none{-webkit-user-select:none;user-select:none}.text-center{text-align:center}.text-left{text-align:left}.text-nowrap{text-wrap:nowrap}.text-gray-light{color:var(--gray-light)}.text-gray-medium{color:var(--gray-medium)}.text-gray-dark{color:var(--gray-dark)}.text-gray-200{color:#e5e7eb}.text-gray-300{color:#d1d5db}.text-gray-400{color:#9ca3af}.text-gray-500{color:#6b7280}.text-gray-600{color:#4b5563}.text-accent-red{color:var(--accent-red)}.text-accent-yellow{color:var(--accent-yellow)}.text-blue-400{color:#60a5fa}.text-cyan-400{color:#22d3ee}.text-green-400{color:#4ade80}.text-green-600{color:#16a34a}.text-yellow-400{color:#facc15}.text-red-400{color:#f87171}.text-purple-400{color:#c084fc}.text-amber-300{color:#fcd34d}.text-amber-400{color:#fbbf24}.text-red-200{color:#fecaca}.text-green-200{color:#bbf7d0}.text-yellow-600{color:#ca8a04}.text-gray-700{color:#374151}.text-gray-900{color:#111827}.text-amber-800{color:#92400e}.text-black{color:#000}.text-2xs{font-size:.625rem;line-height:.875rem}.border{border:1px solid #444}.border-b{border-bottom:1px solid #444}.border-t{border-top:1px solid #444}.border-r{border-right:1px solid #444}.border-l-2{border-left:2px solid}.border-l-4{border-left:4px solid}.border-t-0{border-top:0}.border-dashed{border-style:dashed}.border-gray-dark{border-color:var(--gray-dark)}.border-gray-700{border-color:#374151}.border-gray-800{border-color:#1f2937}.border-accent-yellow{border-color:var(--accent-yellow)}.border-green-400{border-color:#4ade80}.border-green-500{border-color:#22c55e}.border-green-700{border-color:#15803d}.border-yellow-400{border-color:#fbbf24}.border-red-700{border-color:#b91c1c}.border-purple-500{border-color:#a855f7}.border-amber-800{border-color:#92400e}.border-gray-300{border-color:#d1d5db}.border-amber-300{border-color:#fcd34d}.rounded{border-radius:.25rem}.rounded-sm{border-radius:.125rem}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-full{border-radius:9999px}.divide-y>*+*{border-top:1px solid var(--border-base)}.divide-gray-800>*+*{border-color:#1f2937}.bg-black{background-color:#000}.bg-black\/40{background-color:#0006}.bg-black\/60{background-color:#0009}.bg-white{background-color:#fff}.bg-gray-100{background-color:#f3f4f6}.bg-gray-200{background-color:#e5e7eb}.bg-gray-800{background-color:#1f2937}.bg-green-400{background-color:#4ade80}.bg-yellow-400{background-color:#fbbf24}.bg-amber-100{background-color:#fef3c7}.bg-blue-600{background-color:#2563eb}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.opacity-60{opacity:.6}.opacity-75{opacity:.75}.pointer-events-none{pointer-events:none}.cursor-pointer{cursor:pointer}.resize-y{resize:vertical}.object-cover{object-fit:cover}.outline-none{outline:none}.float-right{float:right}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.transition-colors{transition:color .15s,background-color .15s,border-color .15s}.transition-all{transition:all .15s}.duration-300{transition-duration:.3s}.hover\:text-accent-yellow:hover{color:var(--accent-yellow)}.hover\:text-accent-red:hover{color:var(--accent-red)}.hover\:text-gray-light:hover{color:var(--gray-light)}.hover\:text-gray-200:hover{color:#e5e7eb}.hover\:text-gray-300:hover{color:#d1d5db}.hover\:text-gray-400:hover{color:#9ca3af}.hover\:text-red-400:hover{color:#f87171}.hover\:text-blue-300:hover{color:#93c5fd}.hover\:underline:hover{text-decoration:underline}.hover\:bg-white\/5:hover{background-color:#ffffff0d}.hover\:bg-accent-yellow\/10:hover{background-color:#eab3081a}.hover\:bg-amber-900\/50:hover{background-color:#78350f80}.hover\:bg-green-500\/10:hover{background-color:#22c55e1a}.hover\:bg-purple-500\/10:hover{background-color:#a855f71a}.hover\:border-accent-yellow\/50:hover{border-color:#eab30880}.hover\:border-accent-red:hover{border-color:var(--accent-red)}.hover\:border-gray-500:hover{border-color:#6b7280}.hover\:opacity-30:hover{opacity:.3}.hover\:bg-blue-700:hover{background-color:#1d4ed8}.hover\:bg-gray-300:hover{background-color:#d1d5db}.hover\:text-white:hover{color:#fff}.focus\:outline-none:focus{outline:none}.focus\:border-accent-yellow:focus{border-color:var(--accent-yellow)}.focus\:border-accent-yellow\/50:focus{border-color:#eab30880}.focus\:border-amber-600:focus{border-color:#d97706}.focus\:ring-2:focus{box-shadow:0 0 0 2px}.focus\:ring-blue-500:focus{box-shadow:0 0 0 2px #3b82f6}.group:hover .group-hover\:text-accent-yellow{color:var(--accent-yellow)}.group:hover .group-hover\:text-amber-300{color:#fcd34d}.group:hover .group-hover\:underline{text-decoration:underline}.last\:border-0:last-child{border:0}.placeholder-gray-500::placeholder{color:#6b7280}.page-slogan{text-align:center;justify-content:center;align-items:center;min-height:50vh;animation:1.8s ease-out both pageSloganIn;display:flex}.page-slogan-inner{max-width:640px;padding:2rem}.page-slogan-deco{color:var(--text-dim);letter-spacing:.6em;font-size:.6875rem;font-family:var(--font-mono)}.page-slogan-deco--top{margin-bottom:1.5rem}.page-slogan-deco--bot{margin-top:1.5rem}.page-slogan-text{color:var(--gray-medium);letter-spacing:.12em;font-size:1.5rem;line-height:1.8}.page-slogan-cursor{background:var(--accent-yellow);vertical-align:text-bottom;width:2px;height:1.2em;margin-left:4px;animation:1s step-end infinite pageSloganBlink;display:inline-block}@keyframes pageSloganIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes pageSloganBlink{0%,50%{opacity:.8}51%,to{opacity:0}}@media (min-width:768px){.page-slogan-text{font-size:1.75rem}}@media (min-width:1024px){.page-slogan-text{font-size:2rem}}.vis-hero{text-align:center;min-height:100vh;padding:var(--gap-xl) var(--gap-lg);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.vis-hero-half{min-height:60vh}.vis-hero-inner{z-index:1;max-width:860px;position:relative}.vis-hero-label{font-family:var(--font-mono);letter-spacing:.25em;color:var(--accent-cyan);margin-bottom:var(--gap-lg);font-size:.6875rem}.vis-hero-title{color:var(--text-primary);letter-spacing:0;margin-bottom:var(--gap-lg);font-size:clamp(2rem,5vw,3.5rem);font-weight:700;line-height:1.2}.vis-hero-sub{color:var(--text-body);max-width:560px;margin:0 auto;font-size:.9375rem;line-height:1.8}.vis-hero-glow:before{content:"";pointer-events:none;background:radial-gradient(circle,#7ec8e314 0%,#0000 60%);width:600px;height:600px;position:absolute;top:30%;left:50%;transform:translate(-50%)}.vis-section{max-width:860px;padding:clamp(3rem, 5vw, 6rem) var(--gap-lg);margin:0 auto}.vis-section-bordered{border-top:1px solid var(--border-subtle)}.vis-section-surface{background:var(--bg-surface)}.vis-section-label{font-family:var(--font-mono);letter-spacing:.2em;color:var(--text-dim);margin-bottom:var(--gap-lg);font-size:.6875rem}.vis-section-statement{color:var(--text-primary);max-width:560px;font-size:clamp(1.125rem,2.5vw,1.5rem);font-weight:400;line-height:1.7}.vis-section-statement em{color:#fff;border-bottom:1px solid var(--accent-cyan);font-style:normal}.vis-section-body{max-width:640px;margin-top:var(--gap-md);font-size:.875rem;line-height:1.9}.vis-showcase{border:1px solid var(--border-strong);padding:var(--gap-lg);background:var(--bg-surface);color:var(--text-body);text-decoration:none;transition:all .3s;display:block}.vis-showcase+.vis-showcase{margin-top:var(--gap-md)}a.vis-showcase:hover{border-color:var(--accent-cyan);background:var(--bg-surface-raised);color:var(--text-body)}.vis-showcase-header{align-items:center;gap:var(--gap-md);margin-bottom:var(--gap-md);display:flex}.vis-showcase-icon{font-family:var(--font-mono);color:var(--accent-cyan);font-size:1.125rem;font-weight:700}.vis-showcase-name{color:var(--text-primary);flex:1;font-size:1.25rem;font-weight:700}.vis-showcase-arrow{color:var(--text-dim);font-size:1.125rem;transition:transform .3s,color .3s}a.vis-showcase:hover .vis-showcase-arrow{color:var(--accent-cyan);transform:translate(4px)}.vis-showcase-badge{font-family:var(--font-mono);color:var(--text-dim);letter-spacing:.08em;padding:2px var(--gap-sm);border:1px solid var(--border-strong);font-size:.6875rem}.vis-showcase-desc{font-size:.875rem;line-height:1.8}.vis-showcase-muted{opacity:.6}.vis-feature-grid{border:1px solid var(--border-strong);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1px;display:grid}.vis-feature-card{padding:var(--gap-lg);background:var(--bg-surface)}.vis-feature-card-title{font-family:var(--font-mono);color:var(--text-primary);letter-spacing:.04em;margin-bottom:var(--gap-sm);font-size:.8125rem;font-weight:500}.vis-feature-card-text{color:var(--text-body);font-size:.8125rem;line-height:1.7}.vis-cta{text-align:center;border-top:1px solid var(--border-subtle)}.vis-cta-text{color:var(--text-primary);margin-bottom:var(--gap-lg);font-size:clamp(1.125rem,2.5vw,1.5rem)}.vis-cta-btn{font-family:var(--font-mono);color:var(--text-primary);padding:var(--gap-md) var(--gap-lg);border:1px solid var(--border-strong);letter-spacing:.02em;background:#ffffff08;font-size:.8125rem;text-decoration:none;transition:all .3s;display:inline-block}.vis-cta-btn:hover{color:#fff;border-color:var(--accent-cyan);background:#7ec8e314;box-shadow:0 0 20px #7ec8e31a}.vis-footer{border-top:1px solid var(--border-subtle);padding:var(--gap-lg)}.vis-footer-inner{justify-content:space-between;align-items:center;gap:var(--gap-md);max-width:860px;color:var(--text-dim);flex-wrap:wrap;margin:0 auto;font-size:.75rem;display:flex}.vis-footer-brand{font-family:var(--font-mono);letter-spacing:.08em}.hp-group{flex-direction:column;gap:3px;display:flex}.hp-bar{align-items:center;gap:var(--gap-sm);font-family:var(--font-mono,"JetBrains Mono", "Menlo", "Consolas", monospace);font-size:.75rem;line-height:1;display:flex}.hp-bar-label{color:#555;text-transform:uppercase;letter-spacing:.05em;flex-shrink:0;width:6em}.hp-bar-gauge{flex:1;align-items:center;min-width:0;display:flex}.hp-bar-gauge:before{content:"[";color:#444;flex-shrink:0;margin-right:2px}.hp-bar-gauge:after{content:"]";color:#444;flex-shrink:0;margin-left:2px}.hp-bar-track{background:#1a1a1a;flex:1;height:10px;position:relative;overflow:hidden}.hp-bar-fill{background:var(--hp-color,#6a9955);transition:width .3s;position:absolute;top:0;bottom:0;left:0}.hp-bar-track:after{content:"";z-index:1;pointer-events:none;background:repeating-linear-gradient(90deg,#0000 0 5px,#0a0a0a 5px 6px);position:absolute;inset:0}.hp-bar-text{color:#666;text-align:right;flex-shrink:0;width:3em}.hp-bar-sub{color:#444;flex-shrink:0;width:6em;font-size:.7rem}.hp-fill--green{--hp-color:#6a9955}.hp-fill--yellow{--hp-color:#dcdcaa}.hp-fill--red{--hp-color:#c94040}.hp-fill--orange{--hp-color:#ce9178}.hp-fill--cyan{--hp-color:#7ec8e3}.hp-bar--sm .hp-bar-track{height:6px}.hp-bar--sm{gap:var(--gap-xs);font-size:.7rem}.hp-bar--sm .hp-bar-label{min-width:0}.hp-bar--xs .hp-bar-track{height:4px}.hp-bar--xs{font-size:0}.hp-bar--xs .hp-bar-gauge:before,.hp-bar--xs .hp-bar-gauge:after{font-size:.7rem}.hp-bar--no-bracket .hp-bar-gauge:before,.hp-bar--no-bracket .hp-bar-gauge:after{content:none}.step-bar{margin-top:var(--gap-sm);gap:3px;display:flex}.step-bar-seg{background:#222;border-radius:2px;flex:1;height:8px;transition:background .2s}.step-bar-seg--done{background:#6a9955}.step-bar-seg--active{background:#dcdcaa}.step-bar-seg--blocked{background:#ce9178}@media (max-width:768px){.vis-hero{min-height:80vh}.vis-feature-grid{grid-template-columns:1fr}.vis-footer-inner{text-align:center;flex-direction:column}}@media (min-width:640px){.sm\:flex{display:flex}}@media (min-width:768px){.md\:hidden{display:none}.md\:flex{display:flex}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.md\:pt-0{padding-top:0}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:translate-x-0{transform:translate(0)}}@media (min-width:1280px){.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}
