@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Instrument+Serif:ital,wght@0,400;1,400&display=swap";@layer properties,theme,base,components,utilities;@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-serif:ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-3xl:48rem;--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: 1.5 ;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-6xl:3.75rem;--text-8xl:6rem;--text-8xl--line-height:1;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tighter:-.05em;--tracking-widest:.1em;--leading-relaxed:1.625;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--drop-shadow-lg:0 4px 4px #00000026;--ease-out:cubic-bezier(0, 0, .2, 1);--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-sm:8px;--blur-md:12px;--blur-xl:24px;--blur-2xl:40px;--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%;-moz-tab-size:4;-o-tab-size:4;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;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}::-moz-placeholder{opacity:1}::placeholder{opacity:1}@supports (not (-webkit-appearance:-apple-pay-button)) or (contain-intrinsic-size:1px){::-moz-placeholder{color:currentColor}::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::-moz-placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}::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]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance: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 utilities{.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.-top-1\/4{top:-25%}.top-0{top:calc(var(--spacing) * 0)}.top-24{top:calc(var(--spacing) * 24)}.right-0{right:calc(var(--spacing) * 0)}.right-8{right:calc(var(--spacing) * 8)}.right-20{right:calc(var(--spacing) * 20)}.bottom-0{bottom:calc(var(--spacing) * 0)}.bottom-8{bottom:calc(var(--spacing) * 8)}.bottom-12{bottom:calc(var(--spacing) * 12)}.-left-1\/4{left:-25%}.left-0{left:calc(var(--spacing) * 0)}.left-6{left:calc(var(--spacing) * 6)}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-\[9999\]{z-index:9999}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.mt-0{margin-top:calc(var(--spacing) * 0)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-12{margin-bottom:calc(var(--spacing) * 12)}.ml-1{margin-left:calc(var(--spacing) * 1)}.block{display:block}.flex{display:flex}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.aspect-\[3\/4\]{aspect-ratio:3/4}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-1\/2{height:50%}.h-16{height:calc(var(--spacing) * 16)}.h-64{height:calc(var(--spacing) * 64)}.h-80{height:calc(var(--spacing) * 80)}.h-96{height:calc(var(--spacing) * 96)}.h-full{height:100%}.min-h-screen{min-height:100vh}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-1\/2{width:50%}.w-1\/3{width:33.3333%}.w-16{width:calc(var(--spacing) * 16)}.w-48{width:calc(var(--spacing) * 48)}.w-64{width:calc(var(--spacing) * 64)}.w-80{width:calc(var(--spacing) * 80)}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.max-w-3xl{max-width:var(--container-3xl)}.max-w-\[90\%\]{max-width:90%}.max-w-\[500px\]{max-width:500px}.scale-\[1\.05\]{scale:1.05}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing) * 2)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-12{gap:calc(var(--spacing) * 12)}:where(.space-x-4>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 4) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-x-reverse)))}:where(.space-x-8>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 8) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-x-reverse)))}.overflow-hidden{overflow:hidden}.rounded-\[var\(--radius-lg\,14px\)\]{border-radius:var(--radius-lg,14px)}.rounded-full{border-radius:3.40282e38px}.rounded-md{border-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-\[var\(--color-border\)\]{border-color:var(--color-border)}.border-white\/10{border-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.border-white\/10{border-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}.border-white\/20{border-color:#fff3}@supports (color:color-mix(in lab,red,red)){.border-white\/20{border-color:color-mix(in oklab,var(--color-white) 20%,transparent)}}.bg-\[\#8B4513\]\/40{background-color:#8b451366}.bg-\[var\(--color-accent\)\]{background-color:var(--color-accent)}.bg-\[var\(--color-bg\)\],.bg-\[var\(--color-bg\)\]\/80{background-color:var(--color-bg)}@supports (color:color-mix(in lab,red,red)){.bg-\[var\(--color-bg\)\]\/80{background-color:color-mix(in oklab,var(--color-bg) 80%,transparent)}}.bg-\[var\(--color-border\)\]{background-color:var(--color-border)}.bg-black\/80{background-color:#000c}@supports (color:color-mix(in lab,red,red)){.bg-black\/80{background-color:color-mix(in oklab,var(--color-black) 80%,transparent)}}.bg-white\/10{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.bg-white\/10{background-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}.bg-gradient-to-b{--tw-gradient-position:to bottom in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-\[url\(\'https\:\/\/www\.transparenttextures\.com\/patterns\/carbon-fibre\.png\'\)\]{background-image:url(https://www.transparenttextures.com/patterns/carbon-fibre.png)}.from-\[\#8B4513\]{--tw-gradient-from:#8b4513;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-transparent{--tw-gradient-from:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-white\/20{--tw-gradient-from:#fff3}@supports (color:color-mix(in lab,red,red)){.from-white\/20{--tw-gradient-from:color-mix(in oklab, var(--color-white) 20%, transparent)}}.from-white\/20{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-\[\#5D4037\]{--tw-gradient-via:#5d4037;--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-white\/50{--tw-gradient-via:#ffffff80}@supports (color:color-mix(in lab,red,red)){.via-white\/50{--tw-gradient-via:color-mix(in oklab, var(--color-white) 50%, transparent)}}.via-white\/50{--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-\[\#3E2723\]{--tw-gradient-to:#3e2723;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.p-2{padding:calc(var(--spacing) * 2)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-8{padding-inline:calc(var(--spacing) * 8)}.py-0{padding-block:calc(var(--spacing) * 0)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pb-24{padding-bottom:calc(var(--spacing) * 24)}.text-left{text-align:left}.font-serif{font-family:var(--font-serif)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--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-\[10px\]{font-size:10px}.leading-\[1\.1\]{--tw-leading:1.1;line-height:1.1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tighter{--tw-tracking:var(--tracking-tighter);letter-spacing:var(--tracking-tighter)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.whitespace-nowrap{white-space:nowrap}.text-\[var\(--color-accent\)\]{color:var(--color-accent)}.text-\[var\(--color-text-body\)\]{color:var(--color-text-body)}.text-\[var\(--color-text-h\)\]{color:var(--color-text-h)}.text-\[var\(--color-text-muted\)\]{color:var(--color-text-muted)}.text-white{color:var(--color-white)}.text-white\/80{color:#fffc}@supports (color:color-mix(in lab,red,red)){.text-white\/80{color:color-mix(in oklab,var(--color-white) 80%,transparent)}}.text-white\/90{color:#ffffffe6}@supports (color:color-mix(in lab,red,red)){.text-white\/90{color:color-mix(in oklab,var(--color-white) 90%,transparent)}}.uppercase{text-transform:uppercase}.italic{font-style:italic}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-60{opacity:.6}.opacity-80{opacity:.8}.opacity-100{opacity:1}.mix-blend-overlay{mix-blend-mode:overlay}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.blur-2xl{--tw-blur:blur(var(--blur-2xl));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,)}.blur-xl{--tw-blur:blur(var(--blur-xl));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,)}.drop-shadow-lg{--tw-drop-shadow-size:drop-shadow(0 4px 4px var(--tw-drop-shadow-color,#00000026));--tw-drop-shadow:drop-shadow(var(--drop-shadow-lg));filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-\[5px\]{--tw-backdrop-blur:blur(5px);-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,)}.backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));-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,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-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,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))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.duration-1000{--tw-duration:1s;transition-duration:1s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}@media(hover:hover){.group-hover\:bg-\[\#8B4513\]\/60:is(:where(.group):hover *){background-color:#8b451399}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:bg-\[var\(--color-border\)\]:hover{background-color:var(--color-border)}.hover\:bg-\[var\(--color-text-h\)\]:hover{background-color:var(--color-text-h)}.hover\:text-\[var\(--color-bg\)\]:hover{color:var(--color-bg)}.hover\:text-\[var\(--color-text-accent\)\]:hover{color:var(--color-text-accent)}.hover\:text-\[var\(--color-text-h\)\]:hover{color:var(--color-text-h)}}@media(min-width:48rem){.md\:left-24{left:calc(var(--spacing) * 24)}.md\:flex{display:flex}.md\:max-w-\[80\%\]{max-width:80%}.md\:gap-24{gap:calc(var(--spacing) * 24)}.md\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.md\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.md\:text-8xl{font-size:var(--text-8xl);line-height:var(--tw-leading,var(--text-8xl--line-height))}.md\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.md\:text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--color-bg:#000;--color-bg-alt:#0a0a0a;--color-bg-card:#ffffff05;--color-bg-card-hover:#ffffff0d;--color-accent:#8b4513;--color-accent-dim:#8b451326;--color-accent-glow:#8b451366;--color-secondary:#5d4037;--color-secondary-dim:#5d403726;--color-secondary-glow:#5d403766;--color-tertiary:#3e2723;--color-text-h:#fff;--color-text-body:#ffffffd9;--color-text-muted:#ffffff80;--color-text-accent:var(--color-accent);--color-border:#ffffff14;--color-border-hover:#ffffff26;--color-border-accent:#8b451366;--font-body:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-display:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-serif:"Instrument Serif", serif;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--text-6xl:clamp(3rem, 7vw, 5rem);--text-hero:clamp(3.5rem, 9vw, 7rem);--sp-1:.25rem;--sp-2:.5rem;--sp-3:.75rem;--sp-4:1rem;--sp-6:1.5rem;--sp-8:2rem;--sp-10:2.5rem;--sp-12:3rem;--sp-16:4rem;--sp-20:5rem;--sp-24:6rem;--sp-32:8rem;--radius-sm:6px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-pill:100px;--radius-full:9999px;--shadow-card:0 1px 3px #0006, 0 1px 2px #0000004d;--shadow-lg:0 10px 40px #0009;--shadow-accent:0 0 30px var(--color-accent-glow);--shadow-brown:0 0 30px var(--color-secondary-glow);--ease-fast:.2s ease;--ease-base:.35s ease;--ease-slow:.6s cubic-bezier(.16, 1, .3, 1);--ease-spring:.5s cubic-bezier(.34, 1.56, .64, 1);--z-base:1;--z-raised:10;--z-modal:100;--z-fixed:1000}:root[data-theme=light]{--color-bg:#fdfbf7;--color-bg-alt:#f5ebe1;--color-bg-card:#fff;--color-bg-card-hover:#fdfbf7;--color-accent:#8b4513;--color-accent-dim:#8b45131a;--color-accent-glow:#8b451333;--color-secondary:sienna;--color-secondary-dim:#a0522d1a;--color-secondary-glow:#a0522d33;--color-tertiary:tan;--color-text-h:#2c1810;--color-text-body:#4a3728;--color-text-muted:#4a372899;--color-text-accent:var(--color-accent);--color-border:#8b45131a;--color-border-hover:#8b45134d;--color-border-accent:#8b451380;--shadow-card:0 4px 6px -1px #8b45130d, 0 2px 4px -1px #8b451308;--shadow-lg:0 10px 40px #8b451314;--shadow-accent:0 0 20px var(--color-accent-dim);--shadow-brown:0 0 20px var(--color-secondary-dim)}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-body);background-color:var(--color-bg);color:var(--color-text-body);background-image:radial-gradient(circle,var(--color-border) 1.5px,transparent 1.5px);background-size:28px 28px;min-height:100vh;line-height:1.65;transition:background-color .5s,color .5s;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--color-text-h);letter-spacing:-.03em;font-weight:800;line-height:1.15}h1 span,h2 span,h3 span{display:block}h1{font-size:var(--text-hero)}h2{font-size:var(--text-6xl)}h3{font-size:var(--text-3xl)}h4{font-size:var(--text-2xl)}h5{font-size:var(--text-xl)}h6{font-size:var(--text-lg)}p{color:var(--color-text-body);margin-bottom:var(--sp-4);line-height:1.7}a{color:var(--color-accent);transition:color var(--ease-fast);text-decoration:none}a:hover{color:#fff}button,.btn{font-family:var(--font-body);font-weight:600;font-size:var(--text-base);border-radius:var(--radius-pill);cursor:pointer;transition:all var(--ease-base);white-space:nowrap;letter-spacing:-.01em;border:none;outline:none;align-items:center;gap:.5rem;padding:.875rem 2rem;display:inline-flex}.btn-primary{background:var(--color-accent);color:#000;box-shadow:0 0 0 0 var(--color-accent-glow);font-weight:700}.btn-primary:hover{color:#000;box-shadow:0 8px 30px var(--color-accent-glow);background:#fff;transform:translateY(-2px)}.btn-secondary{color:var(--color-text-h);border:1px solid var(--color-border-hover);background:0 0}.btn-secondary:hover{border-color:var(--color-accent);color:var(--color-accent);transform:translateY(-2px)}.btn-ghost{color:var(--color-text-body);background:0 0;padding:.5rem 1rem}.btn-ghost:hover{color:var(--color-text-h)}input,textarea,select{font-family:var(--font-body);font-size:var(--text-base);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;color:var(--color-text-h);transition:all var(--ease-fast);outline:none;padding:.875rem 1.25rem}input::-moz-placeholder,textarea::-moz-placeholder{color:var(--color-text-muted)}input::placeholder,textarea::placeholder{color:var(--color-text-muted)}input:focus,textarea:focus,select:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-dim);background:#00f3930a}textarea{resize:vertical;min-height:140px}label{font-size:var(--text-sm);color:var(--color-text-h);margin-bottom:var(--sp-2);letter-spacing:.02em;font-weight:500;display:block}.card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--sp-8);transition:all var(--ease-base);position:relative;overflow:hidden}.card:hover{background:var(--color-bg-card-hover);border-color:var(--color-border-hover);box-shadow:var(--shadow-lg);transform:translateY(-4px)}.card-accent:before{content:"";background:linear-gradient(90deg,var(--color-accent),var(--color-secondary));opacity:0;height:2px;transition:opacity var(--ease-base);position:absolute;top:0;left:0;right:0}.card-accent:hover:before{opacity:1}.container{max-width:1160px;padding:0 var(--sp-6);margin:0 auto}.container-wide{max-width:1400px;padding:0 var(--sp-6);margin:0 auto}.section{padding:var(--sp-32) 0;contain:layout style;scroll-margin-top:80px}.section-label{align-items:center;gap:var(--sp-2);font-size:var(--text-xs);color:var(--color-accent);text-transform:uppercase;letter-spacing:.14em;margin-bottom:var(--sp-4);font-weight:700;display:inline-flex}.section-label:before{content:"";background:var(--color-accent);border-radius:50%;width:6px;height:6px;display:block}.section-title{font-size:var(--text-6xl);color:var(--color-text-h);margin-bottom:var(--sp-4);letter-spacing:-.04em;font-weight:800}.section-subtitle{font-size:var(--text-lg);color:var(--color-text-body);max-width:56ch;line-height:1.7}.text-center{text-align:center}.text-gradient{background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-secondary) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.text-gradient-blue{background:linear-gradient(135deg,var(--color-tertiary) 0%,var(--color-secondary) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.grid{gap:var(--sp-6);display:grid}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.flex{display:flex}.flex-col{flex-direction:column}.flex-center{justify-content:center;align-items:center}.flex-between{justify-content:space-between;align-items:center}.gap-sm{gap:var(--sp-4)}.gap-md{gap:var(--sp-6)}.gap-lg{gap:var(--sp-8)}.reveal{opacity:0;transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);transform:translateY(28px)}@media(prefers-reduced-motion:reduce){.reveal,.reveal-left{opacity:1;will-change:auto;transition:none;transform:none}}.reveal.visible{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:.1s}.reveal-delay-2{transition-delay:.2s}.reveal-delay-3{transition-delay:.3s}.reveal-delay-4{transition-delay:.4s}.reveal-delay-5{transition-delay:.5s}.reveal-left{opacity:0;will-change:opacity,transform;transition:opacity .75s cubic-bezier(.16,1,.3,1),transform .75s cubic-bezier(.16,1,.3,1);transform:translate(-40px)}.reveal-left.visible{opacity:1;transform:translate(0)}@keyframes fadeUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulseGlow{0%,to{box-shadow:0 0 0 0 var(--color-accent-glow)}50%{box-shadow:0 0 30px 8px var(--color-accent-glow)}}@keyframes floatY{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes rotateSlow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes glassSweep{0%{transform:translate(-150%)skew(-15deg)}to{transform:translate(300%)skew(-15deg)}}.glass-sweep{animation:2.5s infinite glassSweep}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{background:var(--color-border-hover);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-accent)}::-moz-selection{background:var(--color-accent-dim);color:var(--color-accent)}::selection{background:var(--color-accent-dim);color:var(--color-accent)}@media(max-width:768px){.section{padding:var(--sp-20) 0}.container,.container-wide{padding:0 var(--sp-4)}h2{font-size:var(--text-4xl)}h3{font-size:var(--text-2xl)}}@media(max-width:480px){h2{font-size:var(--text-3xl)}}.badge{align-items:center;gap:var(--sp-1);font-size:var(--text-xs);border-radius:var(--radius-pill);border:1px solid var(--color-border);color:var(--color-text-body);transition:all var(--ease-fast);letter-spacing:.02em;background:0 0;padding:.25rem .875rem;font-weight:600;display:inline-flex}.badge:hover{border-color:var(--color-accent);color:var(--color-accent);background:var(--color-accent-dim)}.badge-green{border-color:var(--color-border-accent);color:var(--color-accent);background:var(--color-accent-dim)}.badge-purple{color:var(--color-secondary);background:var(--color-secondary-dim);border-color:#ba8fff4d}.divider{background:var(--color-border);height:1px;margin:var(--sp-16) 0}.orb{filter:blur(80px);pointer-events:none;z-index:0;will-change:transform;border-radius:50%;position:absolute}@media(max-width:768px){.orb{display:none}}.orb-green{background:#00f3931f;width:600px;height:600px}.orb-purple{background:#ba8fff1a;width:500px;height:500px}.global-shader-blob{filter:blur(65px);pointer-events:none;z-index:0;border-radius:50%;position:absolute}@media(max-width:768px){.global-shader-blob{display:none}}@media(prefers-reduced-motion:reduce){.global-shader-blob{display:none}}.shader-blue{background:radial-gradient(circle,#4d9fff14,#0000 70%)}.shader-purple{background:radial-gradient(circle,#ba8fff14,#0000 70%)}.shader-mint{background:radial-gradient(circle,#00f39314,#0000 70%)}@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-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{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-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}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@keyframes pulse{50%{opacity:.5}}@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-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking: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-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;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}#about{position:relative;overflow:hidden}#about:before{content:"";position:absolute;top:-100px;right:-200px;width:500px;height:500px;background:radial-gradient(circle,var(--color-accent-dim) 0%,transparent 70%);border-radius:50%;pointer-events:none}.about-content{max-width:980px;margin:0 auto}.about-header{text-align:center;margin-bottom:var(--sp-16)}.about-text{text-align:center;margin-bottom:var(--sp-12);max-width:72ch;margin-left:auto;margin-right:auto}.about-text p{font-size:var(--text-lg);line-height:1.8;color:var(--color-text-body)}.about-highlights{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--sp-6);margin-top:var(--sp-4)}.highlight-card{position:relative;padding:var(--sp-8);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden;transition:all var(--ease-base);cursor:default}.highlight-card:before{content:"";position:absolute;top:0;left:-100%;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--color-accent),var(--color-secondary),transparent);transition:left var(--ease-slow)}.highlight-card:hover{background:var(--color-bg-card-hover);border-color:#00f39333;transform:translateY(-6px);box-shadow:0 20px 60px #0006,0 0 0 1px #00f39314}.highlight-card:hover:before{left:100%}.highlight-icon{width:56px;height:56px;border-radius:var(--radius-lg);background:var(--color-accent-dim);border:1px solid var(--color-border-accent);display:flex;align-items:center;justify-content:center;color:var(--color-accent);margin-bottom:var(--sp-6);transition:all var(--ease-base)}.highlight-card:hover .highlight-icon{background:var(--color-accent);color:#000;border-color:var(--color-accent);transform:scale(1.1)}.highlight-card h3{font-size:var(--text-xl);font-weight:700;color:var(--color-text-h);margin-bottom:var(--sp-3);letter-spacing:-.03em}.highlight-card p{font-size:var(--text-sm);color:var(--color-text-body);line-height:1.7;margin:0}@media(max-width:768px){.about-highlights{grid-template-columns:1fr}.about-text p{font-size:var(--text-base)}}#skills{position:relative}.skills-section{overflow:hidden}.skills-header{text-align:center;margin-bottom:var(--sp-12)}.skills-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--sp-3);margin-bottom:var(--sp-10)}.skills-tab{padding:.55rem 1.35rem;border-radius:999px;border:1.5px solid var(--color-border);background:transparent;color:var(--color-text-body);font-size:var(--text-sm);font-weight:500;font-family:inherit;cursor:pointer;transition:all .22s ease;white-space:nowrap}.skills-tab:hover{border-color:var(--color-accent);color:var(--color-accent);background:var(--color-accent-dim)}.skills-tab.active{background:var(--tab-color, var(--color-accent));border-color:var(--tab-color, var(--color-accent));color:#fff;font-weight:600;box-shadow:0 4px 18px -4px color-mix(in srgb,var(--tab-color, var(--color-accent)) 50%,transparent)}.skills-category-label{font-size:var(--text-lg);font-weight:700;letter-spacing:-.02em;margin-bottom:var(--sp-6);margin-top:0}.skills-tool-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--sp-4);max-width:1080px;margin:0 auto;animation:tabFadeIn .3s ease forwards}@keyframes tabFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.skills-tool-card{display:flex;align-items:center;gap:var(--sp-3);padding:.875rem 1.125rem;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);cursor:default;transition:all .22s ease;position:relative;overflow:hidden}.skills-tool-card:before{content:"";position:absolute;inset:0;border-radius:inherit;background:color-mix(in srgb,var(--card-accent, var(--color-accent)) 6%,transparent);opacity:0;transition:opacity .22s ease}.skills-tool-card:hover{border-color:var(--card-accent, var(--color-accent));transform:translateY(-3px);box-shadow:0 8px 24px -6px color-mix(in srgb,var(--card-accent, var(--color-accent)) 25%,transparent)}.skills-tool-card:hover:before{opacity:1}.skills-tool-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-md);background:color-mix(in srgb,var(--card-accent, var(--color-accent)) 15%,transparent);flex-shrink:0;position:relative;z-index:1}.skills-tool-icon img{width:20px;height:20px;-o-object-fit:contain;object-fit:contain;filter:none}[data-theme=light] .skills-tool-icon img{filter:invert(1) brightness(.2)}.skills-tool-name{font-size:var(--text-sm);font-weight:500;color:var(--color-text-body);white-space:nowrap;position:relative;z-index:1;transition:color .22s ease}.skills-tool-card:hover .skills-tool-name{color:var(--color-text-h)}@media(max-width:640px){.skills-tabs{gap:var(--sp-2)}.skills-tab{padding:.45rem 1rem;font-size:var(--text-xs)}.skills-tool-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:var(--sp-3)}.skills-tool-name{font-size:var(--text-xs)}}#experience{position:relative;overflow:hidden}#experience:before{content:"";position:absolute;top:50%;right:-200px;transform:translateY(-50%);width:500px;height:500px;background:radial-gradient(circle,rgba(77,159,255,.04) 0%,transparent 70%);border-radius:50%;pointer-events:none}.experience-header{text-align:center;margin-bottom:var(--sp-16)}.experience-timeline{max-width:860px;margin:0 auto;position:relative}.experience-timeline:before{content:"";position:absolute;left:27px;top:0;bottom:0;width:1px;background:linear-gradient(to bottom,transparent,var(--color-accent),var(--color-secondary),transparent);opacity:.4}.experience-item{position:relative;padding-left:80px;margin-bottom:var(--sp-8)}.experience-icon{position:absolute;left:0;top:0;width:56px;height:56px;background:var(--color-bg-card);border:1px solid var(--color-border-accent);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;color:var(--color-accent);z-index:1;transition:all var(--ease-base);box-shadow:0 0 0 4px #00f3930f}.experience-item:hover .experience-icon{background:var(--color-accent-dim);border-color:var(--color-accent);box-shadow:0 0 20px var(--color-accent-glow)}.experience-content{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--sp-6) var(--sp-8);transition:all var(--ease-base)}.experience-item:hover .experience-content{border-color:var(--color-border-hover);background:var(--color-bg-card-hover);transform:translate(4px)}.experience-header-row{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--sp-4);gap:var(--sp-4);flex-wrap:wrap}.experience-content h3{font-size:var(--text-xl);font-weight:700;color:var(--color-text-h);margin-bottom:var(--sp-1);letter-spacing:-.03em}.experience-company{font-size:var(--text-sm);font-weight:600;color:var(--color-accent);margin:0}.experience-period{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--text-xs);font-weight:500;color:var(--color-text-muted);background:var(--color-bg-alt);padding:.3rem .875rem;border-radius:var(--radius-pill);border:1px solid var(--color-border);white-space:nowrap;flex-shrink:0}.experience-responsibilities{list-style:none;padding:0;margin-top:var(--sp-4)}.experience-responsibilities li{font-size:var(--text-sm);color:var(--color-text-body);line-height:1.7;padding-left:var(--sp-6);margin-bottom:var(--sp-2);position:relative}.experience-responsibilities li:before{content:"";position:absolute;left:0;top:.6em;width:6px;height:6px;border-radius:50%;background:var(--color-accent);opacity:.7}@media(max-width:768px){.experience-timeline:before{left:20px}.experience-item{padding-left:60px}.experience-icon{width:40px;height:40px}.experience-content{padding:var(--sp-5)}.experience-header-row{flex-direction:column}}#projects{position:relative;overflow:hidden}.projects-header{text-align:center;margin-bottom:var(--sp-16)}.no-projects{text-align:center;color:var(--color-text-muted);font-size:var(--text-lg);padding:var(--sp-24) 0}.proj-showcase-hoz{display:flex;flex-direction:column;gap:var(--sp-8);max-width:1080px;margin:0 auto}.proj-card-hoz{display:flex;flex-direction:column;background:var(--color-bg);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-card);transition:transform .3s ease,box-shadow .3s ease;border:1px solid var(--color-border)}.proj-card-hoz:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--color-border-hover)}:root[data-theme=light] .proj-card-hoz{background:#fff;box-shadow:0 4px 24px #0000000f;border-color:#0000000d}:root[data-theme=light] .proj-card-hoz:hover{box-shadow:0 12px 32px #0000001a;border-color:#0000001a}.proj-card-hoz__image-container{width:100%;height:200px;position:relative;overflow:hidden;flex-shrink:0;border-bottom:1px solid var(--color-border);background:var(--color-bg-alt)}.proj-card-hoz__img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .7s ease}.proj-card-hoz:hover .proj-card-hoz__img{transform:scale(1.05)}.proj-card-hoz__gradient{width:100%;height:100%}.proj-card-hoz__content{flex:1;display:flex;flex-direction:column;padding:var(--sp-6) var(--sp-6)}.proj-card-hoz__header{display:flex;align-items:center;gap:var(--sp-4);margin-bottom:var(--sp-4)}.proj-card-hoz__icon-wrapper{width:48px;height:48px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}.proj-card-hoz__title-wrapper{flex:1}.proj-card-hoz__title{font-size:var(--text-xl);font-weight:700;color:var(--color-text-h);line-height:1.2;margin:0}.proj-card-hoz__external-icon{color:var(--color-text-muted);transition:color .2s ease;display:flex;align-items:center;justify-content:center;padding:var(--sp-2)}.proj-card-hoz__external-icon:hover{color:var(--color-text-h)}:root[data-theme=light] .proj-card-hoz__title{color:#111827}.proj-card-hoz__desc{font-size:var(--text-base);color:var(--color-text-body);line-height:1.6;margin-bottom:var(--sp-6)}:root[data-theme=light] .proj-card-hoz__desc{color:#4b5563}.proj-card-hoz__tags{display:flex;flex-wrap:wrap;gap:var(--sp-4);margin-bottom:var(--sp-6);font-size:var(--text-sm);font-weight:600}.proj-card-hoz__footer{margin-top:auto}.proj-card-hoz__cta{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1.4rem;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:700;text-decoration:none;transition:filter .2s ease,transform .2s ease}.proj-card-hoz__cta:hover{filter:brightness(1.1);transform:translateY(-2px)}.proj-card-hoz__cta--disabled{cursor:default}.proj-card-hoz__cta--disabled:hover{filter:none;transform:none}@media(min-width:768px){.proj-card-hoz{flex-direction:row;height:auto;min-height:240px;padding:var(--sp-4);align-items:center}.proj-card-hoz__image-container{width:320px;min-width:320px;height:220px;border-radius:var(--radius-lg);border:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.proj-card-hoz__content{flex:1;padding:var(--sp-4) var(--sp-8);justify-content:center}}#contact{position:relative;overflow:hidden}#contact:before{content:"";position:absolute;top:-100px;right:-150px;width:500px;height:500px;background:radial-gradient(circle,rgba(0,243,147,.05) 0%,transparent 70%);border-radius:50%;pointer-events:none}.contact-header{text-align:center;margin-bottom:var(--sp-16)}.contact-content{display:grid;grid-template-columns:1fr 1.4fr;gap:var(--sp-12);max-width:1080px;margin:0 auto;align-items:start}.contact-info h3{font-size:var(--text-2xl);font-weight:700;color:var(--color-text-h);margin-bottom:var(--sp-4);letter-spacing:-.03em}.contact-info>p{font-size:var(--text-base);color:var(--color-text-body);line-height:1.75;margin-bottom:var(--sp-10)}.contact-details{display:flex;flex-direction:column;gap:var(--sp-6)}.contact-detail{display:flex;gap:var(--sp-4);align-items:flex-start}.contact-detail-icon{width:40px;height:40px;border-radius:var(--radius-md);background:var(--color-accent-dim);border:1px solid var(--color-border-accent);display:flex;align-items:center;justify-content:center;color:var(--color-accent);flex-shrink:0;transition:all var(--ease-fast)}.contact-detail:hover .contact-detail-icon{background:var(--color-accent);color:#000}.contact-detail h4{font-size:var(--text-sm);font-weight:600;color:var(--color-text-h);margin-bottom:var(--sp-1);letter-spacing:0}.contact-detail p,.contact-detail a{font-size:var(--text-sm);color:var(--color-text-body);margin:0;transition:color var(--ease-fast)}.contact-detail a:hover{color:var(--color-accent)}.contact-form{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--sp-8);position:relative;overflow:hidden}.contact-form:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--color-accent),var(--color-secondary))}.form-group{margin-bottom:var(--sp-5)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-4)}.contact-form button[type=submit]{width:100%;justify-content:center;margin-top:var(--sp-2)}.contact-form button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.form-status{padding:var(--sp-3) var(--sp-4);border-radius:var(--radius-md);font-size:var(--text-sm);margin-bottom:var(--sp-4)}.form-status.success{background:#00f39314;color:var(--color-accent);border:1px solid rgba(0,243,147,.2)}.form-status.error{background:#ff505014;color:#ff5050;border:1px solid rgba(255,80,80,.2)}@media(max-width:900px){.contact-content{grid-template-columns:1fr;gap:var(--sp-10)}.form-row{grid-template-columns:1fr}}.footer{background:var(--color-bg-alt);border-top:1px solid var(--color-border);padding:var(--sp-10) 0}.footer-content{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--sp-4)}.footer-brand{font-size:var(--text-lg);font-weight:800;color:var(--color-text-h);letter-spacing:-.04em}.footer-brand span{color:var(--color-accent)}.footer-links{display:flex;align-items:center;gap:var(--sp-6)}.footer-links a{font-size:var(--text-sm);color:var(--color-text-muted);font-weight:500;transition:color var(--ease-fast);display:inline-flex;align-items:center;gap:var(--sp-1)}.footer-links a:hover{color:var(--color-text-h)}.footer-separator{color:var(--color-border-hover)}.admin-link{opacity:.5;font-size:var(--text-xs)}.admin-link:hover{opacity:1;color:var(--color-secondary)!important}.footer-copy{font-size:var(--text-xs);color:var(--color-text-muted);margin:0}.footer-copy span{color:var(--color-accent)}@media(max-width:640px){.footer-content{flex-direction:column;text-align:center}}.privacy-page{min-height:100vh;background-color:var(--color-background);padding-bottom:var(--spacing-3xl)}.privacy-header{background:var(--gradient-primary);color:#fff;padding:var(--spacing-3xl) 0;text-align:center;margin-bottom:var(--spacing-3xl)}.privacy-icon{width:100px;height:100px;margin:0 auto var(--spacing-lg);background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center}.privacy-header h1{color:#fff;margin-bottom:var(--spacing-sm);font-size:clamp(2rem,5vw,3rem)}.privacy-date{color:#ffffffe6;font-size:1.125rem;margin:0}.privacy-content{max-width:900px}.privacy-intro{background-color:var(--color-surface);border-left:4px solid var(--color-primary);padding:var(--spacing-lg);border-radius:var(--radius-md);margin-bottom:var(--spacing-xl);box-shadow:var(--shadow-md)}.privacy-intro p{font-size:1.125rem;line-height:1.7;margin:0}.privacy-section{margin-bottom:var(--spacing-xl)}.privacy-section h2{color:var(--color-primary);font-size:1.75rem;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--color-border)}.privacy-section h3{font-size:1.25rem;margin-bottom:var(--spacing-sm);margin-top:var(--spacing-md)}.privacy-section p{font-size:1.0625rem;line-height:1.8;margin-bottom:var(--spacing-md)}.privacy-section ul{list-style:none;padding:0;margin:var(--spacing-md) 0}.privacy-section ul li{padding-left:1.75rem;margin-bottom:.75rem;position:relative;line-height:1.7;color:var(--color-text-secondary)}.privacy-section ul li:before{content:"✓";position:absolute;left:0;color:var(--color-primary);font-weight:700;font-size:1.25rem}.contact-box{background-color:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-top:var(--spacing-md)}.contact-box p{margin-bottom:.5rem}.contact-box p:last-child{margin-bottom:0}.contact-box a{color:var(--color-primary);font-weight:600}.privacy-footer{text-align:center;margin-top:var(--spacing-3xl);padding-top:var(--spacing-xl);border-top:1px solid var(--color-border)}@media(max-width:768px){.privacy-header{padding:var(--spacing-2xl) 0}.privacy-section h2{font-size:1.5rem}}.other-projects-accordion{display:flex;flex-direction:column;gap:1rem;max-width:900px;margin:0 auto 4rem}.accordion-item{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;transition:all .3s ease}.accordion-item:hover{border-color:var(--color-accent)}.accordion-item.open{border-color:var(--color-accent);box-shadow:0 10px 30px -10px #8b451333}.accordion-header{width:100%;display:flex;justify-content:space-between;align-items:center;padding:1.5rem;background:transparent;border:none;cursor:pointer;text-align:left;color:#fff}.accordion-title-wrap{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.accordion-title{font-size:1.125rem;font-weight:600;margin:0;color:#fff!important}.accordion-tags{display:flex;gap:.5rem}.accordion-tags span{font-size:.75rem;color:var(--color-text-muted);background:#ffffff0d;padding:.25rem .6rem;border-radius:4px}.accordion-icon{color:var(--color-text-muted);transition:transform .3s ease}.accordion-item.open .accordion-icon{color:var(--color-accent)}.accordion-content-wrap{transition:height .3s ease}.accordion-content{padding:0 1.5rem 1.5rem;line-height:1.8;font-size:.95rem;color:#fff!important}.accordion-content *{color:#fff!important;white-space:normal!important;word-wrap:break-word!important}.accordion-image{width:100%;max-height:400px;-o-object-fit:cover;object-fit:cover;border-radius:var(--radius-md);margin-bottom:1.5rem}.accordion-footer{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--color-border)}.admin-login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-md);background:var(--gradient-surface)}.admin-login-card{max-width:450px;width:100%;padding:var(--spacing-2xl);text-align:center}.admin-login-icon{width:100px;height:100px;margin:0 auto var(--spacing-lg);background:var(--gradient-primary);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:var(--shadow-glow)}.admin-login-card h2{margin-bottom:var(--spacing-sm)}.admin-login-card>p{color:var(--color-text-secondary);margin-bottom:var(--spacing-xl)}.admin-login-card form{text-align:left}.admin-login-card button{width:100%;justify-content:center;margin-top:var(--spacing-md)}.error-message{background-color:#ef44441a;border:1px solid var(--color-error);color:var(--color-error);padding:.75rem;border-radius:var(--radius-md);margin-bottom:var(--spacing-md);font-size:.9rem}.admin-hint{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border)}.admin-hint small{color:var(--color-text-muted)}.ql-container{box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container:not(.ql-disabled) li[data-list=checked]>.ql-ui,.ql-container:not(.ql-disabled) li[data-list=unchecked]>.ql-ui{cursor:pointer}.ql-clipboard{left:-100000px;height:1px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{box-sizing:border-box;counter-reset:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;line-height:1.42;height:100%;outline:none;overflow-y:auto;padding:12px 15px;-o-tab-size:4;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap;word-wrap:break-word}.ql-editor>*{cursor:text}.ql-editor p,.ql-editor ol,.ql-editor pre,.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{margin:0;padding:0}@supports (counter-set:none){.ql-editor p,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{counter-set:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor p,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{counter-reset:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor table{border-collapse:collapse}.ql-editor td{border:1px solid #000;padding:2px 5px}.ql-editor ol{padding-left:1.5em}.ql-editor li{list-style-type:none;padding-left:1.5em;position:relative}.ql-editor li>.ql-ui:before{display:inline-block;margin-left:-1.5em;margin-right:.3em;text-align:right;white-space:nowrap;width:1.2em}.ql-editor li[data-list=checked]>.ql-ui,.ql-editor li[data-list=unchecked]>.ql-ui{color:#777}.ql-editor li[data-list=bullet]>.ql-ui:before{content:"•"}.ql-editor li[data-list=checked]>.ql-ui:before{content:"☑"}.ql-editor li[data-list=unchecked]>.ql-ui:before{content:"☐"}@supports (counter-set:none){.ql-editor li[data-list]{counter-set:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list]{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered]{counter-increment:list-0}.ql-editor li[data-list=ordered]>.ql-ui:before{content:counter(list-0,decimal) ". "}.ql-editor li[data-list=ordered].ql-indent-1{counter-increment:list-1}.ql-editor li[data-list=ordered].ql-indent-1>.ql-ui:before{content:counter(list-1,lower-alpha) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-1{counter-set:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-2{counter-increment:list-2}.ql-editor li[data-list=ordered].ql-indent-2>.ql-ui:before{content:counter(list-2,lower-roman) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-2{counter-set:list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-3{counter-increment:list-3}.ql-editor li[data-list=ordered].ql-indent-3>.ql-ui:before{content:counter(list-3,decimal) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-3{counter-set:list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-4{counter-increment:list-4}.ql-editor li[data-list=ordered].ql-indent-4>.ql-ui:before{content:counter(list-4,lower-alpha) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-4{counter-set:list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-5{counter-increment:list-5}.ql-editor li[data-list=ordered].ql-indent-5>.ql-ui:before{content:counter(list-5,lower-roman) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-5{counter-set:list-6 list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-6{counter-increment:list-6}.ql-editor li[data-list=ordered].ql-indent-6>.ql-ui:before{content:counter(list-6,decimal) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-6{counter-set:list-7 list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-6{counter-reset:list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-7{counter-increment:list-7}.ql-editor li[data-list=ordered].ql-indent-7>.ql-ui:before{content:counter(list-7,lower-alpha) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-7{counter-set:list-8 list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-7{counter-reset:list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-8{counter-increment:list-8}.ql-editor li[data-list=ordered].ql-indent-8>.ql-ui:before{content:counter(list-8,lower-roman) ". "}@supports (counter-set:none){.ql-editor li[data-list].ql-indent-8{counter-set:list-9}}@supports not (counter-set:none){.ql-editor li[data-list].ql-indent-8{counter-reset:list-9}}.ql-editor li[data-list=ordered].ql-indent-9{counter-increment:list-9}.ql-editor li[data-list=ordered].ql-indent-9>.ql-ui:before{content:counter(list-9,decimal) ". "}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor li.ql-direction-rtl{padding-right:1.5em}.ql-editor li.ql-direction-rtl>.ql-ui:before{margin-left:.3em;margin-right:-1.5em;text-align:left}.ql-editor table{table-layout:fixed;width:100%}.ql-editor table td{outline:none}.ql-editor .ql-code-block-container{font-family:monospace}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor .ql-ui{position:absolute}.ql-editor.ql-blank:before{color:#0009;content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px}.ql-snow.ql-toolbar:after,.ql-snow .ql-toolbar:after{clear:both;content:"";display:table}.ql-snow.ql-toolbar button,.ql-snow .ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px}.ql-snow.ql-toolbar button svg,.ql-snow .ql-toolbar button svg{float:left;height:100%}.ql-snow.ql-toolbar button:active:hover,.ql-snow .ql-toolbar button:active:hover{outline:none}.ql-snow.ql-toolbar input.ql-image[type=file],.ql-snow .ql-toolbar input.ql-image[type=file]{display:none}.ql-snow.ql-toolbar button:hover,.ql-snow .ql-toolbar button:hover,.ql-snow.ql-toolbar button:focus,.ql-snow .ql-toolbar button:focus,.ql-snow.ql-toolbar button.ql-active,.ql-snow .ql-toolbar button.ql-active,.ql-snow.ql-toolbar .ql-picker-label:hover,.ql-snow .ql-toolbar .ql-picker-label:hover,.ql-snow.ql-toolbar .ql-picker-label.ql-active,.ql-snow .ql-toolbar .ql-picker-label.ql-active,.ql-snow.ql-toolbar .ql-picker-item:hover,.ql-snow .ql-toolbar .ql-picker-item:hover,.ql-snow.ql-toolbar .ql-picker-item.ql-selected,.ql-snow .ql-toolbar .ql-picker-item.ql-selected{color:#06c}.ql-snow.ql-toolbar button:hover .ql-fill,.ql-snow .ql-toolbar button:hover .ql-fill,.ql-snow.ql-toolbar button:focus .ql-fill,.ql-snow .ql-toolbar button:focus .ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill{fill:#06c}.ql-snow.ql-toolbar button:hover .ql-stroke,.ql-snow .ql-toolbar button:hover .ql-stroke,.ql-snow.ql-toolbar button:focus .ql-stroke,.ql-snow .ql-toolbar button:focus .ql-stroke,.ql-snow.ql-toolbar button.ql-active .ql-stroke,.ql-snow .ql-toolbar button.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow.ql-toolbar button:hover .ql-stroke-miter,.ql-snow .ql-toolbar button:hover .ql-stroke-miter,.ql-snow.ql-toolbar button:focus .ql-stroke-miter,.ql-snow .ql-toolbar button:focus .ql-stroke-miter,.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter{stroke:#06c}@media(pointer:coarse){.ql-snow.ql-toolbar button:hover:not(.ql-active),.ql-snow .ql-toolbar button:hover:not(.ql-active){color:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#444}}.ql-snow,.ql-snow *{box-sizing:border-box}.ql-snow .ql-hidden{display:none}.ql-snow .ql-out-bottom,.ql-snow .ql-out-top{visibility:hidden}.ql-snow .ql-tooltip{position:absolute;transform:translateY(10px)}.ql-snow .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-snow .ql-tooltip.ql-flip{transform:translateY(-10px)}.ql-snow .ql-formats{display:inline-block;vertical-align:middle}.ql-snow .ql-formats:after{clear:both;content:"";display:table}.ql-snow .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-snow .ql-stroke-miter{fill:none;stroke:#444;stroke-miterlimit:10;stroke-width:2}.ql-snow .ql-fill,.ql-snow .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-empty{fill:none}.ql-snow .ql-even{fill-rule:evenodd}.ql-snow .ql-thin,.ql-snow .ql-stroke.ql-thin{stroke-width:1}.ql-snow .ql-transparent{opacity:.4}.ql-snow .ql-direction svg:last-child{display:none}.ql-snow .ql-direction.ql-active svg:last-child{display:inline}.ql-snow .ql-direction.ql-active svg:first-child{display:none}.ql-snow .ql-editor h1{font-size:2em}.ql-snow .ql-editor h2{font-size:1.5em}.ql-snow .ql-editor h3{font-size:1.17em}.ql-snow .ql-editor h4{font-size:1em}.ql-snow .ql-editor h5{font-size:.83em}.ql-snow .ql-editor h6{font-size:.67em}.ql-snow .ql-editor a{text-decoration:underline}.ql-snow .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-snow .ql-editor code,.ql-snow .ql-editor .ql-code-block-container{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor .ql-code-block-container{margin-bottom:5px;margin-top:5px;padding:5px 10px}.ql-snow .ql-editor code{font-size:85%;padding:2px 4px}.ql-snow .ql-editor .ql-code-block-container{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-snow .ql-editor img{max-width:100%}.ql-snow .ql-picker{color:#444;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle}.ql-snow .ql-picker-label{cursor:pointer;display:inline-block;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-snow .ql-picker-label:before{display:inline-block;line-height:22px}.ql-snow .ql-picker-options{background-color:#fff;display:none;min-width:100%;padding:4px 8px;position:absolute;white-space:nowrap}.ql-snow .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding-bottom:5px;padding-top:5px}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:#ccc;z-index:2}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-snow .ql-color-picker,.ql-snow .ql-icon-picker{width:28px}.ql-snow .ql-color-picker .ql-picker-label,.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-label svg,.ql-snow .ql-icon-picker .ql-picker-label svg{right:4px}.ql-snow .ql-icon-picker .ql-picker-options{padding:4px 0}.ql-snow .ql-icon-picker .ql-picker-item{height:24px;width:24px;padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-snow .ql-color-picker .ql-picker-item{border:1px solid transparent;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{position:absolute;margin-top:-9px;right:0;top:50%;width:18px}.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=""]):before{content:attr(data-label)}.ql-snow .ql-picker.ql-header{width:98px}.ql-snow .ql-picker.ql-header .ql-picker-label:before,.ql-snow .ql-picker.ql-header .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{content:"Heading 1"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{content:"Heading 2"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{content:"Heading 3"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{content:"Heading 4"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{content:"Heading 5"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{content:"Heading 6"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{font-size:2em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{font-size:1.5em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{font-size:1.17em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{font-size:1em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{font-size:.83em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{font-size:.67em}.ql-snow .ql-picker.ql-font{width:108px}.ql-snow .ql-picker.ql-font .ql-picker-label:before,.ql-snow .ql-picker.ql-font .ql-picker-item:before{content:"Sans Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{content:"Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{content:"Monospace"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-snow .ql-picker.ql-size{width:98px}.ql-snow .ql-picker.ql-size .ql-picker-label:before,.ql-snow .ql-picker.ql-size .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{content:"Small"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{content:"Large"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{content:"Huge"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-snow .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-snow .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-code-block-container{position:relative}.ql-code-block-container .ql-ui{right:5px;top:5px}.ql-toolbar.ql-snow{border:1px solid #ccc;box-sizing:border-box;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:8px}.ql-toolbar.ql-snow .ql-formats{margin-right:15px}.ql-toolbar.ql-snow .ql-picker-label{border:1px solid transparent}.ql-toolbar.ql-snow .ql-picker-options{border:1px solid transparent;box-shadow:#0003 0 2px 8px}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label,.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options{border-color:#ccc}.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover{border-color:#000}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0}.ql-snow .ql-tooltip{background-color:#fff;border:1px solid #ccc;box-shadow:0 0 5px #ddd;color:#444;padding:5px 12px;white-space:nowrap}.ql-snow .ql-tooltip:before{content:"Visit URL:";line-height:26px;margin-right:8px}.ql-snow .ql-tooltip input[type=text]{display:none;border:1px solid #ccc;font-size:13px;height:26px;margin:0;padding:3px 5px;width:170px}.ql-snow .ql-tooltip a.ql-preview{display:inline-block;max-width:200px;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top}.ql-snow .ql-tooltip a.ql-action:after{border-right:1px solid #ccc;content:"Edit";margin-left:16px;padding-right:8px}.ql-snow .ql-tooltip a.ql-remove:before{content:"Remove";margin-left:8px}.ql-snow .ql-tooltip a{line-height:26px}.ql-snow .ql-tooltip.ql-editing a.ql-preview,.ql-snow .ql-tooltip.ql-editing a.ql-remove{display:none}.ql-snow .ql-tooltip.ql-editing input[type=text]{display:inline-block}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0;content:"Save";padding-right:0}.ql-snow .ql-tooltip[data-mode=link]:before{content:"Enter link:"}.ql-snow .ql-tooltip[data-mode=formula]:before{content:"Enter formula:"}.ql-snow .ql-tooltip[data-mode=video]:before{content:"Enter video:"}.ql-snow a{color:#06c}.ql-container.ql-snow{border:1px solid #ccc}.project-form-container{max-width:1400px;margin:0 auto}.project-form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl)}.project-form-header h2{margin:0}.close-btn{padding:.5rem}.project-form-layout{display:flex;flex-direction:column;gap:3rem}.ql-editor{color:#000!important;min-height:250px;font-size:1rem;line-height:1.6}.ql-editor *{color:#000!important}.ql-toolbar{background:#f8f9fa}.project-form{padding:var(--spacing-xl)}.form-actions{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border)}.form-actions .btn{flex:1;justify-content:center}.images-container{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.image-preview-item{position:relative;aspect-ratio:1;border-radius:var(--radius-md);overflow:hidden;border:2px solid var(--color-border)}.image-preview-item img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.remove-image-btn{position:absolute;top:.5rem;right:.5rem;background-color:var(--color-error);color:#fff;border:none;border-radius:var(--radius-full);width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast)}.remove-image-btn:hover{transform:scale(1.1);box-shadow:var(--shadow-md)}.image-upload-actions{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.file-input{display:none}.file-label{cursor:pointer}.project-preview{padding:var(--spacing-xl);position:static;width:100%;margin-top:2rem}.preview-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:2px solid var(--color-border)}.preview-header h3{margin:0;font-size:1.25rem}.preview-content{min-height:300px}.preview-images{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.preview-image{width:100%;aspect-ratio:16/9;overflow:hidden;background-color:var(--color-background);border-radius:var(--radius-md)}.preview-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.preview-content h4{font-size:1.5rem;margin-bottom:var(--spacing-sm)}.preview-content p{color:var(--color-text-secondary);margin-bottom:var(--spacing-md);line-height:1.6;white-space:pre-wrap}.preview-tags{display:flex;flex-wrap:wrap;gap:.5rem}.preview-tag{padding:.375rem .75rem;background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:.875rem;color:var(--color-text-secondary)}@media(max-width:1024px){.images-container{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.images-container,.preview-images{grid-template-columns:1fr}}.editor-container{max-width:1000px;margin:0 auto}.editor-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);flex-wrap:wrap;gap:var(--spacing-md)}.editor-header h2{margin:0}.editor-section{padding:var(--spacing-xl);margin-bottom:var(--spacing-lg)}.editor-section h3{font-size:1.5rem;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--color-border)}.editor-section h4{font-size:1.125rem;margin-bottom:var(--spacing-md);color:var(--color-primary)}.editor-field-group{margin-bottom:var(--spacing-lg)}.editor-field-group label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--color-text-primary)}.editor-field-group small{display:block;margin-top:.5rem;color:var(--color-text-muted);font-size:.875rem}.field-with-action{display:flex;gap:var(--spacing-sm);align-items:flex-start}.field-with-action textarea{flex:1}.btn-sm{padding:.5rem .75rem;font-size:.875rem}.section-header-with-delete{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.section-header-with-delete h3{margin:0;border:none;padding:0}.highlight-editor{padding:var(--spacing-md);background-color:var(--color-background);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);border:1px solid var(--color-border)}.highlight-editor h4{margin-top:0}@media(max-width:768px){.editor-header{flex-direction:column;align-items:flex-start}.editor-header .btn{width:100%;justify-content:center}.section-header-with-delete{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.section-header-with-delete .btn{width:100%}}.admin-dashboard{min-height:100vh;background-color:var(--color-bg)}.admin-header{background-color:#0a0a0ad9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);padding:var(--spacing-lg) 0;position:sticky;top:0;z-index:100}.admin-header-content{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.admin-header h1{margin:0;font-size:1.75rem;font-weight:800;color:var(--color-text-h)}.admin-header-actions{display:flex;gap:var(--spacing-sm)}.admin-content{padding:var(--spacing-xl) var(--spacing-md);max-width:1200px;margin:0 auto}.admin-tabs{display:flex;gap:var(--spacing-lg, 1.5rem);margin-bottom:var(--spacing-xl);border-bottom:1px solid var(--color-border);overflow-x:auto;padding-bottom:4px}.admin-tab{display:flex;align-items:center;gap:.5rem;padding:var(--spacing-sm) var(--spacing-sm);background:transparent;border:none;border-bottom:2px solid transparent;color:var(--color-text-muted);font-weight:600;font-size:.95rem;cursor:pointer;transition:all .3s ease;white-space:nowrap;flex-shrink:0;margin-bottom:-5px}.admin-tab:hover{color:var(--color-text-body)}.admin-tab.active{color:var(--color-text-h);border-bottom-color:var(--color-accent)}.admin-tab-content{min-height:400px}.admin-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);gap:var(--spacing-md);flex-wrap:wrap}.admin-actions h2{margin:0;font-size:1.5rem;font-weight:700;color:var(--color-text-h)}.no-projects-admin{text-align:center;padding:var(--spacing-3xl);color:var(--color-text-muted)}.admin-projects-list-premium{display:flex;flex-direction:column;gap:20px}.admin-card-premium{display:flex;flex-direction:row;align-items:flex-start;padding:24px;background:#ffffff05;border:1px solid rgba(255,255,255,.05);border-radius:24px;gap:24px;height:100%}.admin-card-premium__thumb{width:130px;height:90px;border-radius:14px;overflow:hidden;flex-shrink:0;background:#00000080;border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 2px 12px #00000080}.admin-card-premium__thumb img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .5s ease}.admin-card-premium:hover .admin-card-premium__thumb img{transform:scale(1.05)}.admin-card-premium__placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#fff3}.admin-card-premium__body{flex:1;display:flex;flex-direction:column;justify-content:flex-start;min-width:0}.admin-card-premium__title{font-size:1.15rem;font-weight:700;color:var(--color-text-h);margin-bottom:.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.01em}.admin-card-premium__desc{font-size:.9rem;line-height:1.5;color:var(--color-text-body);margin-bottom:1rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.admin-card-premium__tags{display:flex;flex-wrap:wrap;gap:8px}.admin-premium-tag{padding:.25rem .75rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:100px;font-size:.75rem;font-weight:600;color:var(--color-text-muted)}.admin-card-premium__actions{display:flex;flex-direction:column;gap:12px;flex-shrink:0;justify-content:flex-start}.admin-btn-premium{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .25s ease;min-width:100px}.admin-btn-premium.edit{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:var(--color-text-h)}.admin-btn-premium.edit:hover{background:var(--color-text-h);color:var(--color-bg)}.admin-btn-premium.delete{background:transparent;border:1px solid rgba(239,68,68,.3);color:#ef4444cc}.admin-btn-premium.delete:hover{background:#ef444426;color:#ef4444;border-color:#ef4444}@media(max-width:768px){.admin-card-premium{flex-direction:column;padding:20px}.admin-card-premium__thumb{width:100%;height:180px}.admin-card-premium__actions{width:100%;flex-direction:row;border-top:1px solid rgba(255,255,255,.05);padding-top:20px;margin-top:10px}.admin-btn-premium{flex:1}}.chatbot-container{position:fixed;bottom:28px;right:28px;z-index:9999;display:flex;flex-direction:column;align-items:flex-end;pointer-events:none;font-family:var(--font-body);transform:translateZ(0)}.chatbot-toggle,.chatbot-window{pointer-events:auto}.chatbot-toggle{background:transparent;padding:0;border:none;width:64px;height:64px;cursor:pointer;position:relative;z-index:10;display:flex;align-items:center;justify-content:center;transition:all var(--ease-spring)}.chatbot-toggle:hover{transform:scale(1.05)}.chatbot-toggle:active{transform:scale(.95)}.orb-glow{position:absolute;inset:0;background:#8b451366;border-radius:50%;filter:blur(16px);transition:all .5s ease}.chatbot-toggle:hover .orb-glow{background:#8b451399;filter:blur(20px)}.orb-bg{position:relative;width:100%;height:100%;border-radius:50%;border:1px solid rgba(255,255,255,.2);box-shadow:0 12px 36px #00000080;overflow:hidden;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#8b4513,#5d4037,#3e2723);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:all .5s ease}.orb-glass{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to bottom,rgba(255,255,255,.2),transparent);pointer-events:none}.orb-highlight{position:absolute;top:-25%;left:-25%;width:50%;height:50%;background:#ffffff1a;border-radius:50%;filter:blur(10px);animation:orbPulse 3s infinite alternate}@keyframes orbPulse{0%{opacity:.5;transform:scale(1)}to{opacity:1;transform:scale(1.2)}}.orb-texture{position:absolute;inset:0;opacity:.1;mix-blend-mode:overlay;pointer-events:none;background-image:url(https://www.transparenttextures.com/patterns/carbon-fibre.png)}.orb-icon{position:relative;z-index:10;color:#ffffffe6;filter:drop-shadow(0 2px 4px rgba(0,0,0,.5));transition:transform var(--ease-spring)}.chatbot-toggle:hover .orb-icon{transform:scale(1.1) rotate(5deg)}.chatbot-window{width:380px;max-width:calc(100vw - 48px);height:540px;max-height:calc(100vh - 130px);margin-bottom:16px;background:var(--color-bg-alt);border:1px solid var(--color-border-hover);border-radius:var(--radius-xl);display:flex;flex-direction:column;box-shadow:0 24px 80px #0009,0 0 0 1px #00f39314;transform-origin:bottom right;animation:chatWindowOpen .4s cubic-bezier(.34,1.56,.64,1) forwards;overflow:hidden}@keyframes chatWindowOpen{0%{transform:scale(.85) translateY(20px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.chatbot-header{background:var(--color-bg-card);padding:16px 20px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--color-border);position:relative}.chatbot-header:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--color-accent),var(--color-secondary))}.chatbot-title{display:flex;align-items:center;gap:10px;font-weight:700;font-size:var(--text-sm);color:var(--color-text-h);letter-spacing:-.02em}.chatbot-title svg{color:var(--color-accent)}.chatbot-status{display:flex;align-items:center;gap:6px;font-size:var(--text-xs);color:var(--color-accent);font-weight:500}.chatbot-status-dot{width:6px;height:6px;border-radius:50%;background:var(--color-accent);animation:pulseGlow 2s infinite}.chatbot-close{background:transparent;border:none;color:var(--color-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-full);transition:all var(--ease-fast);padding:0}.chatbot-close:hover{background:#ffffff14;color:var(--color-text-h);transform:rotate(90deg)}.chatbot-messages{flex-grow:1;padding:20px;overflow-y:auto;display:flex;flex-direction:column;gap:14px;scroll-behavior:smooth}.chatbot-messages::-webkit-scrollbar{width:4px}.chatbot-messages::-webkit-scrollbar-track{background:transparent}.chatbot-messages::-webkit-scrollbar-thumb{background:var(--color-border-hover);border-radius:2px}.chat-bubble-container{display:flex;width:100%;animation:messageSlideUp .3s cubic-bezier(.16,1,.3,1) forwards}.chat-bubble-container.user{justify-content:flex-end}.chat-bubble-container.assistant{justify-content:flex-start}@keyframes messageSlideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.chat-bubble{max-width:82%;padding:10px 14px;font-size:var(--text-sm);line-height:1.6;border-radius:var(--radius-lg)}.chat-bubble-container.user .chat-bubble{background:var(--color-accent);color:#000;border-radius:var(--radius-lg) var(--radius-lg) 4px var(--radius-lg);font-weight:500}.chat-bubble-container.assistant .chat-bubble{background:#ffffff0d;color:var(--color-text-body);border:1px solid var(--color-border);border-radius:var(--radius-lg) var(--radius-lg) var(--radius-lg) 4px}.chat-bubble p{margin-bottom:6px}.chat-bubble p:last-child{margin-bottom:0}.chat-bubble a{color:var(--color-accent);font-weight:600;text-decoration:underline}.chat-bubble strong{font-weight:700;color:var(--color-text-h)}.chat-bubble ul,.chat-bubble ol{margin-left:18px;margin-bottom:6px}.chatbot-input-area{display:flex;padding:12px 16px;background:var(--color-bg-card);border-top:1px solid var(--color-border);gap:8px;align-items:center}.chatbot-input-area input{flex-grow:1;background:#ffffff0a;border:1px solid var(--color-border);color:var(--color-text-h);border-radius:var(--radius-pill);padding:10px 16px;font-size:var(--text-sm);outline:none;transition:all var(--ease-fast);width:auto}.chatbot-input-area input:focus{border-color:var(--color-accent);background:#00f3930a;box-shadow:0 0 0 3px var(--color-accent-dim)}.chatbot-input-area input::-moz-placeholder{color:var(--color-text-muted)}.chatbot-input-area input::placeholder{color:var(--color-text-muted)}.chatbot-input-area button{background:var(--color-accent);color:#000;border:none;border-radius:var(--radius-full);width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--ease-fast);flex-shrink:0;padding:0;font-size:0}.chatbot-input-area button:hover:not(:disabled){background:#fff;transform:scale(1.1);box-shadow:0 4px 14px var(--color-accent-glow)}.chatbot-input-area button:disabled{opacity:.4;cursor:not-allowed;background:var(--color-border-hover);color:var(--color-text-muted);transform:none;box-shadow:none}.typing-indicator{display:flex;gap:5px;padding:12px 16px!important;align-items:center}.typing-dot{width:7px;height:7px;border-radius:50%;background:var(--color-text-muted);animation:typingBounce 1.2s ease-in-out infinite}.typing-dot:nth-child(2){animation-delay:.15s}.typing-dot:nth-child(3){animation-delay:.3s}@keyframes typingBounce{0%,60%,to{transform:translateY(0);background:var(--color-text-muted)}30%{transform:translateY(-6px);background:var(--color-accent)}}@media(max-width:640px){.chatbot-container{bottom:16px;right:16px}.chatbot-window{width:calc(100vw - 32px);height:calc(100vh - 120px)}}
