:root{--paper:#f6f4ee;--card:#fffefb;--ink:#1d1b16;--muted:#7d786b;--faint:#a8a294;--line:#e4dfd2;--line-strong:#cfc8b6;--accent:#2f45c4;--accent-soft:#eef0fb;--accent-ink:#ffffff;--ok:#1a7f37;--err:#b42318;--warn:#b45309;--mark:#ffd666;--serif:"Songti SC","STSong","Noto Serif SC","SimSun",serif;--sans:-apple-system,"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",system-ui,sans-serif;--mono:ui-monospace,"SF Mono","JetBrains Mono",Menlo,monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.6;font-size:14px}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}::selection{background:var(--mark)}.wrap{max-width:1180px;margin:0 auto;padding:0 24px 90px}header.top{justify-content:space-between;padding:18px 0 16px;border-bottom:1px solid var(--line)}.brand,header.top{display:flex;align-items:center}.brand{gap:10px}.brand .logo{width:30px;height:30px;display:block}.brand .logo img{width:100%;height:100%;display:block}.brand b{font-family:var(--serif);font-size:20px;font-weight:900;letter-spacing:.04em}.brand .ver{font-size:10px;color:var(--faint);border:1px solid var(--line);padding:1px 6px;border-radius:999px;margin-left:2px}.brand .ver,.topnote{font-family:var(--mono)}.topnote{font-size:11px;color:var(--muted);letter-spacing:.08em}.hero{padding:44px 0 34px}.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.22em;color:var(--muted);text-transform:uppercase;margin-bottom:12px;display:flex;align-items:center;gap:8px}.eyebrow:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent);display:inline-block}.hero h1{font-family:var(--serif);font-weight:900;font-size:clamp(30px,4.6vw,46px);line-height:1.25;margin:0 0 14px;letter-spacing:.01em}.hero h1 .mk{background:linear-gradient(transparent 62%,var(--mark) 62%);padding:0 2px}.hero p.sub{color:var(--muted);font-size:15px;margin:0 0 18px;max-width:640px}.stats{display:flex;gap:26px;font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:.06em}.stats b{display:block;font-family:var(--serif);font-size:22px;color:var(--ink);letter-spacing:0}.grid{display:grid;grid-template-columns:1fr;grid-gap:22px;gap:22px;margin-top:8px}@media (min-width:960px){.grid{grid-template-columns:430px 1fr;align-items:start}}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px 20px 22px;box-shadow:0 1px 2px rgba(29,27,22,.04)}.step{font-family:var(--mono);font-size:10px;letter-spacing:.2em;color:var(--faint);margin:18px 0 8px;display:flex;align-items:center;gap:10px}.step:first-child{margin-top:0}.step:after{content:"";flex:1 1;height:1px;background:var(--line)}.step em{font-style:normal;color:var(--accent)}label.f{display:block;font-size:12px;color:var(--muted);margin:10px 0 5px}input[type=text],select,textarea{width:100%;font:inherit;padding:10px 12px;border:1px solid var(--line-strong);border-radius:9px;background:#fff;color:var(--ink);transition:border-color .15s,box-shadow .15s}input[type=text]:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}textarea{min-height:92px;resize:vertical;font-size:14px}.row{display:flex;gap:10px}.row>*{flex:1 1}.tabs{display:flex;gap:2px;margin:4px 0 8px;flex-wrap:wrap}.tab{font-size:12px;padding:4px 11px;border:0;border-radius:999px;background:transparent;color:var(--muted);cursor:pointer;font-family:inherit}.tab:hover{color:var(--ink)}.tab.on{background:var(--ink);color:var(--paper)}.tab small{margin-left:4px;opacity:.6;font-family:var(--mono);font-size:10px}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{font-size:12px;padding:5px 11px;border:1px solid var(--line);border-radius:999px;background:#fff;cursor:pointer;color:var(--ink);font-family:inherit;transition:all .12s}.chip:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.chip small{color:var(--faint);margin-left:5px;font-size:10px}.check{display:flex;align-items:center;gap:8px;font-size:13px;margin-top:4px}.check input{accent-color:var(--accent)}.note{font-size:12px;color:var(--muted)}.refs{display:flex;gap:8px;margin-top:6px}.ref{position:relative;width:62px;height:62px;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#fff}.ref img{width:100%;height:100%;object-fit:cover}.ref button{position:absolute;top:0;right:0;border:0;background:rgba(29,27,22,.6);color:#fff;width:18px;height:18px;font-size:12px;line-height:1;cursor:pointer;border-radius:0 0 0 7px}.refadd{width:62px;height:62px;border:1px dashed var(--line-strong);border-radius:9px;display:flex;align-items:center;justify-content:center;color:var(--faint);font-size:20px;cursor:pointer;background:#fff;transition:all .12s}.refadd:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}button.primary{width:100%;margin-top:18px;padding:13px;font:inherit;font-size:15px;font-weight:600;background:var(--accent);color:var(--accent-ink);border:0;border-radius:10px;cursor:pointer;letter-spacing:.05em;transition:transform .1s,box-shadow .15s;box-shadow:0 2px 8px rgba(47,69,196,.25)}button.primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 14px rgba(47,69,196,.3)}button.primary:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.result .stagehead{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:4px}.result .stagehead strong{font-family:var(--serif);font-size:19px;font-weight:900}.status{display:inline-flex;align-items:center;font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;padding:3px 10px;border-radius:999px;border:1px solid var(--line);color:var(--muted);background:#fff}.status.done{color:var(--ok);border-color:#b5dcc0;background:#f2faf4}.status.error{color:var(--err);border-color:#eab8b2;background:#fdf3f2}.status.generating,.status.planning,.status.queued{color:var(--accent);border-color:#b9c2ec;background:var(--accent-soft)}.meta{font-size:12px;color:var(--muted);margin:5px 0}.labels{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0}.labels span{font-size:12px;background:var(--mark);padding:1px 8px;border-radius:4px}.canvasframe{position:relative;margin-top:10px;border:1px solid var(--line-strong);border-radius:10px;background:#fff;overflow:hidden}.canvasframe img{width:100%;height:auto;display:block}.canvasbar{display:flex;justify-content:space-between;font-family:var(--mono);font-size:10px;letter-spacing:.12em;color:var(--faint);padding:6px 12px;border-top:1px solid var(--line);background:var(--card)}.toolrow{display:flex;gap:16px;flex-wrap:wrap;margin-top:10px;font-size:13px}.toolrow a{cursor:pointer}.ocr{margin-top:10px;border:1px solid var(--line);border-radius:10px;padding:12px;background:var(--paper)}.ocrrow{display:flex;gap:6px;margin-bottom:6px}.ocrrow input{flex:1 1;font-size:13px;padding:7px 9px}.ocrrow.rm input{text-decoration:line-through;opacity:.45}.ocrrow button{border:1px solid var(--line);background:#fff;border-radius:7px;width:32px;cursor:pointer;color:var(--muted)}.ocrrow button:hover{border-color:var(--err);color:var(--err)}.editbox{display:flex;gap:8px;margin-top:12px}.editbox input{flex:1 1}.editbox button{padding:0 20px;border:1px solid var(--accent);color:var(--accent);background:#fff;border-radius:9px;cursor:pointer;font:inherit;transition:all .12s}.editbox button:hover{background:var(--accent);color:#fff}details.prompt{margin-top:10px}details.prompt summary{cursor:pointer;font-size:12px;color:var(--muted)}details.prompt pre{white-space:pre-wrap;font-size:12px;background:var(--paper);padding:12px;border-radius:9px;border:1px solid var(--line)}.err{color:var(--err);font-size:13px;white-space:pre-wrap}.spinner{display:inline-block;width:11px;height:11px;border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite;margin-right:7px}@keyframes spin{to{transform:rotate(1turn)}}.empty{padding:90px 30px;text-align:center;color:var(--muted);font-size:14px;border:1px dashed var(--line-strong);border-radius:12px;background:repeating-linear-gradient(45deg,transparent,transparent 14px,rgba(29,27,22,.012) 0,rgba(29,27,22,.012) 28px)}.empty .glyph{font-family:var(--serif);font-size:34px;color:var(--faint);display:block;margin-bottom:10px}.sect{margin-top:64px}.secthead{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}.secthead h2{font-family:var(--serif);font-size:26px;font-weight:900;margin:6px 0 0}.secthead .note{max-width:420px}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));grid-gap:16px;gap:16px}.gitem{margin:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--card);transition:transform .15s,box-shadow .15s}.gitem:hover{transform:translateY(-3px);box-shadow:0 8px 22px rgba(29,27,22,.08)}.gitem img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;display:block;background:#fff;border-bottom:1px solid var(--line)}.gitem figcaption{padding:10px 13px 12px}.gitem figcaption strong{font-family:var(--serif);font-size:15px;font-weight:900}.gitem .gmeta{font-family:var(--mono);font-size:10px;letter-spacing:.1em;color:var(--faint);margin:2px 0 8px}.gitem .gactions{display:flex;align-items:center;gap:12px}.history{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:10px;gap:10px}.history .item{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--card);cursor:pointer;transition:transform .12s,box-shadow .12s}.history .item:hover{transform:translateY(-2px);box-shadow:0 5px 14px rgba(29,27,22,.08)}.history .item img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;background:#fff}.history .item .t{font-size:11px;padding:6px 9px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}footer.foot{margin-top:80px;border-top:1px solid var(--line);padding-top:18px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;color:var(--faint)}.topnav{display:flex;align-items:center;gap:22px;font-size:13px}.topnav a{color:var(--muted)}.topnav a:hover{color:var(--ink);text-decoration:none}.topnav a.cta{color:#fff;background:var(--accent);padding:7px 16px;border-radius:999px;font-weight:600}.topnav a.cta:hover{box-shadow:0 3px 12px rgba(47,69,196,.3)}.lhero{display:grid;grid-template-columns:1fr;grid-gap:36px;gap:36px;padding:52px 0 44px;align-items:center}@media (min-width:980px){.lhero{grid-template-columns:1.05fr .95fr}}.lhero h1{font-family:var(--serif);font-weight:900;font-size:clamp(30px,4.4vw,44px);line-height:1.28;margin:0 0 14px}.lhero .mk{background:linear-gradient(transparent 62%,var(--mark) 62%);padding:0 2px}.lhero p.sub{color:var(--muted);font-size:15px;margin:0 0 20px;max-width:560px}.inputbar{display:flex;background:#fff;border:1.5px solid var(--ink);border-radius:12px;overflow:hidden;box-shadow:4px 4px 0 rgba(29,27,22,.12);max-width:560px}.inputbar input{flex:1 1;border:0;padding:14px 16px;font:inherit;font-size:14px}.inputbar input:focus{outline:none;box-shadow:none}.inputbar button{border:0;background:var(--accent);color:#fff;font:inherit;font-weight:600;padding:0 24px;cursor:pointer;letter-spacing:.04em}.inputbar button:hover{background:#2438a8}.trys{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:14px;max-width:620px}.trylabel{font-family:var(--mono);font-size:10px;letter-spacing:.2em;color:var(--faint);margin-right:4px}.trys .chip:hover{text-decoration:none}.ticks{margin-top:16px;letter-spacing:.02em}.showcase{margin:0}.showcase .frame{position:relative;background:#fff;border:1px solid var(--line-strong);border-radius:14px;padding:26px 14px;box-shadow:0 14px 40px rgba(29,27,22,.1)}.showcase .frame img{width:100%;height:auto;display:block;border-radius:6px}.showcase .corner{position:absolute;font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;color:var(--faint)}.showcase .corner.tl{top:8px;left:14px}.showcase .corner.br{bottom:8px;right:14px}.showcase figcaption{margin-top:10px;text-align:center}.band{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:18px;gap:18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:26px 0;margin-top:8px}@media (min-width:760px){.band{grid-template-columns:repeat(4,1fr)}}.band b{font-family:var(--serif);font-size:30px;font-weight:900;display:block}.band span{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;color:var(--muted)}.how{display:grid;grid-template-columns:1fr;grid-gap:16px;gap:16px}@media (min-width:800px){.how{grid-template-columns:repeat(3,1fr)}}.howstep{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:22px;position:relative}.howstep .num{font-family:var(--mono);font-size:11px;letter-spacing:.2em;color:var(--accent)}.howstep h3{font-family:var(--serif);font-size:18px;font-weight:900;margin:8px 0 6px}.howstep p{margin:0;color:var(--muted);font-size:13px}.bigcta{display:inline-block;background:var(--ink);color:var(--paper);padding:13px 30px;border-radius:999px;font-size:15px;font-weight:600;letter-spacing:.04em}.bigcta:hover{text-decoration:none;background:#000;box-shadow:0 6px 20px rgba(29,27,22,.25)}.studio-shell{min-height:100vh;display:flex;flex-direction:column}.studiobar{display:flex;align-items:center;justify-content:space-between;padding:12px 22px;border-bottom:1px solid var(--line);background:var(--card);position:-webkit-sticky;position:sticky;top:0;z-index:5}.studiobar .brand a.logo{text-decoration:none}.studio{flex:1 1;display:grid;grid-template-columns:1fr;grid-gap:18px;gap:18px;padding:18px 22px 40px;max-width:1440px;width:100%;margin:0 auto}@media (min-width:1000px){.studio{grid-template-columns:minmax(0,1fr) 372px;align-items:start}}.stage{min-height:60vh}.stagetitle{font-family:var(--serif);font-size:24px;font-weight:900;margin:6px 0 16px}.tmplgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(196px,1fr));grid-gap:12px;gap:12px}.tmpl{display:block;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--card);cursor:pointer;padding:0;text-align:left;font:inherit;transition:transform .13s,box-shadow .13s}.tmpl:hover{transform:translateY(-2px);box-shadow:0 7px 18px rgba(29,27,22,.09)}.tmpl img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;border-bottom:1px solid var(--line);background:#fff}.tmpl span{display:block;padding:8px 11px 10px}.tmpl b{font-family:var(--serif);font-size:14px;display:block}.tmpl small{color:var(--faint);font-family:var(--mono);font-size:9.5px;letter-spacing:.1em}.rail{display:flex;flex-direction:column;gap:14px;position:-webkit-sticky;position:sticky;top:68px}.railcard{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px}.railhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.thumbs{display:grid!important;grid-template-columns:repeat(3,1fr)!important;grid-gap:8px!important;gap:8px!important}.thumbs .item{border-radius:8px}.thumbs .item.on{outline:2px solid var(--accent);outline-offset:1px}.thumbs .item img{aspect-ratio:16/10}.composer textarea{min-height:76px;margin-bottom:8px}.composer .row{margin-bottom:8px}.composer select{font-size:12.5px;padding:8px 9px}.composer .refs{margin:4px 0 0}.composer button.primary{margin-top:12px;padding:12px}.langsel{width:auto;font-size:12px;padding:5px 8px;border-radius:8px;border:1px solid var(--line);background:#fff;color:var(--muted)}.crumb{padding:14px 0 0}.crumb a{color:var(--muted);text-decoration:none}.crumb a:hover{color:var(--accent)}.crumb span{color:var(--ink)}.toolhero{display:grid;grid-template-columns:1.05fr 1fr;grid-gap:44px;gap:44px;align-items:start;padding:26px 0 34px}.toolhero h1{font-family:var(--serif);font-size:34px;line-height:1.25;margin:6px 0 12px}.toolhero .labelh{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:20px 0 10px}.labellist{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:0}.gitem strong a{color:inherit;text-decoration:none}.gitem strong a:hover{color:var(--accent)}@media (max-width:860px){.toolhero{grid-template-columns:1fr}}.tcontent{max-width:860px}.tcontent h2{font-family:var(--serif);font-size:26px;margin:0 0 14px}.tcontent h3{font-family:var(--serif);font-size:19px;margin:26px 0 10px}.tcontent p{margin:0 0 12px;color:var(--ink);line-height:1.75}.tcontent ul{margin:0;padding-left:20px}.tcontent li{margin-bottom:8px;line-height:1.65}.tcols{display:grid;grid-template-columns:1fr 1fr;grid-gap:28px;gap:28px;margin-top:8px}.tcols>div{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px 20px 20px}.tcols h3{margin-top:0}@media (max-width:860px){.tcols{grid-template-columns:1fr}}.faq{display:grid;grid-gap:10px;gap:10px;max-width:860px}.faq details{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:0 18px}.faq details[open]{border-color:var(--line-strong)}.faq summary{cursor:pointer;font-weight:600;list-style:none;position:relative;padding:14px 28px 14px 0}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:2px;top:50%;transform:translateY(-50%);font-family:var(--mono);font-size:16px;color:var(--muted)}.faq details[open] summary:after{content:"−"}.faq details p{margin:0 0 14px;color:var(--muted);line-height:1.7}.carouhead{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.carouarrows{display:flex;gap:6px}.carouarrows button{width:30px;height:30px;border-radius:50%;border:1px solid var(--line);background:#fff;cursor:pointer;font-size:16px;color:var(--muted)}.carouarrows button:hover{color:var(--accent);border-color:var(--accent)}.carousel{display:flex;gap:14px;overflow-x:auto;scrollbar-width:none;padding-bottom:4px}.carousel::-webkit-scrollbar{display:none}.ccard{flex:0 0 176px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:0;cursor:pointer;overflow:hidden;text-align:left;transition:border-color .12s,transform .12s}.ccard:hover{border-color:var(--accent);transform:translateY(-2px)}.ccard img{width:100%;aspect-ratio:1/1;object-fit:contain;background:#fff;display:block;border-bottom:1px solid var(--line)}.ccard span{display:block;padding:8px 10px;font-size:12.5px;font-weight:600;color:var(--ink)}.resulttools{display:flex;align-items:center;gap:8px;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--line)}.resulttools button{border:1px solid var(--line);background:#fff;border-radius:8px;padding:7px 12px;font-size:12.5px;cursor:pointer;color:var(--ink)}.resulttools button:hover{border-color:var(--accent);color:var(--accent)}.resulttools .dlbtn{background:var(--accent);color:#fff;border-radius:8px;padding:8px 16px;font-size:12.5px;text-decoration:none;font-weight:600}.brushlayer{position:absolute;top:0;left:0;width:100%;height:auto;pointer-events:none}.brushlayer.on{pointer-events:auto;cursor:crosshair}.brushbar{display:flex;align-items:center;gap:7px;margin-top:10px;padding:8px 10px;border:1px solid var(--line);border-radius:999px;background:#fff;width:-moz-fit-content;width:fit-content;max-width:100%;flex-wrap:wrap}.brushbar .bmain{border:none;background:var(--ink);color:#fff;border-radius:999px;padding:6px 13px;font-size:12.5px;cursor:pointer}.brushbar .bmain.on{background:var(--accent)}.brushbar .bdot{width:20px;height:20px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0}.brushbar .bdot.on{outline:2px solid var(--accent);outline-offset:2px}.brushbar .bsize{width:26px;height:26px;border-radius:50%;border:1px solid var(--line);background:#fff;font-size:11px;cursor:pointer;color:var(--muted)}.brushbar .bsize.on{background:var(--ink);color:#fff;border-color:var(--ink)}.brushbar .bop{border:none;background:none;font-size:15px;cursor:pointer;color:var(--muted);padding:2px 4px}.brushbar .bop:disabled{opacity:.3;cursor:default}.editingbar{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:12px;background:var(--card);padding:9px 11px;margin-bottom:10px}.editingbar img{width:44px;height:30px;object-fit:cover;border-radius:5px;border:1px solid var(--line)}.editingbar .t{flex:1 1;display:flex;flex-direction:column;line-height:1.35}.editingbar .t b{font-size:12.5px}.editingbar .t span{font-size:11px;color:var(--muted)}.composer .cbottom{display:flex;align-items:center;gap:8px;margin-top:8px}.costchip{font-family:var(--mono);font-size:10.5px;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:3px 9px}.iconbtn{width:30px;height:30px;border:1px solid var(--line);border-radius:8px;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:14px}.iconbtn:hover{border-color:var(--accent)}.sendbtn{width:38px;height:38px;border-radius:50%;border:none;background:var(--accent);color:#fff;font-size:17px;cursor:pointer;display:flex;align-items:center;justify-content:center}.sendbtn:disabled{opacity:.45;cursor:default}.sendbtn:hover:not(:disabled){filter:brightness(1.1)}.paramchips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.paramchips .pchip,.paramchips select{border:1px solid var(--line);border-radius:999px;background:#fff;font-size:11.5px;padding:5px 10px;color:var(--ink);cursor:pointer;max-width:130px}.paramchips .pchip{color:var(--muted)}.paramchips .pchip.on{border-color:var(--accent);color:var(--accent)}.hgrid{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.hitem{margin:0;cursor:pointer}.hitem img{width:100%;aspect-ratio:3/2;object-fit:contain;background:#fff;border:2px solid var(--line);border-radius:8px;display:block}.hitem.on img{border-color:var(--accent)}.hitem figcaption{font-size:10.5px;color:var(--muted);margin-top:4px;line-height:1.35;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.editoverlay{position:fixed;inset:0;z-index:60;background:var(--paper);display:flex;flex-direction:column}.ovbar{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-bottom:1px solid var(--line);background:#fff}.ovbar b{font-family:var(--serif);font-size:16px}.ovbar .ovback{border:none;background:none;font-size:13px;cursor:pointer;color:var(--muted)}.ovbar .ovback:hover{color:var(--ink)}.ovbar .ovapply{background:var(--accent);color:#fff;border:none;border-radius:8px;padding:8px 22px;font-size:13px;font-weight:600;cursor:pointer}.ovbody{flex:1 1;display:grid;grid-template-columns:1fr 340px;grid-gap:0;gap:0;min-height:0}.ovimg{display:flex;align-items:center;justify-content:center;padding:24px;min-width:0}.ovimg img{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px;box-shadow:0 10px 34px rgba(29,27,22,.12)}.ovpanel{border-left:1px solid var(--line);background:#fff;padding:16px;overflow-y:auto}.ovpanel h3{font-size:13.5px;margin:0 0 4px}.ovextra{border-top:1px solid var(--line);background:#fff;padding:10px 20px 14px}.ovextra textarea{width:100%;min-height:54px;border:1px solid var(--line);border-radius:10px;padding:9px 11px;font-size:12.5px;font-family:inherit;resize:vertical}@media (max-width:860px){.ovbody{grid-template-columns:1fr}.ovpanel{border-left:none;border-top:1px solid var(--line)}}.authwrap{display:flex;justify-content:center;padding:60px 0 80px}.authcard{width:100%;max-width:400px;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:30px 30px 26px;box-shadow:0 1px 3px rgba(29,27,22,.05)}.authcard h1{font-family:var(--serif);font-size:24px;margin:0 0 6px}.authcard .sub{color:var(--muted);font-size:13px;margin:0 0 18px}.authcard form{display:grid;grid-gap:10px;gap:10px}.authcard input{font:inherit;padding:10px 12px;border:1px solid var(--line-strong);border-radius:9px;background:#fff;color:var(--ink)}.authcard input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.authcard .bigcta{width:100%;text-align:center;border:none;cursor:pointer;font:inherit}.autherr{color:var(--err);font-size:12.5px;margin:0}.gbtn{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;font:inherit;padding:10px 12px;border:1px solid var(--line-strong);border-radius:9px;background:#fff;cursor:pointer;color:var(--ink)}.gbtn:hover{border-color:var(--accent)}.author{display:flex;align-items:center;gap:12px;color:var(--faint);font-size:12px;margin:14px 0}.author:after,.author:before{content:"";flex:1 1;height:1px;background:var(--line)}.authswitch{display:block;margin-top:14px;width:100%;text-align:center;background:none;border:none;color:var(--accent);cursor:pointer;font:inherit;font-size:13px;text-decoration:none}.authfree{font-size:12px;color:var(--muted);margin:-12px 0 16px;letter-spacing:.02em}.authnav{display:inline-flex;align-items:center;gap:8px}.authnav .authuser{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink)}.authnav button{background:none;border:none;color:var(--muted);cursor:pointer;font:inherit;font-size:12.5px}.authnav button:hover{color:var(--err)}.waitpanel{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;padding:70px 20px 80px;border:1px solid var(--line);border-radius:12px;background:var(--card);margin-top:12px}.waittitle{font-family:var(--serif);font-size:19px;font-weight:900;max-width:460px}.waitsub{color:var(--muted);font-size:13px;margin-top:-6px}.waiticon{width:52px;height:52px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;font-size:22px;animation:waitpulse 1.6s ease-in-out infinite;box-shadow:0 4px 14px rgba(47,69,196,.35)}@keyframes waitpulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.waitbar{width:220px;height:5px;border-radius:999px;background:var(--accent-soft);overflow:hidden;position:relative}.waitbar i{position:absolute;left:-40%;width:40%;height:100%;border-radius:999px;background:var(--accent);animation:waitslide 1.4s ease-in-out infinite}@keyframes waitslide{0%{left:-40%}60%{left:100%}to{left:100%}}.waitstage{font-family:var(--mono);font-size:11px;color:var(--faint);letter-spacing:.08em}.hitem .genph{aspect-ratio:16/9;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:var(--accent-soft);color:var(--accent);font-size:12px;border-radius:8px 8px 0 0}.legalfoot{display:inline-flex;gap:16px}.legalfoot a{color:var(--faint);text-decoration:none;border-bottom:1px solid transparent}.legalfoot a:hover{color:var(--ink);border-bottom-color:var(--line)}.postlist{display:grid;grid-gap:18px;gap:18px}.postcard{border:1px solid var(--line);border-radius:10px;padding:18px 20px;background:#fff}.postcard h2,.postcard h3{font-size:18px;margin:0 0 8px;line-height:1.35}.postcard h2 a,.postcard h3 a{color:inherit;text-decoration:none}.postcard h2 a:hover,.postcard h3 a:hover{color:var(--accent)}.postcard p{margin:0 0 8px;color:var(--muted);font-size:14px}.pmeta{font-family:var(--mono);font-size:10.5px;letter-spacing:.08em}.post{max-width:760px;margin:22px auto 0}.post h1{font-size:34px;line-height:1.25;margin:0 0 10px}.post h2{font-size:21px;margin:34px 0 12px}.post p{line-height:1.75;margin:0 0 14px}.post .lead{font-size:17px;color:var(--ink)}.post ul{line-height:1.75;padding-left:20px;margin:0 0 16px}.post li{margin-bottom:6px}.takeaways{border-left:3px solid var(--accent);background:#fbfaf7;padding:16px 20px;margin:24px 0;border-radius:0 8px 8px 0}.takeaways h2{font-size:14px;margin:0 0 10px;letter-spacing:.04em}.takeaways ul{margin:0}.relatedtools{margin-top:36px}.askbox{margin-bottom:26px}.askhead{text-align:center;margin:18px 0}.askhead h1{font-size:clamp(26px,3.4vw,38px);line-height:1.2;margin:0 0 10px;letter-spacing:-.01em}.askhead .sub{margin:0 auto;max-width:560px;color:var(--faint);font-size:14px}.askbox .composer{max-width:760px;margin:0 auto;padding:16px 16px 12px;border-radius:16px;box-shadow:0 1px 2px rgba(0,0,0,.04),0 8px 28px -18px rgba(0,0,0,.28)}.askbox .composer textarea{min-height:108px;font-size:15px;line-height:1.6}.askbox .sendbtn{width:44px;height:44px;font-size:17px}.askbox .paramchips,.askbox+.paramchips{justify-content:center}.askbox.compact .composer{max-width:100%;box-shadow:none}.stage>.askbox~.paramchips{max-width:760px;margin-left:auto;margin-right:auto}.tmplhead .stagetitle{font-size:15px!important;color:var(--faint);font-weight:600;letter-spacing:.02em}.tmplhead{margin-top:6px;padding-top:18px;border-top:1px solid var(--line)}.stage .carousel .ccard{width:168px}.stage .carousel .ccard img{height:96px}.stage .carousel .ccard span{font-size:12px}.stage .chips .chip{font-size:12px;padding:6px 10px}.stage .chips .chip small{font-size:10px}@media (max-width:999px){.studio{display:flex;flex-direction:column}.studio .rail{order:2;position:static}.studio .stage{order:1}.askhead{margin-top:8px}.askhead h1{font-size:24px}}.studio .stage{min-width:0}.communitylink{margin-left:14px;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line);letter-spacing:0}.communitylink:hover{border-bottom-color:var(--ink)}.errhelp{margin-left:8px;color:inherit;text-decoration:underline;white-space:nowrap}.topnav a.tgnav{display:inline-flex;align-items:center;gap:6px;color:var(--ink);font-weight:600}.topnav a.tgnav:before{content:"";width:8px;height:8px;border-radius:50%;background:#2AABEE}.tgbanner{display:inline-flex;align-items:center;gap:12px;margin-top:18px;padding:10px 16px 10px 12px;background:#fff;border:1.5px solid var(--ink);border-radius:12px;box-shadow:4px 4px 0 rgba(42,171,238,.35);color:var(--ink);text-decoration:none;max-width:560px;transition:transform .12s,box-shadow .12s}.tgbanner:hover{text-decoration:none;transform:translate(-1px,-1px);box-shadow:6px 6px 0 rgba(42,171,238,.45)}.tgbanner .tgicon{flex:none}.tgbanner .tgtext{display:flex;flex-direction:column;line-height:1.3}.tgbanner .tgtext b{font-size:14px}.tgbanner .tgtext small{font-size:12px;color:var(--muted)}.tgbanner .tgarrow{margin-left:4px;color:#2AABEE;font-weight:700}@media (max-width:640px){.topnav a.tgnav{display:none}}.quotabox{margin:12px 0 0;padding:12px 14px;background:#fff;border:1.5px solid var(--ink);border-radius:12px;box-shadow:4px 4px 0 rgba(42,171,238,.35);max-width:620px}.quotabox b{display:block;font-size:14px;margin-bottom:4px}.quotabox p{margin:0 0 10px;font-size:13px;color:var(--muted);line-height:1.5}.quotabox .quotacta{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;background:#2AABEE;color:#fff;font-weight:600;font-size:13px;text-decoration:none}.quotabox .quotacta:hover{background:#1e96d1;text-decoration:none}.quotabox .quotacta .tgicon{width:18px;height:18px}.quotabox .quotacta .tgicon circle{fill:#fff}.quotabox .quotacta .tgicon path{fill:#2AABEE}