@import"https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,200..800&family=Jost:ital,wght@0,100..900;1,100..900&family=Roboto+Flex:opsz,wght,XOPQ,XTRA,YOPQ,YTDE,YTFI,YTLC,YTUC@8..144,100..1000,96,468,79,-203,738,514,712&display=swap";:root{--md-sys-color-primary: rgb(129 76 119);--md-sys-color-surface-tint: rgb(129 76 119);--md-sys-color-on-primary: rgb(255 255 255);--md-sys-color-primary-container: rgb(255 215 243);--md-sys-color-on-primary-container: rgb(103 53 94);--md-sys-color-secondary: rgb(110 88 104);--md-sys-color-on-secondary: rgb(255 255 255);--md-sys-color-secondary-container: rgb(248 218 238);--md-sys-color-on-secondary-container: rgb(85 64 80);--md-sys-color-tertiary: rgb(129 83 67);--md-sys-color-on-tertiary: rgb(255 255 255);--md-sys-color-tertiary-container: rgb(255 219 207);--md-sys-color-on-tertiary-container: rgb(102 60 45);--md-sys-color-error: rgb(186 26 26);--md-sys-color-on-error: rgb(255 255 255);--md-sys-color-error-container: rgb(255 218 214);--md-sys-color-on-error-container: rgb(147 0 10);--md-sys-color-background: rgb(255 247 249);--md-sys-color-on-background: rgb(32 26 30);--md-sys-color-surface: rgb(255 247 249);--md-sys-color-on-surface: rgb(32 26 30);--md-sys-color-surface-variant: rgb(238 222 231);--md-sys-color-on-surface-variant: rgb(78 68 75);--md-sys-color-outline: rgb(128 116 123);--md-sys-color-outline-variant: rgb(210 194 203);--md-sys-color-shadow: rgb(0 0 0);--md-sys-color-scrim: rgb(0 0 0);--md-sys-color-inverse-surface: rgb(54 46 51);--md-sys-color-inverse-on-surface: rgb(250 237 243);--md-sys-color-inverse-primary: rgb(243 178 228);--md-sys-color-primary-fixed: rgb(255 215 243);--md-sys-color-on-primary-fixed: rgb(52 8 48);--md-sys-color-primary-fixed-dim: rgb(243 178 228);--md-sys-color-on-primary-fixed-variant: rgb(103 53 94);--md-sys-color-secondary-fixed: rgb(248 218 238);--md-sys-color-on-secondary-fixed: rgb(39 22 36);--md-sys-color-secondary-fixed-dim: rgb(219 190 209);--md-sys-color-on-secondary-fixed-variant: rgb(85 64 80);--md-sys-color-tertiary-fixed: rgb(255 219 207);--md-sys-color-on-tertiary-fixed: rgb(50 18 7);--md-sys-color-tertiary-fixed-dim: rgb(245 185 165);--md-sys-color-on-tertiary-fixed-variant: rgb(102 60 45);--md-sys-color-surface-dim: rgb(227 215 221);--md-sys-color-surface-bright: rgb(255 247 249);--md-sys-color-surface-container-lowest: rgb(255 255 255);--md-sys-color-surface-container-low: rgb(253 240 246);--md-sys-color-surface-container: rgb(248 234 240);--md-sys-color-surface-container-high: rgb(242 229 235);--md-sys-color-surface-container-highest: rgb(236 223 229);--md-skill-kotlin: rgb(234 221 255);--md-skill-on-kotlin: rgb(56 18 105);--md-skill-android: rgb(196 238 208);--md-skill-on-android: rgb(0 57 25);--md-skill-javascript: rgb(255 236 178);--md-skill-on-javascript: rgb(65 45 0);--md-skill-react: rgb(189 243 255);--md-skill-on-react: rgb(0 51 64);--md-skill-python: rgb(211 227 253);--md-skill-on-python: rgb(6 42 100);--md-skill-rust: rgb(255 219 194);--md-skill-on-rust: rgb(80 27 0);--md-skill-embedded: rgb(210 232 213);--md-skill-on-embedded: rgb(12 52 24);--md-skill-sql: rgb(210 228 255);--md-skill-on-sql: rgb(0 38 90);--md-skill-nodejs: rgb(198 238 214);--md-skill-on-nodejs: rgb(0 54 28);--md-skill-git: rgb(255 218 212);--md-skill-on-git: rgb(96 17 0);--md-skill-typescript: rgb(205 229 255);--md-skill-on-typescript: rgb(0 43 96);--md-skill-compose: rgb(255 212 246);--md-skill-on-compose: rgb(89 0 80);--md-skill-java: rgb(255 228 196);--md-skill-on-java: rgb(80 35 0);--md-skill-mvvm: rgb(220 230 255);--md-skill-on-mvvm: rgb(10 36 100);--md-skill-viewmodel: rgb(225 240 220);--md-skill-on-viewmodel: rgb(15 50 10);--md-skill-sqlite: rgb(215 235 255);--md-skill-on-sqlite: rgb(0 40 90);--md-skill-room: rgb(208 232 255);--md-skill-on-room: rgb(0 38 85);--md-skill-firebase: rgb(255 230 180);--md-skill-on-firebase: rgb(80 38 0);--md-skill-md3: rgb(255 212 246);--md-skill-on-md3: rgb(89 0 80);--md-skill-esp32: rgb(210 240 218);--md-skill-on-esp32: rgb(5 55 20);--md-skill-sensors: rgb(235 225 255);--md-skill-on-sensors: rgb(45 10 100);--md-skill-reactnative: rgb(185 245 255);--md-skill-on-reactnative: rgb(0 50 62);--md-skill-expo: rgb(225 220 255);--md-skill-on-expo: rgb(30 10 90);--md-skill-htmlcss: rgb(255 222 200);--md-skill-on-htmlcss: rgb(90 28 0)}@media(prefers-color-scheme:dark){:root{--md-sys-color-primary: rgb(243 178 228);--md-sys-color-surface-tint: rgb(243 178 228);--md-sys-color-on-primary: rgb(77 31 71);--md-sys-color-primary-container: rgb(103 53 94);--md-sys-color-on-primary-container: rgb(255 215 243);--md-sys-color-secondary: rgb(219 190 209);--md-sys-color-on-secondary: rgb(62 42 57);--md-sys-color-secondary-container: rgb(85 64 80);--md-sys-color-on-secondary-container: rgb(248 218 238);--md-sys-color-tertiary: rgb(245 185 165);--md-sys-color-on-tertiary: rgb(76 38 25);--md-sys-color-tertiary-container: rgb(102 60 45);--md-sys-color-on-tertiary-container: rgb(255 219 207);--md-sys-color-error: rgb(255 180 171);--md-sys-color-on-error: rgb(105 0 5);--md-sys-color-error-container: rgb(147 0 10);--md-sys-color-on-error-container: rgb(255 218 214);--md-sys-color-background: rgb(24 18 22);--md-sys-color-on-background: rgb(236 223 229);--md-sys-color-surface: rgb(24 18 22);--md-sys-color-on-surface: rgb(236 223 229);--md-sys-color-surface-variant: rgb(78 68 75);--md-sys-color-on-surface-variant: rgb(210 194 203);--md-sys-color-outline: rgb(154 141 149);--md-sys-color-outline-variant: rgb(78 68 75);--md-sys-color-shadow: rgb(0 0 0);--md-sys-color-scrim: rgb(0 0 0);--md-sys-color-inverse-surface: rgb(236 223 229);--md-sys-color-inverse-on-surface: rgb(54 46 51);--md-sys-color-inverse-primary: rgb(129 76 119);--md-sys-color-primary-fixed: rgb(255 215 243);--md-sys-color-on-primary-fixed: rgb(52 8 48);--md-sys-color-primary-fixed-dim: rgb(243 178 228);--md-sys-color-on-primary-fixed-variant: rgb(103 53 94);--md-sys-color-secondary-fixed: rgb(248 218 238);--md-sys-color-on-secondary-fixed: rgb(39 22 36);--md-sys-color-secondary-fixed-dim: rgb(219 190 209);--md-sys-color-on-secondary-fixed-variant: rgb(85 64 80);--md-sys-color-tertiary-fixed: rgb(255 219 207);--md-sys-color-on-tertiary-fixed: rgb(50 18 7);--md-sys-color-tertiary-fixed-dim: rgb(245 185 165);--md-sys-color-on-tertiary-fixed-variant: rgb(102 60 45);--md-sys-color-surface-dim: rgb(24 18 22);--md-sys-color-surface-bright: rgb(63 55 60);--md-sys-color-surface-container-lowest: rgb(18 12 17);--md-sys-color-surface-container-low: rgb(32 26 30);--md-sys-color-surface-container: rgb(36 30 34);--md-sys-color-surface-container-high: rgb(47 40 44);--md-sys-color-surface-container-highest: rgb(58 51 55);--md-skill-kotlin: rgb(124 76 199);--md-skill-on-kotlin: rgb(244 238 255);--md-skill-android: rgb(56 152 85);--md-skill-on-android: rgb(220 255 232);--md-skill-javascript: rgb(186 138 0);--md-skill-on-javascript: rgb(255 245 210);--md-skill-react: rgb(0 162 194);--md-skill-on-react: rgb(210 248 255);--md-skill-python: rgb(58 104 206);--md-skill-on-python: rgb(220 234 255);--md-skill-rust: rgb(194 88 30);--md-skill-on-rust: rgb(255 234 218);--md-skill-embedded: rgb(52 126 72);--md-skill-on-embedded: rgb(216 245 222);--md-skill-sql: rgb(40 100 200);--md-skill-on-sql: rgb(216 234 255);--md-skill-nodejs: rgb(44 140 76);--md-skill-on-nodejs: rgb(210 248 222);--md-skill-git: rgb(198 52 18);--md-skill-on-git: rgb(255 226 218);--md-skill-typescript: rgb(28 88 188);--md-skill-on-typescript: rgb(212 232 255);--md-skill-compose: rgb(170 42 158);--md-skill-on-compose: rgb(255 228 252);--md-skill-java: rgb(190 100 20);--md-skill-on-java: rgb(255 235 210);--md-skill-mvvm: rgb(50 90 200);--md-skill-on-mvvm: rgb(220 232 255);--md-skill-viewmodel: rgb(48 120 55);--md-skill-on-viewmodel: rgb(215 245 218);--md-skill-sqlite: rgb(35 95 195);--md-skill-on-sqlite: rgb(214 232 255);--md-skill-room: rgb(30 90 190);--md-skill-on-room: rgb(210 230 255);--md-skill-firebase: rgb(200 110 0);--md-skill-on-firebase: rgb(255 235 195);--md-skill-md3: rgb(170 42 158);--md-skill-on-md3: rgb(255 228 252);--md-skill-esp32: rgb(40 130 65);--md-skill-on-esp32: rgb(210 248 220);--md-skill-sensors: rgb(100 60 195);--md-skill-on-sensors: rgb(238 230 255);--md-skill-reactnative: rgb(0 155 185);--md-skill-on-reactnative: rgb(208 248 255);--md-skill-expo: rgb(85 55 190);--md-skill-on-expo: rgb(232 228 255);--md-skill-htmlcss: rgb(195 75 20);--md-skill-on-htmlcss: rgb(255 230 210)}}[data-theme=light]{--md-sys-color-primary: rgb(129 76 119);--md-sys-color-surface-tint: rgb(129 76 119);--md-sys-color-on-primary: rgb(255 255 255);--md-sys-color-primary-container: rgb(255 215 243);--md-sys-color-on-primary-container: rgb(103 53 94);--md-sys-color-secondary: rgb(110 88 104);--md-sys-color-on-secondary: rgb(255 255 255);--md-sys-color-secondary-container: rgb(248 218 238);--md-sys-color-on-secondary-container: rgb(85 64 80);--md-sys-color-tertiary: rgb(129 83 67);--md-sys-color-on-tertiary: rgb(255 255 255);--md-sys-color-tertiary-container: rgb(255 219 207);--md-sys-color-on-tertiary-container: rgb(102 60 45);--md-sys-color-error: rgb(186 26 26);--md-sys-color-on-error: rgb(255 255 255);--md-sys-color-error-container: rgb(255 218 214);--md-sys-color-on-error-container: rgb(147 0 10);--md-sys-color-background: rgb(255 247 249);--md-sys-color-on-background: rgb(32 26 30);--md-sys-color-surface: rgb(255 247 249);--md-sys-color-on-surface: rgb(32 26 30);--md-sys-color-surface-variant: rgb(238 222 231);--md-sys-color-on-surface-variant: rgb(78 68 75);--md-sys-color-outline: rgb(128 116 123);--md-sys-color-outline-variant: rgb(210 194 203);--md-sys-color-shadow: rgb(0 0 0);--md-sys-color-scrim: rgb(0 0 0);--md-sys-color-inverse-surface: rgb(54 46 51);--md-sys-color-inverse-on-surface: rgb(250 237 243);--md-sys-color-inverse-primary: rgb(243 178 228);--md-sys-color-primary-fixed: rgb(255 215 243);--md-sys-color-on-primary-fixed: rgb(52 8 48);--md-sys-color-primary-fixed-dim: rgb(243 178 228);--md-sys-color-on-primary-fixed-variant: rgb(103 53 94);--md-sys-color-secondary-fixed: rgb(248 218 238);--md-sys-color-on-secondary-fixed: rgb(39 22 36);--md-sys-color-secondary-fixed-dim: rgb(219 190 209);--md-sys-color-on-secondary-fixed-variant: rgb(85 64 80);--md-sys-color-tertiary-fixed: rgb(255 219 207);--md-sys-color-on-tertiary-fixed: rgb(50 18 7);--md-sys-color-tertiary-fixed-dim: rgb(245 185 165);--md-sys-color-on-tertiary-fixed-variant: rgb(102 60 45);--md-sys-color-surface-dim: rgb(227 215 221);--md-sys-color-surface-bright: rgb(255 247 249);--md-sys-color-surface-container-lowest: rgb(255 255 255);--md-sys-color-surface-container-low: rgb(253 240 246);--md-sys-color-surface-container: rgb(248 234 240);--md-sys-color-surface-container-high: rgb(242 229 235);--md-sys-color-surface-container-highest: rgb(236 223 229);--md-skill-kotlin: rgb(234 221 255);--md-skill-on-kotlin: rgb(56 18 105);--md-skill-android: rgb(196 238 208);--md-skill-on-android: rgb(0 57 25);--md-skill-javascript: rgb(255 236 178);--md-skill-on-javascript: rgb(65 45 0);--md-skill-react: rgb(189 243 255);--md-skill-on-react: rgb(0 51 64);--md-skill-python: rgb(211 227 253);--md-skill-on-python: rgb(6 42 100);--md-skill-rust: rgb(255 219 194);--md-skill-on-rust: rgb(80 27 0);--md-skill-embedded: rgb(210 232 213);--md-skill-on-embedded: rgb(12 52 24);--md-skill-sql: rgb(210 228 255);--md-skill-on-sql: rgb(0 38 90);--md-skill-nodejs: rgb(198 238 214);--md-skill-on-nodejs: rgb(0 54 28);--md-skill-git: rgb(255 218 212);--md-skill-on-git: rgb(96 17 0);--md-skill-typescript: rgb(205 229 255);--md-skill-on-typescript: rgb(0 43 96);--md-skill-compose: rgb(255 212 246);--md-skill-on-compose: rgb(89 0 80);--md-skill-java: rgb(255 228 196);--md-skill-on-java: rgb(80 35 0);--md-skill-mvvm: rgb(220 230 255);--md-skill-on-mvvm: rgb(10 36 100);--md-skill-viewmodel: rgb(225 240 220);--md-skill-on-viewmodel: rgb(15 50 10);--md-skill-sqlite: rgb(215 235 255);--md-skill-on-sqlite: rgb(0 40 90);--md-skill-room: rgb(208 232 255);--md-skill-on-room: rgb(0 38 85);--md-skill-firebase: rgb(255 230 180);--md-skill-on-firebase: rgb(80 38 0);--md-skill-md3: rgb(255 212 246);--md-skill-on-md3: rgb(89 0 80);--md-skill-esp32: rgb(210 240 218);--md-skill-on-esp32: rgb(5 55 20);--md-skill-sensors: rgb(235 225 255);--md-skill-on-sensors: rgb(45 10 100);--md-skill-reactnative: rgb(185 245 255);--md-skill-on-reactnative: rgb(0 50 62);--md-skill-expo: rgb(225 220 255);--md-skill-on-expo: rgb(30 10 90);--md-skill-htmlcss: rgb(255 222 200);--md-skill-on-htmlcss: rgb(90 28 0)}[data-theme=dark]{--md-sys-color-primary: rgb(243 178 228);--md-sys-color-surface-tint: rgb(243 178 228);--md-sys-color-on-primary: rgb(77 31 71);--md-sys-color-primary-container: rgb(103 53 94);--md-sys-color-on-primary-container: rgb(255 215 243);--md-sys-color-secondary: rgb(219 190 209);--md-sys-color-on-secondary: rgb(62 42 57);--md-sys-color-secondary-container: rgb(85 64 80);--md-sys-color-on-secondary-container: rgb(248 218 238);--md-sys-color-tertiary: rgb(245 185 165);--md-sys-color-on-tertiary: rgb(76 38 25);--md-sys-color-tertiary-container: rgb(102 60 45);--md-sys-color-on-tertiary-container: rgb(255 219 207);--md-sys-color-error: rgb(255 180 171);--md-sys-color-on-error: rgb(105 0 5);--md-sys-color-error-container: rgb(147 0 10);--md-sys-color-on-error-container: rgb(255 218 214);--md-sys-color-background: rgb(24 18 22);--md-sys-color-on-background: rgb(236 223 229);--md-sys-color-surface: rgb(24 18 22);--md-sys-color-on-surface: rgb(236 223 229);--md-sys-color-surface-variant: rgb(78 68 75);--md-sys-color-on-surface-variant: rgb(210 194 203);--md-sys-color-outline: rgb(154 141 149);--md-sys-color-outline-variant: rgb(78 68 75);--md-sys-color-shadow: rgb(0 0 0);--md-sys-color-scrim: rgb(0 0 0);--md-sys-color-inverse-surface: rgb(236 223 229);--md-sys-color-inverse-on-surface: rgb(54 46 51);--md-sys-color-inverse-primary: rgb(129 76 119);--md-sys-color-primary-fixed: rgb(255 215 243);--md-sys-color-on-primary-fixed: rgb(52 8 48);--md-sys-color-primary-fixed-dim: rgb(243 178 228);--md-sys-color-on-primary-fixed-variant: rgb(103 53 94);--md-sys-color-secondary-fixed: rgb(248 218 238);--md-sys-color-on-secondary-fixed: rgb(39 22 36);--md-sys-color-secondary-fixed-dim: rgb(219 190 209);--md-sys-color-on-secondary-fixed-variant: rgb(85 64 80);--md-sys-color-tertiary-fixed: rgb(255 219 207);--md-sys-color-on-tertiary-fixed: rgb(50 18 7);--md-sys-color-tertiary-fixed-dim: rgb(245 185 165);--md-sys-color-on-tertiary-fixed-variant: rgb(102 60 45);--md-sys-color-surface-dim: rgb(24 18 22);--md-sys-color-surface-bright: rgb(63 55 60);--md-sys-color-surface-container-lowest: rgb(18 12 17);--md-sys-color-surface-container-low: rgb(32 26 30);--md-sys-color-surface-container: rgb(36 30 34);--md-sys-color-surface-container-high: rgb(47 40 44);--md-sys-color-surface-container-highest: rgb(58 51 55);--md-skill-kotlin: rgb(124 76 199);--md-skill-on-kotlin: rgb(244 238 255);--md-skill-android: rgb(56 152 85);--md-skill-on-android: rgb(220 255 232);--md-skill-javascript: rgb(186 138 0);--md-skill-on-javascript: rgb(255 245 210);--md-skill-react: rgb(0 162 194);--md-skill-on-react: rgb(210 248 255);--md-skill-python: rgb(58 104 206);--md-skill-on-python: rgb(220 234 255);--md-skill-rust: rgb(194 88 30);--md-skill-on-rust: rgb(255 234 218);--md-skill-embedded: rgb(52 126 72);--md-skill-on-embedded: rgb(216 245 222);--md-skill-sql: rgb(40 100 200);--md-skill-on-sql: rgb(216 234 255);--md-skill-nodejs: rgb(44 140 76);--md-skill-on-nodejs: rgb(210 248 222);--md-skill-git: rgb(198 52 18);--md-skill-on-git: rgb(255 226 218);--md-skill-typescript: rgb(28 88 188);--md-skill-on-typescript: rgb(212 232 255);--md-skill-compose: rgb(170 42 158);--md-skill-on-compose: rgb(255 228 252);--md-skill-java: rgb(190 100 20);--md-skill-on-java: rgb(255 235 210);--md-skill-mvvm: rgb(50 90 200);--md-skill-on-mvvm: rgb(220 232 255);--md-skill-viewmodel: rgb(48 120 55);--md-skill-on-viewmodel: rgb(215 245 218);--md-skill-sqlite: rgb(35 95 195);--md-skill-on-sqlite: rgb(214 232 255);--md-skill-room: rgb(30 90 190);--md-skill-on-room: rgb(210 230 255);--md-skill-firebase: rgb(200 110 0);--md-skill-on-firebase: rgb(255 235 195);--md-skill-md3: rgb(170 42 158);--md-skill-on-md3: rgb(255 228 252);--md-skill-esp32: rgb(40 130 65);--md-skill-on-esp32: rgb(210 248 220);--md-skill-sensors: rgb(100 60 195);--md-skill-on-sensors: rgb(238 230 255);--md-skill-reactnative: rgb(0 155 185);--md-skill-on-reactnative: rgb(208 248 255);--md-skill-expo: rgb(85 55 190);--md-skill-on-expo: rgb(232 228 255);--md-skill-htmlcss: rgb(195 75 20);--md-skill-on-htmlcss: rgb(255 230 210)}:root{--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--spacing-3xl: 64px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--radius-xl: 24px;--radius-2xl: 32px;--radius-full: 9999px;--text-xs: .75rem;--text-sm: .875rem;--text-md: 1.1rem;--text-lg: 1.25rem;--text-xl: 1.5rem;--text-2xl: 2rem;--text-3xl: 2.5rem;--font-regular: 400;--font-midsemibold: 500;--font-semibold: 600;--font-bold: 700;--font-ultra-bold: 800;--leading-tight: 1;--leading-normal: 1.5;--leading-loose: 1.75;--max-width-sm: 650px;--max-width-lg: 1000px}*,*:before,*:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;transition:background-color .3s ease,border-color .3s ease,box-shadow .3s ease}::-webkit-scrollbar{width:0px}*::selection{background-color:var(--md-sys-color-secondary);color:var(--md-sys-color-on-secondary)}html,body{margin:0;min-height:100vh;height:100%;overflow-x:hidden;width:100%;background-color:var(--md-sys-color-background);color:var(--md-sys-color-on-background);font-family:Jost,sans-serif;font-optical-sizing:auto;line-height:var(--leading-normal);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{height:100%}.app-layout{display:flex;flex-direction:column;min-height:100%;width:100%}.app-main{flex:1}header{position:sticky;top:0;z-index:100;width:100%}h1{font-family:Bricolage Grotesque,sans-serif;margin:var(--spacing-2xl) 0 var(--spacing-xl) 0;text-align:center;font-size:var(--text-3xl);font-weight:var(--font-ultra-bold);color:var(--md-sys-color-secondary)}h2{font-family:Bricolage Grotesque,sans-serif;margin:var(--spacing-2xl) 0 0 0;line-height:var(--leading-tight);font-weight:var(--font-semibold);font-size:var(--text-2xl);color:var(--md-sys-color-secondary)}h3{font-family:Bricolage Grotesque,sans-serif;line-height:var(--leading-tight);font-size:var(--text-lg);font-weight:var(--font-regular)}p{line-height:var(--leading-loose);font-size:var(--text-md)}._header_11ogj_13{display:flex;flex-direction:column;align-items:center;justify-content:center;height:auto;width:100%;position:sticky;top:0;z-index:100;overflow:hidden;background-color:color-mix(in srgb,var(--md-sys-color-surface-container) 85%,transparent);color:var(--md-sys-color-on-surface);border-bottom:1px solid color-mix(in srgb,var(--md-sys-color-outline-variant) 50%,transparent);box-shadow:0 1px 4px color-mix(in srgb,var(--md-sys-color-shadow) 8%,transparent);-webkit-backdrop-filter:blur(20px) saturate(1.4);backdrop-filter:blur(20px) saturate(1.4)}._brand_11ogj_47{width:100%;padding:var(--spacing-md);display:flex;align-items:center;justify-content:space-between}._profile_11ogj_55{width:40px;height:40px;margin-right:30px;border-radius:var(--radius-xl);object-fit:cover;border:1.8px solid color-mix(in srgb,var(--md-sys-color-outline-variant) 50%,transparent)}._logo_11ogj_68{font-family:Bricolage Grotesque,sans-serif;font-size:var(--text-lg);font-weight:var(--font-regular);color:var(--md-sys-color-on-surface);letter-spacing:-.01em}._logoHighlight_11ogj_80{font-size:var(--text-lg);font-weight:var(--font-midsemibold);color:var(--md-sys-color-primary)}._logoLink_11ogj_90{text-decoration:none;color:inherit;display:flex;align-items:center;gap:var(--spacing-xs);transition:opacity .2s ease}._logoLink_11ogj_90:hover{opacity:.8}._nav_11ogj_115{display:flex;align-items:center;justify-content:center;width:100%;max-width:var(--max-width-sm);overflow:hidden}._navLink_11ogj_135{flex:1;min-width:0;position:relative;text-align:center;padding:12px var(--spacing-xs);border-radius:var(--radius-lg) var(--radius-lg) 0 0;font-size:var(--text-sm);font-weight:var(--font-semibold);white-space:nowrap;text-decoration:none;color:var(--md-sys-color-on-surface-variant);transition:background-color .2s ease,color .2s ease}._navLink_11ogj_135:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:3px;border-radius:10px 10px 0 0;background:var(--md-sys-color-primary);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}._navLink_11ogj_135:hover{background-color:color-mix(in srgb,var(--md-sys-color-on-surface) 6%,transparent);color:var(--md-sys-color-on-surface)}._navLink_11ogj_135:hover:after{transform:scaleX(1)}._hamburger_11ogj_206{display:flex;align-items:center;justify-content:center;background-color:color-mix(in srgb,var(--md-sys-color-secondary-container) 60%,transparent);border-radius:var(--radius-xl);border:1px solid color-mix(in srgb,var(--md-sys-color-outline-variant) 10%,transparent);cursor:pointer;padding:var(--spacing-sm) var(--spacing-lg);color:var(--md-sys-color-on-secondary-container);transition:background-color .2s ease,transform .15s ease}._hamburger_11ogj_206:hover{background-color:var(--md-sys-color-secondary-container)}._hamburger_11ogj_206:active{transform:scale(.96)}@media(max-width:480px){._brand_11ogj_47{justify-content:space-between}._nav_11ogj_115{display:none}}._overlay_1nkvb_13{position:fixed;inset:0;z-index:200;background-color:color-mix(in srgb,var(--md-sys-color-scrim) 40%,transparent);opacity:0;pointer-events:none;transition:opacity .3s ease}._overlayVisible_1nkvb_23{opacity:1;pointer-events:auto}._drawer_1nkvb_31{position:fixed;top:0;right:0;height:100%;width:280px;max-width:85vw;z-index:201;display:flex;flex-direction:column;background-color:color-mix(in srgb,var(--md-sys-color-surface-container) 85%,transparent);box-shadow:-4px 0 24px color-mix(in srgb,var(--md-sys-color-shadow) 15%,transparent);border-top-left-radius:var(--radius-xl);border-bottom-left-radius:var(--radius-xl);-webkit-backdrop-filter:blur(20px) saturate(1.4);backdrop-filter:blur(20px) saturate(1.4);transform:translate(100%);transition:transform .35s cubic-bezier(.4,0,.2,1)}._drawerOpen_1nkvb_31{transform:translate(0)}._drawerHeaderRow_1nkvb_72{margin-top:var(--spacing-sm);margin-bottom:var(--spacing-sm);display:flex;align-items:center;justify-content:space-between}._drawerHeader_1nkvb_72{align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-md);border-bottom:1px solid color-mix(in srgb,var(--md-sys-color-outline-variant) 40%,transparent)}._bio_1nkvb_87{margin:0}._profile_1nkvb_91{width:80px;height:80px;margin-right:30px;border-radius:var(--radius-lg);object-fit:cover;border:1.8px solid color-mix(in srgb,var(--md-sys-color-outline-variant) 50%,transparent)}._drawerTitle_1nkvb_100{font-family:Bricolage Grotesque,sans-serif;font-size:var(--text-lg);font-weight:var(--font-regular);color:var(--md-sys-color-on-surface);letter-spacing:-.01em}._closeButton_1nkvb_112{display:flex;align-items:center;justify-content:center;padding:var(--spacing-sm);border:none;border-radius:var(--radius-2xl);background:transparent;color:var(--md-sys-color-primary);cursor:pointer;transition:background-color .2s ease,color .2s ease}._closeButton_1nkvb_112:hover{background-color:color-mix(in srgb,var(--md-sys-color-on-surface) 8%,transparent);color:var(--md-sys-color-on-surface)}._drawerNav_1nkvb_139{display:flex;flex-direction:column;padding:var(--spacing-md);gap:var(--spacing-xs);overflow-y:auto}._drawerLink_1nkvb_152{display:block;padding:var(--spacing-md) var(--spacing-md);border-radius:var(--radius-2xl);border-left:3px solid transparent;font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--md-sys-color-on-surface-variant);text-decoration:none;transition:background-color .2s ease,color .2s ease,border-color .2s ease}._drawerLink_1nkvb_152:hover{background-color:color-mix(in srgb,var(--md-sys-color-on-surface) 6%,transparent);color:var(--md-sys-color-on-surface)}._drawerLinkActive_1nkvb_175{background-color:color-mix(in srgb,var(--md-sys-color-secondary-container) 60%,transparent);cursor:pointer;color:var(--md-sys-color-on-secondary-container)}._customWrapper_16yu4_5{display:inline-block;position:relative}._customTextLink_16yu4_16{position:relative;font-weight:500;color:var(--md-sys-color-primary);text-decoration:none;transition:color .25s linear}._customTextLink_16yu4_16:after{content:"";position:absolute;bottom:-2px;left:0;width:100%;height:2px;background-color:var(--md-sys-color-tertiary);transform:scale(0);transform-origin:left;transition:transform .25s linear}._customTextLink_16yu4_16:hover:after{transform:scaleX(1)}._hidden_3i6km_11{opacity:0;transform:translateY(24px);transition:opacity .5s ease,transform .5s ease}._visible_3i6km_19{opacity:1;transform:translateY(0);transition:opacity .5s ease,transform .5s ease}._delay0_3i6km_33{transition-delay:0ms}._delay1_3i6km_34{transition-delay:80ms}._delay2_3i6km_35{transition-delay:.16s}._delay3_3i6km_36{transition-delay:.24s}._delay4_3i6km_37{transition-delay:.32s}._grid_yg8f4_12{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-lg)}._card_12r79_13{position:relative;display:flex;flex-direction:column;overflow:hidden;border-radius:var(--radius-lg);background-color:var(--md-sys-color-surface-container);color:var(--md-sys-color-on-surface);text-decoration:none;transition:border-color .25s ease,background-color .2s ease}._imageContainer_12r79_41{width:100%;height:200px;border-bottom-left-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg);overflow:hidden;flex-shrink:0}._image_12r79_41{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .4s cubic-bezier(.25,.46,.45,.94)}._card_12r79_13:hover ._image_12r79_41{transform:scale(1.06)}._card_12r79_13:hover{background-color:color-mix(in srgb,var(--md-sys-color-surface-container-highest) 80%,transparent)}._textContainer_12r79_81{padding:var(--spacing-md);flex:1;display:flex;flex-direction:column;gap:var(--spacing-xs)}._titleMain_12r79_94{font-size:var(--text-lg);font-weight:var(--font-midsemibold);color:var(--md-sys-color-primary);line-height:1.2}._titleSub_12r79_106{font-size:var(--text-md, var(--text-lg));font-weight:var(--font-regular);line-height:1.5;margin-bottom:var(--spacing-sm)}._description_12r79_118{margin:0;font-size:var(--text-sm);line-height:var(--leading-normal);color:var(--md-sys-color-on-surface-variant)}._tagList_12r79_135{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-top:auto;padding-top:var(--spacing-xs)}._tag_12r79_135{display:inline-flex;align-items:center;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-full, 9999px);font-size:var(--text-xs, .7rem);font-weight:var(--font-semibold);background-color:color-mix(in srgb,var(--md-sys-color-primary-container) 70%,transparent);color:var(--md-sys-color-on-primary-container);border:1px solid color-mix(in srgb,var(--md-sys-color-primary) 10%,transparent)}._wrapper_xfo9i_16{position:relative;overflow:hidden}._skeleton_xfo9i_27{position:absolute;inset:0;background:linear-gradient(90deg,var(--md-sys-color-surface-container) 25%,var(--md-sys-color-surface-container-high) 50%,var(--md-sys-color-surface-container) 75%);background-size:200% 100%;animation:_shimmer_xfo9i_1 1.6s ease-in-out infinite}@keyframes _shimmer_xfo9i_1{0%{background-position:200% 0}to{background-position:-200% 0}}._image_xfo9i_47{display:block;transition:opacity .4s ease-in-out}._imageHidden_xfo9i_56{opacity:0}._imageVisible_xfo9i_57{opacity:1}._wrapper_8c0sa_4{width:100%;max-height:260px;border-radius:var(--radius-lg)}._image_8c0sa_8{width:100%;height:260px;object-fit:cover}._imageWrapper_1nanq_4{display:flex;justify-content:center;align-items:center;width:100%;overflow:hidden;margin-top:var(--spacing-lg)}._appImageWrapper_1nanq_7{display:inline-block;border-radius:var(--radius-lg);background-color:var(--md-sys-color-surface-variant)}._image_1nanq_4{max-width:100%;max-height:300px;width:auto;height:auto;border-radius:var(--radius-lg);object-fit:contain}._grid_1u9fc_2{display:grid;grid-template-columns:repeat(auto-fill,minmax(clamp(150px,20vw,210px),1fr));gap:var(--spacing-md);margin-top:var(--spacing-lg)}._image_1u9fc_29{width:100%;height:100%;border-radius:var(--radius-lg);background-color:var(--md-sys-color-surface-variant);object-fit:cover}._grid_162q0_2{display:grid;grid-template-columns:repeat(auto-fill,minmax(clamp(150px,20vw,190px),1fr));gap:var(--spacing-md);margin-top:var(--spacing-lg)}._image_162q0_29{width:100%;border-radius:var(--radius-lg);border:1.2px solid var(--md-sys-color-outline)}._customButton_1q0nh_30{display:inline-flex;align-items:center;gap:8px;padding:10px 24px;border-radius:9999px;font-size:.875rem;font-weight:550;letter-spacing:.00625rem;line-height:1.25rem;white-space:nowrap;text-decoration:none;position:relative;overflow:hidden;cursor:pointer;transition:box-shadow .2s ease,transform .1s ease,background-color .15s ease}._customButton_1q0nh_30:after{content:"";position:absolute;inset:0;background:currentColor;opacity:0;border-radius:inherit;pointer-events:none;transition:opacity .2s ease}._customButton_1q0nh_30:hover:after{opacity:.08}._customButton_1q0nh_30:focus-visible{outline:3px solid var(--md-sys-color-outline);outline-offset:3px}._customButton_1q0nh_30:focus-visible:after{opacity:.12}._customButton_1q0nh_30:active{transform:scale(.97)}._customButton_1q0nh_30:active:after{opacity:.12}._customButton_1q0nh_30:disabled,._customButton_1q0nh_30[aria-disabled=true]{opacity:.38;cursor:not-allowed;box-shadow:none;pointer-events:none}._filled_1q0nh_114{background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);border:none;box-shadow:0 1px 2px #0000004d,0 1px 3px 1px #00000026}._filled_1q0nh_114:hover{box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}._outlined_1q0nh_137{background-color:transparent;color:var(--md-sys-color-primary);border:1px solid var(--md-sys-color-outline);box-shadow:none}._outlined_1q0nh_137:hover{border-color:var(--md-sys-color-primary)}._tonal_1q0nh_154{background-color:var(--md-sys-color-secondary-container);color:var(--md-sys-color-on-secondary-container);border:none;box-shadow:0 1px 2px #0000004d,0 1px 3px 1px #00000026}._tonal_1q0nh_154:hover{box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}@property --angle{syntax: "<angle>"; initial-value: 0deg; inherits: false;}@keyframes _gradient-spin_1q0nh_1{to{--angle: 360deg}}._animatedWrapper_1q0nh_18{display:inline-flex;border-radius:9999px;padding:3px;background:conic-gradient(from var(--angle),var(--md-sys-color-primary-container),var(--md-sys-color-tertiary-container),var(--md-sys-color-tertiary-container));animation:_gradient-spin_1q0nh_1 4s linear infinite}._animatedInner_1q0nh_23{background-color:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary);border:none;box-shadow:none}._wrapper_tk8ga_7{width:100%;max-width:860px;margin:1.5rem auto}._container_tk8ga_18{position:relative;width:100%;padding-bottom:56.25%;border-radius:var(--radius-lg);overflow:hidden;background:var(--md-sys-color-surface-container);box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}._iframe_tk8ga_33{position:absolute;inset:0;width:100%;height:100%;border:none}._contactButtons_yvyxk_2{display:flex;flex-wrap:wrap;gap:12px;margin-top:var(--spacing-md)}._skill_container_yvyxk_9{padding:var(--spacing-sm) var(--spacing-md) var(--spacing-sm) var(--spacing-md);background-color:var(--md-sys-color-tertiary);width:fit-content;border-radius:var(--radius-lg);color:var(--md-sys-color-on-tertiary);font-size:var(--text-md)}._icon_yvyxk_27{margin-right:var(--spacing-xs)}._badge_1bjo5_11{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md) var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-lg);width:fit-content;font-size:var(--text-md);font-weight:500;transition:transform .18s ease,box-shadow .18s ease;cursor:default;-webkit-user-select:none;user-select:none}._badge_1bjo5_11:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000002e}._icon_1bjo5_43{font-size:1.1em;flex-shrink:0}._label_1bjo5_49{line-height:1;white-space:nowrap}._groups_1sdtf_7{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-top:var(--spacing-md);margin-bottom:var(--spacing-md)}._group_1sdtf_7{display:flex;flex-direction:column;gap:var(--spacing-xs)}._groupTitle_1sdtf_23{font-size:var(--text-sm);font-weight:600;color:var(--md-sys-color-on-surface-variant);text-transform:uppercase;letter-spacing:.08em}._grid_1sdtf_32{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}._footer_oq24u_15{display:flex;flex-direction:column;align-items:stretch;border-radius:24px 24px 0 0;overflow:hidden;background-color:var(--md-sys-color-surface-container-high)}._inner_oq24u_10{display:flex;flex-direction:column;align-items:center;text-align:center;width:100%;max-width:480px;align-self:center;padding:var(--spacing-xl, 32px) var(--spacing-md) var(--spacing-md);gap:var(--spacing-sm)}._title_oq24u_48{margin:0 0 var(--spacing-xs);font-size:var(--text-2xl);font-weight:var(--font-regular);color:var(--md-sys-color-on-surface);letter-spacing:-.01em}._contactBlock_oq24u_61{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);margin-bottom:var(--spacing-sm)}._name_oq24u_73{margin:0;font-size:var(--text-md, 1rem);font-weight:var(--font-midsemibold);color:var(--md-sys-color-on-surface)}._bio_oq24u_85{margin:0;font-size:var(--text-sm);color:var(--md-sys-color-on-surface-variant);line-height:var(--leading-normal)}._divider_oq24u_97{border:none;height:1px;width:80px;margin:var(--spacing-xs) 0;background:var(--md-sys-color-outline-variant)}._copyright_oq24u_110{margin:0 0 var(--spacing-sm);font-size:var(--text-xs, .78rem);color:var(--md-sys-color-on-surface-variant);opacity:.75}.app-main{max-width:var(--max-width-lg);width:100%;margin:0 auto;padding:var(--spacing-2xl) var(--spacing-lg) var(--spacing-2xl) var(--spacing-lg);box-sizing:border-box}@media(max-width:480px){.app-main{padding:var(--spacing-2xl) var(--spacing-md) var(--spacing-2xl) var(--spacing-md)}}
