@font-face{font-family:Inter;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/inter-cyrillic-ext.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/inter-cyrillic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/inter-greek-ext.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/inter-greek.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/inter-vietnamese.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/inter-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/inter-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:normal;font-weight:600 700;font-display:swap;src:url(/fonts/playfair-display-cyrillic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Playfair Display;font-style:normal;font-weight:600 700;font-display:swap;src:url(/fonts/playfair-display-vietnamese.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:normal;font-weight:600 700;font-display:swap;src:url(/fonts/playfair-display-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:normal;font-weight:600 700;font-display:swap;src:url(/fonts/playfair-display-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,*:before,*:after{box-sizing:border-box}:root{--scarlet: #ba0c2f;--scarlet-text: #ba0c2f;--scarlet-dark: #8f0924;--warm-white: #faf9f7;--near-black: #1a1a1a;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--font-sans: "Inter", system-ui, -apple-system, sans-serif;--font-serif: "Playfair Display", Georgia, serif;--surface: #ffffff;--surface-alt: #f3f4f6;--border: #f3f4f6;--border-tag: #e5e7eb;--buckeye-green: #2d5a27;--buckeye-brown: #5c3010;--buckeye-tan: #c49060}@media(prefers-color-scheme:dark){html:not([data-theme=light]) .skill-icon,html:not([data-theme=light]) .skill-icon *{fill:#fff!important}}@media(prefers-color-scheme:dark){:root{--warm-white: #141414;--near-black: #f0f0f0;--gray-400: #686868;--gray-500: #909090;--gray-600: #c8c8c8;--gray-700: #e0e0e0;--surface: #1f1f1f;--surface-alt: #2a2a2a;--border: #2e2e2e;--border-tag: #3d3d3d;--buckeye-green: #4e8c46;--scarlet-text: #ff5566}}[data-theme=dark]{--warm-white: #141414;--near-black: #f0f0f0;--gray-400: #686868;--gray-500: #909090;--gray-600: #c8c8c8;--gray-700: #e0e0e0;--surface: #1f1f1f;--surface-alt: #2a2a2a;--border: #2e2e2e;--border-tag: #3d3d3d;--buckeye-green: #4e8c46;--scarlet-text: #ff5566}[data-theme=dark] .skill-icon,[data-theme=dark] .skill-icon *{fill:#fff!important}[data-theme=light]{--warm-white: #faf9f7;--near-black: #1a1a1a;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--surface: #ffffff;--surface-alt: #f3f4f6;--border: #f3f4f6;--border-tag: #e5e7eb;--buckeye-green: #2d5a27;--buckeye-brown: #5c3010;--buckeye-tan: #c49060;--scarlet-text: #ba0c2f}html{scroll-behavior:smooth}body{margin:0;background-color:var(--warm-white);color:var(--near-black);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--scarlet-text);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,p{margin:0}ul{margin:0;padding:0}.page-nav{position:fixed;top:1rem;left:1rem;z-index:50;display:flex;gap:.75rem;align-items:center;background-color:var(--surface);border:1px solid var(--border-tag);border-radius:9999px;padding:.4375rem .875rem;box-shadow:0 1px 3px #0000001a}.page-nav-link{display:inline-block;font-size:1rem;font-weight:500;color:var(--gray-500);text-decoration:none;transition:color .15s}.page-nav-link:hover{color:var(--scarlet-text);text-decoration:none}.page-nav-link[aria-current=page]{color:var(--scarlet-text);font-weight:600;text-decoration:underline}.language-toggle{position:fixed;top:1rem;right:3.75rem;z-index:50;display:flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:50%;border:1px solid var(--border-tag);background-color:var(--surface);color:var(--gray-500);cursor:pointer;box-shadow:0 1px 3px #0000001a;transition:background-color .15s,color .15s,border-color .15s}.language-toggle:hover{color:var(--scarlet-text);border-color:var(--scarlet-text)}.language-toggle:focus-visible{outline:2px solid var(--scarlet);outline-offset:2px}.language-toggle svg{width:1rem;height:1rem}.language-toggle-wrapper{position:fixed;top:1rem;right:3.75rem;z-index:50}.language-toggle-wrapper .language-toggle{position:static;top:auto;right:auto;z-index:auto}.language-menu{background-color:var(--surface);border:1px solid var(--border-tag);border-radius:.5rem;box-shadow:0 4px 12px #0000001f;list-style:none;margin:0;max-height:calc(2 * 100vh / 3);min-width:9rem;overflow-y:auto;overscroll-behavior:contain;padding:.25rem;position:absolute;right:1.5rem;top:calc(100% + .375rem);width:210px}.language-menu-item{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;padding:.5rem .75rem;text-align:left;font-size:.875rem;color:var(--gray-700);background:none;border:none;border-radius:.375rem;cursor:pointer;transition:background-color .1s,color .1s}.language-menu-item:hover{background-color:var(--surface-alt);color:var(--scarlet-text)}.language-menu-item--active{color:var(--scarlet-text);font-weight:600}.flag-spinner{flex-shrink:0;margin-right:8px;width:1em;height:1em;border-radius:50%;border:2px solid var(--border-tag);border-top-color:var(--scarlet);animation:ai-spin .6s linear infinite}.theme-toggle{position:fixed;top:1rem;right:1rem;z-index:50;display:flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:50%;border:1px solid var(--border-tag);background-color:var(--surface);color:var(--gray-500);cursor:pointer;box-shadow:0 1px 3px #0000001a;transition:background-color .15s,color .15s,border-color .15s}.theme-toggle:hover{color:var(--scarlet-text);border-color:var(--scarlet-text)}.theme-toggle:focus-visible{outline:2px solid var(--scarlet);outline-offset:2px}.theme-toggle svg{width:1rem;height:1rem}.resume-page{min-height:100vh;background-color:var(--warm-white)}.resume-container{max-width:48rem;margin:0 auto;padding:3rem 1.5rem}@media(min-width:1024px){.resume-container{padding:4rem 1.5rem}}.resume-header{margin-bottom:3rem}.resume-header-top{display:grid;gap:1.25rem;align-items:center}@media(min-width:640px){.resume-header-top{grid-template-columns:minmax(0,1fr) auto;column-gap:2rem}}.resume-header-intro{min-width:0}.resume-name{font-family:var(--font-serif);font-size:3rem;font-weight:700;letter-spacing:-.025em;color:var(--near-black)}@media(min-width:1024px){.resume-name{font-size:3.75rem}}.resume-headline{margin-top:.5rem;font-size:1.125rem;font-weight:500;color:var(--scarlet-text)}.resume-profile{width:clamp(8rem,24vw,12rem);aspect-ratio:1;padding:.35rem;border-radius:1.5rem;background:linear-gradient(145deg,#ba0c2f24,#2d5a272e);box-shadow:0 18px 40px #1a1a1a1f}.resume-profile-image{display:block;width:100%;height:100%;object-fit:cover;border-radius:1.2rem;background-color:var(--surface-alt)}.resume-contacts{display:flex;flex-wrap:wrap;column-gap:1.25rem;row-gap:.5rem;margin-top:1.25rem;list-style:none}.resume-contact{display:flex;align-items:center;gap:.375rem;font-size:.875rem;color:var(--gray-500);text-decoration:none}.resume-contact:hover{color:var(--scarlet-text);text-decoration:none}.hero-ctas{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.75rem}.cta-link{align-items:center;border:1px solid var(--buckeye-green);border-radius:9999px;color:var(--buckeye-green);display:inline-flex;font-weight:500;gap:.375rem;padding:.2rem .6rem;text-decoration:none;transition:background-color .15s,color .15s}.cta-link:hover{background-color:var(--buckeye-green);color:#fff!important}.cta-link--secondary{border-color:var(--gray-400);color:var(--gray-500)}.cta-link--secondary:hover{background-color:var(--gray-500);border-color:var(--gray-500)}.icon{display:block;width:1rem;height:1rem;flex-shrink:0}.resume-availability{margin-top:.75rem;font-size:.75rem;color:var(--buckeye-green)}.resume-section{margin-bottom:3rem}.resume-section--projects{margin-bottom:4rem}.resume-section--paragraph{color:var(--gray-700);line-height:1.7}.section-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.section-title{flex-shrink:0;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--scarlet-text)}.section-line{height:1px;flex:1;background-color:#2d5a2740}.skills-list{display:flex;flex-wrap:wrap;gap:.5rem}.skill-tag{border-radius:.375rem;border:1px solid var(--border-tag);background-color:var(--surface);padding:.25rem .625rem;font-size:1rem;font-weight:500;color:var(--gray-600);box-shadow:0 1px 2px #0000000d;display:inline-flex;align-items:center;gap:.375rem}.skill-icon,.skill-modal-icon{width:1.25rem;height:1.25rem;flex-shrink:0}.interests-list{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.25rem}.interest-tag{border-radius:.375rem;border:1px solid var(--border-tag);background-color:var(--surface);padding:.25rem .625rem;font-weight:500;color:var(--gray-600);box-shadow:0 1px 2px #0000000d;display:inline-flex;align-items:center;gap:.375rem}html .skill-modal-icon,html .skill-modal-icon *{fill:#fff!important}html .skill-icon .skill-icon-surface,html .skill-icon .skill-icon-surface *{fill:var(--surface)!important}html .skill-modal-icon .skill-icon-surface,html .skill-modal-icon .skill-icon-surface *,html .skill-tag--clickable:hover .skill-icon .skill-icon-surface,html .skill-tag--clickable:hover .skill-icon .skill-icon-surface *{fill:var(--scarlet)!important}.experience-list{display:flex;flex-direction:column;gap:2.5rem}.company-header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;column-gap:1rem;row-gap:.25rem}.company-name{font-size:1rem;font-weight:600;color:var(--near-black)}.company-location{font-size:.875rem;color:var(--gray-500)}.roles{margin-top:.25rem;display:flex;flex-direction:column;gap:.125rem}.role{display:flex;flex-wrap:wrap;align-items:baseline;gap:.75rem}.role-title{font-size:.875rem;font-weight:500;color:var(--scarlet-text)}.role-dates{font-size:.75rem;color:var(--gray-500)}.bullet-list{margin-top:.75rem;padding-left:1rem;list-style:none;display:flex;flex-direction:column;gap:.375rem}.bullet-item{position:relative;padding-left:.75rem;font-size:.875rem;line-height:1.6;color:var(--gray-600)}.bullet-item:before{content:"";position:absolute;left:0;top:.5rem;width:.25rem;height:.25rem;border-radius:50%;background-color:#5c30108c}.education-list{display:flex;flex-direction:column;gap:1rem}.education-item{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;column-gap:1rem;row-gap:.25rem}.degree-name{font-weight:500;color:var(--near-black)}.degree-school{margin-left:.5rem;font-size:.875rem;color:var(--gray-500)}.degree-dates{font-size:.875rem;color:var(--gray-500)}.projects-list{display:flex;flex-direction:column;gap:1.5rem}.project-card{border-radius:.75rem;border:1px solid var(--border);background-color:var(--surface);padding:1.25rem;box-shadow:0 1px 2px #0000000d}.project-header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem}.project-name{font-size:1rem;font-weight:600;color:var(--near-black)}.project-url{font-size:.875rem;color:var(--scarlet-text)}.project-url:hover{color:var(--scarlet-dark)}.project-description{margin-top:.5rem;font-size:.875rem;line-height:1.6;color:var(--gray-600)}.project-section{margin-top:.75rem;border-radius:.625rem;border:1px solid var(--border);background-color:var(--surface-alt);padding:.625rem .75rem}.project-section-label{display:inline-flex;align-items:center;border-radius:999px;padding:.125rem .5rem;font-size:.675rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.project-section-features .project-section-label,.project-section-architecture .project-section-label{background-color:#4a2608;color:var(--buckeye-tan)}@media(prefers-color-scheme:dark){html:not([data-theme=light]) .project-section-features .project-section-label,html:not([data-theme=light]) .project-section-architecture .project-section-label{background-color:#5c30108c}}[data-theme=dark] .project-section-features .project-section-label,[data-theme=dark] .project-section-architecture .project-section-label{background-color:#5c30108c}.project-bullets{margin:.45rem 0 0;padding:0;list-style:none;display:grid;gap:.3rem}.project-bullets li{position:relative;padding-left:.95rem;font-size:.875rem;line-height:1.45;color:var(--near-black)}.project-bullets li:before{content:"";position:absolute;left:0;top:.56em;width:.4rem;height:.4rem;border-radius:999px;background-color:#a92f2ba6}.tech-stack{display:flex;flex-wrap:wrap;gap:.375rem;margin-top:.75rem}.tech-tag{border-radius:.25rem;background-color:#c490601f;padding:.125rem .5rem;font-size:.75rem;font-weight:500;color:var(--gray-600)}.resume-footer{border-top:1px solid var(--border);padding-top:1.5rem;padding-bottom:2.25rem;text-align:center;font-size:.75rem;color:var(--gray-500)}.ai-fab{position:fixed;bottom:1.5rem;right:1.5rem;z-index:50;display:flex;align-items:center;justify-content:center;width:3.5rem;height:3.5rem;border-radius:50%;background-color:var(--scarlet);color:#fff;border:none;cursor:pointer;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;transition:transform .15s,background-color .15s}.ai-fab:hover{transform:scale(1.05);background-color:var(--scarlet-dark)}.ai-fab:focus-visible{outline:2px solid var(--scarlet);outline-offset:2px}.ai-fab svg{width:1.5rem;height:1.5rem}.ai-panel{position:fixed;right:1.5rem;bottom:5.5rem;z-index:40;width:20rem;display:flex;flex-direction:column;overflow:hidden;border-radius:1rem;border:1px solid var(--border);background-color:var(--surface);box-shadow:0 25px 50px -12px #00000040}.ai-panel-header{display:flex;align-items:flex-start;justify-content:space-between;background-color:var(--scarlet);padding:1rem}.ai-panel-title{font-size:1rem;font-weight:600;color:#fff}.ai-panel-status{margin-top:.125rem;font-size:.75rem;color:#ffffffb3}.ai-panel-close{margin-left:1rem;margin-top:.125rem;background:none;border:none;cursor:pointer;color:#ffffffb3;padding:0;display:flex;transition:color .15s}.ai-panel-close:hover{color:#fff}.ai-panel-close svg{width:1.25rem;height:1.25rem}.ai-messages{max-height:20rem;flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.75rem}.ai-spinner-wrap{display:flex;justify-content:center;padding:1rem 0}.ai-spinner{width:1.5rem;height:1.5rem;border-radius:50%;border:2px solid var(--scarlet);border-top-color:transparent;animation:ai-spin .6s linear infinite}@keyframes ai-spin{to{transform:rotate(360deg)}}.ai-empty{padding:.5rem 0;text-align:center;font-size:.875rem;color:var(--gray-400)}.ai-message{display:flex}.ai-message--user{justify-content:flex-end}.ai-message--assistant{justify-content:flex-start}.ai-bubble{max-width:85%;border-radius:1rem;padding:.5rem .75rem;font-size:.875rem;line-height:1.5}.ai-message--user .ai-bubble{background-color:var(--scarlet);color:#fff;border-bottom-right-radius:.125rem}.ai-message--assistant .ai-bubble{background-color:var(--surface-alt);color:var(--near-black);border-bottom-left-radius:.125rem}.ai-speaking{display:flex;align-items:center;gap:.5rem;border-top:1px solid var(--border);background-color:var(--surface-alt);padding:.5rem 1rem}.ai-dots{display:flex;gap:.125rem}.ai-dot{width:.25rem;height:.75rem;border-radius:9999px;background-color:var(--scarlet);animation:ai-bounce .6s infinite}.ai-dot:nth-child(2){animation-delay:.1s}.ai-dot:nth-child(3){animation-delay:.2s}@keyframes ai-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.ai-speaking-label{font-size:.75rem;color:var(--gray-500)}.ai-text-input{display:flex;align-items:flex-end;gap:.5rem;border-top:1px solid var(--border);padding:.625rem .75rem}.ai-text-input__field{flex:1;resize:none;border:1px solid var(--border-tag);border-radius:.625rem;background-color:var(--surface-alt);color:var(--near-black);font-family:var(--font-sans);font-size:.875rem;line-height:1.5;padding:.4rem .625rem;outline:none;transition:border-color .15s;overflow-y:auto;max-height:6rem}.ai-text-input__field::placeholder{color:var(--gray-400)}.ai-text-input__field:focus{border-color:var(--scarlet)}.ai-text-input__field:disabled{opacity:.5;cursor:not-allowed}.ai-text-input__send{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:50%;border:none;background-color:var(--scarlet);color:#fff;cursor:pointer;transition:background-color .15s,transform .1s}.ai-text-input__send:hover:not(:disabled){background-color:var(--scarlet-dark);transform:scale(1.05)}.ai-text-input__send:disabled{opacity:.4;cursor:not-allowed}.ai-text-input__send svg{width:.875rem;height:.875rem}.analytics-banner{position:fixed;bottom:0;left:0;right:0;z-index:200;display:flex;align-items:center;justify-content:center;gap:1rem;padding:.75rem 1.5rem;background-color:var(--surface-alt);border-top:1px solid var(--border-tag);box-shadow:0 -4px 12px #00000014;animation:banner-in .25s ease}@keyframes banner-in{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:translateY(0)}}.analytics-banner__message{margin:0;font-size:.8125rem;color:var(--gray-600);line-height:1.5;text-align:center}.analytics-banner__message a{color:var(--scarlet-text);text-decoration:underline;text-underline-offset:2px}.analytics-banner__message a:hover{color:var(--scarlet-dark)}.analytics-banner__dismiss{flex-shrink:0;padding:.375rem .875rem;border-radius:.375rem;border:1px solid var(--border-tag);background-color:var(--surface);color:var(--near-black);font-size:.8125rem;font-weight:500;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s}.analytics-banner__dismiss:hover{background-color:var(--scarlet);border-color:var(--scarlet);color:#fff}.error-snackbar{position:fixed;bottom:1.5rem;left:1.5rem;z-index:200;display:flex;align-items:center;gap:.625rem;max-width:22rem;border-radius:.5rem;border:1px solid var(--scarlet-dark);background-color:var(--scarlet);padding:.75rem .875rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;animation:snackbar-in .2s ease}@keyframes snackbar-in{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:translateY(0)}}.error-snackbar__icon{flex-shrink:0;width:1.125rem;height:1.125rem;color:#fff}.error-snackbar__message{flex:1;font-size:.875rem;line-height:1.4;color:#fff}.error-snackbar__close{flex-shrink:0;display:flex;align-items:center;justify-content:center;margin-left:.25rem;background:none;border:none;cursor:pointer;padding:0;color:#ffffffb3;transition:color .15s}.error-snackbar__close:hover{color:#fff}.error-snackbar__close svg{width:1rem;height:1rem}.skill-tag--clickable{cursor:pointer;transition:background-color .15s,border-color .15s,color .15s}.skill-tag--clickable:hover{background-color:var(--scarlet);border-color:var(--scarlet);color:#fff}.skill-tag--clickable:hover .skill-icon,.skill-tag--clickable:hover .skill-icon *{fill:#fff}.skill-modal-backdrop{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;background-color:#00000073;animation:backdrop-in .2s ease}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}.skill-modal{display:flex;flex-direction:column;width:min(90vw,860px);height:min(80vh,620px);border-radius:.75rem;overflow:hidden;background-color:var(--surface);box-shadow:0 25px 50px -12px #00000059;animation:modal-in .2s ease}@keyframes modal-in{0%{opacity:0;transform:scale(.94) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.skill-modal-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background-color:var(--scarlet);flex-shrink:0}.skill-modal-title{font-size:.9375rem;font-weight:600;color:#fff;display:inline-flex;align-items:center;gap:.5rem}.skill-modal-actions{display:flex;align-items:center;gap:.75rem}.skill-modal-open{font-size:.8125rem;font-weight:500;color:#ffffffd9;text-decoration:none;transition:color .15s}.skill-modal-open:hover{color:#fff;text-decoration:none}.skill-modal-close{background:none;border:none;cursor:pointer;font-size:1rem;line-height:1;color:#ffffffd9;padding:0;transition:color .15s}.skill-modal-close:hover{color:#fff}.skill-modal-frame{flex:1;width:100%;border:none;display:block}
