@import"https://fonts.googleapis.com/css2?family=Cairo+Play:wght@700&family=JetBrains+Mono:wght@400;700&display=swap";:root{color-scheme:dark;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, "Cascadia Code", "Roboto Mono", Menlo, Consolas, "Liberation Mono", monospace;--font-display: "Cairo Play", var(--font-mono);font-family:var(--font-mono);line-height:1.65;font-weight:400;--color-black-700: #504945;--color-black-750: #3c3836;--color-black-800: #32302f;--color-black-825: #2f2e2d;--color-black-850: #2b2b2b;--color-black-900: #282828;--color-black-925: #1f1f1f;--color-black-950: #1d2021;--color-black-alpha-18: #0000002e;--color-black-alpha-22: #00000038;--color-black-alpha-24: #0000003d;--color-white-100: #fbf1c7;--color-white-150: #ebdbb2;--color-white-200: #d5c4a1;--color-gray-400: #a89984;--color-gray-500: #928374;--color-gray-550: #807670;--color-gray-600: #665c54;--color-gray-650: #5c524b;--color-gray-700: #504945;--color-gray-750: #3c3836;--color-orange-200: #fe8719;--color-orange-250: #fe8019;--color-orange-300: #d65d0e;--color-orange-400: #af4b08;--color-orange-700: #6f3206;--color-orange-800: #4a2308;--color-orange-300-alpha-06: #d65d0e0f;--color-orange-300-alpha-08: #d65d0e14;--color-orange-300-alpha-18: #d65d0e2e;--color-orange-300-alpha-26: #d65d0e42;--color-orange-300-alpha-35: #d65d0e59;--color-orange-300-alpha-38: #d65d0e61;--color-orange-300-alpha-42: #d65d0e6b;--color-orange-300-alpha-45: #d65d0e73;--color-blue-300: #83a598;--color-blue-500: #458588;--color-blue-700: #2f5d62;--color-blue-300-alpha-08: #83a59814;--color-blue-300-alpha-22: #83a59838;--color-blue-300-alpha-24: #83a5983d;--color-blue-300-alpha-48: #83a598cd;--color-green-300: #8ec07c;--color-green-500: #689d6a;--color-green-700: #3f6f44;--color-yellow-300: #fabd2f;--color-yellow-500: #d79921;--color-yellow-700: #8f6f17;--color-red-300: #fb4934;--color-red-500: #cc241d;--color-red-700: #8f1f1a;--color-transparent: #00000000;--color-bg-soft: var(--color-black-850);--color-bg: var(--color-black-900);--color-bg-alt: var(--color-black-925);--color-bg-code: var(--color-black-925);--color-bg-deep: var(--color-black-950);--color-surface-strong: var(--color-black-750);--color-surface-hover: var(--color-black-700);--color-surface-elevated: var(--color-black-800);--color-surface: var(--color-black-825);--color-surface-muted: var(--color-black-850);--color-border-visible: var(--color-gray-600);--color-border: var(--color-gray-700);--color-border-soft: var(--color-gray-750);--color-border-strong: var(--color-gray-500);--color-border-accent: var(--color-orange-700);--color-border-accent-alpha: var(--color-orange-300-alpha-38);--color-border-cyan: var(--color-blue-300-alpha-22);--color-text: var(--color-white-100);--color-text-warm: var(--color-white-150);--color-text-soft: var(--color-white-200);--color-text-muted: var(--color-gray-400);--color-text-subtle: var(--color-gray-500);--color-text-faint: var(--color-gray-550);--color-text-inverse: var(--color-black-900);--color-accent: var(--color-orange-250);--color-accent-soft: var(--color-orange-300);--color-accent-dim: var(--color-orange-800);--color-accent-strong: var(--color-orange-200);--color-accent-cyan: var(--color-blue-300);--color-accent-cyan-soft: var(--color-blue-500);--color-accent-cyan-muted: var(--color-blue-300-alpha-48);--color-accent-green: var(--color-green-300);--color-accent-green-soft: var(--color-green-500);--color-accent-green-dim: var(--color-green-700);--color-focus: var(--color-orange-300-alpha-45);--color-glow-cyan: var(--color-blue-300-alpha-08);--color-glow-orange: var(--color-orange-300-alpha-06);--color-chip-cyan-bg: var(--color-blue-300-alpha-08);--color-chip-primary-bg: var(--color-orange-300-alpha-08);--color-chip-primary-border: var(--color-orange-300-alpha-26);--color-inset-highlight: var(--color-orange-300-alpha-08);--color-nav-close: var(--color-red-500);--color-empty: var(--color-transparent);--shadow-panel: 0 18px 45px var(--color-black-alpha-22);--shadow-card: 0 12px 30px var(--color-black-alpha-18);--shadow-panel-featured: 0 18px 45px var(--color-black-alpha-24), 0 0 0 1px var(--color-orange-300-alpha-08);--color-card-border: var(--color-border);--color-card-border-hover: var(--color-border-accent-alpha);--color-card-surface-hover: var(--color-surface-elevated);--color-cta-card-border: var(--color-border-accent-alpha);--color-cta-card-border-hover: var(--color-accent-soft);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--radius-sm: 6px;--radius-chip: 6px;--radius-md: 8px;--radius-card: 8px;--radius-panel: var(--radius-card);--page-gutter: 4rem;--container-width: 96rem;color:var(--color-text-soft);background:var(--color-bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}html{min-width:320px;background:var(--color-bg)}body{min-width:320px;min-height:100vh;margin:0;color:var(--color-text-soft);font-size:1rem;background:radial-gradient(circle at top left,var(--color-glow-cyan),var(--color-empty) 28rem),radial-gradient(circle at top right,var(--color-glow-yellow),var(--color-empty) 24rem),var(--color-bg)}::selection{color:var(--color-text-inverse);background:var(--color-accent)}#root{width:100%}a{color:var(--color-accent);text-decoration:none;text-underline-offset:.2em;transition:color .16s ease,border-color .16s ease,background-color .16s ease,box-shadow .16s ease}a:hover{color:var(--color-accent-strong)}.text-link{color:var(--color-accent);font-weight:700}.text-link:hover{color:var(--color-accent-strong)}.cta-link{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);color:var(--color-accent);font-weight:700}.cta-link:hover{color:var(--color-accent-strong)}.cta-button{display:inline-flex;align-items:center;justify-content:center;min-height:2.5rem;padding:.55rem 1.28rem;gap:.8rem;color:var(--color-text-inverse);font-weight:700;background:var(--color-accent);border:1px solid var(--color-accent);border-radius:var(--radius-sm)}.cta-button:hover{color:var(--color-text-inverse);background:var(--color-accent-strong);border-color:var(--color-accent-strong)}.cta-button.secondary{color:var(--color-text);background:var(--color-transparent);border-color:var(--color-border-visible)}.cta-button.secondary:hover{color:var(--color-accent-strong);border-color:var(--color-border-accent-alpha)}a:focus-visible,button:focus-visible,[role=button]:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}button{font:inherit;color:inherit}h1,h2,h3,p,ul,pre{margin-block-start:0}h1,h2,h3{color:var(--color-text);font-weight:700;line-height:1.2;letter-spacing:0}h1{font-size:clamp(2rem,5vw,3.25rem)}h2{font-size:clamp(1.25rem,2vw,1.75rem)}h3{font-size:1.1rem}p{margin-block-end:var(--space-4)}ul{padding:0;list-style:none}img,svg{max-width:100%;height:auto}.navbar,main,.footer{width:min(var(--container-width),calc(100% - var(--page-gutter)));margin-inline:auto}.navbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);min-height:4.75rem;border-bottom:1px solid var(--color-card-border)}.navbar h1{margin:0;font-size:clamp(1.25rem,2vw,1.6rem);line-height:1}.home-link,.home-link:hover{display:inline-flex;align-items:center;min-height:2.75rem;color:var(--color-text);font-family:var(--font-display);font-weight:800}.navbar nav{display:flex;align-items:center;gap:var(--space-3)}.nav-menu{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-5);margin:0}.nav-item{min-width:0}.nav-link{position:relative;display:inline-flex;align-items:baseline;gap:.1rem;color:var(--color-text-soft);font-weight:700}.nav-link:hover,.nav-link.current{color:var(--color-text)}.nav-link.current:after{position:absolute;left:50%;bottom:-.85rem;width:.35rem;height:.35rem;content:"";background:var(--color-accent);border-radius:999px;transform:translate(-50%)}.hamburger{display:none;flex-direction:column;align-items:center;justify-content:center;gap:var(--hamburger-bar-gap);width:2.7rem;height:2.7rem;padding:.55rem;background:transparent;border:none;cursor:pointer;--hamburger-bar-gap: .32rem;--hamburger-bar-height: 2px;--hamburger-bar-offset: calc(var(--hamburger-bar-gap) + var(--hamburger-bar-height))}.hamburger .bar{display:block;width:100%;height:var(--hamburger-bar-height);margin:0;background:var(--color-text-soft);border-radius:999px;transition:transform .16s ease,opacity .16s ease,background-color .16s ease;transform-origin:center}.hamburger.active .bar{background:var(--color-nav-close)}.hamburger.active .bar:nth-child(1){transform:translateY(var(--hamburger-bar-offset)) rotate(45deg)}.hamburger.active .bar:nth-child(2){opacity:0}.hamburger.active .bar:nth-child(3){transform:translateY(calc(0px - var(--hamburger-bar-offset))) rotate(-45deg)}@media(hover:hover)and (pointer:fine){.hamburger:hover .bar{background:var(--color-accent)}.hamburger.active:hover .bar{background:var(--color-nav-close)}}main{padding-block:var(--space-5) var(--space-7)}.user-host{color:var(--color-accent-soft)}.path{color:var(--color-accent-cyan-soft)}.breadcrumb{margin:0 0 var(--space-5);color:var(--color-text-muted);font-size:clamp(.95rem,1.6vw,1.15rem);font-weight:500;line-height:1.4}.main-content{width:100%;min-height:18rem}.main-content>*:last-child,.main-menu>*:last-child,.paragraph-section>*:last-child,.description>*:last-child,.summary>*:last-child,.intro>*:last-child{margin-block-end:0}.title{margin-block-end:var(--space-4);font-size:clamp(2rem,4vw,3.2rem)}.summary,.description,.intro,.paragraph{max-width:74ch;color:var(--color-text-soft);line-height:1.75}.summary{color:var(--color-text);font-size:1.05rem}.text-default{color:var(--color-text)}.text-soft{color:var(--color-text-soft)}.text-muted{color:var(--color-text-muted)}.text-subtle{color:var(--color-text-subtle)}.section-text{color:var(--color-text-soft)}.section-text>*:last-child{margin-block-end:0}.card-text{max-width:60ch;color:var(--color-text-muted);line-height:1.7}.card-text>*:last-child{margin-block-end:0}.empty-state{margin:0;color:var(--color-text-muted)}.description,.intro,.paragraph{font-size:1rem}.heading{margin-block-end:var(--space-3);font-size:clamp(1.25rem,2vw,1.65rem)}.accent-heading{padding-inline-start:var(--accent-heading-padding, var(--space-4));border-left:var(--accent-heading-border-width, .28rem) solid var(--accent-heading-color, var(--color-accent))}.panel,.main-menu>.nav-menu,.main-menu>ul,.paragraph-section{padding:var(--space-5);background:linear-gradient(180deg,var(--color-surface),var(--color-surface-muted));border:1px solid var(--color-card-border);border-radius:var(--radius-panel);box-shadow:var(--shadow-panel)}.card,.main-menu>ul>.nav-item{padding:var(--space-4);background:var(--color-surface-muted);border:1px solid var(--color-card-border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease}.card:hover,.main-menu>ul>.nav-item:hover{background:var(--color-card-surface-hover);border-color:var(--color-card-border-hover)}.card.cta-card{border-color:var(--color-cta-card-border);box-shadow:var(--shadow-panel-featured)}.card.cta-card:hover{border-color:var(--color-cta-card-border-hover)}.card-icon{background:var(--color-bg-alt);border:1px solid var(--color-card-border)}.main-menu{display:grid;gap:var(--space-5)}.main-menu>.nav-menu{align-items:stretch}.main-menu>.nav-menu .nav-link{min-height:2.75rem}.main-menu>ul{display:grid;gap:var(--space-5);margin:0}.main-menu h2{margin-block-end:var(--space-2);font-size:1.25rem}.project-links,.tags{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin-block:var(--space-5)}.project-link,.remove-tag-filter,#tags-menu-button,.icon-button{display:inline-grid;place-items:center;width:2.35rem;height:2.35rem;color:var(--color-text-soft);background:var(--color-surface-elevated);border:1px solid var(--color-card-border);border-radius:var(--radius-sm);box-shadow:none}.project-link:hover,.remove-tag-filter:hover,#tags-menu-button:hover,.icon-button:hover,#tags-menu-button.active,.icon-button.active{color:var(--color-accent);border-color:var(--color-card-border-hover);background:var(--color-surface-hover)}.tag{display:inline-flex;align-items:center;min-height:2rem;padding:.2rem .65rem;color:var(--color-text-soft);font-size:.9rem;background:var(--color-transparent);border:1px solid var(--color-border-cyan);border-radius:var(--radius-chip)}h1.tag{margin:0;font-size:1rem}#tags-nav{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin-block-end:var(--space-5)}#tags-menu{display:flex;flex-wrap:wrap;gap:var(--space-3);margin:0}#tags-menu-button,.icon-button{cursor:pointer}.footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);padding-block:var(--space-5);color:var(--color-text-muted);border-top:1px solid var(--color-card-border)}.copyright,.footer .social-media-links{margin:0}@media(max-width:760px){:root{--page-gutter: 2rem}.navbar,main,.footer{width:min(calc(100% - var(--page-gutter)),var(--container-width))}.navbar{position:relative;min-height:4.25rem}.navbar nav{margin-inline-start:auto}.navbar .nav-menu{position:absolute;top:calc(100% + .75rem);right:0;z-index:10;display:none;width:min(18rem,calc(100vw - 2rem));padding:var(--space-4);background:var(--color-surface-elevated);border:1px solid var(--color-card-border);border-radius:var(--radius-card)}.navbar .nav-menu.active{display:grid;gap:var(--space-3)}.navbar .nav-link.current:after{left:auto;right:-.85rem;bottom:50%;transform:translateY(50%)}.hamburger{display:flex}main{padding-block-start:var(--space-4)}.main-menu>.nav-menu,.main-menu>ul,.paragraph-section{padding:var(--space-4)}.main-menu>.nav-menu{display:grid;gap:var(--space-3)}.footer{align-items:flex-start;flex-direction:column}}@media(max-width:480px){:root{--page-gutter: 1.25rem}.navbar,main,.footer{width:min(calc(100% - var(--page-gutter)),var(--container-width))}.title{font-size:1.8rem}.main-menu>ul>.nav-item{padding:var(--space-3)}}.social-media-links{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-7);margin-block:var(--space-5)}.social-media-link{display:inline-flex;align-items:center;gap:var(--space-2);min-height:2.5rem;font-weight:700}.social-media-link svg:first-child{color:var(--color-text-muted);font-size:1.1rem}.social-media-link svg:last-child{color:var(--color-text-subtle);font-size:.75rem}.social-media-link:hover,.social-media-link:hover svg{color:var(--color-accent-strong)}.hero-section{position:relative;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(18rem,.65fr);gap:var(--space-7);min-height:25rem;overflow:hidden}.hero-section:before{position:absolute;inset:0;content:"";pointer-events:none;background-image:radial-gradient(var(--color-accent-green-dim) 1px,var(--color-transparent) 1px);background-position:right 5rem top 2rem;background-size:.8rem .8rem;-webkit-mask-image:linear-gradient(90deg,transparent 42%,black 72%,transparent 100%);mask-image:linear-gradient(90deg,transparent 42%,black 72%,transparent 100%);opacity:.45}.hero-section__content,.hero-section__visual{position:relative;z-index:1}.hero-section__content{display:flex;flex-direction:column;justify-content:space-between;max-width:72ch;min-height:100%}.hero-section__title{display:grid;gap:var(--space-2);margin-block-end:var(--space-4);--accent-heading-padding: var(--space-5);font-size:clamp(2.2rem,5vw,4rem)}.hero-section__title span{display:block}.hero-section__title:has(+.hero-section__meta){margin-block-end:0}.hero-section__intro{max-width:68ch;margin-block-end:var(--space-5);font-size:1.02rem;line-height:1.8}.hero-section__meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-4);margin-block:var(--space-4) var(--space-5)}.hero-section__intro>*:last-child{margin-block-end:0}.hero-section__footer{margin-block-start:var(--space-6)}.hero-section__skills{display:flex;flex-wrap:wrap;gap:var(--space-3);margin:0 0 var(--space-5)}.hero-section__skill{gap:var(--space-2);min-height:2.15rem}.hero-section__skill svg{color:var(--color-accent-cyan)}.hero-section__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-5)}.hero-section__actions .social-media-links{margin-inline-start:var(--space-5)}.hero-section__visual{display:grid;place-items:center;min-height:18rem}.hero-section__terminal{display:grid;place-items:center;width:min(14rem,100%);aspect-ratio:1;color:var(--color-accent-cyan);font-size:clamp(3.5rem,7vw,5rem);font-weight:700;line-height:.8;background:linear-gradient(180deg,var(--color-surface-elevated),var(--color-surface-muted));border:1px solid var(--color-card-border);border-radius:var(--radius-card);box-shadow:var(--shadow-panel)}@media(max-width:760px){.hero-section{grid-template-columns:1fr;gap:var(--space-5);min-height:auto}.hero-section:before{background-position:right 1rem top 1rem;-webkit-mask-image:linear-gradient(180deg,transparent 12%,black 48%,transparent 100%);mask-image:linear-gradient(180deg,transparent 12%,black 48%,transparent 100%)}.hero-section__visual{min-height:12rem}.hero-section__footer{margin-block-start:var(--space-5)}.hero-section__terminal{width:min(11rem,70vw)}}@media(max-width:480px){.hero-section{padding:var(--space-4)}.hero-section__title{--accent-heading-padding: var(--space-4)}.hero-section__actions{align-items:stretch;flex-direction:column}.hero-section__actions .social-media-links{margin-inline-start:0}.hero-section__actions .cta-button{width:100%}}.project-status-badge{display:inline-flex;align-items:center;gap:var(--space-2);min-height:1.7rem;padding:.15rem .55rem;font-size:.8rem;font-weight:700;line-height:1;white-space:nowrap;border-radius:var(--radius-sm);border:1px solid var(--color-border-visible)}.project-status-badge svg{font-size:.75rem}.project-status-badge.featured svg{color:var(--color-accent)}.project-status-badge.beta svg{color:var(--color-accent-cyan)}.project-status-badge.prototype svg{color:var(--color-accent-cyan)}.card.project-summary{position:relative;display:grid;grid-template-rows:auto 1fr auto auto;gap:var(--space-3);min-height:13rem;padding:var(--space-5)}.card.project-summary.compact{min-height:9rem;padding:var(--space-4)}.project-summary>*:not(.project-summary__overlay-link){position:relative;z-index:1;pointer-events:none}.project-summary__overlay-link{position:absolute;inset:0;z-index:0;border-radius:inherit}.project-summary__overlay-link:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.project-summary__header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:var(--space-3);min-width:0}.project-summary__identity{display:grid;gap:var(--space-3);min-width:0}.project-summary__icon.card-icon{display:grid;place-items:center;width:3.25rem;aspect-ratio:1;color:var(--color-accent-cyan);border-radius:var(--radius-card)}.project-summary__icon.card-icon img{display:block;width:auto;height:auto;max-height:100%;object-fit:contain;border-radius:inherit}.project-summary__icon.card-icon svg{font-size:1.2rem}.project-summary__badges{justify-self:end;align-self:start;display:inline-flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:var(--space-2);max-width:12rem}.project-summary__title{margin:0;font-size:1.15rem}.project-summary.compact .project-summary__title{font-size:1rem}.project-summary:has(.project-summary__overlay-link:hover) .project-summary__title{color:var(--color-accent-strong)}.project-summary.compact .project-summary__description{line-height:1.45}.project-summary__tags{align-self:end;display:flex;flex-wrap:wrap;gap:var(--space-2);margin:var(--space-4) 0 0}.project-summary.compact .project-summary__tags{margin-block-start:var(--space-2)}.project-summary__tag{display:inline-flex;align-items:center;min-height:1.9rem;padding:.15rem .65rem;font-size:.85rem;background:var(--color-surface);border:1px solid var(--color-card-border);border-radius:var(--radius-sm)}.project-summary__links{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);margin-block-start:0}.project-summary__links a{position:relative;z-index:1;pointer-events:auto}.project-summary__links .social-media-links{gap:var(--space-4);margin:0}.project-summary__link{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:700}.project-summary__link svg:last-child{font-size:.75rem}.project-summary__link.detail{color:var(--color-accent)}.project-summary:has(.project-summary__overlay-link:hover) .project-summary__link.detail,.project-summary:has(.project-summary__overlay-link:hover) .project-summary__link.detail svg{color:var(--color-accent-strong)}.project-summary__link.primary svg:first-child{color:var(--color-accent-cyan)}.project-summary__link:hover,.project-summary__link:hover svg{color:var(--color-accent-strong)!important}@media only screen and (max-width:1024.98px){.project-summary__badges{display:flex;align-items:end;flex-direction:column-reverse}}@media only screen and (max-width:575.98px){.card.project-summary{padding:var(--space-4)}}.overview-card-section{display:grid;gap:var(--space-4)}.overview-card-section__header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-4)}.overview-card-section__header h2{margin:0}.overview-card-section__link{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-accent);font-weight:700}.overview-card-section__link:hover{color:var(--color-accent-strong)}.overview-card-section__list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:var(--space-5);margin:0}.overview-card-section__list.secondary{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3) var(--space-5)}.overview-card-section__list.layout-single{grid-template-columns:1fr}.overview-card-section__list.layout-paired,.overview-card-section__list.secondary.layout-paired,.overview-card-section__list.layout-lead{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-card-section__list.layout-lead>.overview-card-section__item:first-child{grid-column:1 / -1}.overview-card-section__list.layout-fifths,.overview-card-section__list.secondary.layout-fifths{grid-template-columns:repeat(6,minmax(0,1fr))}.overview-card-section__list.layout-fifths>.overview-card-section__item:nth-child(-n+2){grid-column:span 3}.overview-card-section__list.layout-fifths>.overview-card-section__item:nth-child(n+3){grid-column:span 2}.overview-card-section__item{display:flex;min-width:0}@media only screen and (max-width:991.98px){.overview-card-section__list,.overview-card-section__list.secondary,.overview-card-section__list.layout-single,.overview-card-section__list.layout-paired,.overview-card-section__list.secondary.layout-paired,.overview-card-section__list.layout-lead,.overview-card-section__list.layout-fifths,.overview-card-section__list.secondary.layout-fifths,.overview-card-section__list.layout-stack{grid-template-columns:1fr}.overview-card-section__item,.overview-card-section__list.layout-lead>.overview-card-section__item:first-child,.overview-card-section__list.layout-fifths>.overview-card-section__item:nth-child(-n+2),.overview-card-section__list.layout-fifths>.overview-card-section__item:nth-child(n+3){grid-column:auto}}@media only screen and (max-width:575.98px){.overview-card-section__header{align-items:flex-start;flex-direction:column}}.projects-section__item .card.project-summary{width:100%}.home-page{display:grid;gap:var(--space-6)}.numbered-heading{display:flex;align-items:baseline;gap:var(--space-4);margin:0;font-size:1.2rem}.numbered-heading__marker{color:var(--color-accent);font-size:1.45rem}.numbered-heading__title{min-width:0}.numbered-heading__actions{display:inline-flex;align-items:center;margin-inline-start:auto}.about-page{display:grid;gap:var(--space-5)}.about-page .social-media-links{margin-block:0}.about-page__sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5)}.about-section{display:grid;grid-template-columns:auto minmax(0,1fr);align-content:start;gap:var(--space-4);padding:var(--space-5)}.about-section.wide{grid-column:1 / -1}.about-section__icon{display:grid;place-items:center;width:3rem;height:3rem;color:var(--color-accent);border-radius:var(--radius-sm)}.about-section__content{display:grid;gap:var(--space-2);min-width:0}.about-section__body{line-height:1.7}.about-page__habit-list{display:grid;gap:var(--space-2);margin:var(--space-4) 0 0;line-height:1.6}.about-page__habit-list li{position:relative;padding-inline-start:var(--space-5)}.about-page__habit-list li:before{position:absolute;left:.35rem;top:.68em;width:.35rem;height:.35rem;content:"";background:var(--color-accent);border-radius:999px;transform:translateY(-50%)}@media only screen and (max-width:767.98px){.about-page__sections,.about-section{grid-template-columns:1fr}}@media only screen and (max-width:575.98px){.about-section{padding:var(--space-4)}.about-section__icon{width:2.75rem;height:2.75rem}}.blog-tag-list{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:0}.blog-tag-chip.tag{border-color:var(--color-border-visible)}.blog-tag-chip.tag:hover{background:var(--color-surface-strong);border-color:var(--color-border-accent-alpha)}.blog-tag-chip.active{color:var(--color-accent-cyan);background:var(--color-surface-elevated);border-color:var(--color-border-strong)}.blog-tag-chip.active:hover{border-color:var(--color-nav-close)}.card.blog-post-card{position:relative;display:grid;grid-template-rows:1fr auto;gap:var(--space-2);min-height:18rem;padding:var(--space-5)}.blog-post-card>*:not(.blog-post-card__overlay-link){position:relative;z-index:1;pointer-events:none}.blog-post-card__overlay-link{position:absolute;inset:0;z-index:0;border-radius:inherit}.blog-post-card__overlay-link:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.blog-post-card:has(.blog-post-card__overlay-link:hover){background:var(--color-card-surface-hover);border-color:var(--color-card-border-hover)}.blog-post-card__content{display:grid;gap:var(--space-3);min-width:0}.blog-post-card__title{margin:0;color:var(--color-text);font-size:1.15rem}.blog-post-card:has(.blog-post-card__overlay-link:hover) .blog-post-card__title{color:var(--color-accent-strong)}.blog-post-card__intro{max-width:72ch;margin:0;color:var(--color-text-muted);line-height:1.65}.blog-post-card__meta{display:flex;flex-wrap:wrap;gap:var(--space-3);color:var(--color-text-muted);font-size:.92rem}.blog-post-card__date{display:inline-flex;align-items:center;gap:var(--space-2)}.blog-post-card__date svg{color:currentColor}.blog-post-card__footer{display:flex;align-items:end;justify-content:space-between;gap:var(--space-4);min-width:0}.blog-post-card__tags .blog-tag-chip.tag:hover{background:transparent;border-color:var(--color-border-visible)}.blog-post-card__cta{position:relative;z-index:1;display:inline-flex;align-items:center;flex:0 0 auto;gap:var(--space-2);color:var(--color-accent);font-weight:700;pointer-events:auto}.blog-post-card:has(.blog-post-card__overlay-link:hover) .blog-post-card__cta,.blog-post-card:has(.blog-post-card__overlay-link:hover) .blog-post-card__cta svg,.blog-post-card__cta:hover,.blog-post-card__cta:hover svg{color:var(--color-accent-strong)}@media(max-width:760px){.card.blog-post-card{min-height:auto}.blog-post-card__footer{align-items:flex-start;flex-direction:column}}.blog-overview-page{display:grid;gap:var(--space-6)}.blog-overview-page__tag-filter{display:flex;align-items:center;gap:var(--space-3)}.blog-overview-page__tag-filter-icon{flex:0 0 auto;color:var(--color-accent);font-size:1.28rem}.blog-overview-page__tag-filter-icon-link{display:inline-grid;place-items:center;color:var(--color-accent)}.blog-overview-page__tag-filter-icon-link.clear,.blog-overview-page__tag-filter-icon-link.clear .blog-overview-page__tag-filter-icon{color:var(--color-nav-close)}.blog-posts-section__item .card.blog-post-card{width:100%}.code-snippet{display:grid;gap:var(--space-3)}.code-snippet__heading{margin:var(--space-1) 0 0 0;--accent-heading-color: var(--color-accent-soft);color:var(--color-text-soft);font-size:1rem}.code-snippet__code-wrap{position:relative;padding:var(--space-3);padding-block-end:0;padding-inline-end:var(--space-7);color:var(--color-accent-cyan);background:var(--color-bg-code);border:1px solid var(--color-card-border);border-radius:var(--radius-card)}.code-snippet__box{margin:0;padding-block-end:var(--space-3);overflow-x:auto;color:inherit}.code-snippet__code{display:block;min-width:0;font-family:var(--font-mono);white-space:pre}.code-snippet__box.copied .code-snippet__text{color:var(--color-bg-code);background:var(--color-accent-cyan)}.code-snippet__copy{position:absolute;top:var(--space-3);right:var(--space-3);display:inline-flex;align-items:center;justify-content:center;width:auto;height:auto;margin:0;padding:0;color:var(--color-text-muted);background:transparent;border:0;box-shadow:none;cursor:pointer}.code-snippet__copy:hover{color:var(--color-accent);background:transparent;border:0}.code-snippet__description{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:var(--space-3);width:100%;margin:0;color:var(--color-text-soft);line-height:1.75;border-radius:var(--radius-card)}.code-snippet__description-icon{display:inline-grid;place-items:center;width:1.5rem;height:1.5rem;color:var(--color-accent-cyan)}.code-snippet__description-body{min-width:0}.code-snippet__description-body>*:last-child{margin-block-end:0}.blog-post-page{display:grid;gap:var(--space-6)}.blog-post-page__meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-5)}.blog-post-page__date{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-text-muted);font-weight:700}.blog-post-page__date svg{color:currentColor}.blog-post-page__meta-separator{width:.25rem;height:.25rem;background:var(--color-text-muted);border-radius:999px}.blog-post-page__tags{align-items:center}.blog-post-page__layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(14rem,18rem);gap:var(--space-6);align-items:start}.blog-post-page__content{display:grid;gap:var(--space-5);min-width:0}.blog-post-page__section{display:grid;align-content:start;gap:var(--space-4);min-width:0;padding:var(--space-5);scroll-margin-top:var(--space-6)}.blog-post-page__section-content{display:grid;gap:var(--space-4);width:100%;min-width:0;max-width:100%}.blog-post-page__section-content>*{min-width:0;max-width:100%}.blog-post-page__section .paragraph{max-width:76ch;margin:0;overflow-wrap:anywhere}.blog-post-page__section-content .numbered-heading__title,.blog-post-page__section-content .code-snippet__heading,.blog-post-page__section-content .code-snippet__description-body{overflow-wrap:anywhere}.blog-post-page__section-content .code-snippet,.blog-post-page__section-content .code-snippet__code-wrap,.blog-post-page__section-content .code-snippet__box{min-width:0;max-width:100%}.blog-post-page__section-content .code-snippet__box{width:100%}.blog-post-page__toc{position:sticky;top:var(--space-5)}.blog-post-page__toc h2{margin-block-end:var(--space-4);font-size:1rem}.blog-post-page__toc ol{display:grid;gap:var(--space-3);margin:0;padding:0;list-style:none}.blog-post-page__toc a{position:relative;display:inline-flex;color:var(--color-text-soft)}.blog-post-page__toc a:hover,.blog-post-page__toc a.current{color:var(--color-text)}.blog-post-page__toc a.current:before{position:absolute;left:calc(0px - var(--space-4));top:.75em;width:.35rem;height:.35rem;content:"";background:var(--color-accent);border-radius:999px;transform:translateY(-50%)}@media(max-width:900px){.blog-post-page__layout{grid-template-columns:1fr}.blog-post-page__toc{position:static;order:-1;padding:0;padding-inline-start:var(--space-5);background:transparent;border:0;border-radius:0}.blog-post-page__toc a.current{color:var(--color-text-soft)}.blog-post-page__toc a.current:before{content:none}}@media(max-width:575.98px){.blog-post-page__section{padding:var(--space-4)}.blog-post-page__toc{padding-inline-start:var(--space-4)}}.project-detail{display:grid;gap:var(--space-5)}.project-detail__link{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:700}.project-detail__link svg:first-child{color:var(--color-accent-cyan)}.project-detail__link svg:last-child{font-size:.75rem}.project-detail__link:hover,.project-detail__link:hover svg{color:var(--color-accent-strong)}.project-detail__visual-media{width:100%;height:100%;object-fit:cover;border-radius:inherit}.project-detail__sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5)}.project-detail__section{display:grid;align-content:start;gap:var(--space-4);padding:var(--space-5)}.project-detail__section-body{line-height:1.7}@media only screen and (max-width:767.98px){.project-detail__sections{grid-template-columns:1fr}}@media only screen and (max-width:575.98px){.project-detail__section{padding:var(--space-4)}}.portfolio-page{display:grid;gap:var(--space-6)}
