@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;700;800&family=Sora:wght@400;600;700;800&display=swap";*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.block{display:block}.table{display:table}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.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)}:root{--bg: #121416;--panel: #17191d;--panel-soft: #1d2026;--text: #d9dde5;--muted: #8890a2;--line: rgba(255, 120, 39, .16);--line-strong: rgba(255, 120, 39, .35);--accent: #ff6c2f;--accent-2: #4e8cff;--success: #1ad47a;--card-blue-border: rgba(255, 108, 47, .35);--card-blue-bg: linear-gradient(180deg, rgba(20, 22, 27, .94), rgba(14, 16, 20, .95));--card-blue-shadow: 0 25px 80px rgba(0, 0, 0, .5), 0 0 28px rgba(255, 108, 47, .11);--section-block-pad: 4.6rem;--globe-accent: #ff6c2f;--globe-core: #6b4c35;--globe-hotspot: #a8683f;--globe-wire: #ffaa73;--globe-wire-glow: #ffc39f;--globe-aura-soft: rgba(255, 182, 136, .28);--globe-aura-mid: rgba(255, 132, 82, .1);--globe-aura-clear: rgba(255, 108, 47, 0);--orbit-icon-glow: rgba(255, 126, 65, .15);--orbit-accent-glow: rgba(255, 108, 47, .46);--orbit-accent-label: #ff6c2f;--orbit-accent-shadow: rgba(255, 108, 47, .34);--orbit-hover-glow: rgba(255, 108, 47, .65);--orbit-hover-label: #ff6c2f;--orbit-hover-shadow: rgba(255, 108, 47, .46)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:1.25rem}body{margin:0;background:var(--bg);color:var(--text);font-family:Sora,sans-serif;overflow-x:hidden}img{max-width:100%;height:auto}.site-shell{position:relative;min-height:100vh;overflow-x:clip;background:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px),var(--bg);background-size:64px 64px,64px 64px,auto}.site-moon-toggle{position:fixed;top:1rem;left:50%;transform:translate(-50%);z-index:30;width:2.45rem;height:2.45rem;border-radius:9999px;border:1px solid rgba(120,173,255,.8);background:#070b13eb;color:#d7e7ff;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;box-shadow:0 8px 24px #0006,0 0 0 1px #4e8cff33;transition:transform .2s ease,opacity .2s ease,border-color .2s ease,color .2s ease,background-color .2s ease}.site-moon-toggle svg{width:1.05rem;height:1.05rem;fill:currentColor}.site-moon-toggle:hover,.site-moon-toggle:focus-visible{transform:translate(-50%) translateY(-1px);border-color:#97c2fff2;color:#fff;background:#0a0f18fa}.site-moon-toggle.is-hidden{opacity:0;pointer-events:none;transform:translate(-50%) translateY(-12px)}.maintenance-shell{position:relative;min-height:100vh;overflow:hidden;display:grid;place-items:center;padding:1.5rem;background:linear-gradient(var(--maintenance-grid) 1px,transparent 1px),linear-gradient(90deg,var(--maintenance-grid) 1px,transparent 1px),radial-gradient(circle at 20% 20%,var(--maintenance-radial-left),transparent 45%),radial-gradient(circle at 80% 25%,var(--maintenance-radial-right),transparent 50%),var(--maintenance-bg);background-size:64px 64px,64px 64px,auto,auto,auto}.maintenance-shell-light{--maintenance-bg: #f8fbff;--maintenance-grid: rgba(37, 99, 235, .24);--maintenance-radial-left: rgba(37, 99, 235, .12);--maintenance-radial-right: rgba(56, 189, 248, .14)}.maintenance-shell-dark{--maintenance-bg: #0a0c10;--maintenance-grid: rgba(78, 140, 255, .2);--maintenance-radial-left: rgba(255, 108, 47, .08);--maintenance-radial-right: rgba(78, 140, 255, .12)}.maintenance-theme-toggle{position:absolute;top:1rem;right:1rem;z-index:2;width:2.6rem;height:2.6rem;border-radius:9999px;border:1px solid rgba(37,99,235,.45);background:#ffffffe6;color:#1d4ed8;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease,border-color .2s ease,background-color .2s ease}.maintenance-theme-toggle svg{width:1.1rem;height:1.1rem;fill:currentColor}.maintenance-theme-toggle:hover,.maintenance-theme-toggle:focus-visible{transform:translateY(-1px);border-color:#2563ebbf;background:#fff}.maintenance-shell-dark .maintenance-theme-toggle{border-color:#4e8cff8c;background:#181c23eb;color:#8ab6ff}.maintenance-shell-dark .maintenance-theme-toggle:hover,.maintenance-shell-dark .maintenance-theme-toggle:focus-visible{border-color:#73a6ffcc;background:#1b2028}.maintenance-shell-light .maintenance-glow-left{background:#2563eb33}.maintenance-shell-light .maintenance-glow-right{background:#38bdf829}.maintenance-shell-dark .maintenance-glow-left{background:#ff6c2f33}.maintenance-shell-dark .maintenance-glow-right{background:#4e8cff2b}.maintenance-shell-light .maintenance-main{border:1px solid rgba(37,99,235,.52);box-shadow:0 28px 70px #193b8233,0 0 24px #2563eb29}.maintenance-shell-dark .maintenance-main{border:1px solid rgba(78,140,255,.48);box-shadow:0 28px 70px #00000080,0 0 24px #4e8cff29}.maintenance-shell-light .maintenance-badge{border:1px solid rgba(37,99,235,.5);background:#2563eb1f;color:#cde0ff}.maintenance-shell-dark .maintenance-badge{border:1px solid rgba(78,140,255,.5);background:#4e8cff24;color:#cde0ff}.maintenance-shell-light .maintenance-meta{color:#90a1bf}.maintenance-shell-dark .maintenance-meta{color:#8993a9}.maintenance-shell-light .maintenance-copy{color:#cfd7e7}.maintenance-shell-dark .maintenance-copy{color:#c6cbd8}.maintenance-shell-light .maintenance-main h1,.maintenance-shell-dark .maintenance-main h1{color:#fff}.maintenance-main{position:relative;z-index:1;width:min(680px,100%);border-radius:1.4rem;background:linear-gradient(160deg,#17191fed,#0e1014f2);padding:clamp(1.5rem,2.6vw,2.5rem);text-align:center}.maintenance-badge{margin:0 auto 1rem;width:-moz-fit-content;width:fit-content;border-radius:999px;padding:.44rem .78rem;font-family:JetBrains Mono,monospace;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.maintenance-main h1{margin:0;font-size:clamp(1.8rem,4.6vw,2.7rem);line-height:1.15}.maintenance-copy{margin:1rem 0 0;font-size:clamp(.95rem,2.2vw,1.08rem);line-height:1.65}.maintenance-meta{display:inline-block;margin-top:1.35rem;font-size:.78rem}.maintenance-glow{position:absolute;width:26rem;height:26rem;border-radius:9999px;filter:blur(75px);pointer-events:none;z-index:0}.maintenance-glow-left{top:-8rem;left:-8rem}.maintenance-glow-right{right:-8rem;bottom:-8rem}.ambient{position:fixed;width:28rem;height:28rem;border-radius:9999px;filter:blur(70px);pointer-events:none;z-index:0}.ambient-left{top:-8rem;left:-8rem;background:#ff6c2f33}.ambient-right{top:8rem;right:-10rem;background:#4e8cff29}.section-stepper{position:fixed;right:calc(.5rem + 100vw - 100%);top:50%;transform:translateY(-50%);z-index:28;display:flex;flex-direction:column;align-items:center;gap:2.1rem;padding:.2rem 0}.stepper-line{position:absolute;top:.6rem;bottom:.6rem;left:50%;transform:translate(-50%);width:1px;background:linear-gradient(180deg,#ff6c2f47,#ff6c2f26)}.stepper-item{position:relative;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.stepper-node{width:.96rem;height:.96rem;border-radius:9999px;background:#232730;border:1px solid rgba(0,0,0,.35);display:inline-flex;align-items:center;justify-content:center;color:#ff6c2f;transition:all .2s ease}.stepper-item.active .stepper-node{width:2.5rem;height:2.5rem;border:2px solid #ff6c2f;background:#13161cf5;box-shadow:0 0 0 8px #ff6c2f14}.stepper-item.active .stepper-node:after{content:"";position:absolute;width:3.4rem;height:3.4rem;border-radius:9999px;border:2px dashed rgba(255,108,47,.6)}.stepper-label{position:absolute;right:3.1rem;white-space:nowrap;border:1px solid rgba(255,108,47,.45);border-radius:.65rem;background:#202228f2;color:#d6dce8;font-family:Sora,sans-serif;font-weight:600;font-size:.72rem;line-height:1;padding:.72rem 1rem;display:inline-flex;align-items:center;gap:.52rem;opacity:0;transform:translate(8px);pointer-events:none;transition:opacity .16s ease,transform .16s ease}.stepper-label b{font-weight:700;color:#ff6c2f}.stepper-item:hover .stepper-label,.stepper-item:focus-visible .stepper-label{opacity:1;transform:translate(0)}main{position:relative;z-index:1;width:min(1220px,calc(100% - 3rem));margin:0 auto;padding:4rem 0 5rem}.panel{min-height:100vh;padding:var(--section-block-pad) 0;scroll-margin-top:1.25rem;display:flex;flex-direction:column;justify-content:flex-start}.hero-panel{position:relative;display:grid;grid-template-columns:.82fr 1.18fr;gap:2.5rem;align-items:center;align-content:center;margin-top:0}.hero-scroll-blinker{position:absolute;left:50%;bottom:8.4rem;transform:translate(-50%);width:2.15rem;height:2.15rem;border-radius:9999px;border:1px solid rgba(255,108,47,.44);background:#15181fd1;color:#d2d9e7;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;box-shadow:0 8px 24px #00000059;animation:hero-arrow-blink 1.25s ease-in-out infinite;transition:border-color .2s ease,color .2s ease,background-color .2s ease}.hero-scroll-blinker:hover,.hero-scroll-blinker:focus-visible{border-color:#ff6c2fd1;color:#ff8f38;background:#181b22f2;animation-play-state:paused}@keyframes hero-arrow-blink{0%,to{opacity:.55;transform:translate(-50%) translateY(0);box-shadow:0 8px 24px #00000059}50%{opacity:1;transform:translate(-50%) translateY(4px);box-shadow:0 10px 26px #ff6c2f33}}.hero-panel>*,.about-grid>*,.projects-layout>*,.contact-workspace>*,.pinned-grid>*{min-width:0}.hero-left .capsule{width:-moz-fit-content;width:fit-content;font-family:JetBrains Mono,monospace;font-size:.82rem;color:var(--accent);border:1px solid var(--line-strong);border-radius:.4rem;padding:.45rem .8rem;margin-bottom:1.2rem}.hero-left h1{margin:0 0 1rem;font-size:clamp(2rem,4.7vw,4.4rem);line-height:1.02;font-weight:700;letter-spacing:-.02em}.hero-left h1 span{background:linear-gradient(90deg,#ff9138 8%,#f6a278 40%,#5e8eff 90%);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-left .lead{margin:0 0 1.9rem;max-width:40rem;color:#c0c6d3;font-size:clamp(1rem,1.7vw,1.28rem);line-height:1.42}.hero-left .lead:first-line{color:var(--accent);font-family:JetBrains Mono,monospace}.hero-actions{display:flex;gap:.8rem;align-items:stretch;flex-wrap:wrap}.hero-actions button,.hero-actions a,.window-buttons button,.window-buttons a,.contact-form-shell button{border:1px solid var(--line-strong);background:#16191f;color:var(--text);text-decoration:none;border-radius:.55rem;padding:.7rem 1rem;font-family:JetBrains Mono,monospace;display:inline-flex;align-items:center;gap:.5rem;cursor:pointer}.hero-actions .action-main,.window-buttons button{color:var(--accent)}.hero-actions .action-sub{border-color:#ff6c2f8c;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.hero-actions .action-sub:hover{border-color:#ff7d3ce6}.hero-actions .action-sub:active{transform:none}.panel-card{min-width:0;min-height:4.35rem;padding:.5rem .72rem;border-radius:.58rem;clip-path:polygon(0 24%,10% 0,100% 0,100% 82%,84% 100%,0 100%);display:inline-flex;align-items:center;gap:.58rem;border:1.4px solid rgba(255,108,47,.62);background:linear-gradient(180deg,#15181ff2,#0f1117f5);min-width:10.8rem;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease}.panel-card>svg{width:1.08rem;height:1.08rem;color:#d8deeb;transition:color .2s ease}.panel-card-meta{display:grid;gap:.18rem}.panel-card small{margin:0;font-family:JetBrains Mono,monospace;color:#81899c;font-size:.65rem;line-height:1;transition:color .2s ease}.panel-card p{margin:0;font-size:.9rem;line-height:1;color:#f4f7fd;font-weight:700;letter-spacing:0;transition:color .2s ease}.panel-card:hover{border-color:#d9772f;background:linear-gradient(180deg,#1e1f23f5,#16171cfa);box-shadow:0 8px 18px #00000059}.panel-card:hover>svg,.panel-card:hover p{color:#ff9a2f}.panel-card:hover small{color:#9ea6ba}.module-tags{margin-top:1.4rem;display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;overflow:visible;white-space:normal;scrollbar-width:none}.module-tags::-webkit-scrollbar{display:none}.module-label{font-family:JetBrains Mono,monospace;font-size:.78rem;color:#7f8798;margin-right:.25rem;margin-top:0;margin-bottom:0;padding:0;border:0;background:transparent;border-radius:0;line-height:1;flex:0 0 auto}.module-tags span:not(.module-label),.chip-row span{font-family:JetBrains Mono,monospace;font-size:.78rem;border:1px solid rgba(255,108,47,.32);color:#f0a267;padding:.34rem .6rem;border-radius:.35rem;background:#ff6c2f05;transition:color .18s ease,border-color .18s ease,background-color .18s ease;flex:0 0 auto}.module-tags span:not(.module-label):hover{color:#ff9a2f;border-color:#ff8c36bf;background:#ff8c361a}.hero-code-window,.terminal-card,.timeline-card{background:linear-gradient(180deg,#14161bf0,#0e1014f2);border:1px solid rgba(255,108,47,.35);border-radius:1rem;box-shadow:0 25px 80px #00000080,0 0 28px #ff6c2f1c}.hero-code-window{width:min(100%,576px);height:442px;justify-self:end;display:flex;flex-direction:column;overflow:hidden}.window-head,.terminal-card header{height:2.85rem;border-bottom:1px solid rgba(255,108,47,.18);display:flex;align-items:center;justify-content:space-between;padding:0 1rem;font-family:JetBrains Mono,monospace;color:var(--muted);font-size:.88rem}.dots{display:flex;gap:.35rem}.dots span{width:.75rem;height:.75rem;border-radius:9999px}.dots span:nth-child(1){background:#e84545}.dots span:nth-child(2){background:#d6a214}.dots span:nth-child(3){background:#2fca62}.hero-code-window pre,.contact-json pre{margin:0;padding:.9rem 1.2rem .5rem;font-family:JetBrains Mono,monospace;font-size:clamp(.8rem,.98vw,1rem);line-height:1.5;color:#d6dbeb;flex:1;overflow:hidden}.code-view{display:grid;gap:.08rem}.code-line{display:grid;grid-template-columns:2ch minmax(0,1fr);gap:.9rem;align-items:baseline;opacity:0;animation:code-line-in .14s linear forwards}.code-line i{font-style:normal;color:#515867}.code-text{display:block;overflow:hidden;white-space:pre;max-width:0;position:relative;animation:code-type .1s steps(30,end) forwards;animation-delay:inherit}.code-text:after{content:"";display:inline-block;width:.12ch;height:1.02em;margin-left:.08ch;vertical-align:-.12em;background:#dbe3f2;border-radius:1px;opacity:0;animation:caret-type-only .1s steps(1,end) forwards;animation-delay:inherit}.code-line b{font-weight:500}.token-comment{color:#b9c0cf}.token-keyword{color:#b87bff}.token-name{color:#f63}.token-string{color:#21db8f}.token-fn{color:#f0cf3f}.token-bracket{color:#52a8ff}.token-tag{color:#d8dee9}.token-prop{color:#ff6f3f}.token-name-strong{font-weight:800;color:#2bf0a6}@keyframes code-line-in{0%{opacity:0}to{opacity:1}}@keyframes code-type{0%{max-width:0}to{max-width:1200px}}@keyframes caret-type-only{0%{opacity:1}30%{opacity:.2}60%{opacity:1}85%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion: reduce){.code-line{animation:none;opacity:1}.code-text{animation:none;max-width:none}.code-text:after{display:none;animation:none}}.window-buttons{display:flex;gap:.8rem;padding:0 1.2rem .85rem}.window-buttons button,.window-buttons a{min-height:2.45rem;padding:.6rem .95rem;border-radius:.55rem;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,color .2s ease}.window-buttons .run-profile-btn:hover{transform:translateY(-2px);border-color:#ff6c2ff2;box-shadow:0 0 0 1px #ff6c2f40,0 10px 20px #ff6c2f2e}.window-buttons a[href="#projects"]:hover{transform:translateY(-2px);border-color:#93a2bdb3;box-shadow:0 10px 18px #5d709126}.window-buttons a:active{transform:translateY(0)}.scroll-hint{position:fixed;left:50%;bottom:1.25rem;transform:translate(-50%);color:#c6cce0;opacity:.82;z-index:25;display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem}.section-title{margin:0 0 1.35rem;font-size:clamp(1.7rem,3vw,2.7rem);font-weight:760;letter-spacing:.01em;line-height:1;display:inline-flex;align-items:center;gap:.75rem;font-family:Sora,sans-serif;color:#dbe0ec}.section-title svg{color:var(--accent);width:.82em;height:.82em}.about-prefix{color:#ff6c2f;font-family:JetBrains Mono,monospace;font-size:.82em;font-weight:700;letter-spacing:0;display:inline-block;transform:translateY(1px)}.about-grid{display:grid;grid-template-columns:1.08fr 1fr;gap:1rem;margin-top:.95rem}.about-panel{padding-top:var(--section-block-pad);padding-bottom:var(--section-block-pad)}.profile-card{padding:1.2rem;grid-row:span 2}.avatar-wrap{width:10.2rem;height:10.2rem;margin:0 auto 1.4rem;border-radius:9999px;border:2px solid rgba(255,108,47,.55);padding:.45rem;position:relative;box-shadow:0 0 0 8px #1d222ea6}.avatar-wrap img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center 24%;object-position:center 24%;border-radius:9999px;filter:grayscale(1);transform:scale(1);transition:filter .22s ease,transform .22s ease}.avatar-wrap:hover img,.avatar-wrap:focus-within img{filter:grayscale(0);transform:scale(1.03)}.avatar-wrap:before{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px;border-radius:9999px;border:2px solid transparent;border-top-color:#487afff2;border-bottom-color:#487afff2}.avatar-wrap:after{content:"";position:absolute;right:2px;bottom:6px;width:.92rem;height:.92rem;border-radius:9999px;background:#12ce71;border:2px solid #1f252f}.profile-card dl{margin:0;display:grid;gap:.9rem}.profile-card dl div{border-top:1px solid rgba(136,144,162,.22);padding-top:.7rem;display:flex;align-items:center;justify-content:space-between;gap:.8rem}.profile-card dt{font-family:JetBrains Mono,monospace;color:#7f8798;font-size:.86rem}.profile-card dd{margin:0;text-align:right;font-family:JetBrains Mono,monospace}.profile-operator{color:#ff6c2f;font-weight:700}.profile-role{color:#4f9cff}.status-pill{font-size:.75rem;color:#69e5a1;border:1px solid rgba(31,211,114,.45);background:#17482d99;border-radius:.35rem;padding:.22rem .5rem}.log-card{padding-bottom:1.1rem}.log-card p{margin:0;padding:1rem 1.2rem 0;line-height:1.7;color:#bac2d5;border-left:2px solid rgba(137,146,165,.25)}.log-card span{display:block;color:#8f72ff;font-family:JetBrains Mono,monospace;margin-bottom:.5rem}.education-card{grid-column:1 / -1;overflow:hidden;border-radius:.85rem}.education-list{padding:.2rem 1.2rem .7rem;display:grid;gap:0}.education-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:start;padding:.9rem 0;border-bottom:1px solid rgba(136,144,162,.16)}.education-item:last-child{border-bottom:0;padding-bottom:.5rem}.education-item h3{margin:0;color:#e7edf9;font-size:1.02rem;font-weight:700;letter-spacing:.01em}.education-item p{margin:.35rem 0 0;color:#b8c2d8;font-size:.92rem;font-style:italic;font-family:Sora,sans-serif}.education-item aside{text-align:right;display:grid;gap:.28rem;justify-items:end;font-family:JetBrains Mono,monospace}.education-item aside b{color:#d4def1;font-size:.9rem;font-weight:700}.education-item aside small{color:#9aabc9;font-size:.82rem;font-style:italic}.stat-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem}.mini-stat{padding:.95rem;border:1px solid rgba(255,255,255,.08);border-radius:.7rem;background:#181a1ef5;min-height:7.6rem;display:flex;flex-direction:column;transition:border-color .2s ease,box-shadow .2s ease}.mini-stat h3{margin:0;color:#8992a5;font-family:JetBrains Mono,monospace;font-size:.88rem;display:inline-flex;align-items:center;gap:.38rem}.mini-stat h3 svg{color:#8992a5}.mini-stat.mini-exp h3 svg{color:#ff8d2f!important}.mini-stat.mini-proj h3 svg{color:#58a2ff!important}.mini-stat.mini-caf h3 svg{color:#ff9a30!important}.mini-stat p{margin:.85rem 0 0;display:inline-flex;align-items:baseline;gap:.55rem;white-space:nowrap}.mini-stat .stat-primary{color:#eef2fb;font-size:2.25rem;font-weight:800;line-height:1;transition:color .2s ease}.mini-stat .stat-secondary{color:#5d6780;font-size:1.15rem;font-weight:700;line-height:1}.mini-stat.mini-exp:hover{border-color:#ff6c2f9e;box-shadow:0 0 0 1px #ff6c2f26}.mini-stat.mini-exp:hover .stat-primary{color:#ff8d2f}.mini-stat.mini-proj:hover{border-color:#4e8cff9e;box-shadow:0 0 0 1px #4e8cff26}.mini-stat.mini-proj:hover .stat-primary{color:#58a2ff}.mini-stat.mini-caf:hover{border-color:#ff92349e;box-shadow:0 0 0 1px #ff923426}.mini-stat.mini-caf:hover .stat-primary{color:#ff9a30}.skills-orbit-wrap{position:relative;height:620px;width:min(100%,880px);border-radius:1.2rem;max-width:880px;margin:.35rem auto 0;padding:0;overflow:visible;border:none;background:transparent;box-shadow:none}.skills-globe-stage{position:relative;width:100%;height:100%;border-radius:1rem;contain:layout paint;touch-action:none;cursor:grab;border:none;background:transparent;box-shadow:none}.skills-globe-stage:active{cursor:grabbing}.skills-wire-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.skills-wire-canvas canvas{filter:contrast(1.06) saturate(1.04) drop-shadow(0 0 18px rgba(255,132,72,.18)) drop-shadow(0 10px 28px rgba(0,0,0,.52));will-change:transform}.skills-globe-stage--perf .skills-wire-canvas canvas{filter:contrast(1.03) saturate(1.02)}.orbit-node{position:absolute;left:0;top:0;transform:translateZ(0) translate(-50%,-50%);text-align:center;min-width:3.5rem;z-index:2;pointer-events:auto;transition:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;contain:layout paint;will-change:transform,opacity;--pop: 0;--front: 0}.orbit-node:before{content:"";position:absolute;left:50%;top:40%;width:3.2rem;height:3.2rem;transform:translate(-50%,-50%) scale(calc(.78 + var(--pop, 0) * .5));border-radius:9999px;background:radial-gradient(circle,var(--globe-aura-soft) 0%,var(--globe-aura-mid) 42%,var(--globe-aura-clear) 72%);opacity:calc(.12 + var(--front, 0) * .18 + var(--pop, 0) * .5);pointer-events:none}.orbit-node b{display:inline-flex;width:3.5rem;height:3.5rem;align-items:center;justify-content:center;border:none;background:transparent;box-shadow:none;position:relative;border-radius:0;transform:translateZ(0) scale(calc(.9 + var(--front, 0) * .14))}.orbit-node b:after{content:"";position:absolute;left:50%;top:50%;width:140%;height:140%;transform:translate(-50%,-50%);border-radius:9999px;background:radial-gradient(circle,var(--orbit-accent-glow) 0%,var(--globe-aura-mid) 46%,var(--globe-aura-clear) 74%);filter:blur(8px);opacity:0;transition:opacity .18s ease;pointer-events:none}.orbit-node b img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 8px 18px rgba(8,10,16,.5)) drop-shadow(0 0 18px var(--orbit-icon-glow));transition:filter .18s ease,transform .18s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.orbit-node b img[alt="Next.js"],.orbit-node b img[alt=Notion],.orbit-node b img[alt="VS Code"]{filter:none;background:#eff3fb;border-radius:.35rem;padding:.3rem;box-sizing:border-box}.orbit-node span{margin-top:.17rem;display:block;font-family:JetBrains Mono,monospace;font-size:.72rem;font-weight:700;color:#c8cedd;text-shadow:0 2px 12px rgba(0,0,0,.35);transition:color .18s ease,text-shadow .18s ease;opacity:var(--label-opacity, 1)}.orbit-node--ghost span{color:#7f8898}.orbit-node--accent b img{filter:drop-shadow(0 0 18px var(--orbit-accent-glow)) drop-shadow(0 5px 14px rgba(8,10,16,.48))}.orbit-node--accent span{color:#c8cedd;text-shadow:0 2px 12px rgba(0,0,0,.35)}.orbit-node:hover b img{transform:scale(1.16);filter:drop-shadow(0 0 22px var(--orbit-hover-glow)) drop-shadow(0 5px 14px rgba(8,10,16,.42))}.orbit-node:hover b:after{opacity:1}.orbit-node:hover span{color:var(--orbit-hover-label);font-weight:800;text-shadow:0 0 20px var(--orbit-hover-shadow)}.orbit-node-live{opacity:0}.skills-title{align-self:flex-start}.skills-title svg{color:#ff6c2f}.orbit-help{width:-moz-fit-content;width:fit-content;margin:.32rem auto 0;border:1px solid rgba(255,255,255,.12);background:#ffffff0f;border-radius:99rem;padding:.5rem 1rem;display:flex;gap:.45rem;align-items:center;font-family:JetBrains Mono,monospace;color:#cdd3e0}.skills-panel{min-height:auto;padding-top:var(--section-block-pad);padding-bottom:var(--section-block-pad);align-items:center}.timeline{position:relative;display:grid;gap:3rem}.timeline:before{content:"";position:absolute;left:50%;transform:translate(-50%);top:0;bottom:0;width:2px;background:linear-gradient(180deg,#ff6c2f00,#ff6c2f5c 10%,#ff6c2f5c 90%,#ff6c2f00)}.timeline-row{--timeline-lane: 128px;position:relative;display:grid;grid-template-columns:minmax(0,1fr) var(--timeline-lane) minmax(0,1fr);align-items:stretch}.timeline-row.left .timeline-card{grid-column:1;justify-self:end}.timeline-row.right .timeline-card{grid-column:3;justify-self:start}.timeline-row.left .timeline-meta,.timeline-row.right .timeline-meta{grid-column:2}.timeline-meta{position:relative;z-index:2;width:100%;min-height:100%;align-self:stretch;pointer-events:none}.timeline-row.left .timeline-meta:before,.timeline-row.right .timeline-meta:before{content:"";position:absolute;top:50%;height:1px;transform:translateY(-50%);background:#ff6c2f6b}.timeline-row.left .timeline-meta:before{left:0;width:calc(50% - .9rem)}.timeline-row.right .timeline-meta:before{right:0;width:calc(50% - .9rem)}.timeline-node{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:1.22rem;height:1.22rem;border-radius:9999px;border:2px solid rgba(245,247,255,.95);background:#ff6530;box-shadow:0 0 0 4px #ff653038}.date-pill{position:absolute;top:50%;transform:translateY(-50%);width:-moz-fit-content;width:fit-content;border:1px solid rgba(255,108,47,.45);padding:.35rem .85rem;border-radius:99rem;display:inline-flex;gap:.42rem;align-items:center;font-family:JetBrains Mono,monospace;font-size:.8rem;color:#a7afbf;background:#0f1116d9;white-space:nowrap}.timeline-row.left .date-pill{left:calc(50% + .9rem);margin-left:0}.timeline-row.right .date-pill{right:calc(50% + .9rem);margin-right:0}.timeline-row.middle-row .timeline-meta:before,.timeline-row.middle-row .timeline-node,.timeline-row.middle-row .date-pill{top:calc(50% - 120px)}.timeline-row .timeline-card{align-self:center}.timeline-card{position:relative;width:min(100%,470px);border-radius:1rem;overflow:hidden;border:1px solid var(--card-blue-border);background:var(--card-blue-bg);box-shadow:var(--card-blue-shadow);transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease}.timeline-card:hover{border-color:#ff6c2f99;box-shadow:0 24px 48px #00000059,0 0 0 1px #ff6c2f29}.timeline-card-head{min-height:3rem;padding:.65rem 1rem;border-bottom:1px solid rgba(136,144,162,.16);background:#ffffff05;display:flex;align-items:center;justify-content:space-between;gap:.8rem}.timeline-card-head-left{display:inline-flex;align-items:center;gap:.62rem}.timeline-card-head-left b{margin:0;font-family:JetBrains Mono,monospace;color:#f5c432;font-size:.84rem;font-weight:700}.timeline-card-head-left span{font-family:JetBrains Mono,monospace;color:#4d9fff;border:1px solid rgba(67,144,255,.52);border-radius:.45rem;padding:.32rem .62rem;font-size:.72rem;line-height:1}.timeline-card-head p{margin:0;font-family:JetBrains Mono,monospace;color:#69728a;font-size:.78rem}.timeline-card-body{padding:1.15rem 1rem .95rem}.timeline-card-body h3{margin:0 0 .82rem;color:#f2f5fa;font-size:1.02rem;letter-spacing:0;line-height:1.2;transition:color .22s ease}.timeline-card:hover .timeline-card-body h3{color:#ff972f}.timeline-card-body h3 span{color:#7c859a;font-weight:500}.body-copy{color:#afb6c7;line-height:1.55;font-size:.76rem;font-family:JetBrains Mono,monospace;border-left:2px solid rgba(255,108,47,.38);padding-left:.75rem;margin:0 0 .95rem}.timeline-card footer{margin-top:0;padding:.72rem 1rem;border-top:1px solid rgba(136,144,162,.17);display:flex;gap:.7rem;align-items:center;font-family:JetBrains Mono,monospace;background:#0000001f}.timeline-card footer span{color:#7c869a;display:inline-flex;align-items:center;gap:.32rem;font-size:.7rem}.timeline-card footer b{color:#2fd875;font-weight:600;font-size:.7rem}.timeline-card footer i{color:#e55353;font-style:normal;font-size:.7rem}.project-card footer{margin-top:.85rem;padding-top:.7rem;border-top:1px solid rgba(136,144,162,.2);display:flex;gap:.8rem;align-items:center;font-family:JetBrains Mono,monospace}.project-card footer small{color:#8a92a5}.timeline-card .chip-row{display:flex;flex-wrap:wrap;gap:.44rem}.timeline-card .chip-row span{font-size:.68rem;padding:.32rem .62rem;border-radius:.4rem;background:#ff6c2f0d;border:1px solid rgba(255,108,47,.33);color:#e48847}.timeline-end-pill{margin:2.2rem auto 0;width:-moz-fit-content;width:fit-content;border-radius:999px;border:1px solid rgba(136,144,162,.14);background:#101319e0;color:#aab2c1;font-family:JetBrains Mono,monospace;font-size:.72rem;letter-spacing:.01em;padding:.62rem 1.35rem;display:inline-flex;align-items:center;gap:.55rem}.timeline-end-pill svg{color:#9ea6b6}.projects-panel{padding-top:var(--section-block-pad)}.projects-title{font-family:JetBrains Mono,monospace;font-size:clamp(2rem,3vw,3.05rem);margin-bottom:2.1rem}.projects-layout{width:min(100%,1152px);margin:0 auto;display:grid;grid-template-columns:373px minmax(0,1fr);gap:2rem;align-items:start}.repo-pane{width:373px;height:549px;padding:0;overflow:hidden;border-radius:.85rem;border-color:#4c58704d}.repo-pane-head{height:3.8rem;border-bottom:1px solid rgba(136,144,162,.14);display:flex;align-items:center;justify-content:space-between;padding:0 1rem;background:#ffffff05}.repo-pane-head p{margin:0;display:inline-flex;align-items:center;gap:.55rem;font-size:.78rem;color:#d7dde9;font-weight:700}.repo-pane-head span{min-width:2rem;height:2rem;padding:0 .5rem;border-radius:99rem;border:1px solid rgba(136,144,162,.16);color:#8c95a8;font-size:.74rem;font-family:JetBrains Mono,monospace;display:inline-flex;align-items:center;justify-content:center}.repo-pane-scroll{height:calc(549px - 3.8rem);overflow-y:auto}.repo-pane-scroll::-webkit-scrollbar{width:8px}.repo-pane-scroll::-webkit-scrollbar-thumb{background:#4e586c94;border-radius:99rem}.repo-state{margin:0;padding:1rem;color:#9ba5bb;font-family:JetBrains Mono,monospace}.repo-row-live{text-decoration:none;color:inherit;padding:.92rem 1rem;border-bottom:1px solid rgba(84,96,122,.18);display:flex;align-items:flex-start;justify-content:space-between;gap:.9rem}.repo-row-main{min-width:0}.repo-row-main p{margin:0;color:#57a8ff;font-size:.86rem;font-weight:700;line-height:1.25;word-break:break-word}.repo-row-meta{margin-top:.5rem;display:flex;align-items:center;flex-wrap:wrap;gap:.55rem}.repo-row-meta small{color:#7e889f;font-size:.72rem}.repo-badge{border:1px solid rgba(136,144,162,.2);color:#7f889d;font-size:.7rem;border-radius:999px;padding:.32rem .72rem;white-space:nowrap}.repo-language{display:inline-flex;align-items:center;gap:.42rem;color:#7e889f;font-size:.72rem}.repo-language i{width:.72rem;height:.72rem;border-radius:99rem;display:inline-block}.pinned-pane{min-width:0}.pinned-heading{margin:0 0 .8rem;color:#8d96aa;letter-spacing:.12em;font-weight:700;font-size:.78rem}.pinned-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:start}.live-project-card{position:relative;min-height:260px;padding:1rem;border-color:var(--card-blue-border);background:var(--card-blue-bg);box-shadow:var(--card-blue-shadow);border-radius:.85rem;display:flex;flex-direction:column}.live-corner-dot{position:absolute;top:.62rem;right:.62rem;width:.92rem;height:.92rem;border-radius:999px;background:#6f7f9b;border:0;box-shadow:0 0 0 3px #6f7f9b29;opacity:0;transform:scale(.85);pointer-events:none;transition:opacity .18s ease,transform .18s ease,background-color .18s ease}.live-project-card:hover .live-corner-dot,.live-project-card:focus-within .live-corner-dot{opacity:1;transform:scale(1);pointer-events:auto}.live-corner-dot:hover,.live-corner-dot:focus-visible{background:#8094b7}.live-project-head{border:0;padding:0;margin:0;height:auto;display:flex;align-items:flex-start;justify-content:space-between;gap:.7rem}.live-project-head p{margin:0;display:inline-flex;align-items:center;gap:.5rem;min-width:0;flex:1;padding-right:.45rem}.live-project-head a{display:block;min-width:0;max-width:100%;color:#56a7ff;text-decoration:none;font-size:.86rem;font-weight:700;line-height:1.14;overflow-wrap:anywhere;word-break:break-word}.live-project-head span{font-size:.66rem;color:#868ea0;border:1px solid rgba(136,144,162,.35);border-radius:99rem;padding:.22rem .5rem;white-space:nowrap;flex-shrink:0;align-self:flex-start}.live-project-description{margin:.95rem 0 0;color:#98a1b5;line-height:1.52;font-size:.74rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:3.6em}.live-chip-row{margin-top:.72rem;display:flex;flex-wrap:wrap;gap:.54rem .48rem}.live-chip-row span{font-size:.68rem;padding:.3rem .62rem;border-radius:.52rem}.live-project-foot{margin-top:auto;padding-top:.9rem;border-top:1px solid rgba(76,88,112,.26);display:flex;align-items:center;justify-content:space-between;gap:.75rem}.live-project-stats{display:inline-flex;align-items:center;gap:.9rem;flex-wrap:wrap}.live-project-stats span{display:inline-flex;align-items:center;gap:.3rem;color:#7e889f;font-size:.7rem}.live-demo-btn{text-decoration:none;color:#b0b8c9;border:1px solid rgba(136,144,162,.28);background:#ffffff0a;border-radius:.5rem;font-family:JetBrains Mono,monospace;font-size:.68rem;padding:.42rem .7rem;display:inline-flex;align-items:center;gap:.32rem;white-space:nowrap;transition:color .18s ease,border-color .18s ease,background-color .18s ease,box-shadow .18s ease}.live-demo-btn:hover,.live-demo-btn:focus-visible{color:#ff982f;border-color:#ff6c2fbf;background:#ff6c2f1f;box-shadow:0 0 0 1px #ff6c2f33}.view-all-repos{margin-top:1rem;color:#c8d0e0;text-decoration:none;font-weight:700;font-size:.84rem;display:inline-flex;align-items:center;gap:.45rem}.contact-panel{padding-top:var(--section-block-pad)}.contact-title{font-family:JetBrains Mono,monospace;font-size:clamp(2rem,3vw,3.05rem);margin-bottom:2.2rem}.contact-workspace{width:min(100%,1248px);margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem;align-items:start}.contact-json-panel,.contact-script-panel{border-color:var(--card-blue-border);border-radius:.85rem;overflow:hidden;box-shadow:var(--card-blue-shadow);background:var(--card-blue-bg);transition:border-color .2s ease,box-shadow .2s ease}.contact-json-panel{min-height:387px}.contact-script-panel{min-height:473px}.contact-json-panel:hover,.contact-json-panel:focus-within{border-color:#ff6c2f99;box-shadow:0 24px 48px #00000059,0 0 0 1px #ff6c2f29}.contact-script-panel:hover,.contact-script-panel:focus-within{border-color:#ff6c2f99;box-shadow:0 24px 48px #00000059,0 0 0 1px #ff6c2f29}.contact-script-panel:hover .contact-script-tabs,.contact-script-panel:focus-within .contact-script-tabs{border-bottom-color:#ff6c2f42}.contact-script-panel:hover .contact-script-tabs span,.contact-script-panel:focus-within .contact-script-tabs span{border-left-color:#ff6c2f59;border-right-color:#ff6c2f59;box-shadow:inset 0 0 0 1px #ff6c2f0f}.contact-json-head{height:3rem;border-bottom:1px solid rgba(80,92,118,.2);padding:0 1rem;display:flex;align-items:center;justify-content:space-between;background:#ffffff05}.contact-window-dots{display:inline-flex;align-items:center;gap:.6rem}.contact-window-dots span{width:1rem;height:1rem;border-radius:999px}.contact-window-dots span:nth-child(1){background:#f24545}.contact-window-dots span:nth-child(2){background:#d9ab20}.contact-window-dots span:nth-child(3){background:#28ca67}.contact-json-head p{margin:0;display:inline-flex;align-items:center;gap:.44rem;color:#9aa3b7;font-size:.94rem;font-family:JetBrains Mono,monospace}.contact-json-head p svg{color:#5aa7ff}.contact-json-code{margin:0;padding:1.15rem 1rem 1rem;min-height:324px;font-family:JetBrains Mono,monospace;font-size:.86rem;line-height:1.46;color:#c6cdde;display:grid;gap:.28rem}.contact-json-line{display:grid;grid-template-columns:1.5rem minmax(0,1fr);gap:.75rem}.contact-json-line i{font-style:normal;color:#4f607f;text-align:right}.contact-json-line b{font-weight:500;white-space:pre-wrap}.contact-json-line:nth-child(1) b,.contact-json-line:nth-child(10) b{color:#f2d05a}.contact-json-line:nth-child(2) b,.contact-json-line:nth-child(3) b,.contact-json-line:nth-child(4) b,.contact-json-line:nth-child(5) b,.contact-json-line:nth-child(6) b,.contact-json-line:nth-child(7) b,.contact-json-line:nth-child(8) b,.contact-json-line:nth-child(9) b{color:#ff8f57}.contact-json-line:nth-child(12) b{color:#6f7892;font-style:italic}.contact-json-caret{margin-left:2.27rem;color:#ff6c2f;font-weight:700}.contact-script-tabs{height:3.5rem;border-bottom:1px solid rgba(80,92,118,.2);background:#ffffff05;display:flex;align-items:flex-end;padding:0 .8rem}.contact-script-tabs span{min-height:2.5rem;border-top:2px solid #ff6c2f;border-left:1px solid rgba(80,92,118,.25);border-right:1px solid rgba(80,92,118,.25);border-radius:.42rem .42rem 0 0;padding:.5rem .8rem;display:inline-flex;align-items:center;gap:.52rem;color:#b8c0d2;font-family:JetBrains Mono,monospace;font-size:.92rem}.contact-script-tabs span b{font-weight:500}.contact-script-tabs span i{font-style:normal;color:#9da6ba}.contact-script-form{padding:1.15rem 1rem 1rem;display:grid;gap:.64rem;font-family:JetBrains Mono,monospace;color:#c6cdde}.script-comment{margin:0;color:#69738c;font-size:.86rem;font-style:italic}.script-line{margin:0;color:#ffad62;font-size:.89rem}.script-line em{font-style:normal;color:#c78cff}.script-indent{padding-left:1.55rem}.script-input-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.5rem;color:#c78cff;font-size:.86rem}.script-input-row input{border:0;border-bottom:1px solid rgba(88,130,214,.45);background:transparent;color:#d7dff0;font-size:.86rem;padding:.24rem 0;outline:none;font-family:JetBrains Mono,monospace;min-width:0}.script-input-row strong{color:#ff8f57;font-weight:600}.script-textarea-row{display:grid;gap:.4rem;color:#ff8f57;font-size:.86rem}.script-textarea-row textarea{border:0;border-left:2px solid rgba(88,130,214,.5);background:transparent;color:#d7dff0;font-size:.88rem;line-height:1.42;padding:.5rem .75rem;resize:none;outline:none;font-family:JetBrains Mono,monospace;min-width:0}.contact-script-form button{margin-top:.6rem;width:-moz-fit-content;width:fit-content;border:1px solid rgba(42,210,110,.45);background:#18a85433;color:#1fe179;border-radius:.42rem;font-family:JetBrains Mono,monospace;font-weight:700;padding:.6rem .95rem;display:inline-flex;align-items:center;gap:.46rem;cursor:pointer}.contact-script-form button:disabled{opacity:.75;cursor:progress}.script-send-status{margin:.35rem 0 0;font-family:JetBrains Mono,monospace;font-size:.74rem;color:#a8b4ca}.script-send-status.is-success{color:#42df8a}.script-send-status.is-error{color:#ff8e8e}.contact-footer-shell{margin-top:2.4rem;text-align:center}.contact-footer-title{margin:0;font-family:JetBrains Mono,monospace;font-size:clamp(1.95rem,3vw,2.5rem);font-weight:700;color:#dde3ee;display:inline-flex;align-items:center;gap:.6rem}.contact-footer-title span{color:#ff6c2f}.contact-footer-shell small{display:block;margin-top:.54rem;color:#a0a8ba;font-family:JetBrains Mono,monospace;font-size:.84rem}@keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg)}}@media (max-width: 1100px){.hero-panel,.about-grid,.projects-layout,.contact-workspace{grid-template-columns:1fr}.hero-panel{align-items:start;align-content:start}.stat-row,.pinned-grid{grid-template-columns:1fr}.repo-pane-scroll{max-height:28rem;height:28rem}.projects-title{margin-bottom:1.5rem}.projects-layout{width:100%;grid-template-columns:1fr;gap:1rem}.contact-workspace{width:100%}.contact-json-panel,.contact-script-panel{min-height:auto}.contact-footer-shell{margin-top:1.8rem}.repo-pane{width:100%;height:auto}.education-item{grid-template-columns:1fr;gap:.45rem}.education-item aside{text-align:left;justify-items:start}.timeline:before{left:.85rem;transform:none}.timeline-row{grid-template-columns:1fr;--timeline-lane: 0px;padding-left:2.4rem;gap:.95rem;align-items:stretch}.timeline-row.left .timeline-card,.timeline-row.right .timeline-card{grid-column:1;justify-self:stretch;width:100%;max-width:560px}.timeline-row.left .timeline-meta,.timeline-row.right .timeline-meta{position:absolute;left:.85rem;top:0;bottom:0;width:0}.timeline-row.left .timeline-meta:before,.timeline-row.right .timeline-meta:before{display:none}.timeline-node{left:0;top:50%;transform:translate(-50%,-50%)}.date-pill{font-size:.76rem;padding:.28rem .52rem}.timeline-row.left .date-pill,.timeline-row.right .date-pill{position:absolute;left:1.2rem;right:auto;top:50%;transform:translateY(-50%);margin:0;writing-mode:initial}.timeline-row.middle-row .timeline-meta:before,.timeline-row.middle-row .timeline-node,.timeline-row.middle-row .date-pill{top:50%}}@media (max-width: 700px){main{width:min(640px,calc(100% - 1rem));padding-top:1.15rem}.panel{min-height:auto;padding:2.8rem 0;scroll-margin-top:.8rem}.site-moon-toggle{top:.6rem;width:2.2rem;height:2.2rem;border-width:1px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.site-moon-toggle svg{width:.95rem;height:.95rem}.hero-left h1{font-size:clamp(2rem,10vw,2.6rem);line-height:1.04;letter-spacing:-.015em}.hero-scroll-blinker{bottom:5.2rem;width:2rem;height:2rem}.hero-left .lead{margin-bottom:1.3rem;font-size:.98rem;line-height:1.42;max-width:none}.hero-actions{width:100%;display:grid;gap:.62rem}.window-buttons{flex-direction:column}.hero-code-window{min-height:360px;width:100%;justify-self:stretch}.panel-card{width:100%;min-height:4rem;justify-content:flex-start;clip-path:none;border-radius:.72rem;padding:.66rem .86rem;gap:.72rem}.panel-card-meta{gap:.24rem}.panel-card p{font-size:1.04rem;letter-spacing:.01em}.panel-card small{font-size:.66rem}.section-title{font-size:1.7rem;line-height:1.15;flex-wrap:wrap;gap:.5rem}.timeline{gap:2rem}.projects-title{font-size:1.85rem}.projects-layout{gap:.9rem}.contact-title{font-size:1.85rem;margin-bottom:1.2rem}.contact-workspace{gap:.72rem}.contact-json-head,.contact-script-tabs{height:2.9rem}.contact-window-dots span{width:.72rem;height:.72rem}.contact-json-head p,.contact-script-tabs span{font-size:.78rem}.contact-json-code,.contact-script-form,.script-input-row,.script-input-row input,.script-textarea-row,.script-textarea-row textarea,.script-line,.script-comment{font-size:.76rem}.contact-json-code{min-height:282px;padding:.86rem .78rem}.contact-script-form{padding:.86rem .78rem}.contact-script-form button{width:100%;justify-content:center;font-size:.76rem;padding:.56rem .9rem}.contact-footer-title{font-size:1.38rem;gap:.44rem}.contact-footer-shell small{font-size:.72rem;margin-top:.4rem}.repo-pane-head{height:3.3rem;padding:0 .82rem}.repo-pane-head p{font-size:.88rem}.repo-pane-scroll{max-height:24rem;height:24rem}.repo-row-live{padding:.84rem .82rem}.repo-row-main p{font-size:.95rem}.repo-row-live{align-items:stretch}.live-project-head{flex-wrap:wrap}.mini-stat p{white-space:normal;flex-wrap:wrap;gap:.32rem}.repo-row-meta small,.repo-language{font-size:.76rem}.pinned-heading{font-size:.84rem;margin-bottom:.72rem;letter-spacing:.09em}.live-project-card{padding:.8rem}.live-project-head a{font-size:1.08rem}.live-project-description{font-size:.98rem;margin-top:.72rem}.live-chip-row span{font-size:.72rem;padding:.28rem .52rem}.live-project-foot{margin-top:.82rem;padding-top:.74rem}.live-project-stats span,.live-demo-btn{font-size:.72rem}.view-all-repos{font-size:.84rem;margin-top:.8rem}.timeline-row{padding-left:2rem}.timeline-end-pill{margin-top:1.5rem;margin-left:2rem;margin-right:auto;font-size:.66rem;padding:.54rem 1rem}.timeline-row.left .timeline-meta,.timeline-row.right .timeline-meta{left:.7rem;width:0}.timeline-row.left .date-pill,.timeline-row.right .date-pill{left:1.05rem;top:50%;font-size:.66rem}.timeline-card-head{min-height:auto;padding:.64rem .8rem;flex-direction:column;align-items:flex-start}.timeline-card-head p{font-size:.78rem}.timeline-card-head-left b{font-size:.84rem}.timeline-card-head-left span{font-size:.74rem;padding:.24rem .42rem}.timeline-card-body{padding:.95rem .8rem .86rem}.timeline-card-body h3{font-size:1rem}.body-copy{font-size:.78rem}.timeline-card .chip-row span{font-size:.68rem}.timeline-card footer{flex-wrap:wrap;row-gap:.4rem;-moz-column-gap:.7rem;column-gap:.7rem;padding:.64rem .8rem}.timeline-card footer span,.timeline-card footer b,.timeline-card footer i{font-size:.68rem}.skills-orbit-wrap{height:390px;width:100%;max-width:none}.orbit-node b{width:2rem;height:2rem}.orbit-node span{display:none}.orbit-help{max-width:calc(100% - .8rem);margin-top:.2rem;font-size:.7rem;padding:.42rem .72rem;text-align:center;justify-content:center}}@media (max-width: 520px){main{width:calc(100% - .7rem)}.panel{padding:2.35rem 0;scroll-margin-top:.7rem}.section-title{font-size:1.45rem;margin-bottom:1rem}.hero-left .capsule{font-size:.7rem;padding:.34rem .54rem;margin-bottom:.72rem}.hero-left .lead{margin:.78rem 0 1.08rem;font-size:.9rem}.hero-scroll-blinker{bottom:4.8rem}.window-head,.contact-json-head,.contact-script-tabs{padding-left:.72rem;padding-right:.72rem}.module-tags{margin-top:1.05rem}.module-label,.module-tags span:not(.module-label),.chip-row span{font-size:.7rem}.timeline-row{padding-left:1.75rem}.timeline-row.left .timeline-meta,.timeline-row.right .timeline-meta{left:.56rem}.timeline-row.left .date-pill,.timeline-row.right .date-pill{left:.88rem;font-size:.62rem;padding:.24rem .48rem}.timeline-end-pill{margin-left:1.65rem;font-size:.62rem;padding:.5rem .86rem}.repo-row-live{flex-direction:column;gap:.56rem}.site-moon-toggle{top:.48rem;width:2.08rem;height:2.08rem}.site-moon-toggle svg{width:.88rem;height:.88rem}.repo-badge{align-self:flex-start}.live-project-card{min-height:238px}.live-project-head{flex-direction:column;align-items:flex-start;gap:.42rem}.contact-json-code,.contact-script-form{padding-left:.66rem;padding-right:.66rem}.script-input-row{gap:.36rem}.contact-footer-title{font-size:1.12rem}.contact-footer-shell small{font-size:.68rem}}@media (max-width: 1200px){.section-stepper{display:none!important}}html.theme-light,body.theme-light{background:#f5f9ff;color:#0f172a}body.theme-light{--bg: #f5f9ff;--text: #d8e2f2;--muted: #4f6384;--line: rgba(37, 99, 235, .22);--line-strong: rgba(37, 99, 235, .48);--accent: #2563eb;--accent-2: #1d4ed8;--card-blue-border: rgba(37, 99, 235, .52);--card-blue-shadow: 0 22px 56px rgba(37, 99, 235, .16), 0 0 24px rgba(37, 99, 235, .12);--globe-accent: #3b82f6;--globe-core: #2b456d;--globe-hotspot: #466fb0;--globe-wire: #3f73cc;--globe-wire-glow: #5d8fe4;--globe-aura-soft: rgba(110, 170, 255, .24);--globe-aura-mid: rgba(90, 147, 255, .1);--globe-aura-clear: rgba(78, 140, 255, 0);--orbit-icon-glow: rgba(126, 179, 255, .24);--orbit-accent-glow: rgba(74, 147, 255, .5);--orbit-accent-label: #8ec2ff;--orbit-accent-shadow: rgba(74, 147, 255, .38);--orbit-hover-glow: rgba(56, 132, 255, .78);--orbit-hover-label: #e3efff;--orbit-hover-shadow: rgba(56, 132, 255, .56)}body.theme-light .site-shell{background:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px),var(--bg);background-size:64px 64px,64px 64px,auto}body.theme-light .ambient-left{background:#2563eb29}body.theme-light .ambient-right{background:#3b82f624}body.theme-light .site-moon-toggle{border-color:#2563eb73;background:#fffffff0;color:#1d4ed8;box-shadow:0 8px 22px #2563eb33}body.theme-light .site-moon-toggle:hover,body.theme-light .site-moon-toggle:focus-visible{border-color:#2563ebd1;background:#fff;color:#1e40af}body.theme-light .hero-left h1,body.theme-light .section-title,body.theme-light .contact-footer-title{color:#0f172a}body.theme-light .hero-left h1 span{background:linear-gradient(90deg,#1d4ed8 8%,#2563eb 45%,#60a5fa 92%);-webkit-background-clip:text;background-clip:text;color:transparent}body.theme-light .hero-left .lead,body.theme-light .contact-footer-shell small{color:#334155}body.theme-light .about-prefix,body.theme-light .profile-operator,body.theme-light .skills-title svg,body.theme-light .contact-footer-title span{color:#2563eb}body.theme-light .hero-scroll-blinker{border-color:#2563eb80;background:#111722e0}body.theme-light .hero-scroll-blinker:hover,body.theme-light .hero-scroll-blinker:focus-visible{border-color:#2563ebd9;color:#93c5fd}body.theme-light .section-stepper .stepper-line{background:linear-gradient(180deg,#2563eb52,#2563eb29)}body.theme-light .stepper-node{color:#2563eb}body.theme-light .stepper-item.active .stepper-node{border-color:#2563eb;box-shadow:0 0 0 8px #2563eb1a}body.theme-light .stepper-item.active .stepper-node:after{border-color:#2563eb9e}body.theme-light .stepper-label{border-color:#2563eb80}body.theme-light .stepper-label b{color:#2563eb}body.theme-light .panel-card,body.theme-light .hero-actions .action-sub{border-color:#2563eb94}body.theme-light .hero-actions button,body.theme-light .hero-actions a,body.theme-light .window-buttons button,body.theme-light .window-buttons a,body.theme-light .contact-script-form button{border-color:#2563eb8f;color:#dbe8ff}body.theme-light .hero-actions .action-main,body.theme-light .window-buttons button{color:#93c5fd}body.theme-light .window-buttons .run-profile-btn:hover{border-color:#2563ebeb;box-shadow:0 0 0 1px #2563eb40,0 10px 20px #2563eb33}body.theme-light .contact-script-form button{border-color:#3b82f6c7;background:linear-gradient(135deg,#1e40af52,#2563eb33);color:#dbeafe;box-shadow:0 10px 24px #1e40af33}body.theme-light .contact-script-form button:hover,body.theme-light .contact-script-form button:focus-visible{border-color:#93c5fdf2;background:linear-gradient(135deg,#1e3a8a75,#2563eb4d);color:#fff;box-shadow:0 12px 28px #1e40af47}body.theme-light .script-send-status{color:#91a3c3}body.theme-light .script-send-status.is-success{color:#46de93}body.theme-light .script-send-status.is-error{color:#ff9d9d}body.theme-light .panel-card:hover{border-color:#2563ebd1}body.theme-light .panel-card:hover>svg,body.theme-light .panel-card:hover p{color:#9fc6ff}body.theme-light .module-tags span:not(.module-label),body.theme-light .chip-row span{border-color:#2563eb5c;background:#2563eb14;color:#86b7ff}body.theme-light .module-tags span:not(.module-label):hover{border-color:#2563ebbf;background:#2563eb29;color:#d9e8ff}body.theme-light .hero-code-window,body.theme-light .terminal-card,body.theme-light .timeline-card,body.theme-light .contact-json-panel,body.theme-light .contact-script-panel,body.theme-light .live-project-card{border-color:#2563eb8a;box-shadow:0 22px 56px #2563eb29,0 0 24px #2563eb1f;color:#d4dded}body.theme-light .window-head,body.theme-light .terminal-card header,body.theme-light .contact-json-head,body.theme-light .contact-script-tabs{border-bottom-color:#2563eb47}body.theme-light .window-head,body.theme-light .repo-pane-head p,body.theme-light .repo-pane-head span,body.theme-light .repo-row-meta small,body.theme-light .repo-language,body.theme-light .repo-badge,body.theme-light .live-project-description,body.theme-light .timeline-card-head p,body.theme-light .date-pill,body.theme-light .timeline-end-pill,body.theme-light .contact-json-head p,body.theme-light .contact-json-line i,body.theme-light .contact-script-tabs span,body.theme-light .script-comment,body.theme-light .script-input-row input,body.theme-light .script-textarea-row textarea,body.theme-light .contact-footer-shell small{color:#aebcd5}body.theme-light .log-card p,body.theme-light .body-copy{color:#b7c4db}body.theme-light .education-item h3{color:#eaf1ff}body.theme-light .education-item p{color:#c7d4ea}body.theme-light .education-item aside b{color:#dce8ff}body.theme-light .education-item aside small{color:#9fb2d1}body.theme-light .body-copy{border-left-color:#2563eb73}body.theme-light .timeline:before{background:linear-gradient(180deg,#2563eb00,#2563eb57 10%,#2563eb57 90%,#2563eb00)}body.theme-light .timeline-row.left .timeline-meta:before,body.theme-light .timeline-row.right .timeline-meta:before{background:#2563eb6b}body.theme-light .timeline-node{background:#2563eb;box-shadow:0 0 0 4px #2563eb33}body.theme-light .date-pill{border-color:#2563eb70}body.theme-light .timeline-card:hover,body.theme-light .contact-json-panel:hover,body.theme-light .contact-json-panel:focus-within,body.theme-light .contact-script-panel:hover,body.theme-light .contact-script-panel:focus-within{border-color:#2563ebbf;box-shadow:0 24px 48px #2563eb33,0 0 0 1px #2563eb33}body.theme-light .timeline-card:hover .timeline-card-body h3,body.theme-light .live-demo-btn:hover,body.theme-light .live-demo-btn:focus-visible{color:#93c5fd}body.theme-light .live-demo-btn:hover,body.theme-light .live-demo-btn:focus-visible{border-color:#2563ebbf;background:#2563eb24;box-shadow:0 0 0 1px #2563eb38}body.theme-light .contact-script-tabs span{border-top-color:#2563eb}body.theme-light .contact-script-panel:hover .contact-script-tabs,body.theme-light .contact-script-panel:focus-within .contact-script-tabs{border-bottom-color:#2563eb52}body.theme-light .contact-script-panel:hover .contact-script-tabs span,body.theme-light .contact-script-panel:focus-within .contact-script-tabs span{border-left-color:#2563eb59;border-right-color:#2563eb59;box-shadow:inset 0 0 0 1px #2563eb14}body.theme-light .contact-json-caret{color:#2563eb}body.theme-light .skills-wire-canvas canvas{filter:contrast(1.05) saturate(1.02) drop-shadow(0 0 14px rgba(37,99,235,.13)) drop-shadow(0 8px 20px rgba(8,12,24,.3))}body.theme-light .skills-globe-stage--perf .skills-wire-canvas canvas{filter:contrast(1.03) saturate(1.01)}body.theme-light .orbit-node span{color:#d2def3;text-shadow:0 2px 12px rgba(4,8,17,.55)}body.theme-light .orbit-node b img{width:84%;height:84%;filter:brightness(.98) contrast(1.08) saturate(1.02)}body.theme-light .orbit-node b img[alt="Next.js"],body.theme-light .orbit-node b img[alt=Notion],body.theme-light .orbit-node b img[alt="VS Code"]{filter:brightness(.98) contrast(1.08) saturate(1.02);background:transparent;padding:0}body.theme-light .orbit-node b{border-radius:.9rem;background:linear-gradient(160deg,#0d1320,#1a2334);border:1px solid rgba(129,157,205,.26);box-shadow:0 10px 24px #03081280,0 0 0 1px #4f74b129}body.theme-light .orbit-node:hover b{border-color:#8cb1ec80;box-shadow:0 12px 28px #03081294,0 0 0 1px #6698e93d}body.theme-light .orbit-node--ghost span{color:#9eaecd}body.theme-light .orbit-node--accent span{color:#d2def3;text-shadow:0 2px 12px rgba(4,8,17,.55)}body.theme-light .orbit-node:hover span{color:#dbeafe;text-shadow:0 0 18px rgba(37,99,235,.52)}body.theme-light .orbit-help{color:#465b7f;border-color:#2563eb57;background:#fffc;box-shadow:0 8px 20px #2563eb24;font-weight:600}body.theme-light .orbit-help svg{color:#2563eb}body.theme-light .pinned-heading{color:#556789;font-weight:800;letter-spacing:.11em;text-shadow:0 1px 0 rgba(255,255,255,.85)}body.theme-light .view-all-repos{color:#486393;text-decoration:underline;text-decoration-color:#2563eb66;text-underline-offset:.2rem;text-decoration-thickness:1px}body.theme-light .view-all-repos:hover,body.theme-light .view-all-repos:focus-visible{color:#1e3a8a;text-decoration-color:#1e3a8aa6}body.theme-light .contact-footer-shell small{color:#5b6f92;text-shadow:0 1px 0 rgba(255,255,255,.86)}
