*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--bg: #faf4e4;--bg-secondary: #f4ead5;--text: #3b3329;--text-secondary: #77685a;--text-muted: #a89885;--primary: #c9383f;--primary-hover: #a52a31;--primary-light: #fbeae7;--border: #ece1c9;--radius: 12px;--max-width: 800px;--transition: .25s ease}.dark{--bg: #1a1412;--bg-secondary: #262019;--text: #ede3d6;--text-secondary: #b3a695;--text-muted: #8a7d6f;--primary: #e0645c;--primary-hover: #eb7b76;--primary-light: #3a2522;--border: #3a2e27}html{font-size:16px;scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;color:var(--text);background:var(--bg);line-height:1.7;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.app{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;padding-top:64px}.page{max-width:var(--max-width);margin:0 auto;padding:48px 24px 80px}.header{position:fixed;top:0;left:0;right:0;z-index:100;background:#faf4e4d9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}.dark .header{background:#1a1412d9}.header-inner{max-width:var(--max-width);margin:0 auto;padding:0 24px;height:64px;display:flex;align-items:center;justify-content:flex-start}.logo{font-size:1.1rem;font-weight:700;color:var(--text)}.nav{display:flex;gap:2px;margin-left:auto}.nav a{padding:6px 16px;border-radius:8px;font-size:.9rem;color:var(--text-secondary);transition:all var(--transition)}.nav a:hover{color:var(--primary);background:var(--primary-light)}.nav a.active{color:var(--primary);font-weight:600;background:var(--primary-light)}.header-controls{display:flex;align-items:center;gap:8px;margin-left:16px}.header-controls .theme-toggle,.header-controls .lang-select{margin-left:0}.lang-btn{margin-left:8px;padding:4px 12px;border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer;border:1px solid var(--border);background:transparent;color:var(--text-secondary);transition:all var(--transition)}.lang-btn:hover{color:var(--primary);border-color:var(--primary);background:var(--primary-light)}.lang-select{margin-left:8px;padding:4px 10px;border-radius:8px;font-size:.8rem;font-weight:500;cursor:pointer;border:1px solid var(--border);background:transparent;color:var(--text-secondary);outline:none;transition:all var(--transition);font-family:inherit}.lang-select:hover{border-color:var(--primary)}.theme-toggle{margin-left:8px;padding:4px 8px;border-radius:8px;font-size:1rem;cursor:pointer;border:1px solid var(--border);background:transparent;line-height:1;transition:all var(--transition)}.theme-toggle:hover{border-color:var(--primary);background:var(--primary-light)}.footer{border-top:1px solid var(--border);text-align:center;padding:32px 24px;color:var(--text-muted);font-size:.85rem}.btn{display:inline-flex;align-items:center;gap:6px;padding:10px 24px;border-radius:10px;font-size:.9rem;font-weight:500;transition:all var(--transition);cursor:pointer}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover);transform:translateY(-1px)}.btn-outline{background:transparent;color:var(--text);border:1.5px solid var(--border)}.btn-outline:hover{border-color:var(--primary);color:var(--primary)}.home-page .hero-section{text-align:center;padding:60px 0 40px}.hero-avatar{width:120px;height:120px;margin:0 auto 24px;border-radius:50%;overflow:hidden;border:3px solid var(--primary-light);box-shadow:0 4px 20px #c9383f2e}.hero-avatar img{width:100%;height:100%;object-fit:cover}.hero-name{font-size:2.2rem;font-weight:800;margin-bottom:8px;letter-spacing:-.02em}.hero-tagline{color:var(--primary);font-size:1.05rem;font-weight:500;margin-bottom:12px}.hero-bio{color:var(--text-secondary);font-size:.95rem;max-width:500px;margin:0 auto 28px;line-height:1.7}.hero-actions{display:flex;gap:12px;justify-content:center}.section{margin:48px 0}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid var(--border)}.section-header h2{font-size:1.15rem;font-weight:700}.section-more{font-size:.85rem;color:var(--primary);font-weight:500}.works-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px}.works-grid-full{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.work-card{display:block;background:var(--bg);border-radius:var(--radius);border:1px solid var(--border);overflow:hidden;transition:all var(--transition)}.work-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px #00000014}.work-card-cover{position:relative;padding-top:75%;overflow:hidden;background:var(--bg-secondary)}.work-card-cover img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.work-card:hover .work-card-cover img{transform:scale(1.05)}.work-status{position:absolute;top:12px;right:12px;padding:4px 12px;border-radius:20px;font-size:.75rem;font-weight:600}.status-ongoing{background:#fef3c7;color:#d97706}.status-done{background:#d1fae5;color:#059669}.work-card-body{padding:16px}.work-card-type{font-size:.75rem;color:var(--primary);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.work-card-title{font-size:1rem;font-weight:700;margin:4px 0 8px;line-height:1.3}.work-card-desc{font-size:.85rem;color:var(--text-secondary);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.work-card-date{display:block;margin-top:8px;font-size:.8rem;color:var(--text-muted)}.post-list{display:flex;flex-direction:column;gap:8px}.post-card{display:block;padding:20px;border-radius:var(--radius);border:1px solid var(--border);transition:all var(--transition)}.post-card:hover{border-color:var(--primary);box-shadow:0 4px 12px #0000000a}.post-card-title{font-size:1rem;font-weight:600;margin-bottom:6px}.post-card-summary{font-size:.88rem;color:var(--text-secondary);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:8px}.post-card-date{font-size:.8rem;color:var(--text-muted)}.post-list-full{display:flex;flex-direction:column;gap:12px}.post-card-full{display:block;padding:24px;border-radius:var(--radius);border:1px solid var(--border);transition:all var(--transition)}.post-card-full:hover{border-color:var(--primary);box-shadow:0 4px 12px #0000000a}.post-card-full-title{font-size:1.1rem;font-weight:700;margin-bottom:6px}.post-card-full-summary{font-size:.9rem;color:var(--text-secondary);margin-bottom:8px}.post-card-full-date{font-size:.8rem;color:var(--text-muted)}.page-title-block{text-align:center;margin-bottom:40px}.page-title-block h1{font-size:1.8rem;font-weight:800;margin-bottom:6px}.page-title-block p{color:var(--text-secondary);font-size:.95rem}.about-header{text-align:center;margin-bottom:40px}.about-avatar{width:100px;height:100px;margin:0 auto 16px;border-radius:50%;overflow:hidden;border:3px solid var(--primary-light)}.about-avatar img{width:100%;height:100%;object-fit:cover}.about-header h1{font-size:1.8rem;font-weight:800}.about-tagline{color:var(--primary);font-weight:500;margin-top:4px}.about-body{max-width:600px;margin:0 auto}.about-section{margin-bottom:32px}.about-section h2{font-size:1.1rem;font-weight:700;margin-bottom:12px}.about-section p{color:var(--text-secondary);font-size:.95rem;line-height:1.8;margin-bottom:8px}.skill-tags{display:flex;flex-wrap:wrap;gap:8px}.skill-tag{padding:6px 16px;background:var(--primary-light);color:var(--primary);border-radius:20px;font-size:.85rem;font-weight:500}.stats-grid{display:flex;gap:24px}.stat-item{display:flex;flex-direction:column;align-items:center;padding:20px 32px;background:var(--bg-secondary);border-radius:var(--radius);border:1px solid var(--border);min-width:120px}.stat-number{font-size:1.8rem;font-weight:800;color:var(--primary)}.stat-label{font-size:.85rem;color:var(--text-muted)}.contact-links{display:flex;flex-direction:column;gap:8px}.contact-link{display:flex;align-items:center;gap:6px;padding:10px 16px;border-radius:8px;border:1px solid var(--border);font-size:.9rem;color:var(--text-secondary);transition:all var(--transition);text-decoration:none;cursor:pointer;font-family:inherit}.contact-link:hover{border-color:var(--primary);color:var(--primary);text-decoration:underline;background:var(--primary-light)}.email-btn{width:100%;text-align:left}.copied-hint{font-size:.8rem;color:#22c55e;font-weight:500;animation:fadeInOut 2s ease}.work-detail-page{max-width:var(--max-width)}.back-link{display:inline-block;color:var(--primary);font-size:.9rem;font-weight:500;margin-bottom:24px}.back-link:hover{text-decoration:underline}.work-detail-header{display:grid;grid-template-columns:200px 1fr;gap:28px;margin-bottom:40px}.work-detail-cover{border-radius:var(--radius);overflow:hidden;box-shadow:0 4px 12px #00000014}.work-detail-cover img{width:100%;aspect-ratio:3/4;object-fit:cover}.work-detail-type{font-size:.8rem;color:var(--primary);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.work-detail-title{font-size:1.5rem;font-weight:800;margin:6px 0 10px}.work-detail-desc{color:var(--text-secondary);font-size:.95rem;margin:12px 0;line-height:1.7}.work-detail-desc p{margin:0 0 .7em}.work-detail-desc p:last-child{margin-bottom:0}.work-detail-date{font-size:.85rem;color:var(--text-muted)}.work-detail-content{font-size:1.05rem;line-height:2;color:var(--text);padding-top:32px;border-top:1px solid var(--border)}.work-detail-content p{text-indent:2em;margin-bottom:0}.work-detail-content .work-chapter-title{font-size:1.25rem;font-weight:800;text-indent:0;color:var(--text);margin:1.6em 0 .8em;padding-bottom:.4em;border-bottom:1px solid var(--border)}.chapter-nav{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 4px}.chapter-btn{padding:6px 14px;border-radius:20px;border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;font-size:.85rem;font-weight:600;transition:all .2s ease}.chapter-btn:hover{border-color:var(--primary);color:var(--primary)}.chapter-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.chapter-btn:disabled{opacity:.4;cursor:not-allowed}.chapter-btn:disabled:hover{border-color:var(--border);color:var(--text-secondary)}.chapter-pager{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:28px}.chapter-pos{font-size:.9rem;color:var(--text-secondary)}.empty-hint{text-align:center;color:var(--text-muted);padding:60px 0;font-size:.95rem}.empty-state-section{margin-top:0}.not-found{text-align:center;padding:100px 24px}.not-found h1{font-size:2rem;margin-bottom:16px}@media (max-width: 640px){.hero-name{font-size:1.6rem}.hero-avatar{width:90px;height:90px}.hero-actions{flex-direction:column;align-items:center}.works-grid,.works-grid-full{grid-template-columns:1fr}.work-detail-header{grid-template-columns:1fr;text-align:center}.work-detail-cover{max-width:160px;margin:0 auto}.stats-grid{justify-content:center}.nav a{padding:6px 10px;font-size:.85rem}.header-inner{height:auto;flex-wrap:wrap;padding:8px 16px;row-gap:8px}.logo{font-size:.95rem}.nav{order:3;width:100%;margin-left:0;justify-content:center}.header-controls{margin-left:auto}.main-content{padding-top:92px}.work-detail-desc{text-align:left}}.logo,.hero-name,.hero-tagline,.hero-bio,.section-header h2,.page-title-block h1,.about-header h1,.about-tagline,.work-card-title,.work-detail-title,.post-card-title,.post-card-full-title{font-style:italic}
