:root{--page:#faf9f5;--surface:#fff;--surface-soft:#f0eee6;--text:#141413;--muted:#6b6b6b;--line:#d5d3cb;--line-soft:#e8e6dc;--shadow:0 1px 3px #0000000a;--radius-xl:20px;--radius-lg:16px;--radius-md:12px;--radius-sm:8px}:root[data-theme=dark]{--page:#0a0a0a;--surface:#1a1a1a;--surface-soft:#222;--text:#f0eee6;--muted:#a1a1a6;--line:#3a3a3c;--line-soft:#2a2a2a;--shadow:0 1px 3px #0000004d}*{box-sizing:border-box}html,body{min-height:100%;margin:0;padding:0}body{color:var(--text);background:var(--page);-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button:disabled{opacity:.6;cursor:not-allowed}.shell{max-width:1320px;margin:0 auto;padding:24px 24px 56px}.app-header{background:var(--surface);border:none;border-radius:12px;justify-content:space-between;align-items:center;gap:20px;min-height:74px;margin-bottom:24px;padding:18px 22px;display:flex;box-shadow:0 1px 3px #0000000a}.brand{align-items:center;gap:12px;display:inline-flex}.brand-mark{color:#fff;background:#0164cc;border-radius:10px;place-items:center;width:38px;height:38px;display:grid}.brand-name{letter-spacing:-.02em;font-size:18px;font-weight:700}.top-nav{color:var(--muted);align-items:center;gap:24px;font-size:14px;font-weight:600;display:flex}.top-nav .active{color:var(--text)}.profile-link{justify-content:flex-end;align-items:center;gap:10px;display:flex}.icon-button,.pill-button,.primary-button,.ghost-button{cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:56px;padding:0 18px;font-size:14px;font-weight:600;display:inline-flex}.icon-button{border:1px solid var(--line);min-width:56px;color:var(--text);background:var(--surface)}.pill-button,.ghost-button{border:1px solid var(--line);background:var(--surface)}.primary-button{color:#fff;background:#0164cc;border:0}.primary-button:hover{background:#004b99}:root[data-theme=dark] .primary-button{color:#fff;background:#0164cc}:root[data-theme=dark] .primary-button:hover{background:#408ad8}.page-intro,.hero,.blog-placeholder,.register-copy{margin-bottom:28px}.eyebrow{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0 0 12px;font-size:13px;font-weight:700}.page-intro h1,.hero h1,.blog-placeholder h1,.register-copy h1{letter-spacing:-.05em;margin:0;font-size:clamp(32px,6vw,56px);line-height:1.06}.page-intro p:last-child,.hero-description,.blog-placeholder p:last-child,.register-copy p:last-child{max-width:760px;color:var(--muted);margin:14px 0 0;font-size:18px;line-height:1.55}.content-shell{grid-template-columns:240px minmax(0,1fr);gap:24px;display:grid}.sidebar,.panel-section,.content-main,.register-form-shell{border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow);border:none}.sidebar{align-self:start;padding:20px 14px}.side-label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0 0 12px;padding:0 10px;font-size:12px;font-weight:700}.menu{gap:4px;display:grid}.menu-item{height:46px;color:var(--muted);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:0 12px;font-size:14px;font-weight:600;display:flex}.menu-item span:first-child{align-items:center;gap:10px;display:inline-flex}.menu-item.active{color:var(--text);background:#f0eee6}.count{font-size:12px}.content-main{padding:28px}.ip-hero{border-radius:var(--radius-xl);background:var(--surface);min-height:620px;box-shadow:var(--shadow);border:none;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);align-items:center;gap:40px;padding:clamp(28px,5vw,56px);display:grid}.ip-hero-copy{gap:18px;display:grid}.status-badge{width:fit-content;color:var(--muted);background:var(--surface-soft);border:none;border-radius:999px;margin:0;padding:9px 14px;font-size:13px;font-weight:700}.ip-hero h1{letter-spacing:-.07em;margin:0;font-size:clamp(56px,10vw,112px);line-height:.9}.ip-hero h2{letter-spacing:-.05em;margin:0;font-size:clamp(28px,5vw,54px);line-height:1}.ip-hero p:not(.status-badge){max-width:720px;color:var(--muted);margin:0;font-size:18px;line-height:1.7}.ip-hero-visual{aspect-ratio:1;background:linear-gradient(145deg, var(--surface-soft), var(--surface));border:none;border-radius:24px;justify-self:center;width:min(100%,420px);padding:18px}.ip-hero-visual img{object-fit:cover;border-radius:18px;width:100%;height:100%;display:block}.social-row{flex-wrap:wrap;gap:10px;display:flex}.social-pill{min-height:40px;color:var(--muted);background:var(--surface-soft);border:none;border-radius:999px;align-items:center;gap:8px;padding:0 14px;font-size:13px;font-weight:700;display:inline-flex}.stat-strip,.marketing-section,.contact-card{border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow);border:none;margin-top:24px;padding:28px}.stat-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.stat-card-large{background:var(--surface-soft);border:none;border-radius:16px;align-content:center;gap:8px;min-height:132px;padding:20px;display:grid}.stat-card-large strong{letter-spacing:-.05em;font-size:clamp(32px,5vw,52px);line-height:1}.stat-card-large span{color:var(--muted);font-size:14px;font-weight:700}.marketing-section .section-copy h2,.contact-card h2{letter-spacing:-.05em;margin:0;font-size:clamp(28px,4vw,46px)}.marketing-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:22px;display:grid}.marketing-card,.timeline-card{background:var(--surface-soft);border:none;border-radius:16px;padding:22px}.marketing-card h3,.timeline-card h3{letter-spacing:-.03em;margin:0 0 10px;font-size:22px}.marketing-card p,.timeline-card p,.contact-card p{color:var(--muted);margin:0;font-size:14px;line-height:1.7}.timeline-list{gap:16px;margin-top:22px;display:grid}.timeline-card span{color:var(--muted);font-size:13px;font-weight:800}.timeline-card strong{color:var(--muted);margin-bottom:12px;font-size:14px;display:block}.tag-row{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.tag-row em{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:6px 10px;font-size:12px;font-style:normal;font-weight:700}.contact-card{grid-template-columns:minmax(0,1fr) 180px;align-items:center;gap:24px;display:grid}.contact-card img{object-fit:cover;background:#fff;border:none;border-radius:18px;width:180px;height:180px}.work-grid,.course-grid,.blog-plan-grid{gap:18px;display:grid}.work-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.course-grid,.blog-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.work-card,.course-card,.blog-topic-card{background:var(--surface);box-shadow:var(--shadow);border:none;border-radius:16px;gap:18px;padding:22px;display:grid}.work-cover{height:160px;color:var(--muted);background:linear-gradient(135deg, var(--surface-soft), var(--line-soft));border-radius:14px;place-items:center;font-size:34px;display:grid}.work-category{width:fit-content;color:var(--muted);background:var(--surface-soft);border-radius:999px;margin-bottom:10px;padding:6px 10px;font-size:12px;font-weight:800;display:inline-flex}.work-card h2,.course-card h2,.blog-topic-card h2{letter-spacing:-.04em;margin:0;font-size:24px}.work-card p,.course-card p{color:var(--muted);margin:10px 0 0;font-size:14px;line-height:1.7}.course-meta{flex-wrap:wrap;gap:10px;display:flex}.course-meta span{color:var(--muted);background:var(--surface-soft);border-radius:999px;padding:8px 10px;font-size:12px;font-weight:700}.course-price-row{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.course-price-row span{color:var(--muted);font-size:12px;font-weight:700;display:block}.course-price-row strong{letter-spacing:-.05em;margin-right:8px;font-size:34px}.course-price-row del{color:var(--muted);font-size:14px}.toolbar{justify-content:space-between;align-items:center;gap:16px;margin:28px 0 20px;display:flex}.search-box{min-width:280px;min-height:46px;color:var(--muted);background:var(--surface-soft);border:none;border-radius:999px;align-items:center;gap:10px;padding:0 16px;display:inline-flex}.toolbar-note{color:var(--muted);font-size:14px;font-weight:600}.tool-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.tool-card{background:#fff;border:none;border-radius:16px;flex-direction:column;justify-content:space-between;gap:18px;min-height:208px;padding:22px;transition:transform .18s,box-shadow .18s;display:flex}.tool-card:hover{transform:translateY(-2px);box-shadow:0 16px 40px #00000014}.tool-icon{background:#f0eee6;border-radius:14px;place-items:center;width:56px;height:56px;display:grid}.tool-card h4,.section-copy h2,.form-card h3{letter-spacing:-.03em;margin:0 0 8px;font-size:22px}.tool-card p,.section-copy p,.form-card p,.empty-card,.result-row span,.result-row a,.upload-item span{color:var(--muted);margin:0;font-size:14px;line-height:1.6}.card-action{font-size:14px;font-weight:700}.upload-page-grid{grid-template-columns:minmax(0,1.4fr) minmax(320px,.8fr);gap:24px;display:grid}.panel-section{padding:24px}.side-panel{align-self:start}.upload-list-panel{grid-column:1/-1}.section-copy{margin-bottom:20px}.form-stack{gap:14px;display:grid}.input-field{gap:8px;display:grid}.input-field span{color:var(--muted);font-size:14px;font-weight:600}.input-field input{border:1px solid var(--line);background:#fff;border-radius:16px;outline:none;height:52px;padding:0 16px}.input-field input:focus{border-color:#0164cc;box-shadow:0 0 0 3px #0164cc26}.input-field select,.input-field textarea{border:1px solid var(--line);background:#fff;border-radius:16px;outline:none;min-height:52px;padding:12px 16px}.upload-box{text-align:center;border:1.5px dashed var(--line);cursor:pointer;background:#f0eee6;border-radius:16px;place-items:center;gap:10px;min-height:180px;padding:24px;display:grid}.upload-box input{display:none}.upload-box i{font-size:24px}.upload-box strong{font-size:18px}.upload-box span{color:var(--muted);font-size:13px}.hint{color:var(--muted);background:#f0eee6;border-radius:18px;align-items:flex-start;gap:10px;margin-top:16px;padding:16px;display:flex}.hint-error{color:#b42318;background:#fef3f2}.result-card,.empty-card{background:#f0eee6;border-radius:18px;padding:18px}.result-row+.result-row{margin-top:14px}.result-row strong,.upload-item strong{color:var(--text);word-break:break-all;margin-top:6px;display:block}.upload-list{gap:12px;display:grid}.upload-item{border:none;border-radius:18px;justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;display:flex}.upload-item a,.result-row a{color:var(--text);font-weight:700}.register-shell{background:var(--page);grid-template-columns:1.1fr minmax(360px,460px);min-height:100vh;display:grid}.register-copy,.register-form-shell{align-content:center;padding:56px 48px;display:grid}.form-card{gap:18px;max-width:420px;display:grid}.tool-hero{border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow);border:none;margin-bottom:24px;padding:32px}.tool-hero p:last-child{max-width:760px;color:var(--muted);margin:14px 0 0;font-size:18px;line-height:1.6}.tool-detail-layout{grid-template-columns:minmax(0,1.35fr) 320px;gap:24px;display:grid}.tool-detail-main{min-width:0}.tool-detail-side{align-self:start;gap:24px;display:grid}.tool-workspace{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.single-column-tool{grid-template-columns:1fr}.tool-primary-panel,.tool-secondary-panel{border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow);border:none;padding:24px}.tool-section-head{margin-bottom:18px}.tool-section-head h3{letter-spacing:-.03em;margin:0;font-size:22px}.tool-section-head p{color:var(--muted);margin:8px 0 0;font-size:14px;line-height:1.6}.tool-upload-box{min-height:180px}.preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.preview-card{background:#fff;border:none;border-radius:14px;overflow:hidden}.preview-card img{background:#f0eee6;width:100%;display:block}.preview-card-footer{justify-content:space-between;align-items:center;gap:12px;padding:14px;display:flex}.inline-button{width:auto;min-height:38px;padding:0 14px}.range-field{gap:10px;display:grid}.range-field span{color:var(--muted);font-size:14px;font-weight:600}.range-field input{width:100%}.image-preview-card{gap:18px;display:grid}.image-preview-card img{object-fit:contain;background:#f0eee6;border:none;border-radius:14px;width:100%;max-height:460px}.code-textarea{border:1px solid var(--line);resize:vertical;background:#f0eee6;border-radius:18px;outline:none;width:100%;min-height:320px;padding:18px}.action-row{flex-wrap:wrap;gap:12px;display:flex}.theme-switcher,.checkbox-list,.preview-list{gap:12px;display:grid}.chip-button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:999px;min-height:40px;padding:0 14px}.chip-button.active{color:#fff;background:#0164cc}.article-preview.theme-clean h1,.article-preview.theme-clean h2{border-left:4px solid #0164cc;padding-left:12px}.article-preview.theme-soft{background:#f7f8fb}.article-preview.theme-editorial{border:1px solid var(--line);background:#fff}.preview-list-item{background:#f0eee6;border:none;border-radius:18px;padding:14px 16px}.preview-list-item p{color:var(--muted);word-break:break-word;margin:8px 0 0}.markdown-preview{background:#f0eee6;border:none;border-radius:14px;min-height:320px;padding:24px;line-height:1.75}.markdown-preview h1,.markdown-preview h2,.markdown-preview h3{letter-spacing:-.03em;margin-top:0}.markdown-preview pre{color:#fff;background:#111;border-radius:14px;padding:14px;overflow:auto}.markdown-preview code{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.mini-stat{background:#f0eee6;border:none;border-radius:18px;padding:16px}.mini-stat span{color:var(--muted);font-size:13px;display:block}.mini-stat strong{letter-spacing:-.03em;margin-top:8px;font-size:20px;display:block}.color-picker-wrap{gap:14px;display:grid}.color-picker-wrap input[type=color]{background:0 0;border:0;border-radius:18px;width:100%;height:200px;padding:0}.color-text-input{border:1px solid var(--line);background:#fff;border-radius:16px;height:52px;padding:0 16px}.color-preview{border:none;border-radius:16px;height:180px}.value-list{gap:12px;margin-top:18px;display:grid}.value-item{cursor:pointer;background:#fff;border:none;border-radius:18px;justify-content:space-between;align-items:center;gap:16px;padding:16px;display:flex}.value-item span{color:var(--muted);font-size:13px}.value-item strong{color:var(--text)}.checkbox-row{color:var(--muted);align-items:center;gap:10px;font-size:14px;display:flex}.game-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.puzzle-grid{grid-template-columns:repeat(3,1fr);gap:10px;width:min(100%,420px);display:grid}.puzzle-tile{aspect-ratio:1;color:#fff;cursor:pointer;background:#0164cc;border:0;border-radius:18px;font-size:28px;font-weight:700}.puzzle-tile.empty{border:1px dashed var(--line);cursor:default;background:#f0eee6}.touch-controls{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.compact-upload{min-height:120px}.draggable-preview{position:relative}.drag-marker{color:#fff;text-align:center;cursor:grab;background:#111111d1;border-radius:999px;min-width:64px;padding:6px 10px;font-size:12px;position:absolute;transform:translate(-50%,-50%)}.drag-marker.dragging{cursor:grabbing}.large-textarea{min-height:420px}.stats-board{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.lottery-theme{background:linear-gradient(#fff8f4,#fff)}.lottery-wall{perspective:800px;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;min-height:220px;display:grid}.lottery-wall span{color:#8c2e13;text-align:center;min-height:70px;transform-style:preserve-3d;background:linear-gradient(135deg,#fff5f0,#fff);border:1px solid #f2dbd1;border-radius:18px;place-items:center;font-weight:700;display:grid}.winner-board{color:#fff;text-align:center;background:linear-gradient(135deg,#f85032,#f9d423);border-radius:18px;margin-top:18px;padding:20px;box-shadow:0 18px 40px #de6c2538}.winner-board h4{margin:0 0 12px;font-size:18px}.winner-board div{gap:12px;display:grid}.winner-board span{word-break:break-word;font-size:42px;font-weight:800;line-height:1.1}.winner-count-2 div,.winner-count-4 div{grid-template-columns:repeat(2,minmax(0,1fr))}.winner-count-3 div,.winner-count-5 div{grid-template-columns:repeat(3,minmax(0,1fr))}.salary-highlight{color:#fff;background:linear-gradient(135deg,#0164cc,#004b99);border-radius:18px;margin-bottom:16px;padding:24px}.salary-highlight span{font-size:14px;display:block}.salary-highlight strong{letter-spacing:-.04em;margin-top:8px;font-size:42px;display:block}.tax-form-grid,.tax-inline-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.tax-subsection{gap:6px;margin:24px 0 14px;display:grid}.tax-subsection strong{letter-spacing:-.02em;font-size:16px}.tax-subsection span,.tax-meta,.tax-note{color:var(--muted);font-size:13px;line-height:1.6}.tax-option-list,.tax-warning-list{gap:12px;display:grid}.tax-option-card,.tax-detail-card{background:#f0eee6;border:none;border-radius:14px;margin-top:18px;padding:18px}.tax-option-card.active{border-color:var(--line);background:#fff}.tax-option-card .checkbox-row span:last-child{color:var(--text);font-weight:600}.tax-option-card .input-field{margin-top:14px}.tax-toggle-button{margin-top:18px}.tax-advanced-panel{background:#f0eee6;border:none;border-radius:14px;margin-top:16px;padding:18px}.tax-switch-row{border:1px solid var(--line);background:#fff;border-radius:16px;min-height:52px;padding:0 16px}.tax-warning{color:#8c4d2d;background:#fff8f3;border:1px solid #f0d9cc;border-radius:18px;align-items:flex-start;gap:10px;padding:14px 16px;font-size:13px;line-height:1.6;display:flex}.tax-note{background:#f0eee6;border:none;border-radius:16px;margin-top:16px;padding:12px 14px}.tax-note-soft{background:#f0eee6}.snake-canvas{background:#f0eee6;border:none;border-radius:16px;width:min(100%,320px)}.step-list,.info-list{gap:12px;display:grid}.step-item,.info-item{background:#f0eee6;border:none;border-radius:18px;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.step-item span,.info-item span{color:var(--muted);font-size:13px}.step-item strong,.info-item strong{color:var(--text);font-size:14px}@media (max-width:960px){.shell{padding:16px 16px 40px}.app-header,.content-shell,.upload-page-grid,.register-shell,.tool-detail-layout,.tool-workspace,.ip-hero,.contact-card{grid-template-columns:1fr}.app-header{flex-direction:column;align-items:flex-start}.top-nav{flex-wrap:wrap;gap:18px}.toolbar{flex-direction:column;align-items:flex-start}.tool-grid,.work-grid,.course-grid,.blog-plan-grid,.preview-grid,.touch-controls,.stats-board,.lottery-wall,.tax-form-grid,.tax-inline-grid,.stat-strip,.marketing-grid{grid-template-columns:1fr}.content-main,.sidebar,.panel-section,.register-copy,.register-form-shell,.tool-hero,.tool-primary-panel,.tool-secondary-panel{padding:20px}.search-box{width:100%;min-width:0}.profile-link{flex-wrap:wrap;justify-content:flex-start;width:100%}.profile-link .pill-button,.primary-button,.ghost-button{width:100%}.ip-hero{min-height:auto}.ip-hero-visual{order:-1;max-width:280px}.contact-card img{width:140px;height:140px}.stat-grid,.game-stats{grid-template-columns:1fr}.preview-card-footer,.value-item,.step-item,.info-item{flex-direction:column;align-items:flex-start}}:root{--bg-primary:#faf9f5;--bg-secondary:#f0eee6;--bg-tertiary:#f0eee6;--bg-card:#fff;--text-primary:#141413;--text-secondary:#6b6b6b;--text-tertiary:#86868b;--text-inverse:#fff;--accent:#141413;--accent-hover:#141413;--accent-light:#1414130f;--login-btn-bg:#0164cc;--login-btn-hover:#004b99;--border:#e8e6dc;--border-hover:#d5d3cb;--divider:#e8e6dc;--success:#34c759;--warning:#ff9500;--error:#ff3b30;--info:#0164cc;--font-family-base:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "PingFang SC", "Hiragino Sans GB", sans-serif;--font-family-mono:"SF Mono", Monaco, Inconsolata, "Fira Code", "Droid Sans Mono", "Source Code Pro", 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:1.875rem;--font-size-4xl:2.25rem;--font-size-5xl:3rem;--font-size-6xl:3.75rem;--font-size-7xl:4.5rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.25;--line-height-normal:1.5;--line-height-relaxed:1.75;--spacing-1:.25rem;--spacing-2:.5rem;--spacing-3:.75rem;--spacing-4:1rem;--spacing-5:1.25rem;--spacing-6:1.5rem;--spacing-8:2rem;--spacing-10:2.5rem;--spacing-12:3rem;--spacing-16:4rem;--spacing-20:5rem;--radius-xs:8px;--radius-sm:12px;--radius-md:16px;--radius-lg:20px;--radius-xl:24px;--radius-full:9999px;--shadow-sm:0 1px 3px #0000000a;--shadow-md:0 2px 8px #0000000d;--shadow-lg:0 4px 16px #0000000f;--shadow-xl:0 8px 24px #00000014;--shadow-avatar:0 8px 24px #00000014;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-base:.2s cubic-bezier(.4, 0, .2, 1);--transition-slow:.3s cubic-bezier(.4, 0, .2, 1);--container-xl:1280px;--container-2xl:1400px;--z-fixed:300;--navbar-height:64px;--navbar-bg:#faf9f5;--navbar-blur:20px;--hero-min-height:100vh;--hero-padding-top:6rem;--page:var(--bg-primary);--surface:var(--bg-card);--surface-soft:var(--bg-tertiary);--text:var(--text-primary);--muted:var(--text-secondary);--line:var(--border-hover);--line-soft:var(--border);--shadow:var(--shadow-sm)}:root[data-theme=dark]{--bg-primary:#0a0a0a;--bg-secondary:#1a1a1a;--bg-tertiary:#222;--bg-card:#1a1a1a;--text-primary:#f0eee6;--text-secondary:#a1a1a6;--text-tertiary:#86868b;--accent:#408ad8;--accent-hover:#6fa7e1;--accent-light:#408ad826;--border:#ffffff1a;--border-hover:#ffffff2e;--divider:#ffffff1f;--navbar-bg:#0a0a0a;--page:var(--bg-primary);--surface:var(--bg-card);--surface-soft:var(--bg-tertiary);--text:var(--text-primary);--muted:var(--text-secondary);--line:var(--border-hover);--line-soft:var(--border)}html{scroll-behavior:smooth;font-size:var(--font-size-base)}body{color:var(--text-primary);background:var(--bg-primary);font-family:var(--font-family-base);line-height:var(--line-height-normal);overflow-x:hidden}img{max-width:100%;height:auto;display:block}.container{max-width:var(--container-2xl);margin:0 auto}::selection{color:var(--text-inverse);background:var(--accent)}.navbar{width:100%;height:var(--navbar-height);background:var(--navbar-bg);z-index:var(--z-fixed);border-bottom:none;position:fixed;inset:0 0 auto}.navbar.scrolled{background:var(--navbar-bg)}[data-theme=dark] .navbar,[data-theme=dark] .navbar.scrolled{background:#000;border-bottom-color:#ffffff1a}.navbar-container{max-width:var(--container-2xl);justify-content:space-between;align-items:center;height:100%;margin:0 auto;display:flex}.nav-brand{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--text-secondary);letter-spacing:-.01em;white-space:nowrap}.nav-menu{align-items:center;gap:var(--spacing-10);display:flex}.nav-menu a{min-width:60px;color:var(--text-secondary);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);text-align:center;white-space:nowrap;transition:color var(--transition-fast) ease;display:inline-block}.nav-menu a:hover,.nav-menu a.active{color:var(--text-primary)}[data-theme=dark] .nav-menu a{color:#fffc}[data-theme=dark] .nav-menu a:hover,[data-theme=dark] .nav-menu a.active{color:#fff}.nav-right{justify-content:flex-end;align-items:center;gap:var(--spacing-4);grid-column:3;height:40px;display:flex}.language-selector,.theme-toggle,.search-btn,.login-btn{border-radius:var(--radius-xs);height:40px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast) ease;background:0 0;border:0}.language-selector{width:90px;padding:var(--spacing-2) var(--spacing-3);justify-content:center;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-sm);display:inline-flex}.theme-toggle,.search-btn{justify-content:center;align-items:center;width:36px;display:inline-flex;position:relative}.login-btn{min-width:56px;padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);justify-content:center;align-items:center;display:inline-flex}.language-selector:hover,.theme-toggle:hover,.search-btn:hover,.login-btn:hover{color:var(--accent);background:0 0;border-color:#0000}.theme-toggle .sun-icon,.theme-toggle .moon-icon{transition:opacity var(--transition-base) ease;position:absolute}.theme-toggle .sun-icon{opacity:0}.theme-toggle .moon-icon,[data-theme=dark] .theme-toggle .sun-icon{opacity:1}[data-theme=dark] .theme-toggle .moon-icon{opacity:0}[data-theme=dark] .language-selector,[data-theme=dark] .theme-toggle,[data-theme=dark] .search-btn,[data-theme=dark] .login-btn{color:#ffffffdb;border-color:#0000}[data-theme=dark] .language-selector:hover,[data-theme=dark] .theme-toggle:hover,[data-theme=dark] .search-btn:hover,[data-theme=dark] .login-btn:hover{color:#fff;background:0 0;border-color:#0000}.home-page{background:var(--bg-primary)}.hero{z-index:1;min-height:var(--hero-min-height);padding:var(--hero-padding-top) 56px var(--spacing-16);background:var(--bg-primary);justify-content:center;align-items:center;margin:0;display:flex;position:relative}.hero-content{width:100%;max-width:var(--container-2xl);align-items:center;gap:var(--spacing-12);grid-template-columns:3fr 2fr;margin:0 auto;display:grid}.hero-left{gap:var(--spacing-4);flex-direction:column;max-width:600px;display:flex}.hero-name{color:var(--text-primary);font-size:6.75rem;font-weight:var(--font-weight-bold);letter-spacing:-.02em;margin:0;line-height:1.05}.hero-underline{background:var(--text-primary);width:60px;height:3px;margin:var(--spacing-2) 0 var(--spacing-3)}.hero-tagline{color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);letter-spacing:.02em;margin:0;line-height:1.6}.hero-description{max-width:500px;margin:var(--spacing-2) 0 0;color:var(--text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);line-height:1.5}.hero-actions{align-items:center;gap:var(--spacing-5);margin-top:var(--spacing-6);display:flex}.hero-btn{align-items:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-6);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);letter-spacing:.05em;cursor:pointer;transition:all var(--transition-fast) ease;border-radius:0;text-decoration:none;display:inline-flex}.hero-btn-primary{background:var(--text-primary);color:#fff;border:1px solid var(--text-primary)}.hero-btn-primary:hover{background:#333;border-color:#333}.hero-btn-secondary{color:var(--text-primary);border:1px solid var(--border);background:0 0}.hero-btn-secondary:hover{border-color:var(--text-primary)}.social-buttons{gap:var(--spacing-3);flex-wrap:wrap;display:flex}.social-btn{min-width:100px;height:38px;padding:var(--spacing-3) var(--spacing-4);justify-content:center;align-items:center;gap:var(--spacing-2);color:var(--accent);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast) ease;background:0 0;display:inline-flex}.social-btn:hover{color:var(--accent-hover);background:var(--accent-light);border-color:var(--accent)}.social-btn span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hero-right{justify-content:center;align-items:center;min-width:320px;min-height:320px;display:flex}.avatar-container{position:relative}.avatar{object-fit:cover;border-radius:0;width:360px;height:auto;max-height:480px}.stats-section,.timeline-section{padding:var(--spacing-16) 56px;background:var(--bg-secondary);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.skills-section,.contact-section{padding:var(--spacing-20) 56px;background:var(--bg-primary)}.stats-title,.section-title,.contact-title{min-height:60px;margin:0 0 var(--spacing-12);color:var(--text-primary);font-size:var(--font-size-5xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);text-align:left}.stats-grid,.skills-grid,.timeline{max-width:var(--container-2xl);margin:0 auto}.stats-grid{gap:var(--spacing-8);grid-template-columns:repeat(4,1fr);display:grid}.stat-card,.skill-card,.timeline-content{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);transition:all var(--transition-fast) ease}.stat-card{min-height:180px;padding:var(--spacing-8);text-align:center;flex-direction:column;justify-content:center;display:flex}.stat-card:hover,.skill-card:hover,.timeline-item:hover .timeline-content{border-color:var(--border-hover);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.stat-value{margin-bottom:var(--spacing-2);color:var(--text-primary);font-size:var(--font-size-5xl);font-weight:var(--font-weight-bold);display:block}.stat-label{color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.skills-grid{gap:var(--spacing-8);grid-template-columns:repeat(3,1fr);display:grid}.skill-card{min-height:280px;padding:var(--spacing-8);flex-direction:column;display:flex}.skill-title{margin:0 0 var(--spacing-3);color:var(--text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold)}.skill-description,.timeline-description{color:var(--text-secondary);font-size:var(--font-size-base);line-height:var(--line-height-relaxed)}.timeline{gap:var(--spacing-8);display:flex}.timeline-item{flex:1}.timeline-content{min-height:400px;padding:var(--spacing-8);flex-direction:column;display:flex}.timeline-year{margin-bottom:var(--spacing-4);padding-bottom:var(--spacing-4);color:var(--text-primary);border-bottom:2px solid var(--border);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.timeline-position{margin-bottom:var(--spacing-3);color:var(--text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold)}.timeline-subtitle{margin-bottom:var(--spacing-4);color:var(--text-secondary);font-size:var(--font-size-base)}.timeline-tags{gap:var(--spacing-2);flex-wrap:wrap;margin-top:auto;display:flex}.tag{padding:var(--spacing-1) var(--spacing-3);color:var(--accent);background:var(--accent-light);border:1px solid var(--border);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);white-space:nowrap;display:inline-block}.contact-section{border-top:none}.contact-subtitle{min-height:28px;margin:0 0 var(--spacing-4);color:var(--text-primary);font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);text-align:left}.contact-hint{margin:0 0 var(--spacing-12);color:var(--text-tertiary);font-size:var(--font-size-base);text-align:left}.contact-channels{gap:var(--spacing-8);grid-template-columns:repeat(2,minmax(0,1fr));max-width:640px;display:grid}.contact-channel{gap:var(--spacing-2);display:grid}.channel-label{color:var(--text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em}.channel-value{color:var(--text-primary);font-size:var(--font-size-base);word-break:break-all}.contact-channel a.channel-value{text-decoration:none}.contact-channel a.channel-value:hover{text-decoration:underline}.contact-content{max-width:var(--container-xl);align-items:center;gap:var(--spacing-12);flex-direction:column;margin:0 auto;display:flex}.works-page,.courses-page,.blog-page{min-height:100vh;padding-top:var(--navbar-height);background:var(--bg-primary)}.page-header{padding:var(--spacing-20) 56px var(--spacing-12);background:var(--bg-primary)}.page-header-top{justify-content:space-between;align-items:flex-start;gap:var(--spacing-6);display:flex}.page-title{min-height:60px;margin:0 0 var(--spacing-12);color:var(--text-primary);font-size:var(--font-size-5xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);text-align:left}.page-subtitle{min-height:32px;color:var(--text-secondary);font-size:var(--font-size-xl);line-height:var(--line-height-relaxed);margin:0}.category-pills{margin-top:var(--spacing-8);gap:var(--spacing-3);flex-wrap:wrap;display:flex}.category-pill{min-height:38px;padding:0 var(--spacing-4);color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:all var(--transition-fast) ease;background:0 0;justify-content:center;align-items:center;display:inline-flex}.category-pill:hover,.category-pill.active{color:var(--text-primary);font-weight:var(--font-weight-bold);background:0 0;border-color:#0000}.works-content,.courses-content,.blog-content{background:var(--bg-primary)}.category-nav{margin-top:var(--spacing-8);align-items:center;gap:var(--spacing-2);flex-wrap:wrap;display:flex}.category-nav-group{align-items:center;gap:var(--spacing-2);display:inline-flex}.category-sep{color:var(--text-tertiary);font-size:var(--font-size-base);margin:0 var(--spacing-1)}.category-link{color:var(--text-secondary);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);transition:color var(--transition-fast) ease;text-decoration:none}.category-link:hover,.category-link.active{color:var(--text-primary);font-weight:var(--font-weight-bold)}.tool-card-grid{max-width:var(--container-2xl);grid-template-columns:1fr 1fr;gap:0;margin:0 auto;display:grid}.tool-card-anthropic{padding:var(--spacing-5) 56px;align-items:center;gap:var(--spacing-5);color:inherit;transition:opacity var(--transition-fast) ease;background:0 0;border:none;text-decoration:none;display:flex}.tool-card-anthropic:hover{opacity:.7}.tool-card-icon{color:var(--text-secondary);flex-shrink:0;font-size:28px}.tool-card-body{gap:var(--spacing-1);flex-direction:column;min-width:0;display:flex}.tool-card-name{color:var(--text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);margin:0}.tool-card-desc{color:var(--text-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);margin:0}.blog-faq-list{max-width:var(--container-2xl);padding:0 56px var(--spacing-20);gap:var(--spacing-16);flex-direction:column;margin:0 auto;display:flex}.blog-faq-section{gap:var(--spacing-4);flex-direction:column;display:flex}.blog-faq-toggle{cursor:pointer;width:100%;padding:var(--spacing-4) 0;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;display:flex}.blog-faq-title{color:#222;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);letter-spacing:-.02em;margin:0}.blog-faq-icon{color:#222;font-size:var(--font-size-2xl);font-weight:var(--font-weight-normal);margin-left:var(--spacing-4);transition:transform var(--transition-fast) ease;flex-shrink:0}.blog-faq-items{flex-direction:column;display:flex}.blog-faq-item{padding:var(--spacing-4) 0;border-bottom:1px solid var(--border)}.blog-faq-item:first-child{border-top:1px solid var(--border)}.blog-faq-item-title{margin-bottom:var(--spacing-2);color:#4d4d4d;font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);transition:color var(--transition-fast) ease;display:block}.blog-faq-item-title:hover{color:#86867f}.blog-faq-item-desc{color:var(--text-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);margin:0}.works-grid,.courses-grid,.blog-tree-container{max-width:var(--container-2xl);padding:0 56px var(--spacing-20);gap:var(--spacing-8);margin:0 auto;display:grid}.works-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.courses-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-tree-container{grid-template-columns:repeat(3,minmax(0,1fr))}.work-card,.course-card,.blog-topic-card{color:inherit;background:var(--bg-card);border-radius:var(--radius-md);box-shadow:none;opacity:0;transition:all var(--transition-fast) ease;border:none;flex-direction:column;animation:.4s forwards fadeIn;display:flex;overflow:hidden;transform:translateY(20px)}.blog-topic-card{padding:var(--spacing-6);gap:var(--spacing-5)}.work-card:hover,.course-card:hover,.blog-topic-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.work-card.featured{box-shadow:var(--shadow-md)}.work-cover{width:100%;height:200px;color:var(--text-secondary);background:var(--bg-tertiary);border-radius:0;place-items:center;font-size:34px;display:grid;position:relative;overflow:hidden}.tool-work-cover{background:linear-gradient(135deg, var(--bg-tertiary), var(--bg-secondary))}.tool-cover-icon{width:72px;height:72px;color:var(--text-primary);background:var(--bg-card);border-radius:var(--radius-md);box-shadow:none;border:none;place-items:center;display:grid}.work-content,.course-content{padding:var(--spacing-6);flex-direction:column;flex:1;display:flex}.work-category{width:fit-content;margin-bottom:var(--spacing-3);padding:var(--spacing-1) var(--spacing-3);color:var(--text-secondary);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);background:0 0;border:none;display:inline-flex}.work-title,.course-title,.blog-topic-title{margin:0 0 var(--spacing-3);color:var(--text-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight)}.work-description,.course-description{margin:0 0 var(--spacing-4);color:var(--text-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);flex:1}.work-description{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.work-tags,.course-tags{margin-bottom:var(--spacing-4);gap:var(--spacing-2);flex-wrap:wrap;display:flex}.work-links{gap:var(--spacing-3);margin-top:auto;display:flex}.work-link{padding:var(--spacing-2) var(--spacing-4);justify-content:center;align-items:center;gap:var(--spacing-2);color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-xs);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);white-space:nowrap;transition:all var(--transition-fast) ease;background:0 0;display:inline-flex}.course-meta{margin-bottom:var(--spacing-4);align-items:center;gap:var(--spacing-4);color:var(--text-tertiary);font-size:var(--font-size-sm);flex-wrap:wrap;display:flex}.course-meta span{color:inherit;background:0 0;padding:0}.course-footer{padding-top:var(--spacing-4);justify-content:space-between;align-items:center;gap:var(--spacing-4);border-top:1px solid var(--divider);margin-top:auto;display:flex}.course-price{align-items:baseline;gap:var(--spacing-3);display:flex}.price-original{color:var(--text-tertiary);font-size:var(--font-size-sm);text-decoration:line-through}.price-current{color:var(--accent);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold)}.course-btn{min-height:40px;color:var(--text-inverse);background:var(--login-btn-bg);border-radius:var(--radius-xs);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast) ease;border:0;justify-content:center;align-items:center;padding:10px 56px;display:inline-flex}.course-btn:hover{background:var(--login-btn-hover)}.course-btn:disabled{cursor:not-allowed;opacity:.74}.preview-list{gap:var(--spacing-3);display:grid}.preview-list-item{padding:var(--spacing-4);background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-sm)}.preview-list-item strong{color:var(--text-primary)}.preview-list-item p{margin-top:var(--spacing-2);color:var(--text-secondary);font-size:var(--font-size-sm)}.tool-detail-page{padding-bottom:var(--spacing-20)}.tool-detail-layout{max-width:var(--container-2xl);gap:var(--spacing-8);grid-template-columns:minmax(0,1.35fr) 320px;margin:0 auto;padding:0 56px;display:grid}.legacy-panel,.tool-primary-panel,.tool-secondary-panel,.panel-section{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:none}.tool-primary-panel,.tool-secondary-panel,.panel-section{padding:var(--spacing-6)}.section-copy h2,.tool-section-head h3,.form-card h3{color:var(--text-primary)}.section-copy p,.tool-section-head p,.form-card p,.empty-card,.result-row span,.result-row a,.upload-item span,.range-field span,.input-field span,.tax-meta,.tax-note{color:var(--text-secondary)}.input-field input,.input-field select,.input-field textarea,.code-textarea,.color-text-input,.chip-button,.tax-switch-row{color:var(--text-primary);background:var(--bg-card);border-color:var(--border-hover)}.upload-box,.result-card,.empty-card,.preview-card,.markdown-preview,.mini-stat,.tax-option-card,.tax-detail-card,.tax-advanced-panel,.tax-note,.preview-list-item,.value-item,.step-item,.info-item{background:var(--bg-tertiary);border-color:var(--border)}.value-item strong,.step-item strong,.info-item strong,.result-row strong,.upload-item strong{color:var(--text-primary)}.site-footer{z-index:1;background:var(--bg-primary);border-top:none;padding:0 56px;position:relative}.footer-content{max-width:var(--container-2xl);margin:0 auto var(--spacing-12);gap:var(--spacing-16);grid-template-columns:2fr 3fr;display:grid}.footer-brand h3{margin:0 0 var(--spacing-3);color:var(--text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold)}.footer-brand p{color:var(--text-secondary);font-size:var(--font-size-base);line-height:var(--line-height-relaxed)}.footer-links{gap:var(--spacing-8);grid-template-columns:repeat(2,1fr);display:grid}.footer-column h4{min-height:28px;margin:0 0 var(--spacing-4);color:var(--text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}.footer-column a{margin-bottom:var(--spacing-3);color:var(--text-secondary);font-size:var(--font-size-sm);white-space:nowrap;transition:all var(--transition-fast) ease;display:block}.footer-column a:hover{color:var(--text-primary);transform:translate(2px)}.footer-bottom{max-width:100%;padding:var(--spacing-8) 56px;border-top:1px solid var(--border);text-align:center;margin:0 auto}.footer-bottom p{color:var(--text-tertiary);font-size:var(--font-size-sm)}@keyframes fadeIn{to{opacity:1;transform:translateY(0)}}@media (max-width:1024px){.hero-content{gap:var(--spacing-12);text-align:center;grid-template-columns:1fr}.hero-left{align-items:center;margin:0 auto}.hero-name{font-size:var(--font-size-6xl)}.hero-description{text-align:center}.hero-actions{justify-content:center}.avatar{width:240px;height:240px}.stats-grid,.works-grid,.blog-tree-container{gap:var(--spacing-6);grid-template-columns:repeat(2,minmax(0,1fr))}.skills-grid,.courses-grid{gap:var(--spacing-6);grid-template-columns:1fr}.timeline,.tool-detail-layout{flex-direction:column;grid-template-columns:1fr}.footer-content{gap:var(--spacing-8);grid-template-columns:1fr}}@media (max-width:768px){:root{--navbar-height:96px}.navbar{height:var(--navbar-height)}.navbar-container{padding:var(--spacing-2) 20px;place-content:center space-between;gap:var(--spacing-2) var(--spacing-3);flex-wrap:wrap;display:flex}.nav-menu{justify-content:flex-start;gap:var(--spacing-4);scrollbar-width:none;order:2;width:100%;min-width:0;overflow-x:auto}.nav-menu::-webkit-scrollbar{display:none}.nav-menu a{min-width:auto;font-size:var(--font-size-xs)}.nav-right{justify-content:center;gap:var(--spacing-2);order:1;grid-column:auto;height:36px}.language-selector{width:48px}.language-selector span,.search-btn{display:none}.hero{padding:var(--hero-padding-top) 20px var(--spacing-12)}.hero-content{min-height:auto}.hero-right{order:-1;min-width:0;min-height:180px}.hero-name{font-size:3.5rem}.hero-underline{width:40px;height:2px}.hero-description{min-height:auto;font-size:var(--font-size-base)}.hero-actions{flex-direction:column;width:100%}.hero-btn{justify-content:center;width:100%}.avatar{width:160px;height:auto}.stats-section,.skills-section,.timeline-section,.contact-section,.page-header{padding-left:20px;padding-right:20px}.stats-title,.section-title,.contact-title,.page-title{min-height:auto;margin-bottom:var(--spacing-8);font-size:var(--font-size-3xl)}.page-subtitle,.contact-subtitle{min-height:auto;font-size:var(--font-size-base)}.stats-grid,.works-grid,.courses-grid,.blog-tree-container{padding-left:var(--spacing-4);padding-right:var(--spacing-4);grid-template-columns:1fr}.stat-card,.skill-card,.timeline-content,.course-content,.work-content,.blog-topic-card{padding:var(--spacing-6)}.work-cover{height:180px}.work-links,.course-footer{flex-direction:column;align-items:stretch}.work-link,.course-btn{width:100%}.tool-detail-layout{padding:0 var(--spacing-4)}.tool-workspace,.tax-form-grid,.tax-inline-grid,.preview-grid,.stats-board,.lottery-wall{grid-template-columns:1fr}.qrcode-image{width:240px;height:240px}.footer-content,.footer-links{gap:var(--spacing-6);grid-template-columns:1fr}}@media (max-width:480px){.hero-name{font-size:var(--font-size-4xl)}.stats-grid{grid-template-columns:1fr}.stat-card{min-height:auto;padding:var(--spacing-4)}.qrcode-image{width:200px;height:200px}}.auth-page{min-height:100vh;padding-top:var(--navbar-height);background:var(--bg-primary)}.auth-shell{min-height:calc(100vh - var(--navbar-height));max-width:var(--container-2xl);padding:var(--spacing-20) var(--spacing-6);align-items:center;gap:var(--spacing-16);grid-template-columns:minmax(0,1fr) minmax(360px,480px);margin:0 auto;display:grid}.auth-callback-shell{grid-template-columns:minmax(320px,520px);justify-content:center}.auth-login-shell{grid-template-columns:minmax(320px,480px);justify-content:center}.auth-copy h1{margin:0 0 var(--spacing-6);color:var(--text-primary);font-size:var(--font-size-6xl);font-weight:var(--font-weight-bold);letter-spacing:-.02em;line-height:1.08}.auth-copy p:last-child{max-width:680px;color:var(--text-secondary);font-size:var(--font-size-xl);line-height:var(--line-height-relaxed)}.auth-card{padding:var(--spacing-8);gap:var(--spacing-6);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);display:grid}.auth-card h1,.auth-card h2{color:var(--text-primary);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);margin:0}.auth-card p{color:var(--text-secondary);line-height:var(--line-height-relaxed)}.auth-description{margin-top:var(--spacing-3)}.oauth-list,.auth-actions{gap:var(--spacing-3);display:grid}.oauth-button{width:100%;min-height:52px;padding:0 var(--spacing-5);justify-content:center;align-items:center;gap:var(--spacing-3);color:var(--text-primary);border:1px solid var(--border-hover);border-radius:var(--radius-xs);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast) ease;background:0 0;display:inline-flex}.oauth-button:hover{background:var(--accent-light);border-color:var(--accent)}.oauth-button:disabled{cursor:not-allowed;opacity:.62}.auth-hint{padding:var(--spacing-4);align-items:flex-start;gap:var(--spacing-3);color:var(--text-secondary);background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);display:flex}.auth-status-icon{width:48px;height:48px;color:var(--accent);background:var(--accent-light);border:1px solid var(--border);border-radius:var(--radius-full);place-items:center;display:grid}.auth-primary,.auth-secondary{width:100%}.center-shell{grid-template-columns:minmax(320px,860px)}.center-stack{gap:var(--spacing-6);display:grid}.center-card{width:100%}.center-info-grid{gap:var(--spacing-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.center-info-item{padding:var(--spacing-4);gap:var(--spacing-2);background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-sm);display:grid}.center-info-item span{color:var(--text-secondary);font-size:var(--font-size-sm)}.center-info-item strong{color:var(--text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);word-break:break-word}@media (max-width:960px){.auth-shell{gap:var(--spacing-8);grid-template-columns:1fr}.auth-copy h1{font-size:var(--font-size-4xl)}.auth-copy p:last-child{font-size:var(--font-size-base)}.center-info-grid{grid-template-columns:1fr}}:root{--radius-xs:8px;--radius-sm:13px;--radius-md:21px;--radius-lg:21px;--radius-xl:34px;--section-y:80px;--section-x:24px;--grid-gap:24px;--content-gap:24px;--row-gap:16px}.page-header,.stats-section,.skills-section,.timeline-section,.contact-section{padding-top:var(--section-y);padding-bottom:var(--section-y)}.works-grid,.courses-grid,.blog-tree-container,.stats-grid,.skills-grid,.timeline,.tool-workspace,.tool-detail-layout{gap:var(--grid-gap)}.work-card,.course-card,.blog-topic-card,.stat-card,.skill-card,.timeline-content,.tool-primary-panel,.tool-secondary-panel,.legacy-panel,.auth-card{border-radius:var(--radius-md)}.oauth-button,.category-pill,.work-link,.course-btn,.primary-button,.ghost-button,.input-field input,.input-field select,.input-field textarea,.code-textarea,.color-text-input,.chip-button,.tax-switch-row,.upload-box,.result-card,.empty-card,.preview-card,.markdown-preview,.value-item,.mini-stat,.tax-option-card,.tax-detail-card,.tax-advanced-panel,.tax-note,.step-item,.info-item{border-radius:var(--radius-sm)}.tool-detail-page .tool-detail-layout{align-items:start}.tool-detail-page .tool-primary-panel,.tool-detail-page .tool-secondary-panel,.tool-detail-page .legacy-panel{padding:32px}.tool-detail-page .tool-section-head,.tool-detail-page .section-copy{margin-bottom:var(--content-gap);padding-bottom:var(--row-gap);border-bottom:1px solid var(--border)}.tool-detail-page .tool-section-head h3,.tool-detail-page .section-copy h2{margin-bottom:8px}.tool-detail-page .tool-section-head p,.tool-detail-page .section-copy p{margin:0}.tool-detail-page .tax-option-list,.tool-detail-page .info-list,.tool-detail-page .step-list,.tool-detail-page .preview-list,.tool-detail-page .value-list{border-top:1px solid var(--border);gap:0}.tool-detail-page .tax-option-card,.tool-detail-page .tax-option-card.active,.tool-detail-page .tax-detail-card,.tool-detail-page .tax-advanced-panel,.tool-detail-page .tax-note,.tool-detail-page .tax-note-soft,.tool-detail-page .mini-stat,.tool-detail-page .info-item,.tool-detail-page .step-item,.tool-detail-page .preview-list-item,.tool-detail-page .value-item,.tool-detail-page .result-card,.tool-detail-page .empty-card{padding:var(--row-gap) 0;border:0;border-bottom:1px solid var(--border);box-shadow:none;background:0 0;border-radius:0;margin:0}.tool-detail-page .tax-option-card .input-field,.tool-detail-page .tax-advanced-panel .tax-form-grid,.tool-detail-page .tax-inline-grid{margin-top:var(--row-gap)}.tool-detail-page .tax-detail-card{margin-top:var(--content-gap)}.tool-detail-page .tax-detail-card .tool-section-head{margin-bottom:0}.tool-detail-page .stats-board{gap:0 var(--grid-gap);border-top:1px solid var(--border)}.tool-detail-page .stats-board .mini-stat{min-height:88px}.tool-detail-page .tax-warning-list{margin-top:var(--content-gap)}.tool-detail-page .tax-warning{border-color:var(--border);border-radius:var(--radius-sm);background:0 0}.tool-detail-page .upload-box{background:0 0}.tool-detail-page .salary-highlight{margin-bottom:var(--content-gap);border-radius:var(--radius-md)}.tool-detail-page .action-row{margin-top:var(--content-gap);gap:var(--row-gap);grid-template-columns:repeat(auto-fit,minmax(132px,1fr));display:grid}.tool-detail-page .action-row .primary-button,.tool-detail-page .action-row .ghost-button,.tool-detail-page .action-row .inline-button{border-radius:var(--radius-sm);width:100%;min-height:48px;padding:0 18px}.tool-detail-page .game-stats,.tool-detail-page .stats-board{gap:0 var(--grid-gap);grid-template-columns:repeat(2,minmax(0,1fr))}.tool-detail-page .game-stats{border-top:1px solid var(--border)}.tool-detail-page .touch-controls{width:min(100%,260px);margin-top:var(--content-gap);grid-template-columns:repeat(3,64px);grid-template-areas:".up.""left down right";justify-content:center;gap:12px;display:grid}.tool-detail-page .direction-button{border-radius:var(--radius-sm);width:64px;height:48px;min-height:48px;padding:0}.tool-detail-page .direction-up{grid-area:up}.tool-detail-page .direction-left{grid-area:left}.tool-detail-page .direction-down{grid-area:down}.tool-detail-page .direction-right{grid-area:right}.tool-detail-page .puzzle-grid{gap:12px;width:min(100%,360px)}.tool-detail-page .puzzle-tile{border-radius:var(--radius-sm)}.tool-detail-page .snake-canvas{border-radius:var(--radius-md);width:min(100%,360px);margin:0 auto;display:block}.tool-detail-page .lottery-theme{background:var(--bg-card)}.tool-detail-page .lottery-wall{gap:12px}.tool-detail-page .lottery-wall span{min-height:64px;color:var(--text-primary);border-color:var(--border);border-radius:var(--radius-sm);background:0 0}.tool-detail-page .winner-board{color:var(--text-inverse);background:var(--text-primary);border-radius:var(--radius-md);box-shadow:none}.tool-detail-page .form-stack,.tool-detail-page .range-field,.tool-detail-page .color-picker-wrap,.tool-detail-page .theme-switcher,.tool-detail-page .checkbox-list{gap:var(--row-gap)}.tool-detail-page .hint{margin-top:var(--content-gap);border:1px solid var(--border);border-radius:var(--radius-sm);background:0 0}@media (max-width:768px){.tool-detail-page .action-row,.tool-detail-page .game-stats,.tool-detail-page .stats-board{grid-template-columns:1fr}}:root{--type-hero:clamp(48px, 6vw, 72px);--type-page-title:clamp(36px, 4vw, 48px);--type-section-title:clamp(34px, 3.6vw, 48px);--type-subtitle:20px;--type-card-title:20px;--type-panel-title:20px;--type-body:16px;--type-body-sm:14px;--type-caption:12px;--type-button:14px;--type-number:clamp(32px, 4vw, 48px);--weight-title:700;--weight-heading:600;--weight-body:400;--tracking-tight:-.02em;--tracking-normal:0;--button-height:56px;--button-padding-x:21px;--panel-stack-gap:24px}.hero-name,.auth-copy h1{color:var(--text-primary);font-size:var(--type-hero);font-weight:var(--weight-title);letter-spacing:var(--tracking-tight);line-height:1.05}.page-title{min-height:auto;color:var(--text-primary);font-size:var(--type-page-title);font-weight:var(--weight-title);letter-spacing:var(--tracking-tight);margin-bottom:24px;line-height:1.12}.stats-title,.section-title,.contact-title{min-height:auto;color:var(--text-primary);font-size:var(--type-section-title);font-weight:var(--weight-title);letter-spacing:var(--tracking-tight);line-height:1.14}.auth-card h1,.auth-card h2{color:var(--text-primary);font-size:28px;font-weight:var(--weight-heading);letter-spacing:var(--tracking-tight);line-height:1.18}.page-subtitle,.contact-subtitle,.auth-copy p:last-child{max-width:760px;color:var(--text-secondary);font-size:var(--type-subtitle);font-weight:var(--weight-body);letter-spacing:var(--tracking-normal);line-height:1.7}.work-title,.course-title,.blog-topic-title,.skill-title,.timeline-position,.tool-section-head h3,.section-copy h2,.form-card h3,.footer-brand h3{color:var(--text-primary);font-size:var(--type-card-title);font-weight:var(--weight-heading);letter-spacing:-.01em;line-height:1.28}.tool-section-head h3,.section-copy h2,.form-card h3{font-size:var(--type-panel-title)}body,.skill-description,.timeline-description,.footer-brand p,.input-field input,.input-field select,.input-field textarea,.code-textarea,.color-text-input,.markdown-preview,.checkbox-row{font-size:var(--type-body);letter-spacing:var(--tracking-normal);line-height:1.65}.work-description,.course-description,.tool-section-head p,.section-copy p,.form-card p,.empty-card,.result-row span,.result-row a,.upload-item span,.range-field span,.input-field span,.tax-meta,.tax-note,.hint,.footer-column a,.course-meta,.preview-list-item p{color:var(--text-secondary);font-size:var(--type-body-sm);font-weight:var(--weight-body);line-height:1.7}.status-badge,.category-pill,.tag,.stat-label,.work-category,.toolbar-note,.footer-bottom p,.price-original{font-size:var(--type-caption);line-height:1.4}.toolbar-note{margin:0}.nav-menu a,.login-btn,.primary-button,.ghost-button,.course-btn,.oauth-button,.work-link,.chip-button,.inline-button{font-size:var(--type-button);font-weight:var(--weight-heading);line-height:1}.stat-value,.salary-highlight strong{font-size:var(--type-number);font-weight:var(--weight-title);letter-spacing:var(--tracking-tight);line-height:1.08}.mini-stat strong,.value-item strong,.info-item strong,.step-item strong,.result-row strong,.upload-item strong{color:var(--text-primary);font-size:var(--type-body);font-weight:var(--weight-heading);line-height:1.45}.mini-stat span,.value-item span,.info-item span,.step-item span,.result-row span,.upload-item span{color:var(--text-secondary);font-size:var(--type-body-sm);line-height:1.55}.tool-work-card{min-height:372px}.tool-work-cover{background:var(--bg-tertiary);border-bottom:1px solid var(--border);height:180px}.tool-cover-icon{border-radius:var(--radius-sm);width:68px;height:68px}.tool-work-card .work-content{gap:0;min-height:192px}.tool-work-card .work-description{min-height:72px;margin-bottom:24px}.tool-work-card .work-tags{display:none}.work-links{min-height:var(--button-height)}.work-link,.course-btn,.primary-button,.ghost-button,.oauth-button,.chip-button,.inline-button{min-height:var(--button-height);padding:0 var(--button-padding-x);border-radius:var(--radius-sm)}.work-link{width:fit-content;min-width:112px;color:var(--text-primary);border-color:var(--border-hover);background:0 0}.work-link:hover{color:var(--text-inverse);background:var(--text-primary);border-color:var(--text-primary)}.tool-detail-page .tool-primary-panel,.tool-detail-page .tool-secondary-panel,.tool-detail-page .legacy-panel,.tool-detail-page .salary-highlight{border-radius:var(--radius-md)}.tool-detail-page .tool-primary-panel,.tool-detail-page .tool-secondary-panel,.tool-detail-page .legacy-panel{align-content:start;gap:var(--panel-stack-gap);display:grid}.tool-detail-page .tax-warning,.tool-detail-page .hint,.tool-detail-page .direction-button,.tool-detail-page .puzzle-tile,.tool-detail-page .lottery-wall span{border-radius:var(--radius-sm)}.tool-detail-page .action-row,.tool-detail-page .form-stack,.tool-detail-page .range-field,.tool-detail-page .color-picker-wrap,.tool-detail-page .theme-switcher,.tool-detail-page .checkbox-list,.tool-detail-page .preview-list,.tool-detail-page .value-list{gap:var(--row-gap)}.tool-detail-page .tool-section-head,.tool-detail-page .section-copy,.tool-detail-page .action-row,.tool-detail-page .form-stack,.tool-detail-page .range-field,.tool-detail-page .color-picker-wrap,.tool-detail-page .theme-switcher,.tool-detail-page .checkbox-list,.tool-detail-page .preview-list,.tool-detail-page .value-list,.tool-detail-page .game-stats,.tool-detail-page .stats-board,.tool-detail-page .lottery-wall,.tool-detail-page .winner-board,.tool-detail-page .hint,.tool-detail-page .toolbar-note,.tool-detail-page .tax-warning-list,.tool-detail-page .tax-detail-card,.tool-detail-page .upload-box,.tool-detail-page .salary-highlight{margin-top:0;margin-bottom:0}.tool-detail-page .touch-controls{grid-template-columns:repeat(3,64px);gap:13px}.tool-detail-page .direction-button{width:64px;height:56px;min-height:56px}@media (max-width:768px){:root{--type-hero:40px;--type-page-title:32px;--type-section-title:30px;--type-subtitle:16px;--type-card-title:18px;--type-panel-title:18px;--type-body:15px;--type-number:34px}.page-title{margin-bottom:16px}.tool-work-card,.tool-work-card .work-content,.tool-work-card .work-description{min-height:auto}:root{--panel-stack-gap:20px}.work-link,.course-btn,.primary-button,.ghost-button,.oauth-button,.chip-button,.inline-button{width:100%}}
