.upload-preview{height:330px;position:relative;overflow:hidden;border:1px solid #d8d6cc;border-radius:12px;background:#eceae2}.upload-preview img{width:100%;height:100%;display:block;object-fit:contain}.preview-overlay{position:absolute;inset:auto 12px 12px;display:flex;justify-content:center}.preview-overlay span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:7px 10px;border-radius:6px;background:#171812d9;color:#fff;font-size:11px}.preview-confirm{padding-top:14px}.preview-confirm>small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:11px;margin-bottom:12px}.preview-confirm>div{display:flex;align-items:center;justify-content:flex-end;gap:8px}.preview-confirm button{font-family:inherit;cursor:pointer}.preview-confirm .is-disabled,.preview-confirm button:disabled{pointer-events:none;cursor:wait;opacity:.65}.preview-confirm .button-accent{padding:13px 17px;box-shadow:0 4px 0 #171812}@media(max-width:560px){.upload-preview{height:280px}.preview-confirm>div{align-items:stretch;flex-direction:column}.preview-confirm .button{width:100%}}.logo-tool-hint{display:flex;align-items:flex-start;gap:10px;margin-top:14px;padding:11px 12px;border:1px dashed #c9c7bd;border-radius:10px;background:#faf9f4}.logo-tool-badge{width:28px;height:28px;flex:none;display:grid;place-items:center;border-radius:50%;background:#fff;border:1px solid #d8d5ca;font-size:13px}.logo-tool-hint p{display:flex;flex-direction:column;gap:3px;margin:0;min-width:0}.logo-tool-hint strong{font-size:12px;line-height:1.3}.logo-tool-hint small{color:var(--muted);font-size:10.5px;line-height:1.5}.logo-tool-hint a{color:var(--ink);font-weight:700;text-decoration:underline;text-underline-offset:2px;white-space:nowrap}.logo-tool-hint a:hover{color:#4b5a10}.paywall-actions{display:grid;grid-gap:10px;gap:10px;padding:14px;border:1px solid var(--line);border-radius:10px;background:#fff7d7}.paywall-actions p{margin:0;font-size:13px;line-height:1.5}.paywall-actions .button{text-align:center}.generation-progress{margin:0 0 16px;padding:15px;border:1px solid #c9c7bd;border-radius:12px;background:#faf9f4}.generation-progress-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:13px;line-height:1.35}.generation-progress-head strong{font-weight:700}.generation-timer{flex:none;font-family:var(--font-mono);font-size:12px;color:#6d6f66}.generation-bar{position:relative;height:8px;margin:12px 0 10px;border-radius:999px;background:#e8e5da;overflow:hidden}.generation-bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#b7d94a,#8aa62f);transition:width .9s ease}.generation-bar i:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,#ffffff80,transparent);animation:generation-shimmer 1.9s linear infinite}.generation-estimate{margin:0;font-size:12px;font-weight:650}.generation-advice{margin:6px 0 0;font-size:11px;line-height:1.5;color:#6d6f66}.generation-progress-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}.generation-progress-actions .button{padding:10px 12px;font-size:12px}.generation-ready{display:block;margin-top:15px;padding:13px;border-radius:8px;background:var(--acid);color:var(--ink);font-size:13px;font-weight:700;text-align:center;text-decoration:none}.generation-modal-backdrop{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:22px;background:rgba(23,24,18,.62)}.generation-modal{width:min(440px,100%);max-height:min(86vh,720px);overflow:auto;padding:26px;border:1px solid #d8d5ca;border-radius:16px;background:#fff;color:#171812;box-shadow:0 24px 70px rgba(24,25,18,.2);text-align:center}.generation-modal-badge{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#f2f0e6;border:1px solid #d8d5ca;font-size:21px}.generation-modal h2{margin:14px 0 8px;font-size:22px;letter-spacing:-.03em}.generation-modal p{margin:0;font-size:14px;line-height:1.6;color:#4e5048}.generation-modal .generation-modal-note{margin-top:10px;font-size:12px;color:#6d6f66}.generation-modal-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:20px}.generation-modal-actions .button{padding:11px 15px;font-size:13px}@keyframes generation-shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}@media (prefers-reduced-motion:reduce){.generation-bar i:after{animation:none}}@media (max-width:560px){.generation-progress-actions{flex-direction:column}.generation-progress-actions .button{width:100%}.generation-modal-actions{flex-direction:column}}.preprocess-options{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;margin:0 0 15px;padding:12px;border:1px solid var(--line);border-radius:10px}.preprocess-options legend{padding:0 5px;font-size:11px;font-weight:700}.preprocess-options legend span{color:var(--muted);font-weight:400}.preprocess-options>label{display:flex;align-items:center;gap:9px;padding:9px;border:1px solid var(--line);border-radius:8px;cursor:pointer}.preprocess-options input{accent-color:var(--ink)}.preprocess-options label>span{display:flex;min-width:0;flex-direction:column;gap:2px}.preprocess-options b{font-size:11px}.preprocess-options small{color:var(--muted);font-size:9px}.preprocess-options .style-option{grid-column:1/-1;justify-content:space-between}.style-option select{min-width:120px;padding:8px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink)}@media(max-width:560px){.preprocess-options{grid-template-columns:1fr}.preprocess-options .style-option{grid-column:auto}}