@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.06d3mdzz5bre_.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.11.cyxs5p-0z~.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.16t1db8_9y2o~.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:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.0q3udbd2bu5yp.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.0gw~uztddq1df.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.0.q-h669a_dqa.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:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.fixed{position:fixed}.start{inset-inline-start:var(--spacing)}.right-6{right:calc(var(--spacing) * 6)}.bottom-8{bottom:calc(var(--spacing) * 8)}.z-50{z-index:50}.block{display:block}.flex{display:flex}.h-full{height:100%}.min-h-full{min-height:100%}.grow{flex-grow:1}.flex-col{flex-direction:column}.gap-3{gap:calc(var(--spacing) * 3)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif}img{max-width:100%;height:auto;display:block}*,:before,:after{box-sizing:border-box}:root{--writeup-bg:#f6f8fc;--writeup-bg-accent:#eef2ff;--writeup-card:#ffffffe0;--writeup-card-solid:#fff;--writeup-text:#0f172a;--writeup-text-soft:#334155;--writeup-muted:#64748b;--writeup-border:#e2e8f0;--writeup-link:#2563eb;--writeup-code-bg:#0f172a;--writeup-code-text:#e2e8f0;--writeup-quote-bg:#f8fafc;--writeup-quote-border:#cbd5e1;--writeup-callout-bg:#fff7d6;--writeup-callout-border:#facc15;--writeup-shadow:0 10px 30px #0f172a14;--home-bg:#050a0e;--home-surface:#0d1b2a;--home-border:#00ffaa1f;--home-border-2:#00ffaa38;--home-green:#0fa;--home-green-dim:#0c8;--home-text-1:#e8f4f0;--home-text-2:#8ab0a0;--home-text-3:#4a7060;--font-display:"Syne", sans-serif;--font-mono:"JetBrains Mono", monospace;--font-body:"DM Sans", sans-serif}.dark{--writeup-bg:#020617;--writeup-bg-accent:#0f172a;--writeup-card:#0f172acc;--writeup-card-solid:#0f172a;--writeup-text:#e5e7eb;--writeup-text-soft:#cbd5e1;--writeup-muted:#94a3b8;--writeup-border:#1e293b;--writeup-link:#60a5fa;--writeup-code-bg:#020617;--writeup-code-text:#e2e8f0;--writeup-quote-bg:#0b1220;--writeup-quote-border:#334155;--writeup-callout-bg:#2a2110;--writeup-callout-border:#a16207;--writeup-shadow:0 10px 30px #00000059}.writeup-page{background:radial-gradient(circle at top, var(--writeup-bg-accent), transparent 35%), var(--writeup-bg);min-height:100vh;color:var(--writeup-text);padding:25px 20px 80px;transition:background .25s,color .25s}.writeup-shell{max-width:1000px;margin:0 auto}.writeup-toolbar{z-index:1000;margin-bottom:0;position:fixed;bottom:20px;right:20px}.theme-toggle{border:1px solid var(--writeup-border);background:var(--writeup-card);width:52px;height:52px;color:var(--writeup-text);cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--writeup-shadow);border-radius:50%;justify-content:center;align-items:center;font-size:1.2rem;transition:all .2s;display:flex}.theme-toggle:hover{transform:translateY(-2px)scale(1.05)}.writeup-card{background:var(--writeup-card);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--writeup-border);box-shadow:var(--writeup-shadow);border-radius:28px;overflow:hidden}.writeup-cover-wrap{padding:20px 20px 0}.writeup-cover{object-fit:cover;border:1px solid var(--writeup-border);border-radius:22px;width:100%;max-height:420px}.writeup-header{padding:28px 34px 12px}.writeup-title{letter-spacing:-.045em;color:var(--writeup-text);margin:0;font-size:clamp(2.2rem,5vw,3.5rem);font-weight:800;line-height:1.05}.writeup-content{padding:8px 34px 44px}.writeup-content h1,.writeup-content h2,.writeup-content h3,.writeup-content h4{color:var(--writeup-text);letter-spacing:-.03em;margin-top:2em;margin-bottom:.8em;font-weight:800}.writeup-content h1{font-size:2rem}.writeup-content h2{border-bottom:1px solid var(--writeup-border);padding-bottom:.45rem;font-size:1.55rem}.writeup-content h3{font-size:1.2rem}.writeup-content h4{font-size:1.05rem}.writeup-content p{color:var(--writeup-text-soft);margin:1rem 0;font-size:1.08rem;line-height:1.95}.writeup-content a{color:var(--writeup-link);font-weight:600;text-decoration:none}.writeup-content a:hover{text-decoration:underline}.writeup-content ul,.writeup-content ol{color:var(--writeup-text-soft);margin:1rem 0 1.25rem 1.5rem;padding-left:1.1rem;line-height:1.9}.writeup-content li{margin:.4rem 0}.writeup-content ul{list-style:outside}.writeup-content ol{list-style:decimal}.writeup-content hr{border:0;border-top:1px solid var(--writeup-border);margin:2rem 0}.writeup-content blockquote{background:var(--writeup-quote-bg);border-left:4px solid var(--writeup-quote-border);color:var(--writeup-text-soft);border-radius:0 16px 16px 0;margin:1.5rem 0;padding:1rem 1.2rem;overflow-x:auto}.writeup-content pre{background:var(--writeup-code-bg);color:var(--writeup-code-text);border:1px solid var(--writeup-border);border-radius:18px;margin:1.5rem 0;padding:1.1rem 1.2rem;overflow-x:auto}.writeup-content pre code{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;font-family:Courier New,Courier,monospace;font-size:.94rem;line-height:1.7;display:block}.writeup-content p code,.writeup-content li code,.writeup-content blockquote code,.writeup-content .callout code{color:#e11d48;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;background:#94a3b82e;border-radius:8px;padding:.16rem .42rem;font-size:.92em}.dark .writeup-content p code,.dark .writeup-content li code,.dark .writeup-content blockquote code,.dark .writeup-content .callout code{color:#fb7185}.writeup-content figure{margin:2rem 0}.writeup-content figcaption{text-align:center;color:var(--writeup-muted);margin-top:.75rem;font-size:.92rem}.writeup-content .callout{background:var(--writeup-callout-bg);border:1px solid var(--writeup-callout-border);color:var(--writeup-text-soft);border-radius:16px;margin:1.5rem 0;padding:1rem 1.1rem}.writeup-content p,.writeup-content li,.writeup-content blockquote,.writeup-content .callout,.writeup-content figcaption,.writeup-content blockquote p,.writeup-content blockquote span,.writeup-content .callout p,.writeup-content .callout span{overflow-wrap:anywhere;word-break:break-word}.writeup-footer{text-align:center;color:var(--writeup-muted);border-top:1px solid var(--writeup-border);margin-top:40px;padding-top:20px;font-size:.85rem}@media (max-width:768px){.writeup-page{padding:24px 12px 48px}.writeup-cover-wrap{padding:14px 14px 0}.writeup-header{padding:20px 20px 10px}.writeup-content{padding:8px 20px 28px}.writeup-cover{border-radius:16px}}.home-page{background:var(--home-bg);max-height:1000dvh;color:var(--home-text-1);font-family:var(--font-body);position:relative;overflow:hidden}.noise-overlay{z-index:0;pointer-events:none;opacity:.028;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");background-size:180px 180px;position:fixed;inset:0}.home-shell{width:100%;max-width:1920px;margin:0 auto;padding:0 28px}.hero-top{isolation:isolate;flex-direction:column;min-height:100vh;display:flex;position:relative}.hero-grid-bg{pointer-events:none;z-index:0;background-image:radial-gradient(circle,#00ffaa21 1px,#0000 1px);background-size:38px 38px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 80%,#000 40%,#0000 100%);mask-image:radial-gradient(80% 80%,#000 40%,#0000 100%)}.scanlines{z-index:0;pointer-events:none;background:repeating-linear-gradient(0deg,#0000,#0000 3px,#00000012 3px 4px);position:absolute;inset:0}.hero-top:before{content:"";clip-path:polygon(12% 0,100% 0,100% 100%,0% 100%);z-index:0;pointer-events:none;background:linear-gradient(135deg,#00ffaa0a 0%,#00d4ff12 50%,#0000 100%);border-left:1px solid #00ffaa14;width:54%;height:120%;position:absolute;top:-10%;right:-5%}.landing-nav{z-index:20;justify-content:space-between;align-items:center;width:100%;max-width:1180px;margin:0 auto;padding:28px 28px 20px;display:flex;position:relative}.landing-brand{color:inherit;z-index:25;text-decoration:none;position:relative}.brand-logo{filter:invert()brightness(1.1)}.landing-nav-links{z-index:25;align-items:center;gap:32px;display:flex;position:relative}.landing-nav-links a{font-family:var(--font-mono);color:var(--home-text-2);letter-spacing:.08em;text-transform:uppercase;font-size:.82rem;font-weight:600;text-decoration:none;transition:color .2s}.landing-nav-links a:before{content:"./";color:var(--home-green);opacity:.5;margin-right:2px;transition:opacity .2s}.landing-nav-links a:hover{color:var(--home-green)}.landing-nav-links a:hover:before{opacity:1}.landing-hero-inner-wrap{z-index:10;flex-direction:column;flex:1;width:100%;max-width:1220px;margin:0 auto;padding:0 28px;display:flex;position:relative}.landing-hero{flex:1;grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);align-items:center;gap:40px;min-height:0;padding:18px 0 40px;display:grid}.landing-left{z-index:30;flex-direction:column;justify-content:center;padding:16px 0;display:flex;position:relative}.terminal-tag{font-family:var(--font-mono);color:var(--home-green);border:1px solid var(--home-border-2);background:#00ffaa0a;border-radius:4px;align-items:center;gap:6px;width:fit-content;margin-bottom:14px;padding:6px 14px;font-size:.8rem;display:inline-flex}.terminal-cursor{background:var(--home-green);border-radius:1px;width:7px;height:14px;animation:1.1s step-end infinite blink;display:inline-block}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.landing-eyebrow{font-family:var(--font-mono);color:var(--home-text-2);letter-spacing:.18em;text-transform:uppercase;margin:0 0 10px;font-size:.9rem;font-weight:600}.landing-title{font-family:var(--font-display);letter-spacing:-.04em;color:var(--home-text-1);margin:0;font-size:clamp(3.6rem,7vw,6.2rem);font-weight:900;line-height:.9}.title-accent{color:var(--home-green);text-shadow:0 0 40px #00ffaa59}.landing-role{max-width:540px;color:var(--home-text-2);font-size:.95rem;font-weight:500;line-height:1.7;font-family:var(--font-mono);margin:16px 0 0}.landing-description{max-width:520px;color:var(--home-text-3);margin:10px 0 0;font-size:.97rem;line-height:1.85}.landing-actions{z-index:40;flex-wrap:wrap;align-items:center;gap:16px;margin-top:24px;display:flex;position:relative}.landing-primary-btn,.landing-secondary-btn{min-height:50px;font-family:var(--font-mono);letter-spacing:.06em;cursor:pointer;z-index:41;pointer-events:auto;border-radius:4px;justify-content:center;align-items:center;gap:4px;padding:0 26px;font-size:.88rem;font-weight:700;text-decoration:none;transition:transform .22s,box-shadow .22s,color .22s,border-color .22s,background .22s;display:inline-flex;position:relative}.landing-primary-btn{background:var(--home-green);color:#020a06;box-shadow:0 0 28px #00ffaa47}.btn-bracket{opacity:.6;font-size:1.1em;transition:opacity .2s}.landing-primary-btn:hover{background:#0fb;transform:translateY(-2px);box-shadow:0 0 44px #00ffaa73}.landing-primary-btn:hover .btn-bracket{opacity:1}.landing-secondary-btn{border:1px solid var(--home-border-2);color:var(--home-text-2);background:0 0}.landing-secondary-btn:hover{border-color:var(--home-green);color:var(--home-green);background:#00ffaa0a;transform:translateY(-2px)}.landing-stats{border:1px solid var(--home-border);background:#00ffaa08;border-radius:6px;align-items:center;width:fit-content;margin-top:24px;display:flex;overflow:hidden}.landing-stat{flex-direction:column;gap:4px;padding:16px 28px;display:flex}.landing-stat strong{font-family:var(--font-display);color:var(--home-green);text-shadow:0 0 20px #00ffaa4d;font-size:1.3rem;font-weight:900;line-height:1}.landing-stat span{font-family:var(--font-mono);color:var(--home-text-3);letter-spacing:.08em;text-transform:uppercase;font-size:.74rem}.stat-divider{background:var(--home-border);flex-shrink:0;align-self:center;width:1px;height:40px}.landing-right{z-index:5;pointer-events:none;min-height:540px;position:relative}.photo-frame{z-index:2;position:absolute;inset:20px 0}.photo-frame:after{content:"";filter:blur(40px);z-index:1;background:radial-gradient(circle,#00ffaa1f,#0000 70%);position:absolute;inset:0}.photo-corner{z-index:4;width:22px;height:22px;position:absolute}.photo-corner.tl{border-top:2px solid var(--home-green);border-left:2px solid var(--home-green);top:0;left:0}.photo-corner.tr{border-top:2px solid var(--home-green);border-right:2px solid var(--home-green);top:0;right:0}.photo-corner.bl{border-bottom:2px solid var(--home-green);border-left:2px solid var(--home-green);bottom:0;left:0}.photo-corner.br{border-bottom:2px solid var(--home-green);border-right:2px solid var(--home-green);bottom:0;right:0}.photo-scan-line{background:linear-gradient(90deg, transparent, var(--home-green), transparent);opacity:.5;z-index:5;height:2px;animation:4s ease-in-out infinite scanDown;position:absolute;left:0;right:0}@keyframes scanDown{0%{opacity:.5;top:0%}50%{opacity:.3;top:100%}to{opacity:.5;top:0%}}.landing-photo-full{object-fit:contain;object-position:center bottom;filter:brightness(.85)contrast(1.05)saturate(.9);-webkit-mask-image:linear-gradient(#000 70%,#0000 100%);mask-image:linear-gradient(#000 70%,#0000 100%)}.floating-badge{border:1px solid var(--home-border-2);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:6;background:#050a0ee0;border-radius:6px;align-items:center;gap:10px;padding:12px 16px;display:flex;position:absolute;box-shadow:0 0 20px #00ffaa1a}.badge-dot{background:var(--home-green);width:8px;height:8px;box-shadow:0 0 8px var(--home-green);border-radius:50%;flex-shrink:0;animation:2s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.5}}.badge-top{animation:6s ease-in-out infinite floatBadge;top:8%;left:-8%}.badge-bottom{animation:7s ease-in-out infinite reverse floatBadge;bottom:12%;right:-4%}@keyframes floatBadge{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.badge-label{font-family:var(--font-mono);color:var(--home-text-3);letter-spacing:.1em;text-transform:uppercase;margin-bottom:3px;font-size:.68rem;display:block}.floating-badge strong{font-family:var(--font-mono);color:var(--home-text-1);font-size:.85rem;font-weight:700;display:block}.floating-socials{z-index:200;flex-direction:column;gap:10px;display:flex;position:fixed;top:50%;left:20px;transform:translateY(-50%)}.floating-socials a{width:40px;height:40px;color:var(--home-text-3);border:1px solid var(--home-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0d1b2ae6;border-radius:4px;justify-content:center;align-items:center;text-decoration:none;transition:all .2s;display:inline-flex}.floating-socials a:hover{color:var(--home-green);border-color:var(--home-border-2);transform:translate(2px);box-shadow:0 0 16px #0fa3}@media (max-width:980px){.landing-hero{grid-template-columns:1fr;gap:18px;padding-top:6px}.landing-right{background:linear-gradient(135deg,#00ffaa0d,#0000);order:-1;min-height:360px}.landing-right:before{content:"";-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:0;position:absolute;inset:0}.badge-top{left:2%}.badge-bottom{right:2%}.hero-top:before{display:none}}@media (max-width:640px){.home-shell,.landing-hero-inner-wrap{padding-left:16px;padding-right:16px}.landing-nav{flex-wrap:wrap;gap:14px;padding-top:20px}.landing-nav-links{flex-wrap:wrap;gap:18px}.landing-title{font-size:clamp(2.8rem,12vw,4.2rem)}.landing-actions,.landing-primary-btn,.landing-secondary-btn{width:100%}.landing-stats{flex-wrap:wrap;width:100%}.landing-stat{flex:100%}.stat-divider,.floating-socials{display:none}}.writeups-index-page{background:var(--home-bg);min-height:100vh;color:var(--home-text-1);font-family:var(--font-body);padding:36px 0 60px;position:relative;overflow-x:hidden}.writeups-index-shell{z-index:5;width:100%;max-width:1280px;margin:0 auto;padding:0 24px;position:relative}.writeups-index-header{margin-bottom:30px}.writeups-index-eyebrow{font-family:var(--font-mono);color:var(--home-text-2);letter-spacing:.18em;text-transform:uppercase;margin:0 0 10px;font-size:.88rem;font-weight:600}.writeups-index-title{font-family:var(--font-display);letter-spacing:-.04em;color:var(--home-text-1);margin:0;font-size:clamp(2.6rem,6vw,4.8rem);font-weight:900;line-height:.95}.writeups-index-description{max-width:760px;color:var(--home-text-2);margin:16px 0 0;font-size:1rem;line-height:1.85}.writeups-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;margin:28px 0 30px;display:flex}.writeups-search-wrap{width:100%;max-width:520px;position:relative}.writeups-search-icon{width:18px;height:18px;color:var(--home-text-3);pointer-events:none;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.writeups-search{border:1px solid var(--home-border-2);width:100%;height:52px;color:var(--home-text-1);font-family:var(--font-body);background:#0d1b2ab8;border-radius:8px;outline:none;padding:0 16px 0 46px;font-size:1rem;box-shadow:inset 0 0 0 1px #00ffaa05}.writeups-search::placeholder{color:var(--home-text-3)}.writeups-toolbar-note{font-family:var(--font-mono);color:var(--home-text-3);letter-spacing:.08em;text-transform:uppercase;font-size:.8rem}.writeups-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.writeup-index-card{border:1px solid var(--home-border);min-width:0;color:inherit;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0d1b2ad1;border-radius:14px;flex-direction:column;text-decoration:none;transition:transform .22s,border-color .22s,box-shadow .22s;display:flex;overflow:hidden;box-shadow:0 0 0 1px #00ffaa05,0 18px 40px #00000038}.writeup-index-card:hover{border-color:var(--home-border-2);transform:translateY(-6px);box-shadow:0 0 0 1px #00ffaa0f,0 0 24px #00ffaa14,0 18px 40px #00000047}.writeup-index-card-media{aspect-ratio:16/9;background:linear-gradient(135deg,#00ffaa0f,#0000002e);position:relative;overflow:hidden}.writeup-index-card-image{object-fit:cover;width:100%;height:100%}.writeup-index-card-image-fallback{background:radial-gradient(circle at top,#00ffaa24,#0000 40%),linear-gradient(135deg,#0d1b2af5,#040c14f5);place-items:center;width:100%;height:100%;display:grid}.writeup-index-card-fallback-badge{border:1px solid var(--home-border-2);color:var(--home-green);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;background:#00ffaa0f;border-radius:999px;padding:10px 16px;font-size:.8rem;font-weight:700}.writeup-index-card-body{flex-direction:column;flex:1;padding:18px 18px 16px;display:flex}.writeup-index-meta{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.writeup-index-chip{border:1px solid var(--home-border-2);min-height:28px;color:var(--home-green);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;background:#00ffaa0d;border-radius:999px;align-items:center;padding:0 10px;font-size:.74rem;font-weight:700;display:inline-flex}.writeup-index-chip.muted{color:var(--home-text-2);background:#ffffff05;border-color:#ffffff14}.writeup-index-card-title{color:var(--home-text-1);letter-spacing:-.02em;margin:0;font-size:1.45rem;font-weight:800;line-height:1.18}.writeup-index-card-text{color:var(--home-text-2);flex:1;margin:14px 0 0;font-size:.98rem;line-height:1.8}.writeup-index-card-footer{border-top:1px solid #ffffff0f;justify-content:space-between;align-items:center;gap:14px;margin-top:18px;padding-top:14px;display:flex}.writeup-index-readmore{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--home-green);font-size:.82rem;font-weight:700}.writeup-index-arrow{color:var(--home-green);font-size:1.15rem;transition:transform .2s}.writeup-index-card:hover .writeup-index-arrow{transform:translate(4px)}.writeups-empty{border:1px solid var(--home-border);text-align:center;background:#0d1b2ab8;border-radius:16px;padding:32px 24px}.writeups-empty h2{color:var(--home-text-1);margin:0}.writeups-empty p{color:var(--home-text-2);margin:12px 0 0}@media (max-width:1100px){.writeups-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:768px){.writeups-index-page{padding:24px 0 46px}.writeups-index-shell{padding:0 18px}.writeups-toolbar{margin-top:22px}.writeups-grid{gap:18px}.writeup-index-card-title{font-size:1.3rem}}@media (max-width:640px){.writeups-index-shell{padding:0 16px}.writeups-grid{grid-template-columns:1fr}.writeups-toolbar{align-items:stretch}.writeups-search-wrap{max-width:100%}.writeups-toolbar-note{font-size:.74rem}.writeup-index-card-body{padding:16px}}.writeups-topbar{align-items:center;margin-bottom:18px;display:flex}.writeups-back-btn{border:1px solid var(--home-border-2);min-height:44px;color:var(--home-text-2);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:#0d1b2ab8;border-radius:8px;align-items:center;gap:10px;padding:0 16px;font-size:.82rem;font-weight:700;transition:color .2s,border-color .2s,background .2s,transform .2s,box-shadow .2s;display:inline-flex}.writeups-back-btn:hover{color:var(--home-green);border-color:var(--home-green);background:#00ffaa0d;transform:translateY(-2px);box-shadow:0 0 18px #00ffaa14}.writeups-back-btn:focus-visible{border-color:var(--home-green);outline:none;box-shadow:0 0 0 1px #00ffaa26,0 0 20px #00ffaa1f}.writeups-back-arrow{font-size:1rem;line-height:1}.writeup-index-card-loading{pointer-events:none}.loading-back-btn{opacity:.85}.loading-terminal-tag{opacity:.9}.loading-search-skeleton{border-color:var(--home-border-2);position:relative;overflow:hidden}.loading-search-skeleton:before,.loading-shimmer:before,.loading-line:before{content:"";background:linear-gradient(90deg,#0000 0%,#00ffaa0a 35%,#00ffaa24 50%,#00ffaa0a 65%,#0000 100%);animation:1.6s ease-in-out infinite cyberShimmer;position:absolute;inset:0;transform:translate(-100%)}.loading-shimmer{background:radial-gradient(circle at top,#00ffaa1f,#0000 42%),linear-gradient(135deg,#0d1b2af5,#040c14f5);position:relative;overflow:hidden}.loading-image-glow{opacity:.9;background:linear-gradient(135deg,#00ffaa0f,#00d4ff0a,#00ffaa08);position:absolute;inset:0}.loading-chip,.loading-chip-muted{position:relative;overflow:hidden}.loading-chip{color:#0fac}.loading-chip-muted{color:#8ab0a0d9}.loading-copy{margin-top:14px}.loading-line{background:#ffffff0f;border-radius:999px;width:100%;height:12px;margin-top:12px;position:relative;overflow:hidden}.loading-line-title{background:#ffffff14;width:88%;height:18px;margin-top:0}.loading-line-title.short{width:56%}.loading-line.medium{width:82%}.loading-line.short{width:58%}.loading-readmore{color:#00ffaabf}@keyframes cyberShimmer{to{transform:translate(100%)}}.writeup-loading-page{position:relative}.writeup-loading-card{overflow:hidden}.writeup-loading-toggle{pointer-events:none;opacity:.8}.writeup-loading-cover{border:1px solid var(--writeup-border);background:radial-gradient(circle at top,#60a5fa1f,#0000 40%),linear-gradient(135deg,#0f172ae6,#1e293be0);border-radius:22px;width:100%;height:min(42vw,420px)}.writeup-loading-title-block{flex-direction:column;gap:14px;display:flex}.writeup-loading-line{background:#94a3b824;border-radius:999px;width:100%;height:14px;position:relative;overflow:hidden}.writeup-loading-line:before,.writeup-loading-code:before,.writeup-loading-quote:before,.writeup-loading-cover:before{content:"";background:linear-gradient(90deg,#0000 0%,#60a5fa0d 35%,#60a5fa29 50%,#60a5fa0d 65%,#0000 100%);animation:1.6s ease-in-out infinite writeupShimmer;position:absolute;inset:0;transform:translate(-100%)}.writeup-loading-line-title{background:#94a3b82e;width:76%;height:30px}.writeup-loading-line-subtitle{width:42%;height:16px}.writeup-loading-line-heading{background:#94a3b82e;width:34%;height:20px;margin-bottom:20px}.writeup-loading-line-heading.small{width:26%}.writeup-loading-line.medium{width:84%}.writeup-loading-line.short{width:62%}.writeup-loading-content{flex-direction:column;gap:28px;display:flex}.writeup-loading-section{flex-direction:column;gap:14px;display:flex}.writeup-loading-code{border:1px solid var(--writeup-border);background:linear-gradient(135deg,#020617fa,#0f172af5);border-radius:18px;min-height:180px;position:relative;overflow:hidden}.writeup-loading-quote{border-left:4px solid var(--writeup-quote-border);background:var(--writeup-quote-bg);border-radius:16px;min-height:92px;position:relative;overflow:hidden}@keyframes writeupShimmer{to{transform:translate(100%)}}@media (max-width:768px){.writeup-loading-line-title{width:88%;height:26px}.writeup-loading-line-subtitle{width:58%}.writeup-loading-line-heading{width:46%}.writeup-loading-line-heading.small{width:36%}.writeup-loading-code{min-height:150px}.writeup-loading-quote{min-height:76px}}.writeups-filter-group{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.writeups-filter-select{border:1px solid var(--home-border-2);min-width:180px;height:52px;color:var(--home-text-1);font-family:var(--font-body);cursor:pointer;background:#0d1b2ab8;border-radius:8px;outline:none;padding:0 14px;font-size:.95rem;transition:border-color .2s,box-shadow .2s,background-color .2s}.writeups-filter-select:focus{border-color:var(--home-green);box-shadow:0 0 0 1px #00ffaa14,0 0 20px #00ffaa14}.writeup-index-chip-category,.writeup-index-chip-tag{color:#ffd9d2;background:#c9615433;border-color:#c9615473}@media (max-width:768px){.writeups-filter-group{grid-template-columns:1fr;gap:10px;width:100%;display:grid}.writeups-filter-select{border-radius:7px;width:100%;height:46px;min-height:46px;padding:0 12px;font-size:.88rem}}@media (max-width:640px){.writeups-filter-group{grid-template-columns:1fr;gap:10px;width:100%;display:grid}.writeups-filter-select{border-radius:7px;width:100%;height:46px;min-height:46px;padding:0 12px;font-size:.88rem}}.about-page{background:var(--home-bg);min-height:100vh;color:var(--home-text-1);font-family:var(--font-body);padding:36px 0 70px;position:relative;overflow-x:hidden}.about-shell{z-index:5;width:100%;max-width:1280px;margin:0 auto;padding:0 24px;position:relative}.about-topbar{align-items:center;margin-bottom:24px;display:flex}.about-back-btn{border:1px solid var(--home-border-2);min-height:44px;color:var(--home-text-2);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;background-color:#0d1b2ab8;border-radius:8px;align-items:center;gap:10px;padding:0 16px;font-size:.82rem;font-weight:700;text-decoration:none;transition:color .2s,border-color .2s,background-color .2s,transform .2s,box-shadow .2s;display:inline-flex}.about-back-btn:hover{color:var(--home-green);border-color:var(--home-green);background-color:#00ffaa0d;transform:translateY(-2px);box-shadow:0 0 18px #00ffaa14}.about-back-arrow{font-size:1rem;line-height:1}.about-hero{grid-template-columns:minmax(0,1.1fr) 380px;align-items:center;gap:48px;margin-bottom:34px;display:grid}.about-copy{min-width:0}.about-eyebrow{font-family:var(--font-mono);color:var(--home-text-2);letter-spacing:.18em;text-transform:uppercase;margin:0 0 10px;font-size:.88rem;font-weight:600}.about-title{font-family:var(--font-display);letter-spacing:-.045em;color:var(--home-text-1);margin:0;font-size:clamp(3rem,7vw,5.6rem);font-weight:900;line-height:.95}.about-description{max-width:760px;color:var(--home-text-2);margin:18px 0 0;font-size:1.05rem;line-height:1.85}.about-current-work{border:1px solid var(--home-border);background:radial-gradient(circle at 0 0,#00ffaa14,#0000 36%),#0d1b2ab8;border-radius:14px;max-width:760px;margin-top:28px;padding:22px;box-shadow:0 18px 40px #00000038}.about-current-work h2{color:var(--home-text-1);margin:10px 0 0;font-size:1.35rem;font-weight:800}.about-current-work p{color:var(--home-text-2);margin:10px 0 0;line-height:1.8}.about-photo-panel{justify-content:center;display:flex}.about-photo-frame{aspect-ratio:4/5;border:1px solid var(--home-border-2);background:radial-gradient(circle,#00ffaa1f,#0000 62%),#0d1b2ab8;border-radius:22px;width:100%;max-width:360px;position:relative;overflow:hidden;box-shadow:0 0 32px #00ffaa14,0 35px 80px #0000006b}.about-photo{object-fit:cover;object-position:center;filter:brightness(.88)contrast(1.06)saturate(.9)}.about-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:22px;display:grid}.about-column{flex-direction:column;gap:22px;display:flex}.about-card{border:1px solid var(--home-border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0d1b2ac2;border-radius:16px;align-self:start;padding:24px;box-shadow:0 0 0 1px #00ffaa05,0 18px 40px #00000038}.about-section-label{color:var(--home-green);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;margin-bottom:16px;font-size:.76rem;font-weight:800;display:inline-flex}.about-timeline{flex-direction:column;gap:24px;display:flex}.about-timeline-item{padding-left:22px;position:relative}.about-timeline-item:before{content:"";background:var(--home-green);border-radius:999px;width:8px;height:8px;position:absolute;top:7px;left:0;box-shadow:0 0 12px #00ffaaa6}.about-timeline-item h2{color:var(--home-text-1);margin:0;font-size:1.18rem;font-weight:800}.about-timeline-item p{color:var(--home-text-2);margin:8px 0 0;line-height:1.7}.about-timeline-item span{color:var(--home-text-3);font-family:var(--font-mono);letter-spacing:.06em;margin-top:8px;font-size:.78rem;display:inline-flex}.about-timeline-item ul{color:var(--home-text-2);margin:14px 0 0;padding-left:18px;line-height:1.8}.about-chip-group{flex-wrap:wrap;gap:10px;display:flex}.about-chip-group span{border:1px solid var(--home-border-2);min-height:34px;color:var(--home-green);font-family:var(--font-mono);letter-spacing:.06em;background:#00ffaa0d;border-radius:999px;align-items:center;padding:0 12px;font-size:.78rem;font-weight:700;display:inline-flex}.about-skill-list{flex-direction:column;gap:14px;display:flex}.about-skill-list p{color:var(--home-text-2);margin:0;line-height:1.8}@media (max-width:980px){.about-hero{grid-template-columns:1fr;gap:32px}.about-photo-panel{justify-content:flex-start}.about-photo-frame{max-width:320px}.about-grid{grid-template-columns:1fr}}@media (max-width:640px){.about-page{padding:24px 0 48px}.about-shell{padding:0 16px}.about-title{font-size:clamp(2.4rem,13vw,3.6rem)}.about-description{font-size:.95rem}.about-current-work,.about-card{padding:18px}.about-photo-frame{max-width:100%}}.coming-page{background:var(--home-bg);min-height:100vh;color:var(--home-text-1);justify-content:center;align-items:center;display:flex;position:relative}.coming-shell{z-index:5;width:100%;max-width:900px;padding:40px 24px;position:relative}.coming-topbar{position:absolute;top:20px;left:20px}.coming-back-btn{border:1px solid var(--home-border-2);min-height:44px;color:var(--home-text-2);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;background:#0d1b2ab3;border-radius:8px;align-items:center;gap:10px;padding:0 16px;font-size:.82rem;font-weight:700;text-decoration:none;transition:all .2s;display:inline-flex}.coming-back-btn:hover{color:var(--home-green);border-color:var(--home-green);transform:translateY(-2px);box-shadow:0 0 14px #0fa3}.coming-back-arrow{font-size:1rem}.coming-center{text-align:center;flex-direction:column;align-items:center;gap:18px;display:flex}.coming-title{font-family:var(--font-display);letter-spacing:-.04em;font-size:clamp(3rem,6vw,5rem);font-weight:900}.coming-description{max-width:520px;color:var(--home-text-2);line-height:1.8}.coming-terminal{border:1px solid var(--home-border);font-family:var(--font-mono);text-align:left;background:#0d1b2acc;border-radius:10px;width:100%;max-width:420px;margin-top:20px;padding:18px 20px;font-size:.9rem}.terminal-green{color:var(--home-green);margin-right:6px}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
