@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/04c5164763c40239-s.690580e8.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/26f284dcc38c84c0-s.303a03d6.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/7e7f32a39836f228-s.0b4edfe7.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/fa39153a3fc630ba-s.bff0868b.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/6a5386fd6038edbe-s.719084df.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/051742360c26797e-s.p.102b7f24.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/04c5164763c40239-s.690580e8.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/26f284dcc38c84c0-s.303a03d6.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/7e7f32a39836f228-s.0b4edfe7.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/fa39153a3fc630ba-s.bff0868b.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/6a5386fd6038edbe-s.719084df.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/051742360c26797e-s.p.102b7f24.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/04c5164763c40239-s.690580e8.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/26f284dcc38c84c0-s.303a03d6.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/7e7f32a39836f228-s.0b4edfe7.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/fa39153a3fc630ba-s.bff0868b.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/6a5386fd6038edbe-s.719084df.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/051742360c26797e-s.p.102b7f24.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/04c5164763c40239-s.690580e8.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/26f284dcc38c84c0-s.303a03d6.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/7e7f32a39836f228-s.0b4edfe7.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/fa39153a3fc630ba-s.bff0868b.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/6a5386fd6038edbe-s.719084df.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/051742360c26797e-s.p.102b7f24.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_119ab55a-module__yxkjeq__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_119ab55a-module__yxkjeq__variable{--font-jetbrains-mono:"JetBrains Mono","JetBrains Mono Fallback"}
@font-face{font-family:"Press Start 2P";font-style:normal;font-weight:400;font-display:swap;src:url(../media/cdf703449fd42bc8-s.665aa8c9.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Press Start 2P";font-style:normal;font-weight:400;font-display:swap;src:url(../media/3f10656f33c57dec-s.1b5b6537.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Press Start 2P";font-style:normal;font-weight:400;font-display:swap;src:url(../media/56eb15be423b6220-s.23b201d9.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Press Start 2P";font-style:normal;font-weight:400;font-display:swap;src:url(../media/96074e70a40501da-s.8c31978f.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Press Start 2P";font-style:normal;font-weight:400;font-display:swap;src:url(../media/de161955856a921d-s.p.25da2b95.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Press Start 2P Fallback";src:local(Arial);ascent-override:44.58%;descent-override:0.0%;line-gap-override:0.0%;size-adjust:224.32%}.press_start_2p_ccbce126-module__nHPsRa__className{font-family:"Press Start 2P","Press Start 2P Fallback";font-style:normal;font-weight:400}.press_start_2p_ccbce126-module__nHPsRa__variable{--font-press-start-2p:"Press Start 2P","Press Start 2P Fallback"}
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-black:#000;--spacing:.25rem;--container-sm:24rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height:calc(1.5/1);--font-weight-medium:500;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--ease-out:cubic-bezier(0,0,.2,1);--blur-xs:4px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:calc(var(--spacing)*0)}.-top-12{top:calc(var(--spacing)*-12)}.top-1\/2{top:50%}.top-2{top:calc(var(--spacing)*2)}.-right-12{right:calc(var(--spacing)*-12)}.right-2{right:calc(var(--spacing)*2)}.-bottom-12{bottom:calc(var(--spacing)*-12)}.-left-12{left:calc(var(--spacing)*-12)}.left-1\/2{left:50%}.isolate{isolation:isolate}.z-50{z-index:50}.-mx-4{margin-inline:calc(var(--spacing)*-4)}.-mt-4{margin-top:calc(var(--spacing)*-4)}.-mb-4{margin-bottom:calc(var(--spacing)*-4)}.-ml-4{margin-left:calc(var(--spacing)*-4)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.size-6{width:calc(var(--spacing)*6);height:calc(var(--spacing)*6)}.size-7{width:calc(var(--spacing)*7);height:calc(var(--spacing)*7)}.size-8{width:calc(var(--spacing)*8);height:calc(var(--spacing)*8)}.size-9{width:calc(var(--spacing)*9);height:calc(var(--spacing)*9)}.h-6{height:calc(var(--spacing)*6)}.h-7{height:calc(var(--spacing)*7)}.h-8{height:calc(var(--spacing)*8)}.h-9{height:calc(var(--spacing)*9)}.w-full{width:100%}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.min-w-0{min-width:calc(var(--spacing)*0)}.shrink-0{flex-shrink:0}.grow-0{flex-grow:0}.basis-full{flex-basis:100%}.-translate-x-1\/2{--tw-translate-x:calc(calc(1/2*100%)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1/2*100%)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.touch-manipulation{touch-action:manipulation}.resize{resize:both}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.items-center{align-items:center}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-4{gap:calc(var(--spacing)*4)}.overflow-hidden{overflow:hidden}.rounded-\[min\(var\(--radius-md\)\,10px\)\]{border-radius:min(var(--radius-md),10px)}.rounded-\[min\(var\(--radius-md\)\,12px\)\]{border-radius:min(var(--radius-md),12px)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-b-xl{border-bottom-right-radius:var(--radius-xl);border-bottom-left-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-transparent{border-color:#0000}.bg-black\/10{background-color:#0000001a}@supports (color:color-mix(in lab, red, red)){.bg-black\/10{background-color:color-mix(in oklab,var(--color-black)10%,transparent)}}.bg-clip-padding{background-clip:padding-box}.p-4{padding:calc(var(--spacing)*4)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-2\.5{padding-inline:calc(var(--spacing)*2.5)}.pt-4{padding-top:calc(var(--spacing)*4)}.pl-4{padding-left:calc(var(--spacing)*4)}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.8rem\]{font-size:.8rem}.leading-none{--tw-leading:1;line-height:1}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.whitespace-nowrap{white-space:nowrap}.underline-offset-4{text-underline-offset:4px}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.hover\:underline:hover{text-decoration-line:underline}}.focus-visible\:ring-3:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(3px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.active\:not-aria-\[haspopup\]\:translate-y-px:active:not([aria-haspopup]){--tw-translate-y:1px;translate:var(--tw-translate-x)var(--tw-translate-y)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}:where([data-slot=button-group]) .in-data-\[slot\=button-group\]\:rounded-lg{border-radius:var(--radius-lg)}.has-data-\[icon\=inline-end\]\:pr-1\.5:has([data-icon=inline-end]){padding-right:calc(var(--spacing)*1.5)}.has-data-\[icon\=inline-end\]\:pr-2:has([data-icon=inline-end]){padding-right:calc(var(--spacing)*2)}.has-data-\[icon\=inline-start\]\:pl-1\.5:has([data-icon=inline-start]){padding-left:calc(var(--spacing)*1.5)}.has-data-\[icon\=inline-start\]\:pl-2:has([data-icon=inline-start]){padding-left:calc(var(--spacing)*2)}.aria-invalid\:ring-3[aria-invalid=true]{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(3px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}@supports ((-webkit-backdrop-filter:var(--tw)) or (backdrop-filter:var(--tw))){.supports-backdrop-filter\:backdrop-blur-xs{--tw-backdrop-blur:blur(var(--blur-xs));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}}@media (min-width:40rem){.sm\:max-w-sm{max-width:var(--container-sm)}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing)*3);height:calc(var(--spacing)*3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5 svg:not([class*=size-]){width:calc(var(--spacing)*3.5);height:calc(var(--spacing)*3.5)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}:is(.\*\:\[a\]\:underline>*):is(a){text-decoration-line:underline}:is(.\*\:\[a\]\:underline-offset-3>*):is(a){text-underline-offset:3px}}:root{--blue:#4367ff;--blue-deep:#2547e6;--blue-600:#2b4acc;--blue-100:#e7ecfb;--blue-50:#eef2fc;--blue-bg:#eef4ff;--blue-bg-soft:#f8faff;--lime:#d7ff00;--ink:#0a0f1c;--ink-2:#1f2a44;--muted:#7a869a;--muted-2:#4b5773;--line:#e3e8f0;--line-2:#d7dcea;--line-3:#b5bdcd;--bg:#fff;--bg-2:#eef1f8;--bg-soft:#f4f6fb;--white:#fff}*{box-sizing:border-box;margin:0;padding:0}html{background-color:#0000;background-image:radial-gradient(70% 40% at 15% 8%,#b5c2ff8c 0%,#0000 70%),radial-gradient(60% 35% at 88% 22%,#c5e2ff73 0%,#0000 70%),radial-gradient(55% 30% at 50% 42%,#ddd6ff4d 0%,#0000 70%),radial-gradient(65% 38% at 10% 60%,#b5c2ff59 0%,#0000 70%),radial-gradient(60% 32% at 85% 72%,#c5e2ff66 0%,#0000 70%),radial-gradient(70% 35% at 40% 88%,#ddd6ff4d 0%,#0000 70%),linear-gradient(#f9faff 0%,#f3f6fe 18%,#f0f4fd 36%,#edf2fc 54%,#f0f4fd 72%,#f3f6fe 88%,#f6f8ff 100%);background-position:0 0,0 0,0 0,0 0,0 0,0 0,0 0;background-repeat:repeat,repeat,repeat,repeat,repeat,repeat,repeat;background-size:auto,auto,auto,auto,auto,auto,auto;background-attachment:fixed;background-origin:padding-box,padding-box,padding-box,padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box,border-box,border-box,border-box}html,body{color:var(--ink);font-family:var(--font-inter),var(--font-noto-sans-jp),sans-serif;-webkit-font-smoothing:antialiased;scroll-behavior:smooth;font-size:15px;line-height:1.6}body{background:0 0;overflow-x:hidden}.mono{font-family:var(--font-jetbrains-mono),ui-monospace,monospace;letter-spacing:.18em}.pixel{font-family:var(--font-press-start-2p),monospace}a{color:inherit;text-decoration:none}.nav{z-index:50;-webkit-backdrop-filter:blur(14px);background:#f9faffd1;border-bottom:1px solid #4367ff14;justify-content:space-between;align-items:center;padding:22px 96px;display:flex;position:fixed;top:0;left:0;right:0;overflow:hidden}.nav-progress{background:var(--blue);transform-origin:0;z-index:51;height:2px;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.nav .logo{font-family:var(--font-press-start-2p),monospace;color:var(--ink);letter-spacing:.04em;font-size:14px}.nav ul{gap:34px;list-style:none;display:flex}.nav ul a{font-family:var(--font-press-start-2p),monospace;letter-spacing:.16em;color:var(--ink-2);padding:6px 0;font-size:10px;font-weight:400;position:relative}.nav ul a:hover{color:var(--blue)}.nav ul a:after{content:"";background:var(--blue);width:0;height:2px;transition:width .2s;position:absolute;bottom:0;left:0}.nav ul a:hover:after{width:100%}.side-rail{z-index:40;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;width:48px;display:flex;position:absolute;top:0;bottom:0}.side-rail.left{left:0}.side-rail .label{font-family:var(--font-jetbrains-mono),ui-monospace,monospace;letter-spacing:.3em;color:var(--ink-2);writing-mode:vertical-rl;margin-bottom:16px;font-size:10px;font-weight:500;transform:rotate(180deg)}.side-rail .line{background:var(--line-3);width:1px;height:120px;margin-bottom:16px}.side-rail .diamond{background:var(--ink);width:7px;height:7px;margin-bottom:14px;transform:rotate(45deg)}.scroll-nav{z-index:45;pointer-events:none;flex-direction:column;align-items:flex-end;gap:0;display:flex;position:fixed;top:50%;right:28px;transform:translateY(-50%)}.scroll-nav>*{pointer-events:auto}.scroll-nav-track{background-image:linear-gradient(#0000 0%,#b5c2ff8c 6%,#4367ff38 50%,#b5c2ff8c 94%,#0000 100%);width:1px;position:absolute;top:16px;bottom:16px;right:3px}.scroll-nav-item{cursor:pointer;background:0 0;border:none;align-items:center;gap:12px;padding:11px 0;display:flex;position:relative}.scroll-nav-label{font-family:var(--font-jetbrains-mono),ui-monospace,monospace;letter-spacing:.22em;color:var(--muted);opacity:0;pointer-events:none;white-space:nowrap;-webkit-user-select:none;user-select:none;font-size:10px;transition:opacity .16s,transform .16s,color .16s;transform:translate(6px)}.scroll-nav-item:hover .scroll-nav-label{opacity:1;color:var(--ink-2);transform:translate(0)}.scroll-nav-item.active .scroll-nav-label{opacity:1;color:var(--blue);transform:translate(0)}.scroll-nav-dot{z-index:1;border:2px solid var(--line-3);background:0 0;flex-shrink:0;width:11px;height:11px;transition:background .16s,border-color .16s,box-shadow .16s;position:relative}.scroll-nav-item:hover .scroll-nav-dot{border-color:var(--blue)}.scroll-nav-item.active .scroll-nav-dot{background:var(--blue);border-color:var(--blue);box-shadow:0 0 0 4px #4367ff2e}.scroll-nav-item.active .scroll-nav-dot:after{content:"";background:var(--lime);width:5px;height:5px;position:absolute;bottom:-6px;left:-6px}.hero{z-index:1;background:#fff;flex-direction:row;justify-content:space-between;align-items:center;gap:20px;min-height:100vh;padding:140px 120px 180px;display:flex;position:relative;overflow:hidden}.hero-content{z-index:3;flex:50%;min-width:0;position:relative}.hero-right-bg{clip-path:polygon(12% 0,100% 0,100% 100%,0 100%);z-index:0;background:linear-gradient(150deg,#f2f5fec7 0%,#e7ecf8c7 100%);width:58%;position:absolute;top:0;bottom:0;right:0}.hero-right-bg:before{content:"";opacity:.6;z-index:1;background-image:linear-gradient(#4367ff0f 1px,#0000 1px),linear-gradient(90deg,#4367ff0f 1px,#0000 1px);background-size:32px 32px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(135deg,#000,#0000 70%);mask-image:linear-gradient(135deg,#000,#0000 70%)}.hero-blackhole-art{transform-origin:50%;width:min(1120px,118vw);max-width:none;height:auto;image-rendering:pixelated;pointer-events:none;filter:saturate(1.16)contrast(1.08)drop-shadow(0 28px 52px #4367ff2e);mix-blend-mode:multiply;opacity:.96;z-index:2;position:absolute;top:50%;left:16%;transform:translate(-16%,-50%)rotate(-2deg)}.hero-blackhole-art-poster{display:none}.hero-right-bg:after{content:"";pointer-events:none;z-index:3;background:radial-gradient(at 54% 48%,#fff0 0 28%,#f5f9ff57 58%,#f5f9ff9e 100%),linear-gradient(90deg,#ffffff94,#0000 26% 78%,#e7ecf86b);position:absolute;inset:0}.hero-eyebrow{font-family:var(--font-jetbrains-mono),ui-monospace,monospace;color:var(--blue);letter-spacing:.28em;align-items:center;gap:14px;margin-bottom:32px;font-size:11px;font-weight:500;display:flex}.hero-eyebrow:before{content:"";background:var(--blue);width:32px;height:2px;display:inline-block}.hero-title{font-family:var(--font-press-start-2p),monospace;letter-spacing:.02em;color:var(--ink);word-break:keep-all;margin-bottom:38px;font-size:clamp(40px,5.8vw,64px);font-weight:400;line-height:1.18}.hero-title .line{align-items:center;gap:14px;margin-bottom:14px;display:flex}.hero-title .blue{color:var(--blue)}.hero-title .caret{background:var(--ink);vertical-align:-.14em;align-self:center;width:.35em;height:.82em;margin-left:.02em;animation:1s steps(2,end) infinite blink;display:inline-block}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.hero-sub{font-family:var(--font-inter),var(--font-noto-sans-jp),sans-serif;color:var(--ink-2);letter-spacing:.02em;margin-bottom:56px;font-size:15px;line-height:2}.btn-primary{font-family:var(--font-press-start-2p),monospace;letter-spacing:.18em;color:var(--ink);cursor:pointer;background:0 0;border:none;align-items:center;gap:24px;padding:14px 0;font-size:11px;font-weight:400;display:inline-flex;position:relative}.btn-primary:after{content:"";background:var(--ink);height:1.5px;position:absolute;bottom:4px;left:0;right:24px}.btn-primary:hover{color:var(--blue)}.btn-primary:hover:after{background:var(--blue)}.hero-play-center{cursor:pointer;z-index:6;background:0 0;border:none;flex-direction:column;align-items:center;gap:12px;padding:0;display:flex;position:absolute;bottom:70px;left:50%;transform:translate(-50%)}.hero-play-center .play-circle{background:var(--blue);border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;transition:transform .2s,box-shadow .2s;display:flex;position:relative;box-shadow:0 10px 28px #4367ff66}.hero-play-center:hover .play-circle{transform:translateY(-2px);box-shadow:0 14px 34px #4367ff80}.hero-play-center .play-circle:after{content:"";border:1px solid var(--blue);opacity:.55;border-radius:50%;animation:2s ease-out infinite pingRing;position:absolute;inset:-8px}@keyframes pingRing{0%{opacity:.55;transform:scale(.95)}to{opacity:0;transform:scale(1.25)}}.hero-play-center .tri{border-top:10px solid #0000;border-bottom:10px solid #0000;border-left:16px solid #fff;width:0;height:0;margin-left:5px}.hero-play-center .play-label{font-family:var(--font-press-start-2p),monospace;letter-spacing:.32em;color:var(--ink-2);font-size:10px}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@media (prefers-reduced-motion:reduce){.hero-blackhole-art-motion{display:none}.hero-blackhole-art-poster{display:block}}.hero-ticker{border-top:1px solid var(--line);border-bottom:1px solid var(--line);z-index:5;background:#ffffffe6;align-items:center;height:44px;display:flex;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.hero-ticker-inner{font-family:var(--font-jetbrains-mono),ui-monospace,monospace;letter-spacing:.25em;color:var(--muted);white-space:nowrap;gap:48px;padding-left:48px;font-size:10px;animation:35s linear infinite tickerScroll;display:flex}.hero-ticker-inner .item.accent{color:var(--blue)}.hero-ticker-inner .item .bullet{color:var(--blue);margin-right:6px}@keyframes tickerScroll{0%{transform:translate(0)}to{transform:translate(-25%)}}.corner-bracket{pointer-events:none;width:24px;height:24px;position:absolute}.corner-bracket.tl{border-top:2px solid var(--blue);border-left:2px solid var(--blue)}.corner-bracket.tr{border-top:2px solid var(--blue);border-right:2px solid var(--blue)}.corner-bracket.bl{border-bottom:2px solid var(--blue);border-left:2px solid var(--blue)}.corner-bracket.br{border-bottom:2px solid var(--blue);border-right:2px solid var(--blue)}.dot-grid{pointer-events:none;background-image:radial-gradient(var(--blue)1.2px,transparent 1.2px);background-size:8px 8px;position:absolute}.pixel-frame{pointer-events:none;border:1.5px solid #4367ff4d;position:absolute}.section{flex-direction:column;justify-content:center;min-height:100vh;padding:110px 96px;display:flex;position:relative}.section-head{flex-direction:column;gap:12px;margin-bottom:36px;display:inline-flex}.section-head.section-head-compact{margin-bottom:0}.section-num{font-family:var(--font-jetbrains-mono),ui-monospace,monospace;color:var(--blue);letter-spacing:.18em;font-size:15px;font-weight:400}.section-title{font-family:var(--font-press-start-2p),monospace;letter-spacing:.04em;color:var(--ink);align-items:center;gap:14px;font-size:34px;font-weight:400;display:inline-flex}.section-title .accent{background:var(--blue);vertical-align:-.12em;flex-shrink:0;width:8px;height:.85em;margin-left:2px;display:inline-block}.section-title .accent.blink{animation:1s steps(2,end) infinite blink}.atmo{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:visible}.atmo-grid{opacity:.85;background-image:linear-gradient(#4367ff17 1px,#0000 1px),linear-gradient(90deg,#4367ff17 1px,#0000 1px);background-position:-1px -1px;background-size:28px 28px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(90% 80%,#000 50%,#0000 100%);mask-image:radial-gradient(90% 80%,#000 50%,#0000 100%)}.atmo-blob{filter:blur(72px);opacity:.78;border-radius:50%;position:absolute}.atmo-blob.b1{background:radial-gradient(circle,#6b8aff 0%,#0000 68%);width:520px;height:520px}.atmo-blob.b2{background:radial-gradient(circle,#7dc3ff 0%,#0000 68%);width:400px;height:400px}.atmo-blob.b3{opacity:.55;background:radial-gradient(circle,#a891ff 0%,#0000 68%);width:340px;height:340px}.atmo-noise{opacity:.5;background-image:url(/assets/decor/micro_dots.svg);background-repeat:repeat;background-size:512px 512px;position:absolute;inset:0}.bg-decor{pointer-events:none;-webkit-user-select:none;user-select:none;will-change:transform;object-fit:contain;display:block;position:absolute}.atmo.atmo-cool,.atmo.atmo-paper,.atmo.atmo-warm{background:0 0}.atmo.atmo-warm .atmo-blob.b1{opacity:.52;background:radial-gradient(circle,#ffb347 0%,#0000 68%)}.atmo.atmo-warm .atmo-blob.b3{opacity:.44;background:radial-gradient(circle,#ff85b3 0%,#0000 68%)}.atmo-a .atmo-blob.b1{top:-120px;left:-100px}.atmo-a .atmo-blob.b2{bottom:-80px;right:10%}.atmo-a .atmo-blob.b3{top:30%;right:-60px}.atmo-b .atmo-blob.b1{top:-60px;right:-80px}.atmo-b .atmo-blob.b2{bottom:-100px;left:-60px}.atmo-b .atmo-blob.b3{opacity:.48;top:40%;left:35%}.atmo-c .atmo-blob.b1{opacity:.72;background:radial-gradient(circle,#5b7bff 0%,#0000 68%);top:-80px;left:12%}.atmo-c .atmo-blob.b2{opacity:.65;background:radial-gradient(circle,#5baaff 0%,#0000 68%);top:38%;right:-80px}.atmo-c .atmo-blob.b3{opacity:.55;background:radial-gradient(circle,#8b7bff 0%,#0000 68%);bottom:-100px;left:30%}.atmo-d .atmo-blob.b1{top:-100px;right:-100px}.atmo-d .atmo-blob.b2{opacity:.6;bottom:-80px;left:-60px}.atmo-d .atmo-blob.b3{opacity:.48;top:50%;right:12%}.atmo-e .atmo-blob.b1{opacity:.6;top:-120px;left:-100px}.atmo-e .atmo-blob.b2{opacity:.52;top:40%;right:20%}.atmo-e .atmo-blob.b3{opacity:.44;bottom:-60px;left:40%}.about{background:linear-gradient(#fff 0% 78%,#f4f8ffdb 100%);flex-direction:column;justify-content:center;min-height:100vh;padding:88px 96px 96px;display:flex;position:relative;overflow-x:clip}.about>:not(.atmo){z-index:2;position:relative}.about>.section-head{width:100%;max-width:1280px;margin-left:auto;margin-right:auto;display:flex}.about-grid{z-index:2;grid-template-columns:minmax(420px,560px) 32px 1fr;align-items:start;gap:48px;width:100%;max-width:1280px;margin:0 auto;display:grid;position:relative}.about-tagline{font-family:var(--font-inter),var(--font-noto-sans-jp),sans-serif;color:var(--ink);letter-spacing:.02em;margin-top:28px;margin-bottom:32px;font-size:28px;font-weight:700;line-height:1.75}.about-body{color:var(--ink-2);letter-spacing:.02em;font-size:16px;line-height:2}.about-body p{margin-bottom:10px}.about-divider{align-self:stretch;width:32px;min-height:360px;position:relative}.about-divider:before{content:"";background-image:linear-gradient(#4367ff80 50%,#0000 50%);background-size:2px 7px;width:2px;position:absolute;top:16px;bottom:16px;left:15px}.ab-div-sq{border:1.5px solid var(--blue);background:#4367ff2e;width:16px;height:16px;position:absolute;left:8px}.ab-div-sq.top{top:0}.ab-div-sq.bot{background:var(--blue);bottom:0}.ab-div-indicator{background:var(--blue);opacity:0;clip-path:polygon(0 0,60% 0,100% 50%,60% 100%,0 100%);will-change:top;width:20px;height:16px;position:absolute;top:0;left:6px}.about-stats{flex-direction:column;gap:20px;display:flex}.about-card{-webkit-backdrop-filter:blur(8px);background:#ffffffc7;border:1px solid #4367ff24;grid-template-columns:42px 1fr 36px;align-items:center;gap:24px;min-height:104px;padding:26px 30px;transition:transform .2s,box-shadow .2s,border-color .2s;display:grid;position:relative}.about-card:hover{border-color:var(--blue);transform:translateY(-2px);box-shadow:0 8px 24px #4367ff1f}.ab-cb{pointer-events:none;width:12px;height:12px;position:absolute}.ab-cb.tl{border-top:1.5px solid var(--blue);border-left:1.5px solid var(--blue);top:8px;left:8px}.ab-cb.tr{border-top:1.5px solid var(--blue);border-right:1.5px solid var(--blue);top:8px;right:8px}.ab-cb.bl{border-bottom:1.5px solid var(--blue);border-left:1.5px solid var(--blue);bottom:8px;left:8px}.ab-cb.br{border-bottom:1.5px solid var(--blue);border-right:1.5px solid var(--blue);bottom:8px;right:8px}.about-card-icon{width:42px;height:42px;color:var(--blue);justify-content:center;align-items:center;display:flex}.about-card-icon img{object-fit:contain;filter:drop-shadow(0 4px 8px #4367ff2e);width:30px;height:30px}.about-card-body{flex-direction:column;gap:9px;min-width:0;display:flex}.about-card-date{color:var(--blue);letter-spacing:.22em;white-space:nowrap;font-size:11px}.about-card-title{width:100%;max-width:100%;font-family:var(--font-inter),var(--font-noto-sans-jp),sans-serif;color:var(--ink);letter-spacing:.02em;white-space:normal;overflow-wrap:anywhere;font-size:16px;font-weight:600;line-height:1.45;display:block;overflow:hidden;min-width:0!important}.about-card-plus{opacity:.6;width:14px;height:14px;position:relative}.about-card-plus span:first-child{background:var(--muted);width:14px;height:2px;position:absolute;top:6px;left:0}.about-card-plus span:nth-child(2){background:var(--muted);width:2px;height:14px;position:absolute;top:0;left:6px}.about-card:hover .about-card-plus span{background:var(--blue)}.skills{background:linear-gradient(#f4f8ffdb 0%,#e8efffdb 48%,#f8fbfff0 100%);flex-direction:column;justify-content:center;padding:88px 96px 96px;display:flex;position:relative;overflow-x:clip}.skills>:not(.atmo){z-index:2;position:relative}.skills-wrap{z-index:2;width:100%;max-width:1280px;margin:0 auto;position:relative}.skills-intro-grid{grid-template-columns:minmax(300px,.82fr) minmax(520px,1.18fr);align-items:stretch;gap:34px;margin:-12px 0 42px;display:grid}.skills-overview,.skills-level-column{-webkit-backdrop-filter:blur(10px);background:#ffffffb3;border:1px solid #4367ff29;position:relative;box-shadow:0 16px 40px #1f2a440f}.skills-overview{padding:24px 28px 26px}.skills-level-column{flex-direction:column;display:flex}.skills-overview:before,.skills-overview:after{content:"";pointer-events:none;width:18px;height:18px;position:absolute}.skills-overview:before{border-top:1.5px solid var(--blue);border-left:1.5px solid var(--blue);top:9px;left:9px}.skills-overview:after{border-right:1.5px solid var(--blue);border-bottom:1.5px solid var(--blue);bottom:9px;right:9px}.skills-kicker{font-family:var(--font-jetbrains-mono),ui-monospace,monospace;color:var(--blue);letter-spacing:.22em;margin-bottom:12px;font-size:10px;font-weight:700}.skills-lead{font-family:var(--font-inter),var(--font-noto-sans-jp),sans-serif;color:var(--ink-2);letter-spacing:.035em;margin:0;font-size:14px;line-height:1.92}.skills-note{color:var(--muted-2);letter-spacing:.04em;grid-template-columns:16px minmax(0,1fr);align-items:start;gap:9px;margin:0;padding:15px 22px 17px;font-size:12px;line-height:1.8;display:grid;position:relative}.skills-note:before{content:"";background-image:linear-gradient(90deg,#7a869a70 50%,#0000 50%);background-size:7px 1px;height:1px;position:absolute;top:0;left:22px;right:22px}.skills-note-icon{opacity:.78;width:16px;height:16px;margin-top:3px}.skills-level-guide{flex:1;grid-template-columns:repeat(5,minmax(0,1fr));align-self:stretch;gap:0;padding:18px 20px 20px;display:grid}.sk-guide-item{border-left:1px solid #b5bdcd6b;flex-direction:column;gap:9px;min-height:116px;padding:0 17px;display:flex}.sk-guide-item:first-child{border-left:0}.sk-guide-level{width:fit-content;font-family:var(--font-jetbrains-mono),ui-monospace,monospace;letter-spacing:.04em;color:var(--muted-2);background:#eef4ffd6;border:1px solid #4367ff1f;padding:4px 8px;font-size:12px;font-weight:800}.sk-guide-label{color:var(--ink-2);letter-spacing:.02em;flex:1;font-size:12px;font-weight:700;line-height:1.65}.sk-guide-line{background:var(--line-2);width:100%;height:3px;display:block;box-shadow:0 0 12px #4367ff1a}.sk-guide-lv1 .sk-guide-line{background:#aeb8c8}.sk-guide-lv2 .sk-guide-line{background:#438bff}.sk-guide-lv3 .sk-guide-line{background:#31b978}.sk-guide-lv4 .sk-guide-line{background:#8c5cff}.sk-guide-lv5 .sk-guide-line{background:#ff5a1f}.sk-guide-lv2 .sk-guide-level{color:#2b74d8}.sk-guide-lv3 .sk-guide-level{color:#11995c}.sk-guide-lv4 .sk-guide-level{color:#7d4be8}.sk-guide-lv5 .sk-guide-level{color:#e64a16}.skills-list{flex-direction:column;gap:34px;display:flex}.sk-cat{margin:0}.sk-cat-head{align-items:center;gap:16px;margin-bottom:16px;display:flex}.sk-cat-marker{isolation:isolate;background:linear-gradient(135deg,#ffffff61,#ffffff14 42%,#4367ff38),radial-gradient(circle at 30% 22%,#ffffffe6,transparent 34%),linear-gradient(135deg,var(--blue),var(--blue-deep));border:1px solid #ffffffc2;flex-shrink:0;justify-content:center;align-items:center;width:46px;height:46px;display:flex;position:relative;overflow:hidden;box-shadow:0 14px 24px #4367ff38,inset 0 1px #ffffffa3,inset 0 -10px 18px #0a0f1c29}.sk-cat-marker:before,.sk-cat-marker:after{content:"";pointer-events:none;z-index:0;position:absolute}.sk-cat-marker:before{border:1px solid #ffffff1f;border-color:#ffffff57 #ffffff1f #ffffff1f #ffffff57;inset:6px}.sk-cat-marker:after{filter:blur(.2px);background:#ffffff8a;width:58px;height:18px;top:-18px;left:-20px;transform:rotate(-28deg)}.sk-cat-marker-img{z-index:1;object-fit:contain;filter:brightness(0)invert()drop-shadow(0 3px 7px #0a0f1c42);width:25px;height:25px;position:relative}.sk-cat-title{font-family:var(--font-press-start-2p),monospace;color:var(--ink);letter-spacing:.04em;flex-shrink:0;font-size:13px;line-height:1.5}.sk-cat-rule{background-image:linear-gradient(90deg,var(--line-3)50%,transparent 50%);background-size:6px 1px;flex:1;height:1px}.sk-cat-count{font-family:var(--font-jetbrains-mono),ui-monospace,monospace;color:var(--muted-2);letter-spacing:.22em;flex-shrink:0;font-size:11px}.sk-cat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.sk-tile{--skill-color:#438bff;--skill-glow:#438bff2e;-webkit-backdrop-filter:blur(8px);background:#ffffffd1;border:1px solid #d7dceaf0;align-items:stretch;min-height:96px;padding:16px 18px;transition:transform .2s,border-color .2s,box-shadow .2s,background .2s;display:flex;position:relative;box-shadow:0 12px 26px #1f2a440f}.sk-tile:before,.sk-tile:after{content:"";pointer-events:none;opacity:.64;width:9px;height:9px;position:absolute}.sk-tile:before{border-top:1px solid var(--skill-color);border-left:1px solid var(--skill-color);top:7px;left:7px}.sk-tile:after{border-right:1px solid var(--skill-color);border-bottom:1px solid var(--skill-color);bottom:7px;right:7px}.sk-tile:hover{border-color:var(--skill-color);box-shadow:0 16px 34px var(--skill-glow);background:#fffffff0;transform:translateY(-3px)}.sk-level-low{--skill-color:#aeb8c8;--skill-glow:#7a869a24}.sk-level-base{--skill-color:#438bff;--skill-glow:#438bff2e}.sk-level-mid{--skill-color:#31b978;--skill-glow:#31b9782e}.sk-level-high{--skill-color:#31b978;--skill-glow:#31b97838}.sk-tile-main{grid-template-columns:40px minmax(0,1fr);align-items:center;gap:14px;width:100%;display:grid}.sk-tile-icon{background:#f4f6fbc7;border:1px solid #d7dceaeb;justify-content:center;align-items:center;width:38px;height:38px;display:flex;box-shadow:inset 0 1px #ffffffb8,0 8px 16px #1f2a440d}.sk-tile-icon-img{object-fit:contain;filter:drop-shadow(0 3px 5px #1f2a441f);width:30px;height:30px}.sk-tile-icon-fallback{font-family:var(--font-press-start-2p),monospace;color:var(--skill-color);letter-spacing:.04em;font-size:8px}.sk-tile-body{flex-direction:column;gap:14px;min-width:0;display:flex}.sk-tile-top{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.sk-tile-name{font-family:var(--font-inter),var(--font-noto-sans-jp),sans-serif;color:var(--ink);letter-spacing:.01em;overflow-wrap:anywhere;min-width:0;font-size:15px;font-weight:800;line-height:1.35}.sk-tile-score{font-family:var(--font-jetbrains-mono),ui-monospace,monospace;color:var(--ink);flex-shrink:0;padding-top:2px;font-size:14px;font-weight:800;line-height:1}.sk-level-track{background:#d7dceae6;width:100%;height:6px;position:relative;overflow:hidden;box-shadow:inset 0 1px 2px #1f2a4414}.sk-level-fill{width:calc(var(--skill-level)*20%);transform-origin:0;background:linear-gradient(90deg,var(--skill-color),var(--skill-color));height:100%;display:block}@supports (color:color-mix(in lab, red, red)){.sk-level-fill{background:linear-gradient(90deg,var(--skill-color),color-mix(in srgb,var(--skill-color)72%,#fff))}}.sk-level-fill{box-shadow:0 0 16px var(--skill-glow)}.sk-tile.is-level-animating .sk-level-fill{animation:.62s cubic-bezier(.2,.85,.2,1) both sk-level-hover-fill}@keyframes sk-level-hover-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (prefers-reduced-motion:reduce){.sk-tile.is-level-animating .sk-level-fill{animation:none}}@media (max-width:1100px){.skills-intro-grid{grid-template-columns:1fr}.skills-level-guide{grid-template-columns:repeat(5,minmax(120px,1fr));overflow-x:auto}.sk-cat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:720px){.skills-intro-grid{gap:18px;margin-top:0}.skills-overview{padding:22px 20px 24px}.skills-level-guide{grid-template-columns:1fr;padding:16px}.sk-guide-item{border-top:1px solid #b5bdcd6b;border-left:0;min-height:auto;padding:12px 0}.sk-guide-item:first-child{border-top:0}.sk-cat-head{align-items:flex-start;gap:12px}.sk-cat-marker{width:40px;height:40px}.sk-cat-marker-img{width:22px;height:22px}.sk-cat-title{font-size:11px}.sk-cat-count{font-size:10px}}@media (max-width:520px){.sk-cat-grid{grid-template-columns:1fr}.skills-lead{font-size:13px}.sk-tile{min-height:88px;padding:15px 16px}.sk-tile-main{grid-template-columns:36px minmax(0,1fr);gap:12px}.sk-tile-icon{width:34px;height:34px}.sk-tile-icon-img{width:27px;height:27px}}.projects{background:linear-gradient(#f8fbfff0 0%,#fff 26% 78%,#f3f8ffe6 100%);flex-direction:column;justify-content:center;padding:88px 96px 96px;display:flex;position:relative;overflow-x:clip}.projects>:not(.atmo){z-index:2;position:relative}.projects-wrap{z-index:2;width:100%;max-width:1280px;margin:0 auto;position:relative}.projects-head{justify-content:space-between;align-items:flex-end;margin-bottom:42px;display:flex}.projects-grid{grid-template-columns:repeat(3,1fr);gap:28px;display:grid}.project-card{cursor:pointer;background:linear-gradient(#fffffff0,#f7faffd6),repeating-linear-gradient(90deg,#4367ff0a 0 1px,#0000 1px 18px);border:1px solid #4367ff29;border-radius:8px;flex-direction:column;padding:0;transition:transform .25s,border-color .25s,box-shadow .25s,background .25s;display:flex;position:relative;overflow:hidden;box-shadow:0 18px 40px #0f172a12,inset 0 1px #ffffffdb}.project-card:before{content:"";pointer-events:none;opacity:.55;background:linear-gradient(90deg,#4367ff1f,#0000 22% 78%,#4367ff1a),linear-gradient(#ffffff85,#0000 36%);position:absolute;inset:0}.project-card:hover{border-color:#4367ff57;transform:translateY(-5px);box-shadow:0 24px 58px #0f172a1f,0 0 0 1px #4367ff14,inset 0 1px #ffffffe6}.project-preview{background:var(--ink);border-bottom:1px solid #4367ff24;border-radius:7px 7px 0 0;height:286px;margin-bottom:0;transition:box-shadow .25s;position:relative;overflow:hidden;box-shadow:inset 0 -1px #ffffff1a}.project-card:hover .project-preview{box-shadow:inset 0 -1px #ffffff24}.project-preview-image-wrap{background:#050a14;position:absolute;inset:0}.project-preview-image{object-fit:cover;object-position:center;transition:transform .35s,filter .35s}.project-preview-image.is-contain{object-fit:contain;background:linear-gradient(135deg,#020617 0%,#0f172a 100%);padding:12px}.project-card:hover .project-preview-image{filter:saturate(1.08)contrast(1.04);transform:scale(1.035)}.project-card.is-no-preview{background:linear-gradient(135deg,#ffffffeb,#f5f8ffc7),repeating-linear-gradient(0deg,#4367ff0d 0 1px,#0000 1px 12px);border-style:dashed;min-height:300px;display:flex}.project-card.is-no-preview .project-meta{flex-direction:column;justify-content:center;min-height:100%;padding-top:34px;display:flex}.project-card.is-no-preview .project-num-sm:after{content:" / COMING SOON";color:#4367ffb8}.project-num-badge{color:var(--blue);letter-spacing:.18em;z-index:3;background:#ffffffdb;border:1px solid #4367ff3d;padding:6px 9px;font-size:10px;font-weight:800;position:absolute;top:10px;right:10px;box-shadow:0 8px 20px #0f172a1f}.project-meta{z-index:1;padding:18px 18px 20px;position:relative}.project-num-sm{color:var(--blue);letter-spacing:.22em;margin-bottom:8px;font-size:11px;font-weight:800}.project-title{font-family:var(--font-press-start-2p),monospace;color:var(--ink);letter-spacing:.04em;margin-bottom:10px;font-size:16px;font-weight:400;line-height:1.35}.project-desc{font-family:var(--font-inter),var(--font-noto-sans-jp),sans-serif;color:#182234c2;letter-spacing:.02em;margin-bottom:14px;font-size:13.5px;line-height:1.75}.project-tags{flex-wrap:wrap;gap:8px;display:flex}.project-tag{background:linear-gradient(#ffffffeb,#f4f8ffc7);border:1px solid #4367ff29;border-radius:6px;place-items:center;width:34px;height:34px;display:inline-grid;box-shadow:0 8px 18px #4367ff12,inset 0 1px #ffffffd1}.project-tag-icon{object-fit:contain;width:20px;height:20px}.project-tag-fallback{max-width:28px;color:var(--blue);letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:800;overflow:hidden}.preview-quest{background:#0f0a1f;flex-direction:column;height:100%;padding:18px;display:flex}.preview-quest-header{font-family:var(--font-press-start-2p),monospace;color:#d7ff00;text-align:center;letter-spacing:.04em;text-shadow:2px 2px #4a6612;margin:30px 0 24px;font-size:22px}.preview-quest-thumbs{grid-template-columns:repeat(2,1fr);gap:4px;padding:0 30px;display:grid}.qthumb{aspect-ratio:1.6}.qthumb.v1,.qthumb.v2,.qthumb.v3,.qthumb.v4{background:#2d3a6b}.preview-quest-btn{font-family:var(--font-press-start-2p),monospace;color:#fff;letter-spacing:.1em;background:#4367ff;align-self:center;margin-top:auto;padding:8px 18px;font-size:8px;position:relative}.preview-quest-btn:before{content:"12:33";color:#fff;background:#1a1a1a;padding:8px;font-size:8px;position:absolute;top:0;left:calc(100% + 6px)}.preview-score{background:#4367ff;justify-content:center;align-items:center;height:100%;padding:28px 14px;display:flex}.preview-score-card{background:#fff;width:100%;padding:14px 16px;transform:rotate(-3deg);box-shadow:0 12px 24px #0000002e}.rank-title{font-family:var(--font-press-start-2p),monospace;color:#4367ff;letter-spacing:.06em;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:12px;display:flex}.rank-title .pts{color:var(--muted);letter-spacing:.1em;font-size:8px}.rank-row{font-family:var(--font-press-start-2p),monospace;color:var(--ink);grid-template-columns:24px 1fr;align-items:center;gap:10px;padding:6px 4px;font-size:8px;display:grid}.rank-row+.rank-row{border-top:1px dashed var(--line)}.rank-row .rank-n{color:#fff;justify-content:center;align-items:center;width:18px;height:18px;font-size:8px;display:flex}.rank-row.n1 .rank-n{color:#000;background:#ffc933}.rank-row.n2 .rank-n{color:#000;background:#b9c8e4}.rank-row.n3 .rank-n{background:#e07a2a}.rank-row.n4 .rank-n{background:#c94545}.preview-pixel{background:#dce8c0;height:100%;padding:12px;position:relative}.preview-pixel:before{content:"Pixels.com";font-family:var(--font-jetbrains-mono),ui-monospace,monospace;color:var(--muted-2);font-size:9px;position:absolute;top:6px;left:12px}.preview-pixel-inner{background:#fff;flex-direction:column;height:calc(100% - 22px);margin-top:22px;padding:14px;display:flex;position:relative;box-shadow:0 4px 12px #0000000f}.preview-pixel-header{font-family:var(--font-jetbrains-mono),ui-monospace,monospace;color:var(--ink-2);justify-content:space-between;margin-bottom:6px;font-size:9px;display:flex}.preview-pixel-fig{flex:1;justify-content:center;align-items:center;display:flex}.preview-pixel-caption{font-family:var(--font-jetbrains-mono),ui-monospace,monospace;color:var(--muted-2);text-align:center;letter-spacing:.04em;margin-top:auto;font-size:8px}.experience{background:linear-gradient(#f3f8ffe6 0%,#e6eeffe6 46%,#f8fbfff5 100%);flex-direction:column;justify-content:center;padding:88px 96px 96px;display:flex;position:relative;overflow-x:clip}.experience>:not(.atmo){z-index:2;position:relative}.exp-wrap{z-index:2;width:100%;max-width:1280px;margin:0 auto;position:relative}.exp-list{padding:0 0 0 56px;position:relative}.exp-rail{background-image:linear-gradient(180deg,var(--blue)50%,transparent 50%);opacity:.45;background-size:2px 8px;width:2px;position:absolute;top:24px;bottom:24px;left:22px}.exp-row{margin-bottom:24px;position:relative}.exp-row:last-child{margin-bottom:0}.exp-node{border:1.6px solid var(--blue);background:#fff;width:12px;height:12px;transition:transform .2s,background .2s,box-shadow .2s;position:absolute;top:22px;left:-40px}.exp-row:hover .exp-node{background:var(--blue);box-shadow:0 0 0 4px #4367ff38}.exp-card{-webkit-backdrop-filter:blur(8px);border:1px solid var(--line);background:#ffffffc7;padding:24px 30px;transition:border-color .2s,box-shadow .2s;position:relative}.exp-card:hover{border-color:var(--blue);box-shadow:0 6px 18px #4367ff14}.ex-cb{pointer-events:none;width:12px;height:12px;position:absolute}.ex-cb.tl{border-top:1.6px solid var(--blue);border-left:1.6px solid var(--blue);top:6px;left:6px}.ex-cb.tr{border-top:1.6px solid var(--blue);border-right:1.6px solid var(--blue);top:6px;right:6px}.ex-cb.bl{border-bottom:1.6px solid var(--blue);border-left:1.6px solid var(--blue);bottom:6px;left:6px}.ex-cb.br{border-bottom:1.6px solid var(--blue);border-right:1.6px solid var(--blue);bottom:6px;right:6px}.exp-card-head{align-items:center;gap:12px;margin-bottom:14px;display:flex}.exp-date{color:var(--blue);letter-spacing:.22em;white-space:nowrap;font-size:11px;font-weight:500}.exp-badge{font-family:var(--font-press-start-2p),monospace;color:#fff;letter-spacing:.08em;flex:none;justify-content:center;align-items:center;min-height:24px;padding:7px 10px;font-size:9px;line-height:1;display:inline-flex}.exp-badge.t-blue{background:var(--blue)}.exp-badge.t-lime{color:var(--ink);background:#ffc933}.exp-badge.t-violet{background:#8c5cff}.exp-badge.t-green{background:#34c759}.exp-badge.t-dark{background:var(--ink)}.exp-title{font-family:var(--font-inter),var(--font-noto-sans-jp),sans-serif;color:var(--ink);letter-spacing:.02em;margin-bottom:9px;font-size:16px;font-weight:700}.exp-desc{font-family:var(--font-inter),var(--font-noto-sans-jp),sans-serif;color:var(--muted-2);letter-spacing:.02em;font-size:13px;line-height:1.85}.exp-links{flex-wrap:wrap;gap:6px;margin-left:auto;display:flex}.exp-link{color:#09111fdb;min-height:32px;font-family:var(--font-jetbrains-mono),var(--font-noto-sans-jp),ui-monospace,monospace;letter-spacing:.04em;background:#ffffffbd;border:1px solid #4367ff2e;border-radius:6px;align-items:center;gap:7px;padding:7px 10px;font-size:11px;font-weight:800;line-height:1.2;transition:transform .16s,border-color .16s,color .16s,background .16s;display:inline-flex;box-shadow:inset 0 1px #ffffffc7}.exp-link:hover{color:var(--blue-deep);background:#fffffff2;border-color:#4367ff6b;transform:translateY(-1px)}.exp-link-icon{object-fit:contain;opacity:.78;width:13px;height:13px}.contact{background:linear-gradient(#f8fbfff5 0%,#fff 34% 100%);flex-direction:column;justify-content:center;padding:72px 96px 80px;display:flex;position:relative;overflow-x:clip}.contact>:not(.atmo){z-index:2;position:relative}.contact-grid{z-index:2;grid-template-columns:minmax(360px,.95fr) 1.15fr;align-items:center;gap:80px;width:100%;max-width:1280px;margin:0 auto;display:grid;position:relative}.contact-status{color:var(--ink);letter-spacing:.2em;border:1px solid var(--line);background:#ffffffb3;align-items:center;gap:8px;padding:8px 12px;font-size:12px;display:inline-flex;position:absolute;top:18px;right:0}.contact-status .dot{background:#00ff3b;width:8px;height:8px;animation:1.4s ease-in-out infinite pulse;display:inline-block;box-shadow:0 0 6px #00ff3b,0 0 14px #00ff3b66}.contact-left{padding-top:34px;position:relative}.contact-lead{font-family:var(--font-inter),var(--font-noto-sans-jp),sans-serif;color:var(--ink);letter-spacing:.02em;margin-top:26px;margin-bottom:10px;font-size:17px;font-weight:600;line-height:1.9}.contact-body{font-family:var(--font-inter),var(--font-noto-sans-jp),sans-serif;color:var(--ink-2);letter-spacing:.02em;margin-bottom:30px;font-size:15.5px;line-height:1.9}.ct-stats{flex-direction:column;gap:12px;max-width:460px;margin-bottom:24px;display:flex}.ct-stat-row{grid-template-columns:106px 1fr 64px;align-items:center;gap:14px;display:grid}.ct-stat-label{color:var(--ink);letter-spacing:.16em;white-space:nowrap;font-size:11px;font-weight:600;overflow:hidden}.ct-stat-bar{background:#4367ff1f;height:9px;display:block;position:relative}.ct-stat-bar>span,.ct-stat-bar-fill{background:var(--blue);display:block;position:absolute;top:0;bottom:0;left:0}.ct-stat-num{color:var(--blue);letter-spacing:.08em;text-align:right;white-space:nowrap;font-size:11px;overflow:hidden}.ct-prompt{color:var(--blue);letter-spacing:.16em;align-items:center;font-size:12px;display:inline-flex}.caret-blink{background:var(--blue);width:7px;height:12px;margin-left:6px;animation:1s steps(2,end) infinite blink;display:inline-block}.contact-cards{grid-template-columns:1fr 1fr;gap:22px;display:grid}.ct-card{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);cursor:pointer;will-change:transform;isolation:isolate;background:#ffffffbf;border:1px solid #4367ff26;grid-template-rows:auto 1fr auto;gap:10px;min-height:152px;padding:30px 32px 26px;transition:transform .2s,border-color .2s,box-shadow .2s;display:grid;position:relative}.ct-card:hover{border-color:var(--blue);transform:translateY(-3px);box-shadow:0 10px 26px #4367ff1f}.ct-cb{pointer-events:none;width:12px;height:12px;position:absolute}.ct-cb.tl{border-top:1.5px solid var(--blue);border-left:1.5px solid var(--blue);top:8px;left:8px}.ct-cb.tr{border-top:1.5px solid var(--blue);border-right:1.5px solid var(--blue);top:8px;right:8px}.ct-cb.bl{border-bottom:1.5px solid var(--blue);border-left:1.5px solid var(--blue);bottom:8px;left:8px}.ct-cb.br{border-bottom:1.5px solid var(--blue);border-right:1.5px solid var(--blue);bottom:8px;right:8px}.ct-card-icon{color:var(--ink);justify-content:center;align-items:center;width:36px;height:36px;margin-bottom:12px;display:flex}.ct-card-icon img{object-fit:contain;width:28px;height:28px}.ct-card-icon .ct-card-icon-img.is-protopedia{width:36px;height:36px}.ct-card-dot{background:#00ff3b;border-radius:50%;width:11px;height:11px;position:absolute;top:26px;right:26px;box-shadow:0 0 6px #00ff3b,0 0 0 4px #00ff3b26}.ct-card-label{color:var(--ink);letter-spacing:.16em;white-space:nowrap;font-size:13px;font-weight:700;overflow:hidden}.ct-card-handle{color:var(--ink-2);letter-spacing:.04em;overflow-wrap:anywhere;margin-top:6px;font-size:12px}.ct-card-arrow{color:var(--ink-2);font-size:16px;font-family:var(--font-jetbrains-mono),ui-monospace,monospace;transition:transform .2s,color .2s;position:absolute;bottom:22px;right:28px}.ct-card:hover .ct-card-arrow{color:var(--blue);transform:translate(4px)}.about,.skills,.projects,.experience,.contact{--divider-scale:0}.about:after,.skills:after,.projects:after,.experience:after,.contact:after{content:"";height:1px;transform:scaleX(var(--divider-scale,1));transform-origin:0;z-index:3;background:linear-gradient(90deg,#0000 0%,#4367ff1f 14%,#4367ff73 50%,#4367ff1f 86%,#0000 100%);position:absolute;bottom:0;left:96px;right:96px}.project-view-hint{color:#fff;letter-spacing:.14em;text-align:center;z-index:4;background:#0a0f1cd1;padding:10px 12px;font-family:"Press Start 2P",monospace;font-size:7px;transition:transform .22s;position:absolute;bottom:0;left:0;right:0;transform:translateY(100%)}.project-card:hover .project-view-hint{transform:translateY(0)}.pm-dialog-content{overscroll-behavior:contain}.pm-corner{z-index:21;pointer-events:none;width:18px;height:18px;position:absolute}.pm-tl{border-top:2px solid var(--blue);border-left:2px solid var(--blue);top:-1px;left:-1px}.pm-tr{border-top:2px solid var(--blue);border-right:2px solid var(--blue);top:-1px;right:-1px}.pm-bl{border-bottom:2px solid var(--blue);border-left:2px solid var(--blue);bottom:-1px;left:-1px}.pm-br{border-bottom:2px solid var(--blue);border-right:2px solid var(--blue);bottom:-1px;right:-1px}.pm-header{-webkit-backdrop-filter:blur(10px);background:#ffffffbf;border-bottom:1px solid #4367ff17;flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 24px;display:flex}.pm-header-num{color:#4367ffbf;letter-spacing:.14em;font-family:"Press Start 2P",monospace;font-size:9px}.pm-header-right{align-items:center;gap:16px;display:flex}.pm-header-status{color:var(--muted-2);letter-spacing:.18em;align-items:center;gap:6px;font-family:JetBrains Mono,monospace;font-size:10px;display:flex}.pm-header-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;animation:1.4s ease-in-out infinite pulse}.pm-close-btn{color:var(--muted-2);letter-spacing:.18em;cursor:pointer;background:0 0;border:1px solid #4367ff2e;border-radius:3px;align-items:center;gap:7px;padding:6px 14px;font-family:JetBrains Mono,monospace;font-size:10px;transition:all .18s;display:flex}.pm-close-btn:hover{color:var(--ink);background:#4367ff0d;border-color:#4367ff73}.pm-close-x{font-size:10px}.pm-body{overscroll-behavior:contain;flex:1;grid-template-columns:minmax(390px,43%) minmax(0,1fr);min-height:0;display:grid;position:relative;overflow:hidden}.pm-left,.pm-right{z-index:1;position:relative}.pm-left{-webkit-backdrop-filter:blur(52px)saturate(2)brightness(1.1);background:#ffffff14;border-right:1px solid #ffffff5c;flex-direction:column;width:auto;min-width:0;display:flex;overflow:hidden;box-shadow:inset -1px 0 #ffffff2e,inset 1px 0 #ffffff0f,inset 0 0 48px #ffffff0d}.pm-left:after{content:"";z-index:20;pointer-events:none;background:linear-gradient(90deg,#0000 0%,#ffffffb8 14%,#fffffffa 48%,#ffffffb8 84%,#0000 100%);height:1px;position:absolute;top:0;left:0;right:0}.pm-media-carousel{contain:layout paint style;overscroll-behavior:contain;cursor:grab;-webkit-user-select:none;user-select:none;scrollbar-width:thin;scrollbar-color:#4367ff40 transparent;background:0 0;flex-direction:column;flex:1;min-height:0;padding:18px;display:flex;overflow-y:auto}.pm-media-list{flex-direction:column;gap:16px;display:flex}.pm-media-card{filter:drop-shadow(0 16px 28px #4367ff2e)drop-shadow(0 4px 12px #08123624);background:0 0;border:none;border-radius:10px;margin:0;padding:0;transition:transform .2s,filter .2s;overflow:visible}.pm-media-stage{aspect-ratio:16/9;background:0 0;border:none;border-radius:10px;width:100%;position:relative;overflow:hidden;box-shadow:0 0 0 1px #ffffff38,0 14px 34px #4367ff2e,0 4px 14px #08123624}.pm-media-stage:after{display:none}.pm-media-screen{position:absolute;inset:0}.pm-media-open{cursor:zoom-in;background:0 0;border:0;width:100%;height:100%;padding:0;display:block}.pm-media-el{object-fit:cover;width:100%;height:100%;display:block}.pm-media-caption{font-family:var(--font-noto-sans-jp),var(--font-inter),sans-serif;color:#fff;letter-spacing:.03em;align-items:flex-start;gap:8px;margin-top:7px;padding:0 2px;font-size:11px;line-height:1.6;display:flex}.pm-media-count{font-family:var(--font-jetbrains-mono),ui-monospace,monospace;color:#4366ff;letter-spacing:.14em;flex-shrink:0;font-size:12px}.pm-media-lightbox{z-index:80;-webkit-backdrop-filter:blur(10px);background:#0a143ccc;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.pm-media-lightbox-panel{-webkit-backdrop-filter:blur(20px);background:#f8fcfff5;border:1px solid #4367ff38;border-radius:10px;flex-direction:column;gap:12px;width:min(1120px,100vw - 40px);max-height:calc(100vh - 40px);padding:14px;display:flex;position:relative;box-shadow:0 24px 64px #4367ff26,0 0 0 1px #fffc}.pm-media-lightbox-close{color:var(--muted-2);font-family:var(--font-jetbrains-mono),ui-monospace,monospace;letter-spacing:.16em;cursor:pointer;background:#4367ff0f;border:1px solid #4367ff33;border-radius:3px;align-self:flex-end;padding:7px 12px;font-size:10px;transition:all .15s}.pm-media-lightbox-close:hover{color:var(--ink);background:#4367ff1a;border-color:#4367ff66}.pm-media-lightbox-img{object-fit:contain;background:#f0f4ff80;width:100%;max-height:min(76vh,760px);display:block}.pm-media-lightbox-caption{font-family:var(--font-noto-sans-jp),var(--font-inter),sans-serif;color:var(--muted-2);font-size:13px;line-height:1.6}.pm-left-meta{background:#ffffff0d;border-top:1px solid #ffffff47;flex-direction:column;flex-shrink:0;gap:8px;padding:16px 18px;display:flex}.pm-meta-row{align-items:baseline;gap:10px;display:flex}.pm-meta-key{color:#4366ff;letter-spacing:.14em;flex-shrink:0;min-width:46px;font-family:"Press Start 2P",monospace;font-size:9px}.pm-meta-val{color:#fff;letter-spacing:.06em;font-family:JetBrains Mono,monospace;font-size:12px}.pm-right{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;cursor:grab;scrollbar-width:thin;scrollbar-color:#4367ff38 transparent;background:#fff;flex:1;min-width:0;min-height:0;padding:34px 42px 40px;overflow-y:auto}.pm-media-carousel.is-dragging,.pm-media-carousel.is-dragging *,.pm-right.is-dragging,.pm-right.is-dragging *{cursor:grabbing;-webkit-user-select:none;user-select:none}.pm-reveal{opacity:0}.pm-r-title-block{margin-bottom:0}.pm-label{color:#4367ffad;letter-spacing:.2em;margin-bottom:10px;font-family:JetBrains Mono,monospace;font-size:10px}.pm-title-row{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:14px;display:flex}.pm-title-actions{flex-direction:column;flex:none;align-items:stretch;gap:8px;min-width:120px;display:flex}.pm-title{min-width:0;color:var(--ink);letter-spacing:.04em;flex:1;margin-bottom:0;font-family:"Press Start 2P",monospace;font-size:clamp(16px,1.55vw,20px);font-weight:400;line-height:1.55}.pm-github-link{color:#fff;min-height:34px;font-family:var(--font-jetbrains-mono),ui-monospace,monospace;letter-spacing:.05em;background:#0f172a;border:1px solid #0f172a29;border-radius:6px;flex-shrink:0;align-items:center;gap:8px;padding:8px 11px;font-size:12px;font-weight:800;text-decoration:none;transition:transform .16s,box-shadow .16s,background .16s;display:inline-flex;box-shadow:0 8px 18px #0f172a29}.pm-github-link:hover{background:#111827;transform:translateY(-1px);box-shadow:0 12px 24px #0f172a38}.pm-demo-link{color:#07111f;background:#fff;border-color:#ff000038}.pm-demo-link:hover{color:#c41212;background:#ff00000f;box-shadow:0 12px 24px #ff00001f}.pm-resource-link{color:#07111f;background:#fff;border-color:#4367ff38}.pm-resource-link:hover{color:var(--blue-deep);background:#4367ff0f;box-shadow:0 12px 24px #4367ff1f}.pm-youtube-icon{object-fit:contain;width:18px;height:18px}.pm-external-icon{filter:invert();opacity:.9;width:14px;height:14px}.pm-demo-link .pm-external-icon{filter:none;opacity:.72}.pm-summary{color:var(--muted-2);letter-spacing:.02em;font-family:Inter,Noto Sans JP,sans-serif;font-size:14.5px;line-height:1.8}.pm-divider{background:linear-gradient(90deg,var(--blue)0%,#4367ff47 60%,transparent 100%);height:1px;margin:20px 0}.pm-section-title{font-family:var(--font-jetbrains-mono),var(--font-noto-sans-jp),ui-monospace,monospace;color:var(--blue);letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:7px;margin-bottom:12px;font-size:18px;font-weight:700;display:flex}.pm-section-icon{color:var(--blue);font-size:10px}.pm-section-body{color:var(--muted-2);letter-spacing:.02em;font-family:Inter,Noto Sans JP,sans-serif;font-size:14.5px;line-height:1.9}.pm-text-block{flex-direction:column;gap:10px;display:flex}.pm-text-block p{margin:0}.pm-tags-grid{flex-wrap:wrap;gap:7px;display:flex}.pm-tag{letter-spacing:.1em;color:#4367ffd9;background:#4367ff0d;border:1px solid #4367ff38;border-radius:3px;padding:4px 11px;font-family:JetBrains Mono,monospace;font-size:10px}.pm-tech-reasons{background:#4367ff09;border:1px solid #4367ff1f;border-radius:8px;margin-top:16px;padding:14px 16px}.pm-tech-reasons-title{font-family:var(--font-noto-sans-jp),var(--font-inter),sans-serif;color:#4367ffeb;letter-spacing:.04em;margin:0 0 10px;font-size:13px;font-weight:900}.pm-tech-reasons-list{flex-direction:column;gap:9px;margin:0;padding:0;list-style:none;display:flex}.pm-tech-reason-item{font-family:var(--font-noto-sans-jp),var(--font-inter),sans-serif;color:var(--muted-2);grid-template-columns:minmax(120px,.34fr) 1fr;align-items:start;gap:10px;font-size:13.5px;line-height:1.85;display:grid}.pm-tech-reason-name{font-family:var(--font-jetbrains-mono),ui-monospace,monospace;color:#111b2deb;font-size:12px;font-weight:900}.pm-tech-reason-text{min-width:0}.pm-bullet-list{flex-direction:column;gap:8px;list-style:none;display:flex}.pm-bullet-item{color:var(--muted-2);letter-spacing:.01em;align-items:flex-start;gap:9px;font-family:Inter,Noto Sans JP,sans-serif;font-size:14px;line-height:1.85;display:flex}.pm-arrow{color:var(--blue);flex-shrink:0;margin-top:3px;font-size:10px}.pm-challenges{flex-direction:column;gap:12px;display:flex}.pm-challenge-item{background:#4367ff06;border:1px solid #4367ff1a;border-left:2px solid #4367ff61;border-radius:0 5px 5px 0;flex-direction:column;gap:6px;padding:12px 14px;display:flex}.pm-challenge-problem,.pm-challenge-solution{color:var(--muted-2);flex-direction:column;gap:3px;font-family:Inter,Noto Sans JP,sans-serif;font-size:14px;line-height:1.9;display:flex}.pm-challenge-copy{color:var(--muted-2);letter-spacing:.01em;font-family:Inter,Noto Sans JP,sans-serif;font-size:14px;line-height:1.9}.pm-challenge-label{color:#4367ffc7;letter-spacing:.18em;margin-bottom:2px;font-family:JetBrains Mono,monospace;font-size:14px;font-weight:700}.pm-actions{flex-wrap:wrap;gap:12px;padding-top:4px;padding-bottom:8px;display:flex}.pm-btn{letter-spacing:.1em;cursor:pointer;border-radius:4px;align-items:center;gap:7px;padding:13px 19px;font-family:"Press Start 2P",monospace;font-size:8px;text-decoration:none;transition:all .18s;display:inline-flex}.pm-btn-ghost{color:var(--muted-2);background:0 0;border:1px solid #4367ff38}.pm-btn-ghost:hover{color:var(--ink);background:#4367ff0f;border-color:#4367ff80}.pm-btn-primary{background:linear-gradient(135deg,var(--blue)0%,var(--blue-deep)100%);color:#fff;border:1px solid #0000;box-shadow:0 2px 12px #4367ff4d}.pm-btn-primary:hover{background:linear-gradient(135deg,#5578ff 0%,var(--blue)100%);transform:translateY(-1px);box-shadow:0 8px 22px #4367ff6b}.pm-btn-dim{color:var(--muted);border:1px solid var(--line);cursor:default;background:0 0}.pm-btn-arrow{font-size:11px}@media (prefers-reduced-motion:reduce){.pm-media-card{transition:none}}@media (max-width:760px){.pm-body{grid-template-columns:1fr;overflow-y:auto}.pm-left{border-bottom:1px solid #ffffff14;border-right:0;min-height:320px}.pm-media-carousel{gap:10px;padding:16px}.pm-right{padding:24px 20px 28px;overflow:visible}.pm-header{gap:12px;padding:12px 16px}.pm-header-right{gap:10px}.pm-header-status{display:none}.pm-title-row{flex-direction:column;align-items:flex-start;gap:10px}.pm-title-actions{justify-content:flex-start}.pm-title{font-size:15px;line-height:1.6}.pm-github-link{min-height:32px;padding:7px 10px;font-size:11px}}.pm-dialog-content{isolation:isolate;color:var(--ink)}.pm-dialog-content:before{content:"";z-index:0;pointer-events:none;background:linear-gradient(90deg,#f4f7ff33 0%,#f4f7ff14 48%,#fffffffa 48.2% 100%),radial-gradient(circle at 18% 4%,#ffffff57,#0000 34%);position:absolute;inset:0}.pm-body{border-radius:inherit;background:0 0;grid-template-columns:minmax(430px,47.5%) minmax(0,1fr);height:100%}.pm-left{-webkit-backdrop-filter:blur(44px)saturate(1.65);background:#f8fbff26;border-right:1px solid #ffffff85;padding:0;box-shadow:inset -1px 0 #ffffff52,inset 0 1px #ffffff80,inset 0 0 68px #ffffff1f}.pm-right{cursor:default;background:#fffffff7;padding:clamp(36px,4.3vw,58px) clamp(30px,4.8vw,64px) 42px}.pm-close-btn{z-index:30;color:#06101f;width:42px;height:42px;font-family:var(--font-jetbrains-mono),ui-monospace,monospace;cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;padding:0;transition:background .18s,transform .18s,color .18s;display:grid;position:absolute;top:22px;right:24px}.pm-close-btn:hover{color:var(--blue);background:#4367ff14;transform:rotate(90deg)}.pm-close-x{font-size:34px;font-weight:300;line-height:1}.pm-left-kicker{font-family:var(--font-jetbrains-mono),ui-monospace,monospace;color:#4367ffdb;letter-spacing:.22em;flex-shrink:0;margin:0 0 10px;font-size:12px;font-weight:800}.pm-media-carousel{cursor:default;scrollbar-color:#4367ff4d transparent;gap:0;padding:clamp(24px,2.8vw,36px) clamp(16px,2.2vw,28px) 10px}.pm-carousel-shell{flex:1;grid-template-rows:1fr auto 1fr auto;min-width:0;min-height:0;display:grid;position:relative}.pm-carousel-shell [data-slot=carousel-content]{border-radius:12px;grid-row:2;overflow:hidden}.pm-carousel-track{margin-left:-14px}.pm-carousel-item{justify-content:center;align-items:center;padding-left:14px;display:flex}.pm-media-card{filter:none;width:100%;transform:none}.pm-media-card:hover{filter:none;transform:none}.pm-media-stage{background:#030712;border-radius:12px;box-shadow:0 24px 44px #0f172a38,0 12px 26px #4367ff29,0 0 0 1px #ffffff47}.pm-media-stage.is-portrait{aspect-ratio:9/16;width:min(72%,300px);margin-inline:auto}.pm-media-stage.is-square{aspect-ratio:1;width:min(100%,560px);margin-inline:auto}.pm-media-screen{background:radial-gradient(circle at 50% 0,#4367ff38,#0000 48%),#030712}.pm-media-el{object-fit:contain;object-position:center;background:#030712}.pm-media-el.is-landscape,.pm-media-el.is-portrait,.pm-media-el.is-square{object-fit:contain}.pm-media-open:focus-visible{outline:2px solid var(--blue);outline-offset:-4px}.pm-media-open{position:relative;overflow:hidden}.pm-media-caption{color:#0b1220e0;text-shadow:0 1px 8px #ffffff80;min-height:24px;margin-top:7px;font-size:10.5px;line-height:1.42}.pm-media-count{color:var(--blue);font-weight:800}.pm-carousel-controls{display:none}.pm-thumb-nav{grid-row:4;grid-template-columns:34px minmax(0,1fr) 34px;align-items:center;gap:8px;padding-bottom:18px;display:grid;position:relative}.pm-carousel-btn{width:34px;height:34px;color:var(--blue);background:#ffffffa8;border:1px solid #ffffff9e;position:static;transform:none;box-shadow:0 10px 22px #4367ff1f}.pm-carousel-btn:hover{color:var(--blue-deep);background:#ffffffeb}.pm-carousel-btn:disabled{opacity:.38}.pm-thumb-nav .pm-carousel-btn{margin-top:0}.pm-carousel-index{text-align:center;min-width:70px;font-family:var(--font-jetbrains-mono),ui-monospace,monospace;color:#4367ffbd;letter-spacing:.18em;font-size:11px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.pm-thumb-strip{overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:#4367ff57 transparent;grid-auto-columns:82px;grid-auto-flow:column;gap:8px;min-width:0;padding:6px 4px 8px;scroll-padding-inline:8px;display:grid;overflow-x:auto}.pm-thumb-btn{cursor:pointer;color:#4367ff8f;text-align:left;background:0 0;border:0;flex-direction:column;gap:6px;min-width:0;padding:0;display:flex;position:relative}.pm-thumb-frame{aspect-ratio:16/9;background:#030712;border:1px solid #ffffff5c;border-radius:7px;width:100%;transition:border-color .18s,box-shadow .18s,transform .18s;display:block;position:relative;overflow:hidden;box-shadow:0 10px 20px #0f172a1f}.pm-thumb-frame.is-portrait{aspect-ratio:9/16;width:min(44px,100%);margin-inline:auto}.pm-thumb-frame.is-square{aspect-ratio:1;width:min(64px,100%);margin-inline:auto}.pm-thumb-el{object-fit:cover;opacity:.78;width:100%;height:100%;transition:opacity .18s,transform .18s;display:block}.pm-thumb-el.is-portrait,.pm-thumb-el.is-square{object-fit:contain;background:#030712}.pm-thumb-play{background:#ffffffdb;border-radius:999px;width:24px;height:24px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 8px 18px #0f172a38}.pm-thumb-play:before{content:"";border-left:8px solid var(--blue);border-top:5px solid #0000;border-bottom:5px solid #0000;position:absolute;top:7px;left:9px}.pm-thumb-btn:hover .pm-thumb-frame,.pm-thumb-btn[aria-current=true] .pm-thumb-frame{border-color:#4367fff2;transform:translateY(-1px);box-shadow:0 0 0 2px #4367ff38,0 14px 26px #4367ff33}.pm-thumb-btn[aria-current=true] .pm-thumb-el,.pm-thumb-btn:hover .pm-thumb-el{opacity:1}.pm-thumb-num{font-family:var(--font-jetbrains-mono),ui-monospace,monospace;letter-spacing:.16em;font-size:10px;font-weight:800}.pm-left-meta{background:linear-gradient(135deg,#ffffff57,#ffffff29),#ffffff38;border:1px solid #ffffff73;border-radius:12px;flex-shrink:0;margin:0 clamp(18px,2.4vw,30px) clamp(14px,2vw,20px);padding:10px;box-shadow:0 18px 38px #0f172a1f,inset 0 1px #ffffff8f,inset 0 0 24px #4367ff0a}.pm-left-meta-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.pm-meta-row{background:#ffffff4d;border:1px solid #ffffff6b;border-radius:10px;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:3px 8px;min-height:58px;padding:8px 9px;display:grid;box-shadow:inset 0 1px #ffffff70}.pm-meta-icon{object-fit:contain;filter:drop-shadow(0 5px 10px #4367ff2e);grid-row:span 2;width:18px;height:18px}.pm-meta-key{color:#4367ffd1;min-width:0;font-size:9px;font-weight:800}.pm-meta-val{color:#0a101feb;letter-spacing:.02em;overflow-wrap:break-word;word-break:break-word;min-width:0;font-size:11px;font-weight:800;line-height:1.4;display:block}.pm-label{color:#4367ffdb;margin-bottom:14px;font-weight:800}.pm-title-row{align-items:flex-start;gap:22px;margin-bottom:12px}.pm-title{letter-spacing:0;font-size:clamp(26px,3.1vw,42px);line-height:1.18}.pm-github-link{color:#07111f;letter-spacing:.01em;background:#fff;border-color:#0f172a24;border-radius:8px;min-height:48px;padding:0 16px;font-size:14px;box-shadow:0 8px 22px #0f172a14,0 0 0 1px #4367ff0a}.pm-github-link:hover{color:var(--blue-deep);background:#f8fbff;box-shadow:0 12px 28px #4367ff24,0 0 0 1px #4367ff2e}.pm-github-icon{width:18px;height:18px}.pm-external-icon{filter:none;opacity:.82}.pm-summary{color:#1d273bdb;font-size:16px;font-weight:650;line-height:1.9}.pm-divider{background:linear-gradient(90deg,#4367ff1f,#4367ff57,#4367ff14);margin:24px 0 26px}.pm-section{margin-bottom:30px}.pm-section-title{font-family:var(--font-noto-sans-jp),var(--font-inter),sans-serif;color:var(--blue);letter-spacing:.04em;text-transform:none;gap:12px;margin-bottom:14px;font-size:20px;font-weight:900}.pm-section-icon-img{object-fit:contain;filter:drop-shadow(0 6px 12px #4367ff2e);width:22px;height:22px}.pm-section-body,.pm-bullet-item,.pm-challenge-problem,.pm-challenge-solution,.pm-challenge-copy{color:#182234db;font-size:15px;line-height:2}.pm-tags-grid{gap:10px}.pm-tag{color:#111b2deb;letter-spacing:.01em;background:#ffffffe0;border-color:#4367ff2e;border-radius:6px;align-items:center;gap:9px;min-height:38px;padding:7px 13px;font-size:13px;font-weight:800;display:inline-flex;box-shadow:0 6px 14px #4367ff0f}.pm-tag-icon{object-fit:contain;width:18px;height:18px}.pm-tag-fallback{width:18px;height:18px;color:var(--blue);font-family:var(--font-jetbrains-mono),ui-monospace,monospace;letter-spacing:0;text-transform:uppercase;background:#4367ff1a;border-radius:50%;place-items:center;font-size:7px;font-weight:900;display:grid}.pm-tech-reasons{background:#ffffffb8;margin-top:18px;padding:16px 18px;box-shadow:0 10px 24px #4367ff0d}.pm-tech-reason-item{color:#182234db;font-size:14px}.pm-bullet-list{gap:10px}.pm-bullet-item{gap:12px}.pm-bullet-icon{flex-shrink:0;width:16px;height:16px;margin-top:8px}.pm-challenges{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:16px;display:grid}.pm-challenge-item{background:linear-gradient(#ffffffeb,#f8fbffdb);border:1px solid #4367ff33;border-radius:8px;min-height:100%;padding:18px 18px 20px;box-shadow:0 10px 22px #4367ff0d}.pm-challenge-item:only-child{grid-column:1/-1}.pm-challenge-problem,.pm-challenge-solution{flex-direction:column;gap:9px;display:flex}.pm-challenge-label{width:max-content;font-family:var(--font-jetbrains-mono),ui-monospace,monospace;letter-spacing:.22em;color:#c64a52d1;flex-direction:row;align-items:center;gap:8px;font-size:12px;font-weight:900;display:inline-flex}.pm-challenge-label-sol{color:#189652d1}.pm-challenge-icon{width:16px;height:16px}.pm-challenge-solution{border-top:1px solid #4367ff1f;margin-top:13px;padding-top:13px}@media (prefers-reduced-motion:reduce){.pm-close-btn,.pm-carousel-btn,.pm-thumb-frame,.pm-thumb-el{transition:none}}@media (max-width:1100px){.pm-body{grid-template-columns:minmax(360px,48%) minmax(0,1fr)}.pm-left-meta-grid,.pm-challenges{grid-template-columns:1fr}.pm-left-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.pm-dialog-content:before{background:linear-gradient(#f4f7ff2e,#fffffffa 48%)}.pm-body{grid-template-columns:1fr}.pm-left{min-height:0}.pm-media-carousel{max-height:none;padding:24px 18px 18px}.pm-left-kicker{margin-bottom:16px}.pm-thumb-strip{grid-auto-columns:minmax(96px,32vw)}.pm-left-meta{margin:0 18px 18px;padding:16px}.pm-right{padding:30px 20px 34px}.pm-close-btn{background:#ffffffb8;top:12px;right:12px}.pm-title-row{flex-direction:column;align-items:flex-start}.pm-title-actions{justify-content:flex-start}.pm-title{font-size:clamp(24px,8vw,32px)}.pm-summary{font-size:14.5px}.pm-section-title{font-size:18px}.pm-section-body,.pm-bullet-item,.pm-challenge-problem,.pm-challenge-solution,.pm-challenge-copy{font-size:14px}.pm-tech-reason-item{grid-template-columns:1fr;gap:2px;font-size:13.5px}}.footer{-webkit-backdrop-filter:blur(8px);background:#f9faff99;border-top:1px solid #4367ff1a;justify-content:space-between;align-items:center;gap:24px;padding:24px 96px;display:flex}.footer-left,.footer-mid,.footer-right{font-family:var(--font-jetbrains-mono),ui-monospace,monospace;color:var(--muted);letter-spacing:.25em;font-size:11px}.footer-mid{align-items:center;gap:8px;display:flex}.footer-mid .bullet{color:var(--blue);animation:1.4s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.5}}.back-top{cursor:pointer;font-family:var(--font-jetbrains-mono),ui-monospace,monospace;color:var(--muted);letter-spacing:.25em;background:0 0;border:none;align-items:center;gap:12px;font-size:11px;display:flex}.back-top:hover{color:var(--blue)}.back-top .arrow-box{border:1px solid var(--blue);width:28px;height:28px;color:var(--blue);background:#4367ff1a;justify-content:center;align-items:center;display:flex}.back-top:hover .arrow-box{background:var(--blue);color:#fff}@media (max-width:1280px){.nav,.section,.about,.skills,.projects,.experience,.contact,.footer,.hero{padding-left:64px;padding-right:64px}.about:after,.skills:after,.projects:after,.experience:after,.contact:after{left:64px;right:64px}}@media (max-width:1100px){.about-grid{grid-template-columns:1fr;gap:40px}.about-divider{display:none}.projects-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:900px){.hero{flex-direction:column;padding-top:110px}.projects-grid{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr;gap:40px}.contact-cards{grid-template-columns:1fr 1fr}}@media (max-width:720px){.nav{padding:16px 24px}.nav ul{display:none}.hero,.section,.skills,.projects,.experience,.contact,.footer,.about{padding-left:24px;padding-right:24px}.about:after,.skills:after,.projects:after,.experience:after,.contact:after{left:24px;right:24px}.hero-title{font-size:clamp(28px,9vw,44px)}.section-title{font-size:22px}.contact-cards{grid-template-columns:1fr}.side-rail,.scroll-nav{display:none}.footer{flex-direction:column;align-items:flex-start;gap:12px}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
