.hero{position:relative;overflow:hidden;min-height:calc(100vh - var(--header-h));display:flex;align-items:center;justify-content:center;padding:var(--space-7) 0 var(--space-4);text-align:center}.hero:before{content:"";position:absolute;top:-220px;left:50%;transform:translate(-50%);width:980px;height:540px;background:radial-gradient(closest-side,var(--accent-soft),transparent 72%);pointer-events:none}.hero>.container{position:relative;z-index:1}.badge-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);display:inline-block}.hero-title{margin-top:var(--space-4);font-family:var(--font-brand);font-size:var(--text-display-xl);font-weight:400;line-height:1.1;letter-spacing:.02em}.hero-title .hero-line.is-em .w{color:var(--accent)}.hero-sub{max-width:620px;margin:var(--space-3) auto 0;color:var(--text-2);font-size:var(--text-body-l);line-height:1.7}.hero-cta{display:flex;justify-content:center;gap:var(--space-4);margin-top:var(--space-5)}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-5)}.feature-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-6);transition:transform .2s var(--ease-out),border-color .2s var(--ease-out),box-shadow .2s var(--ease-out)}.feature-card:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:var(--shadow-hover)}.feature-icon{width:48px;height:48px;border-radius:var(--radius-sm);display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);margin-bottom:var(--space-4)}.feature-card h3{font-family:var(--font-display);font-size:var(--text-h4);font-weight:800;letter-spacing:-.01em}.feature-card p{margin-top:var(--space-2);color:var(--text-2);font-size:var(--text-caption);line-height:1.7}.feature-card>*{position:relative;z-index:1}.works-section{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface-alt)}.works-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-5)}.hint-link{color:var(--accent);font-family:var(--font-mono);font-size:13px;font-weight:700;transition:opacity .15s var(--ease-out)}.hint-link:hover{opacity:.75}.carousel.section{padding-top:8px;padding-bottom:var(--space-6)}.carousel-viewport{overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow)}.carousel-track{display:flex;transition:transform .55s var(--ease-out-expo)}.carousel-slide{min-width:100%}.carousel-card{display:grid;grid-template-columns:1.15fr 1fr;align-items:stretch}.carousel-media{position:relative;aspect-ratio:16 / 10;overflow:hidden}.carousel-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.carousel-no{position:absolute;top:16px;left:18px;z-index:1;font-family:var(--font-mono);font-size:12px;font-weight:700;letter-spacing:.16em;color:#ffffffb8}.carousel-body{display:flex;flex-direction:column;justify-content:center;padding:var(--space-6) var(--space-6)}.carousel-body h3{font-family:var(--font-brand);font-size:clamp(24px,3vw,32px);font-weight:400;letter-spacing:.01em}.carousel-tagline{margin-top:var(--space-2);color:var(--text-2);font-size:var(--text-body-l);line-height:1.6}.carousel-controls{display:flex;align-items:center;justify-content:center;gap:var(--space-5);margin-top:var(--space-5)}.carousel-btn{width:40px;height:40px;border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface);color:var(--text-1);cursor:pointer;font-size:16px;transition:all .2s var(--ease-out)}.carousel-btn:hover{border-color:var(--accent);color:var(--accent)}.carousel-dots{display:flex;gap:8px}.carousel-dot{width:8px;height:8px;border-radius:50%;border:none;background:var(--border-strong);cursor:pointer;padding:0;transition:background .2s var(--ease-out),width .2s var(--ease-out),border-radius .2s}.carousel-dot.is-active{background:var(--accent);width:20px;border-radius:4px}.stats{border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}.stat{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:var(--space-7) var(--space-4);text-align:center}.stat+.stat{border-left:1px solid var(--border)}.stat-value{font-family:var(--font-display);font-size:clamp(40px,5vw,64px);font-weight:900;letter-spacing:-.03em;color:var(--accent);line-height:1}.stat-label{color:var(--text-2);font-size:12px;letter-spacing:.16em}.cases-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4)}.philosophy{text-align:center;padding:var(--space-10) 0}.philosophy-en{font-family:var(--font-brand);font-size:clamp(32px,5vw,52px);font-weight:400;letter-spacing:.02em;color:var(--text-on-dark)}.philosophy-cn{margin-top:var(--space-4);font-family:var(--font-display);font-size:clamp(18px,2.4vw,26px);font-weight:700;letter-spacing:.08em;color:var(--accent)}.philosophy-text{max-width:520px;margin:var(--space-5) auto 0;color:var(--text-on-dark-2);font-size:var(--text-caption);line-height:1.8}.philosophy .btn{margin-top:var(--space-6)}@media(max-width:960px){.carousel-card{grid-template-columns:1fr}.carousel-media{aspect-ratio:16 / 9}.carousel-body{padding:var(--space-5)}.works-grid{grid-template-columns:1fr}.cases-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.hero{padding:var(--space-7) 0 var(--space-6)}.hero-cta{flex-direction:column;align-items:center}.hero-cta .btn{width:min(100%,300px)}.stats-grid{grid-template-columns:repeat(2,1fr)}.stat{padding:var(--space-5) var(--space-2)}.stat:nth-child(3){border-left:none}.stat:nth-child(n+3){border-top:1px solid var(--border)}.cases-grid{grid-template-columns:1fr}}.page{padding-top:var(--space-9)}.page-head{margin-bottom:var(--space-7)}.page-head h1{margin-top:var(--space-3);font-family:var(--font-brand);font-size:var(--text-display-l);font-weight:400;letter-spacing:.02em}.page-desc{margin-top:var(--space-3);color:var(--text-2);font-size:var(--text-body-l)}.filter-tabs{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-6)}.filter-tab{padding:8px 18px;border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface);color:var(--text-2);font-family:var(--font-body);font-size:14px;font-weight:500;cursor:pointer;transition:all .15s var(--ease-out)}.filter-tab:hover{color:var(--text-1);border-color:var(--border-strong)}.filter-tab.is-active{background:var(--accent);border-color:var(--accent);color:#fff}.detail-hero{padding:var(--space-8) 0 var(--space-8);border-bottom:1px solid var(--border)}.detail-title{margin-top:var(--space-5)}.detail-no{color:var(--accent);font-size:13px;font-weight:700;letter-spacing:.2em}.detail-title h1{margin-top:var(--space-2);font-family:var(--font-brand);font-size:var(--text-display-l);font-weight:400;letter-spacing:.02em}.detail-tagline{margin-top:var(--space-3);color:var(--text-2);font-size:var(--text-body-l)}.detail-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);margin-top:var(--space-5)}.about-grid{display:grid;grid-template-columns:2fr 1fr;gap:var(--space-8);align-items:start}.about-motto{font-family:var(--font-brand);font-size:clamp(28px,4vw,42px);font-weight:400;letter-spacing:.02em}.about-cn{margin-top:var(--space-3);font-family:var(--font-display);font-size:var(--text-h4);font-weight:700;letter-spacing:.08em;color:var(--accent)}.about-text{margin-top:var(--space-5);color:var(--text-2);font-size:var(--text-body-l);line-height:1.9}.about-side{display:flex;flex-direction:column;gap:var(--space-5)}.about-avatar{aspect-ratio:1;border-radius:var(--radius-md);overflow:hidden}.about-avatar-img{display:block;width:100%;height:100%;object-fit:cover}.about-contact{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);padding:var(--space-5)}.about-contact-line{color:var(--text-2);font-size:14px}.timeline{margin-top:var(--space-10)}.timeline-title{margin-top:var(--space-2);font-size:var(--text-h2);font-weight:800;letter-spacing:-.02em}.timeline-list{margin-top:var(--space-6);border-top:1px solid var(--border)}.timeline-item{display:grid;grid-template-columns:180px 1fr;gap:var(--space-5);padding:var(--space-5) 0;border-bottom:1px solid var(--border)}.timeline-year{color:var(--accent);font-size:13px;font-weight:700}.timeline-body h3{font-family:var(--font-display);font-size:var(--text-h4);font-weight:800}.timeline-body p{margin-top:var(--space-2);color:var(--text-2);font-size:var(--text-caption)}.screenshot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}.screenshot{width:100%;border-radius:var(--radius-md);border:1px solid var(--border);box-shadow:var(--shadow);background:var(--surface)}.privacy-body{max-width:720px;color:var(--text-2);line-height:1.9}.privacy-body h2{margin-top:var(--space-6);font-size:var(--text-h4);font-weight:800;color:var(--text-1)}.privacy-body ul{padding-left:20px}.privacy-beian{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:var(--space-6);font-size:13px;color:var(--text-3)}.privacy-police{display:inline-flex;align-items:center;gap:4px}.privacy-police img{height:16px;width:auto}.nf-center{text-align:center;padding:var(--space-10) 0}.nf-code{font-size:clamp(72px,12vw,140px);font-weight:700;color:var(--accent);line-height:1}.nf-desc{margin:var(--space-4) 0 var(--space-6);color:var(--text-2);font-size:var(--text-body-l)}@media(max-width:860px){.about-grid{grid-template-columns:1fr;gap:var(--space-6)}.timeline-item{grid-template-columns:1fr;gap:var(--space-2)}.screenshot-grid{grid-template-columns:1fr}}.d-hero{position:relative;overflow:hidden;padding:var(--space-9) 0 var(--space-8);text-align:center}.d-hero:before{content:"";position:absolute;top:-220px;left:50%;transform:translate(-50%);width:980px;height:540px;background:radial-gradient(closest-side,var(--accent-soft),transparent 72%);pointer-events:none}.d-hero-inner{position:relative;z-index:1}.d-eyebrow{color:var(--accent);font-size:13px;font-weight:700;letter-spacing:.2em}.d-title{margin-top:var(--space-4);font-family:var(--font-brand);font-size:clamp(48px,7vw,84px);font-weight:400;line-height:1.1;letter-spacing:.02em}.d-tagline{margin-top:var(--space-4);font-family:var(--font-brand);font-size:clamp(20px,3vw,30px);color:var(--accent);letter-spacing:.02em}.d-desc{max-width:620px;margin:var(--space-4) auto 0;color:var(--text-2);font-size:var(--text-body-l);line-height:1.8}.d-actions{display:flex;justify-content:center;gap:14px;margin-top:var(--space-6)}.d-download-hero{display:inline-flex;flex-direction:column;align-items:center;gap:7px}.d-download-os{font-size:12px;color:var(--text-3);letter-spacing:.02em}.d-cover{position:relative;aspect-ratio:16 / 9;margin-top:var(--space-8);border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow-hover);background:var(--surface)}.d-cover-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.d-features{padding:var(--space-9) 0;border-top:1px solid var(--border);background:var(--surface-alt)}.d-row{display:grid;grid-template-columns:1fr 1.2fr;gap:var(--space-8);align-items:center}.d-row-text h2{margin-top:var(--space-3);font-size:var(--text-h2);font-weight:800;letter-spacing:-.02em}.d-points{margin:var(--space-5) 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--space-4)}.d-points li{position:relative;padding-left:30px;color:var(--text-2);font-size:var(--text-caption);line-height:1.7}.d-points li:before{content:"✦";position:absolute;left:0;top:0;color:var(--accent)}.d-points strong{color:var(--text-1);font-weight:700}.d-row-img img{width:100%;border-radius:var(--radius-md);border:1px solid var(--border);box-shadow:var(--shadow);background:var(--surface)}.d-shots{padding:0 0 var(--space-9)}.d-shot-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4)}.d-shot{width:100%;border-radius:var(--radius-md);border:1px solid var(--border);box-shadow:var(--shadow);background:var(--surface)}.d-cta{padding:var(--space-10) 0;text-align:center}.d-cta-title{font-family:var(--font-brand);font-size:clamp(28px,4vw,44px);font-weight:400;letter-spacing:.02em;margin-bottom:var(--space-6)}@media(max-width:860px){.d-row{grid-template-columns:1fr;gap:var(--space-6)}.d-actions{flex-direction:column;align-items:center}.d-actions .btn{width:min(100%,320px)}.d-shot-grid{grid-template-columns:1fr}}.d-download{padding:var(--space-8) 0}.d-download-list{display:flex;flex-direction:column;gap:var(--space-3);max-width:560px;margin:0 auto}.d-download-item{display:flex;align-items:center;gap:var(--space-4);background:#ffffff0d;border:1px solid var(--dark-border);border-radius:var(--radius-md);padding:14px 20px}.d-download-name{flex:1;text-align:left;font-size:15px;color:var(--text-on-dark)}.d-download-meta{color:var(--text-on-dark-2);font-size:12px}.d-download-tip{margin-top:var(--space-5);color:var(--text-on-dark-2);font-size:14px;opacity:.85}.d-faq{padding:var(--space-6) 0}.d-faq .section-head{margin-bottom:var(--space-4)}.d-faq-list{max-width:720px}.d-faq-item{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);margin-bottom:10px;padding:0 18px;overflow:hidden}.d-faq-item summary{padding:14px 0;font-weight:600;font-size:14.5px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px}.d-faq-item summary:after{content:"+";font-family:var(--font-mono);font-size:16px;color:var(--text-2);transition:transform .2s var(--ease-out)}.d-faq-item[open] summary:after{transform:rotate(45deg)}.d-faq-item p{padding:0 0 14px;color:var(--text-2);font-size:14px;line-height:1.7}.tutorial-list{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4)}.tutorial-card{display:flex;flex-direction:column;gap:10px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:20px 22px;transition:transform .2s var(--ease-out),box-shadow .2s var(--ease-out),border-color .2s var(--ease-out)}.tutorial-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-hover);border-color:var(--border-strong)}.tutorial-card-tags{display:flex;gap:8px}.tutorial-card h3{font-family:var(--font-brand);font-size:19px;font-weight:400;letter-spacing:.01em}.tutorial-card-summary{color:var(--text-2);font-size:13.5px;line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tutorial-meta{margin-top:auto;display:flex;gap:14px;color:var(--text-3);font-size:12px}.tutorial-detail-head{margin:var(--space-4) 0 var(--space-5)}.tutorial-detail-head h1{margin-top:var(--space-3);font-family:var(--font-brand);font-size:clamp(28px,4vw,40px);font-weight:400;letter-spacing:.01em}.tutorial-detail-summary{margin-top:var(--space-2);color:var(--text-2);font-size:15px}.tutorial-body{margin-top:var(--space-4);max-width:760px;font-size:15.5px;line-height:1.85;color:var(--text-1);word-break:break-word}.tutorial-body>*:first-child{margin-top:0}.tutorial-body h1,.tutorial-body h2,.tutorial-body h3,.tutorial-body h4,.tutorial-body h5,.tutorial-body h6{font-family:var(--font-brand);font-weight:500;margin:1.6em 0 .6em;line-height:1.4}.tutorial-body h1{font-size:1.55em}.tutorial-body h2{font-size:1.35em}.tutorial-body h3{font-size:1.18em}.tutorial-body h4{font-size:1.05em}.tutorial-body h5{font-size:1em}.tutorial-body h6{font-size:.92em}.tutorial-body p{margin:.9em 0}.tutorial-body ul,.tutorial-body ol{margin:.9em 0;padding-left:1.6em}.tutorial-body li{margin:.35em 0}.tutorial-body a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.tutorial-body strong{font-weight:700}.tutorial-body blockquote{margin:1em 0;padding:.6em 1.1em;border-left:3px solid var(--accent);background:var(--surface);color:var(--text-2);border-radius:0 var(--radius-sm) var(--radius-sm) 0}.tutorial-body pre{margin:1em 0;padding:14px 16px;background:#0f172a;color:#e2e8f0;border-radius:var(--radius-sm);overflow-x:auto;font-size:13.5px;line-height:1.6}.tutorial-body code{font-family:ui-monospace,SF Mono,Consolas,monospace;font-size:.88em;background:#0000000f;padding:1px 5px;border-radius:4px}.tutorial-body pre code{background:transparent;padding:0;color:inherit;font-size:inherit}.tutorial-body table{width:100%;border-collapse:collapse;margin:1em 0;font-size:14px}.tutorial-body th,.tutorial-body td{border:1px solid var(--border);padding:8px 12px;text-align:left}.tutorial-body th{background:var(--surface);font-weight:600}.tutorial-body img{max-width:100%;height:auto;border-radius:var(--radius-md)}.tutorial-body hr{border:none;border-top:1px solid var(--border);margin:1.6em 0}.tutorial-body iframe{max-width:100%}@media(max-width:860px){.tutorial-list{grid-template-columns:1fr}}.auth{padding:var(--space-8) 0 var(--space-9)}.auth-card{max-width:420px;margin:0 auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-7);box-shadow:var(--shadow)}.auth-card h1{margin-top:var(--space-3);font-family:var(--font-brand);font-size:30px;font-weight:400;letter-spacing:.02em}.auth-sub{margin-top:var(--space-2);color:var(--text-2);font-size:13px}.auth-form{margin-top:var(--space-5);display:flex;flex-direction:column;gap:var(--space-3)}.auth-input{height:46px;padding:0 14px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text-1);font-family:var(--font-body);font-size:15px;outline:none;transition:border-color .15s var(--ease-out)}.auth-input:focus{border-color:var(--accent)}.auth-btn{width:100%;margin-top:var(--space-2)}.auth-err{color:var(--accent-red);font-size:13px}.auth-switch{margin-top:var(--space-5);color:var(--text-2);font-size:14px;text-align:center}.auth-switch button{background:none;border:none;color:var(--accent);font-size:14px;cursor:pointer;padding:0 4px}.auth-switch button:hover{text-decoration:underline}.auth-forgot{margin-right:10px}.auth-row{display:flex;gap:8px}.auth-row .auth-input{flex:1}.auth-row .btn{height:46px;white-space:nowrap}.studio{padding:var(--space-8) 0 var(--space-9)}.studio-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-6)}.studio-head h1{margin-top:var(--space-2);font-family:var(--font-brand);font-size:34px;font-weight:400;letter-spacing:.02em}.studio-sub{margin:var(--space-7) 0 var(--space-3);font-size:var(--text-h4);font-weight:800}.studio-msg{margin-bottom:var(--space-4);padding:12px 16px;border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--accent);font-size:14px}.studio-form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-5);margin-bottom:var(--space-6);display:flex;flex-direction:column;gap:var(--space-3)}.studio-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.studio-textarea{height:auto;min-height:84px;padding:12px 14px;resize:vertical}.studio-textarea-lg{min-height:280px;font-family:var(--font-mono);font-size:13px;line-height:1.6}.studio-tabs{display:flex;gap:8px;margin-bottom:var(--space-5)}.admin-preview{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:var(--space-5);overflow:hidden}.admin-preview-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border)}.admin-preview-head strong{font-size:15px}.admin-preview-frame{display:block;width:100%;height:60vh;border:none;background:#fff}.stats-kpis{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--space-3);margin-bottom:var(--space-5)}.stats-kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-4);display:flex;flex-direction:column;gap:4px}.stats-kpi-value{font-family:var(--font-display);font-size:26px;font-weight:900;color:var(--text-1)}.stats-kpi-label{color:var(--text-2);font-size:12px}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.stats-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-5)}.stats-card--wide{grid-column:1 / -1}.stats-card h2{font-size:16px;font-weight:800;margin-bottom:var(--space-4)}.stats-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.stats-list li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--border);font-size:14px}.stats-list li:last-child{border-bottom:none}.stats-line{width:100%;height:auto}.stats-chart{position:relative}.stats-tooltip{position:absolute;top:0;background:#111827;color:#f9fafb;border-radius:8px;padding:8px 12px;font-size:12px;line-height:1.6;pointer-events:none;white-space:nowrap;z-index:5;box-shadow:0 4px 14px #0000002e}.stats-tooltip-date{font-weight:700;margin-bottom:2px}.stats-tooltip-row{display:flex;justify-content:space-between;gap:16px}.stats-tooltip-row.pv b{color:var(--accent)}.stats-tooltip-row.uv b{color:var(--accent-blue)}.stats-legend{display:flex;gap:16px;margin-top:var(--space-3);color:var(--text-2);font-size:13px}.stats-legend .dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:4px;vertical-align:middle}.dot-pv{background:var(--accent)}.dot-uv{background:var(--accent-blue)}@media(max-width:960px){.stats-kpis{grid-template-columns:repeat(3,1fr)}.stats-grid{grid-template-columns:1fr}}.studio-form-actions{display:flex;align-items:center;gap:var(--space-4)}.studio-hint{color:var(--text-2);font-size:13px}.studio-list{display:flex;flex-direction:column;gap:var(--space-3)}.studio-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:16px 20px}.studio-item-main{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.studio-item-main strong{font-family:var(--font-brand);font-size:18px;font-weight:400}.studio-actions{display:flex;gap:8px}.studio-empty{color:var(--text-3);font-size:14px;padding:var(--space-5) 0}.case-mgr-thumb{width:52px;height:40px;object-fit:cover;border-radius:var(--radius-sm);flex-shrink:0}@media(max-width:640px){.studio-grid{grid-template-columns:1fr}.studio-item{flex-direction:column;align-items:flex-start;gap:var(--space-3)}}.btn-danger{background:transparent;border:1px solid rgba(229,72,77,.45);color:#e5484d}.btn-danger:hover{background:#e5484d1f}.tag-ok{color:#3fb950;border-color:currentColor}.tag-warn{color:#e5a13b;border-color:currentColor}.license-form{display:flex;flex-direction:column;gap:var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-5);margin-bottom:var(--space-6)}.license-form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4)}.license-form-row label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--text-2)}.license-form-row select,.license-form-row input{padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--canvas);color:var(--text);font-size:14px}.license-form-row .btn{align-self:flex-end}.license-note{flex:2}.license-issued{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;background:#3fb95014;border:1px solid rgba(63,185,80,.35);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-6)}.license-key{font-family:var(--font-mono);font-size:13px;word-break:break-all;color:var(--accent)}.license-filters{display:flex;gap:var(--space-3);margin-bottom:var(--space-4)}.license-filters select,.license-filters input{padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font-size:14px}.release-upload{margin-bottom:0}.studio-head-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4)}.license-full{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--text-2)}.license-full textarea,.license-full input{padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--canvas);color:var(--text);font-size:14px;font-family:var(--font-body);resize:vertical}.product-form-thumb{max-width:180px;margin-top:8px;border-radius:var(--radius-sm);border:1px solid var(--border)}.product-form-shots{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.product-form-shot{position:relative}.product-form-shot img{width:72px;height:72px;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--border)}.product-form-shot button{position:absolute;top:-6px;right:-6px;width:20px;height:20px;border-radius:50%;border:none;background:#e5484d;color:#fff;font-size:12px;line-height:1;cursor:pointer}:root,html[data-theme=light]{--accent: #c13d2c;--accent-hover: #a63225;--accent-soft: rgba(193, 61, 44, .12);--accent-glow: rgba(193, 61, 44, .28);--accent-orange: #ffa41c;--accent-blue: #3084ff;--accent-cyan: #19f2ff;--accent-red: #ff483c;--canvas: #f1f1f1;--surface: #ffffff;--surface-alt: #f2f0f0;--border: #e7e7e7;--border-strong: #d8d8d8;--text-1: #171717;--text-2: #666666;--text-3: #a1a1aa;--dark-canvas: #0c0c0c;--dark-surface: #121212;--dark-surface-2: #171717;--dark-border: rgba(255, 255, 255, .1);--text-on-dark: #ffffff;--text-on-dark-2: rgba(255, 255, 255, .6);--shadow: 0 1px 2px rgba(23, 23, 23, .05), 0 8px 24px rgba(23, 23, 23, .06);--shadow-hover: 0 4px 8px rgba(23, 23, 23, .07), 0 16px 40px rgba(23, 23, 23, .12);--shadow-accent: 0 8px 20px rgba(193, 61, 44, .25)}html[data-theme=dark]{--accent: #d95a45;--accent-hover: #e66b55;--accent-soft: rgba(217, 90, 69, .14);--accent-glow: rgba(217, 90, 69, .32);--accent-orange: #ffa41c;--accent-blue: #5b9bff;--accent-cyan: #19f2ff;--accent-red: #ff6b60;--canvas: #0d0d10;--surface: #161619;--surface-alt: #121215;--border: #26262b;--border-strong: #34343b;--text-1: #edece8;--text-2: #9c9a92;--text-3: #5c5a55;--dark-canvas: #0a0a0c;--dark-surface: #121215;--dark-surface-2: #17171b;--dark-border: rgba(255, 255, 255, .1);--text-on-dark: #ffffff;--text-on-dark-2: rgba(255, 255, 255, .6);--shadow: 0 1px 2px rgba(0, 0, 0, .4);--shadow-hover: 0 4px 8px rgba(0, 0, 0, .5), 0 16px 40px rgba(0, 0, 0, .45);--shadow-accent: 0 8px 20px rgba(217, 90, 69, .28)}:root{--font-brand: "ZCOOL XiaoWei", "Cormorant Garamond", "PingFang SC", "Microsoft YaHei", serif;--font-display: "Be Vietnam Pro", "PingFang SC", "Microsoft YaHei", "Noto Sans SC", sans-serif;--font-body: "Roboto Flex", "PingFang SC", "Microsoft YaHei", "Noto Sans SC", sans-serif;--font-mono: "JetBrains Mono", "Roboto Mono", ui-monospace, monospace;--radius-sm: 8px;--radius-md: 20px;--radius-lg: 24px;--radius-pill: 999px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--space-9: 96px;--space-10: 128px;--text-display-xl: clamp(48px, 6vw, 72px);--text-display-l: clamp(40px, 5vw, 56px);--text-h2: clamp(28px, 3.5vw, 40px);--text-h3: 28px;--text-h4: 20px;--text-body-l: 18px;--text-body: 16px;--text-caption: 14px;--text-label: 12px;--ease-out: cubic-bezier(.12, .23, .5, 1);--ease-out-expo: cubic-bezier(.22, 1, .36, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--container: 1200px;--header-h: 64px}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--canvas);color:var(--text-1);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.5;transition:background-color .3s var(--ease-out),color .3s var(--ease-out)}img,svg{display:block;max-width:100%}a{color:var(--text-1);text-decoration:none;transition:color .1s var(--ease-out)}h1,h2,h3,h4{margin:0;font-family:var(--font-display);font-weight:700;line-height:1.15}p{margin:0}::selection{background:var(--accent);color:#fff}.container{max-width:var(--container);margin-inline:auto;padding-inline:24px}.dark{background:var(--dark-canvas);color:var(--text-on-dark)}.dark a{color:var(--text-on-dark-2)}.dark a:hover{color:var(--accent)}.eyebrow{font-family:var(--font-mono);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--accent)}.section{padding:var(--space-9) 0}.section-head{margin-bottom:var(--space-7)}.section-head h2{font-size:var(--text-h2);font-weight:800;letter-spacing:-.02em}.section-head .hint{color:var(--text-2);font-size:var(--text-caption)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding-inline:24px;border-radius:var(--radius-pill);font-family:var(--font-body);font-size:16px;font-weight:700;border:1px solid transparent;cursor:pointer;white-space:nowrap;transition:transform .15s var(--ease-out),background .15s var(--ease-out),box-shadow .15s var(--ease-out),border-color .15s var(--ease-out)}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:var(--shadow-accent)}.btn-primary:active{transform:scale(.98)}.btn-secondary{background:var(--surface);color:var(--text-1);border-color:var(--border)}.btn-secondary:hover{background:var(--surface-alt);transform:translateY(-1px)}.btn-sm{height:40px;padding-inline:16px;font-size:14px}.btn-lg{height:56px;padding-inline:32px;font-size:17px;border-radius:var(--radius-pill)}.btn-rect{border-radius:10px}.arrow-icon{display:inline-block;flex:none;vertical-align:middle;transition:transform .2s var(--ease-out)}.card-link .arrow-icon,.hint-link .arrow-icon{margin-left:2px}.card-link:hover .arrow-icon,.hint-link:hover .arrow-icon,.btn:hover .arrow-icon{transform:translate(3px)}.back-link .arrow-icon{margin-right:2px}.back-link:hover .arrow-icon{transform:translate(-3px)}.btn-download{background:var(--accent-orange);color:#fff;height:56px;border-radius:var(--radius-md);padding-inline:28px;text-align:left}.btn-download:hover{filter:brightness(1.05);transform:translateY(-1px)}.btn-download .meta{display:block;font-size:12px;font-weight:400;opacity:.85;line-height:1.2}.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent);font-family:var(--font-mono);font-size:12px}main>*{animation:page-in .5s var(--ease-out-expo) both}@keyframes page-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media(max-width:640px){.section{padding:var(--space-8) 0}.section-head{margin-bottom:var(--space-6)}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}html{scroll-behavior:auto}}.header{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--canvas) 82%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}.header-inner{height:var(--header-h);display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand-mark-wrap{color:var(--accent);display:inline-flex;transition:transform .25s var(--ease-out)}.brand:hover .brand-mark-wrap{transform:rotate(-8deg)}.brand-text{display:flex;flex-direction:column;line-height:1.15}.brand-cn{font-family:var(--font-brand);font-size:20px;font-weight:400;letter-spacing:.04em}.brand-en{font-family:var(--font-mono);font-size:10.5px;font-weight:700;letter-spacing:.18em;color:var(--text-2)}.nav{display:flex;align-items:center;gap:4px}.nav-link{position:relative;padding:8px 14px;font-size:15px;font-weight:500;color:var(--text-2);border-radius:var(--radius-sm);transition:color .15s var(--ease-out)}.nav-link:hover,.nav-link.is-active{color:var(--text-1)}.nav-link.is-active:after{content:"";position:absolute;left:14px;right:14px;bottom:2px;height:2px;border-radius:2px;background:var(--accent)}.header-actions{display:flex;align-items:center;gap:8px}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface);color:var(--text-1);cursor:pointer;transition:all .15s var(--ease-out)}.theme-toggle:hover{border-color:var(--border-strong);color:var(--accent)}.lang-toggle{font-family:var(--font-mono);font-size:12px;font-weight:700;letter-spacing:.04em}.hamburger{display:none;flex-direction:column;justify-content:center;gap:4px;width:36px;height:36px;padding:8px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer}.hamburger span{display:block;height:1.6px;width:100%;background:var(--text-1);border-radius:2px;transition:transform .25s var(--ease-out),opacity .2s}.hamburger.is-open span:nth-child(1){transform:translateY(5.6px) rotate(45deg)}.hamburger.is-open span:nth-child(2){opacity:0}.hamburger.is-open span:nth-child(3){transform:translateY(-5.6px) rotate(-45deg)}.nav-mask{position:fixed;inset:var(--header-h) 0 0 0;background:#0006;z-index:-1}.footer{margin-top:var(--space-9);background:var(--dark-canvas);color:var(--text-on-dark-2)}.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;padding:var(--space-8) 0 var(--space-6)}.footer-cn{font-family:var(--font-brand);font-size:28px;font-weight:400;letter-spacing:.04em;color:var(--text-on-dark)}.footer-en{font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.18em;color:var(--text-on-dark-2);margin-top:6px}.footer-slogan{margin-top:20px;color:var(--text-on-dark-2);font-size:14px;line-height:1.8}.footer-label{display:block;font-family:var(--font-mono);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-on-dark-2);margin-bottom:16px}.footer-links{display:flex;flex-direction:column;gap:10px}.footer-links a{color:var(--text-on-dark-2);font-size:14px;transition:color .15s var(--ease-out)}.footer-links a:hover{color:var(--accent)}.footer-text{color:var(--text-on-dark-2);font-size:14px}.footer-contact-label{position:relative;display:inline-block;cursor:pointer}.footer-qr-tip{position:absolute;left:0;top:calc(100% + 14px);z-index:20;width:148px;padding:8px;background:#fff;border-radius:var(--radius-md);box-shadow:0 10px 28px #0006;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .2s var(--ease-out),transform .2s var(--ease-out),visibility .2s}.footer-contact-label:hover .footer-qr-tip,.footer-contact-label:focus-within .footer-qr-tip{opacity:1;visibility:visible;transform:translateY(0)}.footer-qr-tip img{display:block;width:100%;height:auto;border-radius:6px}.footer-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:20px 0;border-top:1px solid var(--dark-border);font-size:13px}.footer-bottom a{color:var(--text-on-dark-2)}.footer-bottom a:hover{color:var(--accent)}.footer-police{display:inline-flex;align-items:center;gap:4px}.footer-police img{height:16px;width:auto}.tag{display:inline-flex;align-items:center;padding:2px 10px;border-radius:var(--radius-pill);background:var(--surface-alt);color:var(--text-2);font-family:var(--font-mono);font-size:12px}.back-link{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:var(--text-2);transition:color .15s var(--ease-out)}.back-link:hover{color:var(--accent)}.product-card{display:block;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);overflow:hidden;transition:transform .2s var(--ease-out),box-shadow .2s var(--ease-out),border-color .2s var(--ease-out)}.product-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover);border-color:var(--border-strong)}.product-cover{position:relative;aspect-ratio:16 / 8.5;display:flex;align-items:flex-end;padding:18px 22px;overflow:hidden}.product-cover-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:0;object-fit:cover}.product-cover:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(0,0,0,.52),transparent 45%);pointer-events:none;z-index:0}.product-cover-no{position:absolute;top:16px;left:22px;z-index:1;font-family:var(--font-mono);font-size:12px;font-weight:700;letter-spacing:.14em;color:#ffffffb8}.product-cover-name{position:relative;z-index:1;font-family:var(--font-display);font-size:26px;font-weight:900;color:#fffffff0;letter-spacing:.02em}.product-card-body{padding:20px 22px 22px}.product-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.product-card-body h3{font-family:var(--font-display);font-size:22px;font-weight:800;letter-spacing:-.01em}.product-card-body .tagline{margin-top:6px;color:var(--text-2);font-size:14.5px;line-height:1.6}.card-link{display:inline-block;margin-top:16px;font-family:var(--font-mono);font-size:13px;font-weight:700;letter-spacing:.04em;color:var(--accent)}.case-card{display:block;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);overflow:hidden;transition:transform .2s var(--ease-out),box-shadow .2s var(--ease-out)}.case-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover)}.case-cover{position:relative;aspect-ratio:4 / 3;display:flex;align-items:center;justify-content:center;overflow:hidden}.case-cover .case-no{font-family:var(--font-mono);font-size:14px;font-weight:700;letter-spacing:.2em;color:#ffffffb8;transition:transform .3s var(--ease-out)}.case-card:hover .case-no{transform:scale(1.12)}.case-card-body{padding:16px 18px 18px}.case-card-body h3{font-family:var(--font-display);font-size:17px;font-weight:700;letter-spacing:-.01em}.case-card-body p{margin-top:6px;color:var(--text-2);font-size:13.5px;line-height:1.6}.case-card-prompt{margin-top:10px;padding:12px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-alt);color:var(--text-2);font-family:var(--font-mono);font-size:12px;line-height:1.7;white-space:pre-wrap;word-break:break-word;max-height:9em;overflow:hidden;-webkit-mask-image:linear-gradient(to bottom,#000 0,#000 55%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0,#000 55%,transparent 100%)}.case-detail-prompt{padding-right:var(--space-4);margin-top:var(--space-4)}.case-detail-prompt .prompt-text{max-height:60vh}.case-card{cursor:pointer}.case-cover .case-img{width:100%;height:100%;object-fit:cover;transition:transform .35s var(--ease-out)}.case-card:hover .case-img{transform:scale(1.04)}.case-cover-img{aspect-ratio:3 / 4}.case-cover .case-cat{position:absolute;right:10px;bottom:10px;padding:4px 10px;border-radius:var(--radius-pill);background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;font-size:11px;font-weight:600;letter-spacing:.06em}.case-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:var(--space-5);background:#0009;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fade-in .2s var(--ease-out)}.case-modal-inner{position:relative;display:grid;grid-template-columns:minmax(260px,420px) 1fr;gap:var(--space-5);width:min(920px,100%);max-height:86vh;padding:var(--space-6);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);overflow:auto}.case-modal-img{width:100%;height:100%;max-height:70vh;object-fit:cover;border-radius:var(--radius-md)}.case-modal-body h3{font-family:var(--font-display);font-size:20px;font-weight:700;letter-spacing:-.01em}.case-modal-desc{margin-top:8px;color:var(--text-2);font-size:13.5px;line-height:1.6}.prompt-block{position:relative;margin-top:var(--space-4);padding:var(--space-4);padding-right:92px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-alt)}.prompt-text{max-height:36vh;overflow:auto;color:var(--text-1);font-family:var(--font-mono);font-size:12.5px;line-height:1.7;white-space:pre-wrap;word-break:break-word}.copy-btn{position:absolute;top:var(--space-3);right:var(--space-3);padding:7px 14px;border:1px solid var(--accent);border-radius:var(--radius-pill);background:var(--accent);color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:opacity .15s var(--ease-out)}.copy-btn:hover{opacity:.88}.case-modal-close{position:absolute;top:14px;right:14px;z-index:2;width:32px;height:32px;border:1px solid var(--border);border-radius:50%;background:var(--surface);color:var(--text-1);font-size:18px;line-height:1;cursor:pointer}@media(max-width:720px){.case-modal-inner{grid-template-columns:1fr}.case-modal-img{max-height:40vh}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.ph{display:flex;align-items:center;justify-content:center;background:var(--surface-alt);border:1px dashed var(--border-strong);color:var(--text-3);font-family:var(--font-mono);font-size:12px;letter-spacing:.16em}@media(max-width:860px){.nav{position:fixed;top:var(--header-h);left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:var(--canvas);border-bottom:1px solid var(--border);padding:8px;transform:translateY(-8px);opacity:0;visibility:hidden;transition:all .25s var(--ease-out)}.nav.is-open{transform:none;opacity:1;visibility:visible}.nav-link{padding:13px 16px;font-size:16px}.nav-link.is-active:after{display:none}.nav-link.is-active{color:var(--accent)}.hamburger{display:inline-flex}.footer-top{grid-template-columns:1fr;gap:32px;padding:var(--space-7) 0 var(--space-5)}}.cursor-follower{position:fixed;left:0;top:0;z-index:9999;width:10px;height:10px;border-radius:50%;background:#fff;mix-blend-mode:difference;pointer-events:none;will-change:transform;opacity:0;transition:opacity .3s var(--ease-out),width .35s var(--ease-out),height .35s var(--ease-out)}body.cursor-hover .cursor-follower{width:32px;height:32px;opacity:.9}[data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .7s var(--ease-out-expo),transform .7s var(--ease-out-expo);transition-delay:var(--reveal-delay, 0s)}[data-reveal].is-revealed{opacity:1;transform:none}.grain:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:9998;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E");background-size:160px 160px;opacity:.035;mix-blend-mode:overlay}.hero-line{display:block;overflow:hidden}.hero-line .w{display:inline-block;transform:translateY(110%);animation:rise-in .9s var(--ease-out-expo) forwards}.hero-line .w:nth-child(1){animation-delay:.15s}.hero-line .w:nth-child(2){animation-delay:.22s}.hero-line .w:nth-child(3){animation-delay:.3s}@keyframes rise-in{to{transform:none}}.spotlight{position:relative;overflow:hidden}.spotlight:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;transition:opacity .35s var(--ease-out);background:radial-gradient(320px circle at var(--mx, 50%) var(--my, 50%),var(--accent-glow),transparent 62%);pointer-events:none;z-index:0}.spotlight:hover:before{opacity:1}@media(prefers-reduced-motion:reduce){.hero-line .w{transform:none;animation:none}[data-reveal]{opacity:1;transform:none;transition:none}.spotlight:before{display:none}}
