:root{--bg: #101112;--bg-soft: #17191b;--panel: #202326;--panel-2: #272b2f;--text: #f2efe7;--muted: #a9a397;--line: rgba(242, 239, 231, .14);--accent: #d7f071;--accent-2: #7cc8ff;--accent-3: #ff9a74;--max: min(1700px, calc(100% - 72px) );font-family:Inter,PingFang SC,Microsoft YaHei,Noto Sans SC,system-ui,sans-serif;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:1180px;margin:0;background:linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),radial-gradient(circle at 72% 0%,rgba(124,200,255,.12),transparent 34rem),radial-gradient(circle at 12% 28%,rgba(215,240,113,.08),transparent 28rem),var(--bg);background-size:80px 80px,80px 80px,auto,auto,auto}button,a{font:inherit;color:inherit}button{cursor:pointer}a{text-decoration:none}img{max-width:100%}.site-shell{min-height:100vh}.page-width{width:var(--max);margin:0 auto}.site-header,.detail-topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;height:72px;padding:0 max(36px,calc((100vw - 1700px)/2));background:#101112d1;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand-button,.site-header nav button,.detail-topbar button,.detail-topbar a{border:0;background:transparent}.brand-button{color:var(--accent);font-size:18px;font-weight:900;letter-spacing:.08em}.site-header nav{display:flex;gap:8px}.site-header nav button,.detail-topbar button,.detail-topbar a{min-height:38px;padding:0 16px;color:var(--muted);border:1px solid transparent}.site-header nav button:hover,.detail-topbar button:hover,.detail-topbar a:hover{color:var(--text);border-color:var(--line);background:#ffffff0d}.hero-section{min-height:calc(100vh - 72px);display:flex;align-items:center;padding:88px 0 96px}.hero-layout{display:grid;grid-template-columns:minmax(0,1.08fr) 520px;gap:92px;align-items:center}.eyebrow{margin:0 0 18px;color:var(--accent);font-family:Consolas,Courier New,monospace;font-size:14px;font-weight:800;letter-spacing:.12em}.hero-copy h1,.detail-hero h1{margin:0;font-size:clamp(92px,9vw,168px);line-height:.9;letter-spacing:0}.hero-role{width:max-content;margin:30px 0 0;padding:10px 16px;color:#111;background:var(--accent);font-size:24px;font-weight:900}.hero-text{max-width:820px;margin:38px 0 0;color:#d8d2c6;font-size:24px;line-height:1.8}.hero-actions{display:flex;gap:14px;margin-top:42px}.hero-actions button,.hero-actions a{display:inline-flex;align-items:center;justify-content:center;min-width:150px;height:52px;padding:0 24px;border:1px solid var(--line);background:var(--text);color:#111;font-weight:900}.hero-actions a{background:transparent;color:var(--text)}.profile-panel{padding:18px;background:linear-gradient(180deg,#ffffff14,#ffffff08);border:1px solid var(--line)}.profile-panel img{display:block;width:100%;aspect-ratio:4 / 5;object-fit:cover;filter:grayscale(.14) contrast(1.05)}.profile-meta{display:grid;gap:1px;margin-top:18px;background:var(--line)}.profile-meta div{display:grid;grid-template-columns:110px 1fr;gap:18px;min-height:60px;align-items:center;padding:0 18px;background:#17191b}.profile-meta span,.section-title span,.experience-item span,.project-year,.project-info p,.detail-meta span,.detail-section-copy span,.related-list button span,.contact-list span{color:var(--muted);font-family:Consolas,Courier New,monospace;font-size:13px;letter-spacing:.08em;text-transform:uppercase}.profile-meta strong{font-size:16px;line-height:1.4}.section-block{padding:112px 0;border-top:1px solid var(--line)}.section-block.compact{padding:96px 0}.split-heading{display:grid;grid-template-columns:460px minmax(0,1fr);gap:72px;align-items:start}.section-title{max-width:680px;margin-bottom:38px}.section-title h2{margin:12px 0 14px;font-size:56px;line-height:1}.section-title p{margin:0;color:var(--muted);font-size:18px;line-height:1.7}.experience-list{display:grid;gap:14px}.experience-item{display:grid;grid-template-columns:210px minmax(0,.9fr) minmax(0,1.1fr);gap:30px;align-items:start;padding:26px;background:#202326c7;border:1px solid var(--line)}.experience-item div{display:grid;gap:10px}.experience-item b{color:var(--accent);font-size:14px}.experience-item h3,.game-line h3,.project-info h3,.strength-card h3,.related-list strong{margin:0;font-size:25px;line-height:1.3}.experience-item p,.game-line p,.project-info span,.strength-card p,.detail-hero p,.detail-section-copy p{margin:0;color:#d4cec2;font-size:16px;line-height:1.75}.games-showcase{max-width:1430px}.games-eyebrow{margin:0 0 34px;color:var(--accent);font-size:22px;font-weight:900;letter-spacing:0}.games-showcase h2{margin:0 0 34px;font-size:56px;line-height:1}.game-group-list{display:grid;gap:20px}.game-group{display:grid;grid-template-columns:114px minmax(0,1fr);gap:26px;align-items:start;min-height:124px;padding:26px;background:#202326e0;border:1px solid rgba(242,239,231,.18);border-radius:6px}.game-group.summary{grid-template-columns:128px minmax(0,1fr);align-items:center;min-height:118px}.game-type{display:inline-flex;align-items:center;justify-content:center;min-width:100px;min-height:47px;padding:0 16px;color:#111;font-size:16px;font-weight:900;line-height:1;border-radius:3px}.game-type.orange{background:var(--accent-3)}.game-type.lime{background:var(--accent)}.game-type.blue{background:var(--accent-2)}.game-lines{display:grid;gap:13px}.game-line{display:grid;grid-template-columns:240px 110px minmax(0,1fr);gap:28px;align-items:baseline}.game-line h3{font-size:28px;font-weight:900}.game-line strong{color:var(--accent);font-size:20px;font-weight:900;white-space:nowrap}.game-line p{color:#d4cec2;font-size:20px;font-weight:700;line-height:1.45}.game-line:has(h3:only-child){grid-template-columns:1fr}.game-summary{margin:0;color:var(--text);font-size:31px;font-weight:900;line-height:1.35}.projects-block{background:#ffffff06}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.project-tile{position:relative;display:grid;grid-template-rows:330px 1fr;min-height:610px;padding:0;overflow:hidden;text-align:left;background:var(--panel);border:1px solid var(--line)}.project-tile.featured{grid-column:span 2}.project-tile:hover{border-color:#d7f0719e;transform:translateY(-4px)}.project-tile img{width:100%;height:100%;object-fit:cover;opacity:.86;transition:transform .36s ease,opacity .36s ease}.project-tile:hover img{transform:scale(1.04);opacity:1}.project-year{position:absolute;top:18px;left:18px;z-index:2;padding:8px 10px;color:#111;background:var(--accent)}.project-info{display:grid;gap:14px;padding:28px}.project-info p{margin:0;color:var(--accent-2)}.project-info h3{font-size:34px}.project-info ul{display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:10px 0 0;list-style:none}.project-info li{padding:7px 10px;color:var(--muted);border:1px solid var(--line);font-size:13px}.strength-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}.strength-card{min-height:240px;padding:24px;background:#202326c2;border:1px solid var(--line)}.strength-card span{color:var(--accent-3);font-family:Consolas,Courier New,monospace;font-weight:900}.strength-card h3{margin-top:52px;font-size:24px}.strength-card p{margin-top:16px}.contact-section{min-height:100vh;display:flex;align-items:center;padding:120px 0;background:linear-gradient(135deg,rgba(215,240,113,.14),transparent 42%),#0b0c0d;border-top:1px solid var(--line)}.contact-layout{display:grid;grid-template-columns:1fr 520px;gap:92px;align-items:center}.contact-layout h2{max-width:920px;margin:0;font-size:clamp(68px,7vw,126px);line-height:1}.contact-list{display:grid;gap:12px}.contact-list a{display:grid;gap:8px;min-height:92px;padding:20px;background:#ffffff0d;border:1px solid var(--line)}.contact-list a:hover{background:var(--accent);color:#111}.contact-list strong{font-size:22px}.detail-shell{background:radial-gradient(circle at 75% 10%,rgba(255,154,116,.11),transparent 30rem),var(--bg)}.detail-shell.article-mode{background:#171818}.detail-hero{padding:92px 0 78px}.detail-hero-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:56px;align-items:end}.detail-hero h1{font-size:clamp(86px,8vw,150px)}.detail-hero h1.compact-title{font-size:clamp(62px,5.4vw,104px);line-height:1}.detail-hero p{max-width:760px;margin-top:30px;font-size:22px}.detail-hero img{width:100%;aspect-ratio:16 / 9;object-fit:cover;border:1px solid var(--line)}.detail-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}.detail-meta span{padding:10px 12px;color:var(--text);border:1px solid var(--line)}.detail-action,.inline-action{display:inline-flex;align-items:center;justify-content:center;width:max-content;min-height:46px;margin-top:22px;padding:0 18px;color:#111;background:var(--accent);border:1px solid rgba(0,0,0,.2);font-weight:900}.resource-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.resource-actions .detail-action{margin-top:0}.resource-actions .detail-action:not(:first-child){color:var(--text);background:transparent;border-color:var(--line)}.detail-action:hover,.inline-action:hover{background:var(--text)}.resource-actions .detail-action:not(:first-child):hover{color:#111;background:var(--text)}.detail-content,.related-projects{padding:92px 0;border-top:1px solid var(--line)}.article-mode .detail-content{padding:28px 0 96px;border-top:0}.article-mode .related-projects{background:#ffffff05}.detail-section-list{display:grid;gap:30px}.article-hero{padding:72px 0 26px}.article-layout{width:min(1000px,calc(100% - 72px));margin:0 auto}.article-kicker{margin:0 0 14px;color:var(--accent);font-size:15px;font-weight:800}.article-hero h1{max-width:980px;margin:0;color:#f0eee7;font-size:34px;line-height:1.28;letter-spacing:0}.article-meta{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:20px;color:#8c9298;font-size:15px}.article-meta span:first-child{padding:3px 7px;color:#6f767d;background:#ffffff0d}.article-meta strong{color:#8fc2ff;font-weight:600}.article-summary{max-width:860px;margin:42px 0 0;padding-left:18px;color:#b8c0c7;border-left:4px solid #2fbf48;font-size:18px;line-height:1.8}.article-reader{display:grid;gap:0;padding:8px 0 0;background:transparent;border:0}.article-reader h2,.article-reader h3{max-width:880px;letter-spacing:0}.article-reader h2{margin:58px 0 24px;color:#f1efe8;font-size:26px;line-height:1.36}.article-reader h3{margin:36px 0 18px;color:#cdd5dc;font-size:19px;line-height:1.45}.article-reader h2:first-child,.article-reader h3:first-child{margin-top:18px}.article-reader p{max-width:880px;margin:0 0 24px;color:#aeb7bf;font-size:18px;line-height:1.95}.article-callout{max-width:880px;margin:6px 0 30px;padding:18px 0 18px 18px;color:#c9d1d8;background:transparent;border-left:4px solid #2fbf48;font-size:18px;font-weight:600;line-height:1.9}.article-figure{max-width:100%;margin:28px 0 46px}.article-figure img{display:block;width:100%;max-height:none;height:auto;object-fit:contain;background:#101010;border:0}.article-image-table{display:grid;grid-template-columns:repeat(var(--columns),minmax(0,1fr));gap:12px;max-width:880px;margin:24px 0 42px;align-items:start}.article-image-cell{display:grid;justify-items:center;gap:8px;min-width:0;margin:0}.article-image-cell img{display:block;max-width:100%;height:auto;background:#101010}.article-image-cell figcaption{color:#9fa8af;font-size:14px;line-height:1.55;text-align:center}.article-table-wrap{width:100%;margin:10px 0 36px;overflow-x:auto;border:1px solid rgba(255,255,255,.12)}.article-table-wrap table{width:100%;min-width:720px;border-collapse:collapse;background:#ffffff08}.article-table-wrap th,.article-table-wrap td{padding:14px 16px;color:#aeb7bf;border:1px solid rgba(255,255,255,.1);font-size:14px;line-height:1.75;text-align:left;vertical-align:top}.article-table-wrap th{color:#eef1e9;background:#ffffff14;font-weight:800}.detail-section{display:grid;grid-template-columns:420px minmax(0,1fr);gap:42px;align-items:start;padding:28px;background:#202326b3;border:1px solid var(--line)}.detail-section-copy h2{margin:18px 0 20px;font-size:42px;line-height:1.12}.detail-section img{width:100%;max-height:900px;object-fit:contain;object-position:center;background:#0b0c0d;border:1px solid var(--line)}.detail-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.detail-gallery img{width:100%;height:430px;object-fit:cover}.detail-video{display:block;width:100%;max-height:760px;aspect-ratio:16 / 9;object-fit:cover;background:#050505;border:1px solid var(--line)}.related-list{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.related-list button{display:grid;gap:12px;padding:16px;text-align:left;background:var(--panel);border:1px solid var(--line)}.related-list button:hover{border-color:var(--accent)}.related-list img{width:100%;aspect-ratio:16 / 9;object-fit:cover}@media(max-width:1380px){body{min-width:1024px}.hero-layout,.contact-layout,.detail-hero-grid{grid-template-columns:1fr 430px;gap:48px}.split-heading,.detail-section{grid-template-columns:1fr}.project-grid,.strength-grid{grid-template-columns:repeat(3,1fr)}.experience-item{grid-template-columns:180px 1fr}.experience-item p{grid-column:2}}@media(max-width:900px){:root{--max: calc(100% - 32px) }body{min-width:0;background-size:56px 56px,56px 56px,auto,auto,auto}.site-header,.detail-topbar{height:62px;padding:0 16px}.brand-button{font-size:14px}.site-header nav{gap:0}.site-header nav button,.detail-topbar button,.detail-topbar a{min-height:34px;padding:0 7px;font-size:13px}.hero-section{min-height:auto;padding:68px 0 76px}.hero-layout,.contact-layout,.detail-hero-grid,.split-heading,.detail-section{grid-template-columns:1fr;gap:36px}.hero-copy h1,.detail-hero h1{font-size:clamp(60px,20vw,92px)}.detail-hero h1.compact-title{font-size:clamp(46px,14vw,68px)}.hero-role{margin-top:22px;font-size:18px}.hero-text,.detail-hero p{margin-top:26px;font-size:18px;line-height:1.7}.hero-actions,.resource-actions{display:grid;grid-template-columns:1fr}.hero-actions button,.hero-actions a,.resource-actions .detail-action{width:100%}.profile-panel{max-width:520px}.section-block,.section-block.compact,.detail-content,.related-projects{padding:72px 0}.section-title h2{font-size:44px}.experience-item{grid-template-columns:1fr;gap:18px;padding:22px}.experience-item p{grid-column:auto}.games-showcase h2{font-size:44px}.games-eyebrow{margin-bottom:24px;font-size:18px}.game-group,.game-group.summary{grid-template-columns:1fr;gap:20px;padding:22px}.game-type{width:fit-content}.game-line{grid-template-columns:1fr auto;gap:8px 16px}.game-line h3{font-size:23px}.game-line p{grid-column:1 / -1;font-size:16px}.game-summary{font-size:24px}.project-grid,.strength-grid,.related-list{grid-template-columns:1fr}.project-tile,.project-tile.featured{grid-column:auto;grid-template-rows:260px 1fr;min-height:0}.project-info{padding:24px}.project-info h3{font-size:30px}.strength-card{min-height:210px}.contact-section{min-height:auto;padding:96px 0}.contact-layout h2{font-size:clamp(54px,16vw,82px)}.detail-hero{padding:68px 0 60px}.detail-hero-grid{align-items:start}.detail-hero-grid>img{grid-row:1}.detail-section{padding:20px}.article-hero{padding:44px 0 18px}.article-layout{width:var(--max)}.article-hero h1{font-size:26px;line-height:1.34}.article-meta{gap:8px;font-size:14px}.article-summary{margin-top:30px;font-size:15px}.article-reader{padding:0}.article-reader h2{margin:44px 0 18px;font-size:22px}.article-reader h3{margin:30px 0 14px;font-size:17px}.article-reader p,.article-callout{font-size:15px;line-height:1.9}.article-callout{padding:14px 0 14px 16px}.article-figure{margin:22px 0 36px}.article-image-table{grid-template-columns:1fr;gap:18px;margin:22px 0 36px}.article-table-wrap th,.article-table-wrap td{padding:12px;font-size:14px}.detail-section-copy h2{font-size:34px}.detail-gallery{grid-template-columns:1fr}.detail-gallery img{height:auto;max-height:620px}}
