.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-cyrillic-ext-wght-normal.DjL33-gN.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-cyrillic-wght-normal.BEAKL7Jp.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-vietnamese-wght-normal.6IgcOCM7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-latin-ext-wght-normal.DC-KSUi6.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-latin-wght-normal.BgDaEnEv.woff2)format("woff2-variations");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:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-cyrillic-ext-wght-normal.X_5orZeX.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-cyrillic-wght-normal.DiZS0aHC.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-symbols2-wght-normal.CO5SzqOn.woff2)format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-vietnamese-wght-normal.DadHysG0.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-latin-ext-wght-normal.Bwz-egvJ.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-latin-wght-normal.XN7g48iV.woff2)format("woff2-variations");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:GeistPixel;font-style:normal;font-display:swap;src:url(/fonts/GeistPixel.woff2)format("woff2")}::view-transition-old(root),::view-transition-new(root){animation:none!important}html{opacity:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:opacity!important}*{box-sizing:border-box;margin:0;padding:0}:root{--accent:#8b7ec8;--accent-strong:#7465ab;--accent-glow:#8b7ec859;--accent-subtle:#8b7ec814;--bg:#e4e0da;--bg-raised:#eceae6;--bg-inset:#d9d5cf;--text-primary:#3a3632;--text-secondary:#67625c;--text-muted:#67625c;--noise-felt:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");--noise-matte:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");--noise-paper:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.2' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");--noise-cardstock:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");--ease:cubic-bezier(.32,.72,0,1);--ease-spring:cubic-bezier(.34,1.56,.64,1);--ease-expo:cubic-bezier(.16,1,.3,1);--light-highlight:#ffffff73;--shadow-contact:#00000040;--shadow-cast:#0000001a;--shadow-diffuse:#0000000f;--shadow-hue:30deg 25% 12%;--shadow-sm:1px 2px 3px hsl(var(--shadow-hue) / .12);--shadow-md:1px 2px 4px hsl(var(--shadow-hue) / .1), 2px 4px 12px hsl(var(--shadow-hue) / .08);--shadow-lg:2px 4px 8px hsl(var(--shadow-hue) / .12), 4px 8px 14px hsl(var(--shadow-hue) / .09);--shadow-xl:3px 6px 10px hsl(var(--shadow-hue) / .14), 6px 12px 14px hsl(var(--shadow-hue) / .1);--shadow-raised:4px 4px 12px #0000001a, -2px -2px 8px #ffffffb3, inset 0 1px 0 #fff9;--shadow-inset:inset 3px 3px 8px #00000014, inset -2px -2px 6px #ffffff80;--shadow-deep:8px 8px 24px #0000001f, -4px -4px 16px #fff9, inset 0 1px 0 #fffc, inset 0 -1px 0 #0000000a;--shadow-object:0 1px 2px var(--shadow-contact), 3px 5px 14px var(--shadow-cast);--shadow-object-hover:0 2px 4px #0000002e, 4px 8px 20px #0000001a, 8px 16px 16px #0000000f;--shadow-object-pressed:0 .5px 1px var(--shadow-contact), 1px 2px 6px var(--shadow-cast);--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-full:50%;--text-h1:32px;--text-h2:28px;--text-h3:24px;--text-h4:20px;--text-body:16px;--text-sm:12px;--text-xs:12px;--demo-control-border:#00000014;--demo-control-muted:#4a4a4a;--demo-control-active:#0a0a0a;--demo-control-active-fg:#fff;--demo-switch-knob-on:#333;--demo-switch-knob-off:#fff;--demo-device-shell:#111;--demo-device-screen:#0b0c10;--demo-device-chrome:#000;--demo-device-chrome-fg:#fff;--demo-device-chrome-fg-soft:#ffffffe0;--demo-device-chrome-fg-muted:#fffc;--demo-device-placeholder:#ffffff0f;--demo-device-placeholder-soft:#ffffff08;--demo-device-veil:#ffffff14;--demo-resize-bracket:#00000059;--demo-resize-bracket-active:#000000b3;--t-display-size:32px;--t-heading-size:24px;--t-heading-sm-size:20px;--t-subtitle-size:16px;--t-body-size:16px;--t-body-sm-size:14px;--t-tag-size:12px}@media (width<=768px){:root{--t-display-size:24px;--t-heading-size:20px;--t-heading-sm-size:18px;--t-subtitle-size:15px;--t-body-size:15px;--t-body-sm-size:13px;--t-tag-size:12px}}.t-display{font-family:GeistPixel,sans-serif;font-size:var(--t-display-size);letter-spacing:-.02em;margin:0;font-weight:400;line-height:1.15}.t-heading{font-family:GeistPixel,sans-serif;font-size:var(--t-heading-size);letter-spacing:-.02em;font-weight:400;line-height:1.2}.t-heading-sm{font-family:Geist Variable,sans-serif;font-size:var(--t-heading-sm-size);letter-spacing:-.01em;font-weight:500;line-height:1.3}.t-subtitle{font-family:Geist Variable,sans-serif;font-size:var(--t-subtitle-size);letter-spacing:0;font-weight:400;line-height:1.5}.t-body{font-family:Geist Variable,sans-serif;font-size:var(--t-body-size);letter-spacing:0;font-weight:400;line-height:1.7}.t-body-sm{font-family:Geist Variable,sans-serif;font-size:var(--t-body-sm-size);letter-spacing:0;font-weight:400;line-height:1.6}.t-tag{font-family:Geist Mono Variable,monospace;font-size:var(--t-tag-size);letter-spacing:.04em;text-transform:uppercase;font-weight:600;line-height:1}html,body{background:var(--bg);color:var(--text-primary);-webkit-font-smoothing:antialiased;height:auto;margin:0;padding:0;font-family:Geist Variable,-apple-system,BlinkMacSystemFont,sans-serif;overflow:hidden auto}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}:focus:not(:focus-visible){outline:none}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.modal-overlay{z-index:1100;pointer-events:none;opacity:0;transition:opacity .25s var(--ease);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-overlay.open{pointer-events:auto;opacity:1}.modal-backdrop{-webkit-backdrop-filter:blur(4px);background:#3a363273;position:absolute;inset:0}.modal-card{width:min(640px,92vw);max-height:min(85vh,800px);box-shadow:var(--shadow-xl);opacity:0;isolation:isolate;transition:opacity .3s var(--ease),transform .3s var(--ease),box-shadow .3s var(--ease);background:#edeae6;border-radius:20px;position:relative;transform:translateY(100vh)}.modal-card-inner{-webkit-mask-image:-webkit-radial-gradient(#fff,#000);border-radius:20px;flex-direction:column;height:min(85vh,800px);display:flex;position:relative;overflow:hidden;mask-image:radial-gradient(#fff,#000)}.modal-overlay.open .modal-card{opacity:1;transform:translateY(0)}.modal-close{border-radius:var(--radius-full);-webkit-backdrop-filter:blur(8px);cursor:pointer;z-index:10;width:32px;height:32px;font-size:var(--text-sm);color:#ffffffd9;opacity:.45;transition:opacity .2s var(--ease),background .2s var(--ease),transform .2s var(--ease);background:#00000040;border:none;justify-content:center;align-items:center;padding:0;line-height:1;display:flex;position:absolute;top:12px;right:12px}.modal-card:hover .modal-close{opacity:1}.modal-close:hover{background:#0006;transform:scale(1.05)}.modal-close:active{transform:scale(.97)}.modal-carousel{aspect-ratio:5/4;background:var(--bg);flex-shrink:0;width:100%;position:relative;overflow:hidden}.modal-carousel--fit{aspect-ratio:4/3}.modal-carousel--fit .carousel-slide img{object-fit:contain;outline:none}.carousel-scroll{scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:0;height:100%;padding:0;display:flex;overflow-x:auto}.carousel-scroll::-webkit-scrollbar{display:none}.carousel-slide{scroll-snap-align:start;flex-shrink:0;min-width:100%;height:100%;overflow:hidden}.carousel-slide-color{width:100%;height:100%;font-size:var(--text-h2);color:#ffffffd9;justify-content:center;align-items:center;font-weight:600;display:flex}.coming-soon-label{font-family:Geist Variable,sans-serif;font-size:var(--text-body);color:#ffffff80;letter-spacing:.02em;font-weight:500}.carousel-slide img,.carousel-slide video{object-fit:cover;object-position:center;-webkit-user-drag:none;user-select:none;outline-offset:-1px;outline:1px solid #00000014;width:100%;height:100%}.carousel-slide video,.puzzle-img video{opacity:0;transition:opacity .3s var(--ease),transform .3s var(--ease);transform:scale(1.02)}.carousel-slide video.loaded,.puzzle-img video.loaded{opacity:1;transform:scale(1)}.carousel-counter{color:#fffc;font-family:Geist Mono Variable,monospace;font-size:var(--text-sm);font-variant-numeric:tabular-nums;letter-spacing:.04em;-webkit-backdrop-filter:blur(6px);z-index:5;background:#3a363266;border-radius:12px;padding:4px 10px;font-weight:600;position:absolute;top:12px;left:12px}.carousel-btn{border-radius:var(--radius-full);-webkit-backdrop-filter:blur(8px);cursor:pointer;z-index:5;color:#ffffffd9;opacity:.45;width:32px;height:32px;transition:opacity .2s var(--ease),background .2s var(--ease),transform .2s var(--ease);touch-action:manipulation;background:#00000040;border:none;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.modal-card:hover .carousel-btn:not(:disabled){opacity:1}.carousel-btn:hover:not(:disabled){background:#0006;transform:translateY(-50%)scale(1.05)}.carousel-btn:active:not(:disabled){transform:translateY(-50%)scale(.97)}.carousel-btn:disabled{cursor:default;pointer-events:none;opacity:.2!important}.carousel-btn.prev{left:16px}.carousel-btn.next{right:16px}.modal-body{flex-shrink:0;min-height:0;padding:20px 24px 24px;overflow-y:auto}.modal-meta{margin-bottom:16px}.modal-desc-wrap{border-top:1px solid #00000014;max-height:200px;padding-top:16px;overflow-y:auto}.modal-desc-wrap.has-bottom-fade:not(.has-scroll-fade){-webkit-mask-image:linear-gradient(#000 0% calc(100% - 28px),#000000d9 calc(100% - 16px),#0006 calc(100% - 8px),#0000 100%);mask-image:linear-gradient(#000 0% calc(100% - 28px),#000000d9 calc(100% - 16px),#0006 calc(100% - 8px),#0000 100%)}.modal-desc-wrap.has-scroll-fade:not(.has-bottom-fade){-webkit-mask-image:linear-gradient(#0000 0%,#0006 8px,#000000d9 16px,#000 28px 100%);mask-image:linear-gradient(#0000 0%,#0006 8px,#000000d9 16px,#000 28px 100%)}.modal-desc-wrap.has-scroll-fade.has-bottom-fade{-webkit-mask-image:linear-gradient(#0000 0%,#0006 8px,#000000d9 16px,#000 28px calc(100% - 28px),#000000d9 calc(100% - 16px),#0006 calc(100% - 8px),#0000 100%);mask-image:linear-gradient(#0000 0%,#0006 8px,#000000d9 16px,#000 28px calc(100% - 28px),#000000d9 calc(100% - 16px),#0006 calc(100% - 8px),#0000 100%)}.modal-title{color:var(--text-primary);text-wrap:balance;margin-bottom:12px}.modal-tags{flex-wrap:wrap;gap:8px;display:flex}.modal-tag{border-radius:var(--radius-sm);font-family:Geist Mono Variable,monospace;font-size:var(--text-sm);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;color:var(--text-secondary);background:#0000000a;border:1px solid #0000000f;padding:4px 10px;font-weight:600}.modal-tag.link{cursor:pointer;color:var(--accent);background:var(--accent-subtle);transition:background .15s var(--ease);align-items:center;gap:4px;text-decoration:none;display:inline-flex}.modal-tag.link:hover{background:#8b7ec826}.modal-tag.link:active{transform:scale(.97)}.modal-desc{color:var(--text-secondary);text-wrap:pretty}.modal-desc p{margin-bottom:12px}.modal-desc p:last-child{margin-bottom:0}.puzzle-filters{flex-wrap:wrap;gap:8px;max-width:520px;margin-left:auto;margin-right:auto;padding:0 0 16px;display:flex}.puzzle-card.filter-hidden{display:none!important}.puzzle-grid{grid-template-columns:1fr 1fr;gap:12px;max-width:520px;margin-left:auto;margin-right:auto;display:grid}.puzzle-card-link{color:inherit;text-decoration:none;display:contents}.puzzle-card{cursor:pointer;aspect-ratio:4/3;box-shadow:var(--shadow-object);background:#f0eee9;border-top:1px solid #ffffff26;border-bottom:2px solid #0000001a;border-left:1px solid #ffffff1a;border-right:1px solid #0000000f;border-radius:12px;transition:transform .2s cubic-bezier(.32,.72,0,1);position:relative;overflow:hidden}.puzzle-card:after{content:"";pointer-events:none;z-index:2;background:radial-gradient(at 30% 25%,#ffffff2e 0%,#0000 55%);border-radius:12px;transition:opacity .2s cubic-bezier(.32,.72,0,1);position:absolute;inset:0}.puzzle-live-badge{z-index:4;-webkit-backdrop-filter:blur(8px);font-family:Geist Mono Variable,monospace;font-size:var(--t-tag-size);letter-spacing:.1em;color:#ffffffe6;pointer-events:none;background:#0000008c;border-radius:100px;align-items:center;gap:5px;padding:4px 8px 4px 6px;font-weight:600;display:inline-flex;position:absolute;top:8px;right:8px;box-shadow:inset 0 1px 2px #0000004d,0 1px #ffffff14}.puzzle-live-dot{background:radial-gradient(circle at 40% 35%,#6be08a,#2ecb55);border-radius:50%;flex-shrink:0;width:6px;height:6px;animation:2s ease-in-out infinite livePulse;box-shadow:0 0 4px #2ecb5599,0 0 10px #2ecb5540}@keyframes livePulse{0%,to{box-shadow:0 0 4px #2ecb5599,0 0 10px #2ecb5540}50%{box-shadow:0 0 6px #2ecb55cc,0 0 16px #2ecb5566}}@media (prefers-reduced-motion:reduce){.puzzle-live-dot{animation:none}}.puzzle-card.is-hovered{transform:translateY(-2px)scale(1.01)}.puzzle-card.is-hovered:after{opacity:.7}.puzzle-card:active{transform:scale(.97)}.puzzle-img{transition:transform .3s cubic-bezier(.32,.72,0,1);position:absolute;inset:0}.puzzle-card.is-hovered .puzzle-img,.puzzle-card:focus-within .puzzle-img{transform:translateY(-28px)}.puzzle-extra{opacity:0;display:none;transform:translateY(12px)}.puzzle-grid.expanded .puzzle-extra{animation:.3s cubic-bezier(.32,.72,0,1) forwards puzzleReveal;display:block}.puzzle-grid.expanded .puzzle-extra:nth-child(9){animation-delay:0s}.puzzle-grid.expanded .puzzle-extra:nth-child(10){animation-delay:40ms}.puzzle-grid.expanded .puzzle-extra:nth-child(11){animation-delay:80ms}.puzzle-grid.expanded .puzzle-extra:nth-child(12){animation-delay:.12s}.puzzle-grid.expanded .puzzle-extra:nth-child(13){animation-delay:.16s}.puzzle-grid.expanded .puzzle-extra:nth-child(14){animation-delay:.2s}.puzzle-grid.expanded .puzzle-extra:nth-child(15){animation-delay:.24s}.puzzle-grid.expanded .puzzle-extra:nth-child(16){animation-delay:.28s}@keyframes puzzleReveal{70%{opacity:1;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.puzzle-grid.collapsing .puzzle-extra{display:none}.puzzle-show-more{color:var(--text-secondary);border-radius:var(--radius-md);cursor:pointer;touch-action:manipulation;background:linear-gradient(#f0ede8 0%,#e8e5e0 100%);border:1px solid #fff9;margin:32px auto 0;padding:10px 22px;transition:transform .1s cubic-bezier(.32,.72,0,1),box-shadow .1s cubic-bezier(.32,.72,0,1),color .15s cubic-bezier(.32,.72,0,1);display:block;transform:translateY(0);box-shadow:0 1px 3px #0000000f,0 2px #d4d0ca}.puzzle-show-more:hover{color:var(--text-primary);transform:translateY(-1px);box-shadow:0 2px 4px #00000014,0 3px #d4d0ca}.puzzle-show-more:active{transform:translateY(2px);box-shadow:0 0 #d4d0ca,inset 0 1px 2px #0000000f}.puzzle-show-more.hidden{display:none}.puzzle-img img,.puzzle-img video{object-fit:cover;pointer-events:none;outline-offset:-1px;outline:1px solid #00000014;width:100%;height:100%;display:block}.puzzle-img video::-webkit-media-controls-start-playback-button,.puzzle-img video::-webkit-media-controls{-webkit-appearance:none;display:none!important}.puzzle-overlay{z-index:3;pointer-events:none;background:#0000000a;align-items:center;height:28px;padding:0 12px;transition:transform .3s cubic-bezier(.32,.72,0,1);display:flex;position:absolute;bottom:0;left:0;right:0;transform:translateY(100%)}.puzzle-card.is-hovered .puzzle-overlay,.puzzle-card:focus-within .puzzle-overlay{transform:translateY(0)}.puzzle-overlay span{font-family:Geist Variable,sans-serif;font-size:var(--text-sm);text-align:left;color:var(--text-primary);letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.puzzle-subtitle{margin-left:auto;font-family:Geist Mono Variable,monospace;font-size:var(--t-tag-size)!important;color:var(--text-secondary)!important;font-weight:400!important}.about-bio{text-align:left;max-width:520px;margin-bottom:32px;margin-left:auto;margin-right:auto}.about-bio p{color:var(--text-secondary);text-wrap:pretty;margin-bottom:16px}.about-bio p:first-child{color:var(--text-primary)}.about-bio em{color:var(--text-primary);font-style:italic;font-weight:500}.about-bio strong{color:var(--text-primary);font-weight:600}.about-bio-sub{color:var(--text-secondary)}.about-drop-trigger{color:var(--text-primary);cursor:pointer;text-underline-offset:2px;text-decoration:underline #00000026;transition:text-decoration-color .2s cubic-bezier(.32,.72,0,1);position:relative}button.about-drop-trigger{font:inherit;color:inherit;background:0 0;border:0;padding:0;display:inline}.about-drop-wrap{z-index:50;opacity:0;pointer-events:none;border-radius:10px;min-width:160px;transition:opacity .15s cubic-bezier(.32,.72,0,1),transform .15s cubic-bezier(.32,.72,0,1);position:absolute;top:calc(100% + 6px);left:0;transform:translateY(-4px)}.about-drop-wrap.open{opacity:1;pointer-events:auto;transform:translateY(0)}.about-dropdown{overscroll-behavior:none;-webkit-overflow-scrolling:auto;background:var(--text-primary);max-height:200px;box-shadow:2px 4px 14px hsl(var(--shadow-hue) / .18),1px 2px 4px hsl(var(--shadow-hue) / .1);border-radius:10px;padding:8px 0;overflow-y:auto}.about-drop-fade{pointer-events:none;background:linear-gradient(transparent,var(--text-primary));border-radius:0 0 10px 10px;height:28px;transition:opacity .15s cubic-bezier(.32,.72,0,1);position:absolute;bottom:0;left:0;right:0}.about-drop-fade.hidden{opacity:0}.about-dropdown-item{font-family:Geist Mono Variable,monospace;font-size:var(--text-sm);color:var(--bg);white-space:nowrap;padding:6px 14px;font-weight:500;text-decoration:none;transition:opacity .15s cubic-bezier(.32,.72,0,1);display:block}a.about-dropdown-item:hover{opacity:.7}.about-dropdown-item:not(a){opacity:.85}.about-bio-link{color:var(--text-primary);text-underline-offset:2px;text-decoration:underline #00000026;transition:text-decoration-color .2s cubic-bezier(.32,.72,0,1)}.about-drop-trigger:hover,.about-bio-link:hover{text-decoration-color:#0006}@media (hover:hover) and (pointer:fine){.about-drop-trigger:hover,.about-bio-link:hover{color:#0000;background:linear-gradient(110deg,#363330 0 39%,#ebe7e09e 47%,#b1a79d8c 50%,#ebe7e09e 53%,#363330 61% 100%) 100% 0/260% 100%;animation:about-text-beam var(--about-text-beam-duration,1.3s) cubic-bezier(.16,1,.3,1) both;-webkit-background-clip:text;background-clip:text}}@keyframes about-text-beam{to{background-position:0 0}}@media (prefers-reduced-motion:reduce){.about-drop-trigger:hover,.about-bio-link:hover{color:var(--text-primary);background:0 0;animation:none}}.about-ctas{flex-direction:column;align-items:flex-start;gap:16px;max-width:520px;margin-bottom:32px;margin-left:auto;margin-right:auto;display:flex}.about-cta-primary-wrap{display:inline-block}.about-cta-primary{border-radius:var(--radius-md);cursor:pointer;font-family:Geist Variable,sans-serif;font-size:var(--text-body);letter-spacing:.03em;color:#fff;text-shadow:0 1px 2px #0003;touch-action:manipulation;background:linear-gradient(#7e6ebe 0%,#6b5ca8 30%,#6050a0 70%,#5848a0 100%);border:none;padding:16px 38px 16px 40px;font-weight:600;text-decoration:none;transition:transform 80ms cubic-bezier(.32,.72,0,1),box-shadow 80ms cubic-bezier(.32,.72,0,1);display:block;position:relative;transform:translateY(0);box-shadow:0 4px #483c88,0 8px 14px #483c8840}.about-cta-primary:hover{background:linear-gradient(#8a7ac6 0%,#7868b4 30%,#6c5ca8 70%,#6050a0 100%);transform:translateY(-1px);box-shadow:0 5px #483c88,0 10px 16px #483c884d}.about-cta-primary:active{text-shadow:0 0 1px #0000004d;background:linear-gradient(#6050a0 0%,#5848a0 40%,#4e4090 100%);transform:translateY(3px);box-shadow:0 1px #483c88,0 2px 6px #483c8833}.cta-arrow{vertical-align:middle;margin-top:-1px;margin-left:6px;display:inline-block}.about-cta-strip{align-items:center;gap:8px;display:inline-flex}.about-cta{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--text-muted);cursor:pointer;touch-action:manipulation;background:radial-gradient(at 35% 25%,#ffffffb3 0%,#fff0 60%),linear-gradient(#f4f1ed 0%,#e2dfda 100%);border:none;justify-content:center;align-items:center;padding:0;text-decoration:none;transition:transform .1s cubic-bezier(.32,.72,0,1),box-shadow .1s cubic-bezier(.32,.72,0,1),color .1s cubic-bezier(.32,.72,0,1);display:flex;position:relative;transform:translateY(0);box-shadow:0 2px #c4c0ba,0 4px 6px #0000000f}.about-cta:hover{color:var(--accent);background:radial-gradient(at 35% 25%,#fffc 0%,#fff0 60%),linear-gradient(#f8f5f1 0%,#e8e5e0 100%);transform:translateY(-1px);box-shadow:0 3px #c4c0ba,0 5px 8px #00000014}.about-cta:active{color:var(--accent);background:radial-gradient(at 50% 60%,#ffffff4d 0%,#fff0 50%),linear-gradient(#d5d2cc 0%,#e0ddd8 100%);transform:translateY(2px);box-shadow:0 0 #c4c0ba,inset 0 2px 4px #0000001a}.about-cta svg{flex-shrink:0;width:13px;height:13px}.about-cta[data-tip]:after{content:attr(data-tip);transform-origin:50% 100%;background:var(--text-primary);color:var(--bg);font-family:Geist Mono Variable,monospace;font-size:var(--text-xs);letter-spacing:.02em;white-space:nowrap;opacity:0;pointer-events:none;border-radius:100px;padding:6px 14px;font-weight:600;transition:opacity .2s cubic-bezier(.32,.72,0,1),transform .2s cubic-bezier(.34,1.56,.64,1);position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%)scale(.5)translateY(8px)}.about-cta[data-tip]:hover:after{opacity:1;transform:translate(-50%)scale(1)translateY(0)}.tip-warm .about-cta[data-tip]:after{transition-duration:0s}.about-details{text-align:left;border-top:1px solid #0000000f;flex-direction:column;gap:20px;max-width:520px;margin-left:auto;margin-right:auto;padding-top:24px;display:flex}.about-detail{align-items:center;gap:16px;display:flex}.about-detail-label{color:var(--text-muted);flex-shrink:0;min-width:80px}.about-detail-value{color:var(--text-secondary);font-variant-numeric:tabular-nums;align-items:center;gap:8px;display:flex}.led{background:radial-gradient(circle at 35% 35%,#6be08a,#34c759);border-radius:50%;flex-shrink:0;width:7px;height:7px;animation:2.5s linear infinite ledPulse;box-shadow:0 0 3px #34c75980,0 0 7px #34c75933}@keyframes ledPulse{0%,to{box-shadow:0 0 3px #34c75980,0 0 7px #34c75933}50%{box-shadow:0 0 5px #34c759b3,0 0 12px #34c7594d}}.toggle{cursor:pointer;touch-action:manipulation;background:linear-gradient(#dad7d2 0%,#e2dfda 100%);border:0;border-radius:8px;flex-shrink:0;width:30px;height:17px;padding:0;transition:background .2s cubic-bezier(.32,.72,0,1),box-shadow .2s cubic-bezier(.32,.72,0,1);position:relative;box-shadow:inset 0 1px 3px #0000001f,0 1px #ffffff80}.toggle:before{content:"";position:absolute;inset:-14px -7px}.toggle:focus-visible{box-shadow:inset 0 1px 3px #0000001f,0 0 0 2px var(--accent)}.toggle.on{background:linear-gradient(#6050a0 0%,#6b5ca8 100%);box-shadow:inset 0 1px 3px #00000026,0 1px #ffffff80}.toggle-knob{background:radial-gradient(at 35% 30%,#ffffffe6 0%,#fff0 60%),linear-gradient(#f8f6f3 0%,#e8e5e0 100%);border-radius:50%;width:13px;height:13px;transition:transform .2s cubic-bezier(.34,1.56,.64,1);position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000026,0 1px 1px #00000014}.toggle.on .toggle-knob{transform:translate(13px)}#locationText{transition:opacity .14s cubic-bezier(.32,.72,0,1),transform .14s cubic-bezier(.32,.72,0,1)}#locationText.is-leaving{opacity:0;transition-duration:80ms;transform:translateY(-2px)}#locationText.is-entering{opacity:0;transition:none;transform:translateY(2px)}.stack-cards{align-items:center;padding:0 0 0 4px;display:flex}.stack-card{border-radius:var(--radius-md);color:var(--text-secondary);white-space:nowrap;cursor:default;background:linear-gradient(#f0ede8 0%,#e8e5e0 100%);border:1px solid #fff9;margin-left:-18px;padding:8px 12px;transition:transform .35s cubic-bezier(.32,.72,0,1);position:relative;box-shadow:0 1px 3px #0000000f,0 2px #d4d0ca}.stack-card:first-child{z-index:4;margin-left:0;transform:rotate(-2.5deg)}.stack-card:nth-child(2){z-index:3;transform:rotate(2deg)}.stack-card:nth-child(3){z-index:2;transform:rotate(-1.5deg)}.stack-card:nth-child(4){z-index:1;transform:rotate(2.5deg)}.stack-cards:hover .stack-card,.stack-cards.touched .stack-card{margin-left:4px;transform:rotate(0)}.stack-cards:hover .stack-card:first-child,.stack-cards.touched .stack-card:first-child{margin-left:0}@media (prefers-reduced-motion:reduce){.led{animation:none}.toggle-knob,.stack-card{transition:none}}@media (prefers-reduced-transparency:reduce){.modal-backdrop,.mobile-menu-wrap,.book-pop-wrap,.mm-popover-wrap,.carousel-counter,.carousel-btn,.modal-close,.puzzle-live-badge{-webkit-backdrop-filter:none!important}.modal-backdrop{background:#756f68!important}.mobile-menu-wrap{background:var(--text-primary)!important}.book-pop-wrap,.mm-popover-wrap{background:var(--bg)!important}.carousel-counter,.carousel-btn,.modal-close,.puzzle-live-badge{background:#3a3632!important}.demo-frosted-veil{-webkit-backdrop-filter:none!important;background:var(--bg-inset)!important}}.browse-content{pointer-events:auto;background:var(--bg);-webkit-overflow-scrolling:touch;width:100%;min-height:100vh;padding:80px 0 60px;position:relative;top:0;left:0}.browse-inner{max-width:680px;margin:0 auto}.site-footer{color:var(--text-muted);border-top:1px solid #0000000f;justify-content:center;align-items:center;gap:8px;padding:40px 24px 48px;display:flex}.footer-sep{opacity:.4}.footer-link{color:var(--text-muted);text-decoration:none}.footer-link:hover{color:var(--text-secondary);text-decoration:underline}.reveal-item{opacity:0;transition:opacity .35s var(--ease), transform .35s var(--ease);transform:translateY(10px)}.reveal-item.revealed{opacity:1;transform:translateY(0)}.tilt-card{transform-style:preserve-3d;transition:transform .2s cubic-bezier(.32,.72,0,1),box-shadow .2s cubic-bezier(.32,.72,0,1)}.browse-section{text-align:left;border-bottom:1px solid #0000000a;padding:64px 24px;scroll-margin-top:72px}.browse-section:last-child{border-bottom:none}.browse-section-label{font-family:Geist Mono Variable,monospace;font-size:var(--text-sm);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);max-width:520px;margin-bottom:8px;margin-left:auto;margin-right:auto;font-weight:700}.browse-section h1,.browse-section h2{color:var(--text-primary);text-wrap:balance;max-width:520px;margin-bottom:8px;margin-left:auto;margin-right:auto}.browse-section .subtitle{color:var(--text-secondary);max-width:520px;margin-bottom:40px;margin-left:auto;margin-right:auto}.timeline-item{border-top:1px solid #0000000a;gap:16px;padding:24px 0;display:flex}.oss-grid{max-width:520px;margin:0 auto}.oss-card{color:inherit;background:#fff;border:1px solid #0000000f;border-radius:12px;text-decoration:none;transition:box-shadow .2s cubic-bezier(.32,.72,0,1),border-color .2s cubic-bezier(.32,.72,0,1);display:block;overflow:hidden}.oss-card:hover{box-shadow:var(--shadow-md);border-color:#0000001a}.oss-card:active{transform:scale(.99)}.oss-card-video{aspect-ratio:16/9;object-fit:cover;background:#0b0c10;width:100%;display:block}.oss-card-info{flex-direction:column;gap:4px;padding:16px 20px;display:flex}.oss-card-name{font-family:Geist Mono Variable,monospace;font-size:var(--text-body);color:var(--text-primary);letter-spacing:-.01em;font-weight:600}.oss-card-desc{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.5}.timeline-year{font-family:Geist Mono Variable,monospace;font-size:var(--text-sm);color:var(--accent);letter-spacing:.02em;flex-shrink:0;min-width:80px;padding-top:2px;font-weight:700}.timeline-text{font-size:var(--text-body);color:var(--text-secondary);line-height:1.65}.timeline-text strong{color:var(--text-primary);font-weight:500}.term{color:#8b7ec8;cursor:pointer;border-bottom:1px dashed #8b7ec866;transition:border-color .15s cubic-bezier(.32,.72,0,1);position:relative}.term:hover{border-color:#8b7ec8}.term:active{opacity:.7}.popover{border-radius:var(--radius-md);box-shadow:var(--shadow-lg);pointer-events:none;opacity:0;z-index:1050;background:#fff;border:1px solid #0000000f;width:220px;padding:12px 16px;transition:opacity .2s cubic-bezier(.32,.72,0,1),transform .25s cubic-bezier(.22,1.1,.36,1);position:fixed;transform:scale(.92)}.popover.visible{opacity:1;pointer-events:auto;transform:scale(1)}.popover-title{font-size:var(--text-sm);color:#1a1a1a;letter-spacing:.02em;text-transform:uppercase;margin-bottom:4px;font-weight:700}.popover-desc{font-size:var(--text-sm);color:#00000080;line-height:1.5}.note-link{color:var(--text-primary);border-bottom:1px solid #00000026;font-weight:500;text-decoration:none;transition:border-color .15s cubic-bezier(.32,.72,0,1)}.note-link:hover{border-color:#0006}.note-link:active{opacity:.7}.note-link:after{content:"";vertical-align:middle;opacity:.5;background:currentColor;width:10px;height:10px;margin-left:3px;display:inline-block;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12L12 4'/%3E%3Cpath d='M5 4h7v7'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12L12 4'/%3E%3Cpath d='M5 4h7v7'/%3E%3C/svg%3E") 50%/contain no-repeat}.note-img{width:100%;box-shadow:1px 2px 8px hsl(var(--shadow-hue) / .1);background:#00000008;border-radius:12px;margin:8px 0 4px;overflow:hidden}.note-img img,.note-img canvas{border-radius:12px;width:100%;display:block}.note-img-caption{font-size:var(--text-sm);color:#00000080;margin:6px 0 12px;font-style:italic}.note-demo{background:linear-gradient(145deg,#f5f3ef,#edeae6);border:1px solid #0000000d;border-radius:12px;width:100%;margin:12px 0;position:relative;overflow:hidden}.note-demo-label{font-family:Geist Mono Variable,monospace;font-size:var(--text-sm);letter-spacing:.06em;text-transform:uppercase;color:#00000073;pointer-events:none;font-weight:600;position:absolute;top:8px;right:10px}.note-demo canvas{aspect-ratio:460/140;cursor:grab;width:100%;display:block}.note-demo canvas:active{cursor:grabbing}.note-demo-hint{text-align:center;font-size:var(--text-sm);color:#00000073;border-top:1px solid #0000000a;padding:6px}.note-code{font-family:Geist Mono Variable,monospace;font-size:var(--text-sm);color:#0000008c;word-break:break-all;background:#00000008;border:1px solid #0000000f;border-radius:10px;margin:4px 0 0;padding:12px 60px 12px 14px;line-height:1.7;overflow-x:auto}.note-code .kw{color:#7b6ba5}.note-code .fn{color:#5a7baf}.note-code .str{color:#6b8f5e}.note-code .num{color:#b87a4a}.note-code .cm{color:#00000040}.note-code-copy{font-family:Geist Mono Variable,monospace;font-size:var(--text-sm);color:#00000073;cursor:pointer;background:#0000000a;border:1px solid #0000000f;border-radius:6px;padding:4px 8px;transition:opacity .15s cubic-bezier(.32,.72,0,1),color .15s cubic-bezier(.32,.72,0,1);position:absolute;top:50%;right:8px;transform:translateY(-50%)}.note-code-copy:hover{opacity:.7}.note-code-copy:active{transform:translateY(-50%)scale(.97)}.note-code-copy.copied{color:var(--accent);opacity:1}.skill-filters{flex-wrap:wrap;gap:8px;padding:0 0 16px;display:flex}.skill-filters::-webkit-scrollbar{display:none}.skill-item{margin-top:40px}.skill-item .note-code{margin-top:6px}.skill-item strong{font-size:var(--t-body-sm-size);color:var(--text-primary);font-weight:600}.skill-item span{font-size:var(--t-body-sm-size)}.skill-cat-header{border-bottom:1px solid #00000014;margin-top:20px;padding-bottom:8px}.skill-cat-header em{font-family:Geist Mono Variable,monospace;font-style:normal;font-size:var(--text-sm);letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);font-weight:600}.skill-item.skill-hidden,.skill-cat-header.skill-hidden{display:none}.note-callout{font-size:var(--text-sm);color:#0000008c;background:#8b7ec80f;border-left:3px solid #8b7ec8;border-radius:0 8px 8px 0;margin:12px 0;padding:12px 16px;line-height:1.6}.note-embed{border:1px solid #0000000f;border-radius:12px;width:100%;margin:12px 0 4px;overflow:hidden}.note-embed-placeholder{cursor:pointer;background:linear-gradient(145deg,#f5f3ef,#edeae6);flex-direction:column;justify-content:center;align-items:center;gap:10px;width:100%;height:280px;transition:opacity .2s cubic-bezier(.32,.72,0,1);display:flex}.note-embed-placeholder:hover{opacity:.85}.note-embed-label{font-family:Geist Mono Variable,monospace;font-size:var(--text-sm);letter-spacing:.06em;text-transform:uppercase;color:#00000059;font-weight:600}.note-embed-btn{font-family:Geist Variable,sans-serif;font-size:var(--text-sm);color:#fff;cursor:pointer;background:#8b7ec8;border:none;border-radius:20px;padding:8px 20px;font-weight:500;transition:transform .15s cubic-bezier(.32,.72,0,1),opacity .15s cubic-bezier(.32,.72,0,1)}.note-embed-btn:hover{opacity:.9}.note-embed-btn:active{transform:scale(.97)}.note-embed iframe{border:none;width:100%;height:480px;display:block}.note-embed-caption{font-size:var(--text-sm);color:#0000004d;margin:6px 0 12px;font-style:italic}.note-component{background:linear-gradient(145deg,#f5f3ef,#edeae6);border:1px solid #0000000f;border-radius:12px;width:100%;margin:20px 0;position:relative;overflow:hidden}.note-component-hint{text-align:center;font-family:Geist Mono Variable,monospace;font-size:var(--text-sm);letter-spacing:.04em;color:#00000059;border-top:1px solid #0000000a;padding:8px 12px;font-weight:500}.note-component.hide-mobile{display:block}@media (width<=768px){.note-component.hide-mobile{display:none}}.note-toc{z-index:10;width:180px;position:fixed;top:50%;left:max(20px,50vw - 520px);transform:translateY(-50%)}.note-toc-header{font-family:Geist Mono Variable,monospace;font-size:var(--text-sm);letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary);align-items:center;gap:6px;margin-bottom:12px;font-weight:600;display:flex}.note-toc-list{margin:0;padding:0;list-style:none}.note-toc-list li{margin-bottom:2px}.note-toc-link{font-family:Geist Variable,sans-serif;font-size:var(--text-sm);color:var(--text-secondary);transition:color .2s var(--ease),border-color .2s var(--ease);border-left:2px solid #0000;padding:4px 0 4px 12px;font-weight:400;line-height:1.5;text-decoration:none;display:block}.note-toc-link:hover{color:var(--text-primary)}.note-toc-link.active{color:var(--text-primary);border-left-color:var(--accent);font-weight:600}@media (width<=1100px){.note-toc{display:none}}.mymind-header{max-width:520px;margin-left:auto;margin-right:auto;padding:0 0 12px}.mymind-search{width:100%;color:var(--text-primary);background:0 0;border:none;outline:none;margin-top:-10px;margin-bottom:-10px;padding-top:10px;padding-bottom:10px;font-style:italic}.mymind-search:focus-visible{border-bottom:2px solid var(--text-secondary);outline:none}.mymind-search::placeholder{color:#00000059;font-style:italic}.mymind-filters{flex-wrap:wrap;gap:8px;max-width:520px;margin-left:auto;margin-right:auto;padding:0 0 16px;display:flex}.mymind-pill{border-radius:var(--radius-sm);color:#00000094;white-space:nowrap;cursor:pointer;touch-action:manipulation;background:#0000000a;border:none;padding:6px 12px;transition:background .15s cubic-bezier(.32,.72,0,1),color .15s cubic-bezier(.32,.72,0,1),transform .25s cubic-bezier(.34,1.56,.64,1);position:relative}.mymind-pill:before{content:"";position:absolute;inset:-10px 0}.mymind-pill.active{background:var(--accent-strong);color:#fff;animation:.3s cubic-bezier(.34,1.56,.64,1) pillBounce}@keyframes pillBounce{0%{transform:scale(.95)}50%{transform:scale(1.05)}to{transform:scale(1)}}.mymind-pill:hover:not(.active){background:#00000012}.mymind-pill:active{transform:scale(.97)}.mymind-grid{gap:8px;max-width:520px;margin-left:auto;margin-right:auto;padding:0;display:flex}.mm-col{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}.mm-card{border-radius:var(--radius-md);cursor:pointer;transition:transform .2s cubic-bezier(.32,.72,0,1),box-shadow .2s cubic-bezier(.32,.72,0,1);position:relative;overflow:hidden}.mm-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.mm-card:active{transition:transform .1s cubic-bezier(.32,.72,0,1);transform:scale(.97)}.mm-card.active{box-shadow:0 0 0 1.5px var(--accent), 0 4px 16px #8b7ec81f;transform:translateY(-1px)}.mm-img-card{background:#fff;border:1px solid #0000000a;padding:8px}.mm-thumb{background-size:cover;border-radius:8px;width:100%;overflow:hidden}.mm-thumb img{object-fit:cover;border-radius:8px;width:100%;height:100%;display:block}.mm-caption{font-family:Geist Variable,sans-serif;font-size:var(--text-sm);color:#0000009e;white-space:nowrap;text-overflow:ellipsis;padding:8px 4px 4px;overflow:hidden}.mm-note-card{background:#fffef8;border:1px solid #0000000a;padding:12px}.mm-note-card p{font-family:Geist Variable,sans-serif;font-size:var(--text-sm);color:#0000009e;font-style:italic;line-height:1.5}.mm-author{font-family:Geist Variable,sans-serif;font-size:var(--text-sm);color:#0000007a;margin-top:8px;display:block}.mm-link-card{background:#fff;border:1px solid #0000000d;padding:12px}.mm-link-icon{font-size:var(--text-sm);background:#00000008;border-radius:8px;justify-content:center;align-items:center;width:24px;height:24px;margin-bottom:4px;display:flex}.mm-link-title{font-family:Geist Variable,sans-serif;font-size:var(--text-sm);color:#1a1a1a;margin-bottom:4px;font-weight:600;line-height:1.3}.mm-link-desc{font-family:Geist Variable,sans-serif;font-size:var(--text-sm);color:#0000008c;line-height:1.4}.mm-popover-wrap{z-index:1050;pointer-events:none;width:52%;min-width:200px;position:absolute}.mm-popover{opacity:0;transform:translateY(var(--pop-dir,6px)) scale(.96);background:#edeae6;border-radius:16px;padding:16px;transition:opacity .15s cubic-bezier(.32,.72,0,1),transform .2s cubic-bezier(.22,1.1,.36,1);box-shadow:0 16px 16px #0000001f,0 4px 12px #0000000f}.mm-popover-wrap.open{pointer-events:auto}.mm-popover-wrap.open .mm-popover{opacity:1;transform:translateY(0)scale(1)}.pop-header{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex}.pop-title{font-family:Geist Variable,sans-serif;font-size:var(--text-body);color:var(--text-primary);text-wrap:balance;flex:1;font-weight:600;line-height:1.35}.pop-close{cursor:pointer;width:28px;height:28px;font-size:var(--text-sm);color:#00000080;touch-action:manipulation;background:#00000014;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-left:8px;padding:0;line-height:1;transition:background .15s cubic-bezier(.32,.72,0,1),color .15s cubic-bezier(.32,.72,0,1);display:flex}.pop-close:hover{color:#000000b3;background:#00000024}.pop-close:active{transform:scale(.97)}.pop-source{font-family:Geist Mono Variable,monospace;font-size:var(--text-sm);color:var(--accent);align-items:center;gap:4px;margin-bottom:12px;text-decoration:none;transition:opacity .15s cubic-bezier(.32,.72,0,1);display:inline-flex}.pop-source:hover{opacity:.7}.pop-source:active{opacity:.5}.pop-tldr{font-family:Geist Variable,sans-serif;font-size:var(--text-sm);color:#0000009e;text-wrap:pretty;margin-bottom:12px;line-height:1.6}.pop-tags{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.pop-tag{border-radius:var(--radius-xs);font-family:Geist Mono Variable,monospace;font-size:var(--text-sm);letter-spacing:.01em;text-transform:uppercase;color:#00000073;background:#0000000a;border:none;padding:2px 6px;font-weight:500}.pop-footer{border-top:1px solid #0000000d;justify-content:space-between;align-items:center;margin-top:12px;padding-top:10px;display:flex}.pop-date{font-family:Geist Mono Variable,monospace;font-size:var(--text-sm);font-variant-numeric:tabular-nums;color:#0000007a;letter-spacing:.02em}.pop-copy{min-width:74px;font-family:Geist Variable,sans-serif;font-size:var(--text-sm);color:#0006;border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:1px solid #00000014;justify-content:center;align-items:center;gap:4px;padding:4px 8px;font-weight:500;transition:color .15s cubic-bezier(.32,.72,0,1),border-color .15s cubic-bezier(.32,.72,0,1),background .15s cubic-bezier(.32,.72,0,1);display:flex}.pop-copy:hover{color:#0009;background:#00000008;border-color:#00000026}.pop-copy:active{transform:scale(.97)}.pop-copy.copied{color:var(--accent);border-color:#8b7ec84d}.pop-copy-icon{flex:none;width:12px;height:12px;display:block;position:relative}.pop-copy-icon svg{width:12px;height:12px;transition:opacity .1s cubic-bezier(.32,.72,0,1),transform .14s cubic-bezier(.32,.72,0,1);position:absolute;inset:0}.pop-copy-check-icon,.pop-copy.copied .pop-copy-copy-icon{opacity:0;transform:scale(.85)}.pop-copy.copied .pop-copy-check-icon{opacity:1;transform:scale(1)}.mm-scrim{z-index:1000;pointer-events:none;transition:background .2s var(--ease);background:#3a363200;position:fixed;inset:0}.mm-scrim.open{pointer-events:auto;background:#3a363240}.sheet-handle{display:none}.book-item{border-top:1px solid #0000000a;padding:12px 0}.book-item h4{font-size:var(--text-body);color:var(--text-primary);margin-bottom:2px;font-weight:500}.book-item p{font-size:var(--text-sm);color:var(--text-secondary)}.connect-box{box-shadow:none;background:#ffffff4d;border:1px solid #0000000f;border-radius:16px;padding:32px}.connect-box p{font-size:var(--text-body);color:var(--text-secondary);margin-bottom:24px;line-height:1.6}.form-field{margin-bottom:16px}.form-field label{font-family:Geist Mono Variable,monospace;font-size:var(--text-sm);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px;font-weight:700;display:block}.form-field input,.form-field textarea{width:100%;font-family:Geist Variable,sans-serif;font-size:var(--text-body);color:var(--text-primary);box-shadow:none;resize:vertical;background:#0000000a;border:1px solid #00000014;border-radius:12px;outline:none;padding:12px 16px;transition:box-shadow .2s cubic-bezier(.32,.72,0,1)}.form-field input:focus,.form-field textarea:focus{box-shadow:none;border-color:var(--accent)}.form-field input:focus-visible,.form-field textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.form-field textarea{min-height:100px}.send-btn{border-radius:var(--radius-md);background:var(--accent-strong);color:#fff;font-family:Geist Variable,sans-serif;font-size:var(--text-sm);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;box-shadow:none;border:none;padding:12px 24px;font-weight:700;transition:transform .2s cubic-bezier(.32,.72,0,1),box-shadow .2s cubic-bezier(.32,.72,0,1)}.send-btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px #8b7ec84d}.social-links{gap:16px;margin-top:24px;display:flex}.social-links a{font-size:var(--text-sm);color:var(--accent);letter-spacing:.02em;font-weight:600;text-decoration:none;transition:opacity .2s cubic-bezier(.32,.72,0,1)}.social-links a:hover{opacity:.7}.social-links a:active{opacity:.5}.mymind-pill:active,.mm-card:active,.send-btn:active{transform:scale(.97)}.demo-device-pill,.demo-import-button{position:relative}.demo-device-pill:before,.demo-import-button:before{content:"";position:absolute;inset:-8px 0}.demo-resize-handle:before{content:"";position:absolute;inset:-8px}.demo-scale-indicator{border-radius:var(--radius-sm);color:var(--demo-control-muted);white-space:nowrap;pointer-events:none;background:#0000000f;padding:4px 8px;position:absolute;bottom:-28px;left:50%;transform:translate(-50%)}.footer-link{position:relative}.footer-link:before{content:"";position:absolute;inset:-16px 0}.shutter-overlay{z-index:99999;pointer-events:none;position:fixed;inset:0;overflow:hidden}.shutter-inner{width:100%;position:absolute;top:0;left:0}.shutter-bar{--bar-h:calc((100dvh - 30px) / 4);width:100%;height:var(--bar-h);animation:shutter-collapse .7s ease-in-out var(--d,0s) forwards;margin-bottom:-1px}.shutter-bar:nth-child(4){--d:.5s}.shutter-bar:nth-child(3){--d:.62s}.shutter-bar:nth-child(2){--d:.74s}.shutter-bar:first-child{--d:.86s}.shutter-bar:first-child,.shutter-bar:nth-child(3){background:var(--bg-inset)}.shutter-bar:nth-child(2),.shutter-bar:nth-child(4){background:var(--bg)}.shutter-handle{background:var(--text-muted);width:100%;height:30px;margin-top:-1px;animation:.3s ease-in-out 1.52s forwards shutter-handle-exit;position:relative;overflow:hidden}.shutter-handle:before{content:"";background:var(--bg-raised);border-radius:999px;width:50px;height:12px;animation:.25s ease-in-out 1.3s forwards shutter-pill-compress;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes shutter-collapse{0%{height:var(--bar-h)}14%{height:calc(var(--bar-h) + 8px)}55%{height:0}70%{height:10px}82%{height:0}90%{height:4px}to{height:0}}@keyframes shutter-pill-compress{0%{transform:translate(-50%,-50%)scaleX(1)scaleY(1)}20%{transform:translate(-50%,-50%)scaleX(1.1)scaleY(1)}70%{transform:translate(-50%,-50%)scaleX(.3)scaleY(.2)}to{transform:translate(-50%,-50%)scaleX(0)scaleY(0)}}@keyframes shutter-handle-exit{0%{transform:translateY(0)}to{height:0;transform:translateY(-100%)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-property:color,background-color,border-color,box-shadow,opacity!important;transition-duration:80ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.carousel-scroll{scroll-behavior:auto!important}.modal-card,.mm-popover,.book-pop{transition:opacity 80ms linear!important;transform:none!important}.shutter-overlay{display:none!important}.shutter-bar,.shutter-handle{animation:none!important}.reveal-item{opacity:1!important;transform:none!important}.tilt-card{transform:none!important}.puzzle-card.is-hovered,.puzzle-card:active,.puzzle-card.is-hovered .puzzle-img{transform:none}.puzzle-card.is-hovered .puzzle-overlay{transform:translateY(100%)}.demo-dock,.demo-dock *{transition:none!important}.demo-dock nav{opacity:1!important;transform:none!important}.toggle-knob{transition-property:transform!important;transition-duration:80ms!important}}@media (hover:none){.demo-resize-handle svg{opacity:1!important}.note-card:hover,.note-upnext-card:hover,.book-cover-item:hover,.send-btn:hover{box-shadow:none;transform:none}.modal-close:hover{transform:none}.carousel-btn:hover:not(:disabled){transform:translateY(-50%)}.about-cta-primary:hover{transform:none}.about-cta:hover{box-shadow:none;transform:none}.sound-knob:hover{box-shadow:inherit}.stack-cards:hover .stack-card{transform:none}}.sound-knob-wrap{background:radial-gradient(circle,#d8d4ce 0%,#e0ddd8 60%,#e4e0da 100%);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex;position:relative;box-shadow:inset 0 2px 6px #0000001a,inset 0 1px 2px #0000000f,0 1px #fff9}.sound-knob{cursor:pointer;width:28px;height:28px;transition:transform .3s var(--ease-spring);background:radial-gradient(at 40% 30%,#fffc 0%,#fff0 50%),linear-gradient(#f6f3ef 0%,#edeae5 40%,#e6e3de 100%);border-radius:50%;position:relative;transform:rotate(0);box-shadow:0 2px 4px #0000001a,0 4px 8px #0000000f,0 1px #fff6,inset 0 1px #ffffffe6,inset 0 -1px 2px #0000000a}.sound-knob:hover{box-shadow:0 3px 6px #0000001f,0 5px 10px #0000000f,0 1px #fff6,inset 0 1px #fffffff2,inset 0 -1px 2px #0000000a}.sound-knob:active{box-shadow:0 1px 2px #0000001a,0 2px 4px #0000000d,inset 0 1px #ffffffb3,inset 0 -1px 2px #0000000a}.sound-knob.off{transform:rotate(180deg)}.knob-dot{background:radial-gradient(circle at 35% 35%,#9b8dd6,#6b5ca8);border-radius:50%;width:3.5px;height:3.5px;margin-left:-1.75px;transition:opacity .3s cubic-bezier(.32,.72,0,1),box-shadow .3s cubic-bezier(.32,.72,0,1);position:absolute;top:3px;left:50%;box-shadow:0 0 4px #6b5ca899,0 0 8px #6b5ca84d,inset 0 1px 1px #fff6}.sound-knob.off .knob-dot{opacity:.5;background:radial-gradient(circle at 35% 35%,#c8c4be,#b0aca6);box-shadow:inset 0 1px 2px #0000001a}.side-nav{z-index:998;transition:gap .4s var(--ease);flex-direction:column;align-items:flex-end;gap:0;display:none;position:fixed;top:50%;right:20px;transform:translateY(-50%)}.side-nav:hover{gap:4px}.side-nav-line{cursor:pointer;transform-origin:100%;transition:transform .4s var(--ease),opacity .15s cubic-bezier(.32,.72,0,1);background:0 0;border:none;flex-direction:row-reverse;align-items:center;gap:10px;padding:4px 0;display:flex}.side-nav:hover .side-nav-line:first-child{transform:translate(0)rotate(14deg)}.side-nav:hover .side-nav-line:nth-child(2){transform:translate(-15px)rotate(8.4deg)}.side-nav:hover .side-nav-line:nth-child(3){transform:translate(-23px)rotate(2.8deg)}.side-nav:hover .side-nav-line:nth-child(4){transform:translate(-23px)rotate(-2.8deg)}.side-nav:hover .side-nav-line:nth-child(5){transform:translate(-15px)rotate(-8.4deg)}.side-nav:hover .side-nav-line:nth-child(6){transform:translate(0)rotate(-14deg)}.side-nav-line:before{content:"";width:6px;height:1.5px;transition:width .25s var(--ease),background .25s var(--ease);background:#3a363299;border-radius:1px;flex-shrink:0;display:block}.side-nav-line.active:before,.side-nav-line.active:hover:before{background:var(--text-primary);width:18px}.side-nav-line:not(.active):hover:before{background:var(--text-primary);width:14px}.side-nav-label{font-family:Geist Variable,sans-serif;font-size:var(--t-body-sm-size);color:var(--text-primary);letter-spacing:.01em;white-space:nowrap;opacity:.76;pointer-events:none;transition:opacity .2s var(--ease);align-items:center;gap:3px;font-weight:400;display:inline-flex}.nav-page-arrow{flex:none}.side-nav-work{color:inherit;text-decoration:none}.side-nav-line:hover .side-nav-label{opacity:1}.side-nav-line.active .side-nav-label{opacity:1;font-weight:500}.side-nav-line:focus-visible,.mobile-menu-item:focus-visible{outline:2px solid var(--text-primary);outline-offset:4px}.side-nav.proximity-active .side-nav-line:not(.active) .side-nav-label{opacity:calc(.76 + .24 * var(--prox,0))}.side-nav.proximity-active .side-nav-line:not(.active):before{width:calc(6px + 8px * var(--prox,0));background:rgba(58,54,50, calc(.6 + .4 * var(--prox,0)))}.burger-btn{top:calc(12px + env(safe-area-inset-top,0px));z-index:999;cursor:pointer;touch-action:manipulation;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:flex-end;gap:5px;width:48px;height:48px;padding:10px;display:flex;position:fixed;right:10px}.burger-line{background:var(--text-primary);width:18px;height:1.5px;transition:transform .25s var(--ease),opacity .15s var(--ease);transform-origin:50%;border-radius:1px;display:block}.burger-btn.open{z-index:1060}.burger-btn.open .burger-line:first-child{transform:translateY(6.5px)rotate(45deg)}.burger-btn.open .burger-line:nth-child(2){opacity:0}.burger-btn.open .burger-line:nth-child(3){transform:translateY(-6.5px)rotate(-45deg)}.mobile-menu-wrap{z-index:1050;pointer-events:none;opacity:0;-webkit-backdrop-filter:blur(4px);transition:opacity .25s var(--ease),transform .25s var(--ease-spring);background:#00000080;position:fixed;inset:0;transform:scale(.97)}.mobile-menu-wrap.open{pointer-events:auto;opacity:1;transform:scale(1)}.mobile-menu{background:var(--bg);width:100%;height:100dvh;padding:calc(20px + env(safe-area-inset-top,0px)) 20px 20px;padding-bottom:calc(20px + env(safe-area-inset-bottom,0px));overscroll-behavior:contain;flex-direction:column;justify-content:center;align-items:center;gap:20px;display:flex;overflow-y:auto}.mobile-menu-wrap .sheet-handle{width:36px;height:4px;top:env(safe-area-inset-top,0px);z-index:1;background:#00000026;border-radius:2px;flex-shrink:0;margin:10px auto 0;display:block;position:absolute;left:50%;transform:translate(-50%)}.mobile-menu-item{color:var(--text-primary);cursor:pointer;transition:opacity .2s var(--ease);opacity:.76;touch-action:manipulation;background:0 0;border:none;justify-content:center;align-items:center;gap:5px;min-width:min(100%,240px);min-height:48px;padding:8px 16px;text-decoration:none;display:inline-flex}.mobile-menu-item.active,.mobile-menu-item:hover{opacity:1}.mobile-menu-item:active{transform:scale(.97)}.sound-toast{transform-origin:0 100%;background:var(--text-primary);color:var(--bg);font-family:Geist Mono Variable,monospace;font-size:var(--text-xs);letter-spacing:.02em;white-space:nowrap;opacity:0;pointer-events:none;z-index:999;border-radius:100px;padding:6px 14px;font-weight:600;transition:opacity .25s cubic-bezier(.32,.72,0,1),transform .25s cubic-bezier(.34,1.56,.64,1);position:absolute;bottom:calc(100% + 10px);left:0;transform:scale(.5)translateY(8px)}.sound-toast.show{opacity:1;transform:scale(1)translateY(0)}.page-content{background:var(--bg);width:100%;min-height:100vh;padding:40px 0}.page-inner{max-width:680px;margin:0 auto}.note-filters{flex-wrap:wrap;gap:8px;max-width:520px;margin-left:auto;margin-right:auto;padding:0 0 16px;display:flex}.note-cards{flex-direction:column;gap:12px;max-width:520px;margin:0 auto;display:flex}.note-card.note-extra{opacity:0;display:none;transform:translateY(12px)}.note-cards.expanded .note-card.note-extra{animation:.3s cubic-bezier(.32,.72,0,1) forwards puzzleReveal;display:block}.note-cards.expanded .note-extra:nth-child(4){animation-delay:0s}.note-cards.expanded .note-extra:nth-child(5){animation-delay:40ms}.note-cards.expanded .note-extra:nth-child(6){animation-delay:80ms}.note-cards.expanded .note-extra:nth-child(7){animation-delay:.12s}.note-cards.expanded .note-extra:nth-child(8){animation-delay:.16s}.note-cards.collapsing .note-card.note-extra{display:none}.note-card.filter-hidden{display:none!important}.note-cards+.puzzle-show-more{margin-top:32px}.note-card{color:inherit;border-radius:var(--radius-md);transition:transform .25s var(--ease),box-shadow .25s var(--ease);background:#fff6;border:1px solid #0000000f;padding:20px;text-decoration:none;display:block}.note-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.note-card:active{transform:scale(.97)}.note-card-date{font-variant-numeric:tabular-nums;color:var(--text-muted);justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.note-card-read-time{font-family:Geist Mono Variable,monospace;font-size:var(--t-tag-size);color:#0000004d;letter-spacing:.02em;white-space:nowrap;font-weight:500}.note-card-title{color:var(--text-primary);margin-bottom:6px}.note-card-preview{color:var(--text-secondary);text-wrap:pretty;margin-bottom:10px}.note-card-tags{flex-wrap:wrap;gap:6px;display:flex}.note-card-tag{white-space:nowrap;font-family:Geist Mono Variable,monospace;font-size:var(--text-sm);letter-spacing:.01em;text-transform:uppercase;color:#00000073;background:#0000000a;border-radius:4px;padding:2px 6px;font-weight:500}.books-shelf{grid-template-columns:repeat(4,1fr);gap:12px;max-width:520px;margin:0 auto;display:grid}.book-cover-item{cursor:pointer;border-radius:6px;transition:transform .2s cubic-bezier(.32,.72,0,1),box-shadow .2s cubic-bezier(.32,.72,0,1);position:relative}.book-cover-item:hover{box-shadow:var(--shadow-md);z-index:2;transform:translateY(-2px)}.book-cover-item:active{transform:scale(.97)}.book-cover-item.active{box-shadow:0 0 0 2px var(--accent),0 4px 12px #8b7ec826}.book-cover-img{position:relative}.book-cover-img img{aspect-ratio:2/3;object-fit:cover;border-radius:6px;width:100%;display:block}.book-badge{width:20px;height:20px;box-shadow:var(--shadow-sm);background:#ffffffe6;border-radius:50%;justify-content:center;align-items:center;transition:transform .2s cubic-bezier(.32,.72,0,1),box-shadow .2s cubic-bezier(.32,.72,0,1);display:flex;position:absolute;top:4px;right:4px}.book-badge svg{transition:transform .2s cubic-bezier(.32,.72,0,1)}.book-cover-item:hover .book-badge{box-shadow:1px 2px 6px hsl(var(--shadow-hue) / .22);transform:scale(1.15)}.book-cover-item:hover .book-badge svg{transform:rotate(15deg)scale(1.1)}.book-badge.fav{border:1.5px solid #c0392b33}.book-badge.done{border:1.5px solid #8b7ec833}.book-badge[data-tip]:after{content:attr(data-tip);transform-origin:50% 0;background:var(--text-primary);color:var(--bg);font-family:Geist Mono Variable,monospace;font-size:var(--text-xs);letter-spacing:.02em;white-space:nowrap;opacity:0;pointer-events:none;border-radius:100px;padding:6px 14px;font-weight:600;transition:opacity .2s cubic-bezier(.32,.72,0,1),transform .2s cubic-bezier(.34,1.56,.64,1);position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%)scale(.5)translateY(-8px)}.book-badge[data-tip]:hover:after{opacity:1;transform:translate(-50%)scale(1)translateY(0)}.book-filters{flex-wrap:wrap;gap:8px;max-width:520px;margin:0 auto;padding:0 0 16px;display:flex}.book-pop-wrap{z-index:1050;pointer-events:none;position:fixed}.book-pop{opacity:0;transform:translateY(var(--pop-dir,8px)) scale(.97);background:#edeae6;border-radius:16px;padding:16px;transition:opacity .2s cubic-bezier(.32,.72,0,1),transform .25s cubic-bezier(.22,1.1,.36,1);box-shadow:0 16px 16px #0000001f,0 4px 12px #0000000f}.book-pop-wrap.open{pointer-events:auto}.book-pop-wrap.open .book-pop{opacity:1;transform:translateY(0)scale(1)}.book-pop-meta{font-family:Geist Variable,sans-serif;font-size:var(--text-sm);color:var(--text-secondary);align-items:center;gap:8px;margin-bottom:12px;display:flex}.book-pop-rating{font-family:Geist Mono Variable,monospace;font-size:var(--text-sm);letter-spacing:.04em;text-transform:uppercase;border-radius:var(--radius-sm);padding:4px 10px;font-weight:600}.book-pop-rating.excellent{color:#c0392b;background:#c0392b1a;border:1px solid #c0392b26}.book-pop-rating.great{color:#8b7ec8;background:#8b7ec81f;border:1px solid #8b7ec826}.book-pop-progress{align-items:center;gap:8px;margin-bottom:12px;display:flex}.book-pop-progress-bar{background:#0000000f;border-radius:2px;flex:1;height:4px;overflow:hidden}.book-pop-progress-fill{transform-origin:0;background:#8b7ec8;border-radius:2px;height:100%;transition:transform .3s cubic-bezier(.32,.72,0,1)}.book-pop-pct{font-family:Geist Mono Variable,monospace;font-size:var(--text-sm);color:var(--text-muted);flex-shrink:0}.book-pop-highlights{scrollbar-width:thin;scrollbar-color:#00000026 transparent;border-top:1px solid #0000000d;max-height:180px;margin-top:4px;padding-top:10px;padding-right:8px;overflow-y:auto}.book-pop-highlights::-webkit-scrollbar{width:4px}.book-pop-highlights::-webkit-scrollbar-track{background:0 0}.book-pop-highlights::-webkit-scrollbar-thumb{background:#00000026;border-radius:4px}.book-pop-highlights::-webkit-scrollbar-thumb:hover{background:#00000040}.book-pop-highlight{font-family:Geist Variable,sans-serif;font-size:var(--text-sm);color:var(--text-secondary);border-bottom:1px solid #0000000a;margin-bottom:0;padding:8px 0;line-height:1.55}.book-pop-highlight:last-child{border-bottom:none;padding-bottom:0}.book-pop-highlight mark{color:var(--text-primary);background:#8b7ec826;border-radius:2px;padding:1px 2px}.book-detail{clip-path:inset(0 0 100%);opacity:0;max-width:520px;margin:0 auto;transition:clip-path .3s cubic-bezier(.32,.72,0,1),opacity .25s cubic-bezier(.32,.72,0,1)}.book-detail.open{clip-path:inset(0);opacity:1;background:#fff6;border:1px solid #0000000f;border-radius:12px;margin-top:20px;padding:20px}.book-detail-header{gap:16px;margin-bottom:16px;display:flex}.book-detail-cover{flex-shrink:0;width:80px}.book-detail-cover img{width:100%;box-shadow:1px 2px 8px hsl(var(--shadow-hue) / .14);border-radius:4px}.book-detail-meta{flex:1;min-width:0}.book-detail-title{font-family:Geist Variable,sans-serif;font-size:var(--text-body);color:var(--text-primary);margin-bottom:4px;font-weight:600;line-height:1.3}.book-detail-author{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:8px}.book-detail-badge{font-family:Geist Mono Variable,monospace;font-size:var(--text-sm);letter-spacing:.04em;text-transform:uppercase;border-radius:4px;margin-bottom:8px;padding:2px 8px;font-weight:600;display:inline-block}.book-detail-badge.fav{color:#c0392b;background:#c0392b14}.book-detail-badge.done{color:#8b7ec8;background:#8b7ec814}.book-detail-progress{align-items:center;gap:8px;display:flex}.book-detail-progress-bar{background:#0000000f;border-radius:2px;flex:1;height:4px;overflow:hidden}.book-detail-progress-fill{background:var(--accent);transform-origin:0;border-radius:2px;height:100%;transition:transform .3s cubic-bezier(.32,.72,0,1)}.book-detail-progress-pct{font-family:Geist Mono Variable,monospace;font-size:var(--text-sm);color:var(--text-muted);flex-shrink:0}.book-highlights-title{font-family:Geist Mono Variable,monospace;font-size:var(--text-sm);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:12px;font-weight:600}.book-highlight{border-top:1px solid #0000000a;padding:12px 0}.book-highlight:first-child{border-top:none}.book-highlight-note{font-size:var(--text-body);color:var(--text-secondary);font-style:italic;line-height:1.65}@keyframes bookReveal{0%{opacity:0;transform:translateY(12px)}70%{opacity:1;transform:translateY(-3px)}to{opacity:1;transform:none}}.book-extra{display:none}.books-shelf.expanded .book-extra{animation:.3s cubic-bezier(.32,.72,0,1) backwards bookReveal;display:block}.mm-extra{display:none}.mymind-grid.expanded .mm-extra{opacity:0;display:block;transform:translateY(12px)}.note-page{background:var(--bg);min-height:100vh;padding:40px 24px 80px}.note-page-inner{max-width:600px;margin:0 auto}.note-page-back{color:var(--accent);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;margin-bottom:32px;padding:0;text-decoration:none;transition:opacity .15s cubic-bezier(.32,.72,0,1);display:inline-flex}.note-page-back:hover{opacity:.7}.note-page-back:active{opacity:.5}.note-page-date{color:var(--text-secondary);font-weight:400;font-size:var(--text-xs);opacity:.64;text-transform:none;letter-spacing:normal;margin-bottom:8px;display:block}.note-page-tags{flex-wrap:wrap;gap:6px;margin-bottom:16px;display:flex}.note-page-tag{font-family:Geist Mono Variable,monospace;font-size:var(--text-sm);letter-spacing:.04em;text-transform:uppercase;color:#00000059;background:#0000000a;border:1px solid #0000000f;border-radius:8px;padding:4px 10px;font-weight:600}.note-page-title{color:var(--text-primary);text-wrap:balance;margin-bottom:32px}.note-page-body{color:var(--text-secondary)}.note-page-body p{margin-bottom:16px}.note-page-body .note-img{margin:32px 0}.note-h2{font-size:inherit;color:var(--text-primary);margin:0 0 16px;font-weight:600;line-height:1.7}.note-h3{font-size:inherit;color:var(--text-primary);margin:0 0 16px;font-style:italic;font-weight:400;line-height:1.7}.note-page-body a{text-decoration:none}.note-link{color:var(--text-primary);text-underline-offset:3px;text-decoration:underline 1.5px #00000059;transition:text-decoration-color .2s cubic-bezier(.32,.72,0,1)}.note-link:hover{text-decoration-color:#00000080}.note-page-footer{border-top:1px solid #0000000f;margin-top:40px;padding-top:20px}.note-page-share{color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #00000014;border-radius:8px;align-items:center;gap:4px;padding:8px 14px;transition:background .15s cubic-bezier(.32,.72,0,1),color .15s cubic-bezier(.32,.72,0,1);display:inline-flex}.note-page-share:hover{color:var(--text-primary);background:#0000000a}.note-page-share:active{transform:scale(.97)}.note-upnext,.note-page-upnext{border-top:1px solid #0000000f;margin-top:40px;padding-top:24px}.note-upnext-label,.note-page-upnext-label{color:var(--text-muted);margin-bottom:12px}.note-upnext-card{cursor:pointer;border-radius:var(--radius-md);transition:transform .2s var(--ease),box-shadow .2s var(--ease);background:#fff6;border:1px solid #0000000f;padding:16px}.note-upnext-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.note-upnext-card:active{transform:scale(.97)}.note-page-upnext .note-card{margin-top:0}.teardown{background:var(--bg);height:100dvh;color:var(--text-primary);grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.td-left{scrollbar-width:none;min-width:0;padding:40px 48px 80px;overflow-y:auto}.td-left::-webkit-scrollbar{display:none}.td-preview{background:var(--bg-raised);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.td-preview-inner{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.td-date{color:var(--text-muted);margin-bottom:8px;display:block}.td-title{color:var(--text-primary);margin-bottom:16px}.td-intro{color:var(--text-secondary);margin-bottom:48px}.td-mockup{opacity:0;transition:opacity .3s var(--ease);pointer-events:none;justify-content:center;align-items:center;gap:16px;padding:40px;display:flex;position:absolute;inset:0}.td-mockup.active{opacity:1;pointer-events:auto}.td-mockup-frame{max-width:480px}.td-mockup-frame img{width:100%;height:auto;box-shadow:var(--shadow-lg);border-radius:12px}.td-chapter{color:var(--text-primary);border-bottom:1px solid #00000014;margin-top:48px;margin-bottom:24px;padding-bottom:12px}.td-chapter:first-child{margin-top:0}.td-section{margin-bottom:36px}.td-section-body{border-left:3px solid var(--accent);border-radius:0 var(--radius-md) var(--radius-md) 0;background:#00000005;padding:20px 24px}.td-section-title{color:var(--text-primary);margin-bottom:8px}.td-section-text{color:var(--text-secondary)}.td-section-text p{margin-bottom:12px}.td-section-text p:last-child{margin-bottom:0}@media (width<=480px){.modal-overlay{justify-content:stretch;align-items:stretch}.modal-backdrop{-webkit-backdrop-filter:blur(4px);background:#00000080}.modal-card{opacity:0;border-radius:0;width:100%;max-height:100dvh;transition:opacity .25s cubic-bezier(.32,.72,0,1),transform .35s cubic-bezier(.32,.72,0,1);transform:translateY(100dvh)}.modal-overlay.open .modal-card{opacity:1;transform:translateY(0)}.modal-card .sheet-handle{display:none}.modal-card-inner{height:100dvh;max-height:100dvh;padding-bottom:env(safe-area-inset-bottom,0px);overscroll-behavior:contain;border-radius:0}.modal-carousel{aspect-ratio:unset;flex:none;height:90vw}.modal-carousel--fit{aspect-ratio:4/3;height:auto}.carousel-scroll{scroll-snap-type:x mandatory}.carousel-slide{scroll-snap-align:center;width:100vw;min-width:100vw}.carousel-slide img,.carousel-slide video{object-position:center center}.carousel-btn{width:48px;height:48px;font-size:var(--text-body)}.modal-body{flex:1;padding:20px 20px 32px;overflow-y:auto}.modal-desc-wrap{max-height:none}.modal-close{width:36px;height:36px;font-size:var(--text-h4);opacity:1;color:#00000080;-webkit-backdrop-filter:none;background:#00000014;top:16px;right:16px}.browse-content{padding-top:calc(52px + env(safe-area-inset-top,0px))}.puzzle-card:after{display:none}.browse-section{padding:36px 20px}.puzzle-filters,.note-filters,.mymind-filters,.book-filters{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;margin-left:-20px;margin-right:-20px;padding-bottom:16px;padding-left:20px;padding-right:20px;overflow-x:auto}.puzzle-filters::-webkit-scrollbar,.note-filters::-webkit-scrollbar,.mymind-filters::-webkit-scrollbar,.book-filters::-webkit-scrollbar{display:none}.mymind-pill{white-space:nowrap}.puzzle-grid{grid-template-columns:1fr 1fr;grid-auto-rows:140px;gap:10px}.popover{width:180px}.books-shelf{grid-template-columns:repeat(3,1fr);gap:10px}.book-detail-cover{width:60px}.sheet-handle{cursor:pointer;touch-action:none;background:#00000026;border-radius:2px;flex-shrink:0;width:36px;height:4px;margin:10px auto 0;display:block;position:relative}.book-pop-wrap{-webkit-backdrop-filter:blur(4px);opacity:0;background:#00000080;transition:opacity .25s cubic-bezier(.32,.72,0,1),transform .25s cubic-bezier(.32,.72,0,1);transform:scale(.97);width:100%!important;position:fixed!important;inset:0!important}.book-pop-wrap.open{opacity:1;transform:scale(1)}.book-pop{width:100%;height:100dvh;box-shadow:none;overscroll-behavior:contain;max-height:none;padding:20px;padding-bottom:calc(20px + env(safe-area-inset-bottom,0px));background:var(--bg);border-radius:0;position:relative;overflow-y:auto}.book-pop-wrap.open .book-pop{transform:none}.book-pop-highlights{max-height:none}.book-pop-highlight{font-size:var(--t-body-sm-size);line-height:1.6}.mm-popover-wrap{-webkit-backdrop-filter:blur(4px);opacity:0;background:#00000080;transition:opacity .25s cubic-bezier(.32,.72,0,1),transform .25s cubic-bezier(.32,.72,0,1);transform:scale(.97);width:100%!important;min-width:0!important;position:fixed!important;inset:0!important}.mm-popover-wrap.open{opacity:1;transform:scale(1)}.mm-popover{width:100%;height:100dvh;box-shadow:none;overscroll-behavior:contain;max-height:none;padding:20px;padding-bottom:calc(20px + env(safe-area-inset-bottom,0px));background:var(--bg);border-radius:0;position:relative;overflow-y:auto}.mm-popover-wrap.open .mm-popover{transform:none}.pop-tldr{font-size:var(--t-body-sm-size);line-height:1.6}.mm-scrim.open{background:#0000004d;transition:background .25s cubic-bezier(.32,.72,0,1)}.note-page{padding:32px 20px 60px}.teardown{grid-template-rows:40vh 1fr;grid-template-columns:1fr;height:100dvh}.td-left{order:2;padding:24px 20px 60px}.td-preview{order:1}.td-mockup{padding:16px 20px}.td-chapter{margin-top:32px}.td-section-body{padding:16px 20px}.stack-card{margin-left:-22px;padding:6px 8px}.stack-card:first-child{margin-left:0}.about-cta-row{flex-direction:column}.about-cta{text-align:center}.skill-item{margin-top:20px}.skill-item strong,.skill-item span{font-size:14px}.skill-filters{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;margin:0 -24px;padding:0 24px 16px;overflow-x:auto}.skill-item .note-code{padding-right:14px}.note-code-copy{margin:4px 0 0 auto;display:block;position:static;transform:none}.note-code-copy:active{transform:scale(.97)}.pop-close{width:44px;height:44px;font-size:var(--text-h4);margin:0;position:absolute;top:16px;right:16px}.puzzle-show-more{min-height:48px}.about-cta{justify-content:center;align-items:center;min-width:48px;min-height:48px;display:inline-flex}.about-cta-primary{align-items:center;min-height:48px;display:inline-flex}}@media (width>=481px) and (width<=768px){.modal-card{width:min(640px,95vw)}}@media (width>=769px){.side-nav{display:flex}.burger-btn,.mobile-menu-wrap{display:none}}
