*{box-sizing:border-box}
.tool-hero{text-align:center;padding:22px 0 16px}.badge{display:inline-block;padding:6px 11px;border-radius:99px;background:#eff6ff;color:#2563eb;font-size:11px;font-weight:800}.tool-hero h1{margin:9px 0 7px;font-size:clamp(31px,4vw,45px);color:#0f172a;font-weight:900}.tool-hero p{margin:0;color:#64748b;font-size:16px}
.section{padding:8px 0 26px}.box{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{padding:19px;background:#fff;border:1.5px solid #dbe3ec;border-radius:18px;box-shadow:0 8px 25px rgba(15,23,42,.06);transition:.2s}.card:hover{border-color:#93c5fd;box-shadow:0 12px 30px rgba(15,23,42,.09);transform:translateY(-2px)}.card h2{margin:0 0 15px;color:#0f172a;font-size:19px}
.upload{min-height:280px;border:2px dashed #bfdbfe;border-radius:15px;background:#f8fbff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:18px}.upload:hover,.upload.dragover{border-color:#2563eb;background:#eff6ff}.upload>i{font-size:46px;color:#2563eb}.upload img{display:none;max-width:100%;max-height:215px;object-fit:contain;border-radius:10px}.upload h3{font-size:18px}.upload p{color:#64748b;font-size:13px;line-height:1.7}.choose{display:flex;align-items:center;justify-content:center;min-height:45px;min-width:175px;border-radius:10px;background:#2563eb;color:#fff;font-weight:850;position:relative;overflow:hidden;cursor:pointer}.choose input{position:absolute;inset:0;opacity:0;cursor:pointer}.choose.secondary{background:#eef2ff;color:#4338ca;border:1px solid #c7d2fe}
.info{display:flex;justify-content:space-between;gap:10px;margin-top:8px;padding:9px 10px;border:1px solid #e5e7eb;border-radius:9px;background:#f8fafc;font-size:11px}.info span{color:#64748b}.info b{color:#0f172a;max-width:65%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#reset{width:100%;min-height:41px;margin-top:9px;border:1px solid #fecaca;border-radius:10px;background:#fff5f5;color:#dc2626;font-weight:800;cursor:pointer}
.remove-btn,.apply{width:100%;min-height:46px;border:0;border-radius:10px;background:#2563eb;color:#fff;font-weight:850;cursor:pointer}.remove-btn{background:#7c3aed}.remove-btn:disabled,.apply:disabled{opacity:.45;cursor:not-allowed}.status{margin:10px 0;padding:10px;border:1px solid #e0e7ff;border-radius:10px;background:#f5f3ff;color:#64748b;font-size:11px;line-height:1.5;text-align:center}
.disabled-controls{opacity:.45;pointer-events:none}.disabled-controls.ready{opacity:1;pointer-events:auto}.settings label{display:block;margin:0 0 8px;color:#334155;font-size:13px;font-weight:850}.options{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px}.options button{min-height:42px;border:1px solid #dbe3ec;border-radius:9px;background:#fff;color:#64748b;font-weight:800;cursor:pointer}.options button.active{border-color:#2563eb;background:#eff6ff;color:#2563eb}.color-row{display:grid;grid-template-columns:58px 1fr;gap:8px;margin-bottom:9px}#bgColor{width:58px;height:42px;padding:3px;border:1px solid #dbe3ec;border-radius:9px;cursor:pointer}#hex{height:42px;padding:0 11px;border:1px solid #dbe3ec;border-radius:9px;color:#334155}.preset-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:16px}.preset-grid button{min-height:35px;border:1px solid #dbe3ec;border-radius:8px;background:#fff;color:#475569;font-size:11px;font-weight:800}.hidden{display:none!important}.hint{color:#94a3b8;font-size:10px;line-height:1.5}.preview{height:280px;border:1px solid #dbe3ec;border-radius:14px;background-color:#f1f5f9;background-image:linear-gradient(45deg,#e2e8f0 25%,transparent 25%),linear-gradient(-45deg,#e2e8f0 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#e2e8f0 75%),linear-gradient(-45deg,transparent 75%,#e2e8f0 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0;display:flex;align-items:center;justify-content:center;overflow:hidden}#canvas{display:none;max-width:100%;max-height:265px;object-fit:contain}.preview div{text-align:center;color:#94a3b8}.preview i{display:block;font-size:42px;margin-bottom:7px}.preview b,.preview span{display:block}.download{display:flex;align-items:center;justify-content:center;margin-top:10px;min-height:45px;border-radius:10px;background:#16a34a;color:#fff;text-decoration:none;font-weight:850}.download.disabled{pointer-events:none;opacity:.4}
.content{padding:30px 0}.content>div>h2{text-align:center;color:#0f172a;font-size:28px;margin:0 0 18px}.grid,.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:32px}.grid article,.steps article{padding:18px;border:1.5px solid #dbeafe;border-radius:14px;background:linear-gradient(145deg,#fff,#f8fbff);text-align:center;box-shadow:0 5px 17px rgba(15,23,42,.04)}.grid h3,.steps h3{margin:7px 0 5px;color:#0f172a;font-size:16px}.grid p,.steps p{margin:0;color:#64748b;font-size:12px;line-height:1.6}.steps b{display:grid;place-items:center;width:31px;height:31px;margin:auto;border-radius:50%;background:#2563eb;color:#fff}.faq{max-width:900px;margin:auto;border:1.5px solid #dbe3ec;border-radius:15px;overflow:hidden;background:#fff}.faq details{border-bottom:1px solid #e5e7eb}.faq details:last-child{border:0}.faq summary{padding:16px;font-size:14px;font-weight:850;color:#0f172a;cursor:pointer}.faq p{padding:0 16px 16px;margin:0;color:#64748b;font-size:12px;line-height:1.7}
body.dark .card,body.dark .grid article,body.dark .steps article,body.dark .faq{background:#111827;border-color:#334155}body.dark .card h2,body.dark .upload h3,body.dark .info b,body.dark .grid h3,body.dark .steps h3,body.dark .content>div>h2,body.dark .faq summary{color:#f8fafc}body.dark .upload{background:#0f172a;border-color:#3b82f6}body.dark .info{background:#0f172a;border-color:#334155}body.dark .options button,body.dark #hex,body.dark #bgColor,body.dark .preset-grid button{background:#0f172a;color:#cbd5e1;border-color:#334155}
@media(max-width:1050px){.box{grid-template-columns:1fr 1fr}.result{grid-column:1/-1}.grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.page-offset{padding-top:62px!important}.tool-hero{padding:18px 0 13px}.tool-hero h1{font-size:30px}.tool-hero p{font-size:14px}.box,.grid,.steps{grid-template-columns:1fr}.result{grid-column:auto}.card{padding:16px;border-radius:17px}.card:hover{transform:none}.upload{min-height:245px}.preview{height:265px}.content{padding:24px 0}.content>div>h2{font-size:24px}.grid article,.steps article{padding:17px}.faq summary{font-size:15px}.faq p{font-size:13px}}@media(max-width:420px){.preset-grid{grid-template-columns:1fr 1fr}.tool-hero h1{font-size:28px}}

.file-input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.choose{border:0;font-family:inherit;font-size:14px}
.choose i{margin-right:7px}
