@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");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}:root{--bg: #0b1016;--surface: #121a23;--surface-2: #18222e;--border: #243140;--text: #e6edf3;--muted: #93a1b0;--accent: #f5a524;--accent-2: #38bdf8;--radius: 14px;font-family:Inter Variable,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--text);background:var(--bg);line-height:1.6;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0}html{scroll-behavior:smooth}a{color:var(--accent-2);text-decoration:none}a:hover{text-decoration:underline}ul{margin:0;padding:0;list-style:none}.nav{position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;align-items:center;padding:1rem clamp(1rem,5vw,4rem);background:#0b1016d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border)}.nav__brand{color:var(--text);font-weight:700;letter-spacing:.02em}.nav__links{display:flex;gap:1.5rem}.nav__links a{color:var(--muted)}.nav__links a:hover{color:var(--text);text-decoration:none}main,.footer{max-width:1120px;margin:0 auto;padding:0 clamp(1rem,5vw,2rem)}.hero{padding:clamp(4rem,12vw,8rem) 0 4rem}.hero__eyebrow{color:var(--accent);font-weight:600;margin:0 0 1rem}.hero__title{font-size:clamp(2rem,5vw,3.25rem);font-weight:750;letter-spacing:-.025em;line-height:1.12;margin:0 0 1.5rem;max-width:22ch}.hero__lead{color:var(--muted);font-size:1.15rem;max-width:60ch;margin:0 0 2rem}.accent{color:var(--accent)}.hero__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:3rem}.hero__stats{display:flex;flex-wrap:wrap;gap:2.5rem}.hero__stats strong{display:block;font-size:2rem;color:var(--text)}.hero__stats span{color:var(--muted);font-size:.9rem}.button{display:inline-block;padding:.7rem 1.3rem;border-radius:999px;border:1px solid var(--border);color:var(--text);font-weight:600}.button:hover{text-decoration:none;border-color:var(--muted)}.button--primary{background:var(--accent);border-color:var(--accent);color:#1a1204}.button--primary:hover{filter:brightness(1.08);border-color:var(--accent)}.section{padding:4rem 0;border-top:1px solid var(--border)}.section__title{font-size:1.9rem;margin:0 0 .5rem}.section__lead{color:var(--muted);margin:0 0 2rem}.filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2rem}.chip{font:inherit;font-size:.9rem;padding:.4rem 1rem;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--muted);cursor:pointer}.chip:hover{color:var(--text)}.chip--active{background:var(--accent-2);border-color:var(--accent-2);color:#04121b}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.25rem}.card{display:flex;flex-direction:column;padding:1.5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:transform .15s ease,border-color .15s ease}.card{position:relative;cursor:pointer}.card:hover{transform:translateY(-3px);border-color:var(--muted)}.card__open{position:absolute;inset:0;z-index:1;border:0;background:none;cursor:pointer;border-radius:var(--radius)}.card__open:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.card__repo{position:relative;z-index:2}.card__cover{margin:-1.5rem -1.5rem 1.25rem;height:170px;display:flex;align-items:center;justify-content:center;background:#06090d;border-bottom:1px solid var(--border);border-radius:var(--radius) var(--radius) 0 0;overflow:hidden}.card__cover img{max-width:100%;max-height:100%;object-fit:contain}.card__more{color:var(--accent-2)}.card__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.card__category{color:var(--accent-2);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.card__title{margin:0 0 .5rem;font-size:1.25rem}.card__summary{color:var(--muted);margin:0 0 1rem}.card__highlights{margin-bottom:1.25rem}.card__highlights li{position:relative;padding-left:1.1rem;font-size:.92rem;margin-bottom:.35rem}.card__highlights li:before{content:"›";position:absolute;left:0;color:var(--accent);font-weight:700}.card__stack{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.25rem}.card__stack li{font-size:.78rem;padding:.2rem .6rem;background:var(--surface-2);border:1px solid var(--border);border-radius:6px;color:var(--muted)}.card__footer{margin-top:auto;display:flex;justify-content:space-between;gap:1rem;font-size:.9rem;font-weight:600}.card__private{color:var(--muted);font-weight:400}.card__live{color:var(--accent)}.modal__actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.modal{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:clamp(.5rem,3vw,2rem);background:#03060acc;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal__panel{position:relative;width:min(960px,100%);max-height:100%;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.modal__close{position:absolute;top:.75rem;right:.75rem;z-index:2;width:2.25rem;height:2.25rem;border-radius:50%;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:1.4rem;line-height:1;cursor:pointer}.modal__close:hover{border-color:var(--muted)}.modal__body{padding:1.5rem 2rem 2rem}.modal__title{font-size:1.6rem;font-weight:700;letter-spacing:-.015em;margin:.25rem 0 .75rem}.gallery{margin:0;background:#06090d;border-bottom:1px solid var(--border)}.gallery__stage{position:relative;display:flex;align-items:center;justify-content:center;min-height:260px;padding:1.5rem 3.5rem}.gallery__stage img{max-width:100%;max-height:60vh;object-fit:contain;border-radius:6px}.gallery figcaption{text-align:center;color:var(--muted);font-size:.9rem;padding:0 1rem 1rem}.gallery__nav{position:absolute;top:50%;transform:translateY(-50%);width:2.5rem;height:2.5rem;border-radius:50%;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:1.5rem;line-height:1;cursor:pointer}.gallery__nav:hover{border-color:var(--muted)}.gallery__nav--prev{left:.75rem}.gallery__nav--next{right:.75rem}.gallery__thumbs{display:flex;justify-content:center;gap:.5rem;padding:0 1rem 1rem;flex-wrap:wrap}.gallery__thumb{width:64px;height:48px;padding:0;border:2px solid transparent;border-radius:6px;background:var(--surface-2);overflow:hidden;cursor:pointer;opacity:.6}.gallery__thumb img{width:100%;height:100%;object-fit:cover}.gallery__thumb--active{border-color:var(--accent-2);opacity:1}.gallery__empty{display:flex;align-items:center;justify-content:center;height:140px;color:var(--muted);background:#06090d;border-bottom:1px solid var(--border)}.skills{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1.25rem}.skills__group{padding:1.5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.skills__group h3{margin:0 0 1rem;font-size:1rem;color:var(--accent)}.skills__group ul{display:flex;flex-wrap:wrap;gap:.4rem}.skills__group li{font-size:.85rem;padding:.25rem .7rem;background:var(--surface-2);border-radius:6px}.footer{padding-top:3rem;padding-bottom:3rem;border-top:1px solid var(--border);color:var(--muted);text-align:center}.footer__note{max-width:56ch;margin:1.25rem auto;font-size:.92rem;line-height:1.6}.footer__small{font-size:.85rem}@media(max-width:560px){.nav__links{gap:1rem}.grid{grid-template-columns:1fr}}.section__subtitle{font-size:1.15rem;margin:2.75rem 0 1rem}.timeline{display:grid;gap:1rem;list-style:none;padding:0;margin:0}.timeline__item{padding:1.5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.timeline__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.25rem 1rem;margin-bottom:.6rem}.timeline__title{margin:0;font-size:1.05rem}.timeline__company{color:var(--accent);font-weight:600}.timeline__period{color:var(--muted);font-size:.85rem;white-space:nowrap}.timeline__summary{margin:0 0 .75rem;color:var(--muted);line-height:1.6}.timeline__points{margin:0;padding-left:1.1rem;display:grid;gap:.35rem}.timeline__points li{font-size:.92rem;line-height:1.55}.timeline__before{max-width:68ch;margin:1.5rem 0 0;color:var(--muted);font-size:.92rem;line-height:1.65}.credentials{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;list-style:none;padding:0;margin:0}.credentials__item{padding:1.1rem 1.25rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.credentials__head{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.credentials__head strong{font-size:.95rem}.credentials__badge{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;padding:.15rem .5rem;border-radius:999px;border:1px dashed var(--border);color:var(--muted)}.credentials__meta{display:block;margin-top:.3rem;font-size:.82rem;color:var(--muted)}.credentials__note{margin:.6rem 0 0;font-size:.85rem;line-height:1.55;color:var(--muted)}
