@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:400;src:url(/fonts/outfit-latin-400-normal.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:Outfit;font-style:normal;font-display:swap;font-weight:500;src:url(/fonts/outfit-latin-500-normal.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:Outfit;font-style:normal;font-display:swap;font-weight:600;src:url(/fonts/outfit-latin-600-normal.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:Outfit;font-style:normal;font-display:swap;font-weight:700;src:url(/fonts/outfit-latin-700-normal.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:Outfit;font-style:normal;font-display:swap;font-weight:800;src:url(/fonts/outfit-latin-800-normal.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/fonts/ibm-plex-mono-latin-500-normal.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/fonts/ibm-plex-mono-latin-600-normal.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/fonts/ibm-plex-mono-latin-700-normal.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}:root,html[data-theme=dark]{color-scheme:dark;--primary:#3d7dff;--primary-deep:#2a5fd4;--ink:#e7eefc;--muted:#8fa0bd;--bg:#070b14;--bg-soft:#0c1322;--line:#3d7dff38;--shadow:0 1px 0 #0003;--shadow-lift:0 18px 40px #00000059;--radius:12px;--radius-sm:6px;--font-display:"Outfit", "PingFang SC", "Hiragino Sans GB", "Noto Sans SC", "Segoe UI", sans-serif;--font-body:"Outfit", "PingFang SC", "Hiragino Sans GB", "Noto Sans SC", "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", "SFMono-Regular", Menlo, Consolas, monospace;--primary-color:var(--primary);--accent-cyan:#5ce1ff;--primary-soft:#3d7dff1f;--text-color:var(--ink);--text-secondary:var(--muted);--background-color:var(--bg);--background-light:var(--bg-soft);--surface:#0f1728;--surface-solid:#0f1728;--surface-ghost:#0f1728eb;--surface-ghost-soft:#0f17288c;--border-subtle:var(--line);--shadow-hover:var(--shadow-lift);--grid-line:#3d7dff14;--hud:#5ce1ff8c;--header-bg:#070b14d1;--header-bg-scrolled:#070b14f0;--header-scroll-border:#5ce1ff33;--body-wash-a:#070b14eb;--body-wash-b:#070b14f7;--hero-radial-a:#5ce1ff1f;--hero-radial-b:#3d7dff24;--hero-fade:#070b1459;--hero-grid-a:#3d7dff14;--hero-grid-b:#5ce1ff0f;--home-hero-base:var(--bg-soft);--mobile-nav-bg:#070b14;--btn-ghost-bg:#0f17288c;--back-top-bg:#0f1728f0;--on-primary:#fff;--hero-blob-a:#5ce1ff47;--hero-blob-b:#3d7dff38;--hero-panel-border:#3d7dff38;--hero-panel-tint:#3d7dff0f;--hero-panel-scan:#5ce1ff14;--page-hero-bg:radial-gradient(ellipse 60% 80% at 80% 0%, #5ce1ff29, transparent 55%), linear-gradient(160deg, #1e4a9e 0%, #0a1a3a 100%);--page-hero-fg:#fff;--page-hero-title:#fff;--page-hero-desc:#ffffffe0;--page-hero-subtitle:#ffffffeb;--page-hero-subtitle-border:#ffffff47;--page-hero-subtitle-bg:#ffffff1a;--page-hero-grid:#5ce1ff14;--page-hero-scan:#5ce1ffb3;--hero-edge:transparent}html[data-theme=light]{color-scheme:light;--primary:#2f6bff;--primary-deep:#1a4fd6;--ink:#0b1020;--muted:#667085;--bg:#f0f3f8;--bg-soft:#fff;--line:#d5dceb;--shadow:0 1px 0 #0f172a0a;--shadow-lift:0 18px 40px #2f6bff24;--accent-cyan:#1aa7d4;--primary-soft:#e8efff;--text-color:var(--ink);--text-secondary:var(--muted);--background-color:var(--bg);--background-light:var(--bg-soft);--surface:#fff;--surface-solid:#fff;--surface-ghost:#fffffff5;--surface-ghost-soft:#ffffffd1;--border-subtle:var(--line);--shadow-hover:var(--shadow-lift);--grid-line:#2f6bff0e;--hud:#2f6bff73;--header-bg:#ffffffe6;--header-bg-scrolled:#fffffff5;--header-scroll-border:#2f6bff1f;--body-wash-a:#f0f3f8f5;--body-wash-b:#f0f3f8fa;--hero-radial-a:#2f6bff29;--hero-radial-b:#1aa7d41f;--hero-fade:#e8f0ff8c;--hero-grid-a:#2f6bff1a;--hero-grid-b:#2f6bff14;--home-hero-base:#e8f0ff;--hero-edge:#2f6bff29;--mobile-nav-bg:#fff;--btn-ghost-bg:#fffc;--back-top-bg:#fffffff0;--on-primary:#fff;--hero-blob-a:#4cc9ff52;--hero-blob-b:#2f6bff33;--hero-panel-border:#2f6bff38;--hero-panel-tint:#2f6bff0f;--hero-panel-scan:#2f6bff14;--page-hero-bg:radial-gradient(ellipse 70% 55% at 85% 18%, #2f6bff2e, transparent 58%), radial-gradient(ellipse 55% 45% at 8% 85%, #1aa7d41f, transparent 55%), #e8f0ff;--page-hero-fg:var(--ink);--page-hero-title:var(--ink);--page-hero-desc:var(--muted);--page-hero-subtitle:var(--primary);--page-hero-subtitle-border:#2f6bff47;--page-hero-subtitle-bg:#ffffffb8;--page-hero-grid:#2f6bff1a;--page-hero-scan:#2f6bff66}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;text-size-adjust:100%;overflow-x:clip}body{font-family:var(--font-body);color:var(--ink);background:linear-gradient(180deg, var(--body-wash-a), var(--body-wash-b)), repeating-linear-gradient(90deg, transparent 0, transparent 47px, var(--grid-line) 47px, var(--grid-line) 48px), repeating-linear-gradient(0deg, transparent 0, transparent 47px, var(--grid-line) 47px, var(--grid-line) 48px), var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-attachment:fixed;min-width:0;line-height:1.6;transition:background-color .25s,color .25s;overflow-x:clip}@supports (-webkit-touch-callout:none){body{background-attachment:scroll}}.container{max-width:1120px;margin:0 auto;padding:0 24px}.skip-link{z-index:2000;background:var(--primary);color:var(--on-primary);border-radius:var(--radius-sm);padding:.6rem 1rem;font-weight:600;text-decoration:none;position:absolute;top:-48px;left:16px}.skip-link:focus{top:16px}.icon{vertical-align:-.15em;flex-shrink:0;width:1.1em;height:1.1em;display:inline-block}.header{z-index:1000;padding-top:env(safe-area-inset-top,0px);background:var(--header-bg);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line);transition:background .25s,box-shadow .25s,border-color .25s;position:fixed;top:0;left:0;right:0}.header.is-scrolled{background:var(--header-bg-scrolled);box-shadow:var(--shadow-lift);border-bottom-color:var(--header-scroll-border)}.nav{justify-content:space-between;align-items:center;min-height:64px;padding:12px 0;display:flex}.logo{min-width:0;color:var(--ink);align-items:center;gap:10px;text-decoration:none;display:flex}.logo img{width:auto;height:36px}.logo-text{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:1.15rem;font-weight:800;overflow:hidden}.nav-end{align-items:center;gap:8px;margin-left:auto;display:flex}.nav-links,.nav-utils{align-items:center;gap:4px;display:flex}.nav-item,.nav-more-toggle,.language-switch{color:var(--muted);border-radius:var(--radius-sm);align-items:center;height:40px;padding:8px 14px;font-size:.95rem;font-weight:600;text-decoration:none;transition:color .2s,background .2s;display:inline-flex}.nav-item:hover,.nav-item.active,.nav-more-toggle:hover,.nav-more-toggle.active{color:var(--ink);background:#3d7dff1a}.nav-item.active,.nav-more-toggle.active{color:var(--primary)}.nav-more{position:relative}.nav-more-toggle{cursor:pointer;font:inherit;background:0 0;border:none;gap:.35rem}.nav-more-caret{opacity:.85;font-size:.7rem;line-height:1;transition:transform .2s}.nav-more.is-open .nav-more-caret{transform:rotate(180deg)}.nav-more-menu{z-index:1002;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface,var(--bg));flex-direction:column;align-items:stretch;gap:.15rem;min-width:11.5rem;padding:.45rem;display:none;position:absolute;top:calc(100% + .35rem);right:0;box-shadow:0 12px 32px #00000047}.nav-more.is-open .nav-more-menu{display:flex}.nav-more-menu .nav-item{justify-content:flex-start;width:100%;height:auto;min-height:2.4rem}.language-switch{color:var(--on-primary);background:var(--primary);border-radius:var(--radius-sm);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;border:none;margin-left:8px;font-size:.78rem}.language-switch:hover{background:var(--primary-deep);color:var(--on-primary)}.theme-toggle{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-ghost-soft);width:40px;min-width:40px;height:40px;color:var(--ink);cursor:pointer;z-index:1001;justify-content:center;align-items:center;gap:.4rem;margin-left:0;padding:0;transition:border-color .2s,color .2s,background .2s,transform .15s;display:inline-flex;position:relative}.theme-toggle:hover{border-color:var(--primary);color:var(--primary)}.theme-toggle:active{transform:scale(.96)}.theme-toggle .theme-toggle-icon{color:var(--accent-cyan);display:inline-flex}.theme-toggle .theme-toggle-icon.is-hidden{display:none}.theme-toggle .icon{width:1.05rem;height:1.05rem}.theme-toggle-label{display:none}.mobile-nav-toggle{cursor:pointer;z-index:1000;background:0 0;border:none;padding:10px;display:none;position:relative}.mobile-nav-toggle span{background-color:var(--ink);width:22px;height:2px;margin:5px 0;transition:transform .3s,opacity .3s;display:block}.mobile-nav-toggle.active span:first-child{transform:translateY(7px)rotate(45deg)}.mobile-nav-toggle.active span:nth-child(2){opacity:0}.mobile-nav-toggle.active span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.hero{background:radial-gradient(ellipse 70% 55% at 85% 20%, var(--hero-radial-a), transparent 60%), radial-gradient(ellipse 50% 40% at 10% 80%, var(--hero-radial-b), transparent 55%), var(--home-hero-base);min-height:88vh;color:var(--ink);text-align:left;border-bottom:1px solid var(--hero-edge);align-items:center;padding:120px 0 88px;display:flex;position:relative;overflow:hidden}.hero:before{content:"";background:linear-gradient(90deg, var(--hero-fade) 0%, transparent 38%), repeating-linear-gradient(90deg, transparent 0, transparent 63px, var(--hero-grid-a) 63px, var(--hero-grid-a) 64px), repeating-linear-gradient(0deg, transparent 0, transparent 63px, var(--hero-grid-b) 63px, var(--hero-grid-b) 64px);pointer-events:none;z-index:0;position:absolute;inset:0}.hero-blob{background:radial-gradient(circle at 35% 35%, var(--hero-blob-a), transparent 55%), radial-gradient(circle at 65% 60%, var(--hero-blob-b), transparent 60%);filter:blur(8px);pointer-events:none;z-index:0;border-radius:50%;width:min(720px,90vw);height:min(720px,90vw);animation:10s ease-in-out infinite blobFloat;position:absolute;top:8%;right:-12%}.hero-atmosphere{pointer-events:none;z-index:0;position:absolute;inset:0}.hero-atmosphere:before{content:"";background:linear-gradient(90deg, transparent, var(--hud), transparent);height:1px;animation:4.5s ease-in-out infinite hudPulse;position:absolute;top:0;left:0;right:0}.hero-atmosphere:after{content:"";border:1px solid var(--hero-panel-border);background:linear-gradient(135deg, var(--hero-panel-tint), transparent 55%), repeating-linear-gradient(0deg, transparent, transparent 10px, var(--hero-panel-scan) 10px, var(--hero-panel-scan) 11px);border-radius:4px;width:min(380px,42vw);animation:12s ease-in-out infinite panelDrift;position:absolute;inset:18% 8% 12% auto;mask-image:linear-gradient(#000 0%,#0000 92%)}.hero-content{z-index:1;max-width:760px;margin:0;position:relative}.hero-brand{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);margin-bottom:20px;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:800;line-height:1.1}.subtitle{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--primary);background:#3d7dff1a;border:1px solid #3d7dff47;border-radius:4px;align-items:center;gap:.45rem;margin-bottom:18px;padding:.35rem .65rem;font-size:.72rem;font-weight:500;display:inline-flex}.subtitle:before{content:"//";color:var(--accent-cyan);font-weight:600}.subtitle.is-typing:after{content:"";background:var(--accent-cyan);vertical-align:-.12em;width:.55em;height:1em;margin-left:.15em;animation:.8s step-end infinite caretBlink;display:inline-block}@keyframes caretBlink{0%,45%{opacity:1}46%,to{opacity:0}}.hero-title{font-family:var(--font-display);letter-spacing:-.025em;font-synthesis:none;max-width:16ch;margin-bottom:22px;font-size:clamp(2.4rem,6vw,4rem);font-weight:800;line-height:1.08}.hero-desc{color:var(--muted);max-width:36rem;margin:0 0 32px;font-size:1.15rem;line-height:1.65}.hero-positioning{color:var(--muted);opacity:.95;max-width:40rem;margin:0 0 28px;font-size:.98rem;line-height:1.65}.hero-desc:has(+.hero-positioning){margin-bottom:.9rem}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.btn-primary,.btn-ghost{border-radius:var(--radius-sm);justify-content:center;align-items:center;min-height:48px;padding:0 22px;font-size:.95rem;font-weight:700;text-decoration:none;transition:transform .2s,background .2s,color .2s,box-shadow .2s,border-color .2s;display:inline-flex}.btn-primary{background:var(--primary);color:#fff;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px));box-shadow:0 10px 24px #3d7dff38}.btn-primary:hover{background:var(--primary-deep);transform:translateY(-2px)}.btn-ghost{background:var(--btn-ghost-bg);color:var(--ink);border:1.5px solid var(--line)}.btn-ghost:hover{border-color:var(--primary);color:var(--primary);background:#3d7dff1f;transform:translateY(-2px)}.btn-text{min-height:48px;color:var(--muted);justify-content:center;align-items:center;gap:.35rem;padding:0 .35rem;font-size:.95rem;font-weight:700;text-decoration:none;transition:color .2s,transform .2s;display:inline-flex}.btn-text:hover{color:var(--primary);transform:translateY(-1px)}.hero:not(.hero--home){text-align:center;background:var(--page-hero-bg);min-height:auto;color:var(--page-hero-fg);align-items:stretch;padding:148px 0 88px}.hero:not(.hero--home):before{background:repeating-linear-gradient(90deg, transparent 0, transparent 47px, var(--page-hero-grid) 47px, var(--page-hero-grid) 48px), repeating-linear-gradient(0deg, transparent 0, transparent 47px, var(--page-hero-grid) 47px, var(--page-hero-grid) 48px);opacity:.9}.hero:not(.hero--home) .hero-content{max-width:820px;margin:0 auto}.hero:not(.hero--home) .subtitle{color:var(--page-hero-subtitle);border-color:var(--page-hero-subtitle-border);background:var(--page-hero-subtitle-bg)}.hero:not(.hero--home) .subtitle:before{color:var(--accent-cyan)}.hero:not(.hero--home) .hero-atmosphere:after{display:none}.hero:not(.hero--home) .hero-atmosphere:before{background:linear-gradient(90deg, transparent, var(--page-hero-scan), transparent)}.hero:not(.hero--home) .hero-title{max-width:none;color:var(--page-hero-title)}.hero:not(.hero--home) .hero-desc{color:var(--page-hero-desc);text-wrap:pretty;margin:0 auto 1.15rem}.hero:not(.hero--home) .hero-positioning{color:var(--page-hero-desc);text-wrap:pretty;margin:0 auto 1.75rem}.hero:not(.hero--home) .hero-actions{justify-content:center;align-items:stretch}.hero:not(.hero--home) .btn-primary,.hero:not(.hero--home) .btn-ghost{clip-path:none;min-width:12.5rem}.section-title{font-family:var(--font-display);letter-spacing:-.02em;text-align:left;font-synthesis:none;margin-bottom:36px;padding-bottom:14px;font-size:clamp(1.75rem,3vw,2.35rem);font-weight:800;position:relative}.section-title:after{content:"";background:linear-gradient(90deg, var(--primary), var(--accent-cyan));width:48px;height:2px;position:absolute;bottom:0;left:0}.values{background:var(--bg-soft);padding:72px 0 24px}.values-grid,.links-grid,.notes-grid,.project-grid,.skills-grid,.gallery-grid,.hobby-grid,.blog-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:20px;display:grid}.value-card{backdrop-filter:none;border:0;border-top:2px solid var(--ink);box-shadow:none;background:0 0;border-radius:0;padding:8px 8px 28px 0;position:relative;overflow:visible}.value-card:before{display:none}.value-index{font-family:var(--font-mono);letter-spacing:.08em;color:var(--primary);margin-bottom:16px;font-size:.78rem;font-weight:600;display:block}.value-card h3,.link-card h3,.note-card h3,.skill-card h3{font-family:var(--font-display);letter-spacing:-.02em;margin-bottom:10px;font-size:1.35rem;font-weight:800}.value-card p,.link-card p{color:var(--muted);font-size:.98rem}.quick-links{background:var(--bg);padding:56px 0 96px}.link-card{background:var(--surface);border-radius:var(--radius);border:1px solid var(--line);color:var(--ink);box-shadow:none;padding:28px 28px 48px;text-decoration:none;transition:transform .2s,border-color .2s,background .2s,color .2s;display:block;position:relative}.link-card-arrow{color:var(--primary);opacity:1;font-size:1.25rem;transition:transform .2s;position:absolute;bottom:22px;right:24px}.link-card:hover{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:var(--shadow-lift);transform:translateY(-4px)}.link-card:hover h3,.link-card:hover p,.link-card:hover .link-card-arrow{color:#fff}.link-card:hover .link-card-arrow{transform:translate(4px)}.note-card:hover,.project-card:hover,.skill-item:hover{box-shadow:var(--shadow-lift);border-color:#3d7dff59;transform:translateY(-4px)}.project-card:hover{box-shadow:var(--shadow-lift)}.skill-item:hover{transform:translateY(-4px)}@keyframes blobFloat{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-18px,14px)scale(1.05)}}@keyframes hudPulse{0%,to{opacity:.35}50%{opacity:1}}@keyframes panelDrift{0%,to{opacity:.85;transform:translateY(0)}50%{opacity:1;transform:translateY(-10px)}}@keyframes revealUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.reveal{animation:.65s cubic-bezier(.22,1,.36,1) both revealUp}.reveal-on-scroll{opacity:0;transition:opacity .65s cubic-bezier(.22,1,.36,1),transform .65s cubic-bezier(.22,1,.36,1);transform:translateY(18px)}.reveal-on-scroll.is-visible{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:60ms;animation-delay:60ms}.reveal-delay-2{transition-delay:.12s;animation-delay:.12s}.reveal-delay-3{transition-delay:.18s;animation-delay:.18s}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-blob,.hero-atmosphere:before,.hero-atmosphere:after,.subtitle.is-typing:after,.reveal,.reveal-delay-1,.reveal-delay-2,.reveal-delay-3{animation:none!important}.reveal-on-scroll{opacity:1;transition:none;transform:none}}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:.5rem;display:flex}.section-head .section-title{margin-bottom:0}.section-cta{color:var(--primary);align-items:center;gap:.4rem;font-size:.95rem;font-weight:700;text-decoration:none;transition:gap .2s,color .2s;display:inline-flex}.section-cta:hover{color:var(--primary-deep);gap:.65rem}.highlights.home-section{padding:72px 0}.highlights-subtitle{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--primary);margin:.55rem 0 0;font-size:.82rem}.highlights-proof{color:var(--muted);margin:.4rem 0 0;font-size:.95rem}.highlights-grid{grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2rem;display:grid}.highlight-card{background:var(--surface-ghost);border:1px solid var(--line);border-radius:var(--radius-sm);flex-direction:column;gap:.35rem;padding:1.35rem 1.25rem;transition:transform .25s,box-shadow .25s,border-color .25s;display:flex;position:relative}.highlight-card:before,.highlight-card:after{content:"";border-color:var(--accent-cyan);opacity:.45;pointer-events:none;z-index:1;border-style:solid;width:10px;height:10px;position:absolute}.highlight-card:before{border-width:1.5px 0 0 1.5px;top:8px;left:8px}.highlight-card:after{border-width:0 1.5px 1.5px 0;bottom:8px;right:8px}.highlight-card:hover{box-shadow:var(--shadow-lift);border-color:#5ce1ff47;transform:translateY(-4px)}.highlight-value{font-family:var(--font-mono);letter-spacing:-.03em;color:var(--primary);margin-bottom:.45rem;font-size:clamp(1.75rem,3vw,2.25rem);font-weight:700;line-height:1.1;display:block}.highlight-label{color:var(--ink);font-size:.95rem;font-weight:600;line-height:1.4;display:block}.highlight-source{font-family:var(--font-mono);letter-spacing:.02em;color:var(--primary);margin-top:.55rem;font-size:.78rem;font-weight:600;text-decoration:none;display:inline-flex}.highlight-source:hover{text-decoration:underline}.home-featured,.channels{padding:88px 0}.home-featured{background:0 0}.channels{background:var(--bg-soft)}.project-grid--home{grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:2rem;display:grid}.project-category{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--primary);margin-bottom:.75rem;font-size:.7rem;font-weight:600;display:inline-block}.channels-grid{grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:2rem;display:grid}.channel-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);color:inherit;flex-direction:column;gap:.65rem;min-height:200px;padding:1.6rem 1.4rem;text-decoration:none;transition:transform .25s,box-shadow .25s,border-color .25s;display:flex}.channel-card i{color:var(--primary);margin-bottom:.25rem;font-size:1.4rem}.channel-card h3{font-family:var(--font-display);letter-spacing:-.02em;font-size:1.2rem;font-weight:700}.channel-card p{color:var(--muted);flex:1;font-size:.95rem}.channel-cta{color:var(--primary);align-items:center;gap:.35rem;margin-top:.25rem;font-size:.9rem;font-weight:700;transition:gap .2s;display:inline-flex}.channel-card:hover{box-shadow:var(--shadow-lift);border-color:#5ce1ff47;transform:translateY(-5px)}.channel-card:hover .channel-cta{gap:.55rem}.hero-role-line{font-family:var(--font-mono);letter-spacing:.02em;color:var(--primary);margin:.35rem 0 .65rem;font-size:clamp(1.05rem,2.4vw,1.35rem);font-weight:700;line-height:1.35}.hero-tagline{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 1rem;font-size:.88rem;font-weight:500}.hero--home .hero-desc{margin-top:0}.home-section{padding:72px 0}.home-section:nth-child(2n){background:var(--bg-soft)}.section-lead{max-width:42rem;color:var(--muted);margin:0 0 1.5rem}.capability-list,.stack-list{flex-wrap:wrap;gap:.75rem 1rem;margin:0;padding:0;list-style:none;display:flex}.capability-list li,.stack-list li{border-bottom:1px solid color-mix(in srgb, var(--ink) 14%, transparent);min-width:min(100%,220px);padding:.55rem 0;font-size:1.05rem;font-weight:600}.capability-list a{color:inherit;text-decoration:none}.capability-list a:hover{color:var(--primary)}.stack-matrix{grid-template-columns:repeat(auto-fit,minmax(min(100%,15.5rem),1fr));gap:1rem;margin-top:.35rem;display:grid}.stack-group{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-ghost);padding:1.1rem 1.05rem 1.15rem}.stack-group-title{letter-spacing:-.02em;color:var(--ink);margin:0 0 .75rem;font-size:.95rem;font-weight:800}.stack-list--inline{gap:.45rem}.stack-list--inline li{border:1px solid color-mix(in srgb, var(--ink) 16%, transparent);min-width:0;color:var(--muted);background:var(--surface-ghost-soft);border-radius:999px;padding:.32rem .75rem;font-size:.88rem;font-weight:600}.achievements-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:1.25rem;display:grid}.achievement-card{border-top:2px solid var(--ink);padding-top:1rem}.achievement-value{letter-spacing:-.03em;font-size:clamp(1.8rem,4vw,2.4rem);font-weight:700;line-height:1.1;display:block}.achievement-label{color:var(--muted);margin-top:.4rem;font-size:.95rem;display:block}.featured-list,.article-list{gap:1rem;display:grid}.featured-row,.article-row{border-top:1px solid color-mix(in srgb, var(--ink) 12%, transparent);color:inherit;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 0;text-decoration:none;display:flex}.featured-row:last-child,.article-row:last-child{border-bottom:1px solid color-mix(in srgb, var(--ink) 12%, transparent)}.featured-pitch{text-wrap:pretty;font-size:1.02rem;font-weight:700;color:var(--primary)!important;margin:0 0 .55rem!important}.featured-row h3,.article-row h3{margin:0 0 .35rem;font-size:1.2rem}.featured-row p,.article-row p{color:var(--muted);margin:0}.featured-tags{flex-wrap:wrap;gap:.4rem;margin:.75rem 0 0;padding:0;list-style:none;display:flex}.featured-tags li{font-family:var(--font-mono);color:var(--muted);font-size:.75rem}.featured-arrow{flex-shrink:0;font-size:1.4rem}.oss-actions{flex-wrap:wrap;gap:.75rem;display:flex}.arch-chain{margin:1rem 0 0;padding:0;list-style:none}.arch-chain li{font-family:var(--font-mono);padding:.45rem 0;font-size:.95rem;position:relative}.arch-chain li:not(:last-child):after{content:"↓";color:var(--muted);margin-top:.25rem;display:block}.arch-block+.arch-block{margin-top:1.5rem}.track-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:1.25rem;display:grid}.track-card{border-top:2px solid var(--ink);padding-top:1rem}.track-head{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.75rem;display:flex}.track-head h3{text-wrap:pretty;margin:0;font-size:1.1rem;line-height:1.35}.method-body{min-width:0}.method-body .arch-chain{margin-top:.85rem}.track-status{font-family:var(--font-mono);letter-spacing:.04em;color:var(--muted);white-space:nowrap;flex-shrink:0;font-size:.72rem}.track-status--live{color:var(--primary)}.track-io,.track-output{color:var(--muted);font-size:.92rem}.track-output{margin:.5rem 0 .75rem;padding-left:1.1rem}.ai-live-panel{border-top:2px solid var(--ink);padding-top:1.25rem}.ai-live-head{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:1.25rem;display:flex}.ai-live-head h3{margin:0;font-size:1.45rem}.ai-live-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:1.25rem;margin-bottom:1.5rem;display:grid}.ai-live-grid h4{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 .4rem;font-size:.85rem}.ai-live-grid p,.method-body>p{color:var(--ink);margin:0;line-height:1.6}.ai-live-label{font-family:var(--font-mono);color:var(--muted);margin:0 0 .75rem;font-size:.85rem}.ai-live-flow{margin:1.25rem 0}.ai-live-panel .btn-primary{margin-top:1rem;display:inline-flex}.method-list{gap:1.5rem;display:grid}.method-row{border-top:1px solid color-mix(in srgb, var(--ink) 14%, transparent);grid-template-columns:auto 1fr;gap:1rem 1.25rem;padding-top:1.25rem;display:grid}.method-index{font-family:var(--font-mono);color:var(--muted);padding-top:.2rem;font-size:.85rem;font-weight:700}.method-outcome{font-size:.95rem;color:var(--muted)!important;margin-top:.85rem!important}@media (width<=640px){.method-row{grid-template-columns:1fr}}.project-filters{flex-wrap:wrap;gap:.5rem;display:flex}.filter-btn{appearance:none;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;border-radius:999px;padding:.45rem .95rem;font-size:.88rem;font-weight:600;transition:background .2s,color .2s,border-color .2s,transform .15s}.filter-btn:hover{border-color:var(--accent-cyan);color:var(--accent-cyan);background:#3d7dff14}.filter-btn.is-active{background:var(--primary);border-color:var(--primary);color:#fff}.filter-btn:active{transform:scale(.97)}.project-card.is-filtered-out{display:none}.timeline-section{background:var(--bg-soft);padding:88px 0 24px}.timeline{gap:1rem;margin:2rem 0 0;padding:0;list-style:none;display:grid}.timeline-item{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:auto 1fr;align-items:start;gap:1.25rem;padding:1.35rem 1.4rem;transition:transform .25s,box-shadow .25s;display:grid}.timeline-item:hover{box-shadow:var(--shadow-lift);border-color:#5ce1ff4d;transform:translate(4px)}.timeline-index{font-family:var(--font-mono);color:var(--primary);letter-spacing:.04em;font-size:1rem;font-weight:600;line-height:1.2}.timeline-body h3{font-family:var(--font-display);letter-spacing:-.02em;margin-bottom:.4rem;font-size:1.15rem;font-weight:700}.timeline-body p{color:var(--muted);font-size:.95rem}.contact-section{margin-bottom:2rem;padding:24px 0 8px}.contact-panel{background:var(--surface-ghost);border-radius:var(--radius);border:1px solid #5ce1ff40;padding:1.75rem 1.6rem}.contact-info{text-align:left;margin-bottom:0;padding-left:0}.contact-info h2{font-family:var(--font-display);letter-spacing:-.03em;color:var(--ink);margin-bottom:.5rem;font-size:1.35rem;font-weight:800}.contact-hint{color:var(--muted);max-width:42rem;margin-bottom:1rem;font-size:.95rem}.contact-offers{gap:.45rem;margin:0 0 1.1rem;padding:0;list-style:none;display:grid}.contact-offers li{color:var(--ink);padding-left:1rem;font-size:.95rem;position:relative}.contact-offers li:before{content:"";background:var(--accent-cyan);border-radius:50%;width:.35rem;height:.35rem;position:absolute;top:.55em;left:0}.contact-actions{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;display:flex}.contact-email{color:var(--primary);font-size:1.05rem;font-weight:700;text-decoration:none}.contact-email:hover{text-decoration:underline}.copy-email-btn{appearance:none;border:1px solid var(--primary);background:var(--surface-ghost);color:var(--accent-cyan);font:inherit;cursor:pointer;border-radius:999px;padding:.45rem 1rem;font-size:.88rem;font-weight:700;transition:background .2s,color .2s,transform .15s}.copy-email-btn:hover,.copy-email-btn.is-copied{background:var(--primary);color:#fff}.copy-email-btn:active{transform:scale(.97)}.project-links{flex-wrap:wrap;align-items:center;gap:.75rem 1.1rem;display:flex}.project-link--secondary{color:var(--muted);font-weight:600}.project-link--secondary:hover{color:var(--primary)}.principles,.approach{padding:88px 0}.principles{background:0 0}.approach{background:var(--bg-soft)}.principles-grid,.approach-grid{grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:2rem;display:grid}.principles-grid--five{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}.principles-lead{max-width:40rem;font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);margin:.75rem 0 0;font-size:clamp(1.15rem,2.4vw,1.45rem);font-weight:700;line-height:1.45}.principle-card,.approach-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem 1.35rem;transition:transform .25s,box-shadow .25s}.principle-card:hover,.approach-card:hover{box-shadow:var(--shadow-lift);border-color:#5ce1ff47;transform:translateY(-4px)}.principle-index,.approach-index{font-family:var(--font-mono);color:var(--primary);letter-spacing:.06em;margin-bottom:.75rem;font-size:.85rem;font-weight:600;display:block}.principle-card h3,.approach-card h3{font-family:var(--font-display);letter-spacing:-.02em;margin-bottom:.5rem;font-size:1.15rem;font-weight:700}.principle-card p,.approach-card p{color:var(--muted);font-size:.95rem}.back-to-top{right:max(16px, env(safe-area-inset-right,0px));bottom:max(20px, env(safe-area-inset-bottom,0px));z-index:900;border:1px solid var(--line);background:var(--back-top-bg);width:44px;height:44px;color:var(--ink);cursor:pointer;opacity:0;pointer-events:none;box-shadow:var(--shadow-lift);border-radius:14px;font-size:1.1rem;font-weight:700;transition:opacity .2s,transform .2s,background .2s,color .2s;position:fixed;transform:translateY(8px)}.back-to-top.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.back-to-top:hover{background:var(--primary);border-color:var(--primary);color:#fff}.footer{background:var(--bg-soft);border-top:1px solid var(--line);padding:56px 0 28px}.footer-content{justify-content:space-between;margin-bottom:48px;display:flex}.footer-left{max-width:320px}.footer-desc{color:var(--text-secondary);margin-top:16px;font-size:14px}.social-links{gap:24px;display:flex}.social-links a{color:var(--text-color);align-items:center;text-decoration:none;transition:color .3s;display:inline-flex}.social-links a .icon{width:20px;height:20px;margin-right:8px}.social-links a:hover{color:var(--accent-cyan)}.social-links .wechat-link:hover{color:#07c160}.social-links a:hover .icon{transition:transform .3s;transform:scale(1.1)}.footer-bottom{border-top:1px solid var(--line);text-align:center;padding-top:32px}.copyright{color:var(--text-secondary);font-size:14px}.skills{background:0 0;padding:96px 0}.skills-grid{gap:2rem;padding:2rem 0}.skill-category{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:1.5rem;display:grid}.skill-item{background:var(--surface-solid);border-radius:var(--radius);border:1px solid var(--border-subtle);box-shadow:var(--shadow);padding:1.5rem;transition:transform .3s,box-shadow .3s}.skill-header{justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:1rem;display:flex}.skill-header h4{color:var(--ink);margin:0;font-size:1.25rem}.skill-percent{color:var(--primary);flex-shrink:0;font-size:.85rem;font-weight:700}.skill-details{color:var(--muted)}.skill-progress{background:#3d7dff1f;border-radius:3px;height:6px;margin:1rem 0}.progress-bar{background:linear-gradient(90deg, var(--primary-color), var(--accent-cyan));border-radius:3px;height:100%;transition:width 1s cubic-bezier(.22,1,.36,1)}.skill-list{margin:0;padding:0;list-style:none}.skill-list li{margin:.5rem 0;padding-left:1.5rem;position:relative}.skill-list li:before{content:"•";color:var(--accent-cyan);position:absolute;left:0}.experience-stories{background:var(--bg-soft);padding:72px 0 24px}.stories-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:1.25rem;display:grid}.story-card{border-top:2px solid var(--ink);padding:1.1rem 0 .25rem}.story-card h3{text-wrap:pretty;margin:0 0 1rem;font-size:1.15rem;line-height:1.35}.story-flow{gap:.9rem;margin:0;display:grid}.story-flow dt{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--primary);margin-bottom:.25rem;font-size:.72rem;font-weight:700}.story-flow dd{color:var(--muted);margin:0;font-size:.95rem;line-height:1.55}.learning-path{padding:96px 0}.note-card{background:var(--surface-solid);border-radius:var(--radius);border:1px solid var(--border-subtle);flex-direction:column;height:100%;padding:32px;transition:all .3s;display:flex}.note-card p{color:var(--text-secondary);flex-grow:1;margin-bottom:auto;font-size:15px}.read-more,.project-link{color:var(--primary-color);font-size:14px;font-weight:500;text-decoration:none;display:inline-block}.read-more:hover,.project-link:hover{text-decoration:underline}.featured-projects{background:var(--bg-soft);padding:96px 0}.project-group--spaced{margin-top:4rem}.project-group-title{margin-bottom:0}.project-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:1.25rem;margin-top:48px;display:grid}.project-group .project-grid{margin-top:1.5rem}.project-card{background:var(--surface-solid);border-radius:var(--radius);border:1px solid var(--border-subtle);box-shadow:var(--shadow);flex-direction:column;height:100%;min-height:0;transition:all .3s;display:flex;overflow:hidden}.project-content{flex-direction:column;flex:1;justify-content:space-between;padding:24px;display:flex}.project-content h3{font-family:var(--font-display);color:var(--text-color);margin-bottom:12px;font-size:1.25rem;font-weight:700}.project-content p{color:var(--text-secondary);flex-grow:1;margin-bottom:20px;font-size:15px}.project-tech{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.project-tech span{background:var(--primary-soft);color:var(--primary-color);border-radius:999px;padding:4px 12px;font-size:13px}.life-gallery{background:0 0;padding:96px 0}.gallery-grid{gap:24px;margin-top:48px}.gallery-item{box-shadow:var(--shadow);aspect-ratio:3/2;background:var(--surface);border-radius:12px;position:relative;overflow:hidden}.gallery-item img{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform .3s;position:absolute;inset:0}.gallery-item:hover img{transform:scale(1.05)}.gallery-caption{color:#fff;background:linear-gradient(#0000,#000c);padding:1.5rem;position:absolute;bottom:0;left:0;right:0}.gallery-caption h3{margin-bottom:8px;font-size:20px;font-weight:600}.gallery-caption p{opacity:.9;font-size:14px}.video-cover{aspect-ratio:16/9;background:var(--surface);width:100%;display:block;position:relative;overflow:hidden}.video-cover img{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform .5s;display:block;position:absolute;inset:0}.video-cover:hover img{transform:scale(1.05)}.play-button{color:#fff;opacity:.9;z-index:2;background:#1677ffe6;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;font-size:24px;transition:all .3s;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.video-cover:hover .play-button{background:var(--primary-color);opacity:1;transform:translate(-50%,-50%)scale(1.1)}.hobbies{padding:96px 0}.hobby-grid{margin-top:48px}.hobby-card{background:var(--surface-solid);border-radius:var(--radius);border:1px solid var(--border-subtle);box-shadow:var(--shadow);text-align:center;padding:32px}.hobby-card h3{color:var(--text-color);margin-bottom:16px;font-size:20px;font-weight:600}.hobby-card p{color:var(--text-secondary);margin-bottom:20px;font-size:15px}.hobby-list{text-align:left;margin:0;padding:0;list-style:none}.hobby-list li{color:var(--text-secondary);margin-bottom:8px;padding-left:20px;font-size:14px;position:relative}.hobby-list li:before{content:"•";color:var(--primary-color);position:absolute;left:0}.blog{background:0 0;padding:96px 0}.blog-grid{margin-top:48px}.blog-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow);overflow:hidden}.blog-image{aspect-ratio:16/9;background:var(--surface);width:100%;position:relative;overflow:hidden}.blog-image img{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform .3s;position:absolute;inset:0}.blog-card:hover .blog-image img{transform:scale(1.05)}.blog-content{padding:24px}.blog-content h3{color:var(--text-color);margin-bottom:12px;font-size:20px;font-weight:600}.blog-content p{color:var(--text-secondary);margin-bottom:20px;font-size:15px}.current-learning{background:0 0;padding:96px 0}.focus-content{background:var(--surface-solid);border-radius:var(--radius);border:1px solid var(--border-subtle);max-width:800px;box-shadow:var(--shadow);margin:48px auto 0;padding:32px}.focus-item h3{color:var(--primary-color);margin-bottom:16px;font-size:24px;font-weight:600}.focus-item p{color:var(--text-secondary);margin-bottom:20px;font-size:16px;line-height:1.6}.focus-item ul{margin:0;padding:0;list-style:none}.focus-item ul li{color:var(--text-secondary);margin-bottom:12px;padding-left:24px;font-size:15px;position:relative}.focus-item ul li:before{content:"→";color:var(--primary-color);position:absolute;left:0}.modal{z-index:1000;background-color:#000000b3;justify-content:center;align-items:center;width:100%;height:100%;display:none;position:fixed;top:0;left:0}.modal.show{display:flex}.modal[hidden]{display:none!important}.modal-content{background-color:var(--surface);border-radius:var(--radius-sm);border:1px solid var(--line);width:90%;max-width:300px;padding:20px;position:relative}.modal-content img{width:100%;height:auto;display:block}.close-button{background-color:var(--surface);border:2px solid var(--primary-color);cursor:pointer;width:30px;height:30px;color:var(--accent-cyan);border-radius:50%;justify-content:center;align-items:center;font-size:18px;transition:all .3s;display:flex;position:absolute;top:-10px;right:-10px}.close-button:hover{background-color:var(--primary-color);color:#fff}.error-wrapper{background-color:var(--bg);justify-content:center;align-items:center;min-height:70vh;padding:2rem 0;display:flex}.error-content{text-align:center;background-color:var(--surface);border:1px solid var(--line);border-radius:var(--radius);width:90%;max-width:600px;box-shadow:var(--shadow-lift);padding:2rem}.error-icon{color:#5ce1ff40;margin-bottom:1.5rem;font-size:5rem}.error-icon .icon{width:4.5rem;height:4.5rem}.error-code{background:linear-gradient(135deg, var(--primary), var(--accent-cyan));-webkit-text-fill-color:transparent;background-clip:text;margin:0;font-size:clamp(5rem,15vw,8rem);font-weight:800;line-height:1}.error-title{color:var(--ink);margin:1rem 0 1.5rem;font-size:1.75rem;font-weight:600}.error-message{color:var(--muted);margin-bottom:2.5rem;font-size:1.1rem;line-height:1.6}.btn-home{background-color:var(--primary);border-radius:50px;align-items:center;gap:10px;padding:12px 32px;font-weight:500;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-flex;box-shadow:0 4px 14px #3d7dff4d;color:#fff!important}.btn-home:hover{background-color:var(--primary-deep);transform:translateY(-3px);box-shadow:0 6px 20px #3d7dff59}.btn-home i{font-size:.9rem}.project-cover{border-bottom:1px solid var(--line);aspect-ratio:16/9;background:var(--surface);flex:none;align-self:stretch;width:100%;display:block;position:relative;overflow:hidden}.project-cover img,.case-cover-image,.gallery-item img,.video-cover img,.blog-image img,.modal-content img{background:var(--surface)}.project-cover img,.theme-cover{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform .35s,opacity .2s;display:block;position:absolute;inset:0}.theme-cover--dark,html[data-theme=dark] .theme-cover--light{opacity:0;pointer-events:none}html[data-theme=dark] .theme-cover--dark,html[data-theme=light] .theme-cover--light{opacity:1;pointer-events:auto}html[data-theme=light] .theme-cover--dark{opacity:0;pointer-events:none}.project-card:hover .project-cover .theme-cover--light,.project-card:hover .project-cover .theme-cover--dark{transform:scale(1.03)}html[data-theme=dark] .project-card:hover .project-cover .theme-cover--light,html[data-theme=light] .project-card:hover .project-cover .theme-cover--dark{transform:none}.channel-icon{width:1.5rem;height:1.5rem;color:var(--accent-cyan);margin-bottom:.75rem}.skills-grid--evidence{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:1rem;display:grid}.skill-item--evidence{background:var(--surface-ghost);border:1px solid var(--line);border-radius:var(--radius-sm);padding:1.25rem}.skill-item--evidence h3{margin-bottom:.75rem;font-size:1.05rem}.skill-evidence{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.skill-evidence a{font-family:var(--font-mono);letter-spacing:.04em;color:var(--primary);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--primary-soft);padding:.35rem .65rem;font-size:.75rem;text-decoration:none}.skill-evidence a:hover{border-color:var(--primary)}.hobby-icon{border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--primary-soft);min-width:2.5rem;height:2.5rem;color:var(--primary);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;justify-content:center;align-items:center;margin-bottom:.75rem;padding:0 .65rem;font-size:.8rem;font-weight:700;display:inline-flex}.back-nav{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-ghost);min-height:2.4rem;color:var(--ink);font-family:var(--font-display);letter-spacing:-.01em;align-items:center;gap:.45rem;margin:0;padding:.45rem .95rem .45rem .7rem;font-size:.92rem;font-weight:700;text-decoration:none;transition:transform .15s,border-color .15s,background .15s,color .15s;display:inline-flex}.back-nav-icon{background:var(--accent-cyan);color:#041018;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:1.35rem;height:1.35rem;font-size:.85rem;font-weight:800;line-height:1;display:inline-flex}.back-nav-label{line-height:1.2}.back-nav:hover{background:color-mix(in srgb, var(--accent-cyan) 14%, var(--surface-ghost));color:var(--ink);border-color:#5ce1ff8c;transform:translateY(-1px)}.back-nav:focus-visible{outline:2px solid var(--accent-cyan);outline-offset:3px}.back-nav--prominent{background:color-mix(in srgb, var(--accent-cyan) 16%, var(--surface-ghost));border-color:#5ce1ff73;justify-content:center;width:auto;min-width:min(100%,16rem);min-height:2.75rem;padding-inline:1.15rem;font-size:.98rem}.detail-topbar{justify-content:flex-start;align-items:center;margin:0 0 1.75rem;display:flex}.back-nav-footer{padding:0 0 2.75rem}.back-nav-footer .container{display:block}.back-nav-footer-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-ghost);text-align:left;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.85rem 1.25rem;width:100%;max-width:46rem;padding:1.1rem 1.2rem;display:flex}.back-nav-footer-hint{color:var(--muted);margin:0;font-size:.95rem}html[data-theme=light] .back-nav-icon{background:var(--primary);color:#fff}html[data-theme=light] .back-nav:hover,html[data-theme=light] .back-nav--prominent{background:color-mix(in srgb, var(--primary) 10%, #fff);border-color:#2f6bff66}.case-back{display:none}.hero.hero--detail{text-align:left;background:var(--page-hero-bg);min-height:auto;color:var(--page-hero-fg);align-items:stretch;padding:108px 0 64px}.hero.hero--detail:before{background:repeating-linear-gradient(90deg, transparent 0, transparent 47px, var(--page-hero-grid) 47px, var(--page-hero-grid) 48px), repeating-linear-gradient(0deg, transparent 0, transparent 47px, var(--page-hero-grid) 47px, var(--page-hero-grid) 48px);opacity:.9}.hero.hero--detail .hero-atmosphere:after{display:none}.hero.hero--detail .hero-atmosphere:before{background:linear-gradient(90deg, transparent, var(--page-hero-scan), transparent)}.hero-content--detail{text-align:left;max-width:46rem;margin:0}.hero.hero--detail .subtitle{color:var(--page-hero-subtitle);border-color:var(--page-hero-subtitle-border);background:var(--page-hero-subtitle-bg)}.hero.hero--detail .subtitle:before{color:var(--accent-cyan)}.hero.hero--detail .hero-title{max-width:none;color:var(--page-hero-title);margin-top:.35rem;font-size:clamp(2.1rem,4.6vw,3.15rem);line-height:1.12}.hero.hero--detail .hero-desc{max-width:40rem;color:var(--page-hero-desc);margin:0}@media (width<=640px){.back-nav-footer-panel{flex-direction:column;align-items:flex-start}.back-nav--prominent{width:100%}}.case-cover{padding:0 0 2rem}.case-cover-frame{aspect-ratio:16/9;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);position:relative;overflow:hidden}.case-cover-image{aspect-ratio:16/9;object-fit:cover;object-position:center;background:var(--surface);border:0;border-radius:0;width:100%;max-width:100%;height:auto;display:block}.case-cover-frame .case-cover-image{aspect-ratio:auto;width:100%;height:100%;position:absolute;inset:0}.case-body{padding:0 0 4rem}.case-grid{gap:1.25rem;display:grid}.case-block{background:var(--surface-ghost);border:1px solid var(--line);border-radius:var(--radius-sm);padding:1.5rem}.case-block h2{margin-bottom:.75rem;font-size:1.1rem}.case-block ul{padding-left:1.1rem}.case-block li+li{margin-top:.4rem}.case-metrics{grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr));gap:.75rem;display:grid}.case-metric{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg-soft);padding:.9rem 1rem}.case-metric-value{font-family:var(--font-mono);color:var(--accent-cyan);font-size:1.25rem;font-weight:700;display:block}.case-metric-label{color:var(--muted);margin-top:.25rem;font-size:.85rem;display:block}a.case-metric-label--link{color:var(--accent-cyan);text-decoration:none}a.case-metric-label--link:hover{text-decoration:underline}.case-stats-embed{margin:1rem 0 0}.case-stats-embed img{border-radius:var(--radius-sm);border:1px solid var(--line);max-width:min(100%,480px);height:auto;display:block}.case-artifacts{gap:.9rem;display:grid}.case-artifact{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg-soft);padding:.9rem 1rem}.case-artifact h3{margin-bottom:.35rem;font-size:1rem}.case-artifact p{color:var(--muted);margin-bottom:.65rem;font-size:.92rem}.case-pipeline{padding:0 0 1.5rem}.pipeline-board{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-ghost);max-width:42rem;margin:0 auto;padding:1.5rem 1.35rem}.pipeline-inputs{flex-wrap:wrap;justify-content:center;gap:.5rem;margin:0 0 .35rem;padding:0;list-style:none;display:flex}.pipeline-inputs li{font-family:var(--font-mono);letter-spacing:.04em;border:1px solid color-mix(in srgb, var(--primary) 35%, var(--line));color:var(--primary);background:color-mix(in srgb, var(--primary) 10%, transparent);border-radius:4px;padding:.4rem .7rem;font-size:.82rem;font-weight:600}.pipeline-stages{flex-direction:column;align-items:center;gap:.15rem;margin:0;padding:0;list-style:none;display:flex}.pipeline-stages li{flex-direction:column;align-items:center;gap:.15rem;display:flex}.pipeline-arrow{color:var(--accent-cyan);font-size:1.1rem;line-height:1}.pipeline-stage{font-family:var(--font-mono);letter-spacing:.02em;text-align:center;color:var(--ink);font-size:.95rem;font-weight:600}.case-page .case-block h2{font-variant-numeric:tabular-nums}.case-section-lead{font-family:var(--font-mono);letter-spacing:.04em;color:var(--primary);margin:-.35rem 0 .85rem;font-size:.82rem}.deployment-steps{color:var(--muted);margin:.85rem 0 1.25rem;padding-left:1.2rem;line-height:1.65}.deployment-steps li+li{margin-top:.55rem}.case-try{border:1px solid color-mix(in srgb, var(--primary) 30%, var(--line));background:color-mix(in srgb, var(--primary) 6%, var(--surface-ghost))}.case-try-note{color:var(--muted);opacity:.95;font-size:.92rem}.case-try-command{border:1px solid var(--line);background:var(--surface-solid);font-family:var(--font-mono);color:var(--ink);white-space:pre-wrap;border-radius:6px;margin:1rem 0 1.35rem;padding:1rem 1.1rem;font-size:.82rem;line-height:1.55;overflow-x:auto}.btn-home{align-items:center;gap:.5rem;display:inline-flex}.project-card.is-filtered-out,.project-card[hidden]{display:none!important}.hero--home .hero-title{letter-spacing:-.03em}.hero--signature .hero-atmosphere:before{opacity:.9}@media (width<=768px){.project-cover,.case-cover-image{aspect-ratio:16/9}.project-cover img,.case-cover-image{object-fit:cover;object-position:center}.case-cover-image{object-fit:cover;object-position:center;height:auto}}.note-category{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--primary);margin:0;font-size:.72rem;font-weight:600}.note-card.is-filtered-out,.note-card[hidden]{display:none!important}.notes-index .section-head{margin-bottom:1.5rem}.notes-index .project-filters{margin-top:.85rem}.notes-grid--index{grid-template-columns:1fr;gap:1.25rem}@media (width>=900px){.notes-grid--index{grid-template-columns:1fr 1fr}}.note-card--rich{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-ghost);flex-direction:column;gap:.75rem;padding:1.4rem 1.35rem;display:flex}.note-card h2{margin:0;font-size:1.35rem;line-height:1.35}.note-card h2 a{color:inherit;text-decoration:none}.note-card h2 a:hover{color:var(--accent-cyan)}.note-card p{color:var(--muted);margin:0;line-height:1.65}.note-card-proof{font-family:var(--font-mono);color:var(--accent-cyan);font-size:.86rem;line-height:1.5!important}.note-card .read-more{align-items:center;gap:.35rem;margin-top:auto;font-weight:600;display:inline-flex}.note-tags{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.note-tags li{border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--muted);padding:.2rem .55rem;font-size:.8rem}.note-tags--hero{justify-content:flex-start;margin-top:1.15rem}.note-proof{max-width:40rem;font-family:var(--font-mono);color:var(--page-hero-desc);opacity:.95;margin:1rem 0 0;font-size:.9rem;line-height:1.55}.note-body{padding:0 0 3.5rem}.note-layout{gap:2rem;display:grid}@media (width>=980px){.note-layout{grid-template-columns:15rem minmax(0,1fr);align-items:start;gap:2.5rem}}.note-toc{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-ghost);padding:1rem 1.05rem;position:sticky;top:5.5rem}.note-toc-label{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:.7rem;font-size:.78rem}.note-toc ol{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.note-toc a{color:var(--muted);font-size:.9rem;line-height:1.4;text-decoration:none}.note-toc a:hover{color:var(--accent-cyan)}.note-prose{max-width:46rem}.note-section+.note-section{border-top:1px solid var(--line);margin-top:2.6rem;padding-top:2.2rem}.note-section h2{margin-bottom:1rem;scroll-margin-top:5.5rem;font-size:clamp(1.35rem,2.4vw,1.7rem)}.note-section p{color:var(--muted);margin-bottom:.95rem;line-height:1.75}.note-section ul{color:var(--muted);margin:.4rem 0 1rem;padding-left:1.15rem;line-height:1.7}.note-section li+li{margin-top:.45rem}.note-stats{grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr));gap:.75rem;margin:1.1rem 0 1.25rem;display:grid}.note-stat{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg-soft);color:inherit;padding:.9rem 1rem;text-decoration:none;display:block}a.note-stat:hover{border-color:#5ce1ff73}.note-stat-value{font-family:var(--font-mono);color:var(--accent-cyan);font-size:1.25rem;font-weight:700;display:block}.note-stat-label{color:var(--muted);margin-top:.3rem;font-size:.84rem;line-height:1.35;display:block}.note-code{border:1px solid var(--line);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--bg-soft) 85%, #000 15%);margin:1rem 0 1.25rem;overflow:hidden}.note-code figcaption{border-bottom:1px solid var(--line);font-family:var(--font-mono);color:var(--muted);padding:.55rem .9rem;font-size:.78rem}.note-code pre{margin:0;padding:1rem 1.05rem;overflow-x:auto}.note-code code{font-family:var(--font-mono);color:var(--ink);white-space:pre;font-size:.84rem;line-height:1.55}.note-callout{border-left:3px solid var(--accent-cyan);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--surface-ghost);margin:1.1rem 0 1.25rem;padding:1rem 1.1rem}.note-callout strong{margin-bottom:.35rem;font-size:.95rem;display:block}.note-callout p{color:var(--muted);margin:0}.note-inline-links{flex-wrap:wrap;gap:.55rem;margin-top:.85rem;display:flex}.note-embed{margin:2rem 0 0}.note-embed img{border-radius:var(--radius-sm);border:1px solid var(--line);max-width:min(100%,480px);height:auto;display:block}.note-related{border-top:1px solid var(--line);margin-top:2.5rem;padding-top:1.75rem}.note-related h2{margin-bottom:.85rem;font-size:1.25rem}.note-related ul{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.note-related a{color:var(--accent-cyan);text-decoration:none}.note-related a:hover{text-decoration:underline}.note-cta{flex-wrap:wrap;gap:.75rem;margin-top:2.5rem;display:flex}.learn-funnel{padding:0 0 2.5rem}.learn-funnel-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-ghost);padding:1.5rem 1.4rem}.learn-funnel-panel h2{margin-bottom:.55rem;font-size:1.35rem}.learn-funnel-panel p{color:var(--muted);max-width:40rem;margin-bottom:1rem}@media (width<=979px){.note-toc{position:static}}.org-about{padding:0 0 2.5rem}.org-page .hero-content{flex-direction:column;align-items:center;display:flex}.org-page .hero-desc{text-wrap:pretty;max-width:40rem}.org-page .hero-actions{justify-content:center;gap:.75rem;width:auto;display:flex}.org-page .hero-actions .btn-primary,.org-page .hero-actions .btn-ghost{clip-path:none;width:auto;min-width:12.5rem;box-shadow:none;margin:0}.org-join-panel .btn-primary{clip-path:none;box-shadow:none;min-width:12.5rem;display:inline-flex}.org-join-actions{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;display:flex}.org-join-actions .contact-email{font-family:var(--font-mono);font-size:.95rem}@media (width<=768px){.org-page .hero-actions{flex-direction:column;align-items:stretch;width:100%;max-width:none}.org-page .hero-actions .btn-primary,.org-page .hero-actions .btn-ghost,.org-join-panel .btn-primary{width:100%;min-width:0}.org-join-actions{flex-direction:column;align-items:stretch}.org-join-actions .copy-email-btn{width:100%}}.org-brand{padding:0 0 2.75rem}.org-brand-lead{max-width:40rem;color:var(--muted);text-wrap:pretty;margin:0 0 1.5rem;line-height:1.7}.org-brand-map{align-items:stretch;gap:1rem;display:grid}@media (width>=820px){.org-brand-map{grid-template-columns:1fr auto 1fr;align-items:center;gap:1.25rem}}.org-brand-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-ghost);height:100%;padding:1.35rem 1.3rem}.org-brand-panel--org{background:color-mix(in srgb, var(--accent-cyan) 6%, var(--surface-ghost));border-color:#5ce1ff52}.org-brand-kicker{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 .35rem;font-size:.72rem;font-weight:500}.org-brand-panel--org .org-brand-kicker{color:var(--accent-cyan)}.org-brand-name{letter-spacing:-.02em;margin:0 0 1rem;font-size:1.35rem;font-weight:700;line-height:1.25}.org-brand-items{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.org-brand-items li{color:var(--muted);padding-left:.95rem;line-height:1.5;position:relative}.org-brand-items li:before{content:"";background:color-mix(in srgb, var(--ink) 35%, transparent);border-radius:50%;width:.35rem;height:.35rem;position:absolute;top:.65em;left:0}.org-brand-panel--org .org-brand-items li:before{background:color-mix(in srgb, var(--accent-cyan) 70%, transparent)}.org-brand-connector{min-height:1.5rem;color:var(--muted);justify-content:center;align-items:center;gap:.55rem;display:flex}.org-brand-connector-label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-cyan);flex-shrink:0;font-size:.72rem}.org-brand-connector-line{background:color-mix(in srgb, var(--accent-cyan) 45%, transparent);flex:1;height:1px;display:none}@media (width>=820px){.org-brand-connector{flex-direction:column;gap:.65rem;min-width:3.5rem;padding:0 .15rem}.org-brand-connector-line{flex:none;width:1px;height:1.6rem;display:block}}@media (width<=819px){.org-brand-connector-line{max-width:2.5rem;display:block}}.org-about-grid{gap:1rem;max-width:46rem;display:grid}.org-about-copy{color:var(--muted);margin:0;font-size:1.02rem;line-height:1.7}.org-projects{padding:0 0 2.75rem}.org-category+.org-category{margin-top:2.25rem}.org-category-head{max-width:42rem;margin-bottom:1rem}.org-category-head h3{margin:0 0 .35rem;font-size:1.35rem}.org-category-head p{color:var(--muted);margin:0;line-height:1.65}.org-category-empty{color:var(--muted);margin:0;font-size:.95rem}.org-project-grid{gap:1.1rem;display:grid}@media (width>=860px){.org-project-grid{grid-template-columns:1fr 1fr}}.org-project-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-ghost);flex-direction:column;gap:.75rem;padding:1.35rem 1.25rem;display:flex}.org-project-head{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.org-project-head h4{margin:0;font-size:1.15rem}.org-project-status{font-family:var(--font-mono);color:var(--accent-cyan);border:1px solid #5ce1ff59;border-radius:999px;flex-shrink:0;padding:.2rem .55rem;font-size:.75rem}.org-project-org{font-family:var(--font-mono);color:var(--muted);margin:-.25rem 0 0;font-size:.75rem}.org-project-card>p:not(.org-project-org){color:var(--muted);margin:0;line-height:1.65}.org-project-tags{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.org-project-tags li{border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--muted);padding:.2rem .55rem;font-size:.8rem}.org-project-actions{flex-wrap:wrap;gap:.55rem;margin-top:auto;padding-top:.35rem;display:flex}.org-project-soon{font-family:var(--font-mono);color:var(--muted);font-size:.85rem}.org-join{padding:0 0 4rem}.org-join-panel{border-radius:var(--radius);background:var(--surface-ghost);border:1px solid #5ce1ff59;padding:1.6rem 1.4rem}.org-join-panel h2{margin:0 0 .55rem;font-size:1.45rem}.org-join-panel>p{color:var(--muted);max-width:40rem;margin:0 0 .9rem;line-height:1.65}.org-join-panel ul{color:var(--muted);margin:0 0 1.25rem;padding-left:1.15rem;line-height:1.65}.org-join-panel li+li{margin-top:.4rem}.now-page .hero-desc{text-wrap:pretty;max-width:40rem}.now-meta{padding:0 0 1.75rem}.now-updated{font-family:var(--font-mono);color:var(--text);flex-wrap:wrap;align-items:baseline;gap:.45rem .65rem;margin:0;font-size:.88rem;display:flex}.now-updated span{color:var(--muted)}.now-cadence{max-width:36rem;color:var(--muted);margin:.45rem 0 0;line-height:1.65}.now-sections{padding:0 0 3rem}.now-section+.now-section{margin-top:2.4rem}.now-section-head{max-width:40rem;margin-bottom:1rem}.now-section-head h2{margin:0 0 .35rem;font-size:1.45rem}.now-section-head p{color:var(--muted);margin:0;line-height:1.65}.now-item-list{gap:.85rem;margin:0;padding:0;list-style:none;display:grid}@media (width>=860px){.now-item-list{grid-template-columns:1fr 1fr}}.now-item{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-ghost);padding:1.1rem 1.15rem}.now-item-title{color:var(--text);margin:0;font-size:1.08rem;font-weight:650;text-decoration:none;display:inline-block}a.now-item-title:hover{color:var(--accent-cyan)}.now-item p{color:var(--muted);margin:.4rem 0 0;font-size:.96rem;line-height:1.65}.demo-generator-page .hero-desc{text-wrap:pretty;max-width:42rem}.demo-banner{padding:0 0 1.5rem}.demo-badge{font-family:var(--font-mono);color:var(--accent-cyan);border:1px solid #5ce1ff66;border-radius:999px;margin:0 0 .55rem;padding:.2rem .55rem;font-size:.75rem;display:inline-flex}.demo-banner-note{max-width:44rem;color:var(--muted);margin:0;line-height:1.7}.demo-workspace{padding:0 0 2.5rem}.demo-section-label{margin:0 0 .85rem;font-size:1.2rem}.demo-pipeline-wrap{margin-bottom:1.25rem}.demo-layout{gap:1.25rem;display:grid}@media (width>=980px){.demo-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:start}}.demo-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-ghost);padding:1.25rem}.demo-panel-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.demo-panel-head h2,.demo-panel>h2{margin:0;font-size:1.2rem}.demo-panel-actions{flex-wrap:wrap;gap:.5rem;display:flex}.demo-upload{cursor:pointer}.demo-upload-hint{color:var(--muted);margin:0 0 .75rem;font-size:.9rem}.demo-input{resize:vertical;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);width:100%;min-height:18rem;color:var(--text);font:inherit;padding:.9rem 1rem;line-height:1.55}.demo-generator-page.is-running .demo-panel--input{opacity:.78}.demo-input:focus{outline:2px solid color-mix(in srgb, var(--accent-cyan) 45%, transparent);outline-offset:1px}.demo-run-actions{flex-wrap:wrap;gap:.65rem;margin-top:.9rem;display:flex}.demo-pipeline{grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.demo-pipeline li{border:1px solid var(--line);border-radius:var(--radius-sm);min-height:100%;color:var(--muted);background:var(--surface-ghost);align-items:flex-start;gap:.65rem;padding:.85rem .8rem;transition:border-color .2s,color .2s,background .2s,transform .2s;display:flex}.demo-pipeline li.is-active{color:var(--text);background:color-mix(in srgb, var(--accent-cyan) 10%, transparent);border-color:#5ce1ff8c;transform:translateY(-1px)}.demo-pipeline li.is-done{color:var(--text);border-color:#5ce1ff59}.demo-stage-index{font-family:var(--font-mono);color:var(--accent-cyan);font-size:.78rem;line-height:1.4}.demo-stage-copy{gap:.25rem;display:grid}.demo-stage-title{color:inherit;font-size:.95rem;font-weight:700;line-height:1.35}.demo-stage-detail{color:var(--muted);font-size:.82rem;line-height:1.45}.demo-pipeline li.is-active .demo-stage-detail,.demo-pipeline li.is-done .demo-stage-detail{color:color-mix(in srgb, var(--text) 72%, var(--muted))}.demo-activity-detail{color:var(--muted);min-height:2.6rem;margin:.65rem 0 .75rem;line-height:1.6}.demo-activity-log{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);max-height:11rem;font-family:var(--font-mono);margin:0 0 1.1rem;padding:.75rem .85rem;font-size:.82rem;line-height:1.55;list-style:none;overflow:auto}.demo-activity-log li{color:var(--muted)}.demo-activity-log li+li{margin-top:.35rem}.demo-activity-log li.is-active{color:var(--accent-cyan)}.demo-activity-log li.is-done{color:var(--text)}.demo-activity-log li.is-idle{color:var(--muted)}.demo-output-block{border-top:1px solid var(--line);margin-top:1.15rem;padding-top:1.05rem}.demo-output-block.is-hidden,.demo-results-panel.is-hidden{display:none}.demo-results-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-ghost);margin-top:1.25rem;padding:1.25rem}.demo-results-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 1rem;margin-bottom:.9rem;display:flex}.demo-results-title,.demo-output-block h3{margin:0;font-size:1.15rem}.demo-results-count{color:var(--muted);margin:0;font-size:.9rem}.demo-results{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;display:grid}.demo-case{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);opacity:0;padding:.95rem 1rem;transition:opacity .28s,transform .28s;transform:translateY(.4rem)}.demo-case.is-visible{opacity:1;transform:none}.demo-case-head{justify-content:space-between;gap:.75rem;margin-bottom:.35rem;display:flex}.demo-case-id,.demo-case-priority{font-family:var(--font-mono);color:var(--accent-cyan);font-size:.78rem}.demo-case h4{margin:0 0 .55rem;font-size:1.02rem}.demo-case-label{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:.35rem 0 .2rem;font-size:.72rem}.demo-case ol{color:var(--muted);margin:0;padding-left:1.1rem;line-height:1.55}.demo-case-expected{color:var(--text);margin:0;line-height:1.55}.demo-review-note,.demo-export-hint{color:var(--muted);margin:0 0 .7rem;font-size:.92rem;line-height:1.6}.demo-personas,.demo-export-list{flex-wrap:wrap;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.demo-personas li,.demo-export-btn{border:1px solid var(--line);color:var(--muted);background:0 0;border-radius:999px;padding:.4rem .75rem;font-size:.85rem;transition:border-color .2s,color .2s,background .2s}.demo-export-btn{cursor:pointer;font:inherit}.demo-export-btn:disabled{cursor:not-allowed;opacity:.55}.demo-export-btn:not(:disabled):hover{color:var(--accent-cyan);border-color:#5ce1ff8c}.demo-personas li.is-active,.demo-export-btn.is-active{color:var(--accent-cyan);background:color-mix(in srgb, var(--accent-cyan) 10%, transparent);border-color:#5ce1ff8c}.demo-personas li.is-done,.demo-export-btn.is-done{color:var(--text);border-color:#5ce1ff59}.demo-export-status{color:var(--accent-cyan);margin:.75rem 0 0;font-size:.9rem}.demo-real{padding:0 0 2.5rem}.demo-real-panel{border-radius:var(--radius);background:var(--surface-ghost);border:1px solid #5ce1ff59;padding:1.4rem 1.3rem}.demo-real-panel h2{margin:0 0 .5rem;font-size:1.3rem}.demo-real-panel>p{max-width:40rem;color:var(--muted);margin:0 0 1rem;line-height:1.65}.demo-generator-page .hero-actions .btn-primary,.demo-generator-page .hero-actions .btn-ghost,.demo-run-actions .btn-primary,.demo-run-actions .btn-ghost,.demo-panel-actions .btn-ghost,.demo-real-panel .btn-primary,.demo-real-panel .btn-ghost{clip-path:none;box-shadow:none;width:auto;min-width:0}@media (width<=980px){.demo-pipeline,.demo-results{grid-template-columns:1fr 1fr}}@media (width<=768px){.demo-pipeline,.demo-results{grid-template-columns:1fr}.demo-generator-page .hero-actions{flex-direction:column;align-items:stretch;width:100%;max-width:none}.demo-generator-page .hero-actions .btn-primary,.demo-generator-page .hero-actions .btn-ghost,.demo-run-actions .btn-primary,.demo-run-actions .btn-ghost{width:100%;min-width:0}}.playground-page .hero-desc{text-wrap:pretty;max-width:42rem}.playground-page .hero-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;width:auto;display:flex}.playground-page .hero-actions .btn-primary,.playground-page .hero-actions .btn-ghost{clip-path:none;width:auto;min-width:12.5rem;box-shadow:none;margin:0}.playground-experiences,.playground-try,.playground-modes{padding:0 0 2.75rem}.playground-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.25rem;display:grid}.playground-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-ghost);flex-direction:column;gap:.85rem;padding:1.35rem 1.25rem;display:flex}.playground-card-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.55rem .75rem;display:flex}.playground-card-head h3{letter-spacing:-.02em;margin:0;font-size:1.2rem}.playground-card>p{color:var(--muted);flex:1;margin:0;line-height:1.65}.playground-mode{border-radius:var(--radius-sm);border:1px solid var(--line);font-family:var(--font-mono);letter-spacing:.03em;color:var(--muted);white-space:nowrap;align-items:center;padding:.2rem .55rem;font-size:.75rem;display:inline-flex}.playground-mode--interactive{color:var(--accent-cyan);background:#5ce1ff14;border-color:#5ce1ff66}.playground-mode--live{color:var(--primary);background:#3d7dff1a;border-color:#3d7dff66}.playground-mode--install{color:var(--ink);background:var(--surface-ghost-soft)}.playground-card-actions{flex-wrap:wrap;align-items:center;gap:.65rem .85rem;margin-top:auto;padding-top:.25rem;display:flex}.playground-card-actions .btn-primary{clip-path:none;box-shadow:none;width:auto;min-width:0;padding-inline:1rem}.playground-try-panel{border-radius:var(--radius);background:var(--surface-ghost);border:1px solid #5ce1ff59;padding:1.6rem 1.4rem}.playground-try-panel h2{margin:0 0 .55rem;font-size:1.45rem}.playground-try-panel>p{color:var(--muted);max-width:40rem;margin:0 0 1.1rem;line-height:1.65}.playground-try-label{color:var(--ink);margin-bottom:.45rem;font-size:.9rem;font-weight:600;display:block}.playground-try-row{flex-wrap:wrap;gap:.65rem;display:flex}.playground-try-input{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);min-width:0;height:2.75rem;color:var(--ink);font-family:var(--font-mono);flex:14rem;padding:0 .9rem;font-size:.95rem}.playground-try-input:focus{outline-offset:1px;outline:2px solid #3d7dff73}.playground-try-row .btn-primary{clip-path:none;box-shadow:none;width:auto;min-width:8.5rem}.playground-try-status{color:var(--muted);margin:.9rem 0 0;font-size:.92rem}.playground-try-status[data-state=error]{color:#ff8f8f}.playground-try-result{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin-top:1.1rem;display:grid}.playground-try-result>div{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-ghost-soft);padding:.9rem 1rem}.playground-try-metric-label{color:var(--muted);margin-bottom:.35rem;font-size:.8rem;display:block}.playground-try-result strong{font-family:var(--font-mono);letter-spacing:-.02em;font-size:1.35rem}.playground-try-empty{color:var(--muted);margin:.9rem 0 0;font-size:.92rem}.playground-modes-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1.25rem;display:grid}.playground-mode-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-ghost-soft);padding:1.2rem 1.1rem}.playground-mode-card h3{margin:0 0 .45rem;font-size:1.05rem}.playground-mode-card p{color:var(--muted);margin:0;font-size:.95rem;line-height:1.6}@media (width<=900px){.playground-grid,.playground-modes-grid{grid-template-columns:1fr}}@media (width<=768px){.playground-page .hero-actions{flex-direction:column;align-items:stretch;width:100%;max-width:none}.playground-page .hero-actions .btn-primary,.playground-page .hero-actions .btn-ghost,.playground-try-row .btn-primary{width:100%;min-width:0}.playground-try-result,.playground-modes-grid{grid-template-columns:1fr}}img,video,svg,canvas{max-width:100%;height:auto}iframe,embed,object{max-width:100%}@media (width<=1200px){.container{padding:0 32px}.project-grid,.project-grid--home,.highlights-grid,.channels-grid,.principles-grid,.approach-grid,.values-grid,.skills-grid,.gallery-grid,.hobby-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=992px){.hero-title{font-size:clamp(2.2rem,8vw,3rem)}.hero-desc{font-size:18px}.section-title{font-size:1.8rem}}@media (width<=768px){.container{width:100%;max-width:100%;padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px))}.mobile-nav-toggle{z-index:1001;-webkit-tap-highlight-color:transparent;flex-shrink:0;display:block}.nav-end{flex-shrink:0;gap:6px}.logo-text{max-width:min(12.5rem,52vw);font-size:1rem}.nav-links{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background-color:var(--mobile-nav-bg);border-bottom:1px solid var(--line);width:100%;max-width:100%;height:100dvh;padding:calc(5rem + env(safe-area-inset-top,0px)) max(1.25rem, env(safe-area-inset-right,0px)) max(2.5rem, env(safe-area-inset-bottom,0px)) max(1.25rem, env(safe-area-inset-left,0px));z-index:999;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:.2rem;display:none;position:fixed;inset:0;overflow:hidden auto}.nav-links.show{display:flex}.nav-links .nav-item,.nav-links .nav-more-toggle{white-space:normal;text-align:left;justify-content:flex-start;width:100%;height:auto;min-height:2.6rem;margin:0;padding:.7rem .85rem;font-size:1.05rem;font-weight:600}.nav-links .nav-item.active,.nav-links .nav-more-toggle.active{background:#3d7dff1f}.nav-more{border-top:1px solid var(--line);flex-direction:column;width:100%;margin-top:.35rem;padding-top:.55rem;display:flex}.nav-more-toggle{justify-content:space-between;width:100%;display:inline-flex}.nav-more-menu{width:100%;min-width:0;box-shadow:none;background:0 0;border:none;border-radius:0;margin:.15rem 0 0;padding:.15rem 0 .15rem .55rem;display:none;position:static;top:auto;right:auto}.nav-more.is-open .nav-more-menu{display:flex}.nav-more-menu .nav-item{min-height:2.35rem;color:var(--muted);font-size:.98rem;font-weight:500}.nav-more-menu .nav-item.active{color:var(--primary)}.nav-utils{border-top:1px solid var(--line);align-items:center;gap:.65rem;width:100%;margin-top:auto;padding-top:1.1rem;display:flex}.nav-links .language-switch,.nav-links .theme-toggle{border-radius:var(--radius-sm);flex:1;justify-content:center;width:auto;min-width:0;height:2.75rem;min-height:2.75rem;margin:0}.nav-links .language-switch{color:var(--ink);background:var(--surface-ghost-soft);border:1px solid var(--line);letter-spacing:.06em;font-size:.85rem}.nav-links .language-switch:hover{color:var(--primary);border-color:var(--primary);background:#3d7dff1f}.nav-links .theme-toggle{font-family:var(--font-display);letter-spacing:0;text-transform:none;padding:0 .85rem;font-size:.95rem;font-weight:600}.nav-links .theme-toggle-label{display:inline}.nav-links .theme-toggle .icon{width:1.05rem;height:1.05rem}.hero-brand{margin-bottom:14px;font-size:clamp(1.45rem,6.5vw,1.9rem)}.hero-title{overflow-wrap:anywhere;max-width:none;font-size:clamp(1.85rem,8.5vw,2.4rem)}.hero-desc,.hero-positioning{overflow-wrap:break-word;font-size:.98rem}.hero-role-line{text-wrap:pretty;font-size:.98rem}.hero-tagline{letter-spacing:.04em;font-size:.78rem}.hero{min-height:unset;padding:calc(104px + env(safe-area-inset-top,0px)) 0 64px}.hero:not(.hero--home){padding:calc(120px + env(safe-area-inset-top,0px)) 0 64px}.hero-actions,.demo-run-actions,.playground-try-row,.org-join-actions{flex-direction:column;align-items:stretch;gap:10px;width:100%}.btn-primary{clip-path:none}.hero-atmosphere:after{display:none}.hero-blob{opacity:.85;width:min(420px,120vw);height:min(420px,120vw);top:0;right:-28%}.btn-primary,.btn-ghost,.hero:not(.hero--home) .btn-primary,.hero:not(.hero--home) .btn-ghost,.demo-generator-page .hero-actions .btn-primary,.demo-generator-page .hero-actions .btn-ghost,.playground-page .hero-actions .btn-primary,.playground-page .hero-actions .btn-ghost,.org-page .hero-actions .btn-primary,.org-page .hero-actions .btn-ghost,.demo-run-actions .btn-primary,.demo-run-actions .btn-ghost,.playground-try-row .btn-primary,.org-join-panel .btn-primary{flex:none;width:100%;min-width:0;max-width:none}.hero--home .hero-actions .btn-text{align-self:flex-start;width:auto;min-height:2.5rem;padding-left:.15rem}.project-grid,.project-grid--home,.channels-grid,.principles-grid,.approach-grid,.values-grid,.skills-grid,.gallery-grid,.hobby-grid,.blog-grid,.notes-grid,.links-grid,.skill-category,.track-grid,.stack-matrix,.achievements-grid,.ai-live-grid,.skills-grid--evidence,.demo-pipeline,.demo-results,.playground-grid,.playground-modes-grid,.playground-try-result,.stories-grid{grid-template-columns:1fr;gap:24px}.highlights-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.track-head,.ai-live-head,.skill-header{flex-wrap:wrap}.track-status{white-space:normal}.section-head{flex-direction:column;align-items:flex-start}.footer-content{text-align:center;flex-direction:column;gap:32px}.footer-left{margin:0 auto}.social-links{flex-wrap:wrap;justify-content:center}.home-featured,.channels,.principles,.approach,.timeline-section,.values,.featured-projects,.skills,.life-gallery,.hobbies,.current-learning,.blog,.learning-path,.quick-links,.highlights,.home-section{padding:64px 0}.play-button{width:50px;height:50px;font-size:20px}.project-filters,.filter-btn{max-width:100%}.filter-btn{min-height:2.5rem}.case-try-command,.note-code pre,pre,code{-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto}table{-webkit-overflow-scrolling:touch;width:100%;max-width:100%;display:block;overflow-x:auto}}@media (width<=480px){.container{padding-left:max(14px, env(safe-area-inset-left,0px));padding-right:max(14px, env(safe-area-inset-right,0px))}.logo-text{max-width:min(10.5rem,48vw);font-size:.95rem}.hero-title{font-size:clamp(1.65rem,8vw,1.85rem)}.hero-brand{font-size:clamp(1.3rem,6vw,1.55rem)}.hero-desc,.hero-positioning,.hero-role-line{font-size:.95rem}.section-title{margin-bottom:24px;font-size:1.5rem}.project-content,.skill-item{padding:18px}.gallery-caption{padding:16px}.gallery-caption h3{font-size:18px}.home-section,.home-featured,.channels,.principles,.approach,.timeline-section,.values,.featured-projects,.skills,.life-gallery,.hobbies,.current-learning,.blog,.learning-path,.quick-links,.highlights{padding:52px 0}.nav-links .nav-item,.nav-links .nav-more-toggle{min-height:2.75rem;font-size:1.02rem}}@media (width<=360px){.logo-text{max-width:min(8.5rem,42vw)}.hero-title{font-size:1.55rem}.hero-actions .btn-primary,.hero-actions .btn-ghost{min-height:46px;font-size:.92rem}.achievements-grid{grid-template-columns:1fr}}@media (width<=768px) and (height<=480px) and (orientation:landscape){.hero{padding:calc(88px + env(safe-area-inset-top,0px)) 0 40px}.hero:not(.hero--home){padding:calc(96px + env(safe-area-inset-top,0px)) 0 40px}.hero-actions{flex-flow:wrap}.hero-actions .btn-primary,.hero-actions .btn-ghost{flex:10rem;width:auto;min-width:min(100%,10rem)}.home-section,.highlights,.principles,.featured-projects,.skills,.blog{padding:40px 0}}@media (hover:none) and (pointer:coarse){.btn-primary:hover,.btn-ghost:hover,.link-card:hover,.project-card:hover,.skill-item:hover,.note-card:hover,.value-card:hover{transform:none}.btn-primary:active,.btn-ghost:active{transform:scale(.98)}}
