@charset "UTF-8";:root{--color-primary: #1D4ED8;--color-primary-light: #3B82F6;--color-primary-lighter: #DBEAFE;--color-primary-surface: #EFF6FF;--color-accent: #EA580C;--color-accent-light: #FB923C;--color-accent-surface: #FFF7ED;--color-success: #16A34A;--color-success-light: #BBF7D0;--color-warning: #D97706;--color-warning-light: #FEF3C7;--color-danger: #DC2626;--color-danger-light: #FEE2E2;--color-info: #64748B;--color-bg-page: #F8FAFC;--color-bg-card: #FFFFFF;--color-bg-elevated: #FFFFFF;--color-bg-hover: #F1F5F9;--color-border: #E2E8F0;--color-border-light: #F1F5F9;--color-border-focus: var(--color-primary-light);--color-text-primary: #0F172A;--color-text-body: #334155;--color-text-secondary: #64748B;--color-text-muted: #94A3B8;--color-text-on-primary: #FFFFFF;--color-text-on-accent: #FFFFFF;--font-heading: "Lexend", "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;--font-body: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;--font-mono: "JetBrains Mono", "Consolas", "Courier New", monospace;--text-display: 2.5rem;--text-h1: 2rem;--text-h2: 1.5rem;--text-h3: 1.25rem;--text-body-lg: 1.125rem;--text-body: 1rem;--text-sm: .875rem;--text-xs: .75rem;--leading-tight: 1.2;--leading-snug: 1.35;--leading-normal: 1.6;--leading-relaxed: 1.75;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--space-20: 80px;--container-max: 1200px;--header-height: 64px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .05);--shadow-md: 0 4px 12px rgba(15, 23, 42, .08);--shadow-lg: 0 8px 24px rgba(15, 23, 42, .12);--shadow-xl: 0 16px 48px rgba(15, 23, 42, .16);--duration-fast: .15s;--duration-normal: .25s;--duration-slow: .4s;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--blog-body-size: 1.0625rem;--blog-body-leading: 1.85;--blog-content-max-width: 720px;--blog-content-with-toc: 1080px;--blog-article-title: 2.25rem;--blog-article-h2: 1.625rem;--blog-article-h3: 1.25rem;--blog-callout-padding: 16px 20px;--blog-callout-border-width: 4px;--blog-paragraph-gap: 1.25em;--blog-section-gap: 2.5em}html{font-family:var(--font-body);font-size:16px;line-height:var(--leading-normal);color:var(--color-text-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{background:var(--color-bg-page);font-family:var(--font-body);font-size:var(--text-body);line-height:var(--leading-normal);color:var(--color-text-body);margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-text-primary);font-weight:var(--weight-semibold);line-height:var(--leading-snug);margin:0}a{color:var(--color-primary);text-decoration:none;transition:color var(--duration-fast) var(--ease-out)}a:hover{color:var(--color-primary-light);text-decoration:underline;text-underline-offset:3px}a:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px;border-radius:2px}p{margin:0 0 var(--space-4)}img{max-width:100%;height:auto;display:block}::selection{background:var(--color-primary-lighter);color:var(--color-text-primary)}.container{max-width:var(--container-max);margin:0 auto;padding:0 var(--space-6)}@media(max-width:768px){.container{padding:0 var(--space-4)}}.prose{max-width:var(--blog-content-max-width);margin:0 auto;font-size:var(--blog-body-size);line-height:var(--blog-body-leading);color:var(--color-text-body);word-break:break-word}.prose p{margin:0 0 var(--blog-paragraph-gap)}.prose h2,.prose h3,.prose h4{color:var(--color-text-primary);font-weight:var(--weight-semibold);line-height:var(--leading-snug);scroll-margin-top:calc(var(--header-height) + var(--space-4));position:relative}.prose h2 .heading-anchor,.prose h3 .heading-anchor,.prose h4 .heading-anchor{opacity:0;margin-left:var(--space-2);color:var(--color-text-muted);font-weight:var(--weight-regular);text-decoration:none;transition:opacity var(--duration-fast) var(--ease-out)}.prose h2:hover .heading-anchor,.prose h2 .heading-anchor:focus,.prose h3:hover .heading-anchor,.prose h3 .heading-anchor:focus,.prose h4:hover .heading-anchor,.prose h4 .heading-anchor:focus{opacity:1;color:var(--color-primary)}.prose h2{font-size:var(--blog-article-h2);margin-top:var(--blog-section-gap);margin-bottom:var(--space-5);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border)}.prose h3{font-size:var(--blog-article-h3);margin-top:calc(var(--blog-section-gap) * .7);margin-bottom:var(--space-3)}.prose h4{font-size:var(--text-body-lg);margin-top:var(--space-6);margin-bottom:var(--space-3)}.prose a{color:var(--color-primary);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--color-primary-lighter);text-decoration-thickness:2px;transition:text-decoration-color var(--duration-fast) var(--ease-out)}.prose a:hover{text-decoration-color:var(--color-primary)}.prose ul,.prose ol{margin:0 0 var(--blog-paragraph-gap);padding-left:1.5em}.prose ul li,.prose ol li{margin-bottom:var(--space-2)}.prose ul li::marker,.prose ol li::marker{color:var(--color-primary)}.prose strong{color:var(--color-text-primary);font-weight:var(--weight-semibold)}.prose em{color:var(--color-text-primary);font-style:italic}.prose blockquote{margin:var(--space-6) 0;padding:var(--space-4) var(--space-5);border-left:4px solid var(--color-primary);background:var(--color-primary-surface);border-radius:0 var(--radius-md) var(--radius-md) 0;color:var(--color-text-primary);font-style:normal}.prose blockquote p{margin:0}.prose blockquote p+p{margin-top:var(--space-3)}.prose :not(pre)>code{background:var(--color-bg-hover);color:var(--color-accent);padding:2px 6px;border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:.9em;border:1px solid var(--color-border)}.prose pre{margin:var(--space-6) 0;padding:var(--space-5);background:#f8f9fb!important;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow-x:auto;font-family:var(--font-mono);font-size:.9375rem;line-height:1.6}.prose pre code{background:transparent!important;color:inherit;padding:0;border:none;font-size:inherit}.prose table{width:100%;margin:var(--space-6) 0;border-collapse:collapse;border-spacing:0;font-size:.9375rem;background:var(--color-bg-card);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm)}.prose table th{background:var(--color-primary-surface);color:var(--color-text-primary);font-weight:var(--weight-semibold);text-align:left;padding:var(--space-3) var(--space-4);border-bottom:2px solid var(--color-primary-lighter)}.prose table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-light);color:var(--color-text-body)}.prose table tr:last-child td{border-bottom:none}.prose table tr:hover td{background:var(--color-bg-hover)}.prose hr{margin:var(--blog-section-gap) 0;border:none;border-top:1px solid var(--color-border)}.prose img{margin:var(--space-6) auto;border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.prose p>img+em{display:block;text-align:center;margin-top:calc(-1 * var(--space-4));color:var(--color-text-secondary);font-size:var(--text-sm);font-style:normal}@media(max-width:768px){.prose{font-size:1rem;line-height:1.75}.prose h2{font-size:1.5rem;margin-top:var(--space-10)}.prose h3{font-size:1.1875rem}.prose pre{padding:var(--space-3) var(--space-4);font-size:.875rem}.prose table{font-size:.875rem}.prose table th,.prose table td{padding:var(--space-2) var(--space-3)}}.callout{margin:var(--space-6) 0;padding:var(--blog-callout-padding);border-left:var(--blog-callout-border-width) solid;border-radius:0 var(--radius-md) var(--radius-md) 0}.callout__title{font-weight:var(--weight-semibold);margin-bottom:var(--space-2);display:flex;align-items:center;gap:var(--space-2)}.callout__body{color:var(--color-text-body)}.callout__body p:last-child{margin-bottom:0}.callout--info{background:var(--color-primary-surface);border-color:var(--color-primary)}.callout--info .callout__title{color:var(--color-primary)}.callout--tip{background:#ecfdf5;border-color:var(--color-success)}.callout--tip .callout__title{color:var(--color-success)}.callout--warning{background:var(--color-warning-light);border-color:var(--color-warning)}.callout--warning .callout__title{color:var(--color-warning)}.callout--danger{background:var(--color-danger-light);border-color:var(--color-danger)}.callout--danger .callout__title{color:var(--color-danger)}.btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);font-family:var(--font-heading);font-weight:var(--weight-medium);font-size:var(--text-body);text-decoration:none;cursor:pointer;border:1px solid transparent;transition:all var(--duration-fast) var(--ease-out)}.btn:hover{text-decoration:none}.btn:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.btn--primary{background:var(--color-primary);color:var(--color-text-on-primary)}.btn--primary:hover{background:var(--color-primary-light);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn--accent{background:var(--color-accent);color:var(--color-text-on-accent)}.btn--accent:hover{background:var(--color-accent-light);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn--ghost{background:transparent;color:var(--color-primary);border-color:var(--color-primary)}.btn--ghost:hover{background:var(--color-primary-surface)}.btn--sm{padding:var(--space-2) var(--space-3);font-size:var(--text-sm)}.btn--lg{padding:var(--space-4) var(--space-6);font-size:var(--text-body-lg)}.card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);transition:all var(--duration-normal) var(--ease-out)}.card--hover:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--color-primary-lighter)}.tag{display:inline-block;padding:2px 10px;background:var(--color-bg-hover);color:var(--color-text-secondary);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--weight-medium);text-decoration:none;transition:all var(--duration-fast) var(--ease-out)}.tag:hover{background:var(--color-primary-lighter);color:var(--color-primary);text-decoration:none}.tag--primary{background:var(--color-primary-lighter);color:var(--color-primary)}.site-header{position:sticky;top:0;z-index:100;height:var(--header-height);background:#fffffff2;backdrop-filter:saturate(180%) blur(10px);border-bottom:1px solid var(--color-border)}.site-header .header-inner{height:100%;display:flex;align-items:center;justify-content:space-between}.site-header .logo{display:flex;align-items:center;gap:var(--space-2);text-decoration:none;color:var(--color-text-primary)}.site-header .logo img{height:32px;width:auto}.site-header .logo span{font-family:var(--font-heading);font-weight:var(--weight-semibold);font-size:var(--text-body-lg)}.site-header .nav{display:flex;align-items:center;gap:var(--space-6);font-family:var(--font-heading);font-size:var(--text-body)}.site-header .nav a{color:var(--color-text-body);text-decoration:none;transition:color var(--duration-fast) var(--ease-out)}.site-header .nav a:hover{color:var(--color-primary)}.site-header .nav a.is-active{color:var(--color-primary);font-weight:var(--weight-medium)}@media(max-width:640px){.site-header .nav{gap:var(--space-3);font-size:var(--text-sm)}.site-header .nav .nav-tool-label{display:none}}.site-footer-legacy{display:none}.site-footer-legacy .footer-inner{display:grid;grid-template-columns:1fr auto;gap:var(--space-6);align-items:center}@media(max-width:768px){.site-footer-legacy .footer-inner{grid-template-columns:1fr;text-align:center}}.site-footer-legacy .footer-links{display:flex;gap:var(--space-4);flex-wrap:wrap}.site-footer-legacy .footer-links a{color:var(--color-text-secondary)}.site-footer-legacy .footer-links a:hover{color:var(--color-primary)}.site-footer-legacy .footer-copy{color:var(--color-text-muted);font-size:var(--text-xs)}.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-secondary);margin:var(--space-6) 0}.breadcrumb a{color:var(--color-text-secondary);text-decoration:none}.breadcrumb a:hover{color:var(--color-primary)}.breadcrumb .separator{color:var(--color-text-muted);font-size:.75em}.breadcrumb .current{color:var(--color-text-body);font-weight:var(--weight-medium)}.post-card{display:block;text-decoration:none;color:inherit;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;transition:all var(--duration-normal) var(--ease-out)}.post-card:hover{text-decoration:none;transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--color-primary-lighter)}.post-card:hover .post-card__title{color:var(--color-primary)}.post-card__cover{width:100%;aspect-ratio:16/9;object-fit:cover;background:var(--color-bg-hover)}.post-card__body{padding:var(--space-5)}.post-card__category{display:inline-block;color:var(--color-primary);font-size:var(--text-xs);font-weight:var(--weight-medium);margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:.5px}.post-card__title{font-family:var(--font-heading);font-size:var(--text-body-lg);font-weight:var(--weight-semibold);color:var(--color-text-primary);line-height:var(--leading-snug);margin-bottom:var(--space-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color var(--duration-fast) var(--ease-out)}.post-card__desc{color:var(--color-text-secondary);font-size:var(--text-sm);line-height:var(--leading-normal);margin-bottom:var(--space-3);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.post-card__meta{display:flex;gap:var(--space-3);font-size:var(--text-xs);color:var(--color-text-muted)}.article-layout{display:grid;grid-template-columns:1fr;gap:var(--space-8);max-width:var(--blog-content-with-toc);margin:0 auto}@media(min-width:1024px){.article-layout{grid-template-columns:1fr 240px}}.article-layout__main,.article-layout__aside{min-width:0}.article-header{max-width:var(--blog-content-max-width);margin:var(--space-8) auto var(--space-10)}.article-header .article-category{display:inline-block;color:var(--color-primary);font-size:var(--text-sm);font-weight:var(--weight-medium);margin-bottom:var(--space-3)}.article-header .article-title{font-family:var(--font-heading);font-size:var(--blog-article-title);font-weight:var(--weight-bold);color:var(--color-text-primary);line-height:var(--leading-tight);margin-bottom:var(--space-5)}@media(max-width:768px){.article-header .article-title{font-size:1.75rem}}.article-header .article-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);color:var(--color-text-secondary);font-size:var(--text-sm);padding-bottom:var(--space-6);border-bottom:1px solid var(--color-border)}.toc{font-size:var(--text-sm)}@media(min-width:1024px){.toc{position:sticky;top:calc(var(--header-height) + var(--space-4));max-height:calc(100vh - var(--header-height) - var(--space-8));overflow-y:auto}}.toc__title{font-family:var(--font-heading);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-3)}.toc ol{list-style:none;padding:0;margin:0;border-left:2px solid var(--color-border)}.toc li{line-height:1.5}.toc a{display:block;padding:var(--space-1) var(--space-3);color:var(--color-text-secondary);text-decoration:none;border-left:2px solid transparent;margin-left:-2px;transition:all var(--duration-fast) var(--ease-out)}.toc a:hover{color:var(--color-primary);border-left-color:var(--color-primary-lighter)}.toc-h3 a{padding-left:var(--space-6);font-size:.875em}@media(max-width:1023px){.toc{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);max-width:var(--blog-content-max-width);margin:0 auto var(--space-6)}.toc details summary{cursor:pointer;font-weight:var(--weight-medium);list-style:none}.toc details summary::-webkit-details-marker{display:none}.toc details summary:after{content:"▼";float:right;font-size:.7em}.toc details[open] summary:after{content:"▲"}.toc ol{margin-top:var(--space-3)}}.author-byline{display:flex;align-items:center;gap:var(--space-3)}.author-byline__avatar{width:40px;height:40px;border-radius:var(--radius-full);object-fit:cover;border:2px solid var(--color-border-light)}.author-byline__info{display:flex;flex-direction:column;gap:2px}.author-byline__name{font-weight:var(--weight-medium);color:var(--color-text-primary);font-size:var(--text-sm)}.author-byline__meta{color:var(--color-text-secondary);font-size:var(--text-xs)}.faq{max-width:var(--blog-content-max-width);margin:var(--blog-section-gap) auto}.faq__title{font-family:var(--font-heading);font-size:var(--blog-article-h2);font-weight:var(--weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-5);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border)}.faq details{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--space-3);overflow:hidden;transition:all var(--duration-fast) var(--ease-out)}.faq details[open]{box-shadow:var(--shadow-sm);border-color:var(--color-primary-lighter)}.faq summary{cursor:pointer;padding:var(--space-4) var(--space-5);font-weight:var(--weight-medium);color:var(--color-text-primary);list-style:none;display:flex;align-items:center;gap:var(--space-3);position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:before{content:"Q";flex-shrink:0;width:24px;height:24px;background:var(--color-primary);color:#fff;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:var(--weight-bold)}.faq summary:after{content:"+";margin-left:auto;font-size:1.5em;color:var(--color-text-muted);transition:transform var(--duration-fast) var(--ease-out)}.faq details[open] summary:after{content:"−";color:var(--color-primary)}.faq__answer{padding:0 var(--space-5) var(--space-4) calc(var(--space-5) + 24px + var(--space-3));color:var(--color-text-body);line-height:var(--leading-relaxed)}.faq__answer p{margin:0 0 var(--space-3)}.faq__answer p:last-child{margin-bottom:0}.comparison-table-wrap{max-width:100%;overflow-x:auto;margin:var(--space-6) 0}.comparison-table-wrap .comparison-table{width:100%;min-width:600px;border-collapse:collapse;font-size:.9375rem;background:var(--color-bg-card);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm)}.comparison-table-wrap .comparison-table th{background:var(--color-primary);color:#fff;font-weight:var(--weight-semibold);text-align:left;padding:var(--space-3) var(--space-4);white-space:nowrap}.comparison-table-wrap .comparison-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-light)}.comparison-table-wrap .comparison-table tr.highlight{background:var(--color-accent-surface)}.comparison-table-wrap .comparison-table tr.highlight td:first-child{font-weight:var(--weight-semibold);color:var(--color-accent)}.comparison-table-wrap .comparison-table tr:last-child td{border-bottom:none}.references{max-width:var(--blog-content-max-width);margin:var(--blog-section-gap) auto;padding-top:var(--space-6);border-top:1px solid var(--color-border)}.references__title{font-family:var(--font-heading);font-size:var(--text-body-lg);font-weight:var(--weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-4)}.references ol{padding-left:var(--space-5);color:var(--color-text-secondary);font-size:var(--text-sm);line-height:var(--leading-relaxed)}.references li{margin-bottom:var(--space-2)}.references li a{color:var(--color-primary);word-break:break-all}.cta-card{max-width:var(--blog-content-max-width);margin:var(--space-8) auto;padding:var(--space-6) var(--space-6);background:linear-gradient(135deg,var(--color-primary-surface) 0%,var(--color-bg-card) 100%);border:1px solid var(--color-primary-lighter);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);flex-wrap:wrap}.cta-card__text{flex:1;min-width:240px}.cta-card__title{font-family:var(--font-heading);font-size:var(--text-body-lg);font-weight:var(--weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-1)}.cta-card__desc{color:var(--color-text-body);font-size:var(--text-sm);margin:0}.cta-card__actions{display:flex;gap:var(--space-3);flex-wrap:wrap}@media(max-width:640px){.cta-card{padding:var(--space-5)}.cta-card__actions{width:100%}.cta-card__actions .btn{flex:1;justify-content:center}}.wechat-qr-card{max-width:var(--blog-content-max-width);margin:var(--space-8) auto var(--space-4);padding:var(--space-6);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);display:flex;align-items:center;gap:var(--space-6)}.wechat-qr-card__qr{flex-shrink:0;width:120px;height:120px;border-radius:var(--radius-md);background:var(--color-bg-hover)}.wechat-qr-card__text{flex:1;min-width:0}.wechat-qr-card__title{font-family:var(--font-heading);font-size:var(--text-body-lg);font-weight:var(--weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-2)}.wechat-qr-card__desc{color:var(--color-text-secondary);font-size:var(--text-sm);line-height:var(--leading-normal)}@media(max-width:640px){.wechat-qr-card{flex-direction:column;text-align:center;padding:var(--space-5)}.wechat-qr-card__qr{width:140px;height:140px}}.related-articles{max-width:var(--blog-content-max-width);margin:var(--blog-section-gap) auto}.related-articles__title{font-family:var(--font-heading);font-size:var(--text-body-lg);font-weight:var(--weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-4)}.related-articles__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-4)}.list-hero{padding:var(--space-12) 0 var(--space-8);text-align:center}.list-hero__title{font-family:var(--font-heading);font-size:var(--text-display);font-weight:var(--weight-bold);color:var(--color-text-primary);margin-bottom:var(--space-3)}@media(max-width:640px){.list-hero__title{font-size:2rem}}.list-hero__desc{color:var(--color-text-secondary);font-size:var(--text-body-lg);max-width:600px;margin:0 auto}.post-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-5);margin:var(--space-8) 0}*,*:before,*:after{box-sizing:border-box}ul[role=list],ol[role=list]{list-style:none;padding:0}button{font:inherit;cursor:pointer}main{display:block;min-height:calc(100vh - var(--header-height) - 200px)}.app-footer[data-astro-cid-qot4wqpz]{background-color:#0f172a;color:#94a3b8;padding:var(--space-16) 0 var(--space-8);margin-top:var(--space-20)}.footer-inner[data-astro-cid-qot4wqpz]{max-width:var(--container-max);margin:0 auto;padding:0 var(--space-6)}.footer-grid[data-astro-cid-qot4wqpz]{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:var(--space-10);padding-bottom:var(--space-10);border-bottom:1px solid rgba(255,255,255,.1)}@media(max-width:768px){.footer-grid[data-astro-cid-qot4wqpz]{grid-template-columns:1fr 1fr;gap:var(--space-8)}}.footer-brand[data-astro-cid-qot4wqpz]{display:flex;flex-direction:column;gap:var(--space-3)}@media(max-width:768px){.footer-brand[data-astro-cid-qot4wqpz]{grid-column:1/-1}}.footer-logo[data-astro-cid-qot4wqpz]{display:flex;align-items:center;gap:var(--space-2)}.footer-logo-img[data-astro-cid-qot4wqpz]{height:28px;width:auto;object-fit:contain;border-radius:var(--radius-sm)}.footer-logo-text[data-astro-cid-qot4wqpz]{font-family:var(--font-heading);font-size:var(--text-body-lg);font-weight:var(--weight-bold);color:#fff}.footer-desc[data-astro-cid-qot4wqpz]{font-size:var(--text-sm);line-height:var(--leading-relaxed);color:#94a3b8;max-width:280px;margin:0}.footer-section[data-astro-cid-qot4wqpz]{display:flex;flex-direction:column;gap:var(--space-3)}.footer-title[data-astro-cid-qot4wqpz]{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:#fff;margin:0 0 var(--space-1)}.footer-link[data-astro-cid-qot4wqpz]{font-size:var(--text-sm);color:#94a3b8;text-decoration:none;cursor:pointer;transition:color .2s ease}.footer-link[data-astro-cid-qot4wqpz]:hover{color:#fff;text-decoration:none}.footer-text[data-astro-cid-qot4wqpz]{font-size:var(--text-sm);color:#94a3b8}.footer-bottom[data-astro-cid-qot4wqpz]{padding-top:var(--space-8);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3)}@media(max-width:640px){.footer-bottom[data-astro-cid-qot4wqpz]{flex-direction:column;align-items:flex-start}}.footer-copyright[data-astro-cid-qot4wqpz],.footer-icp[data-astro-cid-qot4wqpz]{font-size:var(--text-xs);color:#64748b}.footer-icp[data-astro-cid-qot4wqpz] a[data-astro-cid-qot4wqpz]{color:#3a8bff;text-decoration:none}.footer-icp[data-astro-cid-qot4wqpz] a[data-astro-cid-qot4wqpz]:hover{color:#60a5fa;text-decoration:underline}
