.hero-actions{flex-wrap:wrap}.profile-actions{display:flex;align-items:center}.social-links,.social-preview{z-index:20}.social-card-content{width:min(18rem,calc(100vw - 2rem))}.social-card-github{width:max-content}.social-card-content p{min-width:0}.project-link{transition:text-decoration-color .15s}.project-link:hover{text-decoration-color:var(--fg)}.project-link:focus-visible{outline:2px solid var(--fg);outline-offset:4px;border-radius:2px}.project-preview{position:fixed;z-index:60;overflow:hidden;border-radius:8px;background:var(--surface);color:var(--fg);box-shadow:0 0 0 1px var(--border),0 16px 36px #0002;opacity:0;transform:translateY(5px) scale(.97);transform-origin:center bottom;pointer-events:none;transition:opacity .18s ease-out,transform .18s ease-out}.project-preview[data-placement=bottom]{transform-origin:center top;transform:translateY(-5px) scale(.97)}.project-preview.is-open{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.project-preview.is-switching{transition:left .4s var(--ease-pop),top .4s var(--ease-pop),width .4s var(--ease-pop),height .4s var(--ease-pop),opacity .18s ease-out,transform .18s ease-out}.project-preview-content{position:absolute;left:0;top:0;width:min(20rem,calc(100vw - 2rem));max-height:calc(100dvh - 16px);overflow:auto}.project-preview-image{width:100%;overflow:hidden;background:#fff;border-bottom:1px solid var(--border)}.project-preview-image img{display:block;width:100%;height:100%;object-fit:contain}.project-preview-fallback{display:flex;align-items:center;justify-content:center;height:100%;color:#292524;font-size:1.25rem}.project-preview-details{padding:.75rem}.project-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:.5rem;line-height:1.5}.project-preview-heading strong{font-size:.875rem;font-weight:600}.project-preview-heading>span{display:flex;align-items:center;gap:.25rem;font-size:.75rem;color:var(--muted)}.project-preview-heading svg{width:.875rem;height:.875rem}.project-preview-details p{margin-top:.25rem;font-size:.875rem;line-height:1.5;color:var(--muted)}.icon-control{position:relative;display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;flex:0 0 2.5rem;padding:.5rem;border-radius:.375rem;color:var(--muted);cursor:pointer;transition:color .15s,background-color .15s}.icon-control svg{width:1.5rem;height:1.5rem;stroke-width:1.5}.icon-control:hover{color:var(--fg)}.icon-control:focus-visible,.social-links a:focus-visible{outline:2px solid var(--fg);outline-offset:2px}.icon-control:disabled{opacity:.35;cursor:default}.icon-tooltip{position:absolute;bottom:calc(100% + .5rem);left:50%;transform:translate(-50%,.25rem);width:max-content;padding:.3rem .55rem;border-radius:.375rem;background:var(--fg);color:var(--bg);font-size:.75rem;line-height:1.4;opacity:0;pointer-events:none;transition:opacity .15s,transform .15s;z-index:30}.icon-control:hover .icon-tooltip,.icon-control:focus-visible .icon-tooltip{opacity:1;transform:translate(-50%)}.resume-dialog{position:fixed;inset:0;margin:auto;width:min(860px,calc(100vw - 2rem));height:min(1000px,90dvh);max-width:none;max-height:none;padding:0;border:1px solid var(--border);border-radius:8px;overflow:hidden;color:var(--fg);background:var(--surface);box-shadow:0 25px 60px #0006}.resume-dialog[open]{display:flex;flex-direction:column;animation:resume-enter .18s ease-out}.resume-dialog::backdrop{background:#000a}.resume-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.75rem 1rem;border-bottom:1px solid var(--border);flex-shrink:0}.resume-heading{min-width:0}.resume-heading h2{font-size:1rem;font-weight:600}.resume-heading p{font-size:.75rem;color:var(--muted)}.resume-tools{display:flex;flex-shrink:0}.resume-tools .icon-tooltip{top:calc(100% + .5rem);bottom:auto}.resume-tools .icon-control:last-child .icon-tooltip{left:auto;right:0;transform:translateY(.25rem)}.resume-tools .icon-control:last-child:hover .icon-tooltip{transform:translateY(0)}.resume-zoom{display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--border);flex-shrink:0}.resume-zoom output{width:4rem;text-align:center;font-size:.875rem;font-variant-numeric:tabular-nums}.resume-document{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;background:var(--bg)}.resume-pages{width:100%;padding:1rem}.resume-page{width:max-content;margin:0 auto 1rem;background:#fff;box-shadow:0 2px 8px #0002}.resume-page:last-child{margin-bottom:0}.resume-page canvas{display:block}.resume-state{padding:3rem 1rem;text-align:center;color:var(--muted)}.resume-state a{text-decoration:underline;text-underline-offset:3px}@keyframes resume-enter{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@media(max-width:380px){.hero-actions{column-gap:0}.hero-actions>button{padding-inline:.75rem}.resume-header{padding:.65rem}.resume-heading p{max-width:9rem}.resume-tools .icon-control{width:2rem;flex-basis:2rem}}@media(prefers-reduced-motion:reduce){.social-preview,.icon-tooltip,.resume-dialog[open]{transition:none;animation:none}.social-card-content{animation:none}.project-preview,.project-preview.is-switching,.project-preview-content{animation:none;transition:none}}
