:root{--bg-base: #f7f9fc;--bg-surface: #eef2f8;--bg-surface-raised: #ffffff;--bg-alternate: #f1f5fa;--text-main: #101828;--text-muted: #475467;--text-subtle: #667085;--accent-core: #3157d5;--accent-hover: #2546b8;--accent-cyan: #087e8b;--accent-soft: #98a2b3;--accent-glow: rgba(49, 87, 213, .14);--accent-dim: rgba(29, 78, 216, .1);--accent-border: #d7deea;--code-bg: #e9eef7;--status-ok: #138a63;--button-text: #ffffff;--card-shadow: rgba(15, 23, 42, .08);--scrim-overlay: rgba(15, 23, 42, .6);--radius-sm: 6px;--radius-md: 12px;--radius-lg: 18px;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.75rem;--space-xl: 3rem;--font-ui: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-read: "Atkinson Hyperlegible", "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-code: ui-monospace, "SFMono-Regular", Menlo, Consolas, "Liberation Mono", monospace;--focus-ring: 3px solid var(--accent-core);color-scheme:light}:root[data-theme=dark]{--bg-base: #080d18;--bg-surface: #0d1524;--bg-surface-raised: #111c2e;--bg-alternate: #0b1321;--text-main: #f0f5ff;--text-muted: #a8b5ca;--text-subtle: #7d8da7;--accent-core: #6f8cff;--accent-hover: #91a7ff;--accent-cyan: #55d7e5;--accent-soft: #40506c;--accent-glow: rgba(69, 102, 240, .24);--accent-dim: rgba(111, 140, 255, .13);--accent-border: #26344b;--code-bg: #09111f;--status-ok: #4bd6a2;--button-text: #07101d;--card-shadow: rgba(0, 0, 0, .45);--scrim-overlay: rgba(0, 0, 0, .7);color-scheme:dark}@media (prefers-color-scheme: dark){:root:not([data-theme]){--bg-base: #080d18;--bg-surface: #0f1929;--bg-surface-raised: #142137;--bg-alternate: #0b1321;--text-main: #f2f4f8;--text-muted: #aab7ce;--text-subtle: #8292ad;--accent-core: #6685ff;--accent-hover: #8fa5ff;--accent-cyan: #42d5e8;--accent-soft: #4a5e83;--accent-glow: rgba(66, 213, 232, .2);--accent-dim: rgba(102, 133, 255, .15);--accent-border: #263650;--code-bg: #0a1424;--status-ok: #42d5e8;--button-text: #07101d;--card-shadow: rgba(0, 0, 0, .45);--scrim-overlay: rgba(0, 0, 0, .7);color-scheme:dark}}:root[data-theme=light][data-contrast=high]{--bg-base: #ffffff;--bg-surface: #ffffff;--bg-surface-raised: #ffffff;--bg-alternate: #f5f7fb;--text-main: #000000;--text-muted: #111111;--text-subtle: #222222;--accent-core: #0645d6;--accent-hover: #0036ad;--accent-cyan: #0036ad;--accent-soft: #000000;--accent-glow: transparent;--accent-dim: #e5edff;--accent-border: #000000;--code-bg: #ffffff;--status-ok: #0645d6;--button-text: #ffffff;--card-shadow: transparent;--scrim-overlay: rgba(0, 0, 0, .9);--focus-ring: 3px solid #0645d6;color-scheme:light}:root[data-theme=dark][data-contrast=high]{--bg-base: #000000;--bg-surface: #000000;--bg-surface-raised: #0a0a0a;--bg-alternate: #000000;--text-main: #ffffff;--text-muted: #f2f2f2;--accent-core: #ffd60a;--accent-hover: #ffe066;--accent-cyan: #ffffff;--accent-soft: #ffffff;--accent-glow: transparent;--accent-dim: rgba(255, 214, 10, .2);--accent-border: #ffffff;--code-bg: #000000;--status-ok: #ffffff;--button-text: #000000;--card-shadow: transparent;--scrim-overlay: rgba(0, 0, 0, .9);--focus-ring: 3px solid #ffd60a;color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}html,body{margin:0;padding:0}body{background:var(--bg-base);color:var(--text-main);font-family:var(--font-read);font-size:1.0625rem;line-height:1.65;min-height:100vh}img{max-width:100%;display:block}h1,h2,h3,h4{font-family:var(--font-ui);font-weight:700;line-height:1.25;color:var(--text-main)}a{color:var(--accent-core)}a:hover{color:var(--accent-hover)}:focus-visible{outline:var(--focus-ring);outline-offset:3px;border-radius:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-100px;left:var(--space-md);z-index:3000;background:var(--accent-core);color:#fff;padding:.75rem 1.25rem;border-radius:var(--radius-sm);font-family:var(--font-ui);font-weight:600;text-decoration:none;transition:top .15s ease}.skip-link:focus{top:var(--space-md)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}html.force-reduced-motion *,html.force-reduced-motion *:before,html.force-reduced-motion *:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}html{scroll-behavior:smooth}.a11y-bar{background:var(--text-main);color:var(--bg-base)}.a11y-bar-inner{max-width:1100px;margin:0 auto;padding:.4rem var(--space-md);display:flex;align-items:center;flex-wrap:wrap;gap:.4rem;font-family:var(--font-ui);font-size:.8rem}.a11y-bar-label{opacity:.75;margin-right:.15rem}.a11y-btn{background:transparent;color:inherit;border:1px solid currentColor;border-radius:var(--radius-sm);padding:.3rem .6rem;min-height:24px;font-family:inherit;font-size:inherit;cursor:pointer;opacity:.85}.a11y-btn:hover{opacity:1}.a11y-btn--active{background:var(--accent-core);border-color:var(--accent-core);color:#101216;opacity:1;font-weight:600}.site-header{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--bg-base) 88%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--accent-border)}.site-header-inner{width:calc(100% - 96px);max-width:1480px;margin:0 auto;padding:var(--space-sm) var(--space-md);display:flex;align-items:center;gap:var(--space-md)}.brand{display:flex;flex-direction:column;line-height:1.15;text-decoration:none;margin-right:auto}.brand-name{font-family:var(--font-ui);font-weight:700;font-size:1.05rem;color:var(--text-main)}.brand-role{font-size:.75rem;color:var(--text-muted)}.nav-toggle{display:none;background:transparent;border:1px solid var(--accent-border);border-radius:var(--radius-sm);color:var(--text-main);width:40px;height:40px;font-size:1.1rem;cursor:pointer}.primary-nav{display:flex;align-items:center;flex-wrap:wrap;gap:.2rem}.nav-divider{width:1px;height:18px;background:var(--accent-border);margin:0 .35rem}.nav-link{font-family:var(--font-ui);font-size:.92rem;font-weight:500;color:var(--text-main);text-decoration:none;padding:.45rem .6rem;border-radius:var(--radius-sm)}.nav-link:hover{background:var(--accent-dim);color:var(--accent-core)}.nav-link--active{color:var(--accent-core);font-weight:700}.locale-picker{display:inline-flex;gap:.15rem;margin-left:.35rem;padding-left:.45rem;border-left:1px solid var(--accent-border)}.locale-picker button{border:0;border-radius:var(--radius-sm);padding:.4rem .45rem;background:transparent;color:var(--text-muted);font:600 .72rem var(--font-code);cursor:pointer}.locale-picker button:hover,.locale-picker button.locale-active{background:var(--accent-dim);color:var(--accent-core)}@media (max-width: 1080px){.nav-toggle{display:inline-flex;align-items:center;justify-content:center}.primary-nav{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;background:var(--bg-base);border-bottom:1px solid var(--accent-border);padding:var(--space-sm) var(--space-md) var(--space-md)}.primary-nav--open{display:flex}.nav-divider{display:none}.locale-picker{margin:.35rem 0 0;padding:.35rem 0 0;border-left:0;border-top:1px solid var(--accent-border)}.site-header{position:relative}.nav-link{padding:.65rem .4rem;border-bottom:1px solid var(--accent-border);border-radius:0}}@media (max-width: 1366px){.site-header-inner,.site-footer-inner,.footer-note{width:calc(100% - 64px)}}@media (max-width: 1024px){.site-header-inner,.site-footer-inner,.footer-note{width:calc(100% - 40px)}}@media (max-width: 700px){.site-header-inner,.site-footer-inner,.footer-note{width:calc(100% - 32px)}}main{display:block;max-width:880px;margin:0 auto;padding:var(--space-xl) var(--space-md) var(--space-xl)}section{margin-bottom:var(--space-xl);scroll-margin-top:5.5rem}section:last-child{margin-bottom:0}.section-title{font-size:1.4rem;margin:0 0 var(--space-md);padding-bottom:.5rem;border-bottom:2px solid var(--accent-border)}.hud-card{background:var(--bg-surface);border:1px solid var(--accent-border);border-radius:var(--radius-md);padding:var(--space-lg);box-shadow:0 1px 3px var(--card-shadow)}.card-header{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:.4rem;margin-bottom:.5rem}.card-title{font-size:1.1rem;margin:0}.card-period{font-family:var(--font-ui);font-size:.8rem;color:var(--text-muted);white-space:nowrap}.card-desc{color:var(--text-main)}.card-desc p{margin:0 0 .6rem}.card-desc p:last-child{margin-bottom:0}.card-desc ul{margin:0}.tech-list{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem;padding:0;margin:var(--space-sm) 0 0}.tech-tag{font-family:var(--font-ui);font-size:.78rem;font-weight:600;color:var(--accent-core);background:var(--accent-dim);border:1px solid var(--accent-border);border-radius:999px;padding:.2rem .65rem}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-md)}.btn-hud{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--font-ui);font-weight:600;font-size:.9rem;text-decoration:none;color:var(--text-main);background:var(--bg-surface-raised);border:1px solid var(--accent-border);border-radius:var(--radius-sm);padding:.55rem 1rem;cursor:pointer;line-height:1.2}.btn-hud:hover{border-color:var(--accent-core);color:var(--accent-core)}.btn-hud--live{background:var(--accent-core);border-color:var(--accent-core);color:#fff}.btn-hud--live:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:#fff}.timeline{list-style:none;margin:0;padding:0;border-left:2px solid var(--accent-border)}.timeline-item{position:relative;padding:0 0 var(--space-lg) var(--space-lg)}.timeline-item:last-child{padding-bottom:0}.timeline-item:before{content:"";position:absolute;left:-7px;top:.35rem;width:12px;height:12px;border-radius:50%;background:var(--accent-core);border:2px solid var(--bg-base)}.timeline-date{font-family:var(--font-ui);font-size:.78rem;font-weight:600;color:var(--accent-core);text-transform:uppercase;letter-spacing:.02em}.timeline-title{font-size:1.05rem;margin:.15rem 0 .1rem}.timeline-badge{display:inline-block;margin-left:.5rem;font-family:var(--font-ui);font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--accent-core);background:var(--accent-dim);border:1px solid var(--accent-border);border-radius:999px;padding:.1rem .5rem;vertical-align:middle}.timeline-org{font-family:var(--font-ui);font-size:.9rem;color:var(--text-muted);margin-bottom:.4rem}.timeline-desc{margin:0}.hero{margin-bottom:var(--space-xl)}.hero-eyebrow{font-family:var(--font-ui);font-size:.85rem;font-weight:700;color:var(--accent-core);text-transform:uppercase;letter-spacing:.05em;margin:0 0 .5rem}.hero h1{font-size:2.1rem;margin:0 0 .4rem}.hero-role{font-family:var(--font-ui);font-size:1.1rem;color:var(--text-muted);margin:0 0 var(--space-md)}.hero-summary{max-width:62ch;margin:0 0 var(--space-md)}.hero-actions{display:flex;gap:var(--space-sm);flex-wrap:wrap;margin-top:var(--space-md)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-sm);margin:var(--space-lg) 0 0}.stat-item{background:var(--bg-surface);border:1px solid var(--accent-border);border-radius:var(--radius-md);padding:var(--space-md);text-align:left}.stat-value{font-family:var(--font-ui);font-size:1.7rem;font-weight:700;color:var(--accent-core);font-variant-numeric:tabular-nums;display:block}.stat-label{font-size:.82rem;color:var(--text-muted)}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-md)}.skill-group-title{font-family:var(--font-ui);font-size:.95rem;margin:0 0 .5rem}.publication-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-sm)}.note-secondary{font-size:.9rem;color:var(--text-muted);margin-top:var(--space-md)}.link-btn{background:none;border:none;padding:0;margin:0;font:inherit;color:var(--accent-core);text-decoration:underline;cursor:pointer}.link-btn:hover{color:var(--accent-hover)}.game-shell{min-height:100vh}.site-footer{background:var(--bg-surface);border-top:1px solid var(--accent-border);padding:var(--space-xl) var(--space-md) var(--space-lg)}.site-footer-inner{width:calc(100% - 96px);max-width:1480px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-lg)}.footer-name{font-family:var(--font-ui);font-weight:700;margin:0 0 .2rem}.footer-tagline{color:var(--text-muted);font-size:.9rem;margin:0}.footer-heading{font-family:var(--font-ui);font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin:0 0 .5rem}.footer-links{list-style:none;margin:.6rem 0 0;padding:0;display:flex;flex-direction:column;gap:.4rem;font-size:.92rem}.footer-links a{color:var(--text-main);text-decoration:none}.footer-links a:hover{color:var(--accent-core);text-decoration:underline}.footer-note{width:calc(100% - 96px);max-width:1480px;margin:var(--space-lg) auto 0;padding-top:var(--space-md);border-top:1px solid var(--accent-border);color:var(--text-muted);font-size:.8rem}@media print{.a11y-bar,.site-header,.site-footer,.skip-link{display:none!important}body{font-size:12pt;color:#000;background:#fff}main{max-width:100%;padding:0}a{color:#000;text-decoration:underline}.hud-card{box-shadow:none;border:1px solid #999;break-inside:avoid}section{break-inside:avoid-page}}main[data-v-8a6ef7f9]{overflow:hidden}.hero[data-v-8a6ef7f9]{max-width:1240px;min-height:620px;margin:auto;padding:clamp(3.75rem,7vw,6.5rem) 1.5rem 4rem;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);gap:3rem;align-items:center}.eyebrow[data-v-8a6ef7f9]{margin:0 0 1rem;color:var(--accent-cyan);font:700 .76rem var(--font-code);letter-spacing:.14em;text-transform:uppercase}.hero h1[data-v-8a6ef7f9]{max-width:800px;margin:0;font-size:clamp(2.8rem,5.5vw,5.05rem);line-height:.98;letter-spacing:-.065em}.hero h1 span[data-v-8a6ef7f9]{color:var(--text-muted)}.hero-name[data-v-8a6ef7f9]{margin:1.5rem 0 .45rem;font-family:var(--font-ui);font-weight:650}.hero-name span[data-v-8a6ef7f9]{margin:0 .5rem;color:var(--accent-core)}.hero-subheadline[data-v-8a6ef7f9],.hero-stack[data-v-8a6ef7f9]{margin:.3rem 0;color:var(--text-muted)}.hero-stack[data-v-8a6ef7f9]{font:.88rem var(--font-code)}.actions[data-v-8a6ef7f9]{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.5rem}.button[data-v-8a6ef7f9]{min-height:44px;padding:.68rem 1rem;border:1px solid var(--accent-border);border-radius:8px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-main);font:650 .88rem var(--font-ui);text-decoration:none;transition:.2s}.button[data-v-8a6ef7f9]:hover{border-color:var(--accent-core);background:var(--accent-dim);color:var(--text-main);transform:translateY(-2px)}.button.primary[data-v-8a6ef7f9]{border-color:var(--accent-core);background:var(--accent-core);color:var(--button-text)}.button.primary[data-v-8a6ef7f9]:hover{background:var(--accent-hover);color:var(--button-text)}.resume-links[data-v-8a6ef7f9]{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem;color:var(--text-subtle);font:.75rem var(--font-code)}.resume-links a[data-v-8a6ef7f9],.resume-links button[data-v-8a6ef7f9]{padding:0;border:0;background:none;color:var(--text-muted);font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.system-visual[data-v-8a6ef7f9]{position:relative}.system-visual[data-v-8a6ef7f9]:before{content:"";position:absolute;top:12%;right:8%;bottom:12%;left:8%;background:radial-gradient(circle,var(--accent-glow),transparent 66%);filter:blur(24px)}.system-visual svg[data-v-8a6ef7f9]{position:relative;width:100%;height:auto}.nodes rect[data-v-8a6ef7f9]{fill:var(--bg-surface-raised);stroke:var(--accent-border);stroke-width:2}.labels[data-v-8a6ef7f9]{fill:var(--text-muted);font:700 12px var(--font-code);letter-spacing:.08em}.dots[data-v-8a6ef7f9]{fill:var(--accent-cyan)}.system-visual p[data-v-8a6ef7f9]{margin:-1rem 0 0;color:var(--text-subtle);font:.7rem var(--font-code);text-align:center}.system-visual p span[data-v-8a6ef7f9]{width:7px;height:7px;margin-right:.45rem;border-radius:50%;display:inline-block;background:var(--status-ok)}.section[data-v-8a6ef7f9]{max-width:1180px;margin:auto;padding:clamp(3.5rem,6vw,5.25rem) 1.5rem}.section-heading[data-v-8a6ef7f9]{margin-bottom:2.5rem;display:grid;grid-template-columns:1.1fr .9fr;gap:2rem;align-items:end}.section-heading h2[data-v-8a6ef7f9],.contact h2[data-v-8a6ef7f9]{margin:0;font-size:clamp(2.1rem,4vw,3.6rem);letter-spacing:-.045em}.section-heading>p[data-v-8a6ef7f9]{max-width:48ch;margin:0;color:var(--text-muted)}.section-heading.compact[data-v-8a6ef7f9]{display:block}.projects[data-v-8a6ef7f9]{max-width:1240px}.projects-layout[data-v-8a6ef7f9]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.project-card[data-v-8a6ef7f9]{min-width:0;position:relative;padding:clamp(1.5rem,3vw,2.3rem);border:1px solid var(--accent-border);border-radius:18px;background:linear-gradient(145deg,var(--bg-surface-raised),var(--bg-surface));overflow:hidden}.project-card.lead[data-v-8a6ef7f9]{grid-column:1/-1;display:grid;grid-template-columns:100px minmax(0,1fr)}.project-index[data-v-8a6ef7f9]{color:var(--accent-soft);font:700 clamp(2rem,4vw,4rem) var(--font-code)}.project-content[data-v-8a6ef7f9]{min-width:0}.project-meta[data-v-8a6ef7f9]{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 1rem;color:var(--text-subtle);font:.7rem var(--font-code);letter-spacing:.06em;text-transform:uppercase}.project-meta span[data-v-8a6ef7f9]{color:var(--accent-cyan)}.project-card h3[data-v-8a6ef7f9]{margin:.8rem 0 1.25rem;font-size:clamp(1.5rem,2.5vw,2.2rem)}.project-description[data-v-8a6ef7f9]{color:var(--text-muted)}.project-description[data-v-8a6ef7f9] p,.project-description[data-v-8a6ef7f9] ul{margin:0 0 .7rem}.project-description[data-v-8a6ef7f9] ul{padding-left:1.2rem!important}.mini-flow[data-v-8a6ef7f9]{margin:1.5rem 0;padding:.8rem;display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;border:1px solid var(--accent-border);border-radius:10px;background:var(--code-bg);font:650 .64rem var(--font-code)}.mini-flow span[data-v-8a6ef7f9]{padding:.3rem .45rem;border-radius:5px;background:var(--accent-dim);white-space:nowrap}.mini-flow i[data-v-8a6ef7f9]{color:var(--accent-cyan);font-style:normal}.tech-list[data-v-8a6ef7f9]{margin:1.25rem 0;padding:0;display:flex;flex-wrap:wrap;gap:.45rem;list-style:none}.tech-list li[data-v-8a6ef7f9]{max-width:100%;padding:.3rem .58rem;border:1px solid var(--accent-border);border-radius:999px;color:var(--text-muted);font:.7rem var(--font-code);overflow-wrap:anywhere}.project-link[data-v-8a6ef7f9]{font:700 .82rem var(--font-ui);text-decoration:none}.about[data-v-8a6ef7f9]{display:grid;grid-template-columns:.8fr 1.2fr;gap:5rem}.about-copy[data-v-8a6ef7f9]{display:grid;gap:1.2rem;color:var(--text-muted);font-size:1.08rem}.about-copy p[data-v-8a6ef7f9]{margin:0}.career[data-v-8a6ef7f9]{margin:0;padding:0;list-style:none}.career li[data-v-8a6ef7f9]{position:relative;padding:0 0 2.4rem 2rem;display:grid;grid-template-columns:180px minmax(0,1fr);gap:2rem}.career li[data-v-8a6ef7f9]:before{content:"";position:absolute;left:4px;top:12px;bottom:-12px;width:1px;background:var(--accent-border)}.career li[data-v-8a6ef7f9]:last-child:before{display:none}.career>li>i[data-v-8a6ef7f9]{position:absolute;left:0;top:8px;width:9px;height:9px;border:2px solid var(--accent-core);border-radius:50%;background:var(--bg-base)}.career time[data-v-8a6ef7f9]{color:var(--text-subtle);font:.73rem var(--font-code)}.career-title[data-v-8a6ef7f9]{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem}.career-title h3[data-v-8a6ef7f9]{margin:0;font-size:1.05rem}.career-title span[data-v-8a6ef7f9]{padding:.16rem .45rem;border-radius:999px;background:var(--accent-dim);color:var(--accent-cyan);font:.65rem var(--font-code)}.career .company[data-v-8a6ef7f9]{margin:.18rem 0 .45rem;color:var(--accent-core);font-weight:700}.career li>div>p[data-v-8a6ef7f9]:last-child{max-width:76ch;margin:0;color:var(--text-muted);font-size:.92rem}.skills[data-v-8a6ef7f9]{display:grid;grid-template-columns:repeat(6,1fr);gap:1rem}.skills article[data-v-8a6ef7f9]{grid-column:span 2;padding:1.5rem;border-top:2px solid var(--accent-core);background:var(--bg-surface)}.skills article[data-v-8a6ef7f9]:nth-child(4),.skills article[data-v-8a6ef7f9]:nth-child(5){grid-column:span 3}.skills article>span[data-v-8a6ef7f9]{color:var(--accent-soft);font:700 .75rem var(--font-code)}.skills h3[data-v-8a6ef7f9]{margin:1.5rem 0 .5rem}.skills p[data-v-8a6ef7f9]{margin:0;color:var(--text-muted)}.compact-area[data-v-8a6ef7f9]{max-width:1240px;display:grid;grid-template-columns:1fr 1fr;gap:4rem}.compact-list[data-v-8a6ef7f9]{margin:0;padding:0;list-style:none}.compact-list li[data-v-8a6ef7f9]{padding:.85rem 0;border-bottom:1px solid var(--accent-border);display:flex;justify-content:space-between;gap:1rem}.compact-list strong[data-v-8a6ef7f9],.compact-list span[data-v-8a6ef7f9]{display:block}.compact-list strong[data-v-8a6ef7f9]{font:650 .86rem var(--font-ui)}.compact-list span[data-v-8a6ef7f9],.compact-list time[data-v-8a6ef7f9]{color:var(--text-subtle);font-size:.72rem}.compact-list time[data-v-8a6ef7f9]{flex:0 0 auto;font-family:var(--font-code)}.machine[data-v-8a6ef7f9]{margin-block:2.5rem;padding:clamp(2rem,4vw,3rem);border:1px solid var(--accent-border);border-radius:18px;display:grid;grid-template-columns:1fr 1fr;gap:3rem;background:var(--bg-surface)}.machine h2[data-v-8a6ef7f9]{margin:0 0 1rem;font-size:clamp(1.8rem,3vw,2.7rem)}.machine p[data-v-8a6ef7f9]{max-width:57ch;margin:0;color:var(--text-muted)}.machine ul[data-v-8a6ef7f9]{margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.7rem;list-style:none}.machine li[data-v-8a6ef7f9]{padding:.65rem .8rem;border-left:2px solid var(--accent-core);background:var(--bg-surface-raised);font:.74rem var(--font-code)}.contact[data-v-8a6ef7f9]{max-width:1180px;margin:3.5rem auto 0;padding:clamp(3.5rem,7vw,6rem) 1.5rem;text-align:center}.contact>p[data-v-8a6ef7f9]:not(.eyebrow){max-width:56ch;margin:1.2rem auto 0;color:var(--text-muted)}.contact .actions[data-v-8a6ef7f9]{justify-content:center}@media (max-width:900px){.hero[data-v-8a6ef7f9]{min-height:auto;grid-template-columns:1fr;padding-top:4rem}.system-visual[data-v-8a6ef7f9]{max-width:540px;margin:auto}.about[data-v-8a6ef7f9]{grid-template-columns:1fr;gap:1rem}.skills article[data-v-8a6ef7f9]{grid-column:span 3}.skills article[data-v-8a6ef7f9]:last-child{grid-column:1/-1}.compact-area[data-v-8a6ef7f9]{gap:2rem}.mini-flow i[data-v-8a6ef7f9]{display:none}.mini-flow span[data-v-8a6ef7f9]{flex:1 1 90px;text-align:center}}@media (max-width:700px){.section-heading[data-v-8a6ef7f9],.compact-area[data-v-8a6ef7f9],.machine[data-v-8a6ef7f9]{grid-template-columns:1fr;gap:1.25rem}.projects-layout[data-v-8a6ef7f9]{grid-template-columns:1fr}.project-card.lead[data-v-8a6ef7f9]{grid-column:auto;display:block}.career li[data-v-8a6ef7f9]{grid-template-columns:1fr;gap:.4rem}.skills[data-v-8a6ef7f9]{grid-template-columns:1fr}.skills article[data-v-8a6ef7f9],.skills article[data-v-8a6ef7f9]:nth-child(4),.skills article[data-v-8a6ef7f9]:nth-child(5),.skills article[data-v-8a6ef7f9]:last-child{grid-column:auto}}@media (max-width:430px){.hero[data-v-8a6ef7f9],.section[data-v-8a6ef7f9],.contact[data-v-8a6ef7f9]{padding-left:1rem;padding-right:1rem}.hero h1[data-v-8a6ef7f9]{font-size:clamp(2.4rem,12vw,3rem)}.actions .button[data-v-8a6ef7f9]{width:100%}.system-visual[data-v-8a6ef7f9]{margin-inline:-1rem}.project-meta[data-v-8a6ef7f9]{display:block}.project-meta time[data-v-8a6ef7f9],.compact-list time[data-v-8a6ef7f9]{display:block;margin-top:.35rem}.compact-list li[data-v-8a6ef7f9]{display:block}.machine ul[data-v-8a6ef7f9]{grid-template-columns:1fr}.mini-flow span[data-v-8a6ef7f9]{flex-basis:100%}}@media print{.system-visual[data-v-8a6ef7f9],.actions[data-v-8a6ef7f9],.resume-links[data-v-8a6ef7f9]{display:none}.hero[data-v-8a6ef7f9]{min-height:0}}main[data-v-8a6ef7f9]{max-width:none;margin:0;padding:0}.hero[data-v-8a6ef7f9]{width:calc(100% - 96px);max-width:1480px;padding-inline:0;grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr);gap:clamp(3rem,6vw,6rem)}.hero .actions[data-v-8a6ef7f9]{flex-wrap:nowrap}.section[data-v-8a6ef7f9]{width:calc(100% - 96px);max-width:1400px;padding:clamp(3.1rem,4.5vw,4.5rem) 0}.projects[data-v-8a6ef7f9],.surface-alt[data-v-8a6ef7f9]{background:var(--bg-alternate);box-shadow:0 0 0 100vmax var(--bg-alternate);clip-path:inset(0 -100vmax)}.projects[data-v-8a6ef7f9],.compact-area[data-v-8a6ef7f9]{max-width:1480px}.project-card.lead[data-v-8a6ef7f9],.project-card.closing[data-v-8a6ef7f9]{grid-column:1/-1;display:grid;grid-template-columns:100px minmax(0,1fr)}.project-description[data-v-8a6ef7f9]{max-width:78ch}.mini-flow[data-v-8a6ef7f9]{display:flex;flex-wrap:wrap;overflow:visible}.mini-flow span[data-v-8a6ef7f9]{min-width:0;flex:1 1 76px;white-space:normal;text-align:center}.mini-flow i[data-v-8a6ef7f9]{flex:0 0 auto;text-align:center}.contact[data-v-8a6ef7f9]{width:calc(100% - 96px);max-width:1480px;border-radius:20px;background:var(--bg-alternate)}.machine[data-v-8a6ef7f9]{padding-inline:clamp(2.5rem,6vw,6rem)}@media (max-width:1366px){.hero[data-v-8a6ef7f9],.section[data-v-8a6ef7f9],.contact[data-v-8a6ef7f9]{width:calc(100% - 64px)}.hero[data-v-8a6ef7f9]{gap:3rem}.hero h1[data-v-8a6ef7f9]{font-size:clamp(2.8rem,5.25vw,4.65rem)}}@media (max-width:1024px){.hero[data-v-8a6ef7f9],.section[data-v-8a6ef7f9],.contact[data-v-8a6ef7f9]{width:calc(100% - 40px)}.hero[data-v-8a6ef7f9]{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:2rem}.hero .button[data-v-8a6ef7f9]{padding-inline:.8rem}.site-header-inner[data-v-8a6ef7f9],.site-footer-inner[data-v-8a6ef7f9],.footer-note[data-v-8a6ef7f9]{width:calc(100% - 40px)}}@media (max-width:900px){.hero[data-v-8a6ef7f9]{grid-template-columns:1fr}.hero .actions[data-v-8a6ef7f9]{flex-wrap:wrap}.project-card.closing[data-v-8a6ef7f9]{display:block}.mini-flow[data-v-8a6ef7f9]{grid-template-columns:repeat(2,minmax(0,1fr))}.mini-flow i[data-v-8a6ef7f9]{display:none}}@media (max-width:700px){.hero[data-v-8a6ef7f9],.section[data-v-8a6ef7f9],.contact[data-v-8a6ef7f9]{width:calc(100% - 32px)}.project-card.lead[data-v-8a6ef7f9]{display:block}.site-header-inner[data-v-8a6ef7f9],.site-footer-inner[data-v-8a6ef7f9],.footer-note[data-v-8a6ef7f9]{width:calc(100% - 32px)}}@media (max-width:430px){.hero[data-v-8a6ef7f9],.section[data-v-8a6ef7f9],.contact[data-v-8a6ef7f9]{padding-left:0;padding-right:0}.mini-flow[data-v-8a6ef7f9]{grid-template-columns:1fr}.system-visual[data-v-8a6ef7f9]{margin-inline:0}}.tech-strip[data-v-8a6ef7f9]{display:flex;flex-wrap:wrap;gap:1rem 1.2rem;margin-top:1.25rem;color:var(--text-muted);font:600 .7rem var(--font-code)}.tech-logo-item[data-v-8a6ef7f9]{display:inline-flex;align-items:center;gap:.4rem}.tech-logo-item img[data-v-8a6ef7f9]{width:18px;height:18px;object-fit:contain}.skill-logos[data-v-8a6ef7f9]{display:flex;gap:.65rem;margin:1rem 0 .7rem;min-height:24px}.skill-logos img[data-v-8a6ef7f9]{width:22px;height:22px;object-fit:contain}.button svg[data-v-8a6ef7f9]{width:1rem;height:1rem;fill:currentColor;flex:0 0 auto;margin-right:.45rem}.skill-symbol[data-v-8a6ef7f9]{display:block;width:30px;height:30px;margin:1rem 0 .2rem;color:var(--accent-cyan)}.skill-symbol svg[data-v-8a6ef7f9]{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.skills article:nth-child(3) .skill-symbol[data-v-8a6ef7f9]{color:var(--accent-core)}.skills article:nth-child(4) .skill-symbol[data-v-8a6ef7f9]{color:var(--accent-cyan)}.skills article:nth-child(5) .skill-symbol[data-v-8a6ef7f9]{color:var(--accent-core)}.back-to-top{position:fixed;right:clamp(1rem,3vw,2rem);bottom:clamp(1rem,3vw,2rem);z-index:20;width:2.75rem;height:2.75rem;border:1px solid var(--accent-border);border-radius:999px;background:var(--bg-surface-raised);color:var(--text-main);font-size:1.3rem;line-height:1;box-shadow:0 8px 24px var(--card-shadow);cursor:pointer;transition:background .2s,border-color .2s,transform .2s}.back-to-top[data-v-8a6ef7f9]:hover{border-color:var(--accent-core);background:var(--accent-dim);transform:translateY(-2px)}:root[data-theme=dark]{filter:invert(1)}@media (max-width:700px){.tech-strip[data-v-8a6ef7f9]{gap:.7rem .9rem}.tech-logo-item img[data-v-8a6ef7f9]{width:16px;height:16px}}.go-app-bar[data-v-09d0028c]{display:flex;align-items:center;gap:var(--space-md);position:sticky;top:0;z-index:50;padding:12px var(--space-lg);margin:0 calc(-1 * var(--space-lg)) var(--space-md);background:var(--bg-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--accent-border)}.go-app-back[data-v-09d0028c]{color:var(--accent-core);text-decoration:none;font-family:var(--font-ui);font-size:1rem;text-transform:uppercase;white-space:nowrap}.go-app-title[data-v-09d0028c]{font-family:var(--font-ui);text-transform:uppercase;letter-spacing:1px;color:var(--text-main);font-size:.95rem}#go-game-title[data-v-09d0028c]{font-size:1.3rem;margin-bottom:10px}.go-intro p[data-v-09d0028c]{margin-bottom:var(--space-sm);color:var(--text-main)}.go-intro p[data-v-09d0028c]:last-child{margin-bottom:0}.go-panel[data-v-09d0028c]{padding:12px var(--space-lg);gap:6px}.go-controls-row[data-v-09d0028c]{display:flex;flex-direction:row;flex-wrap:wrap;align-items:flex-end;gap:var(--space-md) var(--space-lg)}.go-control-row[data-v-09d0028c]{display:flex;flex-direction:column;gap:4px}.go-control-row label[data-v-09d0028c]{font-family:var(--font-code);font-size:.75rem;color:var(--accent-core);text-transform:uppercase}.go-control-row select[data-v-09d0028c]{background:var(--bg-surface);color:var(--text-main);border:1px solid var(--accent-border);border-radius:4px;padding:6px 8px;font-family:var(--font-read);font-size:.9rem}.go-panel-divider[data-v-09d0028c]{border-top:1px dashed var(--accent-dim);margin:var(--space-sm) 0}.go-message[data-v-09d0028c]{font-family:var(--font-ui);font-size:1.05rem;color:var(--text-main);min-height:1.4em}.go-status-row[data-v-09d0028c]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-sm) var(--space-md)}.go-captures[data-v-09d0028c]{display:flex;flex-wrap:wrap;gap:var(--space-md);font-family:var(--font-code);font-size:.8rem;color:var(--text-muted)}.go-actions[data-v-09d0028c]{display:flex;gap:var(--space-sm);flex-wrap:wrap}.go-coord-form[data-v-09d0028c]{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;padding-top:var(--space-sm);border-top:1px dashed var(--accent-dim)}.go-coord-form label[data-v-09d0028c]{font-family:var(--font-code);font-size:.75rem;color:var(--text-muted)}.go-coord-inputs[data-v-09d0028c]{display:flex;gap:8px}.go-coord-inputs input[data-v-09d0028c]{background:var(--bg-surface);color:var(--text-main);border:1px solid var(--accent-border);border-radius:4px;padding:6px 8px;width:110px;font-family:var(--font-code)}.go-coord-inputs input[data-v-09d0028c]:disabled,.go-coord-inputs button[data-v-09d0028c]:disabled{opacity:.5}.go-scoring-hint[data-v-09d0028c]{font-size:.85rem;color:var(--text-muted);margin-top:4px}.go-board-card[data-v-09d0028c]{padding:var(--space-sm) var(--space-md)}.go-board-card.hud-card[data-v-09d0028c]:hover{transform:none;box-shadow:none;border-color:var(--accent-border)}.go-board-outer[data-v-09d0028c]{overflow-x:auto;padding:4px}.go-board-frame[data-v-09d0028c]{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto 1fr;grid-template-areas:"corner cols" "rows board";width:max-content;margin:0 auto}.go-corner[data-v-09d0028c]{grid-area:corner}.go-col-labels[data-v-09d0028c]{grid-area:cols;display:flex}.go-row-labels[data-v-09d0028c]{grid-area:rows;display:flex;flex-direction:column}.go-label[data-v-09d0028c]{display:flex;align-items:center;justify-content:center;font-family:var(--font-code);font-size:.7rem;color:var(--text-muted)}.go-board[data-v-09d0028c]{display:grid;background:#dcb35c;border:2px solid #8a6a2f;box-shadow:0 4px 20px #00000059}.high-contrast-mode .go-board[data-v-09d0028c]{background:#000;border-color:#ff0}.go-cell[data-v-09d0028c]{position:relative;width:var(--cell-size);height:var(--cell-size)}.go-cell[data-v-09d0028c]:before{content:"";position:absolute;top:50%;left:0;right:0;height:1.5px;background:#3d2c0f;transform:translateY(-50%);pointer-events:none}.go-cell[data-v-09d0028c]:after{content:"";position:absolute;left:50%;top:0;bottom:0;width:1.5px;background:#3d2c0f;transform:translate(-50%);pointer-events:none}.high-contrast-mode .go-cell[data-v-09d0028c]:before,.high-contrast-mode .go-cell[data-v-09d0028c]:after{background:#ff0}.go-cell.is-left[data-v-09d0028c]:before{left:50%}.go-cell.is-right[data-v-09d0028c]:before{right:50%}.go-cell.is-top[data-v-09d0028c]:after{top:50%}.go-cell.is-bottom[data-v-09d0028c]:after{bottom:50%}.go-point[data-v-09d0028c]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;background:transparent;border:none;border-radius:50%;cursor:pointer;padding:0}.go-point[data-v-09d0028c]:disabled{cursor:default}.hoshi[data-v-09d0028c]{position:absolute;top:50%;left:50%;width:18%;height:18%;min-width:4px;min-height:4px;background:#3d2c0f;border-radius:50%;transform:translate(-50%,-50%)}.high-contrast-mode .hoshi[data-v-09d0028c]{background:#ff0}.stone-preview[data-v-09d0028c]{position:absolute;top:8%;right:8%;bottom:8%;left:8%;border-radius:50%;background:#0a0a0a59;opacity:0;transition:opacity .15s}.go-point:not(:disabled):hover .stone-preview[data-v-09d0028c],.go-point:not(:disabled):focus-visible .stone-preview[data-v-09d0028c]{opacity:1}.stone[data-v-09d0028c]{position:absolute;top:6%;right:6%;bottom:6%;left:6%;border-radius:50%;box-shadow:0 2px 4px #00000080;transition:opacity .2s}.stone-black[data-v-09d0028c]{background:radial-gradient(circle at 32% 28%,#6a6a6a,#0a0a0a 70%)}.stone-white[data-v-09d0028c]{background:radial-gradient(circle at 32% 28%,#fff,#c7c7c7 75%);border:1px solid #999}.stone-dead[data-v-09d0028c]{opacity:.35}.high-contrast-mode .stone-black[data-v-09d0028c]{background:#000;border:2px solid #ffff00}.high-contrast-mode .stone-white[data-v-09d0028c]{background:#fff;border:2px solid #000000}.dead-mark[data-v-09d0028c]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#ff3b3b;font-weight:700;font-size:calc(var(--cell-size) * .6);pointer-events:none}.last-move-marker[data-v-09d0028c]{position:absolute;top:50%;left:50%;width:26%;height:26%;border:2px solid var(--accent-core);border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}.territory-mark[data-v-09d0028c]{position:absolute;top:22%;right:22%;bottom:22%;left:22%;border-radius:3px;pointer-events:none}.territory-black[data-v-09d0028c]{background:#0000008c}.territory-white[data-v-09d0028c]{background:#ffffffbf;border:1px solid rgba(0,0,0,.2)}.capture-flash[data-v-09d0028c]{position:absolute;top:4%;right:4%;bottom:4%;left:4%;border-radius:50%;background:#ff46468c;box-shadow:0 0 14px #ff4646d9;animation:go-capture-pulse-09d0028c .9s ease-out forwards;pointer-events:none}@keyframes go-capture-pulse-09d0028c{0%{opacity:.95;transform:scale(.75)}35%{opacity:.9;transform:scale(1.15)}to{opacity:0;transform:scale(1.4)}}@media (prefers-reduced-motion: reduce){.capture-flash[data-v-09d0028c]{animation:none;opacity:.6}}.go-result[data-v-09d0028c]{gap:var(--space-md)}.score-table-wrap[data-v-09d0028c]{overflow-x:auto}.score-table[data-v-09d0028c]{width:100%;border-collapse:collapse;font-family:var(--font-code);font-size:.9rem}.score-table th[data-v-09d0028c],.score-table td[data-v-09d0028c]{border:1px solid var(--accent-border);padding:8px 12px;text-align:center;color:var(--text-main)}.score-table thead th[data-v-09d0028c]{color:var(--accent-core)}.score-total th[data-v-09d0028c],.score-total td[data-v-09d0028c]{font-weight:700;background:var(--accent-dim)}.result-headline[data-v-09d0028c]{font-family:var(--font-ui);font-size:1.3rem;color:var(--accent-core)}@media (max-width: 768px){.go-controls-row[data-v-09d0028c]{flex-direction:column;align-items:stretch}#main-content[data-v-09d0028c]{padding:0 12px 24px}.go-app-bar[data-v-09d0028c]{top:52px;margin:0 -12px var(--space-md);padding:12px 16px}#go-game-title[data-v-09d0028c]{font-size:1.3rem}}.dm-app-bar[data-v-11196555]{display:flex;align-items:center;gap:var(--space-md);position:sticky;top:0;z-index:50;padding:12px var(--space-lg);margin:0 calc(-1 * var(--space-lg)) var(--space-md);background:var(--bg-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--accent-border)}.dm-app-back[data-v-11196555]{color:var(--accent-core);text-decoration:none;font-family:var(--font-ui);font-size:1rem;text-transform:uppercase;white-space:nowrap}.dm-app-title[data-v-11196555]{font-family:var(--font-ui);text-transform:uppercase;letter-spacing:1px;color:var(--text-main);font-size:.95rem}#checkers-title[data-v-11196555]{font-size:1.3rem;margin-bottom:10px}.dm-intro p[data-v-11196555]{margin-bottom:var(--space-sm);color:var(--text-main)}.dm-intro p[data-v-11196555]:last-child{margin-bottom:0}.dm-intro[data-v-11196555]{margin-bottom:var(--space-md)}.dm-panel[data-v-11196555]{padding:12px var(--space-lg);gap:6px;margin-bottom:var(--space-md)}.dm-controls-row[data-v-11196555]{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-md) var(--space-lg)}.dm-control-row[data-v-11196555]{display:flex;flex-direction:column;gap:4px}.dm-control-row label[data-v-11196555]{font-family:var(--font-code);font-size:.75rem;color:var(--accent-core);text-transform:uppercase}.dm-control-row select[data-v-11196555]{background:var(--bg-surface);color:var(--text-main);border:1px solid var(--accent-border);border-radius:4px;padding:6px 8px;font-family:var(--font-read);font-size:.9rem}.dm-panel-divider[data-v-11196555]{border-top:1px dashed var(--accent-dim);margin:var(--space-sm) 0}.dm-message[data-v-11196555]{font-family:var(--font-ui);font-size:1.05rem;color:var(--text-main);min-height:1.4em}.dm-counts[data-v-11196555]{display:flex;flex-wrap:wrap;gap:var(--space-md);font-family:var(--font-code);font-size:.8rem;color:var(--text-muted)}.dm-board-card[data-v-11196555]{padding:var(--space-md);align-items:center}.dm-board[data-v-11196555]{display:grid;grid-template-columns:repeat(8,1fr);width:min(92vw,560px);aspect-ratio:1;border:2px solid var(--accent-border);box-shadow:0 0 25px var(--accent-dim)}.dm-square[data-v-11196555]{position:relative;border:none;padding:0;background:#e6f0ff14;cursor:default;display:flex;align-items:center;justify-content:center}.dm-square--dark[data-v-11196555]{background:var(--accent-dim)}.light-mode .dm-square[data-v-11196555]{background:#e8eef6}.light-mode .dm-square--dark[data-v-11196555]{background:#9db8d4}.dm-square[data-v-11196555]:not(:disabled){cursor:pointer}.dm-square--selected[data-v-11196555]{outline:2px solid var(--accent-core);outline-offset:-2px}.dm-square--last[data-v-11196555]{box-shadow:inset 0 0 0 2px var(--accent-core)}.dm-piece[data-v-11196555]{width:76%;height:76%;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:clamp(.9rem,3.4vw,1.5rem)}.dm-piece--white[data-v-11196555]{background:radial-gradient(circle at 33% 30%,#fff,#b8c6d4 70%);border:1px solid #8fa3b5;color:#1a2733;box-shadow:0 2px 6px #00000080}.dm-piece--black[data-v-11196555]{background:radial-gradient(circle at 33% 30%,#3c4654,#0b111a 75%);border:1px solid #05080d;color:var(--accent-core);box-shadow:0 2px 6px #0009}.dm-crown[data-v-11196555]{line-height:1}.dm-target[data-v-11196555]{position:absolute;width:34%;height:34%;border-radius:50%;background:var(--accent-core);opacity:.55;animation:dm-pulse-11196555 1.2s ease-in-out infinite;pointer-events:none}@keyframes dm-pulse-11196555{0%,to{transform:scale(.85);opacity:.45}50%{transform:scale(1);opacity:.75}}@media (prefers-reduced-motion: reduce){.dm-target[data-v-11196555]{animation:none}}.high-contrast-mode .dm-square[data-v-11196555]{background:#1a1a1a}.high-contrast-mode .dm-square--dark[data-v-11196555]{background:#330}.high-contrast-mode .dm-target[data-v-11196555]{background:#ff0}@media (max-width: 768px){.dm-app-bar[data-v-11196555]{margin:0 0 var(--space-md)}.dm-board[data-v-11196555]{width:min(96vw,560px)}}.mm-app-bar[data-v-02b38eaa]{display:flex;align-items:center;gap:var(--space-md);position:sticky;top:0;z-index:50;padding:12px var(--space-lg);margin:0 calc(-1 * var(--space-lg)) var(--space-md);background:var(--bg-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--accent-border)}.mm-app-back[data-v-02b38eaa]{color:var(--accent-core);text-decoration:none;font-family:var(--font-ui);font-size:1rem;text-transform:uppercase;white-space:nowrap}.mm-app-title[data-v-02b38eaa]{font-family:var(--font-ui);text-transform:uppercase;letter-spacing:1px;color:var(--text-main);font-size:.95rem}#memory-title[data-v-02b38eaa]{font-size:1.3rem;margin-bottom:10px}.mm-intro[data-v-02b38eaa]{margin-bottom:var(--space-md)}.mm-intro p[data-v-02b38eaa]{color:var(--text-main)}.mm-panel[data-v-02b38eaa]{padding:12px var(--space-lg);gap:6px;margin-bottom:var(--space-md)}.mm-controls-row[data-v-02b38eaa]{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-md) var(--space-lg)}.mm-control-row[data-v-02b38eaa]{display:flex;flex-direction:column;gap:4px}.mm-control-row label[data-v-02b38eaa]{font-family:var(--font-code);font-size:.75rem;color:var(--accent-core);text-transform:uppercase}.mm-control-row select[data-v-02b38eaa]{background:var(--bg-surface);color:var(--text-main);border:1px solid var(--accent-border);border-radius:4px;padding:6px 8px;font-family:var(--font-read);font-size:.9rem}.mm-panel-divider[data-v-02b38eaa]{border-top:1px dashed var(--accent-dim);margin:var(--space-sm) 0}.mm-stats[data-v-02b38eaa]{display:flex;flex-wrap:wrap;gap:var(--space-md);font-family:var(--font-code);font-size:.85rem;color:var(--text-main)}.mm-board-card[data-v-02b38eaa]{padding:var(--space-md);align-items:center;gap:var(--space-md)}.mm-grid[data-v-02b38eaa]{display:grid;gap:10px;width:100%;max-width:640px}.mm-grid--8[data-v-02b38eaa],.mm-grid--12[data-v-02b38eaa]{grid-template-columns:repeat(4,1fr)}.mm-grid--18[data-v-02b38eaa]{grid-template-columns:repeat(6,1fr)}@media (min-width: 640px){.mm-grid--12[data-v-02b38eaa]{grid-template-columns:repeat(6,1fr)}}.mm-card[data-v-02b38eaa]{aspect-ratio:3 / 4;background:transparent;border:none;padding:0;cursor:pointer;perspective:600px}.mm-card[data-v-02b38eaa]:disabled{cursor:default}.mm-card-inner[data-v-02b38eaa]{display:block;position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .4s}.mm-card--flipped .mm-card-inner[data-v-02b38eaa]{transform:rotateY(180deg)}@media (prefers-reduced-motion: reduce){.mm-card-inner[data-v-02b38eaa]{transition:none}}.mm-card-back[data-v-02b38eaa],.mm-card-front[data-v-02b38eaa]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;backface-visibility:hidden;border-radius:8px;border:1px solid var(--accent-border)}.mm-card-back[data-v-02b38eaa]{background:repeating-linear-gradient(45deg,var(--accent-dim) 0 6px,transparent 6px 12px),var(--bg-surface);border-color:var(--accent-core);box-shadow:inset 0 0 12px var(--accent-dim);color:var(--accent-core);font-family:var(--font-code);font-size:1.2rem}.mm-card:not(:disabled):hover .mm-card-back[data-v-02b38eaa]{box-shadow:0 0 15px var(--accent-dim);border-color:var(--accent-core)}.mm-card-front[data-v-02b38eaa]{background:var(--bg-surface);transform:rotateY(180deg)}.mm-card--matched .mm-card-front[data-v-02b38eaa]{border-color:var(--accent-core);box-shadow:0 0 12px var(--accent-dim)}.mm-glyph[data-v-02b38eaa]{font-size:clamp(1.2rem,5vw,2rem)}.mm-label[data-v-02b38eaa]{font-family:var(--font-code);font-size:clamp(.5rem,1.8vw,.7rem);color:var(--text-muted);text-align:center;padding:0 2px}.mm-victory[data-v-02b38eaa]{text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);padding:var(--space-md);border:1px dashed var(--accent-border);border-radius:8px;width:100%}.mm-victory-title[data-v-02b38eaa]{font-family:var(--font-code);color:var(--accent-core);letter-spacing:2px}.mm-victory p[data-v-02b38eaa]{color:var(--text-main)}.mm-record[data-v-02b38eaa]{color:var(--accent-core);font-weight:600}@media (max-width: 768px){.mm-app-bar[data-v-02b38eaa]{margin:0 0 var(--space-md)}.mm-grid[data-v-02b38eaa]{gap:6px}}.mm-app-bar[data-v-703670b4]{display:flex;align-items:center;gap:var(--space-md);position:sticky;top:0;z-index:50;padding:12px var(--space-lg);margin:0 calc(-1 * var(--space-lg)) var(--space-md);background:var(--bg-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--cyan-border)}.mm-app-back[data-v-703670b4]{color:var(--cyan-core);text-decoration:none;font-family:var(--font-ui);font-size:1rem;text-transform:uppercase;white-space:nowrap}.mm-app-title[data-v-703670b4]{font-family:var(--font-ui);text-transform:uppercase;letter-spacing:1px;color:var(--text-main);font-size:.95rem}#g2048-title[data-v-703670b4]{font-size:1.3rem;margin-bottom:10px}.g2048-intro[data-v-703670b4]{margin-bottom:var(--space-md)}.g2048-intro p[data-v-703670b4]{color:var(--text-main)}.g2048-panel[data-v-703670b4]{padding:12px var(--space-lg);flex-direction:row;align-items:center;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-md)}.g2048-stats[data-v-703670b4]{display:flex;gap:var(--space-lg)}.g2048-stat[data-v-703670b4]{display:flex;flex-direction:column;gap:2px}.g2048-stat-label[data-v-703670b4]{font-family:var(--font-code);font-size:.7rem;text-transform:uppercase;color:var(--text-muted)}.g2048-stat-value[data-v-703670b4]{font-family:var(--font-ui);font-size:1.3rem;color:var(--cyan-core)}.g2048-board-card[data-v-703670b4]{padding:var(--space-md);align-items:center;gap:var(--space-md);position:relative;outline:none}.g2048-board[data-v-703670b4]{position:relative;width:100%;max-width:420px;aspect-ratio:1 / 1;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(4,1fr);gap:8px;padding:8px;border-radius:10px;background:var(--bg-surface);border:1px solid var(--cyan-border)}.g2048-cell-bg[data-v-703670b4]{border-radius:6px;background:var(--cyan-dim);border:1px solid var(--cyan-border)}.g2048-tiles[data-v-703670b4]{position:absolute;top:8px;right:8px;bottom:8px;left:8px}.g2048-tile[data-v-703670b4]{position:absolute;top:0;left:0;display:flex;align-items:center;justify-content:center;border-radius:6px;padding:4px;box-sizing:border-box;font-family:var(--font-ui);font-weight:700;font-size:clamp(1rem,5vw,1.6rem);color:var(--text-main);background:var(--cyan-core);border:1px solid var(--cyan-border);transition:transform .12s ease-in-out}.g2048-tile--2[data-v-703670b4]{opacity:.25}.g2048-tile--4[data-v-703670b4]{opacity:.35}.g2048-tile--8[data-v-703670b4]{opacity:.45}.g2048-tile--16[data-v-703670b4]{opacity:.55}.g2048-tile--32[data-v-703670b4]{opacity:.65}.g2048-tile--64[data-v-703670b4]{opacity:.72}.g2048-tile--128[data-v-703670b4]{opacity:.8;font-size:clamp(.9rem,4.5vw,1.4rem)}.g2048-tile--256[data-v-703670b4]{opacity:.86;font-size:clamp(.9rem,4.5vw,1.4rem)}.g2048-tile--512[data-v-703670b4]{opacity:.92;font-size:clamp(.9rem,4.5vw,1.4rem)}.g2048-tile--1024[data-v-703670b4]{opacity:.97;color:var(--bg-base);font-size:clamp(.75rem,4vw,1.2rem)}.g2048-tile--2048[data-v-703670b4]{opacity:1;color:var(--bg-base);font-size:clamp(.75rem,4vw,1.2rem);box-shadow:0 0 16px var(--cyan-core)}.g2048-tile--new[data-v-703670b4],.g2048-tile--merged[data-v-703670b4]{animation:g2048-pop-703670b4 .18s ease-out}@keyframes g2048-pop-703670b4{0%{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}@media (prefers-reduced-motion: reduce){.g2048-tile[data-v-703670b4]{transition:none}.g2048-tile--new[data-v-703670b4],.g2048-tile--merged[data-v-703670b4]{animation:none}}.g2048-overlay[data-v-703670b4]{position:absolute;inset:var(--space-md);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-sm);text-align:center;background:var(--bg-surface);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px dashed var(--cyan-border);border-radius:10px;padding:var(--space-md)}.g2048-overlay-title[data-v-703670b4]{font-family:var(--font-code);color:var(--cyan-core);letter-spacing:2px}.g2048-overlay p[data-v-703670b4]{color:var(--text-main)}.g2048-overlay-actions[data-v-703670b4]{display:flex;gap:var(--space-sm);flex-wrap:wrap;justify-content:center}@media (max-width: 768px){.mm-app-bar[data-v-703670b4]{margin:0 0 var(--space-md)}.g2048-panel[data-v-703670b4]{flex-direction:row}}.arcade-intro[data-v-2193b366]{margin-bottom:var(--space-lg)}.arcade-intro p[data-v-2193b366]{color:var(--text-main)}.arcade-grid[data-v-2193b366]{display:grid;grid-template-columns:1fr;gap:var(--space-lg)}@media (min-width: 900px){.arcade-grid[data-v-2193b366]{grid-template-columns:repeat(3,1fr)}}.arcade-card[data-v-2193b366]{position:relative;overflow:hidden}.arcade-icon[data-v-2193b366]{font-size:2rem;margin-bottom:var(--space-sm);filter:drop-shadow(0 0 8px var(--accent-dim))}.res-intro[data-v-cdb3a8aa]{margin-bottom:var(--space-lg)}.res-intro p[data-v-cdb3a8aa]{color:var(--text-main)}.res-intro a[data-v-cdb3a8aa]{color:var(--accent-core)}.res-category[data-v-cdb3a8aa]{margin-bottom:var(--space-xl)}.res-category-title[data-v-cdb3a8aa]{font-family:var(--font-ui);font-size:1.5rem;color:var(--text-main);margin-bottom:var(--space-md);display:flex;align-items:center;gap:var(--space-sm)}.res-grid[data-v-cdb3a8aa]{display:grid;grid-template-columns:1fr;gap:var(--space-md)}@media (min-width: 700px){.res-grid[data-v-cdb3a8aa]{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1100px){.res-grid[data-v-cdb3a8aa]{grid-template-columns:repeat(3,1fr)}}.res-card[data-v-cdb3a8aa]{text-decoration:none;gap:var(--space-sm);padding:var(--space-md)}.res-card--featured[data-v-cdb3a8aa]{border-color:var(--accent-core);box-shadow:0 0 18px var(--accent-dim)}.res-card-top[data-v-cdb3a8aa]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm)}.res-name[data-v-cdb3a8aa]{font-family:var(--font-ui);font-size:1.2rem;color:var(--text-main)}.res-badge[data-v-cdb3a8aa]{font-family:var(--font-code);font-size:.7rem;background:var(--accent-core);color:var(--bg-base);padding:2px 8px;border-radius:var(--radius-sm);text-transform:uppercase;font-weight:700;white-space:nowrap}.res-lang[data-v-cdb3a8aa]{font-family:var(--font-code);font-size:.7rem;color:var(--accent-core);border:1px solid var(--accent-border);padding:2px 8px;border-radius:var(--radius-sm);white-space:nowrap}.res-desc[data-v-cdb3a8aa]{color:var(--text-muted);font-size:.9rem;flex-grow:1}.res-card:hover .res-desc[data-v-cdb3a8aa]{color:var(--text-main)}.res-url[data-v-cdb3a8aa]{font-family:var(--font-code);font-size:.75rem;color:var(--accent-core)}
