:root{--color-text-strong: #ffffff;--color-text-primary: #f8fbff;--color-text-soft: #dce4f6;--color-text-secondary: #c1cadc;--color-text-muted: #b6c1d5;--color-text-subtle: #9faec9;--color-accent: #7b91ff;--color-accent-text: #8da0ff;--color-accent-soft: #a6b4ff;--color-accent-hover: #b6c1ff;--color-accent-muted: #98a9d3;--color-accent-tint: rgba(123, 145, 255, .16);--color-accent-tint-faint: rgba(141, 160, 255, .12);--color-bg: #090d16;--color-bg-deep: #080c16;--color-surface: #121827;--color-glass: rgba(255, 255, 255, .04);--color-glass-hover: rgba(255, 255, 255, .065);--color-header-bg: rgba(9, 13, 22, .94);--color-border-subtle: rgba(255, 255, 255, .07);--color-border: rgba(255, 255, 255, .09);--color-border-strong: rgba(255, 255, 255, .14);--color-border-accent: #3a4570;color:var(--color-text-primary);background:var(--color-bg);--diagram-border: rgba(141, 160, 255, .2);--diagram-border-strong: rgba(165, 178, 219, .38);--diagram-line: #d8dfec;--diagram-panel-end: rgba(12, 17, 29, .86);--diagram-panel-start: rgba(24, 32, 52, .74);--diagram-text: #e1e7f5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;letter-spacing:0}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:104px}body{margin:0;min-height:100vh;background:radial-gradient(circle at 74% 18%,rgba(87,118,255,.2),transparent 30%),radial-gradient(circle at 18% 18%,rgba(65,95,180,.18),transparent 28%),linear-gradient(180deg,#080c14,#0c111d 56%,#080b12)}body:before{position:fixed;inset:0;pointer-events:none;content:"";background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.65),transparent 72%)}a{color:inherit}a:focus-visible{outline:2px solid var(--color-accent-hover);outline-offset:5px;border-radius:4px}.page{position:relative;width:min(1180px,calc(100% - 48px));margin:0 auto}.site-chrome{position:sticky;top:0;z-index:50;background:var(--color-header-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.site-header{display:grid;grid-template-columns:auto 1fr auto;gap:32px;align-items:center;padding:20px 0;border-bottom:1px solid var(--color-border)}.brand{color:var(--color-text-primary);font-size:1.05rem;font-weight:900;text-decoration:none;text-transform:uppercase}.brand span{color:var(--color-accent)}.nav{display:flex;justify-content:center;gap:30px}.nav a,.social a{color:var(--color-text-soft);font-size:.92rem;font-weight:700;text-decoration:none}.nav a[aria-current=page]{color:var(--color-accent-text);border-bottom:2px solid var(--color-accent);padding-bottom:10px}.nav a:hover,.social a:hover{color:var(--color-text-strong)}.social{display:flex;gap:10px;align-items:center}.social-icon{display:inline-grid;width:40px;height:40px;place-items:center;border:1px solid var(--color-border-strong);border-radius:10px;background:var(--color-glass)}.social-icon svg{width:18px;height:18px;fill:currentColor}h1{margin:0;color:var(--color-text-strong);font-size:4.9rem;line-height:1.02}.button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;border:1px solid var(--color-border-strong);border-radius:12px;padding:12px 20px;background:linear-gradient(135deg,#6f86ff,#4967eb);box-shadow:0 18px 42px #4967eb52;color:var(--color-text-strong);font-weight:800;text-decoration:none}.button.secondary{background:var(--color-glass);box-shadow:none}.line{display:block;min-height:1.42em;overflow-wrap:anywhere;white-space:pre-wrap}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:22px}.section-heading h2{margin:0;color:var(--color-text-strong);font-size:1.2rem}.section-heading h2:after{display:block;width:28px;height:2px;margin-top:10px;background:var(--color-accent);content:""}.section-heading a,.back-link,.text-link{color:var(--color-accent-text);font-size:.92rem;font-weight:800;text-decoration:none}.section-heading a:hover,.back-link:hover,.text-link:hover{color:var(--color-text-strong)}.project-grid,.collection-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.project-card,.collection-card{border:1px solid var(--color-border);border-radius:14px;background:var(--color-glass)}.project-card,.collection-card{display:block;min-width:0;overflow:hidden;text-decoration:none}.project-card:hover,.collection-card:hover{border-color:var(--color-border-accent);background:var(--color-glass-hover)}.project-card h3,.collection-card h2{margin:18px 0 8px;color:var(--color-text-strong);font-size:.98rem;overflow-wrap:anywhere;word-break:break-word}.project-card p,.collection-card p{margin:0;color:var(--color-text-secondary);font-size:.9rem;line-height:1.65;overflow-wrap:anywhere;word-break:break-word}.project-preview{display:grid;aspect-ratio:16 / 9;overflow:hidden;min-height:118px;border-bottom:1px solid var(--color-border);background:linear-gradient(135deg,rgba(123,145,255,.28),transparent 58%),linear-gradient(180deg,#ffffff14,#ffffff05)}.project-preview img{width:100%;height:100%;object-fit:cover}.project-body,.collection-body{max-width:100%;min-width:0;padding:18px}.tag,.tag-list span{display:inline-flex;border-radius:8px;padding:5px 9px;background:var(--color-accent-tint);color:var(--color-accent-hover);font-size:.78rem;font-weight:800}.tag{margin-top:16px}.tag-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;min-width:0}.collection-hero{padding:70px 0 34px}.collection-hero h1,.detail h1{max-width:760px;font-size:3.2rem;line-height:1.08}.collection-hero p,.detail-summary{width:100%;max-width:720px;margin:18px 0 0;color:var(--color-text-soft);font-size:1.05rem;line-height:1.75;overflow-wrap:anywhere;word-break:break-word}.collection-list{padding:18px 0 80px}.collection-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.collection-meta,.detail-meta{color:var(--color-accent-text);font-size:.82rem;font-weight:800}.empty-state{border:1px solid var(--color-border);border-radius:14px;padding:22px;background:var(--color-glass);color:var(--color-text-secondary);line-height:1.7}.empty-state p{margin:0}.detail{max-width:820px;padding:68px 0 88px}.detail-header{margin-bottom:34px}.detail-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px 20px;margin-top:16px}.detail-toolbar .tag-list{flex:1 1 320px;margin-top:0}.detail-actions{display:flex;flex-wrap:wrap;gap:14px;margin-left:auto}.detail-actions .button{min-height:42px;border-radius:10px;padding:9px 16px}.prose{color:var(--color-text-soft);font-size:1rem;line-height:1.8}.prose h2,.prose h3{color:var(--color-text-strong);line-height:1.3}.prose a{color:var(--color-accent-text);font-weight:800}.prose hr{height:1px;border:0;margin:34px 0;background:var(--color-border-strong)}.prose table{display:block;overflow-x:auto;width:100%;margin:22px 0 28px;border-collapse:collapse;overflow-wrap:normal}.prose th,.prose td{border-bottom:1px solid var(--color-border);padding:10px 12px;text-align:left;vertical-align:top}.prose th{color:var(--color-text-primary);font-weight:800}.prose td{color:var(--color-text-soft)}.prose :not(pre)>code{border:1px solid var(--color-accent-tint);border-radius:6px;padding:.1em .35em;background:var(--color-accent-tint-faint);color:var(--color-text-soft);font-size:.92em}.prose pre{overflow-x:auto;border:1px solid var(--color-accent-tint);border-radius:8px;margin:22px 0 30px;padding:18px 20px;background:linear-gradient(180deg,#182034f5,#0c111df5),#0c111d!important;box-shadow:inset 0 1px #ffffff0d;color:var(--color-text-soft)!important;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.9rem;line-height:1.38}.prose pre code{color:inherit!important}.prose pre .line{display:inline;min-height:0;white-space:pre}.prose pre .line:empty{display:inline-block;min-height:0}.prose pre span[style*="color:#24292E"]{color:var(--color-text-soft)!important}.prose pre span[style*="color:#D73A49"]{color:#ff8d9b!important}.prose pre span[style*="color:#6F42C1"]{color:#c7a8ff!important}.prose pre span[style*="color:#005CC5"]{color:#89b8ff!important}.prose pre span[style*="color:#032F62"]{color:#9fe3c4!important}.prose pre span[style*="color:#6A737D"]{color:#97a4b8!important}.prose img{display:block;max-width:100%;height:auto}.prose p:has(>img:only-child){display:flex;align-items:center;justify-content:center;overflow-x:auto;border:1px solid var(--diagram-border);border-radius:8px;margin:24px 0 32px;padding:clamp(18px,3vw,28px);background:linear-gradient(180deg,var(--diagram-panel-start),var(--diagram-panel-end)),#111724b8;box-shadow:inset 0 1px #ffffff0d,0 14px 34px #0000001f;color:var(--diagram-text)}.prose p:has(>img:only-child) img{flex:0 1 auto}.mermaid{display:flex;align-items:center;justify-content:center;overflow-x:auto;border:1px solid var(--diagram-border);border-radius:8px;margin:24px 0 32px;padding:clamp(18px,3vw,28px);background:linear-gradient(180deg,var(--diagram-panel-start),var(--diagram-panel-end)),#111724b8;box-shadow:inset 0 1px #ffffff0d,0 14px 34px #0000001f;color:var(--diagram-text);scrollbar-color:var(--diagram-border-strong) transparent}.mermaid svg{max-width:100%;height:auto;color:var(--diagram-text)}.mermaid text,.mermaid span{letter-spacing:0}.back-link{display:inline-flex;margin-bottom:28px}@media(max-width:980px){.nav{gap:18px}.social{justify-content:flex-start}.project-grid,.collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){html{scroll-padding-top:148px}.page{width:calc(100% - 28px);max-width:1180px}.site-header{padding:16px 0;gap:12px;grid-template-columns:1fr auto}.site-header .nav{grid-column:1 / -1;grid-row:2;justify-content:flex-start;gap:24px}.site-header .social{grid-column:2;grid-row:1}.nav{row-gap:10px}.social{flex-wrap:wrap}h1{font-size:3.2rem}.collection-hero h1,.detail h1{font-size:2.4rem}.section-heading{align-items:flex-start;flex-direction:column}.detail-actions{width:100%;margin-left:0}.project-grid,.collection-grid{grid-template-columns:minmax(0,1fr)}}.detail-visual{margin:34px 0;border:1px solid var(--color-border);border-radius:18px;padding:0;background:#11172473;box-shadow:0 18px 48px #00000029,inset 0 1px #ffffff0a;backdrop-filter:blur(8px);display:flex;justify-content:center;align-items:center;overflow:hidden}.architecture-diagram{width:100%;max-width:100%;height:auto;display:block}.site-footer{padding:24px 0 32px;border-top:1px solid var(--color-border);color:var(--color-text-subtle);font-size:.8rem}.site-footer p{margin:0}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
