.header[data-astro-cid-s35pujdj]{z-index:100;background:var(--header-bg);backdrop-filter:blur(10px);border-bottom:1px solid var(--glass-border);position:fixed;top:0;left:0;right:0}.header-container[data-astro-cid-s35pujdj]{justify-content:space-between;align-items:center;height:72px;display:flex}.logo[data-astro-cid-s35pujdj]{align-items:center;gap:var(--space-sm);white-space:nowrap;flex-shrink:0;text-decoration:none;display:flex}.logo-name[data-astro-cid-s35pujdj]{color:var(--text-primary);font-size:1.25rem;font-weight:600}.logo-badge[data-astro-cid-s35pujdj]{border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;padding:.25rem .5rem;font-size:.625rem;font-weight:500}.nav[data-astro-cid-s35pujdj]{align-items:center;gap:clamp(.85rem, 1.6vw, var(--space-lg));display:flex}.nav[data-astro-cid-s35pujdj] a[data-astro-cid-s35pujdj]:not(.btn){color:var(--text-secondary);transition:color var(--transition-fast);font-size:.875rem;font-weight:500}.nav[data-astro-cid-s35pujdj] a[data-astro-cid-s35pujdj]:not(.btn):hover{color:var(--text-primary)}.btn-sm[data-astro-cid-s35pujdj]{padding:.5rem 1rem;font-size:.875rem}.lang-switch[data-astro-cid-s35pujdj]{border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:.25rem .5rem;font-size:.75rem;font-weight:600;color:var(--text-muted)!important}.lang-switch[data-astro-cid-s35pujdj]:hover{border-color:var(--accent-primary);color:var(--accent-text)!important}.mobile-menu-btn[data-astro-cid-s35pujdj]{cursor:pointer;background:0 0;border:none;flex-direction:column;gap:4px;padding:8px;display:none}.mobile-menu-btn[data-astro-cid-s35pujdj] span[data-astro-cid-s35pujdj]{background:var(--text-primary);width:24px;height:2px;transition:all var(--transition-fast);display:block}.project-main[data-astro-cid-s35pujdj]{padding-top:calc(72px + var(--space-2xl));padding-bottom:var(--space-2xl);min-height:100vh}.footer[data-astro-cid-s35pujdj]{padding:var(--space-2xl) 0;border-top:1px solid var(--glass-border);text-align:center}.footer-manifesto[data-astro-cid-s35pujdj]{color:var(--text-muted);margin-bottom:var(--space-md);font-size:1.125rem;font-style:italic}.footer-links[data-astro-cid-s35pujdj]{justify-content:center;gap:var(--space-lg);margin-bottom:var(--space-md);display:flex}.footer-links[data-astro-cid-s35pujdj] a[data-astro-cid-s35pujdj]{color:var(--text-secondary);font-size:.875rem}.footer-copyright[data-astro-cid-s35pujdj]{color:var(--text-muted);font-size:.875rem}@media (width>=769px) and (width<=1180px){.nav[data-astro-cid-s35pujdj]{gap:var(--space-sm)}.nav[data-astro-cid-s35pujdj] a[data-astro-cid-s35pujdj]:not(.btn){font-size:.8125rem}}@media (width<=768px){.nav[data-astro-cid-s35pujdj]{justify-content:center;gap:var(--space-xl);background:var(--bg-primary);opacity:0;visibility:hidden;height:calc(100dvh - 72px);transition:all var(--transition-base);flex-direction:column;position:fixed;top:72px;left:0;right:0;overflow-y:auto}.nav[data-astro-cid-s35pujdj].open{opacity:1;visibility:visible}.nav[data-astro-cid-s35pujdj] a[data-astro-cid-s35pujdj]:not(.btn){font-size:1.25rem}.mobile-menu-btn[data-astro-cid-s35pujdj]{display:flex}.mobile-menu-btn[data-astro-cid-s35pujdj].open span[data-astro-cid-s35pujdj]:first-child{transform:rotate(45deg)translate(4px,4px)}.mobile-menu-btn[data-astro-cid-s35pujdj].open span[data-astro-cid-s35pujdj]:nth-child(2){opacity:0}.mobile-menu-btn[data-astro-cid-s35pujdj].open span[data-astro-cid-s35pujdj]:nth-child(3){transform:rotate(-45deg)translate(4px,-4px)}}.diagram-container[data-astro-cid-fpghfdhb]{background:var(--bg-card);border:1px solid var(--glass-border);border-radius:var(--radius-xl);padding:var(--space-xl);flex-direction:column;align-items:center;display:flex;position:relative;overflow:hidden}.diagram-container[data-astro-cid-fpghfdhb]:before{content:"";background:radial-gradient(circle at center, var(--halo) 0%, transparent 70%);pointer-events:none;width:200%;height:200%;position:absolute;top:-50%;left:-50%}.mermaid[data-astro-cid-fpghfdhb]{width:100%;margin-bottom:var(--space-lg);z-index:1;justify-content:center;display:flex}.mermaid svg{max-width:100%;height:auto}.diagram-legend[data-astro-cid-fpghfdhb]{gap:var(--space-xl);margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--glass-border);z-index:1;display:flex}.legend-item[data-astro-cid-fpghfdhb]{align-items:center;gap:var(--space-xs);color:var(--text-secondary);font-size:.875rem;display:flex}.legend-dot[data-astro-cid-fpghfdhb]{border:2px solid;border-radius:50%;width:12px;height:12px}@media (width<=768px){.diagram-container[data-astro-cid-fpghfdhb]{padding:var(--space-md);overflow-x:auto}.mermaid[data-astro-cid-fpghfdhb]{min-width:600px}.diagram-legend[data-astro-cid-fpghfdhb]{justify-content:center;gap:var(--space-md);flex-wrap:wrap}}.tech-stack[data-astro-cid-ceyfej33]{gap:var(--space-sm);flex-wrap:wrap;display:flex}.tech-tag[data-astro-cid-ceyfej33]{background:var(--glass);border:1px solid var(--glass-border);border-radius:var(--radius-full);color:var(--text-secondary);transition:all var(--transition-fast);align-items:center;padding:.5rem 1rem;font-size:.875rem;font-weight:500;display:inline-flex}.tech-tag[data-astro-cid-ceyfej33]:hover{border-color:var(--accent-primary);color:var(--accent-text)}.project-detail[data-astro-cid-bmrowvrh]{max-width:800px;margin:0 auto}.project-header[data-astro-cid-bmrowvrh]{margin-bottom:var(--space-2xl)}.back-link[data-astro-cid-bmrowvrh]{align-items:center;gap:var(--space-xs);color:var(--text-muted);margin-bottom:var(--space-lg);transition:color var(--transition-fast);font-size:.875rem;display:inline-flex}.back-link[data-astro-cid-bmrowvrh]:hover{color:var(--accent-text)}.category-badge[data-astro-cid-bmrowvrh]{text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-full);color:var(--text-muted);margin-bottom:var(--space-md);padding:.25rem .625rem;font-size:.6875rem;font-weight:600;display:inline-block}.project-header[data-astro-cid-bmrowvrh] h1[data-astro-cid-bmrowvrh]{margin-bottom:var(--space-md);background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:2.5rem;font-weight:700}.subtitle[data-astro-cid-bmrowvrh]{color:var(--text-secondary);font-size:1.25rem;line-height:1.6}.content-section[data-astro-cid-bmrowvrh]{margin-bottom:var(--space-2xl)}.content-section[data-astro-cid-bmrowvrh] h2[data-astro-cid-bmrowvrh]{color:var(--text-primary);margin-bottom:var(--space-md);align-items:center;gap:var(--space-sm);font-size:1.25rem;font-weight:600;display:flex}.content-section[data-astro-cid-bmrowvrh] h2[data-astro-cid-bmrowvrh]:before{content:"";background:var(--accent-gradient);border-radius:2px;width:4px;height:1.25rem}.content-section[data-astro-cid-bmrowvrh] p[data-astro-cid-bmrowvrh]{color:var(--text-secondary);font-size:1rem;line-height:1.8}.architecture-section[data-astro-cid-bmrowvrh]{background:linear-gradient(to bottom, var(--bg-secondary), var(--bg-primary));margin-left:calc(-1 * var(--space-xl));margin-right:calc(-1 * var(--space-xl));padding:var(--space-xl);border-radius:var(--radius-xl)}.outcomes-list[data-astro-cid-bmrowvrh]{gap:var(--space-md);flex-direction:column;padding:0;list-style:none;display:flex}.outcomes-list[data-astro-cid-bmrowvrh] li[data-astro-cid-bmrowvrh]{align-items:flex-start;gap:var(--space-sm);color:var(--text-secondary);font-size:1rem;line-height:1.6;display:flex}.outcomes-list[data-astro-cid-bmrowvrh] svg[data-astro-cid-bmrowvrh]{color:var(--accent-text);flex-shrink:0;margin-top:2px}.project-actions[data-astro-cid-bmrowvrh]{gap:var(--space-md);padding-top:var(--space-xl);border-top:1px solid var(--glass-border);display:flex}.project-actions[data-astro-cid-bmrowvrh] .btn[data-astro-cid-bmrowvrh]{align-items:center;gap:var(--space-sm);display:inline-flex}@media (width<=768px){.project-header[data-astro-cid-bmrowvrh] h1[data-astro-cid-bmrowvrh]{font-size:1.75rem}.subtitle[data-astro-cid-bmrowvrh]{font-size:1rem}.architecture-section[data-astro-cid-bmrowvrh]{margin-left:calc(-1 * var(--space-md));margin-right:calc(-1 * var(--space-md));padding:var(--space-md)}.project-actions[data-astro-cid-bmrowvrh]{flex-direction:column}.project-actions[data-astro-cid-bmrowvrh] .btn[data-astro-cid-bmrowvrh]{justify-content:center}}
