:root{--ink:#1d2433;--muted:#5d6677;--line:#e3e6ec;--bg:#f6f7f9;--card:#fff;--brand:#d93a3f;--brand-dark:#b52a30;--brand-soft:#fdecec;--ok:#1f8a5b;--radius:14px;--tap:44px;color:var(--ink);background:var(--bg);font-family:Segoe UI,system-ui,-apple-system,Microsoft JhengHei,Hiragino Sans,Yu Gothic,sans-serif}*{box-sizing:border-box}body{background:var(--bg);margin:0;line-height:1.6}a{color:inherit}.wrap{max-width:1080px;margin:0 auto;padding:0 16px}header{background:var(--card);border-bottom:1px solid var(--line)}header .wrap{flex-wrap:wrap;align-items:center;gap:16px;min-height:60px;display:flex}.logo{align-items:center;gap:10px;font-size:19px;font-weight:800;text-decoration:none;display:flex}.logo i{background:var(--brand);color:#fff;letter-spacing:.02em;border-radius:9px;place-items:center;width:34px;height:34px;font-size:13px;font-style:normal;display:grid}nav.tools{scrollbar-width:none;flex:auto;order:3;gap:4px;width:100%;padding-bottom:8px;display:flex;overflow-x:auto}nav.tools a{white-space:nowrap;color:var(--muted);border-radius:999px;padding:8px 12px;font-size:14px;text-decoration:none}nav.tools a[aria-current=page],nav.tools a:hover{background:var(--brand-soft);color:var(--brand-dark)}.langs{gap:4px;margin-left:auto;font-size:13px;display:flex}.langs a{color:var(--muted);border-radius:8px;padding:6px 9px;text-decoration:none}.langs a[aria-current=true]{background:var(--ink);color:#fff}@media (min-width:900px){nav.tools{order:0;width:auto;padding-bottom:0}}main{padding:28px 0 40px}.hero{text-align:center;margin-bottom:20px}h1{margin:0 0 10px;font-size:clamp(26px,5vw,40px);line-height:1.2}.hero p{color:var(--muted);max-width:640px;margin:0 auto}.badges{color:var(--ok);flex-wrap:wrap;justify-content:center;gap:8px;margin-top:12px;font-size:13px;display:flex}.badges span:before{content:"✓ "}.chips{flex-wrap:wrap;justify-content:center;gap:8px;margin:18px 0 0;display:flex}.chips a{border:1px solid var(--line);background:var(--card);border-radius:999px;padding:7px 14px;font-size:14px;text-decoration:none}.chips a:hover{border-color:var(--brand);color:var(--brand-dark)}.tool-card,.result{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:0 6px 24px #1d24330f}.drop{text-align:center;cursor:pointer;background:#fff8f8;border:2px dashed #f0a9ab;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:260px;padding:24px;transition:background .15s;display:flex}.drop.over{background:var(--brand-soft);border-color:var(--brand)}.drop.compact{min-height:110px}.drop .big{font-size:20px;font-weight:700}.drop .or{color:var(--muted);font-size:14px}.choose{background:var(--brand);color:#fff;min-height:var(--tap);border-radius:12px;align-items:center;gap:8px;padding:14px 28px;font-size:17px;font-weight:700;display:inline-flex}.drop:hover .choose{background:var(--brand-dark)}.drop input{opacity:0;width:1px;height:1px;position:absolute}.local{color:var(--muted);text-align:center;margin:12px 0 0;font-size:13px}.file-list{margin:14px 0 0;padding:0;list-style:none}.file-list li{border:1px solid var(--line);background:#fbfbfc;border-radius:10px;align-items:center;gap:8px;margin-bottom:8px;padding:10px 12px;display:flex}.fname{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.fsize{color:var(--muted);font-size:13px}.icon{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;width:36px;height:36px}.icon:disabled{opacity:.35}fieldset{border:0;margin:14px 0 0;padding:0}legend{margin-bottom:6px;font-weight:700}.radio{align-items:flex-start;gap:8px;padding:6px 0;display:flex}.ranges{margin-top:8px;display:block}.ranges input{border:1px solid var(--line);border-radius:8px;width:100%;margin-top:4px;padding:10px;font-size:16px;display:block}.actions{text-align:center;margin-top:16px}.go{color:#fff;background:var(--brand);cursor:pointer;border:0;border-radius:12px;width:100%;max-width:420px;min-height:52px;font-size:18px;font-weight:800}.go:disabled{opacity:.6;cursor:progress}.message{text-align:center;min-height:1.6em;color:var(--brand-dark);margin:10px 0 0;font-weight:600}.chooser p{text-align:center;font-weight:700}.chooser-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;display:grid}.chooser-grid button{text-align:left;border:1px solid var(--line);cursor:pointer;font:inherit;background:#fff;border-radius:12px;padding:14px}.chooser-grid button:hover{border-color:var(--brand)}.chooser-grid small,.grid small{color:var(--muted);font-size:13px;display:block}.result{text-align:center}.result h2{color:var(--ok);margin-top:0}.sizes{font-size:16px}.sizes b{color:var(--ok)}.note{color:var(--muted);font-size:14px}.dl{border:1px solid var(--line);text-align:left;border-radius:10px;justify-content:space-between;gap:12px;margin:6px 0;padding:10px 14px;text-decoration:none;display:flex}.dl small{color:var(--muted)}.dl.primary{background:var(--ok);color:#fff;border:0;justify-content:center;align-items:center;gap:10px;min-width:min(100%,360px);padding:16px 34px;font-size:19px;font-weight:800;display:inline-flex}.dl.primary small{color:#dff5ea;font-weight:400}.result details{text-align:left;max-width:520px;margin:12px auto}.again{border:1px solid var(--line);cursor:pointer;font:inherit;background:0 0;border-radius:10px;margin:14px auto 0;padding:10px 18px;display:block}.ad-slot{text-align:center;margin:20px auto}.ad-label{letter-spacing:.08em;color:#8a93a3;margin-bottom:6px;font-size:11px;display:block}.ad-space{justify-content:center;align-items:center;display:flex;overflow:hidden}.ad-space iframe{border:0;max-width:100%;display:block}.ad-consent{max-width:320px;color:var(--muted);border:1px dashed var(--line);padding:12px;font-size:13px}.ad-consent button{min-height:var(--tap);margin-top:6px;padding:8px 14px}.ad-slot[data-ad=up-d]{display:none}@media (min-width:800px){.ad-slot[data-ad=up-d]{display:block}.ad-slot[data-ad=up-m]{display:none}}section.block{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);margin-top:22px;padding:22px}section.block h2{margin:0 0 12px;font-size:21px}ol.steps{margin:0;padding-left:1.3em}ol.steps li{margin:6px 0}.faq details{border-bottom:1px solid var(--line);padding:4px 0}.faq summary{cursor:pointer;min-height:var(--tap);padding:10px 0;font-weight:700}.faq p,.about p{color:var(--muted);margin:0 0 10px}.grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.grid a{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px;text-decoration:none;display:block}.grid a:hover{border-color:var(--brand)}.grid b{margin-bottom:2px;font-size:17px;display:block}footer{border-top:1px solid var(--line);background:var(--card);color:var(--muted);padding:22px 0 34px;font-size:14px}footer .wrap{flex-wrap:wrap;justify-content:space-between;gap:12px;display:flex}[hidden]{display:none!important}.crumbs{color:var(--muted);margin-bottom:8px;font-size:13px}.crumbs a{color:var(--muted)}.block h2 a{text-decoration:none}.more{text-align:right;margin:12px 0 0}.two{grid-template-columns:1fr 1fr;gap:10px;display:grid}.ranges input[type=number]{max-width:100%}.text-card textarea{width:100%;font:inherit;border:1px solid var(--line);resize:vertical;box-sizing:border-box;border-radius:10px;padding:12px;font-size:16px;line-height:1.6}.text-card textarea.in{background:snow;border:2px dashed #f0a9ab;min-height:200px}.out-label{margin-top:14px;font-weight:700;display:block}.out-label textarea{background:#fbfbfc;margin-top:6px}.stats{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin-top:14px;display:grid}.stats div{border:1px solid var(--line);text-align:center;background:#fbfbfc;border-radius:12px;padding:12px}.stats b{color:var(--brand-dark);font-size:26px;display:block}.stats span{color:var(--muted);font-size:13px}.text-actions{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.text-actions button,.text-card .clear{min-height:var(--tap);border:1px solid var(--line);cursor:pointer;font:inherit;background:#fff;border-radius:10px;padding:8px 16px}.text-actions .copy{background:var(--brand);color:#fff;border:0;font-weight:700}.text-card .clear{margin-top:10px}.text-card .note{color:var(--ok);margin:6px 0 0;font-weight:600}.portal-hero{padding:18px 0 6px}.search{background:var(--card);border:2px solid var(--line);border-radius:999px;align-items:center;gap:10px;max-width:560px;min-height:52px;margin:20px auto 0;padding:0 16px;display:flex}.search:focus-within{border-color:var(--brand)}.search svg{fill:none;width:20px;height:20px;stroke:var(--muted);stroke-width:2px;stroke-linecap:round;flex:none}.search input{min-width:0;font:inherit;color:var(--ink);background:0 0;border:0;outline:0;flex:1;font-size:16px}.tiles{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;display:grid}.tile{background:var(--card);border:1px solid var(--line);border-radius:12px;align-items:flex-start;gap:12px;padding:14px;text-decoration:none;transition:border-color .15s,transform .15s;display:flex}.tile:hover{border-color:var(--accent);transform:translateY(-1px)}.tile b{font-size:16px;display:block}.tile small{color:var(--muted);font-size:13px}.ic{background:var(--accent-soft);width:40px;height:40px;color:var(--accent);border-radius:10px;flex:none;place-items:center;display:inline-grid}.ic svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.c-pdf{--accent:#d93a3f;--accent-soft:#fdecec}.c-image{--accent:#2f6fd6;--accent-soft:#e8f0fc}.c-text{--accent:#1f8a5b;--accent-soft:#e5f4ec}.cats{gap:18px;margin-top:18px;display:grid}.cat{background:var(--card);border:1px solid var(--line);border-top:4px solid var(--accent);border-radius:var(--radius);padding:20px}.cat .tile{background:var(--bg)}.cat-head{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.cat-head .ic{width:48px;height:48px}.cat-head>div{flex:1;min-width:200px}.cat-head h2{margin:0;font-size:22px}.cat-head h2 a{text-decoration:none}.cat-head p{color:var(--muted);margin:2px 0 0;font-size:14px}.cat-head .all{color:var(--accent);font-size:14px;font-weight:600;text-decoration:none}.no-match{text-align:center;color:var(--muted);padding:24px 0}.why{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:18px 0;display:grid}.why div{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px}.why b:before{content:"✓ ";color:var(--ok)}.why p{color:var(--muted);margin:4px 0 0;font-size:14px}.c-calc{--accent:#c46a12;--accent-soft:#fdf0e1}.calc{gap:16px;display:grid}.calc .fields{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.calc label.f{color:var(--muted);gap:4px;font-size:14px;display:grid}.calc input[type=number],.calc input[type=date],.calc input[type=text]{font:inherit;color:var(--ink);min-height:var(--tap);border:1px solid var(--line);background:#fff;border-radius:10px;width:100%;padding:8px 12px;font-size:17px}.calc input:focus{outline:2px solid var(--brand);outline-offset:1px}.calc .out{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;display:grid}.calc .out div{background:var(--bg);border-radius:12px;padding:12px 14px}.calc .out span{color:var(--muted);font-size:13px;display:block}.calc .out b{word-break:break-word;font-size:22px}.calc .err{color:var(--brand-dark);margin:0}.calc details{border-top:1px solid var(--line);padding-top:10px}.calc summary{cursor:pointer;min-height:var(--tap);align-items:center;font-weight:600;display:flex}.calc .table-wrap{max-height:420px;overflow-x:auto}.calc table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:14px}.calc th,.calc td{border-bottom:1px solid var(--line);text-align:right;white-space:nowrap;padding:6px 8px}.calc th:first-child,.calc td:first-child{text-align:left}.pct-row{background:var(--bg);border-radius:12px;gap:8px;padding:14px;display:grid}.pct-row h3{margin:0;font-size:16px}.pct-row .line{grid-template-columns:1fr 1fr;gap:10px;display:grid}.pct-row output{min-height:1.4em;font-size:22px;font-weight:700}.c-design{--accent:#7048e8;--accent-soft:#f0ebff}.logo-app{gap:16px;display:grid}.logo-app .fields{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;display:grid}.logo-app label.f,.logo-app div.f{color:var(--muted);gap:4px;font-size:14px;display:grid}.logo-app input:not([type]),.logo-app input[maxlength],.logo-app select{font:inherit;color:var(--ink);min-height:var(--tap);border:1px solid var(--line);background:#fff;border-radius:10px;width:100%;padding:8px 12px;font-size:16px}.logo-app fieldset{border:0;margin:0;padding:0}.logo-app legend{margin-bottom:6px;font-weight:600}.chips-in{flex-wrap:wrap;gap:8px;display:flex}.chip input{opacity:0;position:absolute}.chip span{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:6px;min-height:40px;padding:6px 14px;font-size:14px;display:inline-flex}.chip input:checked+span{border-color:var(--brand);background:var(--brand-soft);color:var(--brand-dark);font-weight:600}.chip input:focus-visible+span{outline:2px solid var(--brand)}.sw{border-radius:50%;width:16px;height:16px;display:inline-block}.logo-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;display:grid}.logo-card{aspect-ratio:4/3;border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:12px;place-items:center;padding:12px;display:grid;overflow:hidden}.logo-card:hover,.logo-card.sel{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-soft)}.logo-card svg{width:auto;max-width:100%;height:auto;max-height:100%}.logo-card .ph{background:var(--bg);border-radius:8px;width:60%;height:30%}.more-btn,.dl-row button{font:inherit;min-height:var(--tap);border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:10px;padding:8px 18px}.logo-editor{border-top:1px solid var(--line);padding-top:16px;scroll-margin-top:12px}.logo-editor h2{margin:0 0 12px}.editor-wrap{gap:16px;display:grid}@media (min-width:860px){.editor-wrap{grid-template-columns:1.2fr 1fr;align-items:start}.preview{position:sticky;top:12px}}.preview{border:1px solid var(--line);border-radius:12px;place-items:center;min-height:260px;padding:20px;display:grid}.checker{background:#fff repeating-conic-gradient(#eef0f3 0 25%, #fff 0 50%) 0 0 / 20px 20px}.preview svg{max-width:100%;height:auto;max-height:420px}.controls{gap:12px;display:grid}.controls .two{grid-template-columns:1fr 1fr;gap:10px;display:grid}.mark-pick{grid-template-columns:repeat(auto-fill,minmax(46px,1fr));gap:6px;display:grid}.mark-pick button{aspect-ratio:1;border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;padding:6px}.mark-pick button.sel{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-soft)}.colors{color:var(--muted);grid-template-columns:repeat(4,1fr);gap:8px;font-size:13px;display:grid}.colors label{gap:4px;display:grid}.colors input{border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;height:40px;padding:2px}.download{background:var(--bg);border-radius:12px;gap:10px;margin-top:16px;padding:16px;display:grid}.note-small{color:var(--muted);margin:0;font-size:13px}.confirm{align-items:flex-start;font-size:14px}.dl-row{flex-wrap:wrap;gap:10px;display:flex}.dl-row button:not(:disabled){background:var(--brand);border-color:var(--brand);color:#fff;font-weight:600}.dl-row button:disabled{opacity:.5;cursor:not-allowed}.logo-app input,.logo-app select{font-weight:400}.design{gap:16px;display:grid}.design .fields{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));align-items:end;gap:12px;display:grid}.design label.f{color:var(--muted);gap:4px;font-size:14px;display:grid}.design input:not([type]),.design input[type=email],.design input[type=tel],.design input[type=file],.design select,.design textarea{font:inherit;color:var(--ink);min-height:var(--tap);border:1px solid var(--line);background:#fff;border-radius:10px;width:100%;padding:8px 12px;font-size:16px;font-weight:400}.design input[type=color]{border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;height:42px;padding:2px}.design fieldset{border:0;gap:10px;margin:0;padding:0;display:grid}.design legend{margin-bottom:6px;font-weight:600}.fav-preview{background:repeating-conic-gradient(#eef0f3 0 25%, #fff 0 50%) 0 0 / 16px 16px;border-radius:12px;flex-wrap:wrap;align-items:end;gap:18px;padding:16px;display:flex}.fav-preview figure{text-align:center;color:var(--muted);margin:0;font-size:12px}.fav-preview canvas{image-rendering:pixelated;margin:0 auto 4px;display:block}.fav-preview canvas[data-s="16"]{width:32px}.fav-preview canvas[data-s="32"]{width:64px}.fav-preview canvas[data-s="48"]{width:96px}.fav-preview canvas[data-s="180"]{width:120px}.qr-out,.pfp-out{border:1px solid var(--line);border-radius:12px;place-items:center;min-height:240px;padding:16px;display:grid}.qr-out svg{width:min(320px,100%);height:auto}.qr-empty{color:var(--muted)}.pfp-out canvas{width:min(320px,100%);height:auto}.thumb-out canvas{border:1px solid var(--line);border-radius:12px;width:100%;height:auto;display:block}.snippet{font-family:ui-monospace,Consolas,monospace!important;font-size:13px!important}.design .dl-row{align-items:end}.design .dl-row .f{min-width:140px}.primary-btn{font-weight:600;background:var(--brand)!important;border-color:var(--brand)!important;color:#fff!important}.design .dl-row button:disabled{opacity:.5}.foot-links a{margin:0 2px}.crop{gap:16px;display:grid}.crop-pick{border:2px dashed var(--line);cursor:pointer;text-align:center;color:var(--muted);border-radius:12px;justify-items:center;gap:6px;padding:28px 16px;display:grid}.pick-btn{min-height:var(--tap);border-radius:10px;align-items:center;padding:8px 22px;display:inline-flex}.crop-main{gap:14px;display:grid}.crop .fields{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;display:grid}.crop label.f{color:var(--muted);gap:4px;font-size:14px;display:grid}.crop input[type=number],.crop select{font:inherit;min-height:var(--tap);border:1px solid var(--line);background:#fff;border-radius:10px;width:100%;padding:8px 10px;font-size:16px}.crop fieldset{border:0;margin:0;padding:0}.crop legend{margin-bottom:6px;font-weight:600}.stage{-webkit-user-select:none;user-select:none;touch-action:none;justify-self:center;max-width:100%;line-height:0;position:relative}.stage img{max-width:100%;max-height:70vh;display:block}.crop-box{cursor:move;outline:2px solid #fff;position:absolute;box-shadow:0 0 0 9999px #00000080}.stage{overflow:hidden}.crop-box i{border:2px solid var(--brand);background:#fff;border-radius:50%;width:22px;height:22px;position:absolute}.crop-box i[data-h=nw]{cursor:nwse-resize;top:-11px;left:-11px}.crop-box i[data-h=ne]{cursor:nesw-resize;top:-11px;right:-11px}.crop-box i[data-h=sw]{cursor:nesw-resize;bottom:-11px;left:-11px}.crop-box i[data-h=se]{cursor:nwse-resize;bottom:-11px;right:-11px}.guide .hero{text-align:left}.guide .meta{color:var(--muted);margin-top:6px;font-size:13px}.guide .block p{line-height:1.8}.logo{white-space:nowrap;flex:none}nav.tools{min-width:0}.guide .hero p{max-width:none;margin-left:0}.c-video{--accent:#0e8a9a;--accent-soft:#e2f4f6}.video{gap:14px;margin-top:14px;display:grid}.video:empty{display:none}.drop.disabled{opacity:.5;cursor:not-allowed}.v-file{border:1px solid var(--line);overflow-wrap:anywhere;border-radius:10px;flex-wrap:wrap;align-items:baseline;gap:4px 12px;padding:10px 14px;display:flex}.v-file .fsize{color:var(--muted);font-size:14px}.v-preview,.v-out{background:#000;border-radius:12px;width:100%;max-height:60vh;display:block}img.v-out{background:0 0;width:auto;max-width:100%;margin:0 auto 12px}.v-result video.v-out{margin-bottom:12px}.v-opts{gap:14px;display:grid}.video fieldset{border:0;min-width:0;margin:0;padding:0}.video legend{margin-bottom:6px;font-weight:600}.v-times{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;display:grid}.v-time{gap:6px;display:grid}.video label.f input{font:inherit;color:var(--ink);min-height:var(--tap);border:1px solid var(--line);background:#fff;border-radius:10px;width:100%;padding:8px 12px;font-size:17px}.v-time input[type=range]{width:100%;min-height:32px;accent-color:var(--brand)}.v-time button,.v-cancel{font:inherit;min-height:var(--tap);border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:10px;padding:8px 16px}.v-hint,.v-len{margin:0}.v-len{font-weight:600}.v-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.v-progress{width:100%;height:12px;accent-color:var(--ok)}.v-result{text-align:center;border-top:1px solid var(--line);padding-top:8px}.v-result h2{color:var(--ok);margin:8px 0}.rights{color:var(--muted);margin:4px 0 0;font-size:13px}@media (min-width:900px){header .wrap{flex-wrap:nowrap}nav.tools{flex:auto}nav.tools a{padding:8px 10px}.langs{flex:none}}.v-list{gap:8px;margin:0;padding-left:1.4em;display:grid}.v-list li{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.v-list .fname{word-break:break-all;font-weight:600}.v-list small{color:var(--muted);flex:1}.v-list button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;min-width:36px;min-height:36px}.video .fields{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:end;gap:12px;display:grid}.video label.f{color:var(--muted);gap:4px;font-size:14px;display:grid}.video textarea,.video select,.video input[type=file]{font:inherit;border:1px solid var(--line);background:#fff;border-radius:10px;width:100%;padding:8px 12px;font-size:16px}.video input[type=color]{border:1px solid var(--line);border-radius:8px;width:100%;height:42px;padding:2px}.wm-preview{border:1px solid var(--line);border-radius:10px;max-width:100%;max-height:360px;display:block}.video details summary{cursor:pointer;min-height:var(--tap);align-items:center;font-weight:600;display:flex}.v-res-row{border-bottom:1px solid var(--line);gap:6px;padding:12px 0;display:grid}.v-res-row img.v-out{border-radius:8px;max-width:100%;max-height:320px}.hash{color:var(--muted);word-break:break-all;margin:0;font-family:ui-monospace,Consolas,monospace;font-size:12px}.hash .warn,.v-warn{color:var(--brand-dark)}.dl-zip,.dl-srt{font:inherit;min-height:var(--tap);border:1px solid var(--brand);color:var(--brand-dark);cursor:pointer;background:#fff;border-radius:10px;margin-top:10px;padding:8px 18px;font-weight:600}.previews{align-content:start;gap:12px;display:grid}.brand-previews{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.brand-previews figure{color:var(--muted);text-align:center;margin:0;font-size:12px}.brand-previews canvas{border:1px solid var(--line);border-radius:10px;max-width:100%;height:auto;display:block}.pv-vertical{width:120px}.pv-banner{width:min(320px,100%)}.save-brand,.use-brand,.dl-kit{font:inherit;min-height:var(--tap);border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:10px;justify-self:start;align-items:center;gap:8px;padding:8px 16px;display:inline-flex}.thumb-out.vertical canvas{max-width:360px;margin:0 auto}.perf{background:var(--bg);border-radius:10px;margin:4px 0;padding:10px 14px;font-size:14px;line-height:1.6}.perf small{color:var(--muted)}.perf-slow{background:#fff4e6}.perf-heavy{background:#fff0f0;border:1px solid #ffc9c9}.perf-warn{color:#c92a2a;font-weight:600}.perf-slow .perf-warn{color:#d9480f}.t-slots{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.t-slot{border:2px dashed var(--line);cursor:pointer;border-radius:12px;gap:8px;padding:14px;display:grid}.t-label{font-weight:700}.t-thumb{background:#000;border-radius:8px;width:100%;height:auto}.t-slot small{color:var(--muted)}
