*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#f5f7f9;color:#1d2935}.shell{width:min(920px,calc(100% - 32px));margin:0 auto}.hero{padding:56px 0 24px}.eyebrow{font-size:.78rem;font-weight:800;letter-spacing:.12em;margin:0 0 8px;color:#597185}.hero h1{font-size:clamp(2rem,6vw,3.5rem);line-height:1;margin:0 0 16px}.intro{font-size:1.08rem;line-height:1.6;max-width:720px;color:#52606d}.tool-card,.privacy-note{background:white;border-radius:20px;box-shadow:0 10px 30px rgba(0,0,0,.07);padding:28px;margin-bottom:24px}.drop-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:230px;border:2px dashed #aab7c4;border-radius:16px;padding:28px;cursor:pointer;background:#fbfcfd}.drop-zone input{position:absolute;opacity:0;pointer-events:none}.drop-title{font-size:1.3rem;font-weight:750}.drop-subtitle{margin-top:4px;color:#687684}.drop-note{margin-top:12px;font-size:.9rem;color:#7b8794}.editor{margin-top:24px}.preview-wrap{background:#eee;border-radius:14px;overflow:hidden;text-align:center}.preview-wrap img{display:block;max-width:100%;max-height:430px;margin:auto}.selected-file{display:flex;gap:12px;justify-content:space-between;align-items:center;padding:14px 0;flex-wrap:wrap}.text-button,.secondary-button{border:0;background:none;color:#315d7d;font:inherit;font-weight:700;cursor:pointer}.source-info{font-weight:650;margin-bottom:18px}.field{margin-bottom:20px}.field label{display:block;font-weight:750;margin-bottom:8px}.field select{width:100%;padding:12px;border:1px solid #c8d1da;border-radius:10px;background:white;font:inherit}.hint,.result-note{font-size:.9rem;color:#6c7985;margin:7px 0 0}.primary-button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:11px;padding:13px 20px;background:#243746;color:white;text-decoration:none;font:inherit;font-weight:750;cursor:pointer}.primary-button:hover,.primary-button:focus{color:white;text-decoration:none}.secondary-button{display:block;margin:16px auto 0}.secondary-button:hover,.secondary-button:focus{text-decoration:underline}.message.error{padding:12px 14px;border-radius:10px;background:#fff0f0;color:#8d2323;margin:0 0 16px}.working,.result{text-align:center;padding:30px 8px}.working p,.result p{color:#607080}.spinner{width:38px;height:38px;border:4px solid #dfe6eb;border-top-color:#405f76;border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 14px}.working progress{width:min(500px,100%)}.success-mark{margin:0 auto 14px;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#e9f5ed;font-size:1.8rem}.privacy-note p{color:#607080;line-height:1.6}.hidden{display:none!important}@keyframes spin{to{transform:rotate(360deg)}}