@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Space+Grotesk:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500&family=Caveat:wght@500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500&family=Press+Start+2P&display=swap";@import"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200";pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#abb2bf;background:#282c34}.hljs-comment,.hljs-quote{color:#5c6370;font-style:italic}.hljs-doctag,.hljs-keyword,.hljs-formula{color:#c678dd}.hljs-section,.hljs-name,.hljs-selector-tag,.hljs-deletion,.hljs-subst{color:#e06c75}.hljs-literal{color:#56b6c2}.hljs-string,.hljs-regexp,.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string{color:#98c379}.hljs-attr,.hljs-variable,.hljs-template-variable,.hljs-type,.hljs-selector-class,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-number{color:#d19a66}.hljs-symbol,.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-title{color:#61aeee}.hljs-built_in,.hljs-title.class_,.hljs-class .hljs-title{color:#e6c07b}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline}*,: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}.\!container{width:100%!important}.container{width:100%}@media (min-width: 640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width: 768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width: 1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width: 1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width: 1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.\!block{display:block!important}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.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}.break-all{word-break:break-all}.border{border-width:1px}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.outline{outline-style:solid}.blur{--tw-blur: blur(8px);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)}.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)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.\[-\:\\s\|\]{-: s|}:root{--bg: #0a0a0a;--bg2: #141414;--card: rgba(255,255,255,.03);--card-bg: #141414;--primary: #f97316;--secondary: #f97316;--accent: #f97316;--text: #f1f1f1;--text-dim: #a0a0a0;--text-muted: #6b6b6b;--border: rgba(255,255,255,.08);--glow: rgba(249,115,22,.15);--sidebar-w: 220px;--header-h: 60px;--header-stack-h: 72px;--sub-nav-h: 0px;--radius: .75rem;--fab-size: 48px;--fab-gap: 10px;--fab-inset-bottom: max(20px, env(safe-area-inset-bottom, 0px));--fab-inset-right: max(20px, env(safe-area-inset-right, 0px));--fab-stack-height: calc(var(--fab-size) * 4 + var(--fab-gap) * 3);--fab-collapsed-offset: calc(var(--fab-inset-bottom) + var(--fab-size));--fab-expanded-offset: calc(var(--fab-inset-bottom) + var(--fab-stack-height));--font-sans: "Inter",sans-serif;--font-display: "Space Grotesk",sans-serif;--font-mono: "JetBrains Mono",monospace;--glass-bg: rgba(255,255,255,.04);--glass-border: rgba(255,255,255,.08);--glass-nav: #0a0a0a;--hover-bg: rgba(249,115,22,.08);--hover-border: rgba(249,115,22,.2);--sidebar-bg: #0a0a0a}.animated-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;pointer-events:none}.animated-bg--light{background:#fff}.animated-orb{position:absolute;border-radius:50%;filter:blur(80px);will-change:transform,opacity}.animated-shape{position:absolute;border-radius:50%;background:var(--primary);opacity:.3;will-change:transform,opacity}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{scroll-behavior:smooth;height:-webkit-fill-available}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);overflow-x:hidden;line-height:1.6;font-weight:400;font-size:.9rem;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;min-height:-webkit-fill-available}button,a,input,textarea,select{touch-action:manipulation}.scroll-progress{position:fixed;top:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,var(--accent),var(--accent));transform-origin:left;z-index:2147483647;pointer-events:none;will-change:transform}.cursor-dot{position:fixed;width:8px;height:8px;border-radius:50%;background:var(--accent);pointer-events:none;z-index:2147483646;transform:translate(-100px,-100px);transition:opacity .3s;mix-blend-mode:difference;will-change:transform}.cursor-dot--hidden{opacity:0}@media (hover: none) and (pointer: coarse){.cursor-dot{display:none}}@supports (padding-top: env(safe-area-inset-top)){.header{padding-left:max(24px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right));padding-top:env(safe-area-inset-top);height:calc(var(--header-h) + env(safe-area-inset-top))}.app-layout{margin-top:calc(var(--header-h) + env(safe-area-inset-top))}}::-moz-selection{background:var(--accent);color:var(--bg)}::selection{background:var(--accent);color:var(--bg)}::-webkit-scrollbar{width:0;height:0;display:none}html{scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar{display:none}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:600;line-height:1.2}code,pre{font-family:var(--font-mono)}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes availPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.2)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes videoScan{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes spinRing{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.voice-transcript-anchor{position:fixed;top:calc(var(--header-stack-h, 72px) + env(safe-area-inset-top,0px));left:50%;transform:translate(-50%);width:min(640px,calc(100% - 32px));z-index:10019;display:flex;justify-content:center;box-sizing:border-box;pointer-events:none;padding:0 8px}.home-voice-hint{display:flex;align-items:center;justify-content:center;gap:8px;margin:12px auto 0;padding:8px 16px;max-width:-moz-fit-content;max-width:fit-content;font-size:.75rem;color:var(--accent);background:var(--bg2);border:1px solid var(--accent);border-radius:20px;box-shadow:0 2px 12px #0003}.home-voice-hint-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);animation:voice-wake-pulse 1.5s ease-in-out infinite}.voice-transcript-bar{position:relative;pointer-events:auto;display:flex;align-items:flex-start;gap:8px;width:100%;max-width:640px;padding:8px 14px;box-sizing:border-box;background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:10px;font-size:.78rem;color:var(--text);font-family:var(--font-mono);box-shadow:0 8px 28px color-mix(in srgb,var(--bg) 55%,transparent)}.voice-transcript-bar--wake{border-color:color-mix(in srgb,var(--accent) 45%,var(--glass-border))}.voice-transcript-bar--listening,.voice-transcript-bar--activating{border-color:var(--accent)}.voice-transcript-text{flex:1;min-width:0;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@keyframes fadeDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.voice-transcript-dot{width:6px;height:6px;border-radius:50%;background:var(--primary);flex-shrink:0;margin-top:.35em;animation:pulse 1.2s ease-in-out infinite}.glass{background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border)}.glass-nav{background:var(--glass-nav);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:var(--header-border-width, 1px) solid var(--glass-border)}.text-gradient{background:linear-gradient(135deg,var(--primary),var(--secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.app-layout{display:flex;margin-top:calc(var(--header-stack-h) + 16px + var(--sub-nav-h) + env(safe-area-inset-top,0px));min-height:calc(100vh - var(--header-stack-h) - 16px);position:relative;z-index:1}.app-layout--subnav{--sub-nav-h: 44px}.main-area{flex:1;margin-left:var(--sidebar-w);transition:margin-left .3s,padding .3s,max-width .3s;padding:32px 40px;max-width:calc(1400px - var(--sidebar-w))}.main-area.expanded{margin-left:0;max-width:1400px}@media (min-width: 1025px) and (max-width: 1280px){.main-area{padding:24px}}@media (min-width: 1281px) and (max-width: 1440px){.main-area{padding:28px 32px}}.header{position:fixed;top:0;left:0;right:0;z-index:10020;height:var(--header-h);padding:0 12px 0 24px;background:var(--glass-nav);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--glass-border);display:flex;align-items:center;gap:16px}.header.header-osmo{top:max(12px,env(safe-area-inset-top,0px));left:50%;right:auto;transform:translate(-50%);width:min(1200px,calc(100% - 24px));height:auto;min-height:0;padding:0;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom:none;flex-direction:column;align-items:stretch;gap:0}.header-left{display:flex;align-items:center;gap:12px;flex-shrink:0}.header-hamburger{display:flex;flex-direction:column;gap:4px;width:36px;height:36px;min-width:36px;min-height:36px;align-items:center;justify-content:center;border:none;background:none;color:var(--text);cursor:pointer;border-radius:10px;padding:0;transition:color .2s,background .2s}.header-hamburger:hover{color:var(--accent);background:var(--hover-bg)}.header-hamburger .fab-hamb-line{display:block;width:16px;height:2px;background:currentColor;border-radius:2px;transition:transform .3s ease,opacity .3s ease;transform-origin:center}.header-hamburger.is-active .fab-hamb-line-1{transform:translateY(6px) rotate(45deg)}.header-hamburger.is-active .fab-hamb-line-2{opacity:0}.header-hamburger.is-active .fab-hamb-line-3{transform:translateY(-6px) rotate(-45deg)}.gs-wrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10015;background:color-mix(in srgb,var(--bg) 78%,transparent);display:flex;justify-content:center;align-items:flex-end;padding:16px var(--fab-inset-right) calc(var(--fab-collapsed-offset) + 20px);box-sizing:border-box}body.fab-open .gs-wrap{padding-bottom:calc(var(--fab-expanded-offset) + 20px)}.gs-inner{position:relative;width:100%;max-width:520px;display:flex;flex-direction:column;align-items:center}.gs-bar{display:flex;align-items:center;gap:12px;width:100%;padding:14px 22px;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:32px;box-shadow:0 8px 40px color-mix(in srgb,var(--bg) 55%,transparent);backdrop-filter:blur(40px) saturate(1.4);-webkit-backdrop-filter:blur(40px) saturate(1.4);transition:box-shadow .2s,border-color .2s}.gs-bar--open{box-shadow:0 8px 40px color-mix(in srgb,var(--bg) 55%,transparent),0 0 0 2px var(--glass-border)}.gs-icon{flex-shrink:0;color:var(--text-muted);width:20px;height:20px}.gs-input{flex:1;background:none;border:none;outline:none;color:var(--text);font-size:1rem;font-family:var(--font-sans);min-width:0}.gs-input::-moz-placeholder{color:var(--text-muted);font-size:.92rem}.gs-input::placeholder{color:var(--text-muted);font-size:.92rem}.gs-clear{flex-shrink:0;background:none;border:none;color:var(--text-dim);cursor:pointer;padding:4px;display:flex;transition:color .2s,background .2s;border-radius:50%}.gs-clear:hover{color:var(--text);background:var(--hover-bg)}.gs-bar--compact{padding:8px 16px;justify-content:center;gap:28px}.gs-icon-btn{background:none;border:none;color:var(--text-dim);cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s,color .2s}.gs-icon-btn:hover{background:var(--hover-bg);color:var(--text)}.gs-mic{flex-shrink:0;background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;display:flex;transition:color .2s,background .2s;border-radius:50%}.gs-mic:hover{color:var(--text);background:var(--hover-bg)}.gs-dropdown{position:absolute;bottom:calc(100% + 8px);left:0;right:0;background:var(--glass-bg);backdrop-filter:blur(40px) saturate(1.4);-webkit-backdrop-filter:blur(40px) saturate(1.4);border:1px solid var(--glass-border);border-radius:18px;overflow:hidden;z-index:9999;box-shadow:0 -8px 40px color-mix(in srgb,var(--bg) 50%,transparent)}.gs-result{padding:14px 18px;cursor:pointer;display:flex;align-items:center;gap:10px;transition:background .15s;border-bottom:1px solid var(--border)}.gs-result:last-child{border-bottom:none}.gs-result:hover{background:var(--hover-bg)}.gs-result-nav .gs-result-label{color:var(--primary)}@media (max-width: 768px){.gs-wrap{padding-left:12px;padding-right:12px}.gs-bar{padding:12px 18px;border-radius:28px}.gs-input{font-size:.92rem}.gs-input::-moz-placeholder{font-size:.85rem}.gs-input::placeholder{font-size:.85rem}.gs-dropdown{bottom:calc(100% + 6px);border-radius:16px}.gs-result{padding:12px 16px}}.header-right{display:flex;align-items:center;gap:10px;flex-shrink:0;margin-left:auto}.header-resume{font-weight:600;color:var(--primary)!important}.header-ghost{color:var(--primary);border-color:var(--primary);font-weight:600;background:transparent}.header-ghost:hover{color:#000;background:#fff;border-color:#fff}.header-speaker{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:none;border:1px solid var(--glass-border);color:var(--text-dim);cursor:pointer;flex-shrink:0;transition:all .2s}.header-speaker:hover{border-color:var(--accent);color:var(--accent)}.header-typing{font-size:.8rem;font-family:var(--font-mono);color:var(--primary);white-space:nowrap;font-weight:500}.header-btn .header-typing{display:inline-block;min-width:140px;text-align:left}.header-typing-btn{display:flex;align-items:center;gap:4px}.typing-cursor:after{content:"|";animation:blink .8s step-end infinite;margin-left:1px;color:var(--primary)}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.header-avatar{width:32px;height:32px;border-radius:50%;overflow:hidden;border:2px solid var(--glass-border);cursor:pointer;background:none;padding:0;flex-shrink:0;transition:border-color .2s}.header-avatar:hover{border-color:var(--primary)}.header-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.ho-shell{width:100%;background:var(--ho-bg1);border:1px solid var(--ho-outline);border-radius:32px;overflow:visible;box-shadow:0 12px 40px #00000059}.header-osmo--open .ho-shell{box-shadow:0 20px 60px #00000073}.ho-top{display:flex;align-items:center;gap:12px;padding:8px 12px;min-height:50px}.ho-menu-pill{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:42px;padding:0 18px;border:none;border-radius:32px;background:var(--ho-bg2);color:var(--ho-link);font-family:var(--font-sans);font-size:.78rem;font-weight:500;letter-spacing:-.02em;cursor:pointer;flex-shrink:0;transition:transform .2s ease,background .2s ease}.ho-menu-pill:hover{transform:scale(.98);background:color-mix(in srgb,var(--ho-bg2) 85%,var(--primary) 15%)}.ho-menu-pill-label{line-height:1}.ho-brand{display:flex;align-items:center;gap:8px;flex:1;min-width:0;background:none;border:none;cursor:pointer;padding:4px 8px;border-radius:12px;color:var(--ho-link);text-align:left;transition:opacity .2s}.ho-brand:hover{opacity:.85}.ho-brand-mark{font-family:var(--font-mono);color:var(--primary);font-weight:600;font-size:.78rem}.ho-brand-path{font-family:var(--font-mono);font-size:.72rem;font-weight:500;color:var(--ho-link)}.ho-brand-divider{width:1px;height:20px;background:var(--ho-outline);flex-shrink:0}.ho-brand-company.ho-company-area{flex:1;min-width:0;overflow:hidden;white-space:nowrap}.ho-brand-company.ho-company-area-short{display:none;align-items:center;gap:6px;font-size:.72rem;font-family:var(--font-mono)}.ho-typewriter{font-size:.68rem;font-family:var(--font-mono);color:var(--primary);font-weight:500;white-space:nowrap}.ho-typewriter-cursor{animation:blink .8s step-end infinite;color:var(--primary);margin-left:1px}.ho-greeting-short{color:var(--ho-tagline);font-weight:400}.ho-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.ho-live-clock{display:flex;align-items:center;gap:6px;font-size:.65rem;font-family:var(--font-mono);color:var(--text-muted);white-space:nowrap;padding:0 6px;letter-spacing:-.01em;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ho-live-date{color:var(--text-dim)}.ho-live-time{color:var(--text);font-weight:500}.ho-live-timer{color:color-mix(in srgb,var(--accent) 60%,transparent);font-weight:500}.ho-live-divider{width:3px;height:3px;border-radius:50%;background:var(--text-muted);opacity:.4}@media (max-width: 640px){.ho-live-clock{font-size:.6rem;gap:4px;padding:0 3px}.ho-live-date{display:none}}@media (max-width: 400px){.ho-live-timer{display:none}}.ho-action-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;border:1px solid var(--ho-outline);background:transparent;color:var(--ho-link);cursor:pointer;transition:border-color .2s,color .2s,background .2s}.ho-action-btn:hover{border-color:var(--primary);color:var(--primary);background:var(--hover-bg)}.ho-voice-btn{position:relative}.ho-voice-btn--active{color:var(--accent);border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 20%,transparent)}.ho-voice-dot{position:absolute;top:-1px;right:-1px;width:7px;height:7px;border-radius:50%;background:var(--accent);animation:dotPulse 1.2s ease-in-out infinite}@keyframes dotPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.4);opacity:.6}}.ho-theme-btn{width:auto;padding:0 8px;gap:4px;border-radius:20px}.ho-theme-wrap{position:relative}.ho-theme-menu{top:calc(100% + 8px);right:0}.ho-panel{overflow:hidden}.ho-panel-inner{padding:8px 12px 12px}.ho-blocks{display:flex;gap:24px;align-items:flex-start}.ho-block{flex:1;min-width:0}.ho-block+.ho-block{padding-left:24px}.ho-tagline{font-size:.65rem;line-height:1;text-transform:uppercase;letter-spacing:.08em;color:var(--ho-tagline);opacity:.7;margin:0 0 10px;font-weight:500}.ho-block-links{display:flex;flex-direction:column;gap:2px}.ho-underline-wrap{position:relative;width:100%}.ho-underline-link{display:flex;flex-direction:row;align-items:center;gap:10px;width:100%;padding:6px 0 8px;background:none;border:none;cursor:pointer;text-align:left;color:var(--ho-link);position:relative}.ho-underline-link--toggle{flex-wrap:wrap}.ho-underline-meta{display:flex;align-items:center;gap:8px;font-size:.6rem;color:var(--primary);font-weight:600;opacity:.9}.ho-underline-tag{text-transform:uppercase;letter-spacing:.04em;font-size:.55rem;color:var(--ho-tagline)}.ho-underline-title{font-size:clamp(.85rem,1.2vw,1rem);font-weight:500;letter-spacing:-.03em;line-height:1.2;font-family:var(--font-display);transition:color .2s ease;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.ho-underline-link:hover .ho-underline-title{color:var(--primary)}.ho-underline-bar{display:block;height:1px;width:100%;background:var(--ho-outline);margin-top:-1px;transform-origin:left;transition:background .25s ease,transform .25s ease}.ho-underline-link:hover+.ho-underline-bar,.ho-underline-wrap:hover .ho-underline-bar{background:var(--primary);transform:scaleX(1.02)}.ho-underline-chevron{margin-left:auto;font-size:.75rem;color:var(--ho-tagline)}.ho-subs{overflow:hidden;padding:0 0 8px 12px;display:flex;flex-direction:column;gap:2px}.ho-sub-link{background:none;border:none;color:var(--ho-tagline);cursor:pointer;padding:6px 0;font-size:.72rem;font-family:var(--font-sans);text-align:left;transition:color .15s;white-space:normal;word-break:break-word;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ho-sub-link:hover{color:var(--primary)}.ho-sub-letter{color:var(--primary);font-weight:600;margin-right:2px;font-size:.68rem}.ho-block--social .ho-social-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;padding-top:10px;border-top:1px solid var(--ho-outline)}.ho-social-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;border:1px solid var(--ho-outline);color:var(--ho-link);text-decoration:none;transition:border-color .2s,background .2s,transform .2s}.ho-social-icon-btn:hover{border-color:var(--primary);background:var(--hover-bg);transform:scale(1.05)}.ho-social-icon{width:18px;height:18px;-o-object-fit:contain;object-fit:contain}.ho-social-fallback{font-size:.75rem;font-weight:600}.ho-social-icon-btn--resume{width:auto;height:auto;border-radius:20px;padding:6px 16px}.ho-social-resume{font-size:.75rem;font-weight:600;white-space:nowrap}@media (max-width: 900px){.header.header-osmo{width:calc(100% - 16px);top:max(8px,env(safe-area-inset-top,0px))}.ho-shell{border-radius:20px}.ho-top{padding:6px 8px;gap:8px;flex-wrap:wrap}.ho-menu-pill{height:38px;padding:0 14px}.ho-menu-pill-label{display:none}.ho-brand-company{display:none!important}.ho-brand-divider{display:none}.ho-actions{gap:4px}.ho-action-btn{width:32px;height:32px}.ho-theme-btn{width:auto;padding:0 6px}.ho-blocks{flex-direction:column;gap:0;align-items:stretch}.ho-block{width:100%}.ho-block+.ho-block{padding-left:0;padding-top:14px;margin-top:14px}.ho-block--social .ho-social-row{gap:8px;margin-top:12px;padding-top:10px}.ho-panel-inner{padding:6px 10px 10px;max-height:calc(100vh - 120px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--ho-outline) transparent}.voice-transcript-anchor{width:calc(100% - 16px);top:calc(64px + env(safe-area-inset-top,0px))}}.header-btn{background:none;border:1px solid var(--glass-border);color:var(--text-dim);cursor:pointer;padding:6px 16px;transition:all .2s;font-size:.8rem;font-family:var(--font-sans);border-radius:8px;white-space:nowrap}.header-btn:hover{border-color:var(--accent);color:var(--accent)}.gt-wrap{position:relative}.gt-btn{display:flex;align-items:center;justify-content:center;gap:4px;padding:6px}.gt-current{font-size:.55rem;font-weight:600;color:var(--text-dim)}.gt-dropdown{position:absolute;top:calc(100% + 6px);right:0;width:200px;max-height:300px;overflow-y:auto;background:var(--glass-nav);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:10px;padding:4px 0;z-index:9999}.gt-option{padding:6px 12px;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:.76rem;color:var(--text);transition:background .15s}.gt-option:hover{background:var(--hover-bg)}.gt-option.active{color:var(--primary);background:var(--hover-bg);font-weight:600}.gt-option-code{width:28px;font-size:.62rem;color:var(--text-muted);text-align:right;flex-shrink:0}.gt-option-native{flex:1}.gt-spinner{width:10px;height:10px;border:2px solid var(--text-dim);border-top-color:var(--primary);border-radius:50%;animation:gt-spin .6s linear infinite;display:inline-block}@keyframes gt-spin{to{transform:rotate(360deg)}}.header-link{display:flex;align-items:center;gap:4px;color:var(--text-dim);font-size:.7rem;font-family:var(--font-sans);border:1px solid var(--glass-border);padding:5px 9px;cursor:pointer;transition:all .2s;border-radius:8px;background:none}.header-link:hover{border-color:var(--accent);color:var(--accent)}.header-link svg{width:13px;height:13px;flex-shrink:0;display:block}.header-link .link-label{font-size:.65rem;display:inline}.header-link .link-short{display:none;font-size:.65rem}.sidebar{position:fixed;top:var(--header-h);left:0;bottom:0;width:var(--sidebar-w);z-index:999;background:var(--sidebar-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-right:1px solid var(--glass-border);padding:10px;overflow-y:auto;-webkit-overflow-scrolling:touch;transition:transform .3s}.sidebar.closed{transform:translate(-100%)}.sidebar-item{display:flex;align-items:center;gap:10px;padding:8px 12px;margin-bottom:3px;color:var(--sidebar-text-dim);font-size:.78rem;cursor:pointer;transition:all .2s;border:1px solid transparent;background:none;width:100%;text-align:left;font-family:var(--font-sans);border-radius:8px}.sidebar-item:hover{border-color:var(--glass-border);color:var(--sidebar-text);background:var(--hover-bg)}.sidebar-item.active{border-color:var(--accent);color:var(--accent);background:var(--hover-bg)}.sidebar-icon{font-size:1.1rem!important;font-variation-settings:"FILL" 0,"wght" 300,"GRAD" 0,"opsz" 20;width:24px;height:24px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sidebar-item .icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:.65rem;border:1px solid var(--glass-border);border-radius:6px}.sidebar-item .label{flex:1}.sidebar-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:998;background:#0006}@media (max-width: 768px){.sidebar-overlay.visible{display:block}}.sidebar-section-label{color:var(--sidebar-text-muted);font-size:.6rem;letter-spacing:.5px;padding:14px 12px 5px;text-transform:uppercase;font-family:var(--font-sans)}.sidebar-brand{padding:6px 12px 10px;border-bottom:1px solid var(--glass-border);margin-bottom:6px}.sidebar-logo{font-size:.9rem;font-weight:600;font-family:var(--font-display);color:var(--sidebar-text)}.sidebar-logo .prompt{color:var(--primary);font-family:var(--font-mono)}.sidebar-time{padding:8px 12px 12px;text-align:center;border-bottom:1px solid var(--glass-border);margin-bottom:4px}.sidebar-time-clock{display:block;font-size:.85rem;font-weight:700;color:var(--sidebar-text);font-family:var(--font-mono)}.sidebar-time-date{display:block;font-size:.6rem;color:var(--sidebar-text-muted);text-transform:uppercase;letter-spacing:.3px;margin-top:2px}.yt-hero{padding:0;position:relative;margin-bottom:24px}.yt-player{position:relative;width:100%;border-radius:12px;overflow:hidden;background:#000;aspect-ratio:16 / 9;display:flex;align-items:center;justify-content:center;border:1px solid var(--glass-border)}@media (max-width: 768px){.yt-player{height:clamp(200px,(100vh + 100vw) * .25,100vh);aspect-ratio:auto}}.yt-player.yt-player-photo-bg{background:var(--bg2)}.yt-player-bg{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:12px}.yt-player-bg-img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.yt-player-content{position:relative;z-index:2;text-align:center;padding:40px}.yt-play-btn{width:72px;height:72px;border-radius:50%;background:var(--glass-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:2px solid var(--glass-border);display:flex;align-items:center;justify-content:center;margin:0 auto;cursor:pointer;transition:all .2s;z-index:2;color:var(--text)}.yt-play-btn:hover{background:var(--hover-bg);border-color:var(--accent);transform:scale(1.05);color:var(--accent)}.yt-play-btn svg{width:28px;height:28px;margin-left:3px}.yt-player-title{color:var(--text)}.yt-player-title .yt-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 12px;background:var(--glass-bg);border:1px solid var(--glass-border);font-size:.68rem;border-radius:20px;margin-bottom:12px;color:var(--primary);font-family:var(--font-mono)}.yt-player-title .yt-badge .dot{width:5px;height:5px;background:var(--primary);border-radius:50%}.yt-player-title h1{font-size:clamp(1.8rem,4vw,3rem);font-weight:700;line-height:1.1;margin:0 0 8px;letter-spacing:-.5px}.yt-player-title p{font-size:clamp(.85rem,1.5vw,1rem);color:var(--text-dim);max-width:480px;margin:0 auto}.yt-punchline{font-size:clamp(.8rem,1.4vw,.95rem);color:var(--text-dim);max-width:520px;margin:0 auto;font-family:var(--font-sans);font-weight:400}.yt-player-gradient{position:absolute;bottom:0;left:0;right:0;height:50%;background:linear-gradient(transparent,#000c);pointer-events:none}.yt-progress-wrap:hover .yt-progress-thumb{transform:translate(-50%,-50%) scale(1)}.yt-progress-wrap:hover{height:6px}.yt-progress-fill{will-change:width}.yt-progress-thumb{will-change:transform}.home-layout{display:block}@media (min-width: 1024px){.home-layout{display:flex;gap:20px;align-items:flex-start}.home-left-col{flex:0 0 auto;width:calc(65% - 10px);position:sticky;top:80px;max-height:calc(100vh - 80px);overflow-y:auto;scrollbar-width:none}.home-left-col::-webkit-scrollbar{display:none}.home-right-col{flex:1;min-width:0;overflow:visible}@media (min-width: 1024px) and (max-width: 1200px){.home-layout{gap:16px}.home-left-col{width:calc(58% - 8px)}}@media (min-width: 1441px){.home-layout{gap:28px}.home-left-col{width:calc(62% - 14px)}}.home-right-col .yt-info-bar-wrap--desktop{background:var(--bg);padding:8px 0;border-bottom:1px solid var(--glass-border);margin-bottom:8px}.yt-info-bar-wrap--mobile,.yt-desc-panel-col--mobile{display:none}.home-right-col .yt-desc-panel-col--desktop{margin-bottom:8px}.home-right-col .yt-desc-panel-col--desktop .yt-desc-panel{border:1px solid var(--glass-border);border-radius:8px;padding:10px 12px;font-size:.78rem}.home-right-col .yt-desc-panel-col--desktop .yt-desc-panel .yt-desc-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.home-right-col .yt-desc-panel-col--desktop .yt-desc-panel .yt-desc-avatar-row{display:flex;align-items:center;gap:8px}.home-right-col .yt-desc-panel-col--desktop .yt-desc-panel .yt-desc-avatar{width:28px;height:28px;min-width:28px;border-radius:50%}.home-right-col .yt-desc-panel-col--desktop .yt-desc-panel .yt-desc-avatar-row strong{font-size:.78rem}.home-right-col .yt-desc-panel-col--desktop .yt-desc-panel .yt-desc-badge{font-size:.62rem;padding:1px 8px}.home-right-col .yt-desc-panel-col--desktop .yt-desc-panel .yt-desc-tags-scroll{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:8px}.home-right-col .yt-desc-panel-col--desktop .yt-desc-panel .yt-desc-tag-pill{font-size:.62rem;padding:2px 8px}.home-right-col .yt-desc-panel-col--desktop .yt-desc-panel .yt-desc-bio p{font-size:.72rem;-webkit-line-clamp:2;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;margin:0}.home-right-col .yt-desc-panel-col--desktop .yt-desc-panel .yt-desc-bio-tag{font-size:.65rem}.home-right-col .yt-desc-panel-col--desktop .yt-desc-panel .yt-desc-stats{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px;justify-content:center}.home-right-col .yt-desc-panel-col--desktop .yt-desc-panel .yt-desc-stat{text-align:center;flex:0 0 calc(50% - 2px);box-sizing:border-box}.home-right-col .yt-desc-panel-col--desktop .yt-desc-panel .yt-desc-stat-val{font-size:.75rem;display:block;font-weight:600}.home-right-col .yt-desc-panel-col--desktop .yt-desc-panel .yt-desc-stat-lbl{font-size:.58rem}.home-right-col .yt-desc-panel-col--desktop .yt-desc-panel .yt-desc-achs{display:flex;flex-direction:column;gap:4px;margin-top:8px}.home-right-col .yt-desc-panel-col--desktop .yt-desc-panel .yt-desc-ach-label{font-size:.65rem;font-weight:600;margin-bottom:2px}.home-right-col .yt-desc-panel-col--desktop .yt-desc-panel .yt-desc-ach-item{display:flex;align-items:center;gap:6px;font-size:.7rem}.home-right-col .yt-desc-panel-col--desktop .yt-desc-panel .yt-desc-close{display:none}.home-right-col .project-grid{display:flex;flex-direction:column;gap:2px}.home-right-col .project-card{display:flex;flex-direction:row;gap:6px;padding:0;border-radius:0;cursor:pointer;overflow:visible;border:none;background:none;max-width:402px;height:100px}.home-right-col .project-card:hover{transform:none;background:none}.home-right-col .pc-thumb{width:165px;min-width:165px;height:100px;flex-shrink:0;border-radius:6px;overflow:hidden;margin-bottom:0}.home-right-col .pc-thumb-img{width:165px;height:100px;-o-object-fit:cover;object-fit:cover}.home-right-col .pc-thumb .pc-thumb-overlay,.home-right-col .pc-thumb .pc-play-overlay,.home-right-col .pc-duration{display:none}.home-right-col .pc-body-row{display:flex;flex-direction:row;align-items:flex-start;gap:0;flex:1;min-width:0;height:100px}.home-right-col .pc-body{flex:1;padding:0;min-width:0;display:flex;flex-direction:column;gap:1px;height:100px;overflow:hidden}.home-right-col .pc-title{font-size:.82rem;font-weight:700;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--text);margin:0;word-wrap:break-word}.home-right-col .pc-meta{font-size:.66rem;font-weight:400;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.home-right-col .pc-meta-dot{display:inline-block;margin:0 4px}.home-right-col .pc-tags{display:flex;gap:4px;flex-wrap:wrap;margin-top:1px;overflow:hidden}.home-right-col .pc-tags .pc-tag{font-size:.6rem;font-weight:400;color:var(--text-muted);background:var(--bg2);padding:1px 6px;border-radius:4px;white-space:nowrap}.home-right-col .pc-menu{position:relative;flex-shrink:0;margin-left:4px;align-self:flex-start;padding-top:0}.home-right-col .pc-menu-btn{padding:2px;background:none;border:none;cursor:pointer}.home-right-col .pc-menu-btn svg{width:18px;height:18px;color:var(--text-muted)}.home-right-col .pc-dropdown{right:0;left:auto}.home-right-col .section-header{margin-bottom:12px}.home-right-col .section-header .title{font-size:1rem}.home-right-col .section-header .sub{font-size:.7rem}.home-right-col .section{padding:0 0 20px}}@media (max-width: 1023px){.home-right-col .yt-info-bar-wrap--desktop,.yt-desc-panel-col--desktop{display:none}}.home-sections-row{display:flex;flex-direction:column;gap:24px}.yt-video-page{margin-bottom:20px}.yt-video-wrap{position:relative}.hero-glow{position:absolute;top:-60px;left:-60px;right:-60px;bottom:-60px;z-index:0;pointer-events:none;background:radial-gradient(ellipse at 50% 40%,color-mix(in srgb,var(--accent) 15%,transparent) 0%,transparent 70%);border-radius:inherit}.hero-resume-btn{position:absolute;bottom:32px;left:80px;z-index:5;display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:#0009;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border-radius:8px;font-size:.75rem;color:#fff;font-family:var(--font-mono);letter-spacing:.5px;text-decoration:none;animation:heroResumeIn .5s ease-out;transition:background .2s,transform .2s;cursor:pointer}.hero-resume-btn:hover{background:var(--accent);transform:scale(1.05)}.hero-resume-btn svg{flex-shrink:0}@keyframes heroResumeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.fs-body{display:flex;flex-direction:column;width:100%;height:100%;position:relative;z-index:1}.fs-body-main{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden;z-index:1}.fs-body--chat-open .fs-body-main{flex-direction:row}.fs-main-area{position:relative;flex:1;display:flex;flex-direction:column;min-width:0;min-height:0}.fs-main-area .yt-player{aspect-ratio:auto;height:100%;border-radius:0;border:none}.fs-chat-panel{width:340px;flex-shrink:0;display:flex;flex-direction:column;background:#00000080;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);overflow:hidden;border-left:1px solid rgba(255,255,255,.08)}@media (max-width: 700px){.fs-body--chat-open .fs-body-main{flex-direction:column}.fs-body--chat-open .fs-main-area{flex:0 0 auto;height:45%;max-width:100%}.fs-chat-panel{width:100%;flex:1;border-left:none;border-top:1px solid rgba(255,255,255,.08);min-height:200px}}.fs-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2147483647;display:flex;align-items:center;justify-content:center;background:#0000008c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:opacity .3s,backdrop-filter .3s}.fs-overlay--hidden{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;pointer-events:none}.fs-overlay--hidden .fs-grid-bg,.fs-overlay--hidden .fs-layout{opacity:0;pointer-events:none}.fs-grid-bg{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:48px 48px;pointer-events:none}.fs-name{font-family:var(--font-display);font-size:clamp(2rem,5vw,3.5rem);font-weight:700;color:#fff;text-shadow:0 0 30px color-mix(in srgb,var(--accent) 50%,transparent),0 0 60px color-mix(in srgb,var(--accent) 20%,transparent);margin:0;letter-spacing:1px}.fs-tagline{font-size:clamp(.85rem,2vw,1.05rem);color:#ffffffb3;margin:0;font-family:var(--font-mono);min-height:1.4em}.fs-stats{display:flex;gap:32px;margin-top:4px}.fs-stat{display:flex;flex-direction:column;align-items:center;gap:2px}.fs-stat-value{font-family:var(--font-display);font-size:clamp(1.4rem,3vw,2rem);font-weight:700;color:#fff}.fs-stat-label{font-size:.65rem;color:#ffffff73;text-transform:uppercase;letter-spacing:1px;font-family:var(--font-mono)}.fs-resume-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 24px;background:var(--accent);color:#fff;border-radius:999px;font-size:.85rem;font-weight:600;text-decoration:none;transition:transform .2s,box-shadow .2s;font-family:var(--font-sans);margin-top:4px}.fs-resume-btn:hover{transform:scale(1.06);box-shadow:0 0 30px color-mix(in srgb,var(--accent) 40%,transparent)}.fs-layout{position:relative;display:flex;align-items:center;justify-content:center;pointer-events:auto;box-sizing:border-box}.fs-info{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;text-align:center}.fs-lc-header{padding:10px 14px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.6px;color:#ffffff80;border-bottom:1px solid rgba(255,255,255,.06)}.fs-lc-msgs{flex:1;overflow-y:auto;padding:10px 14px;display:flex;flex-direction:column;gap:8px}.fs-lc-msg{display:flex;flex-direction:column;gap:1px}.fs-lc-msg--self{align-items:flex-end}.fs-lc-author{font-size:.6rem;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.4px}.fs-lc-msg--self .fs-lc-author{color:#fff6}.fs-lc-text{margin:0;font-size:.78rem;line-height:1.4;color:#ffffffe6;word-break:break-word}.fs-lc-text p{margin:0 0 4px}.fs-lc-text p:last-child{margin-bottom:0}.fs-lc-text ul,.fs-lc-text ol{margin:4px 0;padding-left:16px}.fs-lc-text li{margin-bottom:2px}.fs-lc-text table{margin:6px 0;border-collapse:collapse;width:100%;font-size:.7rem}.fs-lc-text th,.fs-lc-text td{border:1px solid rgba(255,255,255,.15);padding:4px 8px;text-align:left}.fs-lc-text th{color:var(--accent);font-weight:600;background:#ffffff0f}.fs-lc-text tr:nth-child(2n) td{background:#ffffff08}.fs-lc-navs{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.fs-lc-nav-btn{margin-top:0;padding:4px 10px;font-size:.65rem;gap:4px}.fs-lc-typing{color:#fff6}.fs-lc-dot{animation:lcDotPulse 1.4s ease-in-out infinite}.fs-lc-dot:nth-child(2){animation-delay:.2s}.fs-lc-dot:nth-child(3){animation-delay:.4s}@keyframes lcDotPulse{0%,60%,to{opacity:.3}30%{opacity:1}}.fs-lc-inp{display:flex;align-items:center;gap:6px;padding:8px 10px;border-top:1px solid rgba(255,255,255,.06)}.fs-lc-inp input{flex:1;border:none;background:#ffffff0f;border-radius:6px;padding:8px 10px;font-size:.78rem;color:#fff;outline:none;font-family:var(--font-sans)}.fs-lc-inp input::-moz-placeholder{color:#ffffff4d}.fs-lc-inp input::placeholder{color:#ffffff4d}.fs-lc-inp button{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:var(--accent);color:#fff;cursor:pointer;transition:transform .15s,opacity .15s;flex-shrink:0}.fs-lc-inp button:hover{transform:scale(1.08)}.fs-lc-inp button:disabled{opacity:.4;cursor:default;transform:none}@media (max-width: 700px){.fs-overlay{align-items:stretch}.fs-layout{padding:60px 20px}.fs-info{gap:8px;padding:4px 0}.fs-stats{gap:16px}.fs-name{font-size:clamp(1.3rem,6vw,2rem)}.fs-tagline{font-size:clamp(.7rem,2.5vw,.85rem)}.fs-stat-value{font-size:clamp(1rem,4vw,1.4rem)}.fs-stat-label{font-size:.55rem}.fs-resume-btn{font-size:.75rem;padding:8px 18px}.fs-lc-header{font-size:.6rem;padding:6px 10px}.fs-lc-msgs{padding:6px 10px;gap:4px}.fs-lc-text{font-size:.7rem}.fs-lc-inp{padding:6px 8px}.fs-lc-inp input{font-size:.7rem;padding:6px 8px}.fs-lc-inp button{width:30px;height:30px}}.fs-controls{flex-shrink:0;display:flex;justify-content:center;align-items:center;gap:12px;padding:8px 16px;margin:0 auto 24px;border-radius:999px;background:#0006;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:2147483648;transition:background .3s}.fs-ctrl-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:#ffffff1a;color:#fffc;cursor:pointer;transition:background .2s,transform .2s;padding:0}.fs-ctrl-btn:hover{background:#fff3;transform:scale(1.1)}.fs-ctrl-btn--close:hover{background:#ff3c3c4d;color:#ff6b6b}.fs-ctrl-btn--exit:hover{background:#fff3}@media (max-width: 600px){.fs-controls{gap:8px;padding:6px 12px;margin:0 auto 16px}.fs-ctrl-btn{width:32px;height:32px}}.yt-info{padding:12px 8px}.yt-video-title{font-size:1.05rem;font-weight:500;color:var(--text);margin:0 0 10px;line-height:1.35}.yt-info-bar{display:flex;align-items:center;gap:6px;margin-bottom:10px;font-size:.72rem;color:var(--text-muted);flex-wrap:wrap;padding:2px 0}.yt-info-views{font-weight:500;color:var(--text-dim)}.yt-info-sep{opacity:.4;-webkit-user-select:none;-moz-user-select:none;user-select:none}.yt-info-hash{color:var(--primary);font-weight:500;cursor:pointer;transition:opacity .2s}.yt-info-hash:hover{opacity:.8}.yt-info-spacer{flex:1;min-width:8px}.yt-more-btn{background:none;border:1px solid var(--glass-border);color:var(--text-dim);font-size:.72rem;cursor:pointer;font-family:var(--font-sans);font-weight:500;white-space:nowrap;padding:5px 12px;border-radius:8px;transition:color .2s,border-color .2s;flex-shrink:0}.yt-more-btn:hover{color:var(--text)}.yt-desc-panel{background:var(--bg2);border:1px solid var(--glass-border);border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:12px;overflow:hidden;margin:0}.yt-desc-head{display:flex;align-items:center;justify-content:space-between}.yt-desc-avatar-row{display:flex;align-items:center;gap:8px}.yt-desc-avatar{width:32px;height:32px;border-radius:50%;-o-object-fit:cover;object-fit:cover;border:2px solid var(--glass-border)}.yt-desc-badge{font-size:.6rem;color:var(--text-muted);font-family:var(--font-mono);padding:2px 8px;border:1px solid var(--glass-border);border-radius:12px;background:var(--glass-bg)}.yt-desc-close{background:none;border:none;color:var(--text-dim);cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.yt-desc-close:hover{background:var(--hover-bg);color:var(--text)}.yt-desc-photo-stats-row{display:flex;gap:16px;align-items:stretch}.yt-desc-photo-col{flex:0 0 auto;width:220px;display:flex;flex-direction:column;justify-content:center;border-radius:10px;overflow:hidden;border:1px solid var(--glass-border);background:var(--glass-bg)}.yt-desc-photo-col img{width:100%;aspect-ratio:1;-o-object-fit:cover;object-fit:cover;display:block;position:relative;z-index:1;border-radius:3px}.yt-desc-photo-col .gsap_animated-border{width:100%;max-width:260px;margin:0 auto;position:relative;padding:3px;border-radius:6px;overflow:hidden}.yt-desc-photo-col .gsap_animated-border:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:conic-gradient(from var(--angle),var(--accent),var(--primary),#8b5cf6,var(--accent));animation:rotateBorder 3s linear infinite}@keyframes rotateBorder{to{--angle: 360deg}}.yt-desc-tags{background:var(--accent);color:#fff;font-size:.68rem;font-weight:500;padding:4px 10px;border-radius:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.yt-desc-tag{display:none}.yt-desc-tags-scroll{display:flex;gap:6px;overflow-x:auto;flex-wrap:nowrap;padding:4px 0;-webkit-overflow-scrolling:touch;scrollbar-width:none}.yt-desc-tags-scroll::-webkit-scrollbar{display:none}.yt-desc-tag-pill{flex-shrink:0;padding:4px 12px;border:1px solid var(--glass-border);border-radius:20px;font-size:.72rem;color:var(--accent);font-family:var(--font-display);font-weight:500;background:var(--glass-bg);white-space:nowrap}.yt-desc-tag-pill:hover{border-color:var(--accent);background:var(--hover-bg)}.yt-desc-bio{font-size:.82rem;color:var(--text-dim);line-height:1.6;position:relative;padding-left:16px}.yt-desc-bio-tag{font-size:.7rem;color:var(--text-muted);margin-top:6px}.yt-desc-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.yt-desc-stat{padding:10px;border-radius:10px;background:var(--glass-bg);border:1px solid var(--glass-border);display:flex;flex-direction:column;align-items:center;gap:2px}.yt-desc-stat-val{font-size:1rem;font-weight:700;color:var(--text)}.yt-desc-stat-lbl{font-size:.5rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.yt-desc-ach-label{font-size:.6rem;color:var(--text-muted);margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px}.yt-desc-ach-item{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:.72rem}.yt-desc-ach-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--glass-bg);border-radius:8px}.yt-desc-ach-title{color:var(--text);font-weight:500}.yt-desc-stats-col{flex:1;display:flex;flex-direction:column;gap:8px;justify-content:center}@media (max-width: 520px){.yt-desc-photo-stats-row{flex-direction:column;align-items:stretch;gap:12px}.yt-desc-photo-col{width:min(85vw,320px);margin:0 auto;flex:none;align-self:center;border-radius:10px}.yt-desc-photo-col img{border-radius:6px}.yt-desc-photo-col .gsap_animated-border{max-width:none;margin:0 auto}.yt-desc-stats-col{width:100%}.ab-intro-photo--center img{width:100vw;max-width:none;border-radius:0;border-left:none;border-right:none;aspect-ratio:16 / 9}}.yt-desc-ach-org{color:var(--text-muted);font-size:.6rem}.yt-channel-row{padding:16px 10px;margin-top:4px;border-top:1px solid rgba(255,255,255,.06)}.yt-channel-inner{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;max-width:100%}.yt-channel-info{display:flex;align-items:flex-start;gap:14px;flex:1;min-width:0}.yt-channel-avatar-btn{flex-shrink:0;padding:0;border:none;background:none;cursor:pointer;border-radius:50%;line-height:0;box-shadow:0 0 0 1px var(--glass-border);transition:box-shadow .2s}.yt-channel-avatar-btn:hover,.yt-channel-avatar-btn:focus-visible{box-shadow:0 0 0 2px var(--accent);outline:none}.yt-channel-avatar{width:48px;height:48px;border-radius:50%;-o-object-fit:cover;object-fit:cover;display:block}.yt-channel-details{flex:1;min-width:0}.yt-channel-title-btn{display:block;width:100%;padding:0;margin:0;border:none;background:none;cursor:pointer;text-align:left;color:inherit}.yt-channel-name{font-size:.98rem;font-weight:600;color:var(--text);font-family:var(--font-sans);letter-spacing:-.01em;line-height:1.35;display:block}.yt-channel-title-btn:hover .yt-channel-name{color:var(--accent)}.yt-channel-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:4px;font-size:.72rem;color:var(--text-muted);line-height:1.35}.yt-channel-handle{font-weight:500;color:var(--text-dim)}.yt-channel-meta-sep{opacity:.45;-webkit-user-select:none;-moz-user-select:none;user-select:none}.yt-channel-stat{color:var(--text-muted)}.yt-channel-actions{display:flex;align-items:center;flex-shrink:0;padding-top:2px}.yt-subscribe-btn{padding:0 22px;min-height:42px;background:var(--text);color:var(--bg);border:none;border-radius:999px;font-size:.82rem;font-weight:600;cursor:pointer;font-family:var(--font-sans);white-space:nowrap;letter-spacing:.01em;transition:transform .15s,filter .2s,background .2s,color .2s,box-shadow .2s}.yt-subscribe-btn:hover{filter:brightness(1.12);box-shadow:0 0 20px #f9731626}.yt-subscribe-btn--subbed{background:var(--glass-bg);color:var(--text-dim);border:1px solid var(--glass-border);display:inline-flex;align-items:center;gap:6px}.yt-subscribe-btn--subbed:hover{background:#ff3c3c1f;color:#ff3c3c;border-color:#ff3c3c4d}.comments-section{padding:0;margin-top:0}.comments-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-radius:10px;background:var(--card-bg);border:1px solid var(--glass-border);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:border-color .2s}.comments-bar:hover{border-color:color-mix(in srgb,var(--accent) 30%,var(--glass-border))}.comments-bar-count{font-size:.88rem;font-weight:600;color:var(--text);font-family:var(--font-display);display:inline-flex;align-items:center;gap:8px}.comments-bar-count:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent);flex-shrink:0}.comments-bar-actions{display:flex;align-items:center;gap:6px}.comments-sort-select{background:var(--bg2);border:1px solid var(--glass-border);color:var(--text-dim);font-size:.72rem;font-weight:500;font-family:var(--font-sans);cursor:pointer;padding:4px 22px 4px 10px;border-radius:8px;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23666'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;transition:border-color .2s,background .2s}.comments-sort-select:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 6%,var(--bg2))}.comments-filter-row{display:flex;gap:6px;padding:12px 0 10px;overflow-x:auto;scrollbar-width:none}.comments-filter-row::-webkit-scrollbar{display:none}.comments-filter-btn{flex-shrink:0;padding:5px 14px;border-radius:20px;border:1px solid var(--glass-border);background:transparent;color:var(--text-dim);font-size:.72rem;font-family:var(--font-sans);cursor:pointer;transition:all .2s;white-space:nowrap}.comments-filter-btn:hover{background:var(--glass-bg);color:var(--text)}.comments-filter-btn.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);font-weight:600}.comments-card{display:flex;gap:12px;padding:14px 12px;margin:0 -12px;border-radius:10px;transition:background .2s}.comments-card:hover{background:var(--hover-bg)}.comments-card+.comments-card{border-top:1px solid var(--glass-border)}.comments-card:last-child{border-bottom:none}.comments-card-avatar{width:40px;height:40px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;color:#fff;font-family:var(--font-sans);text-transform:uppercase;box-shadow:0 2px 8px #00000026;position:relative}.comments-card-body{flex:1;min-width:0}.comments-card-author{display:flex;align-items:center;gap:8px;margin-bottom:2px;flex-wrap:wrap}.comments-card-name{font-size:.78rem;font-weight:600;color:var(--text)}.comments-card-tag{font-size:.6rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:2px 10px;border-radius:4px;background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent);font-family:var(--font-mono);display:inline-flex;align-items:center;gap:4px}.comments-card-time{font-size:.68rem;color:var(--text-muted);font-family:var(--font-sans)}.comments-card-text{font-size:.82rem;color:var(--text-dim);line-height:1.55;margin:4px 0 0}.comments-card-actions{display:flex;align-items:center;gap:0;margin-top:8px}.comments-card-action{display:inline-flex;align-items:center;gap:5px;background:none;border:none;color:var(--text-muted);font-size:.68rem;cursor:pointer;padding:6px 14px 6px 10px;border-radius:20px;font-family:var(--font-sans);transition:background .2s,color .2s}.comments-card-action:hover{background:var(--glass-bg);color:var(--text)}.comments-card-action svg{flex-shrink:0}.comments-card-reply{font-weight:500;color:var(--text-dim);padding:6px 14px}.comments-show-bar{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px 0 4px}.comments-show-btn{display:inline-flex;align-items:center;gap:6px;background:none;border:1px solid var(--glass-border);color:var(--accent);font-size:.78rem;font-weight:500;cursor:pointer;padding:8px 20px;border-radius:999px;font-family:var(--font-sans);transition:all .2s}.comments-show-btn:hover{background:color-mix(in srgb,var(--accent) 10%,transparent);border-color:var(--accent)}.comments-show-btn svg{flex-shrink:0;transition:transform .2s}.comments-shrink{display:flex;align-items:center;gap:6px;width:100%;background:none;border:none;color:var(--text-muted);font-size:.72rem;font-weight:400;cursor:pointer;padding:8px 0 4px;justify-content:center;font-family:var(--font-sans);transition:color .2s,opacity .2s;opacity:.6}.comments-shrink:hover{opacity:1;color:var(--accent)}.comments-shrink svg{flex-shrink:0}.yt-desc-text{display:block;margin:8px 0 12px;padding:0 8px;font-size:.88rem;line-height:1.6;color:var(--text-dim)}@media (max-width:480px){.yt-desc-panel{padding:12px;border-radius:10px;margin:0 0 12px}.yt-desc-stats{grid-template-columns:repeat(4,1fr);gap:5px}.yt-desc-stat{padding:6px;border-radius:8px}.yt-desc-stat-val{font-size:.8rem}.yt-desc-stat-lbl{font-size:.45rem}.yt-desc-avatar{width:30px;height:30px}.yt-desc-tags{font-size:.62rem;padding:3px 8px}.yt-channel-inner{gap:10px;align-items:center}.yt-channel-avatar{width:40px;height:40px}.yt-channel-name{font-size:.88rem}.yt-channel-meta{font-size:.64rem}.comments-card-avatar{width:28px;height:28px;font-size:.6rem}.comments-card-text{font-size:.72rem}}@media (max-width:360px){.yt-desc-panel{padding:8px;margin:0 0 10px}.yt-desc-stats{grid-template-columns:repeat(4,1fr);gap:4px}.yt-desc-stat{padding:4px;border-radius:6px}.yt-desc-stat-val{font-size:.75rem}.yt-desc-stat-lbl{font-size:.4rem}}.yt-watch-page{display:none}.hero-btn{padding:10px 24px;font-family:var(--font-sans);font-size:.82rem;cursor:pointer;transition:all .25s;font-weight:500;border-radius:8px}.hero-btn-primary{background:var(--accent);color:var(--bg);border:none}.hero-btn-primary:hover{box-shadow:0 0 20px var(--glow);transform:translateY(-1px)}.hero-btn-secondary{background:var(--glass-bg);color:var(--text);border:1px solid var(--glass-border)}.hero-btn-secondary:hover{border-color:var(--accent);color:var(--accent)}.floating-elements{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:0}.float-el{position:absolute;border-radius:12px;border:1px solid var(--glass-border);background:var(--glass-bg);padding:10px 14px;font-size:.7rem;color:var(--text-muted);font-family:var(--font-mono)}.section{padding:48px 0}.section-header{display:flex;flex-direction:column;gap:6px;margin-bottom:28px}.section-header .pre{color:var(--primary);font-size:.7rem;font-family:var(--font-mono);display:flex;align-items:center;gap:8px}.section-header .pre .line{width:32px;height:1px;background:var(--accent)}.section-header .title{font-size:1.6rem;font-weight:700;letter-spacing:-.5px}.section-header .sub{font-size:.82rem;color:var(--text-dim);max-width:480px}.section-header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.availability-sign-text{display:inline-flex;align-items:center;gap:8px;padding:8px 18px;border-radius:20px;font-size:.78rem;font-weight:600;letter-spacing:.02em;font-family:var(--font-mono);text-transform:uppercase;border:1px solid var(--glass-border);background:var(--glass-bg);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--text-dim)}.avail-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;display:inline-block;transition:background .3s}.avail-dot.green{background:#22c55e;box-shadow:0 0 6px #22c55e80;animation:availPulse 2s ease-in-out infinite}.avail-dot.red{background:#ef4444;box-shadow:0 0 6px #ef444480}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.project-card{cursor:pointer;position:relative;border-radius:12px;background:var(--card-bg);border:1px solid var(--glass-border);padding:12px;transition:all .3s cubic-bezier(.4,0,.2,1)}.project-card:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:0 8px 30px #f9731614}.project-card.menu-open{z-index:10}.project-card .pc-thumb{position:relative;width:100%;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:var(--bg2);margin-bottom:10px;display:flex;align-items:center;justify-content:center;border:1px solid var(--glass-border);transition:all .3s cubic-bezier(.4,0,.2,1)}.project-card:hover .pc-thumb{border-color:var(--accent)}.project-card .pc-thumb-img,.cert-item .ci-thumb-img,.hobby-item .hi-thumb-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .4s cubic-bezier(.4,0,.2,1)}.project-card:hover .pc-thumb-img{transform:scale(1.05)}.project-card .pc-thumb-icon{font-size:1.8rem;color:var(--primary);opacity:.5;font-family:var(--font-display);font-weight:700;transition:all .3s}.project-card:hover .pc-thumb-icon{opacity:.8;transform:scale(1.1)}.project-card .pc-thumb-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(249,115,22,.1),transparent);opacity:0;transition:opacity .3s}.project-card:hover .pc-thumb-overlay{opacity:1}.project-card .pc-play-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s}.project-card:hover .pc-play-overlay{opacity:1}.project-card .pc-play-btn{width:40px;height:40px;border-radius:50%;background:#ffffffe6;display:flex;align-items:center;justify-content:center;transform:scale(.8);transition:transform .3s cubic-bezier(.4,0,.2,1)}.project-card:hover .pc-play-btn{transform:scale(1)}.project-card .pc-duration{position:absolute;bottom:6px;right:6px;padding:2px 6px;background:#000c;border-radius:4px;color:#fff;font-size:.6rem;font-family:var(--font-mono);z-index:2}.project-card .pc-body{padding:0 4px}.project-card .pc-title{font-size:.88rem;font-weight:600;color:var(--text);font-family:var(--font-display);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color .2s}.project-card:hover .pc-title{color:var(--accent)}.project-card .pc-meta{font-size:.72rem;color:var(--text-muted);margin-top:3px;display:flex;align-items:center;gap:6px}.project-card .pc-meta-dot{width:3px;height:3px;border-radius:50%;background:var(--text-muted);flex-shrink:0}.project-card .pc-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.project-card .pc-tag{font-size:.6rem;padding:2px 8px;border:1px solid var(--glass-border);color:var(--text-muted);border-radius:4px;transition:all .2s}.project-card:hover .pc-tag{border-color:var(--accent);color:var(--accent);background:#f973160d}.view-toggle{display:flex;gap:4px;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:8px;padding:3px}.view-toggle-btn{width:30px;height:28px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:6px;transition:all .2s}.view-toggle-btn:hover{color:var(--text-dim)}.view-toggle-btn.active{background:var(--card-bg);color:var(--accent);box-shadow:0 1px 3px #0003}@media (max-width: 640px){.view-toggle{padding:2px;gap:2px}.view-toggle-btn{width:24px;height:22px;border-radius:4px}.view-toggle-btn svg{width:11px;height:11px}}.project-list{display:flex;flex-direction:column;gap:10px}.project-list .project-card{display:flex;flex-direction:row;gap:16px;padding:14px;align-items:flex-start}.project-list .pc-thumb{width:180px;min-height:100px;aspect-ratio:16/9;flex-shrink:0;margin-bottom:0}.project-list .pc-body-row{flex:1;flex-direction:column;align-items:flex-start;gap:4px}.project-list .pc-menu{position:absolute;top:14px;right:14px}@media (max-width: 640px){.project-list .project-card{flex-direction:column;gap:10px}.project-list .pc-thumb{width:100%;min-height:auto}}.exp-page .exp-columns{display:flex;gap:32px;align-items:flex-start}.exp-page .exp-left{flex:1;min-width:0}.exp-page .exp-right{width:320px;flex-shrink:0;position:sticky;top:80px}.exp-ach-list{display:flex;flex-direction:column;gap:6px;max-height:420px;overflow-y:auto;padding-right:4px}.exp-ach-list::-webkit-scrollbar{width:4px}.exp-ach-list::-webkit-scrollbar-track{background:transparent}.exp-ach-list::-webkit-scrollbar-thumb{background:var(--glass-border);border-radius:2px}.exp-ach-item{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:10px;background:var(--card-bg);border:1px solid var(--glass-border);transition:border-color .2s,background .2s,box-shadow .2s}.exp-ach-item.has-link{cursor:pointer}.exp-ach-item.has-link:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 4%,var(--card-bg));box-shadow:0 4px 16px color-mix(in srgb,var(--accent) 8%,transparent)}.exp-ach-item.has-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.exp-ach-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:1px solid var(--glass-border);border-radius:6px;flex-shrink:0;color:var(--accent)}.exp-ach-body{flex:1;min-width:0}.exp-ach-title{font-size:.82rem;font-weight:600;color:var(--text);line-height:1.3}.exp-ach-org{font-size:.68rem;color:var(--primary);margin-top:2px}.exp-ach-desc{font-size:.68rem;color:var(--text-muted);margin-top:3px;line-height:1.4}.exp-ach-arrow{flex-shrink:0;color:var(--text-muted);margin-top:3px;opacity:0;transition:opacity .2s,transform .2s}.exp-ach-item.has-link:hover .exp-ach-arrow{opacity:1;transform:translate(2px,-2px)}@media (max-width: 1023px){.exp-page .exp-columns{flex-direction:column;gap:24px}.exp-page .exp-right{width:100%;position:static}.exp-ach-list{max-height:none;overflow-y:visible}}.timeline{position:relative}.timeline-item{border-left:1px solid rgba(59,130,246,.2);padding:0 0 32px 24px;position:relative}.timeline-item:last-child{padding-bottom:0}.timeline-item:before{content:"";position:absolute;left:-4px;top:6px;width:8px;height:8px;background:var(--primary);border-radius:50%}.timeline-item .tl-period{font-size:.68rem;color:var(--text-muted);margin-bottom:2px;font-family:var(--font-mono)}.timeline-item .tl-role{font-size:.95rem;font-weight:600;color:var(--text);font-family:var(--font-display)}.timeline-item .tl-company{font-size:.78rem;color:var(--primary);margin-bottom:6px}.timeline-item .tl-desc{font-size:.78rem;color:var(--text-dim);line-height:1.6}.skills-grid{display:flex;flex-wrap:wrap;gap:6px}.skill-item{padding:6px 14px;border:1px solid var(--glass-border);font-size:.75rem;color:var(--text-dim);transition:all .2s;border-radius:6px;background:var(--glass-bg)}.skill-item:hover{border-color:var(--primary);color:var(--primary);background:var(--hover-bg)}.page-loading{min-height:200px;display:flex;align-items:center;justify-content:center}.page-loading:after{content:"";width:24px;height:24px;border:2px solid var(--glass-border);border-top-color:var(--primary);border-radius:50%;animation:gt-spin .6s linear infinite}@keyframes sk-pulse{0%,to{opacity:.3}50%{opacity:.6}}.sk-page{padding:16px;animation:sk-pulse 1.5s ease-in-out infinite}.sk-nav{display:flex;align-items:center;gap:12px;margin-bottom:20px}.sk-row{display:flex;gap:8px;flex-wrap:wrap}.sk-chip{width:80px;height:28px;background:var(--card);border-radius:14px}.sk-video{width:100%;aspect-ratio:16/9;background:var(--card);border-radius:12px;margin-bottom:20px}.sk-info{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.sk-readme{display:flex;flex-direction:column;gap:12px}.sk-block{height:16px;background:var(--card);border-radius:6px;width:100%}.sk-block--sm{width:40%}.sk-block--md{width:60%}.sk-block--lg{width:80%;height:24px}.sk-tag{width:60px;height:22px;background:var(--card);border-radius:6px}.skill-tabs{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}.skill-tab{padding:6px 0;border:none;background:none;color:var(--text-muted);font-family:var(--font-sans);font-size:.82rem;cursor:pointer;transition:color .2s;font-weight:400;letter-spacing:.01em;position:relative}.skill-tab:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:var(--primary);transform:scaleX(0);transition:transform .2s}.skill-tab:hover{color:var(--text)}.skill-tab.active{color:var(--primary);font-weight:500}.skill-tab.active:after{transform:scaleX(1)}.skill-cloud{display:flex;flex-wrap:wrap;gap:10px;padding:8px 0;min-height:160px;align-content:flex-start}.skill-chip{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:1px solid var(--glass-border);border-radius:20px;background:var(--glass-bg);cursor:default;transition:border-color .2s,box-shadow .2s}.skill-chip-static{animation:none!important;transform:none!important}.skill-chip:hover{border-color:var(--accent);transform:scale(1.08);box-shadow:0 4px 14px #0000001a}.skill-chip-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:1px solid var(--glass-border);border-radius:6px;flex-shrink:0;background:var(--hover-bg);overflow:hidden}.skill-chip-icon svg{width:16px;height:16px;display:block}.skill-chip-name{font-size:.82rem;color:var(--text);font-weight:500;font-family:var(--font-display)}@keyframes chipFloat{0%{transform:translate(0)}to{transform:translate(var(--dx),var(--dy))}}@keyframes chipEnter{0%{opacity:0;transform:scale(.8) translateY(16px)}to{opacity:1;transform:scale(1) translateY(0)}}.skill-marquee-wrap{overflow:hidden;width:100%;margin-top:12px;padding:14px 0 10px;border-top:1px solid var(--glass-border);mask-image:linear-gradient(to right,transparent,black 6%,black 94%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,black 6%,black 94%,transparent)}.skill-marquee-track{display:flex;gap:12px;width:-moz-max-content;width:max-content;animation:skillMarquee 28s linear infinite}.skill-marquee-item.skill-marquee-item--text{width:auto;min-width:-moz-max-content;min-width:max-content;height:auto;padding:8px 16px;border-radius:999px;font-size:.76rem;font-weight:600;font-family:var(--font-sans);letter-spacing:.02em;color:var(--text);border:1px solid var(--border);background:color-mix(in srgb,var(--bg2) 92%,var(--accent) 6%);flex-shrink:0;box-shadow:0 1px color-mix(in srgb,var(--text) 6%,transparent)}.skill-marquee-item.skill-marquee-item--text:hover{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));color:var(--accent);transform:none}@keyframes skillMarquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.skill-marquee-item{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:1px solid var(--glass-border);border-radius:10px;background:var(--glass-bg);flex-shrink:0;transition:border-color .2s,transform .2s}.skill-marquee-item:not(.skill-marquee-item--text){width:40px;height:40px}.skill-marquee-item:not(.skill-marquee-item--text):hover{border-color:var(--accent);transform:scale(1.1)}.skill-marquee-item svg{width:22px;height:22px;display:block}@media (pointer: coarse){.skill-marquee-track{animation-duration:30s}}.blog-count-inline{font-size:.72rem;color:var(--text-muted);font-weight:400}.blog-hobbies-line{margin-top:8px;font-size:.75rem;color:var(--text-muted);line-height:1.6}.blog-hobbies-line strong{color:var(--text);font-weight:600}.blog-row-arrow{display:flex;align-items:center;justify-content:center;color:var(--text-muted);flex-shrink:0;width:24px}.cert-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.cert-item{position:relative;border-radius:14px;background:var(--card-bg);border:1px solid var(--glass-border);overflow:hidden;cursor:pointer;transition:all .3s}.cert-item:before{content:"";display:block;height:4px;background:linear-gradient(90deg,var(--accent),var(--primary))}.cert-item:hover{transform:translateY(-3px);border-color:var(--accent);box-shadow:0 8px 30px color-mix(in srgb,var(--accent) 15%,transparent)}.cert-item .ci-thumb{position:relative;width:100%;aspect-ratio:16 / 9;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 18%,var(--bg2)),var(--bg2));display:flex;align-items:center;justify-content:center;overflow:hidden}.cert-item .ci-thumb-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .4s cubic-bezier(.4,0,.2,1)}.cert-item:hover .ci-thumb-img{transform:scale(1.05)}.cert-item .ci-thumb-icon{font-size:2.2rem;font-weight:700;font-family:var(--font-display);color:var(--accent);opacity:.5}.cert-item .ci-body{padding:14px 16px 16px}.cert-item .ci-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:4px}.cert-item h4{font-size:.9rem;font-weight:600;color:var(--text);font-family:var(--font-display);margin:0;line-height:1.35}.cert-item .ci-date{font-size:.58rem;color:var(--text-muted);font-family:var(--font-mono);white-space:nowrap;padding:2px 8px;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:4px;flex-shrink:0;margin-top:2px}.cert-item .ci-org{font-size:.75rem;color:var(--primary);font-weight:500;margin-top:2px}.cert-item .ci-link{display:inline-flex;align-items:center;gap:4px;margin-top:10px;font-size:.68rem;color:var(--text-dim);text-decoration:none;padding:4px 14px;border:1px solid var(--glass-border);border-radius:20px;transition:all .2s}.cert-item .ci-link:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.hobby-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}.hobby-item{position:relative;border-radius:14px;background:var(--card-bg);border:1px solid var(--glass-border);padding:24px 16px 18px;text-align:center;cursor:pointer;transition:all .3s}.hobby-item:hover{transform:translateY(-3px);border-color:var(--accent);box-shadow:0 8px 24px color-mix(in srgb,var(--accent) 12%,transparent)}.hobby-item .hi-thumb{width:64px;height:64px;border-radius:50%;margin:0 auto 14px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 22%,var(--card-bg)),var(--card-bg));border:2px solid color-mix(in srgb,var(--accent) 25%,var(--glass-border));display:flex;align-items:center;justify-content:center;overflow:hidden;transition:border-color .2s,transform .2s}.hobby-item:hover .hi-thumb{border-color:var(--accent);transform:scale(1.06)}.hobby-item .hi-thumb-img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.hobby-item .hi-thumb-icon{font-size:1.5rem;font-weight:700;font-family:var(--font-display);color:var(--accent)}.hobby-item .hi-body{padding:0}.hobby-item h4{font-size:.95rem;font-weight:600;color:var(--text);font-family:var(--font-display);margin:0 0 6px;line-height:1.3}.hobby-item p{font-size:.72rem;color:var(--text-muted);line-height:1.5;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.contact-section{text-align:center;padding:48px 0}.contact-section h2{font-size:1.4rem;margin-bottom:8px}.contact-section .email{color:var(--primary);font-size:.9rem;margin-bottom:20px;display:inline-block;text-decoration:none}.contact-section .email:hover{text-decoration:underline}.contact-links{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.contact-link{padding:8px 18px;border:1px solid var(--glass-border);font-size:.78rem;color:var(--text-dim);text-decoration:none;transition:all .2s;font-family:var(--font-sans);border-radius:8px}.contact-link:hover{border-color:var(--accent);color:var(--accent);background:var(--glass-bg)}.about-section{max-width:640px}.about-section p{font-size:.85rem;color:var(--text-dim);line-height:1.7;margin-bottom:14px}.ab-intro-stack{display:flex;flex-direction:column;gap:24px;margin-bottom:36px}.ab-intro-blocks-col{display:flex;flex-direction:column;gap:16px}@media (min-width: 769px){.ab-intro-stack{flex-direction:row;align-items:flex-start;gap:36px}.ab-intro-photo-col{flex:0 0 auto;width:320px;position:sticky;top:80px}.ab-intro-blocks-col{flex:1;min-width:0;display:flex;flex-direction:column;gap:20px}}.ab-intro-block{background:var(--card-bg);border:1px solid var(--glass-border);border-radius:14px;padding:20px 24px;transition:background .3s,border-color .3s}.ab-intro-photo--center{display:flex;justify-content:center}.ab-intro-photo--center img{width:100%;max-width:320px;height:auto;aspect-ratio:4 / 5;-o-object-fit:cover;object-fit:cover;border-radius:20px;border:2px solid var(--glass-border);box-shadow:0 12px 48px color-mix(in srgb,var(--bg) 40%,rgba(0,0,0,.35)),0 0 0 1px color-mix(in srgb,var(--accent) 15%,transparent);display:block}@media (max-width: 640px){.ab-intro-photo--center img{max-width:100%}}[data-theme-mode=light] .ab-intro-block{background:#f0f0f5;border-color:#0000000f}.ab-intro-row{display:flex;gap:28px;align-items:flex-start;margin-bottom:32px}.ab-intro-photo{flex-shrink:0}.ab-intro-photo img{width:200px;height:240px;-o-object-fit:cover;object-fit:cover;border-radius:16px;border:2px solid var(--glass-border);box-shadow:0 8px 30px #0000004d}.ab-intro-text{flex:1;min-width:0}.ab-intro-brief{font-size:.92rem;line-height:1.8;color:var(--text);margin-bottom:8px}.ab-intro-full{font-size:.88rem;line-height:1.8;color:var(--text-dim);margin-bottom:8px;overflow:hidden}.ab-more-btn{display:inline-flex;align-items:center;gap:4px;background:none;border:1px solid var(--glass-border);color:var(--primary);font-size:.75rem;cursor:pointer;padding:4px 14px;border-radius:20px;font-family:var(--font-sans);transition:all .2s}.ab-more-btn:hover{border-color:var(--primary);background:var(--hover-bg)}.ab-more-arrow{display:inline-flex;transition:transform .3s}.ab-more-arrow.open{transform:rotate(180deg)}.ab-job-detail{margin-bottom:28px}.ab-job-box{display:flex;flex-direction:column;gap:2px;padding:4px;border-radius:10px}.ab-job-item{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-radius:8px;gap:12px;transition:background .15s}.ab-job-item:hover{background:var(--hover-bg)}.ab-job-role{font-size:.82rem;font-weight:600;color:var(--text);font-family:var(--font-display)}.ab-job-company{font-size:.7rem;color:var(--primary);margin-top:2px}.ab-job-period{font-size:.68rem;color:var(--text-muted);font-family:var(--font-mono);flex-shrink:0}.ab-tagline{font-size:.82rem;color:var(--accent);font-family:var(--font-mono);margin-bottom:24px;padding:10px 16px;background:var(--glass-bg);border-radius:8px;border:1px solid var(--glass-border);line-height:1.5}.ab-tagline-icon{font-size:1rem;margin-right:4px;opacity:.5}.ab-stats{display:flex;gap:12px;margin-bottom:28px;flex-wrap:wrap}.ab-stat-card{flex:1;min-width:100px;padding:16px;text-align:center;border-radius:10px;display:flex;flex-direction:column;gap:4px;background:var(--card-bg);border:1px solid var(--glass-border)}.ab-stat-val{font-size:1.6rem;font-weight:700;color:var(--accent);font-family:var(--font-display)}.ab-stat-lbl{font-size:.65rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.ab-section-label{font-size:.65rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.8px;margin-bottom:12px;font-weight:500}.ab-skills-row{display:flex;gap:6px;flex-wrap:wrap}.ab-skill-chip{padding:5px 12px;border-radius:8px;font-size:.72rem;color:var(--text-dim);border:1px solid var(--glass-border);display:inline-flex;align-items:center;gap:4px}.ab-edu-list{display:flex;flex-direction:column;gap:8px}.ab-edu-item{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-radius:10px;gap:12px;background:var(--card-bg);border:1px solid var(--glass-border)}.ab-edu-degree{font-size:.85rem;font-weight:600;color:var(--text);font-family:var(--font-display)}.ab-edu-school{font-size:.72rem;color:var(--text-dim);margin-top:2px}.ab-edu-right{text-align:right;flex-shrink:0}.ab-edu-period{font-size:.68rem;color:var(--text-muted);font-family:var(--font-mono);display:block}.ab-edu-grade{font-size:.7rem;color:var(--accent);font-weight:600;margin-top:2px;font-family:var(--font-mono);display:block}.ab-ach-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px}.ab-ach-item{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:10px;background:var(--card-bg);border:1px solid var(--glass-border)}.ab-ach-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:1px solid var(--glass-border);border-radius:6px;flex-shrink:0;color:var(--accent)}.ab-ach-title{font-size:.8rem;font-weight:600;color:var(--text)}.ab-ach-org{font-size:.68rem;color:var(--primary);margin-top:1px}.ab-ach-desc{font-size:.68rem;color:var(--text-muted);margin-top:2px}.ab-hobby-row{display:flex;gap:8px;flex-wrap:wrap}.ab-hobby-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:8px;font-size:.72rem;color:var(--text-dim);border:1px solid var(--glass-border);cursor:default}.ab-hobby-chip:hover{border-color:var(--hover-border);color:var(--text)}.ab-hobby-icon{font-size:.85rem}.ab-hobby-name{font-family:var(--font-display)}.ab-cta-row{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.blog-empty{color:var(--text-muted);font-size:.82rem;margin-bottom:20px;line-height:1.5;text-align:center;padding:40px 20px;border:1px dashed var(--glass-border);border-radius:12px}.blog-feed{display:flex;flex-direction:column;max-width:720px;margin:0 auto}.blog-feed-sep{border:none;border-top:1px solid var(--glass-border);margin:0}.blog-meta-dot{width:3px;height:3px;border-radius:50%;background:var(--text-muted);flex-shrink:0;display:inline-block;vertical-align:middle;margin:0 8px}.blog-featured{display:flex;flex-direction:row;gap:24px;margin-bottom:28px;cursor:pointer;transition:transform .2s}.blog-featured:hover{transform:translateY(-2px)}.blog-featured:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:8px}.blog-featured-thumb{width:340px;min-height:200px;flex-shrink:0;border-radius:14px;overflow:hidden;background:var(--bg2);display:flex;align-items:center;justify-content:center}.blog-featured-img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;transition:transform .4s}.blog-featured:hover .blog-featured-img{transform:scale(1.04)}.blog-featured-fallback{font-size:2.5rem;font-weight:700;color:var(--accent);font-family:var(--font-display);opacity:.4;padding:40px}.blog-featured-body{flex:1;display:flex;flex-direction:column;justify-content:center;gap:8px}.blog-featured-badge{display:inline-block;font-size:.6rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);font-family:var(--font-mono)}.blog-featured-title{font-size:1.5rem;font-weight:700;color:var(--text);font-family:var(--font-display);line-height:1.25;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.blog-featured:hover .blog-featured-title{color:var(--accent)}.blog-featured-desc{font-size:.85rem;color:var(--text-dim);line-height:1.5;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.blog-featured-meta{font-size:.72rem;color:var(--text-muted);font-family:var(--font-mono);display:flex;align-items:center;margin-top:2px}.blog-card{display:flex;flex-direction:row;gap:20px;padding:22px 0;cursor:pointer;text-align:left;background:transparent;transition:transform .2s}.blog-card:hover{transform:translate(3px)}.blog-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:8px}.blog-card-thumb{width:150px;height:110px;flex-shrink:0;border-radius:10px;overflow:hidden;background:var(--bg2);display:flex;align-items:center;justify-content:center}.blog-card-img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;transition:transform .3s}.blog-card:hover .blog-card-img{transform:scale(1.06)}.blog-card-fallback{font-size:1.4rem;font-weight:700;color:var(--accent);font-family:var(--font-display);opacity:.5}.blog-card-body{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:5px}.blog-card-title{font-size:1.08rem;font-weight:600;color:var(--text);font-family:var(--font-display);margin:0;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.blog-card:hover .blog-card-title{color:var(--accent)}.blog-card-desc{font-size:.78rem;color:var(--text-dim);line-height:1.5;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.blog-card-meta{font-size:.7rem;color:var(--text-muted);font-family:var(--font-mono);display:flex;align-items:center}.blog-card-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:2px}.blog-card-tag{font-size:.6rem;padding:2px 8px;border:1px solid var(--glass-border);color:var(--text-muted);border-radius:4px}.blog-actions{display:flex;align-items:center;gap:2px;margin-top:6px}.blog-action-btn{display:inline-flex;align-items:center;gap:3px;padding:4px 8px;border:none;background:none;color:var(--text-muted);font-size:.7rem;font-family:var(--font-sans);cursor:pointer;border-radius:6px;transition:all .2s;position:relative;z-index:2}.blog-action-btn svg{width:14px;height:14px;transition:transform .2s}.blog-action-btn:hover{color:var(--text-dim);background:var(--hover-bg)}.blog-action-btn:active svg{transform:scale(1.25)}.blog-action-btn--liked{color:#2ecc71}.blog-action-btn--liked:hover{color:#2ecc71;background:#2ecc711a}.blog-action-btn--disliked{color:#e74c3c}.blog-action-btn--disliked:hover{color:#e74c3c;background:#e74c3c1a}.blog-action-sep{width:1px;height:14px;background:var(--glass-border);margin:0 4px}.blog-action-count{min-width:10px;text-align:center}.blog-toast{position:fixed;bottom:80px;left:50%;transform:translate(-50%);background:var(--card-bg);border:1px solid var(--glass-border);color:var(--text);padding:8px 18px;border-radius:10px;font-size:.78rem;z-index:99999;box-shadow:0 8px 30px #0000004d;pointer-events:none;animation:toastIn .25s ease-out}@keyframes toastIn{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.blog-card-shimmer{width:150px;height:110px;border-radius:10px;flex-shrink:0;background:linear-gradient(90deg,var(--glass-bg) 25%,var(--border) 50%,var(--glass-bg) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.blog-card-shimmer-line{height:14px;border-radius:4px;background:linear-gradient(90deg,var(--glass-bg) 25%,var(--border) 50%,var(--glass-bg) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}@media (max-width: 640px){.blog-featured{flex-direction:column;gap:12px}.blog-featured-thumb{width:100%;height:180px}.blog-featured-body{padding:0}.blog-featured-title{font-size:1.2rem}.blog-card{gap:12px;padding:16px 0}.blog-card-thumb{width:90px;height:90px}.blog-card-title{font-size:.9rem}.blog-feed{gap:0;margin:0}}body:has(.notion-reader-overlay) div[style*="z-index: 99999"][style*="position: fixed"]:not(.tst-toolbar){display:none!important}.notion-card{cursor:pointer}.notion-card-body{padding:0}.notion-card-date{font-size:.63rem;color:var(--text-muted);font-family:var(--font-mono);display:block;margin-bottom:4px}.notion-card-preview{font-size:.72rem;color:var(--text-dim);line-height:1.5;margin-top:4px}.notion-reader-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:flex-start;justify-content:center;padding:40px 20px;overflow-y:auto}.notion-reader{background:var(--bg);border-radius:12px;width:95%;max-width:880px;max-height:90vh;overflow-y:auto;position:relative;border:1px solid var(--glass-border)}.notion-reader-close{position:absolute;top:12px;right:12px;z-index:20;width:36px;height:36px;border-radius:50%;border:1px solid var(--glass-border);background:#0009;color:#fff;font-size:1.3rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;line-height:1}.notion-reader-close:hover{background:#000000e6}.notion-reader-cover{width:100%;height:240px;overflow:hidden}.notion-reader-cover img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.notion-reader-body{padding:32px 40px 48px}.notion-reader-meta{font-size:.72rem;color:var(--text-muted);font-family:var(--font-mono);margin-bottom:8px}.notion-reader-title{font-size:2rem;font-weight:700;line-height:1.2;letter-spacing:-.5px;margin-bottom:24px;color:var(--text)}.notion-content{padding:0 40px 40px}.nt-header{padding:32px 40px 0}.nt-header h1{font-size:1.8rem;font-weight:700;line-height:1.2;letter-spacing:-.5px;margin:0 0 6px;color:var(--text);font-family:var(--font-display)}.nt-date{font-size:.75rem;color:var(--text-muted);font-family:var(--font-mono)}.nt-render{font-size:.92rem;line-height:1.8;color:var(--text-dim)}.nt-render h1.nt-h1{font-size:1.5rem;font-weight:700;color:var(--text);margin:28px 0 10px}.nt-render h2.nt-h2{font-size:1.25rem;font-weight:600;color:var(--text);margin:24px 0 8px}.nt-render h3.nt-h3{font-size:1.05rem;font-weight:600;color:var(--text);margin:20px 0 6px}.nt-render p{margin-bottom:12px}.nt-render ul.nt-ul,.nt-render ol.nt-ol{padding-left:24px;margin:8px 0}.nt-render li{margin-bottom:4px}.nt-render blockquote.nt-quote{border-left:3px solid var(--accent);padding:8px 16px;margin:16px 0;background:var(--glass-bg);border-radius:0 8px 8px 0;color:var(--text)}.nt-render pre.nt-code{background:var(--bg2);border:1px solid var(--glass-border);border-radius:8px;padding:16px 20px;overflow-x:auto;margin:16px 0}.nt-render pre.nt-code code{font-family:var(--font-mono);font-size:.8rem;line-height:1.6;background:none;padding:0}.nt-render code{background:#f973161a;padding:1px 5px;border-radius:4px;font-family:var(--font-mono);font-size:.82rem;color:var(--accent)}.nt-render a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.nt-render a:hover{opacity:.8}.nt-render hr.nt-divider{border:none;border-top:1px solid var(--glass-border);margin:24px 0}.nt-render .nt-todo{display:flex;align-items:center;gap:8px;margin-bottom:6px}.nt-render .nt-todo input[type=checkbox]{accent-color:var(--accent)}.nt-render .nt-callout{display:flex;gap:10px;padding:14px 18px;margin:16px 0;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:8px}.nt-render .nt-callout-icon{font-size:1.3rem;line-height:1.4}.nt-render details.nt-toggle{margin:12px 0}.nt-render details.nt-toggle summary{cursor:pointer;font-weight:500;color:var(--text)}.nt-render details.nt-toggle summary:hover{color:var(--accent)}.nt-render figure.nt-image{margin:20px 0}.nt-render figure.nt-image img{max-width:100%;border-radius:8px;border:1px solid var(--glass-border)}.nt-render .nt-video-wrap{position:relative;margin:16px 0;border-radius:8px;overflow:hidden}.nt-render .nt-video-wrap .nt-video-inner{position:relative;padding-bottom:56.25%;height:0}.nt-render .nt-video-wrap .nt-video-inner iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border-radius:8px}.nt-render .nt-video-thumb:hover img{filter:brightness(.7)}.nt-render .nt-play-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:60px;height:60px;border-radius:50%;background:#000000b3;display:flex;align-items:center;justify-content:center;transition:transform .2s,background .2s}.nt-render .nt-video-thumb:hover .nt-play-btn{transform:translate(-50%,-50%) scale(1.1);background:#f00c}.nt-render figure.nt-video video{max-width:100%;border-radius:8px}.bp-content .nt-video-wrap{position:relative;margin:16px 0;border-radius:8px;overflow:hidden}.bp-content .nt-video-wrap .nt-video-inner{position:relative;padding-bottom:56.25%;height:0}.bp-content .nt-video-wrap .nt-video-inner iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border-radius:8px}.bp-content .nt-play-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transition:transform .2s,background .2s;width:48px;height:48px;background:#0009;border-radius:50%;display:flex;align-items:center;justify-content:center}.bp-content .nt-video-thumb:hover .nt-play-btn{transform:translate(-50%,-50%) scale(1.1);background:#f00c}.bp-content figure.nt-video video{max-width:100%;border-radius:8px}.nt-render .nt-bookmark{display:block;padding:12px 16px;border:1px solid var(--glass-border);border-radius:8px;margin:12px 0;color:var(--accent);font-size:.82rem;word-break:break-all;text-decoration:none}.nt-render .nt-bookmark:hover{border-color:var(--accent);background:var(--hover-bg)}.nt-render .nt-columns{display:flex;gap:20px;margin:16px 0}.nt-render .nt-column{flex:1;min-width:0}.nt-render table.nt-table{width:100%;border-collapse:collapse;margin:16px 0;font-size:.82rem}.nt-render table.nt-table td{padding:8px 12px;border:1px solid var(--glass-border)}.nt-render .nt-unsupported{opacity:.5;font-style:italic}.nt-render strong{color:var(--text);font-weight:600}@media (max-width:768px){.nt-header{padding:20px 20px 0}.notion-content{padding:0 20px 24px}.nt-header h1{font-size:1.3rem}.nt-render{font-size:.85rem}.nt-render h1.nt-h1{font-size:1.2rem}.nt-render h2.nt-h2{font-size:1.05rem}.nt-render h3.nt-h3{font-size:.95rem}.nt-render pre.nt-code{padding:12px 14px;font-size:.72rem}.nt-render blockquote.nt-quote{padding:6px 12px;margin:12px 0}.nt-render ul.nt-ul,.nt-render ol.nt-ol{padding-left:18px}.nt-render .nt-columns{flex-direction:column;gap:12px}}.notion-reader-content{font-size:.92rem;line-height:1.8;color:var(--text-dim)}.notion-reader-content h2{font-size:1.3rem;font-weight:600;color:var(--text);margin:28px 0 8px}.notion-reader-content h3{font-size:1.1rem;font-weight:600;color:var(--text);margin:22px 0 6px}.notion-reader-content p{margin-bottom:12px}.notion-reader-content ul,.notion-reader-content ol{padding-left:24px;margin:8px 0}.notion-reader-content li{margin-bottom:4px}.notion-reader-content blockquote{border-left:3px solid var(--primary);padding:8px 18px;margin:16px 0;color:var(--text);background:#58a6ff0a;border-radius:0 6px 6px 0}.notion-reader-content pre{background:#00000040;padding:16px 20px;border-radius:8px;overflow-x:auto;font-size:.8rem;line-height:1.6;border:1px solid var(--glass-border);margin:16px 0;font-family:var(--font-mono);color:var(--text-dim)}.notion-reader-content code{font-family:var(--font-mono);background:#0003;padding:2px 6px;border-radius:4px;font-size:.85em}.notion-reader-content pre code{background:none;padding:0}.notion-editor-wrap .notion-cover-input:focus{border-color:var(--primary)}.notion{border:1px solid var(--glass-border);background:var(--glass-bg);margin-bottom:20px;border-radius:10px;overflow:hidden}.notion-tb{display:flex;gap:2px;padding:8px 14px;border-bottom:1px solid var(--glass-border);background:#00000026;flex-wrap:wrap}.notion-tb button{padding:4px 10px;background:none;border:none;color:var(--text-dim);cursor:pointer;font-family:var(--font-sans);font-size:.75rem}.notion-tb button:hover{color:var(--text)}.notion-tb .sep{width:1px;background:var(--glass-border);margin:2px 6px}.notion-title{width:100%;padding:16px 16px 4px;background:transparent;border:none;outline:none;color:var(--text);font-family:var(--font-display);font-size:1.15rem;font-weight:600}.notion-editor{min-height:170px;padding:4px 16px 16px;outline:none;color:var(--text-dim);font-size:.82rem;line-height:1.8;font-family:var(--font-sans)}.notion-editor:focus{color:var(--text)}.notion-editor:empty:before{content:attr(data-placeholder);color:var(--text-muted);opacity:.3;pointer-events:none}.notion-editor h2{font-size:1.05rem;font-weight:600;color:var(--text);margin:14px 0 6px}.notion-editor h3{font-size:.95rem;font-weight:600;color:var(--text);margin:12px 0 4px}.notion-editor ul,.notion-editor ol{padding-left:22px;margin:6px 0}.notion-editor blockquote{border-left:2px solid var(--primary);padding:6px 14px;margin:8px 0;color:var(--text-dim)}.notion-editor pre{background:#0003;padding:12px 16px;font-size:.75rem;overflow-x:auto;border:1px solid var(--glass-border);margin:8px 0;border-radius:6px}.notion-hints{position:absolute;top:0;left:16px;z-index:10;background:var(--bg2);border:1px solid var(--glass-border);padding:6px;box-shadow:0 12px 40px #00000080;min-width:160px;border-radius:10px;max-height:300px;overflow-y:auto}.notion-hint{display:flex;align-items:center;gap:8px;padding:6px 10px;font-size:.75rem;color:var(--text-dim);cursor:pointer;border-radius:4px}.notion-hint:hover{background:var(--hover-bg);color:var(--primary)}.nh-icon{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border:1px solid var(--glass-border);font-size:.55rem;border-radius:4px}.notion-foot{padding:10px 16px;border-top:1px solid var(--glass-border);display:flex;gap:12px;align-items:center;flex-wrap:wrap}.notion-foot .file-wrap{position:relative}.notion-foot .file-wrap input[type=file]{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer;z-index:2}.notion-foot .file-label{padding:5px 12px;background:#00000026;border:1px dashed var(--glass-border);font-size:.7rem;color:var(--text-dim);cursor:pointer;font-family:var(--font-sans);border-radius:4px}.notion-foot .file-label:hover{border-color:var(--primary)}.notion-foot .pub-btn{padding:6px 18px;background:var(--accent);color:var(--bg);border:none;cursor:pointer;font-family:var(--font-sans);font-size:.75rem;font-weight:600;margin-left:auto;border-radius:6px}.notion-foot .pub-btn:hover{opacity:.85}.overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#000000b3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);align-items:center;justify-content:center;padding:24px}.overlay.open{display:flex}.overlay-card{border:1px solid var(--glass-border);background:var(--card-bg);max-width:540px;width:100%;max-height:80vh;overflow-y:auto;border-radius:10px}.overlay-card .ov-header{padding:20px 24px;border-bottom:1px solid var(--glass-border);display:flex;gap:12px}.overlay-card .ov-header .ov-icon{width:40px;height:40px;border:1px solid var(--glass-border);display:flex;align-items:center;justify-content:center;font-size:.7rem;color:var(--primary);flex-shrink:0;border-radius:8px;background:var(--hover-bg)}.overlay-card .ov-header .ov-info h3{font-size:1.05rem;font-weight:600}.overlay-card .ov-header .ov-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.overlay-card .ov-header .ov-tags span{font-size:.6rem;padding:3px 8px;border:1px solid var(--glass-border);color:var(--text-muted);border-radius:4px}.overlay-card .ov-body{padding:20px 24px}.overlay-card .ov-body p{font-size:.82rem;color:var(--text-dim);line-height:1.7;margin-bottom:14px}.overlay-card .ov-links{display:flex;gap:8px}.overlay-card .ov-links a{padding:8px 16px;border:1px solid var(--glass-border);text-decoration:none;font-size:.72rem;color:var(--text-dim);transition:all .2s;font-family:var(--font-sans);border-radius:6px}.overlay-card .ov-links a:hover{border-color:var(--accent);color:var(--accent);background:var(--glass-bg)}.ai-box{position:relative;padding:20px 24px;margin-bottom:24px;background:var(--card-bg);border-radius:16px;border:1px solid var(--glass-border);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 8%,transparent),0 4px 24px #0000000f;transition:box-shadow .3s,border-color .3s}.ai-box:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:17px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 30%,transparent),transparent 40%,color-mix(in srgb,var(--accent) 10%,transparent) 70%);z-index:-1;opacity:.5;transition:opacity .3s}.ai-box:hover{box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 20%,transparent),0 8px 32px #0000001a}.ai-box:hover:before{opacity:.8}.ai-box .ai-head{display:flex;align-items:center;gap:12px;margin-bottom:12px}.ai-box .ai-badge{padding:4px 12px;background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent) 60%,#fff));color:#fff;font-size:.65rem;font-weight:700;border-radius:8px;letter-spacing:.03em;box-shadow:0 2px 8px color-mix(in srgb,var(--accent) 25%,transparent)}.ai-box .ai-head span{font-size:.85rem;color:var(--text);font-weight:700}.ai-box .ai-text{font-size:.82rem;line-height:1.7;color:var(--text-dim);min-height:2.4em;display:flex;align-items:flex-start}.ai-box .ai-cta{display:inline-flex;align-items:center;gap:8px;margin-top:14px;padding:10px 20px;background:var(--accent);color:#fff;border:none;border-radius:12px;font-size:.78rem;font-weight:600;font-family:var(--font-sans);cursor:pointer;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 14px color-mix(in srgb,var(--accent) 30%,transparent)}.ai-box .ai-cta:hover{transform:translateY(-1px);box-shadow:0 6px 20px color-mix(in srgb,var(--accent) 40%,transparent)}.ai-box .ai-cta:active{transform:translateY(0);box-shadow:0 2px 8px color-mix(in srgb,var(--accent) 30%,transparent)}.ai-blink{display:inline-block;width:5px;height:12px;background:var(--primary);animation:pulse 1s step-end infinite;margin-left:2px;vertical-align:middle;border-radius:1px}.term-cli{border:1px solid var(--glass-border);background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);overflow:hidden;box-sizing:border-box;min-height:400px}.term-body{padding:14px 16px;min-height:120px}.term-line{display:flex;align-items:center;flex-wrap:wrap;gap:0;line-height:1.7}.term-prompt{color:var(--accent);font-family:var(--font-mono);font-size:.75rem;white-space:pre}.term-body .term-line>span[style]{white-space:pre-wrap}.term-cursor{display:inline-block;width:6px;height:14px;background:var(--accent);margin-left:2px;animation:termBlink 1s step-end infinite;vertical-align:text-bottom}@keyframes termBlink{0%,to{opacity:1}50%{opacity:0}}.term-output{margin-top:4px}.term-cta{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:10px;border:none;border-top:1px solid var(--glass-border);background:color-mix(in srgb,var(--accent) 8%,transparent);color:var(--accent);font-size:.75rem;font-weight:600;font-family:var(--font-display);cursor:pointer;transition:background .2s}.term-cta:hover{background:color-mix(in srgb,var(--accent) 16%,transparent)}.term-cta svg{flex-shrink:0}.term-interactive{display:flex;flex-direction:column;gap:8px;margin-top:8px}.term-output-scroll{max-height:200px;overflow-y:auto;display:flex;flex-direction:column;gap:2px;scrollbar-width:thin;scrollbar-color:var(--glass-border) transparent}.term-output-scroll::-webkit-scrollbar{width:4px}.term-output-scroll::-webkit-scrollbar-thumb{background:var(--glass-border);border-radius:4px}.term-iline{font-family:var(--font-mono);font-size:.72rem;line-height:1.6;padding:1px 2px;white-space:pre-wrap;word-break:break-word}.term-iline--prompt{color:var(--text)}.term-iline--stdout{color:var(--text-dim)}.term-iline--error{color:#ff5f57;font-weight:500}.term-iline--system{color:var(--text-muted);font-style:italic}.term-iline--section{color:var(--accent);font-weight:600;font-size:.75rem;letter-spacing:.02em;padding:6px 2px 4px;border-bottom:1px solid color-mix(in srgb,var(--accent) 20%,transparent);margin-bottom:2px}.term-iline--header{color:color-mix(in srgb,var(--accent) 70%,var(--text));font-weight:500;font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;padding:4px 2px 1px}.term-iline--divider{color:var(--glass-border);padding:0 2px;line-height:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.term-iline--data{color:var(--text-dim);padding:1px 2px 1px 6px}.term-iline--dim{color:var(--text-muted);font-size:.68rem;padding:0 2px 0 16px}.term-iline--keyval{color:var(--text-dim);padding:1px 2px;display:flex;gap:0}.term-iline--keyval .tk-key{color:var(--accent);min-width:12ch;display:inline-block}.term-iline--keyval .tk-arrow{color:var(--text-muted);margin:0 8px}.term-iline--keyval .tk-val{color:var(--text);flex:1}.term-iline--success{color:#28c840;font-weight:500}.term-iline--count{color:var(--text-muted);font-size:.65rem;text-align:right;display:block;padding:2px 2px 4px;border-bottom:1px solid var(--glass-border)}.term-chips{display:flex;gap:6px;overflow-x:auto;padding:4px 0;scrollbar-width:none;-webkit-overflow-scrolling:touch}.term-chips::-webkit-scrollbar{display:none}.term-chip{flex-shrink:0;padding:4px 12px;border:1px solid var(--glass-border);border-radius:99px;background:var(--bg2);color:var(--text-dim);font-size:.68rem;font-family:var(--font-mono);cursor:pointer;transition:all .15s;white-space:nowrap}.term-chip:hover{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.term-input-row{display:flex;align-items:center;gap:0;padding:6px 0;border-top:1px solid var(--glass-border);margin-top:4px}.term-input{flex:1;background:transparent;border:none;outline:none;color:var(--text);font-family:var(--font-mono);font-size:.75rem;caret-color:var(--accent);padding:2px 0}.term-input::-moz-placeholder{color:var(--text-muted)}.term-input::placeholder{color:var(--text-muted)}.term-body{position:relative}.term-fullscreen-btn{position:absolute;top:6px;right:6px;width:28px;height:28px;border:1px solid var(--glass-border);border-radius:6px;background:var(--glass-bg);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .2s,border-color .2s,background .2s;z-index:2}.term-fullscreen-btn:hover{color:var(--accent);border-color:var(--accent);background:var(--hover-bg)}.term-cli:fullscreen{background:var(--bg);padding:24px 32px;display:flex;flex-direction:column}.term-cli:fullscreen .term-body{max-width:960px;margin:0 auto;width:100%;font-size:1.1rem}.term-cli:fullscreen .term-prompt{font-size:.95rem}.term-cli:fullscreen .term-input{font-size:.95rem}.term-cli:fullscreen .term-iline{font-size:.88rem}.term-cli:fullscreen .term-output-scroll{max-height:55vh}.term-cli:fullscreen .term-chip{font-size:.8rem;padding:6px 16px}.term-cli:fullscreen .term-input-row{padding:12px 0}@media (max-width: 640px){.term-cli:fullscreen{padding:12px 16px}.term-cli:fullscreen .term-body{font-size:.82rem}.term-cli:fullscreen .term-prompt,.term-cli:fullscreen .term-input{font-size:.78rem}.term-cli:fullscreen .term-iline{font-size:.74rem}.term-cli:fullscreen .term-chip{font-size:.68rem;padding:4px 10px}}.term-iline--link{color:var(--text-dim);padding:1px 2px;display:flex;gap:0}.term-iline--link .tk-key{color:var(--accent);min-width:12ch;display:inline-block}.term-iline--link .tk-arrow{color:var(--text-muted);margin:0 8px}.tk-link{color:#58a6ff;text-decoration:underline;text-underline-offset:2px;cursor:pointer;transition:color .15s}.tk-link:hover{color:#79c0ff}.term-cli--chat .term-body{border-color:var(--accent)}.term-chat-user{color:#ffa657;font-weight:600;margin-right:6px}.term-chat-ai{color:var(--accent);font-weight:600;margin-right:6px}.term-iline--user{color:var(--text-dim);padding:2px}.term-iline--ai{color:var(--text);padding:2px}.term-typing-dots span{animation:termDotPulse 1.4s infinite;animation-fill-mode:both;font-size:1.2em;line-height:1}.term-typing-dots span:nth-child(2){animation-delay:.2s}.term-typing-dots span:nth-child(3){animation-delay:.4s}@keyframes termDotPulse{0%,80%,to{opacity:0}40%{opacity:1}}.term-chip--exit{border-color:#ff5f57;color:#ff5f57}.term-chip--exit:hover{background:color-mix(in srgb,#ff5f57 10%,transparent);border-color:#ff5f57;color:#ff5f57}.term-input:disabled{opacity:.5;cursor:not-allowed}.term-iline--table{padding:2px 0}.term-itable{display:flex;flex-direction:column;border:1px solid var(--glass-border);border-radius:6px;overflow:hidden;font-family:var(--font-mono);font-size:.7rem;margin:2px 0}.term-itable-row{display:grid;grid-template-columns:repeat(var(--cols, 3),1fr)}.term-itable-cell{padding:5px 8px;border-bottom:1px solid var(--glass-border);border-right:1px solid var(--glass-border);white-space:pre-wrap;word-break:break-word}.term-itable-row:last-child .term-itable-cell{border-bottom:none}.term-itable-cell:last-child{border-right:none}.term-itable-header .term-itable-cell{background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent);font-weight:600;font-size:.68rem;text-transform:uppercase;letter-spacing:.04em}.term-iline--ai .term-itable{margin:4px 0}.term-iline--ai .term-list{display:flex;flex-direction:column;gap:1px;margin:2px 0}.term-iline--ai .term-list-item{padding:1px 0;line-height:1.5}.term-iline--ai .term-p{display:block;line-height:1.5;margin:2px 0}.term-iline--chat-header{display:flex;align-items:center;gap:8px}.term-avatar{width:28px;height:28px;border-radius:50%;-o-object-fit:cover;object-fit:cover;border:1.5px solid var(--accent);box-shadow:0 0 8px color-mix(in srgb,var(--accent) 40%,transparent);flex-shrink:0}.term-chat-model{color:var(--text-muted);font-weight:400;font-size:.65rem}.term-stream-text{white-space:pre-wrap;word-break:break-word}.term-cursor-stream{display:inline-block;color:var(--accent);font-size:.8rem;line-height:1;margin-left:1px;animation:termBlink .8s step-end infinite;vertical-align:text-bottom}@keyframes termGlow{0%,to{box-shadow:0 0 color-mix(in srgb,var(--accent) 0%,transparent)}50%{box-shadow:0 0 12px 2px color-mix(in srgb,var(--accent) 25%,transparent)}}.term-cli--loading{animation:termGlow 1.8s ease-in-out infinite}.term-cli:fullscreen .term-itable{font-size:.82rem}.term-cli:fullscreen .term-itable-cell{padding:7px 12px}.term-cli:fullscreen .term-avatar{width:36px;height:36px}.admin-lock{position:fixed;bottom:76px;right:20px;z-index:9998;padding:7px 14px;border:1px solid var(--glass-border);background:var(--glass-bg);color:var(--text-dim);font-size:.7rem;cursor:pointer;font-family:var(--font-mono);transition:all .2s;border-radius:8px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.admin-lock:hover{border-color:var(--accent);color:var(--accent)}.admin-modal{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999;background:#000000b3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);align-items:center;justify-content:center;padding:20px}.admin-modal.open{display:flex}.admin-modal-card{border:1px solid var(--glass-border);background:var(--bg2);padding:28px;max-width:380px;width:100%;border-radius:10px}.admin-modal-card h2{font-size:.95rem;font-weight:600;margin-bottom:16px;text-align:center}.admin-modal-card input{width:100%;padding:10px 14px;background:#0003;border:1px solid var(--glass-border);color:var(--text);font-size:.82rem;outline:none;font-family:var(--font-sans);margin-bottom:12px;text-align:center;border-radius:6px}.admin-modal-card input:focus{border-color:var(--accent)}.admin-modal-card .am-btn{width:100%;padding:10px;background:var(--accent);color:var(--bg);border:none;cursor:pointer;font-family:var(--font-sans);font-size:.82rem;font-weight:600;border-radius:6px}.google-signin-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:10px 16px;background:#fff;color:#444;border:none;cursor:pointer;font-family:var(--font-sans);font-size:.85rem;font-weight:500;border-radius:8px;transition:box-shadow .2s}.google-signin-btn:hover{box-shadow:0 2px 8px #0003}.admin-panel{display:none;position:fixed;top:0;right:0;bottom:0;z-index:99999;width:480px;max-width:100%;background:var(--bg2);border-left:1px solid var(--accent);overflow-y:auto}.admin-panel.open{display:block}.admin-panel-header{padding:14px 18px;border-bottom:1px solid var(--glass-border);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:var(--bg2);z-index:2}.admin-panel-header h2{font-size:.82rem;display:flex;align-items:center;gap:8px;font-family:var(--font-display)}.admin-panel-header .dot{width:7px;height:7px;background:var(--primary);border-radius:50%}.admin-panel-header .ap-close{background:none;border:none;color:var(--text-dim);font-size:1.1rem;cursor:pointer}.admin-section{padding:14px 18px;border-bottom:1px solid var(--glass-border)}.admin-section h3{font-size:.78rem;font-weight:600;margin-bottom:10px;letter-spacing:.3px}.admin-field{margin-bottom:8px}.admin-field label{font-size:.65rem;color:var(--text-muted);display:block;margin-bottom:3px}.admin-field input,.admin-field textarea{width:100%;padding:8px 12px;background:#0003;border:1px solid var(--glass-border);color:var(--text);font-size:.75rem;outline:none;font-family:var(--font-sans);border-radius:6px}.admin-field textarea{min-height:44px;resize:vertical}.admin-field input:focus{border-color:var(--accent)}.admin-row{display:flex;gap:8px}.admin-row input{flex:1}.admin-list{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.admin-item{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;background:#00000026;font-size:.72rem;border-radius:4px}.admin-item .del{background:none;border:none;color:#ef4444;cursor:pointer;font-size:.8rem}.admin-edit-btn{background:none;border:none;color:var(--primary);cursor:pointer;font-size:.72rem}.admin-add{padding:5px 12px;border:1px dashed var(--glass-border);background:transparent;color:var(--primary);font-size:.68rem;cursor:pointer;font-family:var(--font-sans);width:100%;text-align:center;border-radius:4px}.fab-menu{position:fixed;bottom:var(--fab-inset-bottom);right:var(--fab-inset-right);z-index:10010;display:flex;flex-direction:column;align-items:flex-end;pointer-events:none;isolation:isolate}.fab-menu-inner{display:flex;flex-direction:column;align-items:flex-end;gap:var(--fab-gap);pointer-events:auto}.fab-menu-actions{display:flex;flex-direction:column-reverse;align-items:flex-end;gap:var(--fab-gap);overflow:hidden}.fab-menu-hint-slot{position:absolute;bottom:calc(100% + var(--fab-gap));right:0;width:min(280px,calc(100vw - var(--fab-inset-right) * 2 - var(--fab-size)));pointer-events:none;z-index:1}.fab-menu .chat-square,.fab-menu .fab-action{position:relative;bottom:auto;right:auto;flex-shrink:0}.fab-menu .fab-menu-toggle{color:var(--text);border-color:var(--border);background:var(--card-bg)}.fab-menu .fab-menu-toggle:hover,.fab-menu .fab-menu-toggle.is-active,.fab-menu--open .fab-menu-toggle{border-color:var(--accent);color:var(--accent);background:var(--hover-bg)}.fab-hamb-line{display:block;width:18px;height:2px;background:currentColor;border-radius:2px;transition:transform .3s ease,opacity .3s ease;transform-origin:center}.chat-square{width:var(--fab-size);height:var(--fab-size);display:flex;align-items:center;justify-content:center;border:1.5px solid var(--border);background:var(--bg2);color:var(--text);cursor:pointer;border-radius:14px;transition:border-color .2s,color .2s,background .2s,transform .15s;flex-shrink:0;box-shadow:0 4px 12px #0000004d}.chat-square:hover,.chat-square.is-active{border-color:var(--accent);color:var(--accent);background:var(--bg2)}.voice-wake-hint{display:block;width:100%;margin:0;padding:10px 14px;font-size:.72rem;line-height:1.45;color:var(--text-dim);background:var(--bg2);border:1px solid var(--border);border-radius:12px;pointer-events:none;box-shadow:0 4px 16px #0000001f;box-sizing:border-box}.voice-square--wake{animation:voice-mic-pulse 1.6s ease-in-out infinite}.voice-square.is-active,.voice-square--live{border-color:var(--accent);color:var(--accent)}.voice-square--live{box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 35%,transparent)}@keyframes voice-mic-pulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--accent) 35%,transparent)}50%{box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 18%,transparent)}}.gs-mic--on{color:var(--accent)!important;background:var(--hover-bg)}.voice-toggle.wake{animation:voice-mic-pulse 1.6s ease-in-out infinite}@media (max-width: 768px){:root{--fab-inset-bottom: max(72px, calc(56px + env(safe-area-inset-bottom, 0px)) );--fab-inset-right: max(12px, env(safe-area-inset-right, 0px));--fab-size: 44px}.fab-menu-hint-slot{right:0;left:auto;width:min(280px,calc(100vw - 24px))}.voice-wake-hint{text-align:center}}@property --angle{syntax:"<angle>"; initial-value:0deg; inherits:false;}.chat-window{position:fixed;bottom:calc(var(--fab-collapsed-offset) + 16px);right:var(--fab-inset-right);z-index:10020;width:360px;max-width:calc(100vw - var(--fab-inset-right) * 2);max-height:min(480px,calc(100vh - var(--header-h) - var(--fab-collapsed-offset) - 48px));background:var(--bg2);border:1px solid var(--glass-border);display:none;flex-direction:column;border-radius:16px;overflow:hidden;box-shadow:0 8px 40px #0000004d,0 0 0 1px color-mix(in srgb,var(--accent) 12%,transparent);box-sizing:border-box}body.fab-open .chat-window.open{bottom:calc(var(--fab-expanded-offset) + 16px);max-height:min(480px,calc(100vh - var(--header-h) - var(--fab-expanded-offset) - 32px))}.chat-window.open{display:flex}.chat-header{padding:14px 16px;border-bottom:1px solid var(--glass-border);display:flex;align-items:center;justify-content:space-between;background:var(--bg2)}.chat-header h4{font-size:.82rem;display:flex;align-items:center;gap:8px;font-weight:600;font-family:var(--font-display);color:var(--text)}.ch-header-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent)}.chat-close-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:6px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s}.chat-close-btn:hover{background:var(--glass-bg);color:var(--text)}.chat-msgs{flex:1;padding:12px;overflow-y:auto;max-height:320px;display:flex;flex-direction:column;gap:12px;background:var(--bg)}.chat-msg{display:flex;gap:10px;max-width:92%;font-size:.78rem;line-height:1.5}.chat-msg.bot{align-self:flex-start}.chat-msg.user{align-self:flex-end;flex-direction:row-reverse}.ch-avatar{width:30px;height:30px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;margin-top:2px}.ch-avatar--bot{background:color-mix(in srgb,var(--accent) 15%,var(--bg2));color:var(--accent)}.ch-avatar--user{background:color-mix(in srgb,var(--primary) 15%,var(--bg2));color:var(--primary)}.ch-msg-content{background:var(--card-bg);border:1px solid var(--glass-border);border-radius:12px;padding:10px 14px;min-width:0}.chat-msg.user .ch-msg-content{background:color-mix(in srgb,var(--accent) 12%,var(--bg2));border-color:color-mix(in srgb,var(--accent) 20%,var(--glass-border))}.ch-msg-label{font-size:.6rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;display:block;margin-bottom:4px}.chat-msg p{margin:0;color:var(--text-dim);white-space:pre-wrap;word-break:break-word}.chat-msg.user p{color:var(--text)}.chat-msg ul{margin:4px 0;padding-left:16px;list-style:disc}.chat-msg ol{margin:4px 0;padding-left:16px}.chat-msg li{margin-bottom:2px}.chat-msg p+p{margin-top:6px}.chat-msg table{margin:8px 0;border-collapse:collapse;width:100%;font-size:.72rem}.chat-msg th,.chat-msg td{border:1px solid var(--glass-border);padding:6px 10px;text-align:left}.chat-msg th{color:var(--accent);font-weight:600;background:color-mix(in srgb,var(--accent) 8%,transparent)}.chat-msg tr:nth-child(2n) td{background:#00000014}.ch-suggestions{display:flex;flex-wrap:wrap;gap:6px;padding:4px 4px 0 44px}.ch-chip{font-size:.72rem;padding:6px 12px;border:1px solid var(--glass-border);background:var(--card-bg);color:var(--text-dim);border-radius:20px;cursor:pointer;transition:all .2s;font-family:var(--font-sans);white-space:nowrap}.ch-chip:hover{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--bg2))}.ch-chip:disabled{opacity:.4;cursor:not-allowed}.ch-typing{display:flex;gap:2px}.ch-dot{animation:chDotPulse 1.4s infinite;font-size:1.2rem;line-height:.5;color:var(--text-muted)}.ch-dot:nth-child(2){animation-delay:.2s}.ch-dot:nth-child(3){animation-delay:.4s}@keyframes chDotPulse{0%,60%,to{opacity:.3}30%{opacity:1}}.chat-inp{padding:10px 12px 12px;border-top:1px solid var(--glass-border);display:flex;gap:8px;background:var(--bg2)}.chat-inp input{flex:1;padding:10px 14px;background:var(--bg);border:1px solid var(--glass-border);color:var(--text);font-size:.78rem;outline:none;font-family:var(--font-sans);border-radius:12px;transition:border-color .2s}.chat-inp input:focus{border-color:var(--accent)}.chat-inp input::-moz-placeholder{color:var(--text-muted)}.chat-inp input::placeholder{color:var(--text-muted)}.ch-send-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--accent);color:#fff;border:none;cursor:pointer;border-radius:12px;flex-shrink:0;transition:transform .15s,box-shadow .2s;box-shadow:0 2px 8px color-mix(in srgb,var(--accent) 25%,transparent)}.ch-send-btn:hover{transform:scale(1.05);box-shadow:0 4px 14px color-mix(in srgb,var(--accent) 35%,transparent)}.ch-send-btn:active{transform:scale(.95)}.ch-send-btn:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}.ch-nav-btn{display:inline-flex;align-items:center;gap:6px;margin-top:8px;padding:6px 14px;border:1px solid var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent);font-size:.72rem;font-weight:600;font-family:var(--font-sans);border-radius:8px;cursor:pointer;transition:all .2s}.ch-nav-btn:hover{background:color-mix(in srgb,var(--accent) 20%,transparent);transform:translate(2px)}.yt-play-btn.playing{background:#ffffff26}.sine-wave-wrap{position:fixed;bottom:68px;right:20px;z-index:9998;display:flex;align-items:center;gap:2px;height:24px;pointer-events:none;opacity:0;transition:opacity .3s;padding:6px 10px;border-radius:20px;background:var(--glass-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--glass-border)}.sine-wave-wrap.active{opacity:1}.sine-bar{width:3px;background:var(--primary);border-radius:3px;animation:eqAnim .7s ease-in-out infinite alternate}.sine-bar:nth-child(1){height:6px;animation-delay:0s}.sine-bar:nth-child(2){height:10px;animation-delay:.06s}.sine-bar:nth-child(3){height:16px;animation-delay:.12s}.sine-bar:nth-child(4){height:20px;animation-delay:.18s}.sine-bar:nth-child(5){height:22px;animation-delay:.24s}.sine-bar:nth-child(6){height:20px;animation-delay:.3s}.sine-bar:nth-child(7){height:16px;animation-delay:.36s}.sine-bar:nth-child(8){height:10px;animation-delay:.42s}.sine-bar:nth-child(9){height:6px;animation-delay:.48s}@keyframes eqAnim{0%{transform:scaleY(.5);opacity:.5}to{transform:scaleY(1);opacity:1}}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%) translateY(80px);border:1px solid var(--glass-border);background:var(--bg2);padding:8px 20px;font-size:.75rem;z-index:99999;opacity:0;transition:all .4s;pointer-events:none;border-radius:8px}.toast.show{opacity:1;transform:translate(-50%) translateY(0)}.apple-theme-wrap{position:relative}.apple-theme-btn{display:flex;align-items:center;gap:6px;background:linear-gradient(135deg,#ffffff08,#ffffff0f);border:1px solid var(--glass-border);padding:6px 12px;border-radius:999px;cursor:pointer;transition:all .2s;min-height:34px}.apple-theme-btn:hover{background:linear-gradient(135deg,#ffffff0f,#ffffff1a);border-color:color-mix(in srgb,var(--primary) 30%,var(--glass-border))}@media (max-width:768px){.apple-theme-btn{padding:2px 4px;min-height:44px}}.apple-dot{width:5px;height:5px;border-radius:50%;transition:transform .2s;opacity:.6}.apple-dot.active{transform:scale(1.6);opacity:1}.apple-theme-menu{position:absolute;top:calc(100% + 8px);right:0;background:linear-gradient(135deg,#14141ef7,#1e1428f7);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);border-radius:12px;overflow:hidden;z-index:9999;min-width:170px;box-shadow:0 20px 60px #00000080;padding:4px}.apple-theme-option{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:none;border:none;color:var(--sidebar-text-dim);font-size:.75rem;font-family:var(--font-sans);cursor:pointer;transition:all .15s;border-radius:8px}.apple-theme-option:hover{background:linear-gradient(135deg,#ffffff14,#ffffff05);transform:scale(1.02)}.apple-theme-option.active{background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary) 60%,#000));color:#fff;box-shadow:0 0 20px color-mix(in srgb,var(--primary) 40%,transparent),inset 0 1px #ffffff26}.apple-option-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.cal-modal{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);align-items:center;justify-content:center;padding:20px}.cal-modal.open{display:flex}.cal-card{border:1px solid var(--glass-border);background:var(--bg2);border-radius:10px;max-width:340px;width:100%;overflow:hidden}.cal-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--glass-border)}.cal-header h3{font-size:.9rem;font-weight:600}.cal-nav{background:none;border:none;color:var(--text-dim);cursor:pointer;padding:4px 8px;font-size:.85rem;transition:color .2s}.cal-nav:hover{color:var(--accent)}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);padding:12px 16px;gap:4px}.cal-dow{font-size:.6rem;color:var(--text-muted);text-align:center;padding:4px 0;text-transform:uppercase;letter-spacing:.5px}.cal-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:.72rem;color:var(--text-dim);border:1px solid transparent;cursor:pointer;transition:all .15s;border-radius:6px}.cal-day:hover{border-color:var(--glass-border);color:var(--text)}.cal-day.today{border-color:var(--accent);color:var(--accent)}.cal-day.selected{background:var(--accent);color:var(--bg);border-color:var(--accent)}.cal-day.other{color:var(--text-muted);opacity:.4}.cal-footer{padding:10px 16px;border-top:1px solid var(--glass-border);display:flex;gap:8px;justify-content:flex-end}.cal-btn{padding:6px 14px;border:1px solid var(--glass-border);background:var(--glass-bg);color:var(--text-dim);cursor:pointer;font-family:var(--font-sans);font-size:.7rem;border-radius:6px;transition:all .2s}.cal-btn:hover{border-color:var(--accent);color:var(--accent)}.cal-btn.primary{background:var(--accent);color:var(--bg);border-color:var(--accent)}.cal-btn.primary:hover{opacity:.85}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 14px;border-radius:20px;background:#22c55e1a;border:1px solid rgba(34,197,94,.3);font-size:.75rem;color:#22c55e}.status-badge .dot{width:6px;height:6px;border-radius:50%;background:#22c55e;animation:pulse 2s infinite}.status-text{font-size:.85rem;color:var(--text-dim);margin-top:6px}.contact-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.contact-card{border:1px solid var(--glass-border);background:var(--card-bg);padding:24px;border-radius:12px}.contact-card-title{display:flex;align-items:center;gap:8px;font-size:1rem;font-weight:600;margin-bottom:4px;color:var(--text)}.contact-card-sub{font-size:.78rem;color:var(--text-dim);margin-bottom:20px}.gc-calendar{width:100%}.gc-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.gc-nav{background:none;border:1px solid var(--glass-border);color:var(--text-dim);cursor:pointer;padding:2px 10px;font-size:1rem;border-radius:6px;transition:all .2s}.gc-nav:hover{border-color:var(--accent);color:var(--accent)}.gc-title{font-size:.9rem;font-weight:600;font-family:var(--font-display)}.gc-dow{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:4px}.gc-dow-label{font-size:.62rem;color:var(--text-muted);text-align:center;padding:4px 0;text-transform:uppercase;font-weight:500}.gc-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.gc-day{border:none;background:none;color:var(--text);padding:6px 0;font-size:.75rem;cursor:pointer;border-radius:6px;transition:all .15s;font-family:var(--font-sans);text-align:center}.gc-day:hover{background:var(--hover-bg);color:var(--primary)}.gc-day.selected{background:var(--primary);color:var(--bg);font-weight:600}.gc-day.other{color:var(--text-muted);opacity:.35}.gc-day.disabled{color:var(--text-muted);opacity:.25;cursor:default}.gc-day.disabled:hover{background:transparent;color:var(--text-muted)}.gc-time-picker{margin-top:16px;border-top:1px solid var(--glass-border);padding-top:12px}.gc-time-label{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-weight:500}.gc-times{display:flex;flex-wrap:wrap;gap:4px}.gc-time-slot{padding:5px 12px;border:1px solid var(--glass-border);background:transparent;color:var(--text-dim);font-size:.7rem;cursor:pointer;border-radius:6px;transition:all .15s;font-family:var(--font-mono)}.gc-time-slot:hover{border-color:var(--accent);color:var(--accent)}.gc-time-slot.active{background:var(--primary);color:var(--bg);border-color:var(--primary)}.gc-form{margin-top:16px;display:flex;flex-direction:column;gap:8px}.gc-input{width:100%;padding:10px 12px;border:1px solid var(--glass-border);background:var(--glass-bg);color:var(--text);font-family:var(--font-sans);font-size:.78rem;outline:none;border-radius:8px;transition:border-color .2s}.gc-input:focus{border-color:var(--accent)}.gc-textarea{resize:vertical;min-height:50px}.gc-book-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:10px;background:var(--primary);color:var(--bg);border:none;border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer;font-family:var(--font-sans);transition:opacity .2s}.gc-book-btn:hover{opacity:.85}.gc-book-btn:disabled{opacity:.4;cursor:default}.gc-book-btn.email-btn{background:var(--accent)}.gc-booked{text-align:center;padding:24px 0}.gc-booked h4{font-size:1.1rem;margin:12px 0 6px;color:var(--text)}.gc-booked p{font-size:.8rem;color:var(--text-dim);margin-bottom:16px}.gc-divider{display:flex;align-items:center;gap:12px;margin:16px 0;color:var(--text-muted);font-size:.7rem}.gc-divider:before,.gc-divider:after{content:"";flex:1;height:1px;background:var(--glass-border)}.gc-email-link{text-align:center}.gc-email-link a{color:var(--primary);font-size:.85rem;text-decoration:none}.gc-email-link a:hover{text-decoration:underline}.gc-field{position:relative}.gc-field .gc-input{border-color:var(--glass-border)}.gc-field.error .gc-input{border-color:#ef4444}.gc-field.filled .gc-input{border-color:var(--accent)}.gc-field-msg{display:block;font-size:.62rem;color:#ef4444;margin-top:2px;padding-left:4px}.gc-form-status{display:flex;align-items:center;gap:6px;padding:8px 12px;border-radius:6px;font-size:.72rem}.gc-form-status.error{background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.2)}@keyframes gc-spin{to{transform:rotate(360deg)}}.gc-spinner{display:inline-block;width:14px;height:14px;border:2px solid var(--bg);border-top-color:transparent;border-radius:50%;animation:gc-spin .6s linear infinite;vertical-align:middle;margin-right:4px}.gc-book-btn.loading{pointer-events:none;opacity:.8}.contact-social-links{display:flex;gap:10px;justify-content:center;margin-top:14px}.contact-social-link{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:1px solid var(--glass-border);border-radius:20px;color:var(--text-dim);text-decoration:none;font-size:.78rem;transition:all .2s}.contact-social-link:hover{border-color:var(--accent);color:var(--accent)}.contact-social-section{margin-top:40px}.contact-social-row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.contact-social-row .contact-social-link{padding:10px 20px;font-size:.82rem}.mobile-nav{display:none;position:fixed;bottom:0;left:0;right:0;z-index:9998;background:var(--glass-nav);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid var(--glass-border);padding:4px 0 env(safe-area-inset-bottom,4px);justify-content:space-around}.mobile-nav-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:1px;background:none;border:none;color:var(--text-muted);cursor:pointer;padding:6px 4px;position:relative;transition:color .2s;-webkit-tap-highlight-color:transparent}.mobile-nav-item.active{color:var(--accent)}.mobile-nav-icon{font-size:1.1rem;line-height:1}.mobile-nav-label{font-size:.55rem;font-weight:500}.mobile-nav-indicator{position:absolute;top:0;left:50%;transform:translate(-50%);width:20px;height:2px;background:var(--accent);border-radius:2px}@media (max-width:1024px){.main-area{padding:24px 28px}.section{padding:32px 0}.section-header{margin-bottom:20px}.sidebar-item{padding:6px 10px;font-size:.72rem}.sidebar-section-label{padding:10px 10px 4px;font-size:.62rem}.yt-player{min-height:280px}.notion-reader-body{padding:24px 28px 40px}}@media (max-width:768px){html,body{overflow-x:hidden;max-width:100vw}.main-area{margin-left:0;padding:12px;padding-bottom:calc(var(--fab-collapsed-offset) + 20px);max-width:100vw;overflow-x:hidden}.header .typing-cursor,.header .typing-cursor:after,.header-typing-btn{display:none!important}.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0)}.yt-player{aspect-ratio:16/9;max-width:100vw;border-radius:8px}.yt-video-page .video-player-wrap{max-height:none;overflow:hidden}.yt-play-btn{width:48px;height:48px;background:#ffffff26;border-width:3px;position:relative}.yt-play-btn:before{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:50%;background:conic-gradient(var(--primary),#ff9500,var(--primary));animation:spinRing 3s linear infinite;z-index:-1}.yt-play-btn svg{width:20px;height:20px;margin-left:2px;position:relative;z-index:1}.yt-video-page{margin-bottom:16px;max-width:100%}.yt-info{padding:8px 4px;max-width:100%}.yt-channel-row{padding:12px 6px}.yt-channel-inner{flex-wrap:wrap;align-items:flex-start;row-gap:10px}.yt-channel-actions{margin-left:auto;flex-shrink:0}.yt-channel-name{font-size:.92rem}.yt-channel-meta{font-size:.68rem}.yt-info-bar{font-size:.65rem;gap:4px}.project-grid{grid-template-columns:1fr;gap:14px}.cert-grid,.hobby-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.header{padding-top:env(safe-area-inset-top,0px);padding-left:8px;padding-right:8px;gap:6px}.header-left{gap:4px;min-width:0;flex-shrink:1}.header-left .logo{font-size:.78rem;min-width:0}.header-left .logo .path{max-width:min(36vw,120px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-link{display:none}.header-btn{padding:2px 4px;font-size:.7rem;min-height:36px}.header-right{margin-left:auto;gap:4px;flex-shrink:1;min-width:0}.apple-theme-btn{gap:3px;padding:3px 6px;min-height:34px;flex-shrink:0}.apple-dot{width:4px;height:4px}.header-cmd-btn{margin-right:0;padding:5px 7px;flex-shrink:0}.header-cmd-label{display:none!important}.header-cmd-icon{display:flex!important}.voice-transcript-anchor{margin:2px 10px 0}.voice-transcript-bar{max-width:none;padding:7px 10px;gap:6px;border-radius:8px;font-size:.68rem}.voice-transcript-text{white-space:normal;word-break:break-word;overflow-wrap:anywhere;text-overflow:unset;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.voice-transcript-dot{width:5px;height:5px;margin-top:.45em}.header-speaker{width:32px;height:32px;flex-shrink:0}.header-desktop-btn,.header-avatar{display:none}.section{padding:24px 0}.section-header{margin-bottom:20px}.section-header .title{font-size:1.3rem}.section-header .sub{font-size:.75rem}.section-header-row{flex-direction:column;align-items:stretch;gap:12px}.admin-panel{width:100%}.skill-tabs{overflow-x:auto;overflow-y:hidden;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;gap:14px}.skill-tab{flex-shrink:0;font-size:.78rem;white-space:nowrap}.contact-links{flex-wrap:wrap;gap:8px}.contact-link{padding:8px 16px;font-size:.75rem;min-height:44px}.contact-columns{grid-template-columns:1fr}.contact-card{padding:16px}.footer{margin-top:24px;padding:16px 0 12px}.footer-links{display:none}.footer-social-fixed{display:flex;right:calc(var(--fab-size) + var(--fab-inset-right) + 12px);left:12px;width:auto}body.fab-open .footer-social-fixed{opacity:0;visibility:hidden;pointer-events:none}.mobile-nav{display:none}.mobile-nav-icon{font-size:1rem}.mobile-nav-label{font-size:.5rem}.chat-window{left:12px;right:12px;width:auto;max-width:none;max-height:min(320px,calc(100vh - var(--header-h) - var(--fab-collapsed-offset) - 40px))}body.fab-open .chat-window.open{max-height:min(280px,calc(100vh - var(--header-h) - var(--fab-expanded-offset) - 24px))}.admin-lock{bottom:calc(var(--fab-collapsed-offset) + 8px)}.sine-wave-wrap{display:none}.toast{bottom:calc(var(--fab-collapsed-offset) + 8px)}body.fab-open .toast.show{bottom:calc(var(--fab-expanded-offset) + 8px)}.ab-intro-stack{gap:16px}.ab-intro-photo--center img{max-width:280px;border-radius:18px}.ab-intro-block{padding:16px 18px}.ab-header{gap:12px;margin-bottom:20px;padding-bottom:16px}.ab-header-avatar{width:60px;height:60px}.ab-header-name{font-size:1.05rem}.ab-header-role{font-size:.72rem}.ab-header-bio{-webkit-line-clamp:2;font-size:.72rem}.ab-tagline{font-size:.75rem;padding:8px 14px}.ab-stat-card{min-width:80px;padding:12px}.ab-stat-val{font-size:1.2rem}.ab-stat-lbl{font-size:.58rem}.ab-section-label{margin-bottom:8px;font-size:.6rem}.ab-edu-item{flex-direction:row;align-items:center;gap:8px;padding:10px 14px}.ab-edu-left{flex:1;min-width:0}.ab-edu-degree{font-size:.8rem}.ab-edu-school{font-size:.68rem}.ab-edu-right{flex-shrink:0;text-align:right}.ab-edu-period{font-size:.62rem}.ab-edu-grade{font-size:.65rem}.contact-section{padding:24px 0}.gc-dow-label{font-size:.55rem;padding:2px 0}.gc-day{font-size:.7rem;padding:4px 0}.gc-input,.ff-input{font-size:.72rem;padding:8px 10px}.gc-book-btn,.ff-send{font-size:.75rem;padding:8px}.notion-reader-cover{height:160px}.notion-reader-content blockquote{padding:6px 12px;margin:12px 0}.notion-reader-content pre{padding:12px 14px;font-size:.72rem}.notion-reader-content ul,.notion-reader-content ol{padding-left:18px}.notion-reader-content h2{font-size:1.15rem;margin:20px 0 6px}.notion-reader-content h3{font-size:1rem;margin:16px 0 4px}.timeline-item{padding:0 0 24px 18px}.timeline-item .tl-role{font-size:.85rem}.timeline-item .tl-desc{font-size:.72rem}}.sp-wrap{margin-top:24px}.sp-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:24px}.sp-stat{text-align:center;padding:20px 12px;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius);cursor:default}.sp-stat-value{font-size:1.8rem;font-weight:700;font-family:var(--font-display);color:var(--primary);line-height:1.1}.sp-stat-label{font-size:.68rem;color:var(--text-muted);margin-top:4px}.sp-avatars{display:flex;align-items:center;gap:16px;padding:16px 20px;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius);flex-wrap:wrap}.sp-avatar-row{display:flex}.sp-avatar{width:40px;height:40px;border-radius:50%;position:relative;display:flex;align-items:center;justify-content:center;border:2px solid var(--glass-border);margin-left:-8px;cursor:default;overflow:visible;background:var(--bg2)}.sp-avatar:first-child{margin-left:0}.sp-avatar-img{width:100%;height:100%;border-radius:50%;-o-object-fit:cover;object-fit:cover;display:block}.sp-avatar-name{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--glass-nav);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--text);font-size:.65rem;font-weight:500;white-space:nowrap;padding:3px 10px;border-radius:8px;border:1px solid var(--glass-border);opacity:0;pointer-events:none;transition:opacity .2s;font-family:var(--font-sans)}.sp-avatar:hover .sp-avatar-name{opacity:1}.sp-avatar-text{font-size:.78rem;color:var(--text-dim);flex:1}.sp-avatar-text strong{color:var(--text)}@media (max-width:600px){.sp-stats{grid-template-columns:repeat(2,1fr)}}@media (max-width:420px){.main-area{padding:10px 10px 68px;max-width:100vw;overflow-x:hidden}.yt-player{min-height:max(120px,min(25vh,80vw));max-width:100vw}.yt-video-page .video-player-wrap{max-height:max(200px,min(35vh,90vw));overflow:hidden}.yt-play-btn{width:40px;height:40px}.yt-play-btn svg{width:16px;height:16px}.yt-desc-stats{grid-template-columns:repeat(4,1fr);gap:4px}.yt-desc-stat{padding:5px;border-radius:7px}.yt-desc-stat-val{font-size:.78rem}.yt-desc-stat-lbl{font-size:.42rem}.yt-video-page{margin-bottom:12px}.yt-info{padding:10px 0}.yt-channel-row{padding:10px 4px}.yt-channel-inner{gap:8px}.yt-channel-avatar{width:36px;height:36px}.yt-channel-name{font-size:.82rem}.yt-channel-meta{font-size:.62rem}.yt-subscribe-btn{padding:0 14px;min-height:34px;font-size:.7rem}.yt-desc-panel{margin:0 0 12px;padding:10px}.yt-info-bar{font-size:.6rem;gap:3px}.yt-more-btn{font-size:.65rem;padding:3px 8px}.cert-grid,.hobby-grid{grid-template-columns:repeat(2,1fr);gap:10px}.header{padding:0 2px 0 6px;height:40px;gap:4px}@supports (padding-top: env(safe-area-inset-top)){.header{height:calc(40px + env(safe-area-inset-top))}}.header-left{gap:4px}.header-link{padding:3px;min-height:44px;min-width:44px}.header-btn{padding:2px 4px;font-size:.62rem;min-height:34px}.section-header .title{font-size:1.1rem}.sp-stat-value{font-size:1.4rem}.ab-header{gap:10px;margin-bottom:16px}.ab-header-avatar{width:48px;height:48px}.ab-header-name{font-size:.9rem}.ab-header-role{font-size:.65rem}.ab-header-bio{font-size:.65rem;-webkit-line-clamp:1}.ab-tagline{font-size:.7rem;padding:6px 12px;margin-bottom:16px}.ab-stat-card{min-width:65px;padding:8px}.ab-stat-val{font-size:.9rem}.ab-stat-lbl{font-size:.5rem}.footer-nav{gap:2px}.footer-nav-item{padding:4px 8px;min-width:48px}.footer-nav-item .material-symbols-outlined{font-size:1rem}.footer-nav-label{font-size:.5rem}.notion-reader-cover{height:120px}.notion-reader-content{font-size:.82rem}.gc-dow-label{font-size:.5rem}.gc-day{font-size:.65rem;padding:3px 0}.gc-title{font-size:.8rem}.mobile-nav-icon{font-size:.95rem}.mobile-nav-label{font-size:.5rem}.project-card .pc-thumb{border-radius:8px}}@media (max-width:360px){body{font-size:.82rem}.main-area{padding:10px 10px 64px}.header{padding:0 0 0 2px;height:44px;gap:2px}@supports (padding-top: env(safe-area-inset-top)){.header{height:calc(44px + env(safe-area-inset-top))}}.header-left{gap:2px}.header-btn{padding:2px;font-size:.6rem;min-height:36px}.apple-theme-btn{padding:2px;min-height:36px}.header-resume{display:none}.yt-player{min-height:max(120px,min(25vh,80vw));max-width:100vw}.yt-play-btn{width:36px;height:36px}.yt-play-btn svg{width:14px;height:14px}.yt-channel-avatar{width:34px;height:34px}.section-header .title{font-size:1rem}.section-header .sub{font-size:.7rem}.project-grid{grid-template-columns:1fr;gap:10px}.project-card .pc-title{font-size:.8rem}.cert-grid,.hobby-grid{grid-template-columns:1fr 1fr;gap:8px}.cert-item h4,.hobby-item h4{font-size:.85rem}.skills-grid{gap:4px}.skill-item{font-size:.68rem;padding:4px 10px}.mobile-nav-icon{font-size:.85rem}.mobile-nav-label{font-size:.45rem}.search-result{padding:8px 10px}.search-result-label{font-size:.72rem}.notion-reader-title{font-size:1.1rem}.notion-reader-body{padding:16px}.blackhole-stage{height:300px}.ab-header{gap:8px;margin-bottom:14px;padding-bottom:10px}.ab-header-avatar{width:40px;height:40px}.ab-header-name{font-size:.82rem}.ab-header-role{font-size:.6rem}.ab-header-bio{display:none}.ab-tagline{font-size:.65rem;padding:5px 10px;margin-bottom:14px}.ab-stat-card{min-width:65px;padding:8px}.ab-stat-val{font-size:.9rem}.ab-stat-lbl{font-size:.5rem}.gc-dow-label{font-size:.45rem}.gc-day{font-size:.6rem;padding:2px 0}.gc-title{font-size:.75rem}.gc-nav{font-size:.85rem;padding:1px 8px}.gc-input,.ff-input{font-size:.68rem;padding:6px 8px}.gc-book-btn,.ff-send{font-size:.7rem;padding:6px}.ff-chip{padding:4px 8px;font-size:.6rem}.notion-reader-cover{height:100px}.contact-section{padding:16px 0}}@media (min-width:421px) and (max-width:480px){.header{padding:0 4px 0 10px;height:48px}.main-area{padding:14px 14px 70px}.yt-player{min-height:200px}.yt-desc-stats{grid-template-columns:repeat(4,1fr);gap:5px}.yt-desc-stat{padding:6px;border-radius:8px}.yt-desc-stat-val{font-size:.78rem}.yt-desc-stat-lbl{font-size:.45rem}.section-header .title{font-size:1.15rem}.project-grid{grid-template-columns:repeat(2,1fr);gap:10px}}@media (min-width:1280px){body{font-size:.95rem}.main-area{padding:40px 48px}.section-header .title{font-size:1.8rem}.section-header .sub{font-size:.88rem;max-width:560px}.project-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.cert-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}.hobby-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:18px}.blackhole-stage{height:500px}.contact-columns{gap:32px}.about-section{max-width:740px}.about-section p{font-size:.92rem}}@media (min-width:1600px){.main-area{padding:48px 64px}.project-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px}}.galaxy-label{display:flex;align-items:center;gap:8px;font-size:.7rem;font-family:var(--font-mono);color:var(--primary);letter-spacing:2px;margin-bottom:16px}.galaxy-dot{width:5px;height:5px;background:var(--primary);border-radius:50%}.blackhole-wrap{width:100%;padding:20px 0}.blackhole-stage{position:relative;width:100%;height:420px;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:12px;border:1px solid var(--glass-border);background:radial-gradient(ellipse at center,#0a0a0a,#000 70%)}.blackhole-core{position:absolute;z-index:10;width:32px;height:32px;border-radius:50%;background:#000;border:2px solid rgba(249,115,22,.25);box-shadow:0 0 25px #f973161f}.blackhole-accretion{position:absolute;z-index:5;width:120px;height:30px;border-radius:50%;border:2px solid rgba(249,115,22,.12);animation:blackhole-spin 4s linear infinite;transform:perspective(300px) rotateX(65deg)}.blackhole-glow{position:absolute;z-index:1;width:100px;height:100px;border-radius:50%;background:radial-gradient(circle,rgba(249,115,22,.06) 0%,transparent 70%);animation:blackhole-pulse 3s ease-in-out infinite}.blackhole-track{position:absolute;left:50%;top:50%;width:0;height:0;transform:rotate(var(--angle))}.blackhole-skill{position:absolute;animation:blackhole-fall var(--dur) ease-in-out infinite;animation-delay:var(--delay)}.blackhole-icon-wrap{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:border-color .25s,box-shadow .25s;cursor:default}.blackhole-icon-wrap:hover{border-color:var(--primary);box-shadow:0 0 16px #f9731626}.blackhole-icon-wrap svg{width:26px;height:26px;display:block}@keyframes blackhole-fall{0%{transform:rotate(0) translate(var(--r)) rotate(0);opacity:1;scale:1}to{transform:rotate(360deg) translate(0) rotate(-360deg);opacity:0;scale:.1}}@keyframes blackhole-spin{0%{transform:perspective(300px) rotateX(65deg) rotate(0)}to{transform:perspective(300px) rotateX(65deg) rotate(360deg)}}@keyframes blackhole-pulse{0%,to{box-shadow:0 0 25px #f973160f}50%{box-shadow:0 0 50px #f973161f}}.footer{margin-top:80px;padding:48px 0 32px;border-top:1px solid var(--glass-border);display:flex;flex-direction:column;align-items:center;gap:24px;text-align:center}.footer-email{font-size:.82rem;color:var(--accent);text-decoration:none;font-family:var(--font-mono);transition:opacity .2s}.footer-email:hover{opacity:.7}.footer-socials{display:flex;gap:16px;justify-content:center;align-items:center}.footer-social-btn{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;border:1px solid var(--glass-border);background:var(--glass-bg);color:var(--text-muted);text-decoration:none;transition:all .25s ease}.footer-social-btn:hover{color:var(--accent);border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent);transform:translateY(-3px);box-shadow:0 6px 20px #00000026}.ff-form{width:100%}.ff-field{margin-bottom:12px}.ff-label{display:block;font-size:.68rem;color:var(--text-muted);margin-bottom:4px;font-weight:500;letter-spacing:.3px}.ff-input{width:100%;padding:10px 12px;border:1px solid var(--glass-border);background:var(--glass-bg);color:var(--text);font-family:var(--font-sans);font-size:.78rem;outline:none;border-radius:8px;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.ff-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #6366f11a}.ff-field.filled .ff-input{border-color:#6366f14d}.ff-field.error .ff-input{border-color:#ef4444}.ff-msg{display:block;font-size:.6rem;color:#ef4444;margin-top:2px;padding-left:4px}.ff-textarea{resize:vertical;min-height:72px}.ff-chip-group{display:flex;flex-wrap:wrap;gap:6px}.ff-chip{padding:6px 14px;border:1px solid var(--glass-border);background:transparent;color:var(--text-dim);font-size:.7rem;cursor:pointer;border-radius:20px;font-family:var(--font-sans);transition:all .2s}.ff-chip:hover{border-color:var(--accent);color:var(--accent)}.ff-chip.active{background:#6366f11f;border-color:var(--accent);color:var(--accent);font-weight:500}.ff-send{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:10px;background:var(--accent);color:#fff;border:none;border-radius:8px;font-size:.78rem;font-weight:600;cursor:pointer;font-family:var(--font-sans);transition:opacity .2s}.ff-send:hover{opacity:.85}.ff-send:disabled{opacity:.4;cursor:default}.ff-send.loading{pointer-events:none;opacity:.8}.ff-status{display:flex;align-items:center;gap:6px;padding:8px 12px;border-radius:6px;font-size:.72rem;margin-bottom:12px}.ff-status.error{background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.2)}.ff-success{text-align:center;padding:32px 0}.ff-success h4{font-size:1rem;margin:10px 0 4px;color:var(--text)}.ff-success p{font-size:.75rem;color:var(--text-dim)}.gc-toggle{display:flex;align-items:center;gap:8px;font-size:.72rem;color:var(--text-dim);cursor:pointer;margin:8px 0}.gc-toggle input{display:none}.gc-toggle-track{width:36px;height:20px;background:var(--glass-border);border-radius:10px;position:relative;transition:background .2s;flex-shrink:0}.gc-toggle input:checked+.gc-toggle-track{background:var(--accent)}.gc-toggle-thumb{position:absolute;top:2px;left:2px;width:16px;height:16px;background:#fff;border-radius:50%;transition:transform .2s}.gc-toggle input:checked+.gc-toggle-track .gc-toggle-thumb{transform:translate(16px)}.gc-attachment{margin:4px 0 8px}.gc-attach-btn{padding:6px 12px;border:1px dashed var(--glass-border);border-radius:6px;font-size:.68rem;color:var(--text-muted);cursor:pointer;text-align:center;transition:border-color .2s,color .2s}.gc-attach-btn:hover{border-color:var(--accent);color:var(--accent)}@media (max-width:640px){.contact-columns{grid-template-columns:1fr}.ff-chip-group{gap:4px}.ff-chip{padding:5px 10px;font-size:.65rem}}.header-cmd-btn--logo{margin-left:2px;margin-right:0;flex-shrink:0}.header-cmd-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:.68rem;font-weight:600;font-family:var(--font-sans);padding:6px 10px;border-radius:8px;border:1px solid var(--glass-border);background:transparent;color:var(--text-dim);cursor:pointer;margin-right:4px;transition:color .2s,border-color .2s,background .2s}.header-cmd-icon{display:none;align-items:center;justify-content:center;color:var(--text-dim)}.header-cmd-icon svg{flex-shrink:0}.header-cmd-label{white-space:nowrap}.header-cmd-btn:hover{color:var(--accent);border-color:var(--accent);background:var(--hover-bg)}.header-cmd-btn:hover .header-cmd-icon{color:var(--accent)}.vm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10050;background:color-mix(in srgb,var(--bg) 72%,transparent);display:flex;align-items:center;justify-content:center;padding:24px 16px;box-sizing:border-box}.vm-card{position:relative;width:100%;max-width:520px;max-height:min(86vh,640px);background:var(--card-bg);border:1px solid var(--glass-border);border-radius:14px;box-shadow:0 24px 80px color-mix(in srgb,var(--bg) 65%,transparent);display:flex;flex-direction:column;overflow:hidden}.vm-close{position:absolute;top:10px;right:12px;width:36px;height:36px;border:none;border-radius:8px;background:transparent;color:var(--text-dim);font-size:1.35rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .2s,background .2s}.vm-close:hover{color:var(--text);background:var(--hover-bg)}.vm-header{display:flex;align-items:center;justify-content:space-between;padding:18px 48px 4px 18px}.vm-title{font-family:var(--font-display);font-size:1.05rem;font-weight:700;color:var(--text);margin:0;letter-spacing:.02em}.vm-level{display:flex;align-items:center;gap:4px}.vm-level-dot{width:7px;height:7px;border-radius:50%;background:var(--text-muted);opacity:.35}.vm-level-dot--filled{background:var(--accent);opacity:1;box-shadow:0 0 6px color-mix(in srgb,var(--accent) 50%,transparent)}.vm-level-label{font-size:.55rem;font-weight:700;color:var(--text-muted);letter-spacing:.06em;margin-left:4px}.vm-sub{font-size:.72rem;color:var(--text-muted);margin:0 18px 10px;line-height:1.45}.vm-scroll{overflow-y:auto;padding:0 18px 18px;flex:1;min-height:0}.vm-section{margin-bottom:14px}.vm-h3{font-size:.72rem;font-weight:600;color:var(--primary);text-transform:uppercase;letter-spacing:.06em;margin:0 0 6px;font-family:var(--font-sans)}.vm-list{margin:0;padding-left:1.1rem;font-size:.78rem;color:var(--text-dim);line-height:1.5}.vm-list li{margin-bottom:4px}.vm-list strong{color:var(--text);font-weight:600}.vm-chip-grid{display:flex;flex-direction:column;gap:14px}.vm-chip-category{display:flex;flex-direction:column;gap:6px}.vm-chip-category-label{font-size:.62rem;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.08em}.vm-chip-row{display:flex;flex-wrap:wrap;gap:6px}.vm-chip{display:inline-flex;align-items:center;padding:6px 12px;border-radius:8px;background:var(--card);border:1px solid var(--glass-border);color:var(--text-dim);font-size:.72rem;font-weight:500;cursor:default;transition:border-color .2s,color .2s,background .2s,box-shadow .2s}.vm-chip:hover{border-color:var(--accent);color:var(--text);background:var(--hover-bg);box-shadow:0 2px 12px color-mix(in srgb,var(--accent) 15%,transparent)}.vm-cta{margin-top:12px;padding:10px 14px;border-radius:10px;background:color-mix(in srgb,var(--accent) 10%,var(--card-bg));border:1px solid color-mix(in srgb,var(--accent) 30%,var(--glass-border));font-size:.72rem;text-align:center;color:var(--accent);font-weight:700;letter-spacing:.02em;animation:ctaGlow 2s ease-in-out infinite}.vm-cta-arrow{display:inline-block;margin:0 4px;font-size:1.1em}@keyframes ctaGlow{0%,to{box-shadow:0 0 color-mix(in srgb,var(--accent) 20%,transparent)}50%{box-shadow:0 0 14px 2px color-mix(in srgb,var(--accent) 25%,transparent)}}.vm-pager-nav{display:flex;gap:8px;padding:0 18px 8px;flex-shrink:0}.vm-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 8px;border-radius:10px;border:1px solid var(--glass-border);background:transparent;color:var(--text-dim);font-family:var(--font-sans);font-size:.72rem;font-weight:600;cursor:pointer;transition:border-color .2s,color .2s,background .2s}.vm-tab:hover{border-color:var(--accent);color:var(--text)}.vm-tab.active{border-color:var(--accent);color:var(--accent);background:var(--hover-bg)}.vm-tab-num{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:22px;border-radius:6px;background:var(--glass-bg);border:1px solid var(--glass-border);font-size:.6rem;font-family:var(--font-mono);font-weight:700;letter-spacing:.04em}.vm-tab.active .vm-tab-num{border-color:var(--accent);color:var(--accent)}.vm-tab-label{text-align:left;flex:1}.vm-kbd-mini{font-size:.58rem;font-family:var(--font-mono);padding:2px 5px;border-radius:4px;border:1px solid var(--glass-border);color:var(--text-muted);opacity:.85}.vm-page-viewport{flex:1;min-height:0;overflow:hidden;position:relative}.vm-page-motion{height:100%;min-height:200px;max-height:min(52vh,420px);touch-action:pan-y}.vm-page-motion .vm-scroll{max-height:min(52vh,420px)}.vm-kbd{display:inline-block;font-size:.62rem;font-family:var(--font-mono);padding:2px 6px;margin:0 1px;border-radius:4px;border:1px solid var(--glass-border);background:var(--glass-bg);color:var(--text)}@media (max-width: 520px){.voice-transcript-bar{padding:6px 8px;font-size:.65rem}}.pc-body-row{display:flex;align-items:flex-start;gap:4px}.pc-body-row .pc-body{flex:1}.pc-menu{position:relative;flex-shrink:0}.pc-menu-btn{background:var(--bg2);border:none;color:var(--text-muted);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background .2s,color .2s}.pc-menu-btn:hover{color:var(--accent)}.pc-dropdown{position:absolute;top:100%;right:0;margin-top:4px;min-width:130px;background:var(--glass-nav);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:8px;padding:4px;z-index:20;box-shadow:0 8px 32px #0000004d}.pc-dropdown-item{display:flex;align-items:center;gap:8px;padding:8px 12px;font-size:.75rem;color:var(--text-dim);background:none;border:none;cursor:pointer;width:100%;text-align:left;font-family:var(--font-sans);border-radius:6px;transition:all .15s;text-decoration:none}.pc-dropdown-item:hover{background:var(--hover-bg);color:var(--text)}.cp-nav{display:flex;align-items:center;gap:10px;padding:10px 0;margin-bottom:14px;border-bottom:1px solid var(--glass-border)}.ho-subnav{display:flex;align-items:center;gap:12px;padding:6px 12px 8px;border-top:1px solid var(--ho-outline);margin-top:-2px}.ho-subnav-back{display:flex;align-items:center;gap:6px;background:none;border:1px solid var(--ho-outline);color:var(--ho-tagline);padding:4px 12px;border-radius:8px;font-size:.7rem;font-family:var(--font-sans);cursor:pointer;flex-shrink:0;white-space:nowrap;transition:all .2s}.ho-subnav-back:hover{border-color:var(--primary);color:var(--primary)}.ho-subnav-scroll{display:flex;gap:6px;overflow-x:auto;flex:1;scrollbar-width:none;-webkit-overflow-scrolling:touch}.ho-subnav-scroll::-webkit-scrollbar{display:none}.ho-subnav-chip{background:var(--ho-bg2);border:1px solid var(--ho-outline);color:var(--ho-link);padding:3px 10px;border-radius:6px;font-size:.65rem;font-family:var(--font-sans);cursor:pointer;white-space:nowrap;flex-shrink:0;transition:all .2s;opacity:.8}.ho-subnav-chip:hover{border-color:var(--primary);color:var(--primary);opacity:1}.ho-subnav-arrows{display:flex;align-items:center;gap:8px;margin-left:auto}.ho-subnav-arrow{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:1px solid var(--ho-outline);border-radius:50%;background:transparent;color:var(--ho-tagline);cursor:pointer;padding:0;transition:all .2s}.ho-subnav-arrow:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.ho-subnav-arrow:disabled{opacity:.25;cursor:not-allowed}.ho-subnav-pos{font-size:.68rem;font-family:var(--font-mono);color:var(--ho-tagline);white-space:nowrap;min-width:36px;text-align:center}.cp-back-btn{display:flex;align-items:center;gap:4px;background:none;border:1px solid var(--glass-border);color:var(--text-dim);padding:6px 12px;border-radius:8px;font-size:.75rem;font-family:var(--font-sans);cursor:pointer;flex-shrink:0;transition:all .2s}.cp-back-btn:hover{border-color:var(--accent);color:var(--accent)}.cp-nav-arrows{display:flex;align-items:center;gap:8px;margin-left:auto}.cp-nav-arrow{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid var(--glass-border);border-radius:50%;background:transparent;color:var(--text-dim);cursor:pointer;transition:all .2s;padding:0}.cp-nav-arrow:hover:not(:disabled){border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.cp-nav-arrow:disabled{opacity:.25;cursor:not-allowed}.cp-nav-position{font-size:.72rem;font-family:var(--font-mono);color:var(--text-muted);white-space:nowrap;min-width:36px;text-align:center}.cp-nav-scroll{display:flex;gap:6px;overflow-x:auto;flex:1;scrollbar-width:none;-webkit-overflow-scrolling:touch}.cp-nav-scroll::-webkit-scrollbar{display:none}.cp-nav-chip{flex-shrink:0;padding:7px 12px;border:1px solid transparent;background:transparent;border-radius:20px;font-size:.74rem;color:var(--text-dim);font-family:var(--font-sans);cursor:pointer;transition:color .2s,background .2s,border-color .2s;white-space:nowrap}.cp-nav-chip:hover{background:var(--glass-bg);color:var(--accent)}.cp-chip-wrap{position:relative;display:inline-flex;align-items:center;flex-shrink:0}.pp-content{max-width:800px;margin:0 auto}.pp-video-wrap{position:relative;width:100%;aspect-ratio:16 / 9;border-radius:12px;overflow:hidden;background:#000;margin-bottom:24px;border:1px solid var(--glass-border)}.pp-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:none}.pp-image-wrap{width:100%;margin:0 auto 22px;border:1px solid var(--glass-border);border-radius:12px;overflow:hidden;background:var(--glass-bg)}.pp-image{display:block;width:100%;height:auto;-o-object-fit:cover;object-fit:cover}.pp-title{font-size:1.8rem;font-weight:700;font-family:var(--font-display);color:var(--text);margin:0 0 12px;letter-spacing:-.5px}.pp-tools{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.pp-tool-chip{padding:4px 12px;border:1px solid var(--glass-border);border-radius:16px;font-size:.7rem;color:var(--primary);background:var(--hover-bg);font-family:var(--font-mono)}.pp-brief{font-size:1rem;color:var(--text);line-height:1.6;margin-bottom:8px;font-weight:500}.pp-details{font-size:.88rem;color:var(--text-dim);line-height:1.7;margin-bottom:20px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.pp-actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:32px}.pp-action-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 18px;border:1px solid var(--glass-border);border-radius:8px;font-size:.78rem;color:var(--text-dim);background:var(--glass-bg);cursor:pointer;font-family:var(--font-sans);text-decoration:none;transition:all .2s}.pp-action-btn:hover{border-color:var(--accent);color:var(--accent)}.pp-action-btn--primary{background:var(--accent);color:var(--bg);border-color:var(--accent)}.pp-action-btn--primary:hover{filter:brightness(1.1);color:var(--bg)}.pp-readme{border-top:1px solid var(--glass-border);padding-top:24px;margin-top:8px}.pp-readme-title{font-size:1.1rem;font-weight:600;font-family:var(--font-display);color:var(--text);margin-bottom:16px}.bp-page{max-width:740px;margin:0 auto;padding-bottom:60px}.bp-back{display:flex;align-items:center;gap:4px;background:none;border:1px solid var(--glass-border);color:var(--text-dim);padding:6px 14px;border-radius:8px;font-size:.75rem;font-family:var(--font-sans);cursor:pointer;transition:all .2s;margin-bottom:24px}.bp-back:hover{border-color:var(--accent);color:var(--accent)}.bp-hero{width:100%;border-radius:16px;overflow:hidden;margin-bottom:32px;border:1px solid var(--glass-border);box-shadow:0 8px 32px color-mix(in srgb,var(--bg) 30%,rgba(0,0,0,.15))}.bp-hero-img{width:100%;height:auto;display:block;aspect-ratio:16 / 9;-o-object-fit:cover;object-fit:cover}.bp-article{margin-bottom:48px}.bp-header{margin-bottom:32px;text-align:center}.bp-title{font-size:clamp(1.5rem,3.5vw,2.2rem);font-weight:700;font-family:var(--font-display);color:var(--text);line-height:1.25;margin:0 0 12px;letter-spacing:-.5px}.bp-date{font-size:.8rem;color:var(--text-muted);font-family:var(--font-mono);display:inline-flex;align-items:center;gap:6px}.bp-content{font-size:1.05rem;line-height:1.85;color:var(--text-dim)}.bp-content p{margin-bottom:20px}.bp-content a{color:var(--accent);text-decoration:underline;text-underline-offset:2px;text-decoration-color:color-mix(in srgb,var(--accent) 40%,transparent);transition:text-decoration-color .2s}.bp-content a:hover{text-decoration-color:var(--accent)}.bp-content strong{color:var(--text);font-weight:600}.bp-content img{border-radius:10px;box-shadow:0 4px 16px color-mix(in srgb,var(--bg) 20%,rgba(0,0,0,.1))}.bp-content ul,.bp-content ol{padding-left:24px;margin:12px 0}.bp-content li{margin-bottom:6px}.bp-h1{font-size:1.7rem;margin:36px 0 14px;color:var(--text);font-family:var(--font-display);font-weight:700;letter-spacing:-.3px}.bp-h2{font-size:1.35rem;margin:30px 0 12px;color:var(--text);font-family:var(--font-display);font-weight:600}.bp-h3{font-size:1.1rem;margin:24px 0 10px;color:var(--text);font-family:var(--font-display);font-weight:600}.bp-paragraph{margin-bottom:20px}.bp-li{margin-bottom:6px}.bp-ul,.bp-ol{padding-left:24px;margin:12px 0}.bp-ul li,.bp-ol li{margin-bottom:6px;line-height:1.7}.bp-todo{display:flex;align-items:flex-start;gap:10px;margin:8px 0;line-height:1.7}.bp-todo input[type=checkbox]{margin-top:5px;accent-color:var(--accent)}.bp-bookmark{display:block;padding:12px 16px;margin:12px 0;border:1px solid var(--glass-border);border-radius:8px;color:var(--accent);text-decoration:none;font-size:.82rem;word-break:break-all}.bp-bookmark:hover{border-color:var(--accent);background:var(--hover-bg)}.bp-columns{display:flex;gap:20px;margin:16px 0}.bp-column{flex:1;min-width:0}.bp-code-wrap{margin:20px 0;border:1px solid var(--glass-border);border-radius:10px;overflow:hidden}.bp-code-bar{display:flex;align-items:center;justify-content:space-between;padding:6px 14px;background:color-mix(in srgb,var(--bg) 50%,rgba(0,0,0,.15));border-bottom:1px solid var(--glass-border)}.bp-code-lang{font-size:.6rem;font-family:var(--font-mono);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.bp-code-copy{display:inline-flex;align-items:center;gap:4px;background:none;border:none;color:var(--text-muted);font-size:.6rem;font-family:var(--font-sans);cursor:pointer;padding:2px 6px;border-radius:4px;transition:color .15s,background .15s}.bp-code-copy:hover{color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.bp-code{background:var(--bg2);padding:16px 20px;overflow-x:auto;font-size:.82rem;line-height:1.6;margin:0}.bp-code code{background:none;padding:0;font-size:inherit}.bp-inline-code{background:color-mix(in srgb,var(--accent) 12%,var(--card-bg));color:var(--accent);padding:1px 6px;border-radius:4px;font-size:.85em;font-family:var(--font-mono);border:1px solid color-mix(in srgb,var(--accent) 15%,transparent)}.bp-quote{border-left:3px solid var(--accent);padding:16px 22px;margin:20px 0;background:var(--glass-bg);border-radius:0 10px 10px 0;font-style:italic;color:var(--text);font-size:.95rem;position:relative}.bp-figure{margin:24px 0}.bp-image{max-width:100%;border-radius:10px;display:block;box-shadow:0 4px 20px color-mix(in srgb,var(--bg) 20%,rgba(0,0,0,.12))}.bp-figcaption{text-align:center;font-size:.78rem;color:var(--text-muted);margin-top:8px;font-style:italic;font-family:var(--font-sans)}.bp-hr{border:none;border-top:1px solid var(--glass-border);margin:32px 0}.bp-callout{background:color-mix(in srgb,var(--accent) 8%,var(--card-bg));border:1px solid color-mix(in srgb,var(--accent) 25%,var(--glass-border));border-radius:10px;padding:16px 20px;margin:20px 0;font-size:.9rem;color:var(--text)}.bp-table-wrap{overflow-x:auto;margin:20px 0;border:1px solid var(--glass-border);border-radius:10px}.bp-table{width:100%;border-collapse:collapse;font-size:.85rem;line-height:1.6}.bp-table th,.bp-table td{padding:10px 14px;border:1px solid var(--glass-border);text-align:left}.bp-table th{background:color-mix(in srgb,var(--accent) 6%,transparent);color:var(--text);font-weight:600;font-family:var(--font-display);font-size:.8rem}.bp-table tr:nth-child(2n) td{background:#00000008}.bp-toggle{margin:16px 0;border:1px solid var(--glass-border);border-radius:10px;overflow:hidden}.bp-toggle-summary{padding:12px 16px;cursor:pointer;font-weight:600;color:var(--text);font-size:.85rem;list-style:none;display:flex;align-items:center;gap:8px;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background .15s}.bp-toggle-summary:hover{background:var(--hover-bg)}.bp-toggle-summary:before{content:"▶";font-size:.65rem;color:var(--accent);transition:transform .2s}.bp-toggle[open] .bp-toggle-summary:before{transform:rotate(90deg)}.bp-toggle-content{padding:0 16px 12px;border-top:1px solid var(--glass-border)}.bp-nav-bottom{border-top:1px solid var(--glass-border);padding-top:28px;margin-top:20px}.bp-related{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}.bp-related-card{text-align:left;background:var(--card-bg);border:1px solid var(--glass-border);border-radius:12px;padding:14px;cursor:pointer;font-family:var(--font-sans);transition:all .25s}.bp-related-card:hover{border-color:var(--accent);box-shadow:0 4px 16px color-mix(in srgb,var(--accent) 12%,transparent);transform:translateY(-2px)}.bp-related-img{width:100%;aspect-ratio:16 / 9;-o-object-fit:cover;object-fit:cover;border-radius:6px;margin-bottom:10px;display:block}.bp-related-title{display:block;font-size:.85rem;font-weight:600;color:var(--text);margin-bottom:4px;font-family:var(--font-display);line-height:1.3}.bp-related-date{display:block;font-size:.65rem;color:var(--text-muted);font-family:var(--font-mono)}.markdown-body{font-size:.88rem;color:var(--text-dim);line-height:1.7}.markdown-body [align=center]{text-align:center}.markdown-body h1{font-size:1.6rem;margin:28px 0 12px;color:var(--text);font-family:var(--font-display);font-weight:700}.markdown-body h2{font-size:1.3rem;margin:24px 0 10px;color:var(--text);font-family:var(--font-display);font-weight:600}.markdown-body h3{font-size:1.1rem;margin:20px 0 8px;color:var(--text);font-family:var(--font-display);font-weight:600}.markdown-body h4{font-size:1rem;margin:18px 0 8px;color:var(--text);font-family:var(--font-display);font-weight:600}.markdown-body h5{font-size:.92rem;margin:16px 0 6px;color:var(--text);font-family:var(--font-display);font-weight:600}.markdown-body h6{font-size:.85rem;margin:14px 0 6px;color:var(--text-muted);font-family:var(--font-display);font-weight:600}.markdown-body h1 img,.markdown-body h2 img,.markdown-body h3 img,.markdown-body h4 img,.markdown-body h5 img,.markdown-body h6 img,.markdown-body h1 a img,.markdown-body h2 a img,.markdown-body h3 a img,.markdown-body h4 a img,.markdown-body h5 a img,.markdown-body h6 a img{display:inline;vertical-align:middle;margin:0 4px;border-radius:0}.markdown-body p{margin-bottom:16px}.markdown-body ul,.markdown-body ol{margin:12px 0;padding-left:24px}.markdown-body li{margin-bottom:4px}.markdown-body code{background:var(--bg2);padding:2px 6px;border-radius:4px;font-size:.82rem;font-family:var(--font-mono)}.markdown-body pre{background:var(--bg2);border:1px solid var(--glass-border);border-radius:8px;padding:16px;overflow-x:auto;margin:16px 0}.markdown-body pre code{background:none;padding:0;border-radius:0}.markdown-body blockquote{border-left:3px solid var(--accent);padding:12px 18px;margin:16px 0;background:var(--glass-bg);border-radius:0 8px 8px 0;font-style:italic;color:var(--text)}.markdown-body a{color:var(--accent);text-decoration:none}.markdown-body a:hover{text-decoration:underline}.markdown-body img{max-width:100%;border-radius:8px;margin:16px 0}.markdown-body p img,.markdown-body p a img{display:inline;margin:0;vertical-align:middle}.markdown-body hr{border:none;border-top:1px solid var(--glass-border);margin:24px 0}.markdown-body table{width:100%;border-collapse:collapse;margin:16px 0;font-size:.82rem}.markdown-body th,.markdown-body td{border:1px solid var(--glass-border);padding:8px 12px;text-align:left}.markdown-body th{background:var(--bg2);font-weight:600;color:var(--text)}.markdown-body details{margin:16px 0;padding:12px 16px;background:var(--bg2);border:1px solid var(--glass-border);border-radius:8px}.markdown-body summary{cursor:pointer;font-weight:600;color:var(--text);padding:4px 0;font-family:var(--font-display)}.markdown-body summary:hover{opacity:.8}.markdown-body kbd{padding:2px 6px;border-radius:4px;border:1px solid var(--glass-border);background:var(--bg2);font-family:var(--font-mono);font-size:.78rem;box-shadow:0 1px 0 var(--glass-border);color:var(--text)}.markdown-body sup,.markdown-body sub{font-size:.7em}.pp-readme-body{padding:4px 0}.pp-readme-empty{color:var(--text-muted);font-size:.85rem;font-style:italic;padding:24px 0;text-align:center}.pp-readme-fallback{padding:8px 0}.pp-readme-raw{font-family:var(--font-mono);font-size:.78rem;line-height:1.6;color:var(--text-dim);white-space:pre-wrap;word-break:break-word;background:var(--bg2);border:1px solid var(--glass-border);border-radius:8px;padding:16px;overflow-x:auto;margin:0}@media (max-width: 768px){.markdown-body h1{font-size:1.3rem}.markdown-body h2{font-size:1.1rem}.markdown-body h3{font-size:.95rem}.markdown-body h4{font-size:.9rem}.markdown-body pre{font-size:.78rem}.markdown-body table{font-size:.75rem}.markdown-body th,.markdown-body td{padding:6px 8px}}@media (max-width: 768px){.pp-title{font-size:1.4rem}.cp-nav{flex-wrap:wrap;gap:8px}.cp-nav-scroll{width:100%}.cp-nav-arrows{margin-left:auto}.pp-image-wrap{max-width:100%;border-radius:10px;margin-left:auto;margin-right:auto}.bp-title{font-size:1.5rem}.bp-page{padding-left:16px;padding-right:16px}.pp-actions{flex-direction:column}.pp-action-btn{justify-content:center}}@media (max-width: 520px){.pp-title{font-size:1.2rem}.bp-title{font-size:1.3rem}.bp-related{grid-template-columns:1fr}.pc-dropdown{min-width:120px}}@keyframes vn-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes vn-blink{0%,to{opacity:1}50%{opacity:0}}@keyframes vn-pulse{0%,to{opacity:.3}50%{opacity:.8}}@keyframes vn-twinkle{0%,to{opacity:.2}50%{opacity:.7}}@keyframes vn-fall{0%{transform:translateY(-10px) rotate(0);opacity:1}to{transform:translateY(400px) rotate(180deg);opacity:0}}@keyframes vn-code-float{0%,to{transform:translateY(0);opacity:.15}50%{transform:translateY(-20px);opacity:.4}}.vn-container{position:relative;width:100%;max-width:800px;margin:0 auto;min-height:480px;height:calc(100vh - 160px);max-height:640px;border-radius:12px;overflow:hidden;background:#0a0a1a;box-shadow:0 0 0 2px var(--bg),0 0 0 5px var(--accent);cursor:pointer}.vn-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;transition:background .5s}.bg-boot{background:#000}.bg-intro{background:linear-gradient(160deg,#0a0a2e,#120a2e 40%,#0f0a2e)}.bg-skills{background:linear-gradient(160deg,#0a1a0f,#0d1f12 40%,#09140d)}.bg-projects{background:linear-gradient(160deg,#1a0a2e,#251040 40%,#15081e)}.bg-hobbies{background:linear-gradient(160deg,#1a0f2e,#2a1535 30%,#3a1f30)}.bg-contact{background:linear-gradient(160deg,#0a0a2e,#0f0f3a 40%,#0a0a1e)}.vn-boot{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#000;font-family:"Press Start 2P",monospace}.vn-boot-text{font-size:1rem;color:var(--accent);text-shadow:0 0 10px var(--accent)}.vn-boot-sub{font-size:.45rem;color:var(--text-muted);margin-top:16px}.vn-layout{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;display:flex;justify-content:center;align-items:flex-end;padding:40px 24px 100px;gap:18px}.vn-left{flex:0 0 auto;display:flex;align-items:flex-end;justify-content:center;width:120px}.vn-character-wrapper{position:relative;display:flex;align-items:flex-end;height:100%}.vn-character{position:relative;display:flex;align-items:flex-end}.vn-character canvas,.vn-character-img{display:block;image-rendering:pixelated;pointer-events:none}.vn-character-placeholder{width:96px;height:192px;display:flex;align-items:center;justify-content:center;font-size:3rem;color:var(--accent)}.vn-mouth-overlay{position:absolute;top:42%;left:50%;transform:translate(-50%);width:8px;height:3px;background:#333;border-radius:1px;animation:vn-blink .3s ease-in-out infinite;pointer-events:none}.vn-right{flex:0 1 auto;width:300px;max-width:350px;display:flex;align-items:flex-end;justify-content:center;min-width:0;position:relative}@media (min-width: 1024px){.vn-container{max-width:900px;min-height:520px;height:calc(100vh - 140px);max-height:700px}.vn-layout{gap:22px}.vn-left{width:150px}.vn-character .vn-character-img{height:230px!important}.vn-right{width:400px;max-width:440px}.panel{padding:18px 22px}.panel-h{font-size:.44rem}.sr-n{font-size:.5rem;min-width:56px}.bar-bg{height:6px}.sr-v{font-size:.42rem}.pc-t{font-size:.5rem}.pc-b{font-size:.44rem}.hc-n{font-size:.52rem}.lc-l{font-size:.48rem;min-width:48px}.vn-textbox{padding:14px 18px}.vn-textbox-content{font-size:.82rem}.choices-grid{max-width:300px}.choice-btn{font-size:.42rem;padding:12px 18px}.boot-title{font-size:1rem}}.vn-bubble-cursor{display:inline-block;margin-left:2px;font-size:.55rem;animation:vn-blink .8s step-end infinite;color:var(--accent)}.vn-bubble-next{text-align:center;font-size:.55rem;color:var(--text-muted);margin-top:4px;font-style:italic}.vn-content-reveal{width:100%}.panel{background:#0a0a1ad1;border:1px solid rgba(255,255,255,.06);border-radius:10px;padding:14px 14px 12px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.panel-h{font-family:"Press Start 2P",monospace;font-size:.4rem;color:var(--accent);letter-spacing:3px;margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid rgba(255,255,255,.05);text-transform:uppercase}.panel-ambient{display:flex;align-items:center;justify-content:center;min-height:70px;border:1px dashed rgba(255,255,255,.06)}.ambient-t{font-style:italic;font-size:.5rem;color:#ffffff1f;text-align:center;line-height:1.5;padding:6px}.sg{margin-bottom:8px}.sg:last-child{margin-bottom:0}.sg-badge{font-family:"Press Start 2P",monospace;font-size:.28rem;letter-spacing:1.5px;margin-bottom:4px;opacity:.7}.sr{display:flex;align-items:center;gap:6px;padding:2px 0}.sr-n{font-size:.48rem;color:#ccc;min-width:48px;flex-shrink:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sr-b{flex:1;display:flex;align-items:center;gap:4px}.bar-bg{flex:1;height:5px;background:#ffffff0a;border-radius:3px;overflow:hidden}.bar-fg{height:100%;border-radius:3px}.sr-v{font-size:.4rem;font-weight:600;color:var(--text-dim);min-width:20px;text-align:right}.pc{margin-bottom:6px;padding:6px 8px;background:#ffffff04;border-radius:6px;border:1px solid rgba(255,255,255,.04)}.pc:last-child{margin-bottom:0}.pc-head{display:flex;align-items:center;gap:6px}.pc-dot{width:4px;height:4px;border-radius:50%;background:var(--accent);flex-shrink:0}.pc-t{font-size:.48rem;color:var(--text);font-weight:600;line-height:1.35}.pc-b{font-size:.42rem;color:var(--text-dim);margin-top:2px;line-height:1.35;padding-left:10px}.pc-ts{display:flex;flex-wrap:wrap;gap:3px;margin-top:3px;padding-left:10px}.pc-tag{font-size:.36rem;padding:1px 5px;background:#ffffff08;color:var(--text-muted);border-radius:3px;font-family:monospace}.hc{margin-bottom:5px;padding:6px 8px;background:#ffffff04;border-radius:6px}.hc:last-child{margin-bottom:0}.hc-n{font-size:.5rem;font-weight:600;color:var(--text)}.hc-d{font-size:.42rem;color:var(--text-dim);margin-top:2px;line-height:1.3}.lc{display:flex;align-items:baseline;gap:8px;padding:6px 8px;border:1px solid rgba(255,255,255,.04);border-radius:6px;color:var(--text);text-decoration:none;transition:all .15s;background:#ffffff03;margin-bottom:4px}.lc:last-child{margin-bottom:0}.lc:hover{background:#6366f10f;border-color:#6366f126}.lc-l{font-size:.48rem;font-weight:600;color:var(--text);min-width:44px;letter-spacing:.5px}.lc-v{font-size:.42rem;color:var(--text-muted);font-family:monospace}.vn-textbox-area{position:absolute;bottom:0;left:0;right:0;z-index:5;padding:0 12px 12px;cursor:pointer}.vn-textbox{background:#0a0a1af0;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:12px 14px;position:relative;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.vn-textbox-label{font-family:"Press Start 2P",monospace;font-size:.35rem;letter-spacing:2px;margin-bottom:6px}.label-system{color:#ffffff4d}.label-debayan{color:var(--accent)}.vn-textbox-content{font-size:.75rem;line-height:1.6;color:#d0d0d0;min-height:1.6em;word-wrap:break-word}.type-cursor{display:inline-block;animation:vn-blink .6s step-end infinite;color:var(--accent);margin-left:1px;font-weight:300}.vn-textbox-advance{position:absolute;right:12px;bottom:8px;font-size:.45rem;color:var(--accent);animation:vn-blink .8s step-end infinite}.vn-choices-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:8;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#000000bf;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding:20px}.choices-title{font-family:"Press Start 2P",monospace;font-size:.45rem;color:var(--accent);letter-spacing:2px;margin-bottom:16px;text-transform:uppercase}.choices-grid{display:flex;flex-direction:column;gap:8px;width:100%;max-width:260px}.choice-btn{font-family:"Press Start 2P",monospace;font-size:.4rem;padding:10px 16px;border:1px solid rgba(255,255,255,.12);background:#0a0a1ad9;color:var(--text);border-radius:6px;cursor:pointer;transition:all .2s;text-align:left;letter-spacing:.5px}.choice-btn:hover{background:#6366f126;border-color:var(--accent);color:#fff}.vn-close{position:absolute;top:8px;right:8px;z-index:10;width:28px;height:28px;background:#0006;border:1px solid rgba(255,255,255,.2);border-radius:6px;color:var(--text-muted);font-size:.75rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.vn-close:hover{background:#ff50504d;color:#ff5050}.vn-end-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;align-items:center;justify-content:center;background:#000000e0;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.vn-end-card{text-align:center;padding:32px;background:linear-gradient(180deg,#141432f2,#0a0a1af2);border:1px solid rgba(255,255,255,.1);border-radius:12px;max-width:320px}.end-title{font-family:"Press Start 2P",monospace;font-size:.55rem;color:var(--accent);letter-spacing:2px;margin-bottom:8px}.end-sub{font-size:.55rem;color:var(--text-muted);margin-bottom:20px}.end-actions{display:flex;gap:8px;justify-content:center}.end-btn{font-family:"Press Start 2P",monospace;font-size:.38rem;padding:8px 14px;border:1px solid var(--accent);background:transparent;color:var(--accent);border-radius:6px;cursor:pointer;transition:all .2s;letter-spacing:1px}.end-btn:hover{background:var(--accent);color:var(--bg)}.boot-title{font-family:"Press Start 2P",monospace;font-size:.9rem;color:var(--accent);text-shadow:0 0 20px var(--accent);letter-spacing:4px}.boot-sub{font-family:"Press Start 2P",monospace;font-size:.4rem;color:var(--text-muted);margin-top:14px;letter-spacing:2px}@media (min-width: 481px) and (max-width: 768px){.vn-container{height:calc(100dvh - 120px);max-height:520px;min-height:420px;border-radius:10px}.vn-layout{padding:28px 18px 92px;gap:14px}.vn-left{width:100px}.vn-character .vn-character-img{height:160px!important;transform:scale(.7);transform-origin:bottom left}.vn-right{align-items:flex-end;width:260px;max-width:280px}.panel{padding:14px 16px}.panel-h{font-size:.36rem}.sr-n{font-size:.44rem;min-width:42px}.bar-bg{height:4px}.sr-v{font-size:.38rem}.pc-t{font-size:.44rem}.pc-b{font-size:.4rem}.hc-n{font-size:.48rem}.lc-l{font-size:.44rem}.vn-textbox{padding:12px 14px}.vn-textbox-label{font-size:.32rem}.vn-textbox-content{font-size:.7rem}.choices-grid{max-width:240px}.choice-btn{font-size:.38rem;padding:9px 14px}.boot-title{font-size:.8rem}}@media (max-width: 480px){.vn-container{height:calc(100dvh - 100px);max-height:none;min-height:360px;border-radius:6px;cursor:default;padding-bottom:env(safe-area-inset-bottom,0px)}.vn-layout{padding:12px 8px 80px;gap:4px}.vn-left{width:64px}.vn-character .vn-character-img{height:140px!important;transform:scale(.45);transform-origin:bottom left}.vn-character-placeholder{width:64px;height:140px;font-size:2rem}.vn-right{flex:1;width:auto;max-width:none;overflow-y:auto;align-items:flex-start}.vn-right::-webkit-scrollbar{width:2px}.vn-right::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:2px}.vn-content-reveal{max-width:100%}.panel{padding:10px 10px 8px}.panel-h{font-size:.32rem;margin-bottom:6px}.sg-badge{font-size:.24rem}.sr-n{font-size:.4rem;min-width:34px}.bar-bg{height:4px}.sr-v{font-size:.35rem;min-width:18px}.pc{padding:4px 6px;margin-bottom:4px}.pc-t{font-size:.4rem}.pc-b{font-size:.36rem}.pc-tag{font-size:.3rem;padding:1px 3px}.hc{padding:4px 6px;margin-bottom:3px}.hc-n{font-size:.42rem}.hc-d{font-size:.36rem}.lc{padding:4px 6px;margin-bottom:2px;gap:4px}.lc-l{font-size:.38rem;min-width:32px}.lc-v{font-size:.36rem}.ambient-t{font-size:.42rem}.vn-textbox-area{padding:0 6px 6px}.vn-textbox{padding:8px 10px;border-radius:6px}.vn-textbox-label{font-size:.28rem;margin-bottom:3px}.vn-textbox-content{font-size:.6rem;line-height:1.45}.vn-textbox-advance{right:8px;bottom:5px;font-size:.38rem}.type-cursor{font-size:.6rem}.choices-title{font-size:.32rem;margin-bottom:10px}.choices-grid{max-width:200px;gap:5px}.choice-btn{font-size:.32rem;padding:7px 10px}.vn-mouth-overlay{display:none}.vn-close{width:32px;height:32px;font-size:.75rem;top:3px;right:3px;border-radius:6px}.vn-end-card{padding:16px 20px;max-width:240px}.end-title{font-size:.38rem}.end-sub{font-size:.42rem}.end-btn{font-size:.3rem;padding:5px 10px}.boot-title{font-size:.55rem}.boot-sub{font-size:.32rem}}
