@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=IBM+Plex+Sans:wght@400;500;600&family=Space+Grotesk:wght@500;700&family=Space+Mono:wght@400;700&display=swap";@layer components;@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-leading:initial;--tw-tracking:initial;--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}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--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-6xl--line-height:1;--text-7xl:4.5rem;--text-7xl--line-height:1;--leading-tight:1.25;--radius-3xl:1.5rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.left-1\/2{left:50%}.z-30{z-index:30}.mx-auto{margin-inline:auto}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.flex{display:flex}.grid{display:grid}.hidden{display:none}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-16{height:calc(var(--spacing) * 16)}.h-20{height:calc(var(--spacing) * 20)}.h-24{height:calc(var(--spacing) * 24)}.min-h-screen{min-height:100vh}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-28{width:calc(var(--spacing) * 28)}.w-40{width:calc(var(--spacing) * 40)}.w-\[calc\(100\%-2rem\)\]{width:calc(100% - 2rem)}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-\[88rem\]{max-width:88rem}.max-w-xl{max-width:var(--container-xl)}.shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.resize-y{resize:vertical}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-10{gap:calc(var(--spacing) * 10)}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.overflow-x-hidden{overflow-x:hidden}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-\[1\.75rem\]{border-radius:1.75rem}.rounded-\[2rem\]{border-radius:2rem}.rounded-full{border-radius:3.40282e38px}.bg-\[var\(--accent\)\]{background-color:var(--accent)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-3{padding-block:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pb-16{padding-bottom:calc(var(--spacing) * 16)}.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-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--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))}.leading-7{--tw-leading:calc(var(--spacing) * 7);line-height:calc(var(--spacing) * 7)}.leading-8{--tw-leading:calc(var(--spacing) * 8);line-height:calc(var(--spacing) * 8)}.leading-none{--tw-leading:1;line-height:1}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.tracking-\[0\.4em\]{--tw-tracking:.4em;letter-spacing:.4em}.tracking-\[0\.35em\]{--tw-tracking:.35em;letter-spacing:.35em}.tracking-\[0\.38em\]{--tw-tracking:.38em;letter-spacing:.38em}.text-balance{text-wrap:balance}.text-\[var\(--accent\)\]{color:var(--accent)}.text-\[var\(--text-muted\)\]{color:var(--text-muted)}.text-\[var\(--text-primary\)\]{color:var(--text-primary)}.text-\[var\(--text-secondary\)\]{color:var(--text-secondary)}.uppercase{text-transform:uppercase}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-70:disabled{opacity:.7}@media (width>=40rem){.sm\:w-\[calc\(100\%-3rem\)\]{width:calc(100% - 3rem)}.sm\:p-7{padding:calc(var(--spacing) * 7)}.sm\:p-10{padding:calc(var(--spacing) * 10)}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}.sm\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.sm\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}.sm\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.sm\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}}@media (width>=64rem){.lg\:flex{display:flex}.lg\:w-\[calc\(100\%-4rem\)\]{width:calc(100% - 4rem)}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-\[0\.9fr_1\.1fr\]{grid-template-columns:.9fr 1.1fr}.lg\:px-8{padding-inline:calc(var(--spacing) * 8)}.lg\:text-7xl{font-size:var(--text-7xl);line-height:var(--tw-leading,var(--text-7xl--line-height))}}@media (width>=80rem){.xl\:flex{display:flex}}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:4.1rem}body{min-width:320px;margin:0;transition:background-color .22s,color .22s}a{color:inherit;text-decoration:none}#root{min-height:100vh}.top-nav{top:1rem}.top-nav-actions{flex:none;justify-content:flex-end;align-items:center;gap:.75rem;min-width:0;display:inline-flex}.top-nav-main{padding-top:7rem}.top-nav-main>[id],.legacy-main>[id]{scroll-margin-top:4.1rem}#experiencia{scroll-margin-top:3.92rem}#habilidades{scroll-margin-top:3.88rem}#proyectos{scroll-margin-top:3rem}#contacto{scroll-margin-top:3.88rem}body[data-app-surface=production]{color:#edf5f2;background:radial-gradient(circle at top,#2aa78529,#0000 34%),radial-gradient(circle at 85% 15%,#294a5838,#0000 22%),linear-gradient(#071116,#060e12);font-family:IBM Plex Sans,system-ui,sans-serif}body[data-app-surface=production]:before{content:"";pointer-events:none;opacity:.45;z-index:-1;background-image:linear-gradient(90deg,#ffffff09 1px,#0000 1px),linear-gradient(#ffffff09 1px,#0000 1px);background-size:40px 40px;position:fixed;inset:0;-webkit-mask-image:radial-gradient(circle,#000 38%,#0000 92%);mask-image:radial-gradient(circle,#000 38%,#0000 92%)}html[data-theme=light] body[data-app-surface=production]{color:#102026;background:radial-gradient(circle at top,#146f581f,#0000 34%),radial-gradient(circle at 85% 15%,#8ea39a2e,#0000 22%),linear-gradient(#edf3f0,#dfe8e4)}body[data-app-surface=debug]{color:#e2e2e2;background-color:#1d1d1d;font-family:Space Mono,monospace;overflow-x:hidden}html[data-theme=light] body[data-app-surface=debug]{color:#1d1d1d;background-color:#fff}.alternate-portfolio{--surface-base:#071116;--surface-elevated:#0f1a20;--surface-rgb:10, 22, 28;--text-primary:#edf5f2;--text-secondary:#c4d2cb;--text-muted:#8ea39a;--accent:#2aa785;--accent-strong:#44c79f;--border:#c4d2cb1a;--border-strong:#44c79f59;--shadow-color:#00000059}html[data-theme=light] .alternate-portfolio{--surface-base:#edf3f0;--surface-elevated:#fff;--surface-rgb:255, 255, 255;--text-primary:#102026;--text-secondary:#213239;--text-muted:#5d7470;--accent:#146f58;--accent-strong:#1d9271;--border:#10202614;--border-strong:#146f583d;--shadow-color:#10202614}.legacy-portfolio{--surface-base:#1d1d1d;--surface-elevated:#222;--surface-rgb:34, 34, 34;--text-primary:#e2e2e2;--text-secondary:#cdcdcd;--text-muted:#a0a0a0;--accent:#30f2a9;--accent-strong:#30f2a9;--border:#333333eb;--border-strong:#30f2a9b3;--shadow-color:transparent}html[data-theme=light] .legacy-portfolio{--surface-base:#fff;--surface-elevated:#f9f9f9;--surface-rgb:249, 249, 249;--text-primary:#1d1d1d;--text-secondary:#3b3b3b;--text-muted:#555;--accent:#007b5e;--accent-strong:#007b5e;--border:#e0e0e0f2;--border-strong:#007b5e8c;--shadow-color:transparent}.font-display{font-family:Space Grotesk,IBM Plex Sans,sans-serif}.site-shell:after{content:"";pointer-events:none;z-index:-2;background:linear-gradient(135deg,#2aa7850d,#0000 38%),linear-gradient(315deg,#44c79f0a,#0000 32%);position:fixed;inset:0}.panel{background-color:rgba(var(--surface-rgb), .76);border:1px solid var(--border);box-shadow:0 24px 80px -36px var(--shadow-color);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.alternate-portfolio main .panel{transition:transform .22s,border-color .22s,box-shadow .22s,background-color .22s}.alternate-portfolio main .panel:hover{border-color:var(--border-strong);transform:translateY(-3px)}@supports (color:color-mix(in lab, red, red)){.alternate-portfolio main .panel:hover{border-color:color-mix(in srgb, var(--border-strong) 72%, transparent)}}.alternate-portfolio main .panel:hover{box-shadow:0 30px 90px -40px var(--shadow-color), 0 0 0 1px #44c79f0f}.cta-primary,.cta-secondary{border-radius:999px;align-items:center;gap:.65rem;padding:.9rem 1.35rem;font-size:.875rem;font-weight:600;transition:transform .18s,border-color .18s,background-color .18s,box-shadow .18s,color .18s;display:inline-flex}.cta-primary{background:linear-gradient(135deg, var(--accent), var(--accent-strong));color:#03100d}.cta-secondary{border:1px solid var(--border-strong);background-color:rgba(var(--surface-rgb), .42);color:var(--text-primary)}.cta-primary:hover,.cta-secondary:hover,.theme-toggle:hover{transform:translateY(-1px)}.alternate-portfolio .cta-primary:hover{box-shadow:0 18px 36px -22px #44c79fbf}.alternate-portfolio .cta-secondary:hover{border-color:var(--border-strong)}@supports (color:color-mix(in lab, red, red)){.alternate-portfolio .cta-secondary:hover{border-color:color-mix(in srgb, var(--border-strong) 88%, transparent)}}.alternate-portfolio .cta-secondary:hover{background-color:rgba(var(--surface-rgb), .62)}.tag-chip,.status-chip{border:1px solid var(--border);background-color:rgba(var(--surface-rgb), .42);color:var(--text-secondary);border-radius:999px;align-items:center;padding:.45rem .8rem;font-size:.76rem;display:inline-flex}.alternate-portfolio .tag-chip,.alternate-portfolio .status-chip{transition:transform .18s,border-color .18s,background-color .18s,color .18s,box-shadow .18s}.alternate-portfolio .tag-chip:hover,.alternate-portfolio .status-chip:hover{border-color:var(--border-strong);transform:translateY(-1px)}@supports (color:color-mix(in lab, red, red)){.alternate-portfolio .tag-chip:hover,.alternate-portfolio .status-chip:hover{border-color:color-mix(in srgb, var(--border-strong) 88%, transparent)}}.alternate-portfolio .tag-chip:hover,.alternate-portfolio .status-chip:hover{background-color:rgba(var(--surface-rgb), .62);color:var(--text-primary);box-shadow:0 12px 24px -20px #44c79f73}.tag-chip-featured,.status-chip{border-color:var(--border-strong);color:var(--accent-strong)}.timeline-card{position:relative}.timeline-card:before{content:"";background:linear-gradient(#44c79f66,#0000);width:1px;position:absolute;top:1.2rem;bottom:1.2rem;left:1.2rem}.timeline-card>*{z-index:1;position:relative}.field-input{border:1px solid var(--border);background-color:rgba(var(--surface-rgb), .5);width:100%;color:var(--text-primary);font:inherit;border-radius:1.3rem;padding:.9rem 1rem;transition:border-color .18s,box-shadow .18s}.field-input:focus{border-color:var(--border-strong);outline:none;box-shadow:0 0 0 4px #2aa7851f}.field-input::placeholder{color:var(--text-muted)}@supports (color:color-mix(in lab, red, red)){.field-input::placeholder{color:color-mix(in srgb, var(--text-muted) 82%, transparent)}}.contact-form-shell{position:relative;overflow:hidden}.contact-form-shell:before{content:"";pointer-events:none;background:radial-gradient(circle at 100% 0,#44c79f17,#0000 32%),linear-gradient(#ffffff04,#0000 28%);position:absolute;inset:0}.contact-form-header,.contact-form-grid{z-index:1;position:relative}.contact-form-header{margin-bottom:1.2rem}.contact-form-eyebrow{text-transform:uppercase;letter-spacing:.28em;color:var(--accent);margin:0 0 .5rem;font-size:.68rem}.contact-form-title{color:var(--text-primary);margin:0;font-family:Space Grotesk,IBM Plex Sans,sans-serif;font-size:clamp(1.4rem,2.5vw,1.85rem);line-height:1.08}.contact-form-copy{max-width:30rem;color:var(--text-muted);margin:.6rem 0 0;font-size:.88rem;line-height:1.65}.contact-form-grid{gap:1rem;display:grid}.contact-form-split{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.contact-form-honeypot{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.contact-field{gap:.45rem;display:grid}.contact-field-label{text-transform:uppercase;letter-spacing:.24em;color:var(--text-secondary);font-size:.68rem}.contact-form-textarea{min-height:10rem}.contact-form-footer{justify-content:center;margin-top:.2rem;display:flex}.contact-form-submit{justify-content:center;min-width:12.5rem}.contact-form-feedback{margin:0;font-size:.92rem}.contact-form-feedback-success{color:var(--accent)}.contact-form-feedback-error{color:#fb7185}.contact-form-feedback-muted{color:var(--text-secondary)}.contact-form-shell-disabled:before{background:radial-gradient(circle at 100% 0,#fb718514,#0000 34%),linear-gradient(#ffffff04,#0000 28%)}.contact-form-grid[aria-disabled=true]{opacity:.84}.contact-form-grid[aria-disabled=true] .field-input{cursor:not-allowed}.admin-modal-overlay{z-index:80;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#030a0dc2;place-items:center;padding:1.5rem;display:grid;position:fixed;inset:0}.admin-modal{background:var(--surface-base);border-radius:1.5rem;width:min(100%,31rem);padding:1.5rem}@supports (color:color-mix(in lab, red, red)){.admin-modal{background:color-mix(in srgb, var(--surface-base) 88%, #041015)}}.admin-modal{border:1px solid var(--border-strong)}@supports (color:color-mix(in lab, red, red)){.admin-modal{border:1px solid color-mix(in srgb, var(--border-strong) 72%, #ffffff14)}}.admin-modal{box-shadow:0 32px 80px -32px #000000b3,0 0 0 1px #ffffff08}.admin-modal-body{gap:1rem;display:grid}.admin-modal-eyebrow{text-transform:uppercase;letter-spacing:.3em;color:var(--accent);margin:0;font-size:.68rem}.admin-modal-title{color:var(--text-primary);margin:0;font-family:Space Grotesk,IBM Plex Sans,sans-serif;font-size:clamp(1.35rem,2.5vw,1.8rem);line-height:1.08}.admin-modal-copy{color:var(--text-secondary);margin:0;font-size:.9rem;line-height:1.7}.admin-modal-feedback{margin:0;font-size:.9rem;line-height:1.6}.admin-modal-feedback-success{color:var(--accent)}.admin-modal-feedback-error{color:#fb7185}.admin-modal-actions{justify-content:flex-end;gap:.75rem;margin-top:.3rem;display:flex}.admin-modal .contact-field-label{color:var(--text-primary)}.admin-modal .field-input{background-color:var(--surface-elevated)}@supports (color:color-mix(in lab, red, red)){.admin-modal .field-input{background-color:color-mix(in srgb, var(--surface-elevated) 82%, #ffffff05)}}.admin-modal .field-input{border-color:var(--border-strong)}@supports (color:color-mix(in lab, red, red)){.admin-modal .field-input{border-color:color-mix(in srgb, var(--border-strong) 52%, var(--border))}}.admin-modal .field-input::placeholder{color:var(--text-muted)}@supports (color:color-mix(in lab, red, red)){.admin-modal .field-input::placeholder{color:color-mix(in srgb, var(--text-muted) 68%, var(--text-secondary))}}.admin-modal .cta-secondary{border-color:var(--border-strong);justify-content:center;min-width:10.5rem}@supports (color:color-mix(in lab, red, red)){.admin-modal .cta-secondary{border-color:color-mix(in srgb, var(--border-strong) 78%, var(--border))}}.admin-modal .cta-secondary{background:var(--surface-elevated)}@supports (color:color-mix(in lab, red, red)){.admin-modal .cta-secondary{background:color-mix(in srgb, var(--surface-elevated) 86%, #ffffff08)}}.admin-modal .cta-secondary{color:var(--text-primary);box-shadow:inset 0 1px #ffffff0a,0 12px 24px -22px #0000008c}.admin-modal .cta-primary{border:1px solid var(--accent-strong);justify-content:center;min-width:10.5rem}@supports (color:color-mix(in lab, red, red)){.admin-modal .cta-primary{border:1px solid color-mix(in srgb, var(--accent-strong) 72%, transparent)}}.admin-modal .cta-primary{background:linear-gradient(135deg, var(--accent), var(--accent-strong));color:#fff;box-shadow:inset 0 1px #ffffff29,0 16px 32px -24px #44c79fa6}.admin-modal .cta-secondary:hover{border-color:var(--border-strong);transform:translateY(-1px)}@supports (color:color-mix(in lab, red, red)){.admin-modal .cta-secondary:hover{border-color:color-mix(in srgb, var(--border-strong) 92%, var(--border))}}.admin-modal .cta-secondary:hover{background:var(--surface-elevated)}@supports (color:color-mix(in lab, red, red)){.admin-modal .cta-secondary:hover{background:color-mix(in srgb, var(--surface-elevated) 94%, #ffffff0a)}}.admin-modal .cta-secondary:hover{box-shadow:inset 0 1px #ffffff0d,0 14px 28px -22px #0000009e}.admin-modal .cta-primary:hover{transform:translateY(-1px);box-shadow:0 18px 36px -22px #44c79fc7}.admin-modal .cta-primary:disabled{opacity:1;border-color:var(--border-strong)}@supports (color:color-mix(in lab, red, red)){.admin-modal .cta-primary:disabled{border-color:color-mix(in srgb, var(--border-strong) 52%, var(--border))}}.admin-modal .cta-primary:disabled{background:rgba(var(--surface-rgb), .9);color:#fff;box-shadow:none}html[data-theme=light] .admin-modal-overlay{background:#e2eae7bd}html[data-theme=light] .admin-modal{box-shadow:0 32px 72px -34px #10202638,0 0 0 1px #1020260d}.theme-toggle{border:1px solid var(--border);background-color:rgba(var(--surface-rgb), .64);border-radius:999px;flex:none;justify-content:space-between;align-items:center;gap:.9rem;min-width:6rem;padding:.35rem .5rem .35rem .9rem;transition:transform .18s,border-color .18s;display:inline-flex}.theme-toggle-label{text-transform:uppercase;letter-spacing:.25em;min-width:0;color:var(--text-muted);white-space:nowrap;font-size:.75rem}.theme-toggle-track{background:#2aa7852e;border-radius:999px;align-items:center;width:3.4rem;height:1.8rem;display:inline-flex;position:relative;box-shadow:inset 0 0 0 1px #2aa7852e}.theme-toggle-thumb{background:linear-gradient(135deg, var(--accent), var(--accent-strong));border-radius:999px;width:1.44rem;height:1.44rem;transition:transform .22s,background .22s,box-shadow .22s;position:absolute;top:.18rem;left:.18rem;box-shadow:inset 0 0 0 1px #03100d14}.theme-toggle[data-state=light] .theme-toggle-thumb{transform:translate(1.58rem)}.top-nav-links{flex:auto;align-items:center;gap:1.25rem;min-width:0}.top-nav-eyebrow{text-transform:uppercase;letter-spacing:.35em;color:var(--text-muted);font-family:IBM Plex Sans,sans-serif;font-size:.7rem;line-height:1}.top-nav-brand{color:var(--text-primary);margin-top:.35rem;font-family:Space Grotesk,IBM Plex Sans,sans-serif;font-size:1.125rem;font-weight:700;line-height:1.1}.top-nav-link{letter-spacing:.18em;color:var(--text-muted);font-family:IBM Plex Sans,sans-serif;font-size:.78rem;line-height:1;transition:color .18s}.top-nav-link:hover{color:var(--text-primary)}.presentation-toggle{border:1px solid var(--border);background-color:rgba(var(--surface-rgb), .64);border-radius:999px;flex:none;justify-content:space-between;align-items:center;gap:.9rem;width:10.75rem;padding:.35rem .5rem .35rem .9rem;transition:transform .18s,border-color .18s;display:inline-flex}.presentation-toggle:hover{transform:translateY(-1px)}.presentation-toggle-label{text-transform:uppercase;letter-spacing:.22em;width:6rem;min-width:0;color:var(--text-muted);text-align:left;white-space:nowrap;font-size:.75rem}.presentation-toggle-label-short{display:none}.presentation-toggle-track{background:#2aa7852e;border-radius:999px;align-items:center;width:3.4rem;height:1.8rem;display:inline-flex;position:relative;box-shadow:inset 0 0 0 1px #2aa7852e}.presentation-toggle-thumb{background:linear-gradient(135deg, var(--accent), var(--accent-strong));border-radius:999px;width:1.44rem;height:1.44rem;transition:transform .22s,background .22s,box-shadow .22s;position:absolute;top:.18rem;left:.18rem;box-shadow:inset 0 0 0 1px #03100d14}.presentation-toggle[data-state=debug] .presentation-toggle-thumb{background:linear-gradient(135deg, var(--accent), var(--accent));transform:translate(1.58rem)}@supports (color:color-mix(in lab, red, red)){.presentation-toggle[data-state=debug] .presentation-toggle-thumb{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 86%, #5effd2), color-mix(in srgb, var(--accent) 50%, #0f4f3f))}}.skeleton{background:linear-gradient(90deg, rgba(var(--surface-rgb), .44), #ffffff14, rgba(var(--surface-rgb), .44));background-size:200% 100%;animation:1.6s infinite pulse-slide}@keyframes pulse-slide{0%{background-position:200% 0}to{background-position:-200% 0}}.legacy-portfolio{min-height:100vh;color:var(--text-primary);position:relative}.legacy-background{pointer-events:none;z-index:-1;width:100%;height:100%;position:fixed;inset:0}.legacy-navbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#1d1d1dcc;justify-content:space-between;align-items:center;display:flex}html[data-theme=light] .legacy-navbar{background-color:#ffffffd9}.legacy-main{flex-direction:column;gap:2.5rem;display:flex}.legacy-section{margin-bottom:8rem}.legacy-hero{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;display:flex}.legacy-subtitle{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin-bottom:1rem;font-size:.85rem}.legacy-hero h1{color:var(--text-primary);margin:0;font-size:clamp(2.75rem,8vw,4.75rem)}.legacy-hero-copy{color:var(--text-muted);max-width:720px;margin:1.5rem 0;font-size:1.15rem;line-height:1.7}.legacy-hero-actions{flex-wrap:wrap;justify-content:center;gap:.9rem;margin-bottom:1.75rem;display:flex}.legacy-hero-meta{color:var(--text-muted);flex-wrap:wrap;justify-content:center;gap:.75rem 1.5rem;font-size:.92rem;display:flex}.legacy-section-title{color:var(--text-primary);text-align:center;margin-bottom:3rem;font-family:Space Grotesk,IBM Plex Sans,sans-serif;font-size:2.25rem;font-weight:500;line-height:1.1;display:inline-block;position:relative;left:50%;transform:translate(-50%)}.legacy-section-title:after{content:"";background-color:var(--accent);width:100%;height:3px;position:absolute;bottom:-10px;left:0}.legacy-card{background-color:var(--surface-elevated);border:1px solid var(--border);border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.legacy-card h3{color:var(--text-primary);margin:0 0 .55rem}.legacy-card h4{color:var(--text-muted);margin:0 0 1rem;font-style:italic}.legacy-card p{color:var(--text-muted);line-height:1.6}.legacy-loading-card{max-width:740px}.legacy-skills-container,.legacy-inline-tags{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.legacy-inline-tags{justify-content:flex-start;margin-top:1rem}.legacy-skill-tag{color:var(--accent);background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.legacy-skill-tag{background-color:color-mix(in srgb, var(--accent) 12%, transparent)}}.legacy-skill-tag{border-radius:4px;padding:8px 12px;font-size:.9rem;font-weight:500}.legacy-bullet-list{color:var(--text-muted);margin:1rem 0 0;padding-left:1.15rem}.legacy-bullet-list li+li{margin-top:.55rem}.legacy-project-link{display:block}.legacy-project-link:hover .legacy-card{transition:transform .3s;transform:translateY(-5px)}.legacy-contact-section{text-align:center;flex-direction:column;align-items:center;display:flex}.legacy-contact-section .legacy-section-title,.legacy-contact-section .legacy-contact-subtitle{width:100%}.legacy-contact-subtitle{color:var(--text-muted);max-width:44rem;margin-bottom:2rem}.legacy-social-buttons{flex-wrap:wrap;justify-content:center;gap:1rem;margin-bottom:3rem;display:flex}.legacy-social-btn{border:1px solid var(--border);color:var(--text-muted);background-color:#0000;border-radius:4px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;text-decoration:none;transition:all .3s;display:inline-flex}.legacy-social-btn:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-3px)}.legacy-portfolio .panel{background-color:var(--surface-elevated);border:1px solid var(--border);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:8px}.legacy-portfolio .cta-primary,.legacy-portfolio .cta-secondary{border-radius:4px;font-family:Space Mono,monospace;transform:none}.legacy-portfolio .cta-primary{background:var(--accent);color:var(--surface-base);border:none}.legacy-portfolio .cta-primary:hover{box-shadow:0 4px 15px var(--accent);transform:translateY(-3px)}@supports (color:color-mix(in lab, red, red)){.legacy-portfolio .cta-primary:hover{box-shadow:0 4px 15px color-mix(in srgb, var(--accent) 40%, transparent)}}.legacy-portfolio .cta-secondary{color:var(--text-muted);border:1px solid var(--border);background:0 0}.legacy-portfolio .cta-secondary:hover{color:var(--accent);border-color:var(--accent);transform:translateY(-3px)}.legacy-portfolio .field-input{background-color:var(--surface-elevated);border:1px solid var(--border);color:var(--text-primary);border-radius:4px;font-family:Space Mono,monospace}.legacy-portfolio .field-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent)}@supports (color:color-mix(in lab, red, red)){.legacy-portfolio .field-input:focus{box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 20%, transparent)}}.legacy-portfolio .contact-form-shell{border-radius:8px;width:min(100%,72rem);padding:2rem}.legacy-portfolio .contact-form-shell:before{background:linear-gradient(#30f2a90d,#0000 22%),linear-gradient(90deg,#30f2a906,#0000 28%)}.legacy-portfolio .contact-form-header{text-align:left;margin-bottom:1.35rem}.legacy-portfolio .contact-form-eyebrow,.legacy-portfolio .contact-field-label{letter-spacing:.32em;font-family:Space Mono,monospace}.legacy-portfolio .contact-form-title{font-family:Space Grotesk,IBM Plex Sans,sans-serif;font-size:clamp(1.35rem,2.8vw,1.8rem)}.legacy-portfolio .contact-form-copy{font-family:Space Mono,monospace}.admin-shell{background:radial-gradient(circle at top left, var(--accent), transparent 28%), radial-gradient(circle at 92% 10%, var(--text-muted), transparent 20%), linear-gradient(180deg, var(--surface-base), var(--surface-elevated));min-height:100vh;padding:1.25rem 1rem 3.5rem}@supports (color:color-mix(in lab, red, red)){.admin-shell{background:radial-gradient(circle at top left, color-mix(in srgb, var(--accent) 18%, transparent), transparent 28%), radial-gradient(circle at 92% 10%, color-mix(in srgb, var(--text-muted) 16%, transparent), transparent 20%), linear-gradient(180deg, color-mix(in srgb, var(--surface-base) 52%, transparent), color-mix(in srgb, var(--surface-elevated) 18%, transparent))}}.admin-shell-inner{gap:1.55rem;max-width:96rem;margin:0 auto;display:grid}.admin-hero,.admin-topbar,.admin-subnav,.admin-summary-card,.admin-section,.admin-item-card{border-radius:1.75rem;position:relative;overflow:hidden}.admin-hero:before,.admin-topbar:before,.admin-subnav:before,.admin-summary-card:before,.admin-section:before,.admin-item-card:before{content:"";pointer-events:none;opacity:.9;background:radial-gradient(circle at 100% 0,#44c79f1f,#0000 26%),linear-gradient(#ffffff06,#0000 22%);position:absolute;inset:0}.admin-hero:after,.admin-summary-card:after,.admin-section:after,.admin-item-card:after{content:"";background:linear-gradient(90deg, transparent, var(--accent-strong), transparent);height:1px;position:absolute;top:0;left:1.1rem;right:1.1rem}@supports (color:color-mix(in lab, red, red)){.admin-hero:after,.admin-summary-card:after,.admin-section:after,.admin-item-card:after{background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--accent-strong) 58%, transparent), transparent)}}.admin-hero:after,.admin-summary-card:after,.admin-section:after,.admin-item-card:after{pointer-events:none}.admin-hero>*,.admin-topbar>*,.admin-subnav>*,.admin-summary-card>*,.admin-section>*,.admin-item-card>*{z-index:1;position:relative}.admin-hero{border:1px solid var(--border-strong);padding:2rem 1.8rem 1.85rem}@supports (color:color-mix(in lab, red, red)){.admin-hero{border:1px solid color-mix(in srgb, var(--border-strong) 70%, var(--border))}}.admin-hero{background:linear-gradient(180deg, rgba(var(--surface-rgb), .96), rgba(var(--surface-rgb), .86)), radial-gradient(circle at 12% 18%, #44c79f29, transparent 24%), radial-gradient(circle at 90% 12%, #44c79f14, transparent 18%);box-shadow:0 30px 86px -44px var(--shadow-color), inset 0 1px 0 #ffffff14}.admin-topbar{border:1px solid var(--border-strong);justify-content:space-between;gap:1rem;padding:1.6rem 1.7rem;display:flex}@supports (color:color-mix(in lab, red, red)){.admin-topbar{border:1px solid color-mix(in srgb, var(--border-strong) 68%, var(--border))}}.admin-topbar{background:linear-gradient(180deg, rgba(var(--surface-rgb), .94), rgba(var(--surface-rgb), .84)), radial-gradient(circle at top left, #44c79f1a, transparent 34%);box-shadow:0 26px 72px -42px var(--shadow-color), inset 0 1px 0 #ffffff0d;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.admin-topbar-actions{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:.75rem;display:flex}.admin-topbar-brand{gap:.5rem;min-width:0;display:grid}.admin-topbar-brand-row{flex-wrap:wrap;align-items:center;gap:.85rem;display:flex}.admin-session-pill{border:1px solid var(--border-strong);border-radius:999px;align-items:center;gap:.7rem;min-height:2.65rem;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.admin-session-pill{border:1px solid color-mix(in srgb, var(--border-strong) 56%, var(--border))}}.admin-session-pill{background:linear-gradient(180deg, rgba(var(--surface-rgb), .84), rgba(var(--surface-rgb), .68)), radial-gradient(circle at top right, #44c79f1a, transparent 34%);color:var(--text-primary);box-shadow:0 12px 28px -24px var(--shadow-color), inset 0 1px 0 #ffffff0f;padding:.45rem .9rem}.admin-session-pill strong{font-size:.85rem;line-height:1}.admin-session-label,.admin-kicker,.admin-item-eyebrow{letter-spacing:.28em;text-transform:uppercase;color:var(--accent);font-size:.68rem}.admin-session-label{color:var(--text-muted);letter-spacing:.22em}.admin-title,.admin-section-title{color:var(--text-primary);font-family:Space Grotesk,IBM Plex Sans,sans-serif}.admin-title{text-shadow:0 12px 30px #00000038;margin-top:.6rem;font-size:clamp(2rem,4vw,3rem);line-height:1}.admin-copy,.admin-section-copy{max-width:52rem;color:var(--text-secondary);line-height:1.8}.admin-copy{margin-top:.85rem}.admin-subnav{border:1px solid var(--border-strong);flex-wrap:wrap;gap:1rem;padding:1rem 1.3rem;display:flex}@supports (color:color-mix(in lab, red, red)){.admin-subnav{border:1px solid color-mix(in srgb, var(--border-strong) 62%, var(--border))}}.admin-subnav{background:linear-gradient(180deg, rgba(var(--surface-rgb), .88), rgba(var(--surface-rgb), .72)), radial-gradient(circle at top left, #44c79f14, transparent 34%);box-shadow:0 20px 48px -40px var(--shadow-color), inset 0 1px 0 #ffffff0a;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.admin-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;display:grid}.admin-summary-card{border:1px solid var(--border-strong);padding:1.45rem}@supports (color:color-mix(in lab, red, red)){.admin-summary-card{border:1px solid color-mix(in srgb, var(--border-strong) 68%, var(--border))}}.admin-summary-card{background:linear-gradient(180deg, rgba(var(--surface-rgb), .95), rgba(var(--surface-rgb), .82)), radial-gradient(circle at top left, #44c79f1f, transparent 36%);box-shadow:0 24px 52px -38px var(--shadow-color), inset 0 1px 0 #ffffff12;transition:transform .18s,border-color .18s,box-shadow .18s}.admin-summary-card:hover{border-color:var(--border-strong);transform:translateY(-3px)}@supports (color:color-mix(in lab, red, red)){.admin-summary-card:hover{border-color:color-mix(in srgb, var(--border-strong) 84%, var(--border))}}.admin-summary-card:hover{box-shadow:0 32px 58px -38px var(--shadow-color), inset 0 1px 0 #ffffff14}.admin-summary-value{color:var(--text-primary);text-shadow:0 10px 28px #44c79f1f;margin-top:.8rem;font-family:Space Grotesk,IBM Plex Sans,sans-serif;font-size:clamp(1.5rem,3vw,2.25rem)}.admin-section{border:1px solid var(--border-strong);gap:1.25rem;padding:1.65rem;display:grid}@supports (color:color-mix(in lab, red, red)){.admin-section{border:1px solid color-mix(in srgb, var(--border-strong) 72%, var(--border))}}.admin-section{background:linear-gradient(180deg, rgba(var(--surface-rgb), .95), rgba(var(--surface-rgb), .82)), radial-gradient(circle at top left, #44c79f14, transparent 34%);box-shadow:0 28px 76px -44px var(--shadow-color), inset 0 1px 0 #ffffff12;transition:transform .2s,border-color .2s,box-shadow .2s,background-color .2s}.admin-section:hover{border-color:var(--border-strong);transform:translateY(-2px)}@supports (color:color-mix(in lab, red, red)){.admin-section:hover{border-color:color-mix(in srgb, var(--border-strong) 84%, var(--border))}}.admin-section:hover{box-shadow:0 34px 90px -48px var(--shadow-color), 0 0 0 1px #44c79f0f, inset 0 1px 0 #ffffff14}.admin-section-heading,.admin-item-header,.admin-actions-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.85rem;display:flex}.admin-section-title{margin-top:.45rem;font-size:clamp(1.4rem,3vw,2rem)}.admin-form-grid,.admin-stack{gap:1rem;display:grid}.admin-form-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.admin-form-columns-3{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-form-columns-4{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-item-card{border:1px solid var(--border-strong);gap:1rem;display:grid}@supports (color:color-mix(in lab, red, red)){.admin-item-card{border:1px solid color-mix(in srgb, var(--border-strong) 64%, var(--border))}}.admin-item-card{background:linear-gradient(180deg, rgba(var(--surface-rgb), .92), rgba(var(--surface-rgb), .76)), radial-gradient(circle at top left, #44c79f14, transparent 36%);box-shadow:0 22px 52px -40px var(--shadow-color), inset 0 1px 0 #ffffff0f;padding:1.35rem;transition:transform .18s,border-color .18s,box-shadow .18s}.admin-item-card:hover{border-color:var(--border-strong);transform:translateY(-2px)}@supports (color:color-mix(in lab, red, red)){.admin-item-card:hover{border-color:color-mix(in srgb, var(--border-strong) 82%, var(--border))}}.admin-item-card:hover{box-shadow:0 28px 60px -40px var(--shadow-color), 0 0 0 1px #44c79f0d, inset 0 1px 0 #ffffff12}.admin-item-title{color:var(--text-primary);margin-top:.35rem;font-family:Space Grotesk,IBM Plex Sans,sans-serif;font-size:1.35rem}.admin-form-grid>.contact-field,.admin-form-columns>.contact-field,.admin-item-card>.contact-field{border:1px solid var(--border-strong)}@supports (color:color-mix(in lab, red, red)){.admin-form-grid>.contact-field,.admin-form-columns>.contact-field,.admin-item-card>.contact-field{border:1px solid color-mix(in srgb, var(--border-strong) 58%, var(--border))}}.admin-form-grid>.contact-field,.admin-form-columns>.contact-field,.admin-item-card>.contact-field{background:linear-gradient(180deg, rgba(var(--surface-rgb), .78), rgba(var(--surface-rgb), .62));box-shadow:inset 0 1px 0 #ffffff0f, 0 10px 26px -24px var(--shadow-color);border-radius:1.35rem;padding:1rem 1rem 1.05rem;transition:transform .18s,border-color .18s,box-shadow .18s,background-color .18s}.admin-form-grid>.contact-field:hover,.admin-form-columns>.contact-field:hover,.admin-item-card>.contact-field:hover{border-color:var(--border-strong);transform:translateY(-1px)}@supports (color:color-mix(in lab, red, red)){.admin-form-grid>.contact-field:hover,.admin-form-columns>.contact-field:hover,.admin-item-card>.contact-field:hover{border-color:color-mix(in srgb, var(--border-strong) 78%, var(--border))}}.admin-form-grid>.contact-field:hover,.admin-form-columns>.contact-field:hover,.admin-item-card>.contact-field:hover{box-shadow:inset 0 1px 0 #ffffff12, 0 16px 30px -24px var(--shadow-color)}.admin-form-columns>.contact-field .field-input,.admin-form-grid>.contact-field .field-input,.admin-item-card>.contact-field .field-input{background:rgba(var(--surface-rgb), .92);border-color:var(--border-strong)}@supports (color:color-mix(in lab, red, red)){.admin-form-columns>.contact-field .field-input,.admin-form-grid>.contact-field .field-input,.admin-item-card>.contact-field .field-input{border-color:color-mix(in srgb, var(--border-strong) 74%, var(--border))}}.admin-form-columns>.contact-field .field-input,.admin-form-grid>.contact-field .field-input,.admin-item-card>.contact-field .field-input{color:var(--text-primary);transition:transform .16s,border-color .16s,box-shadow .16s,background-color .16s;box-shadow:0 1px #ffffff05,inset 0 1px #ffffff05}.admin-form-columns>.contact-field .field-input:hover,.admin-form-grid>.contact-field .field-input:hover,.admin-item-card>.contact-field .field-input:hover{border-color:var(--border-strong)}@supports (color:color-mix(in lab, red, red)){.admin-form-columns>.contact-field .field-input:hover,.admin-form-grid>.contact-field .field-input:hover,.admin-item-card>.contact-field .field-input:hover{border-color:color-mix(in srgb, var(--border-strong) 92%, var(--border))}}.admin-form-columns>.contact-field .field-input:hover,.admin-form-grid>.contact-field .field-input:hover,.admin-item-card>.contact-field .field-input:hover{background:rgba(var(--surface-rgb), .98);transform:translateY(-1px)}.admin-form-columns>.contact-field .field-input:focus,.admin-form-grid>.contact-field .field-input:focus,.admin-item-card>.contact-field .field-input:focus{background:rgba(var(--surface-rgb), 1);box-shadow:0 0 0 4px #2aa78524,inset 0 1px #ffffff0a}.admin-form-columns>.contact-field .contact-field-label,.admin-form-grid>.contact-field .contact-field-label,.admin-item-card>.contact-field .contact-field-label{color:var(--text-primary)}@supports (color:color-mix(in lab, red, red)){.admin-form-columns>.contact-field .contact-field-label,.admin-form-grid>.contact-field .contact-field-label,.admin-item-card>.contact-field .contact-field-label{color:color-mix(in srgb, var(--text-primary) 82%, var(--text-secondary))}}.admin-feedback{border-radius:999px;padding:.5rem .9rem;font-size:.8rem;font-weight:600}.admin-feedback-success{background:linear-gradient(135deg, var(--accent), var(--accent-strong))}@supports (color:color-mix(in lab, red, red)){.admin-feedback-success{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 28%, transparent), color-mix(in srgb, var(--accent-strong) 16%, transparent))}}.admin-feedback-success{color:var(--text-primary);border:1px solid var(--accent)}@supports (color:color-mix(in lab, red, red)){.admin-feedback-success{border:1px solid color-mix(in srgb, var(--accent) 45%, transparent)}}.admin-feedback-success{box-shadow:0 14px 26px -22px #44c79f6b}.admin-feedback-error{color:#ffcbc4;background:#be53531f;border:1px solid #d76e6e57}html[data-theme=light] .admin-feedback-error{color:#8e2f2f;background:#be53531a;border-color:#be53533d}.admin-textarea{min-height:10rem}.admin-textarea-sm{min-height:7rem}.admin-checkbox{border:1px solid var(--border-strong);align-items:center;gap:.75rem;width:fit-content;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.admin-checkbox{border:1px solid color-mix(in srgb, var(--border-strong) 58%, var(--border))}}.admin-checkbox{background:linear-gradient(180deg, rgba(var(--surface-rgb), .9), rgba(var(--surface-rgb), .76)), radial-gradient(circle at top right, #44c79f14, transparent 32%);color:var(--text-secondary);box-shadow:0 14px 28px -26px var(--shadow-color), inset 0 1px 0 #ffffff0a;border-radius:999px;padding:.8rem 1rem}.admin-checkbox input{accent-color:var(--accent)}.admin-asset-field{gap:.75rem;display:grid}.admin-setting-stack{gap:.6rem;display:grid}.admin-setting-note{color:var(--text-muted);margin:0;font-size:.84rem;line-height:1.6}.admin-inline-actions{flex-wrap:wrap;gap:.65rem;display:flex}.admin-upload-button{cursor:pointer}.admin-upload-button input{display:none}.admin-empty-state{text-align:center;place-items:center;min-height:8rem}.admin-actions-row{border-top:1px solid var(--border);padding-top:1rem}@supports (color:color-mix(in lab, red, red)){.admin-actions-row{border-top:1px solid color-mix(in srgb, var(--border) 92%, transparent)}}.admin-topbar .cta-secondary,.admin-topbar .cta-primary,.admin-section .cta-secondary,.admin-section .cta-primary,.admin-item-card .cta-secondary,.admin-item-card .cta-primary{justify-content:center;min-height:2.95rem}.admin-nav-action{white-space:nowrap}.admin-topbar-links{flex:auto;justify-content:center}.admin-topbar-links .top-nav-link{background-color:rgba(var(--surface-rgb), .28);border:1px solid #0000;border-radius:999px;align-items:center;min-height:2.55rem;padding:0 .95rem;transition:color .18s,border-color .18s,background-color .18s,transform .18s,box-shadow .18s;display:inline-flex}.admin-topbar-links .top-nav-link:hover{border-color:var(--border-strong);transform:translateY(-1px)}@supports (color:color-mix(in lab, red, red)){.admin-topbar-links .top-nav-link:hover{border-color:color-mix(in srgb, var(--border-strong) 72%, transparent)}}.admin-topbar-links .top-nav-link:hover{background:linear-gradient(135deg, var(--accent), rgba(var(--surface-rgb), .76))}@supports (color:color-mix(in lab, red, red)){.admin-topbar-links .top-nav-link:hover{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 10%, transparent), rgba(var(--surface-rgb), .76))}}.admin-topbar-links .top-nav-link:hover{box-shadow:0 12px 24px -22px var(--shadow-color)}.admin-subnav .top-nav-link{background:rgba(var(--surface-rgb), .52);min-height:2.5rem;color:var(--text-secondary);border:1px solid #0000;border-radius:999px;align-items:center;padding:0 .95rem;transition:color .16s,border-color .16s,background-color .16s,transform .16s;display:inline-flex}.admin-subnav .top-nav-link:hover{border-color:var(--border-strong)}@supports (color:color-mix(in lab, red, red)){.admin-subnav .top-nav-link:hover{border-color:color-mix(in srgb, var(--border-strong) 54%, transparent)}}.admin-subnav .top-nav-link:hover{background:linear-gradient(135deg, #44c79f1a, rgba(var(--surface-rgb), .78));color:var(--text-primary);transform:translateY(-1px)}.admin-item-header{border-bottom:1px solid var(--border);padding-bottom:.2rem}@supports (color:color-mix(in lab, red, red)){.admin-item-header{border-bottom:1px solid color-mix(in srgb, var(--border) 88%, transparent)}}.admin-section-heading{border-bottom:1px solid var(--border);padding-bottom:.75rem}@supports (color:color-mix(in lab, red, red)){.admin-section-heading{border-bottom:1px solid color-mix(in srgb, var(--border) 92%, transparent)}}.admin-topbar .cta-secondary,.admin-section .cta-secondary,.admin-item-card .cta-secondary{background:rgba(var(--surface-rgb), .82);border-color:var(--border-strong)}@supports (color:color-mix(in lab, red, red)){.admin-topbar .cta-secondary,.admin-section .cta-secondary,.admin-item-card .cta-secondary{border-color:color-mix(in srgb, var(--border-strong) 64%, var(--border))}}.admin-topbar .cta-secondary,.admin-section .cta-secondary,.admin-item-card .cta-secondary{color:var(--text-primary);box-shadow:inset 0 1px 0 #ffffff0d, 0 16px 30px -24px var(--shadow-color)}.admin-topbar .cta-secondary:hover,.admin-section .cta-secondary:hover,.admin-item-card .cta-secondary:hover{border-color:var(--border-strong)}@supports (color:color-mix(in lab, red, red)){.admin-topbar .cta-secondary:hover,.admin-section .cta-secondary:hover,.admin-item-card .cta-secondary:hover{border-color:color-mix(in srgb, var(--border-strong) 84%, var(--border))}}.admin-topbar .cta-secondary:hover,.admin-section .cta-secondary:hover,.admin-item-card .cta-secondary:hover{background:rgba(var(--surface-rgb), .96)}.admin-topbar .cta-primary,.admin-section .cta-primary,.admin-item-card .cta-primary{color:#fff;text-shadow:0 1px #0000001f;box-shadow:0 18px 34px -24px #2aa7858c}.admin-topbar .cta-primary:hover,.admin-section .cta-primary:hover,.admin-item-card .cta-primary:hover{box-shadow:0 22px 40px -24px #2aa7859e}.admin-topbar .cta-primary:disabled,.admin-section .cta-primary:disabled,.admin-item-card .cta-primary:disabled{opacity:1;color:#fff;border:1px solid var(--border-strong)}@supports (color:color-mix(in lab, red, red)){.admin-topbar .cta-primary:disabled,.admin-section .cta-primary:disabled,.admin-item-card .cta-primary:disabled{border:1px solid color-mix(in srgb, var(--border-strong) 56%, var(--border))}}.admin-topbar .cta-primary:disabled,.admin-section .cta-primary:disabled,.admin-item-card .cta-primary:disabled{background:linear-gradient(135deg,#185545eb,#247560eb);box-shadow:inset 0 1px #ffffff14,0 12px 24px -22px #0000008c}html[data-theme=light] .admin-shell{background:radial-gradient(circle at 0 0,#146f581f,#0000 28%),radial-gradient(circle at 92% 10%,#8ea39a29,#0000 22%),linear-gradient(#edf3f0f5,#dfe8e4eb)}html[data-theme=light] .admin-topbar,html[data-theme=light] .admin-hero,html[data-theme=light] .admin-summary-card,html[data-theme=light] .admin-section,html[data-theme=light] .admin-item-card,html[data-theme=light] .admin-form-grid>.contact-field,html[data-theme=light] .admin-form-columns>.contact-field,html[data-theme=light] .admin-item-card>.contact-field,html[data-theme=light] .admin-session-pill,html[data-theme=light] .admin-checkbox,html[data-theme=light] .admin-topbar .cta-secondary,html[data-theme=light] .admin-section .cta-secondary,html[data-theme=light] .admin-item-card .cta-secondary,html[data-theme=light] .admin-topbar-links .top-nav-link,html[data-theme=light] .admin-subnav .top-nav-link{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}html[data-theme=light] .admin-topbar,html[data-theme=light] .admin-hero,html[data-theme=light] .admin-summary-card,html[data-theme=light] .admin-section,html[data-theme=light] .admin-item-card{background:linear-gradient(#fffffff7,#f4f9f6eb),radial-gradient(circle at 0 0,#146f5814,#0000 34%);border-color:#146f582e;box-shadow:0 24px 56px -38px #10202624,inset 0 1px #ffffffbd}html[data-theme=light] .admin-topbar:before,html[data-theme=light] .admin-hero:before,html[data-theme=light] .admin-summary-card:before,html[data-theme=light] .admin-section:before,html[data-theme=light] .admin-item-card:before{background:radial-gradient(circle at 100% 0,#146f581a,#0000 26%),linear-gradient(#ffffff6b,#0000 24%)}html[data-theme=light] .admin-hero:after,html[data-theme=light] .admin-summary-card:after,html[data-theme=light] .admin-section:after,html[data-theme=light] .admin-item-card:after{background:linear-gradient(90deg,#0000,#1d927157,#0000)}html[data-theme=light] .admin-form-grid>.contact-field,html[data-theme=light] .admin-form-columns>.contact-field,html[data-theme=light] .admin-item-card>.contact-field{background:linear-gradient(#fcfefdf5,#f2f8f5e6);border-color:#146f5824;box-shadow:inset 0 1px #ffffffd1,0 14px 28px -28px #1020261f}html[data-theme=light] .admin-form-columns>.contact-field .field-input,html[data-theme=light] .admin-form-grid>.contact-field .field-input,html[data-theme=light] .admin-item-card>.contact-field .field-input{background:#f7fbf9;border-color:#146f5824;box-shadow:inset 0 1px #ffffffd1,0 1px #ffffff73}html[data-theme=light] .admin-form-columns>.contact-field .field-input:hover,html[data-theme=light] .admin-form-grid>.contact-field .field-input:hover,html[data-theme=light] .admin-item-card>.contact-field .field-input:hover,html[data-theme=light] .admin-form-columns>.contact-field .field-input:focus,html[data-theme=light] .admin-form-grid>.contact-field .field-input:focus,html[data-theme=light] .admin-item-card>.contact-field .field-input:focus{background:#fff}html[data-theme=light] .admin-session-pill,html[data-theme=light] .admin-checkbox,html[data-theme=light] .admin-topbar .cta-secondary,html[data-theme=light] .admin-section .cta-secondary,html[data-theme=light] .admin-item-card .cta-secondary,html[data-theme=light] .admin-topbar-links .top-nav-link,html[data-theme=light] .admin-subnav .top-nav-link{color:#183038;background:linear-gradient(#fffffff0,#f1f7f4e0);border-color:#146f5829;box-shadow:inset 0 1px #ffffffd1,0 12px 24px -24px #1020261f}html[data-theme=light] .admin-topbar-links .top-nav-link:hover,html[data-theme=light] .admin-subnav .top-nav-link:hover,html[data-theme=light] .admin-topbar .cta-secondary:hover,html[data-theme=light] .admin-section .cta-secondary:hover,html[data-theme=light] .admin-item-card .cta-secondary:hover{color:#102026;background:linear-gradient(#fffffffa,#e9f4eff5);border-color:#146f5842}@media (width<=1024px){.admin-summary-grid,.admin-form-columns,.admin-form-columns-3,.admin-form-columns-4{grid-template-columns:1fr 1fr}}@media (width<=720px){.admin-shell{padding-inline:.75rem}.admin-topbar,.admin-section{padding:1.1rem}.admin-summary-grid,.admin-form-columns,.admin-form-columns-3,.admin-form-columns-4{grid-template-columns:1fr}.admin-topbar-actions{flex-wrap:wrap;justify-content:flex-start}}.legacy-portfolio .contact-form-submit{min-width:13rem}.alternate-portfolio .contact-form-shell{box-shadow:0 24px 80px -36px var(--shadow-color), inset 0 1px 0 #ffffff08}@media (width<=768px){html{scroll-padding-top:5.55rem}.contact-form-split{grid-template-columns:1fr}.contact-form-footer{flex-direction:column;align-items:stretch}.contact-form-submit{width:100%}.admin-modal-actions{flex-direction:column;align-items:stretch}.top-nav-main{padding-top:8.25rem}.top-nav-main>[id],.legacy-main>[id]{scroll-margin-top:5.55rem}#experiencia{scroll-margin-top:5.35rem}#habilidades{scroll-margin-top:5.3rem}#proyectos{scroll-margin-top:4.38rem}#contacto{scroll-margin-top:5.3rem}.timeline-card:before{display:none}.legacy-navbar{gap:.75rem}.presentation-toggle{width:9.9rem}.top-nav-actions{gap:.55rem}.legacy-main{gap:2rem}.legacy-hero h1{font-size:2.4rem}.legacy-hero-copy{font-size:1rem}.legacy-section{margin-bottom:5rem}.legacy-section-title{font-size:2.25rem}}@media (width<=1024px){.top-nav{gap:.75rem}.top-nav-main{padding-top:7.6rem}.top-nav-main>[id],.legacy-main>[id]{scroll-margin-top:4.65rem}#experiencia{scroll-margin-top:4.45rem}#habilidades{scroll-margin-top:4.4rem}#proyectos{scroll-margin-top:3.5rem}#contacto{scroll-margin-top:4.4rem}.top-nav-actions{max-width:100%}.presentation-toggle{width:9.9rem}.presentation-toggle-label{letter-spacing:.16em;width:4.4rem}.presentation-toggle-label-full{display:none}.presentation-toggle-label-short{display:inline}}@media (width<=560px){.presentation-toggle{gap:.65rem;width:8.4rem;padding-left:.8rem}.presentation-toggle-label{letter-spacing:.16em;width:4rem}.presentation-toggle-label-full{display:none}.presentation-toggle-label-short{display:inline}}@media (width>=640px){.legacy-section-title{font-size:3rem}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-leading{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@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}
