*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;padding:0}img{max-width:100%;display:block}a{color:inherit}ul{margin:0;padding:0;list-style:none}button{font:inherit}:root{--color-bg: #0b0e16;--color-bg-raised: #131826;--color-bg-card: #161c2c;--color-border: #262f45;--color-text: #edf0f8;--color-text-muted: #9aa5bd;--color-text-faint: #64708c;--color-accent: #22d3ee;--color-accent-strong: #67e8f9;--color-accent-contrast: #062229;--color-accent-2: #a78bfa;--color-accent-2-strong: #c4b5fd;--color-badge-personal-bg: #113626;--color-badge-personal-text: #4ade80;--color-badge-enterprise-bg: #241c3d;--color-badge-enterprise-text: var(--color-accent-2-strong);--font-sans: "Segoe UI", system-ui, -apple-system, sans-serif;--font-mono: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 14px;--space-1: 4px;--space-2: 8px;--space-3: 16px;--space-4: 24px;--space-5: 40px;--space-6: 64px;--max-width: 1080px;--sidebar-width: 300px;--content-max-width: 720px}@media(prefers-color-scheme:light){:root{--color-bg: #f5f6fb;--color-bg-raised: #ffffff;--color-bg-card: #ffffff;--color-border: #dde1ec;--color-text: #14171c;--color-text-muted: #4b5563;--color-text-faint: #6b7280;--color-accent: #0092b8;--color-accent-strong: #00728f;--color-accent-contrast: #ffffff;--color-accent-2: #7c3aed;--color-accent-2-strong: #6d28d9;--color-badge-personal-bg: #e3f6ec;--color-badge-personal-text: #0f7a4e;--color-badge-enterprise-bg: #f1e9fe;--color-badge-enterprise-text: var(--color-accent-2-strong)}}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3{line-height:1.2;font-weight:700}h2{font-size:1.5rem;letter-spacing:-.01em;display:flex;align-items:center;gap:var(--space-2)}h2:before{content:"";display:inline-block;width:4px;height:1.1em;border-radius:var(--radius-sm);background:linear-gradient(180deg,var(--color-accent),var(--color-accent-2))}.container{max-width:var(--max-width);margin:0 auto;padding:0 var(--space-4)}.section{padding:var(--space-6) 0}.layout{max-width:1280px;margin:0 auto;padding:var(--space-6) var(--space-4);display:grid;grid-template-columns:var(--sidebar-width) 1fr;gap:var(--space-6);align-items:start}.sidebar{position:sticky;top:var(--space-6);display:flex;flex-direction:column;justify-content:space-between;max-height:calc(100vh - var(--space-6) * 2);overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-sm)}.sidebar-identity{display:block;text-decoration:none;color:inherit;margin-bottom:var(--space-4)}.sidebar-photo{width:112px;height:112px;border-radius:50%;object-fit:cover;margin-bottom:var(--space-4);padding:3px;background:linear-gradient(135deg,var(--color-accent),var(--color-accent-2))}.sidebar-name{font-size:1.5rem;margin:0 0 var(--space-1)}.sidebar-title{font-family:var(--font-mono);font-size:.85rem;color:var(--color-accent);margin:0}.sidebar-pitch{font-size:.95rem;margin:var(--space-3) 0 var(--space-4)}.sidebar-nav{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-5);font-family:var(--font-mono);font-size:.85rem}.sidebar-skills{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-5)}.sidebar-skills-group h3{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-faint);margin:0 0 var(--space-2);font-weight:600}.sidebar-skills-badges{display:flex;flex-wrap:wrap;gap:var(--space-1)}.sidebar-contact{display:flex;flex-direction:column;gap:var(--space-1);font-size:.85rem;padding-top:var(--space-4)}.sidebar-contact a{text-decoration:none}.sidebar-contact a:hover{color:var(--color-accent)}.main-content{min-width:0;max-width:var(--content-max-width)}@media(max-width:900px){.layout{grid-template-columns:1fr;padding:var(--space-4)}.sidebar{position:static;max-height:none;overflow-y:visible;flex-direction:row;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:var(--space-4);padding-bottom:var(--space-5);border-bottom:1px solid var(--color-border)}.sidebar-photo{width:72px;height:72px;margin-bottom:0}.sidebar-identity{display:flex;align-items:center;gap:var(--space-3);margin-bottom:0}.sidebar-pitch,.sidebar-skills{display:none}.main-content{max-width:100%}}.tabs{display:flex;gap:var(--space-2);margin-bottom:var(--space-4)}.tab{background:none;border:1px solid transparent;border-radius:var(--radius-md);padding:var(--space-1) var(--space-3);color:var(--color-text-muted);font-size:.9rem;font-weight:600;cursor:pointer;transition:color .15s ease,border-color .15s ease,background .15s ease}.tab:hover{color:var(--color-text);border-color:var(--color-border)}.tab--active{color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 14%,transparent);border-color:color-mix(in srgb,var(--color-accent) 35%,transparent)}.text-muted{color:var(--color-text-muted)}.text-faint{color:var(--color-text-faint)}.btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg-raised);color:var(--color-text);text-decoration:none;font-weight:600;font-size:.95rem;cursor:pointer;transition:border-color .15s ease,transform .05s ease}.btn:hover{border-color:var(--color-accent)}.btn:active{transform:translateY(1px)}.btn-accent{background:linear-gradient(135deg,var(--color-accent),var(--color-accent-2));color:var(--color-accent-contrast);border-color:transparent}.btn-accent:hover{filter:brightness(1.08)}.card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}a.card:hover{border-color:var(--color-accent);transform:translateY(-2px);box-shadow:0 8px 24px -12px color-mix(in srgb,var(--color-accent) 45%,transparent)}.card--personal{border-top:3px solid var(--color-badge-personal-text)}.card--enterprise-confidential{border-top:3px solid var(--color-accent-2)}.stack-badge{display:inline-flex;align-items:center;font-family:var(--font-mono);font-size:.75rem;letter-spacing:.02em;padding:2px var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--color-border);color:var(--color-text-muted);background:var(--color-bg-raised)}.category-badge{display:inline-flex;align-items:center;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.03em;text-transform:uppercase;padding:2px var(--space-2);border-radius:var(--radius-sm)}.category-badge--personal{background:var(--color-badge-personal-bg);color:var(--color-badge-personal-text)}.category-badge--enterprise-confidential{background:var(--color-badge-enterprise-bg);color:var(--color-badge-enterprise-text)}.resume-page{--resume-navy: #1f4e79;--resume-ink: #212121;--resume-ink-muted: #595959;background:#e9eaee;min-height:100vh;padding:32px 16px 64px;display:flex;flex-direction:column;align-items:center;font-family:Calibri,Arial,Helvetica Neue,sans-serif;color:var(--resume-ink)}.resume-toolbar{width:100%;max-width:850px;margin-bottom:16px;display:flex;justify-content:flex-end}.resume-sheet{width:100%;max-width:850px;background:#fff;padding:48px 56px 60px;box-shadow:0 1px 3px #14171c26,0 12px 40px #14171c2e}.resume-header{display:flex;gap:24px;align-items:flex-start;padding-bottom:20px;border-bottom:2px solid var(--resume-navy);margin-bottom:22px}.resume-photo{width:108px;height:108px;object-fit:cover;flex-shrink:0}.resume-name{font-size:22px;font-weight:700;color:var(--resume-navy);margin:4px 0 8px;letter-spacing:.01em}.resume-title-line{font-size:14px;color:var(--resume-ink);margin:0 0 6px}.resume-contact-line{font-size:12.5px;color:var(--resume-ink-muted);margin:0}.resume-sep{margin:0 6px}.resume-section{margin-bottom:20px}.resume-section:last-child{margin-bottom:0}.resume-section h2{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--resume-navy);margin:0 0 6px;padding-bottom:4px;border-bottom:1.5px solid var(--resume-navy);display:block}.resume-section h2:before{content:none}.resume-summary{font-size:13px;line-height:1.55;color:var(--resume-ink);margin:10px 0 0}.resume-subline{font-style:italic;font-size:12.5px;color:var(--resume-ink-muted);margin:10px 0 6px}.resume-bullets{margin:6px 0 0;padding:0 0 0 18px}.resume-bullets li{font-size:13px;line-height:1.55;color:var(--resume-ink);margin-bottom:3px}.resume-skills-row{margin-top:10px;display:flex;flex-direction:column;gap:0}.resume-skills-row div{font-size:13px;line-height:1.7}.resume-skills-row b{color:var(--resume-ink);font-weight:700}.resume-role{margin-top:14px}.resume-role:first-of-type{margin-top:10px}.resume-role-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px}.resume-job-title{font-size:13.5px;font-weight:700;color:var(--resume-ink)}.resume-date-range{font-style:italic;font-size:12.5px;color:var(--resume-ink-muted);white-space:nowrap;font-variant-numeric:tabular-nums}.resume-company-line{font-style:italic;font-size:12.5px;color:var(--resume-ink-muted);margin:1px 0 4px}.resume-selected-work-link{font-size:13px;line-height:1.6;color:var(--resume-ink);margin-top:8px}.resume-selected-work-link a{color:var(--resume-navy);font-weight:700;text-decoration:none}.resume-two-col{display:flex;gap:40px;margin-top:8px}.resume-two-col>div{flex:1}.resume-edu-item{margin-bottom:8px;font-size:13px}.resume-edu-item b{display:block}.resume-edu-item span{color:var(--resume-ink-muted);font-size:12.5px}.resume-activity-line{font-size:13px;color:var(--resume-ink);margin-bottom:4px}@media print{.resume-page{background:#fff;padding:0;min-height:0}.resume-toolbar{display:none}.resume-sheet{box-shadow:none;padding:0;max-width:none}}
