.exp-wrapper[data-astro-cid-tksfwoks]{padding:12px 0 24px;border-bottom:1px solid var(--line)}.experiences-section[data-astro-cid-tksfwoks]{padding:0 var(--pad)}.exp-heading-box[data-astro-cid-tksfwoks]{position:relative;padding-bottom:12px;margin-bottom:6px}.exp-main-heading[data-astro-cid-tksfwoks]{font-size:20px;font-weight:700;letter-spacing:-.015em;color:var(--fg);margin:0}.dashed-line[data-astro-cid-tksfwoks]{position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--line-2);mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px);-webkit-mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px)}.exp-items-list[data-astro-cid-tksfwoks]{display:flex;flex-direction:column}.exp-row-item[data-astro-cid-tksfwoks]{position:relative;border-radius:8px;transition:background-color .2s}.exp-row-item[data-astro-cid-tksfwoks]:hover{background:var(--hover)}.exp-row-btn[data-astro-cid-tksfwoks]{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 10px;background:transparent;border:none;cursor:pointer;text-align:left;color:inherit;font-family:inherit}.exp-icon-outer[data-astro-cid-tksfwoks]{width:40px;height:40px;border-radius:10px;border:1px solid var(--line);background:var(--card);padding:2px;flex-shrink:0;box-shadow:0 1px 3px #0000000f}.exp-icon-inner[data-astro-cid-tksfwoks]{width:100%;height:100%;border-radius:7px;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:2px}.exp-icon-img[data-astro-cid-tksfwoks]{width:100%;height:100%;object-fit:contain}.exp-meta-main[data-astro-cid-tksfwoks]{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.exp-title-row[data-astro-cid-tksfwoks]{display:flex;align-items:center;gap:8px}.exp-title-text[data-astro-cid-tksfwoks]{font-size:16.5px;font-weight:700;color:var(--fg);letter-spacing:-.015em;line-height:1.25}.exp-role-text[data-astro-cid-tksfwoks]{font-size:14px;color:var(--fg-2);line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.exp-meta-side[data-astro-cid-tksfwoks]{display:flex;flex-direction:column;align-items:flex-end;gap:3px;flex-shrink:0}.exp-dates-row[data-astro-cid-tksfwoks]{display:flex;align-items:center;gap:6px}.exp-dates-text[data-astro-cid-tksfwoks]{font:600 13px/1 var(--sans);color:var(--fg);letter-spacing:-.01em}.chevron-icon[data-astro-cid-tksfwoks]{width:14px;height:14px;color:var(--soft);transition:transform .28s var(--ease-out),color .2s}.exp-row-item[data-astro-cid-tksfwoks].is-open .chevron-icon[data-astro-cid-tksfwoks]{transform:rotate(180deg);color:var(--fg)}.exp-location-text[data-astro-cid-tksfwoks]{font:12px/1 var(--sans);color:var(--soft)}.exp-tray[data-astro-cid-tksfwoks]{display:grid;grid-template-rows:0fr;transition:grid-template-rows .38s cubic-bezier(.33,1,.68,1)}.exp-row-item[data-astro-cid-tksfwoks].is-open .exp-tray[data-astro-cid-tksfwoks]{grid-template-rows:1fr}.exp-tray-inner[data-astro-cid-tksfwoks]{overflow:hidden;padding:0 10px 18px 62px;display:flex;flex-direction:column;gap:14px}.exp-metrics-grid[data-astro-cid-tksfwoks]{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px dashed var(--line);border-bottom:1px dashed var(--line);padding:10px 0;margin-top:4px}.metric-cell[data-astro-cid-tksfwoks]{position:relative;padding:0 12px;display:flex;flex-direction:column;gap:3px}.metric-cell[data-astro-cid-tksfwoks]:not(:last-child):after{content:"";position:absolute;top:0;bottom:0;right:0;width:1px;background:var(--line-2);mask-image:repeating-linear-gradient(to bottom,black 0,black 1px,transparent 1px,transparent 6px);-webkit-mask-image:repeating-linear-gradient(to bottom,black 0,black 1px,transparent 1px,transparent 6px)}.metric-value[data-astro-cid-tksfwoks]{font:700 15px/1.2 var(--mono);color:var(--fg)}.metric-label[data-astro-cid-tksfwoks]{font:600 10px/1.2 var(--mono);color:var(--soft);text-transform:uppercase;letter-spacing:.04em}.exp-bullets-list[data-astro-cid-tksfwoks]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.bullet-point[data-astro-cid-tksfwoks]{display:flex;align-items:baseline;gap:10px;font-size:13.5px;line-height:1.6;color:var(--fg-2)}.bullet-mark[data-astro-cid-tksfwoks]{font-size:16px;color:var(--soft);line-height:1;flex-shrink:0}.exp-tray-footer[data-astro-cid-tksfwoks]{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;padding-top:8px}.exp-tech-tags[data-astro-cid-tksfwoks]{display:flex;flex-wrap:wrap;gap:6px}.tech-chip[data-astro-cid-tksfwoks]{font:11px/1.2 var(--mono);color:var(--muted);background:var(--card);border:1px solid var(--line);padding:2.5px 7px;border-radius:4px}.exp-link-btn[data-astro-cid-tksfwoks]{display:inline-flex;align-items:center;gap:5px;font:600 11.5px/1 var(--mono);color:var(--fg);text-decoration:none;padding:5px 11px;border-radius:999px;background:var(--card);border:1px solid var(--line-2);transition:all .2s var(--ease-out)}.exp-link-btn[data-astro-cid-tksfwoks] svg[data-astro-cid-tksfwoks]{width:12px;height:12px;transition:transform .2s}.exp-link-btn[data-astro-cid-tksfwoks]:hover{background:var(--fg);color:var(--bg);border-color:var(--fg)}.exp-link-btn[data-astro-cid-tksfwoks]:hover svg[data-astro-cid-tksfwoks]{transform:translate(2px,-2px)}.item-dashed-sep[data-astro-cid-tksfwoks]{height:1px;background:var(--line);mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px);-webkit-mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px)}.view-all-wrap[data-astro-cid-tksfwoks]{position:relative;display:flex;justify-content:center;align-items:center;padding:20px 0 8px}.view-all-dashed-line[data-astro-cid-tksfwoks]{position:absolute;top:0;left:0;right:0;height:1px;background:var(--line);mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px);-webkit-mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px)}.view-all-btn[data-astro-cid-tksfwoks]{position:relative;display:inline-flex;align-items:center;gap:8px;padding:8px 18px;border-radius:6px;background:var(--card);border:1px solid var(--line-2);color:var(--fg);text-decoration:none;font:600 13px/1 var(--sans);letter-spacing:-.01em;box-shadow:0 1px 3px #0000000d;transition:all .22s var(--ease-out)}.view-all-btn[data-astro-cid-tksfwoks]:hover{background:var(--hover);border-color:var(--fg);box-shadow:0 4px 14px #00000014;transform:translateY(-1px)}.view-all-icon[data-astro-cid-tksfwoks]{width:14px;height:14px;color:var(--soft);transition:transform .22s var(--spring),color .18s}.view-all-btn[data-astro-cid-tksfwoks]:hover .view-all-icon[data-astro-cid-tksfwoks]{color:var(--fg);transform:translate(2px,-2px)}@media(max-width:680px){.exp-row-btn[data-astro-cid-tksfwoks]{flex-wrap:wrap;gap:12px}.exp-meta-side[data-astro-cid-tksfwoks]{width:100%;flex-direction:row;justify-content:space-between;align-items:center;padding-left:52px}.exp-tray-inner[data-astro-cid-tksfwoks]{padding-left:10px}.exp-metrics-grid[data-astro-cid-tksfwoks]{grid-template-columns:repeat(2,1fr);gap:12px}.metric-cell[data-astro-cid-tksfwoks]:nth-child(2):after{display:none}.exp-tray-footer[data-astro-cid-tksfwoks]{flex-direction:column;align-items:flex-start}.exp-link-btn[data-astro-cid-tksfwoks]{width:100%;justify-content:center}}@media(max-width:480px){.exp-meta-side[data-astro-cid-tksfwoks]{padding-left:0;flex-direction:column;align-items:flex-start;gap:6px}.exp-metrics-grid[data-astro-cid-tksfwoks]{grid-template-columns:1fr;gap:8px}.metric-cell[data-astro-cid-tksfwoks]:not(:last-child):after{display:none}}.projects-section[data-astro-cid-vpuo45fg]{position:relative;padding:32px 0 54px;background:transparent}.proj-top-dashed[data-astro-cid-vpuo45fg]{position:absolute;top:0;left:calc(var(--pad) - 8px);right:calc(var(--pad) - 8px);height:1px;background:var(--line-2);mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px);-webkit-mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px)}.proj-bottom-dashed[data-astro-cid-vpuo45fg]{position:absolute;bottom:0;left:calc(var(--pad) - 8px);right:calc(var(--pad) - 8px);height:1px;background:var(--line-2);mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px);-webkit-mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px)}.corner-dot[data-astro-cid-vpuo45fg]{position:absolute;width:2px;height:2px;background:var(--fg);opacity:.45;z-index:10;pointer-events:none}.corner-dot[data-astro-cid-vpuo45fg].top-left{top:0;left:calc(var(--pad) - 8px);transform:translate(-50%,-50%)}.corner-dot[data-astro-cid-vpuo45fg].top-right{top:0;right:calc(var(--pad) - 8px);transform:translate(50%,-50%)}.corner-dot[data-astro-cid-vpuo45fg].bottom-left{bottom:0;left:calc(var(--pad) - 8px);transform:translate(-50%,50%)}.corner-dot[data-astro-cid-vpuo45fg].bottom-right{bottom:0;right:calc(var(--pad) - 8px);transform:translate(50%,50%)}.proj-heading-box[data-astro-cid-vpuo45fg]{position:relative;padding:6px var(--pad) 14px;margin-bottom:24px;display:flex;align-items:baseline;justify-content:space-between}.proj-head-left[data-astro-cid-vpuo45fg]{display:flex;align-items:baseline;gap:12px}.proj-main-heading[data-astro-cid-vpuo45fg]{font-size:19px;font-weight:700;letter-spacing:-.015em;color:var(--fg);margin:0}.proj-count-badge[data-astro-cid-vpuo45fg]{font:600 11.5px/1 var(--mono);color:var(--soft);letter-spacing:.02em;padding:3px 8px;border-radius:999px;background:var(--card);border:1px solid var(--line-2)}.heading-dashed-sep[data-astro-cid-vpuo45fg]{position:absolute;bottom:0;left:calc(var(--pad) - 8px);right:calc(var(--pad) - 8px);height:1px;background:var(--line-2);mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px);-webkit-mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px)}.corner-dot[data-astro-cid-vpuo45fg].head-left-dot{bottom:0;left:calc(var(--pad) - 8px);transform:translate(-50%,50%)}.corner-dot[data-astro-cid-vpuo45fg].head-right-dot{bottom:0;right:calc(var(--pad) - 8px);transform:translate(50%,50%)}.corner-dot[data-astro-cid-vpuo45fg].head-center-dot{bottom:0;left:50%;transform:translate(-50%,50%)}.projects-grid-wrap[data-astro-cid-vpuo45fg]{position:relative;padding:0 var(--pad) 32px}.grid-center-v[data-astro-cid-vpuo45fg]{position:absolute;top:0;bottom:32px;left:50%;width:1px;background:var(--line-2);mask-image:repeating-linear-gradient(to bottom,black 0,black 1px,transparent 1px,transparent 6px);-webkit-mask-image:repeating-linear-gradient(to bottom,black 0,black 1px,transparent 1px,transparent 6px);transform:translate(-50%);pointer-events:none;z-index:5}.grid-center-h[data-astro-cid-vpuo45fg]{position:absolute;top:50%;left:calc(var(--pad) - 8px);right:calc(var(--pad) - 8px);height:1px;background:var(--line-2);mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px);-webkit-mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px);pointer-events:none;z-index:5}.grid-cross-dot[data-astro-cid-vpuo45fg]{position:absolute;top:50%;left:50%;width:3px;height:3px;background:var(--fg);opacity:.55;transform:translate(-50%,-50%);z-index:10;pointer-events:none}.projects-grid[data-astro-cid-vpuo45fg]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 40px;position:relative;z-index:6}.project-card[data-astro-cid-vpuo45fg]{display:flex;flex-direction:column;text-decoration:none;position:relative}.proj-visual-container[data-astro-cid-vpuo45fg]{display:block;position:relative;width:100%;aspect-ratio:1.38;border-radius:12px;border:1px solid var(--line-2);background:#fff;padding:12px 14px 0;overflow:hidden;text-decoration:none;box-shadow:0 1px 3px #0000000a;transition:border-color .28s var(--ease-out),box-shadow .28s var(--ease-out)}html.dark .proj-visual-container[data-astro-cid-vpuo45fg]{background:#0b0d13;border-color:#ffffff14}.project-card[data-astro-cid-vpuo45fg]:hover .proj-visual-container[data-astro-cid-vpuo45fg]{border-color:var(--line);box-shadow:0 12px 32px #00000017}html.dark .project-card[data-astro-cid-vpuo45fg]:hover .proj-visual-container[data-astro-cid-vpuo45fg]{border-color:#fff3;box-shadow:0 14px 38px #000000a6}.proj-ambient-bg[data-astro-cid-vpuo45fg]{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:hidden;z-index:1;background-size:cover;background-position:top center;background-repeat:no-repeat;opacity:0;transform:scale(.98);transition:opacity .32s cubic-bezier(.16,1,.3,1),transform .32s cubic-bezier(.16,1,.3,1)}.project-card[data-astro-cid-vpuo45fg]:hover .proj-ambient-bg[data-astro-cid-vpuo45fg]{opacity:1;transform:scale(1.025)}html.dark .project-card[data-astro-cid-vpuo45fg]:hover .proj-ambient-bg[data-astro-cid-vpuo45fg]{opacity:.95;filter:contrast(1.15) brightness(1.1)}.ambient-vignette[data-astro-cid-vpuo45fg]{position:absolute;inset:0;background:radial-gradient(circle at 50% 20%,transparent 45%,rgba(0,0,0,.04) 100%);pointer-events:none}html.dark .ambient-vignette[data-astro-cid-vpuo45fg]{background:radial-gradient(circle at 50% 20%,transparent 40%,rgba(0,0,0,.35) 100%)}.proj-top-bar[data-astro-cid-vpuo45fg]{display:flex;justify-content:flex-end;align-items:center;min-height:24px;position:relative;z-index:12}.pin-badge[data-astro-cid-vpuo45fg]{width:24px;height:24px;border-radius:6px;border:1px solid var(--line-2);display:flex;align-items:center;justify-content:center;color:var(--soft);background:#ffffffe0;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:color .2s,border-color .2s,background .2s,transform .22s var(--spring)}html.dark .pin-badge[data-astro-cid-vpuo45fg]{background:#12141ad9;border-color:#ffffff24}.project-card[data-astro-cid-vpuo45fg]:hover .pin-badge[data-astro-cid-vpuo45fg]{color:var(--fg);border-color:var(--line);transform:rotate(5deg) scale(1.06)}.pin-svg[data-astro-cid-vpuo45fg]{width:13px;height:13px}.floating-preview-wrap[data-astro-cid-vpuo45fg]{position:absolute;bottom:0;left:50%;transform:translate(-50%);width:86%;height:78%;border-radius:8px 8px 0 0;border:1px solid var(--line-2);border-bottom:none;background:#fff;overflow:hidden;box-shadow:0 -8px 24px #00000012;transition:transform .28s cubic-bezier(.16,1,.3,1),box-shadow .28s;z-index:5}.project-card[data-astro-cid-vpuo45fg]:hover .floating-preview-wrap[data-astro-cid-vpuo45fg]{transform:translate(-50%) translateY(6px) scale(.95);box-shadow:0 -4px 14px #0000000a}html.dark .floating-preview-wrap[data-astro-cid-vpuo45fg]{background:#0c0e14;border-color:#ffffff1f;box-shadow:0 -8px 30px #0009}.preview-aspect[data-astro-cid-vpuo45fg]{width:100%;height:100%;overflow:hidden;position:relative}.preview-svg-img[data-astro-cid-vpuo45fg]{width:100%;height:100%;object-fit:cover;object-position:top center;user-select:none;-webkit-user-drag:none}.mockup-light[data-astro-cid-vpuo45fg]{display:block}.mockup-dark[data-astro-cid-vpuo45fg],html.dark .mockup-light[data-astro-cid-vpuo45fg]{display:none}html.dark .mockup-dark[data-astro-cid-vpuo45fg]{display:block}.proj-info-block[data-astro-cid-vpuo45fg]{margin-top:14px;display:flex;flex-direction:column;padding:0 2px}.proj-meta-row[data-astro-cid-vpuo45fg]{display:flex;align-items:center;justify-content:space-between;gap:12px}.proj-title[data-astro-cid-vpuo45fg]{font-size:15px;font-weight:700;line-height:1.25;letter-spacing:-.015em;color:var(--fg);margin:0}.proj-title-link[data-astro-cid-vpuo45fg]{color:inherit;text-decoration:none;transition:color .18s}.proj-title-link[data-astro-cid-vpuo45fg]:hover{color:var(--fg);text-decoration:underline;text-underline-offset:3px}.status-pill[data-astro-cid-vpuo45fg]{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border-radius:999px;border:1px solid var(--line-2);background:var(--card);font:600 11px/1 var(--mono);color:var(--soft);flex-shrink:0}.status-dot[data-astro-cid-vpuo45fg]{width:6px;height:6px;border-radius:50%}.pill-live[data-astro-cid-vpuo45fg] .status-dot[data-astro-cid-vpuo45fg]{background:#10b981;box-shadow:0 0 6px #10b98166}.pill-building[data-astro-cid-vpuo45fg] .status-dot[data-astro-cid-vpuo45fg]{background:#ef4444;box-shadow:0 0 6px #ef444466}.pill-active[data-astro-cid-vpuo45fg] .status-dot[data-astro-cid-vpuo45fg]{background:#3b82f6;box-shadow:0 0 6px #3b82f666}.proj-desc[data-astro-cid-vpuo45fg]{margin:8px 0 0;font-size:13px;line-height:1.55;color:var(--fg-2);padding-right:8px}.proj-footer-row[data-astro-cid-vpuo45fg]{margin-top:14px;display:flex;align-items:center;justify-content:space-between;gap:12px}.tech-icons-row[data-astro-cid-vpuo45fg]{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.tech-icon-wrap[data-astro-cid-vpuo45fg]{position:relative;display:inline-flex;align-items:center;justify-content:center;color:var(--soft);cursor:default;transition:color .18s,transform .18s}.tech-icon-wrap[data-astro-cid-vpuo45fg]:hover{color:var(--fg);transform:translateY(-1px)}.tech-svg[data-astro-cid-vpuo45fg]{width:14.5px;height:14.5px;display:block}.tech-tooltip[data-astro-cid-vpuo45fg]{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%) translateY(4px);padding:3px 7px;border-radius:4px;background:var(--fg);color:var(--bg);font:600 10px/1 var(--sans);letter-spacing:.01em;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .18s var(--ease-out),transform .18s var(--ease-out);z-index:50;box-shadow:0 2px 8px #00000026}.tech-icon-wrap[data-astro-cid-vpuo45fg]:hover .tech-tooltip[data-astro-cid-vpuo45fg]{opacity:1;transform:translate(-50%) translateY(0)}.view-proj-link[data-astro-cid-vpuo45fg]{display:inline-flex;align-items:center;gap:4px;font:600 12px/1 var(--sans);color:var(--soft);text-decoration:none;flex-shrink:0;transition:color .18s}.project-card[data-astro-cid-vpuo45fg]:hover .view-proj-link[data-astro-cid-vpuo45fg]{color:var(--fg)}.proj-arrow[data-astro-cid-vpuo45fg]{width:13px;height:13px;transition:transform .22s var(--spring)}.project-card[data-astro-cid-vpuo45fg]:hover .proj-arrow[data-astro-cid-vpuo45fg]{transform:translate(2px,-2px)}.view-all-container[data-astro-cid-vpuo45fg]{display:flex;justify-content:center;position:relative;margin-top:-19px;z-index:20}.view-all-frame-btn[data-astro-cid-vpuo45fg]{position:relative;display:inline-flex;align-items:center;text-decoration:none;cursor:pointer}.btn-outer-halo[data-astro-cid-vpuo45fg]{position:absolute;inset:-5px;border-radius:11px;border:1px solid var(--line-2);pointer-events:none;transition:border-color .24s var(--ease-out)}.view-all-frame-btn[data-astro-cid-vpuo45fg]:hover .btn-outer-halo[data-astro-cid-vpuo45fg]{border-color:var(--line)}.btn-inner-body[data-astro-cid-vpuo45fg]{position:relative;display:flex;align-items:center;gap:6px;padding:8px 18px;border-radius:6px;background:var(--card);border:1px solid var(--line-2);color:var(--fg);font:600 13px/1 var(--sans);letter-spacing:-.01em;box-shadow:0 1px 3px #0000000a;transition:background .2s,border-color .2s,transform .2s,box-shadow .2s}.view-all-frame-btn[data-astro-cid-vpuo45fg]:hover .btn-inner-body[data-astro-cid-vpuo45fg]{background:var(--hover);border-color:var(--fg);box-shadow:0 4px 14px #00000014;transform:translateY(-1px)}.btn-arrow-icon[data-astro-cid-vpuo45fg]{width:14px;height:14px;color:var(--soft);transition:transform .22s var(--spring),color .18s}.view-all-frame-btn[data-astro-cid-vpuo45fg]:hover .btn-arrow-icon[data-astro-cid-vpuo45fg]{color:var(--fg);transform:translate(2px,-2px)}@media(max-width:768px){.projects-grid[data-astro-cid-vpuo45fg]{grid-template-columns:1fr;gap:28px}.grid-center-v[data-astro-cid-vpuo45fg],.grid-center-h[data-astro-cid-vpuo45fg],.grid-cross-dot[data-astro-cid-vpuo45fg],.corner-dot[data-astro-cid-vpuo45fg].head-center-dot{display:none}.proj-visual-container[data-astro-cid-vpuo45fg]{aspect-ratio:1.32}}@media(max-width:500px){.projects-grid[data-astro-cid-vpuo45fg]{gap:20px}.proj-content[data-astro-cid-vpuo45fg]{padding:16px 14px 18px}.proj-title[data-astro-cid-vpuo45fg]{font-size:16px}.proj-desc[data-astro-cid-vpuo45fg]{font-size:13px}.proj-tags[data-astro-cid-vpuo45fg]{gap:4px}.proj-tag[data-astro-cid-vpuo45fg]{font-size:10px;padding:2px 6px}.proj-visual-container[data-astro-cid-vpuo45fg]{aspect-ratio:16 / 10}}.github-activity-section[data-astro-cid-pvmodehe]{padding:32px 0 16px;position:relative}.gh-heading-box[data-astro-cid-pvmodehe]{position:relative;padding:0 var(--pad) 14px;margin-bottom:20px;display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap}.gh-head-left[data-astro-cid-pvmodehe]{display:flex;align-items:baseline;gap:12px}.gh-main-heading[data-astro-cid-pvmodehe]{font-size:20px;font-weight:700;letter-spacing:-.015em;color:var(--fg);margin:0}.gh-handle[data-astro-cid-pvmodehe]{display:inline-flex;align-items:center;gap:4px;font:500 11.5px/1 var(--mono);color:var(--muted);text-decoration:none;transition:color .18s ease}.gh-handle[data-astro-cid-pvmodehe]:hover{color:var(--fg)}.gh-ext-icon[data-astro-cid-pvmodehe]{width:10px;height:10px}.gh-status-badge[data-astro-cid-pvmodehe]{font:500 11px/1 var(--mono);color:var(--soft);margin:0;letter-spacing:.02em}.dashed-line[data-astro-cid-pvmodehe]{position:absolute;bottom:0;left:var(--pad);right:var(--pad);height:1px;background:var(--line-2);mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px);-webkit-mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px)}.gh-graph-card[data-astro-cid-pvmodehe]{margin:0 var(--pad);border-radius:10px;border:1px solid var(--line-2);background:var(--card);padding:18px 20px;box-shadow:0 1px 3px #0000000a}.gh-graph-scroll[data-astro-cid-pvmodehe]{overflow-x:auto;padding-bottom:6px;scrollbar-width:thin;scrollbar-color:var(--line-2) transparent}.gh-graph-scroll[data-astro-cid-pvmodehe]::-webkit-scrollbar{height:6px}.gh-graph-scroll[data-astro-cid-pvmodehe]::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:3px}.gh-graph-container[data-astro-cid-pvmodehe]{min-width:720px;display:flex;flex-direction:column;gap:8px}.gh-months-row[data-astro-cid-pvmodehe]{display:flex;justify-content:space-between;font:10.5px/1 var(--mono);color:var(--soft);padding:0 2px 4px}.gh-grid{display:grid;grid-template-columns:repeat(53,minmax(0,1fr));grid-auto-columns:minmax(0,1fr);gap:3px}.gh-week-col{display:flex;flex-direction:column;gap:3px}.gh-day-cell{aspect-ratio:1;width:100%;border-radius:2px;outline:none;cursor:pointer;transition:transform .15s ease,opacity .15s ease}.gh-day-cell:hover,.gh-day-cell:focus-visible{transform:scale(1.35);z-index:5}.gh-day-cell.empty{background:transparent;cursor:default}.gh-day-cell.lvl-0{background:var(--hover);border:1px solid var(--line)}.gh-day-cell.lvl-1{background:#0e4429;opacity:.75}.gh-day-cell.lvl-2{background:#006d32;opacity:.85}.gh-day-cell.lvl-3{background:#26a641;opacity:.95}.gh-day-cell.lvl-4{background:#39d353;box-shadow:0 0 4px #39d35366}html:not(.dark):not(.warm) .gh-day-cell.lvl-1{background:#9be9a8}html:not(.dark):not(.warm) .gh-day-cell.lvl-2{background:#40c463}html:not(.dark):not(.warm) .gh-day-cell.lvl-3{background:#30a14e}html:not(.dark):not(.warm) .gh-day-cell.lvl-4{background:#216e39}html.warm .gh-day-cell.lvl-1{background:#d4a373;opacity:.6}html.warm .gh-day-cell.lvl-2{background:#bc6c25;opacity:.75}html.warm .gh-day-cell.lvl-3{background:#9b4f12;opacity:.85}html.warm .gh-day-cell.lvl-4{background:#6a3407;box-shadow:0 0 4px #6a34074d}.gh-footer[data-astro-cid-pvmodehe]{display:flex;align-items:center;justify-content:space-between;padding-top:14px;margin-top:10px;border-top:1px dashed var(--line);font:11px/1 var(--mono);color:var(--muted);flex-wrap:wrap;gap:12px}.gh-quick-stats[data-astro-cid-pvmodehe]{display:flex;align-items:center;gap:8px}.gh-quick-stats[data-astro-cid-pvmodehe] b[data-astro-cid-pvmodehe]{color:var(--fg);font-weight:600}.stat-sep[data-astro-cid-pvmodehe]{color:var(--line-2)}.gh-legend[data-astro-cid-pvmodehe]{display:flex;align-items:center;gap:4px}.legend-text[data-astro-cid-pvmodehe]{font-size:10px;color:var(--soft)}.legend-cell[data-astro-cid-pvmodehe]{width:9px;height:9px;border-radius:2px}.legend-cell[data-astro-cid-pvmodehe].lvl-0{background:var(--hover);border:1px solid var(--line)}.legend-cell[data-astro-cid-pvmodehe].lvl-1{background:#0e4429}.legend-cell[data-astro-cid-pvmodehe].lvl-2{background:#006d32}.legend-cell[data-astro-cid-pvmodehe].lvl-3{background:#26a641}.legend-cell[data-astro-cid-pvmodehe].lvl-4{background:#39d353}html:not(.dark):not(.warm) .legend-cell[data-astro-cid-pvmodehe].lvl-1{background:#9be9a8}html:not(.dark):not(.warm) .legend-cell[data-astro-cid-pvmodehe].lvl-2{background:#40c463}html:not(.dark):not(.warm) .legend-cell[data-astro-cid-pvmodehe].lvl-3{background:#30a14e}html:not(.dark):not(.warm) .legend-cell[data-astro-cid-pvmodehe].lvl-4{background:#216e39}html.warm .legend-cell[data-astro-cid-pvmodehe].lvl-1{background:#d4a373}html.warm .legend-cell[data-astro-cid-pvmodehe].lvl-2{background:#bc6c25}html.warm .legend-cell[data-astro-cid-pvmodehe].lvl-3{background:#9b4f12}html.warm .legend-cell[data-astro-cid-pvmodehe].lvl-4{background:#6a3407}.gh-tooltip[data-astro-cid-pvmodehe]{position:fixed;z-index:1000;pointer-events:none;padding:5px 9px;border-radius:5px;background:var(--fg);color:var(--bg);font:500 11px/1 var(--mono);letter-spacing:-.01em;box-shadow:0 4px 14px #0003;opacity:0;transform:translateY(4px);transition:opacity .15s ease,transform .15s ease;white-space:nowrap}.gh-tooltip[data-astro-cid-pvmodehe].visible{opacity:1;transform:translateY(0)}.oss-section[data-astro-cid-y7hwv5jk]{padding:24px 0 16px;position:relative}.oss-heading-box[data-astro-cid-y7hwv5jk]{position:relative;padding:6px var(--pad) 14px;margin-bottom:20px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.oss-head-left[data-astro-cid-y7hwv5jk]{display:flex;align-items:baseline;gap:12px}.oss-main-heading[data-astro-cid-y7hwv5jk]{font-size:19px;font-weight:700;letter-spacing:-.015em;color:var(--fg);margin:0}.oss-badge[data-astro-cid-y7hwv5jk]{font:500 11px/1 var(--mono);color:var(--soft);letter-spacing:.04em;text-transform:uppercase}.oss-board-frame[data-astro-cid-y7hwv5jk]{position:relative;display:inline-flex;align-items:center;padding:3px;border-radius:11px;border:1px solid var(--line);background:transparent;transition:border-color .22s ease}.oss-board-frame[data-astro-cid-y7hwv5jk]:hover{border-color:var(--line-2)}.oss-board-chassis[data-astro-cid-y7hwv5jk]{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:3px;background:var(--hover);border:1px solid var(--line-2);border-radius:8px;box-shadow:inset 0 1px 2px #0000000a;user-select:none;min-width:230px}.oss-board-slider[data-astro-cid-y7hwv5jk]{position:absolute;top:3px;bottom:3px;left:3px;width:calc((100% - 6px) / 3);border-radius:6px;background:var(--card);border:1px solid var(--line-2);box-shadow:0 1px 3px #0000000f;transition:transform .28s var(--ease-out);will-change:transform;pointer-events:none}.oss-board-slider[data-astro-cid-y7hwv5jk].pos-merged{transform:translate(0)}.oss-board-slider[data-astro-cid-y7hwv5jk].pos-open{transform:translate(100%)}.oss-board-slider[data-astro-cid-y7hwv5jk].pos-closed{transform:translate(200%)}.oss-board-btn[data-astro-cid-y7hwv5jk]{position:relative;z-index:2;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:6px 14px;font:500 12.5px/1 var(--sans);color:var(--soft);background:transparent;border:none;cursor:pointer;transition:color .18s ease;outline:none}.oss-board-btn[data-astro-cid-y7hwv5jk]:hover{color:var(--fg)}.oss-board-btn[data-astro-cid-y7hwv5jk].active{color:var(--fg);font-weight:600}.btn-dot[data-astro-cid-y7hwv5jk]{width:6px;height:6px;border-radius:50%;flex-shrink:0}.btn-dot[data-astro-cid-y7hwv5jk].merged{background:#a855f7;box-shadow:0 0 5px #a855f780}.btn-dot[data-astro-cid-y7hwv5jk].open{background:#10b981;box-shadow:0 0 5px #10b98180}.btn-dot[data-astro-cid-y7hwv5jk].closed{background:#f43f5e;box-shadow:0 0 5px #f43f5e80}.dashed-line[data-astro-cid-y7hwv5jk]{position:absolute;bottom:0;left:calc(var(--pad) - 8px);right:calc(var(--pad) - 8px);height:1px;background:var(--line-2);mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px);-webkit-mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px)}.oss-card[data-astro-cid-y7hwv5jk]{margin:0 var(--pad);border-radius:10px;border:1px solid var(--line-2);background:var(--card);overflow:hidden;box-shadow:0 1px 3px #0000000a}.pr-tab-pane[data-astro-cid-y7hwv5jk]{display:flex;flex-direction:column;width:100%}.pr-list[data-astro-cid-y7hwv5jk]{display:flex;flex-direction:column}.pr-item[data-astro-cid-y7hwv5jk]{position:relative;padding:14px 18px;text-decoration:none;color:inherit;display:flex;flex-direction:column;gap:5px;transition:background-color .18s ease}.pr-item[data-astro-cid-y7hwv5jk]:hover{background:var(--hover)}.pr-item-top[data-astro-cid-y7hwv5jk]{display:flex;align-items:baseline;gap:10px}.pr-status-dot[data-astro-cid-y7hwv5jk]{width:7.5px;height:7.5px;border-radius:50%;flex-shrink:0;transform:translateY(-1px)}.pr-status-dot[data-astro-cid-y7hwv5jk].merged{background:#a855f7;box-shadow:0 0 6px #a855f780}.pr-status-dot[data-astro-cid-y7hwv5jk].open{background:#10b981;box-shadow:0 0 6px #10b98180}.pr-status-dot[data-astro-cid-y7hwv5jk].closed{background:#f43f5e;box-shadow:0 0 6px #f43f5e80}.pr-title[data-astro-cid-y7hwv5jk]{font-size:14px;font-weight:500;line-height:1.4;color:var(--fg);margin:0;letter-spacing:-.01em;flex:1;transition:color .18s ease}.pr-item[data-astro-cid-y7hwv5jk]:hover .pr-title[data-astro-cid-y7hwv5jk]{text-decoration:underline;text-underline-offset:3px}.pr-kind-tag[data-astro-cid-y7hwv5jk]{font:700 9px/1 var(--mono);padding:2px 5px;border-radius:3px;letter-spacing:.04em;text-transform:uppercase}.pr-kind-tag[data-astro-cid-y7hwv5jk].issue-open{background:#10b9811f;color:#10b981;border:1px solid rgba(16,185,129,.3)}.pr-kind-tag[data-astro-cid-y7hwv5jk].issue-closed{background:#f43f5e1f;color:#f43f5e;border:1px solid rgba(244,63,94,.3)}.pr-num[data-astro-cid-y7hwv5jk]{font:500 11.5px/1 var(--mono);color:var(--soft)}.pr-item-meta[data-astro-cid-y7hwv5jk]{display:flex;align-items:center;gap:8px;padding-left:17.5px;font:11.5px/1 var(--mono);color:var(--muted)}.pr-repo[data-astro-cid-y7hwv5jk]{color:var(--fg-2)}.meta-sep[data-astro-cid-y7hwv5jk]{color:var(--line-2)}.pr-org[data-astro-cid-y7hwv5jk]{color:var(--soft)}.pr-link-icon[data-astro-cid-y7hwv5jk]{width:11px;height:11px;color:var(--soft);margin-left:auto;transition:transform .2s var(--spring),color .18s}.pr-item[data-astro-cid-y7hwv5jk]:hover .pr-link-icon[data-astro-cid-y7hwv5jk]{color:var(--fg);transform:translate(2px,-2px)}.item-dashed-line[data-astro-cid-y7hwv5jk]{position:absolute;bottom:0;left:18px;right:18px;height:1px;background:var(--line);mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px);-webkit-mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px)}.view-all-wrap[data-astro-cid-y7hwv5jk]{position:relative;display:flex;justify-content:center;align-items:center;padding:18px 0 14px}.view-all-dashed-line[data-astro-cid-y7hwv5jk]{position:absolute;top:0;left:0;right:0;height:1px;background:var(--line-2);mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px);-webkit-mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px)}.view-all-btn[data-astro-cid-y7hwv5jk]{position:relative;display:inline-flex;align-items:center;gap:8px;padding:8px 18px;border-radius:6px;background:var(--card);border:1px solid var(--line-2);color:var(--fg);text-decoration:none;font:600 13px/1 var(--sans);letter-spacing:-.01em;box-shadow:0 1px 3px #0000000a;transition:all .22s var(--ease-out)}.view-all-btn[data-astro-cid-y7hwv5jk]:hover{background:var(--hover);border-color:var(--fg);transform:translateY(-1px);box-shadow:0 4px 12px #00000014}.view-all-icon[data-astro-cid-y7hwv5jk]{width:13px;height:13px;color:var(--soft);transition:transform .2s var(--spring),color .18s}.view-all-btn[data-astro-cid-y7hwv5jk]:hover .view-all-icon[data-astro-cid-y7hwv5jk]{color:var(--fg);transform:translate(2px,-2px)}@media(max-width:640px){.oss-heading-box[data-astro-cid-y7hwv5jk]{flex-direction:column;align-items:flex-start}.oss-board-frame[data-astro-cid-y7hwv5jk],.oss-board-chassis[data-astro-cid-y7hwv5jk]{width:100%}.oss-board-btn[data-astro-cid-y7hwv5jk]{padding:6px 10px;font-size:11.5px}}.skills-grid-wrapper{display:flex;flex-wrap:wrap;gap:8px;width:100%}.skill-pill-item{flex-grow:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 14px;background:var(--card);border:1px solid var(--line-2);border-radius:6px;box-shadow:0 1px 2px #00000008;transition:background-color .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease;cursor:default;user-select:none;min-width:fit-content}.skill-pill-item:hover{background:var(--hover);border-color:var(--fg);transform:translateY(-1px);box-shadow:0 3px 8px #0000000f}.skill-brand-icon{width:14px;height:14px;color:var(--soft);flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;transition:color .18s ease,transform .18s ease}.skill-pill-item:hover .skill-brand-icon{color:var(--fg);transform:scale(1.12)}.skill-label-text{font:500 12.5px/1.2 var(--mono);color:var(--fg);letter-spacing:-.01em}@media(max-width:640px){.skill-pill-item{padding:7px 11px}.skill-label-text{font-size:11.5px}}.skills-section[data-astro-cid-ieimgn64]{padding:24px 0 20px;position:relative}.top-dashed-line[data-astro-cid-ieimgn64]{position:absolute;top:0;left:calc(var(--pad) - 8px);right:calc(var(--pad) - 8px);height:1px;background:var(--line-2);mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px);-webkit-mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px)}.corner-dot[data-astro-cid-ieimgn64]{position:absolute;width:2px;height:2px;background:var(--fg);opacity:.45;z-index:10}.corner-dot[data-astro-cid-ieimgn64].top-left{top:0;left:calc(var(--pad) - 8px);transform:translate(-50%,-50%)}.corner-dot[data-astro-cid-ieimgn64].top-right{top:0;right:calc(var(--pad) - 8px);transform:translate(50%,-50%)}.skills-heading-box[data-astro-cid-ieimgn64]{position:relative;padding:6px var(--pad) 14px;margin-bottom:20px;display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap}.skills-head-left[data-astro-cid-ieimgn64]{display:flex;align-items:baseline;gap:12px}.skills-main-heading[data-astro-cid-ieimgn64]{font-size:19px;font-weight:700;letter-spacing:-.015em;color:var(--fg);margin:0}.skills-badge[data-astro-cid-ieimgn64]{font:500 11px/1 var(--mono);color:var(--soft);letter-spacing:.04em;text-transform:uppercase}.bottom-dashed-line[data-astro-cid-ieimgn64]{position:absolute;bottom:0;left:calc(var(--pad) - 8px);right:calc(var(--pad) - 8px);height:1px;background:var(--line-2);mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px);-webkit-mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px)}.corner-dot[data-astro-cid-ieimgn64].bottom-left{bottom:0;left:calc(var(--pad) - 8px);transform:translate(-50%,50%)}.corner-dot[data-astro-cid-ieimgn64].bottom-right{bottom:0;right:calc(var(--pad) - 8px);transform:translate(50%,50%)}.skills-card[data-astro-cid-ieimgn64]{margin:0 var(--pad)}.highlights-section[data-astro-cid-wre7cy3d]{padding:24px 0 20px;position:relative}.hl-top-line[data-astro-cid-wre7cy3d]{position:absolute;top:0;left:calc(var(--pad) - 8px);right:calc(var(--pad) - 8px);height:1px;background:var(--line-2);mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px);-webkit-mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px)}.hl-dot[data-astro-cid-wre7cy3d]{position:absolute;width:2px;height:2px;background:var(--fg);opacity:.45;z-index:10}.hl-dot[data-astro-cid-wre7cy3d].top-left{top:0;left:calc(var(--pad) - 8px);transform:translate(-50%,-50%)}.hl-dot[data-astro-cid-wre7cy3d].top-right{top:0;right:calc(var(--pad) - 8px);transform:translate(50%,-50%)}.hl-heading-box[data-astro-cid-wre7cy3d]{position:relative;padding:20px var(--pad) 18px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.hl-head-left[data-astro-cid-wre7cy3d]{display:flex;align-items:baseline;gap:12px}.hl-main-heading[data-astro-cid-wre7cy3d]{font-size:19px;font-weight:700;letter-spacing:-.015em;color:var(--fg);margin:0}.hl-badge[data-astro-cid-wre7cy3d]{font:500 11px/1 var(--mono);color:var(--soft);letter-spacing:.04em;text-transform:uppercase}.hl-bottom-line[data-astro-cid-wre7cy3d]{position:absolute;bottom:0;left:calc(var(--pad) - 8px);right:calc(var(--pad) - 8px);height:1px;background:var(--line-2);mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px);-webkit-mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px)}.hl-dot[data-astro-cid-wre7cy3d].bottom-left{bottom:0;left:calc(var(--pad) - 8px);transform:translate(-50%,50%)}.hl-dot[data-astro-cid-wre7cy3d].bottom-right{bottom:0;right:calc(var(--pad) - 8px);transform:translate(50%,50%)}.hl-marquee-wrapper[data-astro-cid-wre7cy3d]{position:relative;overflow:hidden;padding:10px 0 20px;width:100%}.fade-edge[data-astro-cid-wre7cy3d]{position:absolute;top:0;bottom:20px;width:48px;z-index:10;pointer-events:none}.fade-edge[data-astro-cid-wre7cy3d].left{left:0;background:linear-gradient(to right,var(--bg),transparent)}.fade-edge[data-astro-cid-wre7cy3d].right{right:0;background:linear-gradient(to left,var(--bg),transparent)}@keyframes highlights-marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.highlights-track[data-astro-cid-wre7cy3d]{display:flex;gap:18px;width:max-content;animation:highlights-marquee 32s linear infinite;will-change:transform;padding:6px 16px 14px}.hl-marquee-wrapper[data-astro-cid-wre7cy3d]:hover .highlights-track[data-astro-cid-wre7cy3d],.highlights-track[data-astro-cid-wre7cy3d]:hover,.hl-card[data-astro-cid-wre7cy3d]:hover{animation-play-state:paused!important}.hl-card[data-astro-cid-wre7cy3d]{flex:0 0 310px;position:relative;display:flex;flex-direction:column}.hl-card-outer-frame[data-astro-cid-wre7cy3d]{position:absolute;inset:-4px;border-radius:10px;border:1px solid var(--line-2);pointer-events:none;transition:border-color .22s var(--ease-out)}.hl-card[data-astro-cid-wre7cy3d]:hover .hl-card-outer-frame[data-astro-cid-wre7cy3d]{border-color:var(--line)}.hl-card-inner[data-astro-cid-wre7cy3d]{position:relative;border-radius:7px;border:1px solid var(--line-2);background:var(--card);overflow:hidden;height:100%;display:flex;flex-direction:column;box-shadow:0 1px 3px #0000000a;transition:transform .22s var(--ease-out),border-color .22s var(--ease-out),box-shadow .22s var(--ease-out)}.hl-card[data-astro-cid-wre7cy3d]:hover .hl-card-inner[data-astro-cid-wre7cy3d]{border-color:var(--fg);box-shadow:0 8px 24px #00000014;transform:translateY(-2px)}html.dark .hl-card[data-astro-cid-wre7cy3d]:hover .hl-card-inner[data-astro-cid-wre7cy3d]{box-shadow:0 8px 28px #00000073}.hl-img-link[data-astro-cid-wre7cy3d]{display:block;text-decoration:none}.hl-image-wrap[data-astro-cid-wre7cy3d]{position:relative;height:190px;width:100%;background:var(--hover);overflow:hidden}.hl-marquee-img[data-astro-cid-wre7cy3d]{width:100%;height:100%;display:block;object-fit:cover;object-position:top;transition:transform .4s var(--ease-out)}.hl-marquee-img[data-astro-cid-wre7cy3d].fit-contain{object-fit:contain;object-position:center;background:var(--bg)}.hl-card[data-astro-cid-wre7cy3d]:hover .hl-marquee-img[data-astro-cid-wre7cy3d]{transform:scale(1.03)}.hl-card-dashed-sep[data-astro-cid-wre7cy3d]{height:1px;background:var(--line-2);mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px);-webkit-mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px)}.hl-card-info[data-astro-cid-wre7cy3d]{padding:12px 14px 14px;display:flex;flex-direction:column;gap:7px;flex-grow:1;background:var(--card)}.hl-info-top[data-astro-cid-wre7cy3d]{display:flex;align-items:center;justify-content:space-between;gap:8px}.hl-badge-pill[data-astro-cid-wre7cy3d]{font:600 10.5px/1 var(--mono);padding:3px 8px;border-radius:4px;background:var(--hover);border:1px solid var(--line-2);color:var(--fg);letter-spacing:.02em}.hl-info-right[data-astro-cid-wre7cy3d]{display:flex;align-items:center;gap:8px}.hl-period-text[data-astro-cid-wre7cy3d]{font:500 10.5px/1 var(--mono);color:var(--soft);letter-spacing:.02em}.hl-link-icon[data-astro-cid-wre7cy3d]{display:flex;align-items:center;justify-content:center;color:var(--soft);transition:color .18s,transform .18s}.hl-link-icon[data-astro-cid-wre7cy3d] svg[data-astro-cid-wre7cy3d]{width:12px;height:12px}.hl-card[data-astro-cid-wre7cy3d]:hover .hl-link-icon[data-astro-cid-wre7cy3d]{color:var(--fg);transform:translate(2px,-2px)}.hl-card-title[data-astro-cid-wre7cy3d]{font-size:13.5px;font-weight:600;line-height:1.35;color:var(--fg);margin:0;letter-spacing:-.01em}.hl-title-link[data-astro-cid-wre7cy3d]{color:inherit;text-decoration:none;transition:color .18s}.hl-title-link[data-astro-cid-wre7cy3d]:hover{text-decoration:underline}.hl-card-summary[data-astro-cid-wre7cy3d]{font-size:12px;line-height:1.48;color:var(--fg-2);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.view-all-wrap[data-astro-cid-wre7cy3d]{position:relative;display:flex;justify-content:center;align-items:center;padding:24px 0 8px;margin:0 var(--pad)}.view-all-dashed-line[data-astro-cid-wre7cy3d]{position:absolute;top:0;left:0;right:0;height:1px;background:var(--line-2);mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px);-webkit-mask-image:repeating-linear-gradient(to right,black 0,black 1px,transparent 1px,transparent 6px)}.view-all-btn[data-astro-cid-wre7cy3d]{position:relative;display:inline-flex;align-items:center;gap:8px;padding:8px 18px;border-radius:6px;background:var(--card);border:1px solid var(--line-2);color:var(--fg);text-decoration:none;font:600 12.5px/1 var(--mono);letter-spacing:-.01em;box-shadow:0 1px 3px #0000000a;transition:all .22s var(--ease-out)}.view-all-btn[data-astro-cid-wre7cy3d]:hover{background:var(--hover);border-color:var(--fg);transform:translateY(-1px);box-shadow:0 4px 12px #00000014}.view-all-icon[data-astro-cid-wre7cy3d]{width:13px;height:13px;color:var(--soft);transition:transform .2s var(--spring),color .18s}.view-all-btn[data-astro-cid-wre7cy3d]:hover .view-all-icon[data-astro-cid-wre7cy3d]{color:var(--fg);transform:translate(2px,-2px)}.work-index-rail[data-astro-cid-t76gbsa3]{position:fixed;top:24vh;left:calc(50% + 388px);z-index:40;pointer-events:auto;user-select:none;animation:fadeInRail .4s var(--ease-out)}@keyframes fadeInRail{0%{opacity:0;transform:translate(6px)}to{opacity:1;transform:translate(0)}}@media(max-width:1140px){.work-index-rail[data-astro-cid-t76gbsa3]{display:none}}.work-index-nav[data-astro-cid-t76gbsa3]{display:flex;flex-direction:column;align-items:flex-start}.index-title[data-astro-cid-t76gbsa3]{font:700 11px/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--soft);margin:0 0 16px 8px}.index-list[data-astro-cid-t76gbsa3]{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none}.index-item[data-astro-cid-t76gbsa3]{margin:0;padding:0;display:flex}.index-link[data-astro-cid-t76gbsa3]{display:inline-flex;align-items:center;padding:5px 12px 5px 8px;border-radius:6px;border:1px solid transparent;color:var(--soft);font:500 13px/1.2 var(--sans);letter-spacing:-.01em;text-decoration:none;transition:all .2s var(--ease-out);white-space:nowrap;cursor:pointer}.index-link[data-astro-cid-t76gbsa3]:hover{color:var(--fg)}.index-link[data-astro-cid-t76gbsa3].active{color:var(--fg);font-weight:600;border-color:var(--line-2);background:var(--card);box-shadow:0 1px 3px #0000000a}html.dark .index-link[data-astro-cid-t76gbsa3].active{background:#ffffff0a;border-color:#ffffff2e;box-shadow:0 2px 8px #0006}html.warm .index-link[data-astro-cid-t76gbsa3].active{background:#fbf6ec;border-color:#d8c7af}.active-indicator-tick[data-astro-cid-t76gbsa3]{display:inline-block;width:0;height:1px;background:var(--soft);margin-right:0;opacity:0;transition:width .22s var(--ease-out),margin-right .22s var(--ease-out),opacity .2s;flex-shrink:0}.index-link[data-astro-cid-t76gbsa3].active .active-indicator-tick[data-astro-cid-t76gbsa3]{width:14px;margin-right:8px;opacity:.85;background:var(--fg)}.index-label[data-astro-cid-t76gbsa3]{letter-spacing:-.01em}.work-main[data-astro-cid-57l5znwr]{padding-bottom:48px}#experience,#projects,#github,#opensource,#skills,#highlights{scroll-margin-top:80px}
