:root{font-family:system-ui,sans-serif;color:#392c43;background:#faf7fc;line-height:1.6}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0}header,main,footer{max-width:780px;margin:auto;padding:24px}header{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid #e4d9ed}header a{font-family:Georgia,serif;font-size:23px;text-decoration:none}header span,footer,.privacy{font-size:13px;color:#76647f}a{color:#694d86}h1,h2{font-family:Georgia,serif;line-height:1.2}h1{font-size:36px;margin:8px 0 16px}h2{font-size:25px;margin:8px 0}.eyebrow{font-size:11px;font-weight:750;letter-spacing:.15em;color:#80638f;margin:0}.card{border:1px solid #e5d9ed;background:white;border-radius:18px;padding:24px;margin:20px 0;box-shadow:0 6px 24px #392c4305}.design-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}#price{font-size:29px}#priceTerms,#fileState,#dimensions{font-size:14px;color:#76647f}#steps{padding:0;display:grid;grid-template-columns:repeat(4,1fr);list-style:none;font-size:13px;gap:8px;margin:28px 0}#steps li{border-top:4px solid #e7dfee;padding-top:10px}#steps li.active{border-color:#81619b;font-weight:700;color:#523367}.actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}button,.actions a{display:inline-flex;align-items:center;justify-content:center;background:#76518d;color:white;border:1px solid #76518d;border-radius:10px;padding:12px 18px;text-decoration:none;font:inherit;font-size:14px;cursor:pointer;min-height:46px}button:disabled{opacity:.55;cursor:wait}.secondary{background:white;color:#694d86}textarea{display:block;width:100%;margin:8px 0 12px;border:1px solid #cdbbd9;border-radius:10px;padding:12px;font:inherit;resize:vertical}summary{cursor:pointer;color:#694d86}#notice{color:#694d86}#messages article{padding:12px 16px;background:#f5eef9;border-radius:12px;margin-bottom:12px}#messages article p,#special{white-space:pre-wrap;overflow-wrap:anywhere}#messages small{color:#76647f}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #ba93d0;outline-offset:3px}@media(max-width:520px){header,main,footer{padding:20px}header span{display:none}.card{padding:18px}#steps{font-size:11px;gap:6px}.actions>*{width:100%}.design-heading{align-items:flex-start}h1{font-size:30px}}

.reference-image{display:block;max-width:100%;max-height:420px;height:auto;object-fit:contain;border-radius:12px;margin:16px 0}.message-text{white-space:pre-wrap;overflow-wrap:anywhere}
