.loading-screen{position:fixed;inset:0;background:#030303;z-index:9999;display:flex;justify-content:center;align-items:center;transition:opacity .5s ease}.loading-screen--hidden{opacity:0;pointer-events:none}.loading-screen__content{display:flex;flex-direction:column;align-items:center;gap:1.5rem}.loading-screen__logo{font-family:Syncopate,sans-serif;font-size:2.5rem;font-weight:700;color:#e0e0e0;text-transform:uppercase;letter-spacing:.05em;opacity:0;animation:fadeIn .5s ease forwards}.loading-screen__logo span{color:#ff003c}.loading-screen__bar{width:0;height:1px;background:linear-gradient(to right,#ff003c,#00f3ff);animation:loadBar 1.5s ease-in-out forwards}@keyframes loadBar{0%{width:0;opacity:1}60%{width:180px}to{width:220px;opacity:0}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.back-to-top{position:fixed;bottom:var(--space-8);right:var(--space-8);background:var(--color-accent-primary);color:var(--color-text-inverse);width:50px;height:50px;border-radius:var(--radius-full);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;transform:translateY(20px);transition:all var(--transition-base);z-index:900}.back-to-top--visible{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top:hover{background:var(--color-accent-hover);transform:translateY(-5px);box-shadow:0 10px 25px #bb851d66}@media(max-width:768px){.back-to-top{bottom:var(--space-4);right:var(--space-4)}}.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;height:var(--nav-height);display:flex;align-items:center;transition:all var(--transition-base);background:transparent}.navbar--scrolled{background:#030303e0;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--color-border)}[data-theme=light] .navbar--scrolled{background:#f8f8f8e6}.navbar__container{display:flex;align-items:center;justify-content:space-between;width:100%}.navbar__logo{display:flex;align-items:center;font-family:var(--font-display);font-size:1.1rem;font-weight:700;color:var(--color-text-primary);text-decoration:none;letter-spacing:.05em;text-transform:uppercase}.navbar__logo-dot{color:var(--color-accent-primary)}.navbar__links{display:flex;align-items:center;gap:var(--space-8)}.navbar__link{font-family:var(--font-mono);font-size:.72rem;font-weight:500;color:var(--color-text-secondary);text-decoration:none;text-transform:uppercase;letter-spacing:.1em;transition:color var(--transition-fast);position:relative}.navbar__link:before{content:"//";position:absolute;left:-16px;color:var(--color-accent-primary);opacity:0;transition:opacity var(--transition-fast);font-size:.65rem}.navbar__link:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:1px;background:var(--color-accent-primary);transition:width var(--transition-fast)}.navbar__link:hover{color:var(--color-accent-primary)}.navbar__link:hover:before{opacity:1}.navbar__link:hover:after{width:100%}.navbar__actions{display:flex;align-items:center;gap:var(--space-2)}.navbar__theme-toggle{color:var(--color-text-tertiary);border:1px solid var(--color-border)}.navbar__theme-toggle:hover{color:var(--color-accent-secondary);border-color:var(--color-accent-secondary)}.navbar__mobile-toggle{display:none;color:var(--color-text-primary)}@media(max-width:768px){.navbar__links{position:fixed;top:var(--nav-height);left:0;right:0;background:#030303f7;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);flex-direction:column;padding:var(--space-6);gap:var(--space-4);border-bottom:1px solid var(--color-border);transform:translateY(-100%);opacity:0;pointer-events:none;transition:all var(--transition-base)}[data-theme=light] .navbar__links{background:#f8f8f8f7}.navbar__links--open{transform:translateY(0);opacity:1;pointer-events:auto}.navbar__link{font-size:var(--font-size-sm);padding:var(--space-3) 0}.navbar__mobile-toggle{display:flex}}.github-stats{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5);width:100%;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.github-stats__header{display:none}.github-stats__grid{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4)}.github-stats__item{display:flex;flex-direction:column;align-items:center;text-align:center}.github-stats__value{font-family:var(--font-mono);font-size:var(--font-size-lg);font-weight:700;color:var(--color-accent-primary);line-height:1;margin-bottom:4px}.github-stats__label{font-family:var(--font-mono);font-size:.62rem;font-weight:500;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.08em}.github-stats__link{display:none}.github-stats--loading{min-height:72px}@media(max-width:640px){.github-stats__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3)}}.hero{min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding-top:var(--nav-height);position:relative;overflow:hidden}.hero__hud{position:absolute;inset:calc(var(--nav-height) + 1.5rem) 1.5rem 1.5rem;pointer-events:none;z-index:2}.hero__hud-tl,.hero__hud-tr,.hero__hud-bl,.hero__hud-br{position:absolute;display:flex;align-items:center}.hero__hud-tl{top:0;left:0;padding:.5rem .75rem .5rem 1rem;border-top:1px solid rgba(255,0,60,.35);border-left:1px solid rgba(255,0,60,.35)}.hero__hud-tr{top:0;right:0;padding:.5rem 1rem .5rem .75rem;border-top:1px solid rgba(255,0,60,.35);border-right:1px solid rgba(255,0,60,.35)}.hero__hud-bl{bottom:0;left:0;padding:.5rem .75rem .5rem 1rem;border-bottom:1px solid rgba(255,0,60,.35);border-left:1px solid rgba(255,0,60,.35)}.hero__hud-br{bottom:0;right:0;padding:.5rem 1rem .5rem .75rem;border-bottom:1px solid rgba(255,0,60,.35);border-right:1px solid rgba(255,0,60,.35)}.hero__hud-label{font-family:var(--font-mono);font-size:.62rem;color:#ff003c80;text-transform:uppercase;letter-spacing:.12em}.hero__container{display:flex;flex-direction:column;align-items:flex-start;max-width:860px;padding-top:var(--space-12);padding-bottom:var(--space-12);position:relative;z-index:3}.hero__badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:#ff003c0f;border:1px solid rgba(255,0,60,.2);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:.72rem;color:var(--color-text-secondary);margin-bottom:var(--space-6);letter-spacing:.04em}.hero__badge-prompt{color:var(--color-accent-primary);font-weight:700}.hero__badge-cursor{color:var(--color-accent-secondary);animation:cursor-blink 1.1s step-end infinite}.hero__title{font-family:var(--font-display);font-size:clamp(3rem,7vw,6rem);font-weight:700;line-height:1;margin-bottom:var(--space-6);letter-spacing:.02em;text-transform:uppercase;color:var(--color-text-primary)}.hero__title-accent{color:var(--color-accent-primary)}.hero__description{font-size:var(--font-size-lg);color:var(--color-text-secondary);line-height:1.75;margin-bottom:var(--space-8);max-width:640px}.hero__cta{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-10)}.hero__stats-wrapper{border-top:1px solid var(--color-border);padding-top:var(--space-6);width:100%;max-width:560px}.hero__stats{display:flex;gap:var(--space-6);margin-bottom:var(--space-6)}.hero__stat{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:.7rem;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.08em}.hero__stat-icon{display:flex;align-items:center;color:var(--color-accent-primary)}.hero__scroll-indicator{position:absolute;bottom:var(--space-8);left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:var(--space-2);color:var(--color-text-tertiary);animation:bounce 2s infinite;z-index:3}@keyframes bounce{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(6px)}}@media(max-width:768px){.hero__hud-tl,.hero__hud-tr,.hero__hud-bl,.hero__hud-br{display:none}.hero__title{font-size:clamp(2.4rem,10vw,3.5rem)}}.about__content{display:grid;grid-template-columns:1.5fr 1fr;gap:var(--space-12);align-items:start}.about__text{max-width:700px}.about__description{font-size:var(--font-size-base);line-height:1.85;color:var(--color-text-secondary)}.about__focus-areas{display:flex;flex-direction:column;gap:var(--space-4)}.about__focus-card{display:flex;flex-direction:column;gap:var(--space-2);text-align:center;padding:var(--space-6)}.about__focus-icon{display:flex;justify-content:center;margin-bottom:var(--space-2);color:var(--color-accent-primary)}.about__focus-title{font-family:var(--font-mono);font-size:var(--font-size-sm);font-weight:700;color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.06em}.about__focus-subtitle{font-size:var(--font-size-sm);color:var(--color-accent-secondary);font-family:var(--font-mono);font-size:.7rem}@media(max-width:1024px){.about__content{grid-template-columns:1fr}.about__focus-areas{flex-direction:row;flex-wrap:wrap}.about__focus-card{flex:1;min-width:200px}}@media(max-width:640px){.about__focus-areas{flex-direction:column}.about__focus-card{min-width:100%}}.website-preview{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;z-index:1;background:var(--color-surface)}.website-preview iframe{width:400%;height:400%;border:none;transform:scale(.25);transform-origin:top left;pointer-events:none;background:#fff}.projects__filter{display:flex;justify-content:center;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-10)}.projects__filter-btn{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:transparent;color:var(--color-text-tertiary);font-family:var(--font-mono);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;transition:all var(--transition-base);cursor:pointer}.projects__filter-btn:hover{border-color:var(--color-accent-primary);color:var(--color-accent-primary)}.projects__filter-btn--active{background:var(--color-accent-primary);border-color:var(--color-accent-primary);color:#fff;box-shadow:var(--shadow-glow)}.projects__filter-btn--pinned{border-color:#f59e0b66;color:#f59e0b;font-size:.78rem}.projects__filter-btn--pinned:hover{border-color:#f59e0b;color:#f59e0b;background:#f59e0b14}.projects__filter-btn--pinned.projects__filter-btn--active{background:#f59e0b;border-color:#f59e0b;color:#000;box-shadow:0 0 20px #f59e0b59}.projects__filter-btn--all{border-color:#00f3ff40;color:var(--color-accent-secondary);font-size:.78rem}.projects__filter-btn--all:hover{border-color:var(--color-accent-secondary);color:var(--color-accent-secondary);background:#00f3ff0d}.projects__filter-btn--all.projects__filter-btn--active{background:var(--color-accent-secondary);border-color:var(--color-accent-secondary);color:#000;box-shadow:var(--shadow-glow-cyan)}.projects__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-5)}.project-card{display:flex;flex-direction:column;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;transition:all var(--transition-base);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.project-card:hover{border-color:#ff003c4d;box-shadow:var(--shadow-glow);transform:translateY(-3px)}.project-card__media{height:180px;position:relative;overflow:hidden;background:#080808cc;background-image:radial-gradient(rgba(255,255,255,.04) 1px,transparent 1px);background-size:18px 18px;flex-shrink:0}.project-card__img{width:100%;height:100%;object-fit:cover;display:block}.project-card__preview{width:100%;height:100%;pointer-events:none;overflow:hidden}.project-card__placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#ff003c4d;font-family:var(--font-display);font-size:3.5rem;font-weight:700;text-transform:uppercase;-webkit-user-select:none;user-select:none}.project-card__media--multi{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:#0009}.project-card__media-panel{position:relative;overflow:hidden;height:180px}.project-card__media-panel .project-card__img{object-position:top left}.project-card__os-label{position:absolute;bottom:0;left:0;right:0;padding:3px 6px;background:#000000bf;font-family:var(--font-mono);font-size:.58rem;color:var(--color-accent-secondary);text-transform:uppercase;letter-spacing:.08em;text-align:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.project-card__content{padding:var(--space-5);display:flex;flex-direction:column;flex:1;gap:var(--space-3)}.project-card__tags{display:flex;gap:var(--space-2);flex-wrap:wrap}.project-card__title{font-family:var(--font-mono);font-size:var(--font-size-base);font-weight:700;color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.04em;line-height:1.2;margin:0}.project-card__subtitle{font-family:var(--font-mono);font-size:.68rem;color:var(--color-text-tertiary);margin:0;margin-top:calc(-1 * var(--space-2))}.project-card__description{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.65;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;flex:1}.project-card__tech{display:flex;flex-wrap:wrap;gap:var(--space-1)}.project-card__actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);border-top:1px solid var(--color-border);padding-top:var(--space-4);margin-top:auto}.project-card__links{display:flex;gap:var(--space-2);flex-wrap:wrap}.project-card__link-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:transparent;color:var(--color-text-secondary);font-family:var(--font-mono);font-size:.66rem;font-weight:500;text-transform:uppercase;letter-spacing:.06em;text-decoration:none;transition:all var(--transition-fast);white-space:nowrap}.project-card__link-btn:hover{border-color:var(--color-accent-secondary);color:var(--color-accent-secondary)}.project-card__link-btn--store:hover{border-color:#0078d4;color:#0078d4}.project-card__readmore{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-mono);font-size:.66rem;font-weight:500;color:var(--color-accent-primary);text-decoration:none;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;transition:gap var(--transition-fast),opacity var(--transition-fast);flex-shrink:0}.project-card__readmore:hover{gap:8px;color:var(--color-accent-primary);opacity:.8}@media(max-width:640px){.projects__grid{grid-template-columns:1fr}}.experience__content{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-12)}.experience__column-title{display:flex;align-items:center;gap:var(--space-3);font-family:var(--font-mono);font-size:.72rem;font-weight:700;color:var(--color-text-secondary);margin-bottom:var(--space-8);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border);text-transform:uppercase;letter-spacing:.1em}.experience__column-title svg{color:var(--color-accent-primary)}.timeline{display:flex;flex-direction:column;gap:var(--space-5)}.timeline__item{display:grid;grid-template-columns:auto 1fr;gap:var(--space-5)}.timeline__marker{display:flex;flex-direction:column;align-items:center}.timeline__dot{width:10px;height:10px;background:var(--color-accent-primary);border-radius:50%;border:2px solid var(--color-background);box-shadow:0 0 0 2px #ff003c4d,var(--shadow-glow);flex-shrink:0}.timeline__line{width:1px;flex:1;background:linear-gradient(to bottom,rgba(255,0,60,.3),var(--color-border));margin-top:var(--space-2)}.timeline__content{padding:var(--space-5)}.timeline__header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-2);flex-wrap:wrap}.timeline__title{font-family:var(--font-mono);font-size:var(--font-size-sm);font-weight:700;color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.04em}.timeline__period-wrapper{display:flex;align-items:center;gap:var(--space-2)}.timeline__period-wrapper svg{flex-shrink:0;color:var(--color-text-tertiary)}.timeline__period{font-family:var(--font-mono);font-size:.68rem;font-weight:500;color:var(--color-accent-secondary);white-space:nowrap}.timeline__subtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-3);font-weight:500}.timeline__role{display:inline-block;margin-bottom:var(--space-3)}.timeline__description{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.65;margin-bottom:var(--space-3)}.timeline__achievements{display:flex;flex-direction:column;gap:var(--space-2)}.timeline__achievement{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:.68rem;color:var(--color-text-secondary)}.timeline__achievement svg{color:var(--color-completed);flex-shrink:0}@media(max-width:1024px){.experience__content{grid-template-columns:1fr;gap:var(--space-16)}}@media(max-width:640px){.timeline__header{flex-direction:column}}.contact__wrapper{max-width:800px;margin:0 auto;text-align:center}.contact .section-header{justify-content:center}.contact__description{font-size:var(--font-size-base);color:var(--color-text-secondary);margin-bottom:var(--space-8);max-width:500px;margin-left:auto;margin-right:auto;line-height:1.75}.contact__buttons{display:flex;justify-content:center;gap:var(--space-4);flex-wrap:wrap}.contact__btn{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-6);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);text-decoration:none;font-family:var(--font-mono);font-size:.72rem;font-weight:500;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.08em;transition:all var(--transition-base);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);position:relative}.contact__btn:before,.contact__btn:after{content:"";position:absolute;width:8px;height:8px;border:1px solid transparent;transition:all var(--transition-base);pointer-events:none}.contact__btn:before{top:-1px;left:-1px;border-top-color:var(--color-text-tertiary);border-left-color:var(--color-text-tertiary)}.contact__btn:after{bottom:-1px;right:-1px;border-bottom-color:var(--color-text-tertiary);border-right-color:var(--color-text-tertiary)}.contact__btn:hover{color:var(--color-text-primary);transform:translateY(-2px)}.contact__btn:hover:before{width:16px;height:16px}.contact__btn:hover:after{width:16px;height:16px}.contact__btn svg{transition:color var(--transition-fast)}.contact__btn--email:hover{border-color:#ff003c;box-shadow:0 0 20px #ff003c26}.contact__btn--email:hover svg{color:#ff003c}.contact__btn--email:hover:before,.contact__btn--email:hover:after{border-color:#ff003c}.contact__btn--github:hover{border-color:var(--color-text-secondary);box-shadow:0 0 20px #ffffff0d}.contact__btn--github:hover svg{color:var(--color-text-primary)}.contact__btn--github:hover:before,.contact__btn--github:hover:after{border-color:var(--color-text-secondary)}.contact__btn--linkedin:hover{border-color:#00f3ff;box-shadow:0 0 20px #00f3ff1f}.contact__btn--linkedin:hover svg{color:#00f3ff}.contact__btn--linkedin:hover:before,.contact__btn--linkedin:hover:after{border-color:#00f3ff}.footer{padding:var(--space-10) 0;border-top:1px solid var(--color-border);background:var(--color-background-alt);position:relative}.footer__content{display:flex;flex-direction:column;align-items:center;gap:var(--space-5);text-align:center}.footer__brand{display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.footer__logo{font-family:var(--font-display);font-size:var(--font-size-lg);font-weight:700;color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.05em}.footer__logo-dot{color:var(--color-accent-primary)}.footer__tagline{font-family:var(--font-mono);font-size:.65rem;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.1em}.footer__links{display:flex;gap:var(--space-6)}.footer__link{font-family:var(--font-mono);font-size:.68rem;font-weight:500;color:var(--color-text-tertiary);text-decoration:none;text-transform:uppercase;letter-spacing:.08em;transition:color var(--transition-fast)}.footer__link:hover{color:var(--color-accent-primary)}.footer__copyright{font-family:var(--font-mono);font-size:.62rem;color:var(--color-text-tertiary);opacity:.6}.project-contributors{margin-top:var(--space-8);border-top:1px solid var(--color-border);padding-top:var(--space-8)}.project-contributors h3{font-size:var(--font-size-lg);margin-bottom:var(--space-4);color:var(--color-text-primary)}.project-contributors__list{display:flex;flex-wrap:wrap;gap:var(--space-3)}.project-contributors__item img{width:48px;height:48px;border-radius:var(--radius-full);border:2px solid var(--color-surface);box-shadow:var(--shadow-sm);transition:transform var(--transition-fast),border-color var(--transition-fast)}.project-contributors__item:hover img{transform:scale(1.1);border-color:var(--color-accent-primary)}.project-detail{padding-top:calc(var(--nav-height) + var(--space-8));padding-bottom:var(--space-16);min-height:100vh}.project-detail__back{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-text-secondary);font-weight:500;margin-bottom:var(--space-8);transition:color var(--transition-fast)}.project-detail__back:hover{color:var(--color-accent-primary)}.project-detail__header{margin-bottom:var(--space-12);border-bottom:1px solid var(--color-border);padding-bottom:var(--space-8)}.project-detail__tags{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-4);align-items:center}.project-detail__period{color:var(--color-text-tertiary);font-size:var(--font-size-sm);margin-left:auto}.project-detail__title{font-size:clamp(2rem,4vw,3rem);margin-bottom:var(--space-2)}.project-detail__subtitle{font-size:var(--font-size-xl);color:var(--color-text-secondary);margin-bottom:var(--space-6)}.project-detail__tech-top{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-8)}.project-detail__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-6)}.project-detail__buttons-group{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}.project-detail__actions .btn{display:inline-flex;align-items:center;gap:var(--space-2);height:48px}.project-detail__contributors-inline{margin-left:auto}.project-detail__contributors-inline .project-contributors{margin:0;padding:0;border:none}.project-detail__contributors-inline .project-contributors h3{display:none}.detail-badge-scale{display:inline-flex;align-items:center;height:48px;overflow:visible;position:relative;margin-right:-100px}.detail-badge-scale ms-store-badge{transform:scale(.65);transform-origin:left center;position:relative}.project-detail__content{display:grid;gap:var(--space-12)}.project-detail__section h2{font-size:var(--font-size-2xl);margin-bottom:var(--space-4);color:var(--color-text-primary)}.markdown-content{color:var(--color-text-secondary);line-height:1.8;font-size:var(--font-size-lg)}.markdown-content h1,.markdown-content h2,.markdown-content h3{color:var(--color-text-primary);margin-top:var(--space-8);margin-bottom:var(--space-4);font-weight:700;line-height:1.3}.markdown-content h1{font-size:1.75rem}.markdown-content h2{font-size:1.5rem}.markdown-content h3{font-size:1.25rem}.markdown-content p{margin-bottom:var(--space-4)}.markdown-content ul,.markdown-content ol{margin-bottom:var(--space-6);padding-left:var(--space-6)}.markdown-content li{margin-bottom:var(--space-2)}.markdown-content strong{font-weight:700;color:var(--color-text-primary)}.markdown-content blockquote{border-left:4px solid var(--color-accent-primary);padding-left:var(--space-4);margin:var(--space-6) 0;font-style:italic;background:var(--color-background-alt);padding:var(--space-4);border-radius:0 var(--radius-md) var(--radius-md) 0}.markdown-content code{background:var(--color-background-alt);padding:.2em .4em;border-radius:var(--radius-sm);font-size:.875em;font-family:monospace}.markdown-content img{max-width:100%;border-radius:var(--radius-md);margin:var(--space-4) 0;border:1px solid var(--color-border)}.project-detail__features{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-4)}.project-detail__features li{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary)}.project-detail__features li svg{color:var(--color-accent-primary);flex-shrink:0;margin-top:2px}.project-detail__tech{display:flex;flex-wrap:wrap;gap:var(--space-2)}.project-detail__not-found{text-align:center;padding:var(--space-16) 0}.project-detail__not-found h1{font-size:var(--font-size-3xl);margin-bottom:var(--space-4)}.project-detail__not-found p{margin-bottom:var(--space-8);color:var(--color-text-secondary)}@media(max-width:768px){.project-detail__period{margin-left:0;width:100%}.project-detail__actions{flex-direction:column;align-items:flex-start}.project-detail__contributors-inline{margin-left:0;margin-top:var(--space-4)}}:root{--color-background: #030303;--color-background-alt: #080808;--color-surface: rgba(10, 10, 10, .75);--color-surface-hover: rgba(20, 20, 20, .9);--color-accent-primary: #ff003c;--color-accent-secondary: #00f3ff;--color-accent-tertiary: rgba(255, 0, 60, .08);--color-accent-hover: #ff1a52;--color-text-primary: #e0e0e0;--color-text-secondary: rgba(224, 224, 224, .55);--color-text-tertiary: rgba(224, 224, 224, .32);--color-text-inverse: #030303;--color-border: rgba(255, 255, 255, .07);--color-border-strong: rgba(255, 255, 255, .14);--color-completed: #22c55e;--color-wip: #f59e0b;--color-notstarted: #94a3b8;--color-abandoned: #ef4444;--color-ongoing: #00f3ff;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .5);--shadow-md: 0 4px 16px rgba(0, 0, 0, .6);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .7);--shadow-glow: 0 0 30px rgba(255, 0, 60, .18);--shadow-glow-cyan: 0 0 30px rgba(0, 243, 255, .18);--grid-pattern: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60'%3E%3Cpath d='M0 0h60v60H0z' fill='none' stroke='%23ffffff' stroke-opacity='0.028' stroke-width='1'/%3E%3C/svg%3E");--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display: "Syncopate", sans-serif;--font-mono: "JetBrains Mono", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2rem;--font-size-4xl: 2.5rem;--font-size-5xl: 3.5rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 20px;--radius-full: 9999px;--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .4s ease;--max-width: 1200px;--nav-height: 72px}[data-theme=light]{--color-background: #f8f8f8;--color-background-alt: #f0f0f0;--color-surface: rgba(255, 255, 255, .9);--color-surface-hover: rgba(240, 240, 240, .95);--color-accent-primary: #cc0030;--color-accent-secondary: #0077cc;--color-accent-tertiary: rgba(204, 0, 48, .07);--color-accent-hover: #aa0025;--color-text-primary: #0a0a0a;--color-text-secondary: #444444;--color-text-tertiary: #888888;--color-text-inverse: #ffffff;--color-border: rgba(0, 0, 0, .09);--color-border-strong: rgba(0, 0, 0, .16);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .06);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 30px rgba(0, 0, 0, .14);--shadow-glow: 0 0 30px rgba(204, 0, 48, .1);--shadow-glow-cyan: 0 0 30px rgba(0, 119, 204, .1);--grid-pattern: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60'%3E%3Cpath d='M0 0h60v60H0z' fill='none' stroke='%23000000' stroke-opacity='0.04' stroke-width='1'/%3E%3C/svg%3E")}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-family);background-color:var(--color-background);background-image:var(--grid-pattern);color:var(--color-text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-accent-primary)}.overlay-scanlines{position:fixed;inset:0;background:repeating-linear-gradient(to bottom,transparent,transparent 3px,rgba(0,0,0,.08) 3px,rgba(0,0,0,.08) 4px);pointer-events:none;z-index:9000}.overlay-vignette{position:fixed;inset:0;background:radial-gradient(ellipse at center,transparent 50%,rgba(0,0,0,.55) 100%);pointer-events:none;z-index:9001}[data-theme=light] .overlay-scanlines{opacity:.3}[data-theme=light] .overlay-vignette{opacity:.25}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;color:var(--color-text-primary)}h1{font-size:var(--font-size-5xl)}h2{font-size:var(--font-size-4xl)}h3{font-size:var(--font-size-3xl)}h4{font-size:var(--font-size-2xl)}h5{font-size:var(--font-size-xl)}h6{font-size:var(--font-size-lg)}p{color:var(--color-text-secondary);font-size:var(--font-size-base)}a{color:var(--color-accent-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-hover)}.container{max-width:var(--max-width);margin:0 auto;padding:0 var(--space-6)}.section{padding:var(--space-24) 0}.section-header{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-12)}.section-number{font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:700;color:var(--color-accent-primary);background:var(--color-accent-tertiary);border:1px solid rgba(255,0,60,.25);padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);letter-spacing:.1em;text-transform:uppercase}[data-theme=light] .section-number{border-color:#cc003033}.section-title{font-family:var(--font-display);font-size:var(--font-size-3xl);font-weight:700;text-transform:uppercase;letter-spacing:.05em}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);font-family:var(--font-mono);font-size:var(--font-size-sm);font-weight:500;border-radius:var(--radius-sm);border:1px solid transparent;cursor:pointer;transition:all var(--transition-fast);text-decoration:none;text-transform:uppercase;letter-spacing:.05em}.btn-primary{background:var(--color-accent-primary);color:#fff;border-color:var(--color-accent-primary)}.btn-primary:hover{background:var(--color-accent-hover);color:#fff;transform:translateY(-2px);box-shadow:var(--shadow-glow)}.btn-secondary{background:transparent;color:var(--color-text-primary);border-color:var(--color-border-strong);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.btn-secondary:hover{border-color:var(--color-accent-primary);color:var(--color-accent-primary);box-shadow:var(--shadow-glow)}.btn-ghost{background:transparent;color:var(--color-text-secondary);border-color:transparent}.btn-ghost:hover{color:var(--color-accent-primary);background:var(--color-accent-tertiary)}.btn-icon{width:40px;height:40px;padding:0;border-radius:var(--radius-sm)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);transition:all var(--transition-base);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);position:relative}.card:before,.card:after{content:"";position:absolute;width:12px;height:12px;border:1px solid transparent;transition:all var(--transition-base);pointer-events:none;z-index:1}.card:before{top:-1px;left:-1px;border-top-color:var(--color-text-tertiary);border-left-color:var(--color-text-tertiary)}.card:after{bottom:-1px;right:-1px;border-bottom-color:var(--color-text-tertiary);border-right-color:var(--color-text-tertiary)}.card:hover{border-color:#ff003c59;box-shadow:var(--shadow-glow);transform:translateY(-3px)}.card:hover:before{width:20px;height:20px;border-top-color:var(--color-accent-primary);border-left-color:var(--color-accent-primary)}.card:hover:after{width:20px;height:20px;border-bottom-color:var(--color-accent-primary);border-right-color:var(--color-accent-primary)}.tag{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);font-family:var(--font-mono);font-size:.68rem;font-weight:600;border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.06em}.tag-completed{background:#22c55e1f;color:var(--color-completed);border:1px solid rgba(34,197,94,.25)}.tag-wip{background:#f59e0b1f;color:var(--color-wip);border:1px solid rgba(245,158,11,.25)}.tag-notstarted{background:#94a3b81a;color:var(--color-notstarted);border:1px solid rgba(148,163,184,.2)}.tag-abandoned{background:#ef44441a;color:var(--color-abandoned);border:1px solid rgba(239,68,68,.2)}.tag-ongoing{background:#00f3ff14;color:var(--color-ongoing);border:1px solid rgba(0,243,255,.2)}.tag-category{background:var(--color-accent-tertiary);color:var(--color-accent-primary);border:1px solid rgba(255,0,60,.2)}.tag-tech{background:#ffffff0a;color:var(--color-text-secondary);border:1px solid var(--color-border)}[data-theme=light] .tag-tech{background:#0000000a}[data-theme=light] .tag-completed{background:#16a34a1a;color:#15803d;border-color:#16a34a4d}[data-theme=light] .tag-wip{background:#d977061a;color:#b45309;border-color:#d977064d}[data-theme=light] .tag-ongoing{background:#0064b414;color:#0064b4;border-color:#0064b440}[data-theme=light] .tag-abandoned{background:#b91c1c14;color:#b91c1c;border-color:#b91c1c40}[data-theme=light] .tag-notstarted{background:#47556914;color:#475569;border-color:#47556933}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-6)}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6)}@media(max-width:1024px){.grid-3{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.grid-2,.grid-3{grid-template-columns:1fr}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}.section{padding:var(--space-16) 0}.container{padding:0 var(--space-4)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes pulse-glow{0%,to{opacity:1}50%{opacity:.5}}@keyframes cursor-blink{0%,to{opacity:1}50%{opacity:0}}.animate-fade-in{opacity:0;animation:fadeInUp .6s ease forwards}.animate-float{animation:float 3s ease-in-out infinite}.mono{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.08em}
