.animfolio-container--format-07{--animfolio-font-heading:'Inter', sans-serif;--animfolio-font-body:'Inter', sans-serif;--animfolio-font-mono:'JetBrains Mono', 'Fira Code', monospace;font-family:"Inter",sans-serif;background:var(--animfolio-bg);color:var(--animfolio-text);overflow-x:hidden}.animfolio-container--format-07,.animfolio-container--format-07.animfolio-container--light{--animfolio-accent:var(--animfolio-accent, #3B82F6);--animfolio-accent-text:#1864CC;--animfolio-accent-hover:var(--animfolio-accent-hover, #2563EB);--animfolio-accent-light:color-mix(in srgb, var(--animfolio-accent, #3B82F6) 8%, transparent);--animfolio-accent-shadow:color-mix(in srgb, var(--animfolio-accent, #3B82F6) 25%, transparent);--animfolio-accent-glow:color-mix(in srgb, var(--animfolio-accent, #3B82F6) 15%, transparent);--animfolio-accent-subtle:color-mix(in srgb, var(--animfolio-accent, #3B82F6) 6%, transparent);--animfolio-secondary:var(--animfolio-secondary, #059669);--animfolio-bg:#FFFFFF;--animfolio-bg-secondary:#F8FAFC;--animfolio-bg-tertiary:#E5E7EB;--animfolio-text:#0F172A;--animfolio-text-secondary:#4B5563;--animfolio-text-muted:#5F6875;--animfolio-border:rgba(0, 0, 0, 0.1);--animfolio-border-accent:color-mix(in srgb, var(--animfolio-accent, #3B82F6) 25%, transparent)}.animfolio-container--format-07.animfolio-container--dark{--animfolio-accent:var(--animfolio-accent, #3B82F6);--animfolio-accent-text:#5B9BF8;--animfolio-accent-hover:#5B9BF8;--animfolio-accent-light:color-mix(in srgb, var(--animfolio-accent, #3B82F6) 14%, transparent);--animfolio-accent-shadow:color-mix(in srgb, var(--animfolio-accent, #3B82F6) 40%, transparent);--animfolio-accent-glow:color-mix(in srgb, var(--animfolio-accent, #3B82F6) 22%, transparent);--animfolio-accent-subtle:color-mix(in srgb, var(--animfolio-accent, #3B82F6) 10%, transparent);--animfolio-secondary:var(--animfolio-secondary, #10B981);--animfolio-bg:#0C0F1A;--animfolio-bg-secondary:#151929;--animfolio-bg-tertiary:#1E2438;--animfolio-text:#E2E8F0;--animfolio-text-secondary:#AEBACB;--animfolio-text-muted:#94A3B8;--animfolio-border:rgba(226, 232, 240, 0.12);--animfolio-border-accent:rgba(91, 155, 248, 0.35)}.animfolio-container--format-07 .animfolio-nav{position:fixed;top:0;left:0;right:0;z-index:100;background:color-mix(in srgb,var(--animfolio-bg) 92%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:2px solid var(--animfolio-accent-glow);padding:0 2rem;overflow:hidden}.animfolio-container--format-07 .animfolio-nav__inner{display:flex;align-items:center;justify-content:space-between;max-width:var(--animfolio-container, 1200px);margin:0 auto;height:56px}.animfolio-container--format-07 .animfolio-nav__logo{font-family:var(--animfolio-font-heading);font-size:1rem;font-weight:700;color:var(--animfolio-text);text-decoration:none}.animfolio-container--format-07 .animfolio-nav__links{display:flex;gap:1.5rem;list-style:none;margin:0;padding:0}.animfolio-container--format-07 .animfolio-nav__link{font-size:.875rem;font-weight:500;color:var(--animfolio-text-secondary);text-decoration:none;padding:4px 8px;border-radius:4px;transition:color .2s ease,background .2s ease}.animfolio-container--format-07 .animfolio-nav__link:hover{color:var(--animfolio-accent-text);background:var(--animfolio-accent-subtle)}.animfolio-container--format-07 .animfolio-nav__link--active{color:var(--animfolio-accent-text);background:var(--animfolio-accent-light)}.animfolio-container--format-07 .animfolio-section--hero{background:linear-gradient(180deg,color-mix(in srgb,var(--animfolio-accent, #3B82F6) 6%,transparent) 0%,transparent 40%),var(--animfolio-bg);border-bottom:1px solid var(--animfolio-border)}.animfolio-container--format-07 .animfolio-hero{box-sizing:border-box;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;justify-content:center;max-width:900px;margin:0 auto;padding:5rem 2rem 4rem}.animfolio-container--format-07 .animfolio-hero__content{text-align:center;--animfolio-hero-justify:center}.animfolio-container--format-07 .animfolio-hero__name{font-family:var(--animfolio-font-heading);font-weight:700;font-size:clamp(2rem,4vw,3.5rem);letter-spacing:-.02em}.animfolio-container--format-07 .animfolio-hero__title{font-family:var(--animfolio-font-mono);font-size:1rem;color:var(--animfolio-accent-text);margin-top:.75rem}.animfolio-container--format-07 .animfolio-hero__subtitle{font-family:var(--animfolio-font-body);font-size:1.125rem;line-height:1.7;color:var(--animfolio-text-secondary);margin-top:1.5rem;max-width:600px;margin-inline:auto}.animfolio-container--format-07 .animfolio-f07-cell-badge{display:inline-flex;align-items:center;gap:.25rem;font-family:var(--animfolio-font-mono);font-size:.75rem;color:var(--animfolio-accent-text);margin-bottom:.5rem}.animfolio-container--format-07 .animfolio-f07-cell-badge::before{content:"In ["}.animfolio-container--format-07 .animfolio-f07-cell-badge::after{content:"]:"}.animfolio-container--format-07 .animfolio-section__title{font-family:var(--animfolio-font-heading);font-weight:700;font-size:clamp(1.5rem,3vw,2rem);border-bottom:2px solid var(--animfolio-accent);padding-bottom:.75rem;margin-bottom:2rem;word-break:break-word;overflow-wrap:break-word}.animfolio-container--format-07 .animfolio-section{max-width:var(--animfolio-container, 1200px);margin-inline:auto;padding-inline:2rem;box-sizing:border-box;word-break:break-word;overflow-wrap:break-word}.animfolio-container--format-07 .animfolio-f07-code-cell,.animfolio-container--format-07 .animfolio-f07-output{border:1px solid var(--animfolio-border);border-radius:4px;padding:1rem 1.25rem;font-family:var(--animfolio-font-mono)}.animfolio-container--format-07 .animfolio-f07-code-cell{background:var(--animfolio-bg-secondary);border-inline-start:3px solid var(--animfolio-accent);margin:1rem 0;font-size:.875rem;line-height:1.6}.animfolio-container--format-07 .animfolio-f07-output{background:var(--animfolio-bg);margin:.5rem 0 1.5rem;font-size:.8125rem;color:var(--animfolio-text-secondary)}.animfolio-container--format-07 .animfolio-card{background:var(--animfolio-bg-secondary);border:1px solid var(--animfolio-border);border-radius:8px;padding:1.5rem;transition:border-color .2s ease,box-shadow .2s ease;overflow:hidden;word-break:break-word;overflow-wrap:break-word}.animfolio-container--format-07 .animfolio-card:hover{border-color:var(--animfolio-accent);box-shadow:0 4px 12px var(--animfolio-accent-glow)}.animfolio-container--format-07 .animfolio-button--primary,.animfolio-container--format-07 .animfolio-button--secondary{border-radius:6px;font-family:var(--animfolio-font-body);font-size:.9375rem;font-weight:600;padding:.75rem 1.5rem;display:inline-block;text-decoration:none;cursor:pointer}.animfolio-container--format-07 .animfolio-button--primary{background:var(--animfolio-accent);color:var(--animfolio-on-accent, #fff);border:0;transition:opacity .2s ease,box-shadow .2s ease}.animfolio-container--format-07 .animfolio-button--primary:hover{opacity:.9;box-shadow:0 4px 16px var(--animfolio-accent-shadow)}.animfolio-container--format-07 .animfolio-button--secondary{background:0 0;color:var(--animfolio-accent-text);border:1px solid var(--animfolio-accent);transition:background .2s ease,color .2s ease}.animfolio-container--format-07 .animfolio-button--secondary:hover{background:var(--animfolio-accent-subtle);color:var(--animfolio-accent-text)}.animfolio-container--format-07 .animfolio-skills__item{display:grid;grid-template-columns:140px 1fr auto;align-items:center;gap:1rem;margin-bottom:.75rem}.animfolio-container--format-07 .animfolio-skills__label{font-family:var(--animfolio-font-mono);font-size:.8125rem}.animfolio-container--format-07 .animfolio-skills__bar{height:8px;border-radius:4px;background:var(--animfolio-bg);overflow:hidden}.animfolio-container--format-07 .animfolio-skills__bar-fill{height:100%;border-radius:4px;background:linear-gradient(90deg,var(--animfolio-accent),var(--animfolio-secondary))}.animfolio-container--format-07 .animfolio-skills__value{font-family:var(--animfolio-font-mono);font-size:.75rem;color:var(--animfolio-text-secondary);min-width:36px;text-align:end}.animfolio-container--format-07 .animfolio-project{padding:1.25rem 0;border-bottom:1px solid var(--animfolio-border)}.animfolio-container--format-07 .animfolio-project__title{font-family:var(--animfolio-font-heading);font-weight:600;font-size:1.0625rem;word-break:break-word;overflow-wrap:break-word}.animfolio-container--format-07 .animfolio-project__citation{font-family:var(--animfolio-font-body);font-size:.875rem;color:var(--animfolio-text-secondary);margin-top:.25rem;font-style:italic}.animfolio-container--format-07 .animfolio-project__links{display:flex;gap:1rem;margin-top:.5rem}.animfolio-container--format-07 .animfolio-project__link{font-family:var(--animfolio-font-mono);font-size:.75rem;color:var(--animfolio-accent-text);text-decoration:none}.animfolio-container--format-07 .animfolio-project__link:hover{text-decoration:underline}.animfolio-container--format-07 .animfolio-f07-projects{display:flex;flex-direction:column}.animfolio-container--format-07 .animfolio-project--notebook{position:relative;display:grid;grid-template-columns:auto 1fr;column-gap:1rem;padding:1.5rem 0;border-bottom:1px solid var(--animfolio-border);text-align:start}.animfolio-container--format-07 .animfolio-project--notebook:last-child{border-bottom:none}.animfolio-container--format-07 .animfolio-project__cell{grid-row:1/span 1;margin-bottom:0;white-space:nowrap;-webkit-user-select:none;user-select:none;padding-top:.1rem}.animfolio-container--format-07 .animfolio-project--notebook>.animfolio-project__abstract,.animfolio-container--format-07 .animfolio-project--notebook>.animfolio-project__keywords,.animfolio-container--format-07 .animfolio-project--notebook>.animfolio-project__links,.animfolio-container--format-07 .animfolio-project--notebook>.animfolio-project__thumb,.animfolio-container--format-07 .animfolio-project--notebook>.animfolio-project__title{grid-column:2}.animfolio-container--format-07 .animfolio-project__thumb{display:block;width:100%;max-width:420px;height:auto;border:1px solid var(--animfolio-border);border-inline-start:3px solid var(--animfolio-accent);border-radius:4px;margin-bottom:.875rem;background:var(--animfolio-bg-secondary)}.animfolio-container--format-07 .animfolio-project--notebook .animfolio-project__title{margin:0}.animfolio-container--format-07 .animfolio-project__abstract{font-style:normal;line-height:1.65;margin-top:.4rem}.animfolio-container--format-07 .animfolio-project__abstract-label{font-style:italic;font-weight:600;color:var(--animfolio-text);margin-inline-end:.35rem}.animfolio-container--format-07 .animfolio-project__keywords{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin:.75rem 0 0}.animfolio-container--format-07 .animfolio-project__keywords-label{font-family:var(--animfolio-font-body);font-size:.8125rem;font-style:italic;color:var(--animfolio-text-secondary);margin-inline-end:.1rem}.animfolio-container--format-07 .animfolio-project__keyword-sep{color:var(--animfolio-text-muted);font-family:var(--animfolio-font-mono);font-size:.75rem}.animfolio-container--format-07 .animfolio-project--notebook .animfolio-project__links{margin-top:.875rem}.animfolio-container--format-07 .animfolio-screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width:600px){.animfolio-container--format-07 .animfolio-project--notebook{grid-template-columns:1fr;row-gap:.5rem}.animfolio-container--format-07 .animfolio-project--notebook>.animfolio-project__abstract,.animfolio-container--format-07 .animfolio-project--notebook>.animfolio-project__keywords,.animfolio-container--format-07 .animfolio-project--notebook>.animfolio-project__links,.animfolio-container--format-07 .animfolio-project--notebook>.animfolio-project__thumb,.animfolio-container--format-07 .animfolio-project--notebook>.animfolio-project__title,.animfolio-container--format-07 .animfolio-project__cell{grid-column:1}}.animfolio-container--format-07 .animfolio-stats__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1px;background:var(--animfolio-border);border:1px solid var(--animfolio-border);border-radius:8px;overflow:hidden}.animfolio-container--format-07 .animfolio-stat{background:var(--animfolio-bg-secondary);padding:1.5rem;text-align:center}.animfolio-container--format-07 .animfolio-stat__number{font-family:var(--animfolio-font-mono);font-weight:700;font-size:2rem;color:var(--animfolio-accent-text)}.animfolio-container--format-07 .animfolio-stat__label{font-size:.8125rem;color:var(--animfolio-text-secondary);margin-top:.25rem}.animfolio-container--format-07 .animfolio-card__tag{font-family:var(--animfolio-font-mono);font-size:.75rem;padding:.25rem .625rem;border-radius:4px;background:var(--animfolio-accent-light);color:var(--animfolio-accent-text);border:1px solid var(--animfolio-border-accent)}.animfolio-container--format-07 .animfolio-form__input,.animfolio-container--format-07 .animfolio-form__textarea{background:var(--animfolio-bg-secondary);border:1px solid var(--animfolio-border);border-radius:6px;padding:.75rem 1rem;font-family:var(--animfolio-font-body)}.animfolio-container--format-07 .animfolio-form__input:focus,.animfolio-container--format-07 .animfolio-form__textarea:focus{border-color:var(--animfolio-accent);outline:0}.animfolio-container--format-07 .animfolio-form__submit{background:var(--animfolio-accent);color:var(--animfolio-on-accent, #fff);border:0;border-radius:6px;padding:.75rem 2rem;font-weight:600;cursor:pointer;transition:opacity .2s ease}.animfolio-container--format-07 .animfolio-form__submit:hover{opacity:.9}.animfolio-container--format-07 .animfolio-f07-code-cell{overflow-x:auto;word-break:normal;white-space:pre}@media (max-width:1024px){.animfolio-container--format-07 .animfolio-section{padding-inline:1.5rem}.animfolio-container--format-07 .animfolio-hero{min-height:100vh;min-height:100dvh;padding:3rem 1.5rem}}@media (max-width:768px){.animfolio-container--format-07 .animfolio-skills__item{grid-template-columns:100px 1fr auto}.animfolio-container--format-07 .animfolio-stats__grid{grid-template-columns:repeat(2,1fr)}.animfolio-container--format-07 .animfolio-section{padding-inline:1.25rem}}@media (max-width:480px){.animfolio-container--format-07 .animfolio-skills__item{grid-template-columns:80px 1fr auto;gap:.5rem}.animfolio-container--format-07 .animfolio-stats__grid{grid-template-columns:1fr}.animfolio-container--format-07 .animfolio-section{padding-inline:1rem}.animfolio-container--format-07 .animfolio-nav__links{display:none}.animfolio-container--format-07 .animfolio-button--primary,.animfolio-container--format-07 .animfolio-button--secondary{width:100%;text-align:center;box-sizing:border-box}}