.download-modal{width:min(562px,calc(100% - 16px));max-height:calc(100dvh - 16px);padding:0;margin:auto;overflow:auto;border:0;border-radius:16px;background:var(--nclear-v2-surface-window);color:var(--nclear-v2-content-primary);box-shadow:0 18px 44px rgb(0 0 0 / .4)}
.download-modal::backdrop{background:rgb(3 8 10 / .76);backdrop-filter:blur(8px)}
.download-modal-panel{position:relative;padding:24px;text-align:center}
.download-modal button{cursor:pointer}
.download-modal-close{position:absolute;top:8px;right:8px;width:32px;height:32px;padding:0;border:1px solid transparent;border-radius:8px;background:none;color:var(--nclear-v2-content-tertiary);font-size:22px}
.download-modal-close:hover{border-color:var(--nclear-v2-border-subtle);color:var(--nclear-v2-content-primary)}
.download-form{display:flex;flex-direction:column;gap:24px;margin:0;padding:0;border:0;border-radius:0;background:none}
.download-heading h2{margin:0;padding:8px;font-size:36px;line-height:1.2}
.download-heading p{margin:0;padding:8px;font-size:15px}
.download-fields{display:grid;grid-template-columns:259px minmax(0,1fr);gap:8px;align-items:end}
.download-form[data-pwyw-enabled="false"] .download-fields{grid-template-columns:259px;justify-content:center}
.download-form label.download-email{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:8px;color:var(--nclear-v2-content-tertiary);font-size:12px;text-align:left}
.download-modal .download-email input[type="email"]{width:100%;height:36px;min-height:36px;padding:8px;border:1px solid var(--nclear-v2-graph-secondary);border-radius:8px;background:var(--nclear-v2-surface-panel);color:var(--nclear-v2-content-primary);color-scheme:normal;font-size:15px}
.download-modal .download-email input[type="email"]:focus{border-color:var(--nclear-v2-accent-cyan-default);background:var(--nclear-v2-surface-panel);box-shadow:none}
.download-email input[aria-invalid="true"],.download-custom-price:has(input[aria-invalid="true"]){border-color:var(--nclear-v2-accent-red-default)}
.download-price{min-width:0;margin:0;padding:0;border:0}
.download-price[hidden]{display:none}
.download-price legend{margin-bottom:8px;color:var(--nclear-v2-content-tertiary);font-size:12px;text-align:left;white-space:nowrap}
.download-price-row{display:flex;align-items:center;gap:8px}
.download-form label.download-custom-price{display:flex;width:64px;height:36px;flex:0 0 64px;align-items:center;justify-content:center;gap:4px;border:1px solid var(--nclear-v2-graph-secondary);border-radius:8px;background:var(--nclear-v2-surface-panel);font-size:15px}
.download-custom-price input{width:28px;min-width:0;padding:0;border:0;outline:0;background:none;color:inherit;font-size:15px;text-align:center}
.download-price-row button{width:36px;height:36px;padding:0;border:1px dashed var(--nclear-v2-accent-cyan-default);border-radius:8px;background:none;color:inherit;font-size:12px}
.download-price-row button:hover,.download-price-row button[aria-pressed="true"]{border-style:solid;background:var(--nclear-v2-surface-panel)}
.download-consent-actions{display:flex;flex-direction:column;align-items:center;gap:4px}
.download-consent-primary{width:299px;max-width:100%;min-height:54px;padding:12px 8px;border:1px solid var(--nclear-v2-accent-cyan-default);border-radius:8px;background:var(--nclear-v2-action-primary-bg-default);color:var(--nclear-v2-action-primary-content);font-size:16px;font-weight:700}
.download-consent-secondary{width:299px;max-width:100%;min-height:36px;padding:8px;border:0;background:none;color:var(--nclear-v2-accent-cyan-default);font-size:15px}
.download-consent-secondary:hover{text-decoration:underline;text-underline-offset:4px}
.download-consent-copy{max-width:483px;margin:0 auto;color:var(--nclear-v2-content-tertiary);font-size:15px}
.download-consent-copy a{color:var(--nclear-v2-accent-cyan-default);text-decoration:underline}
.download-status{margin:0;color:var(--nclear-v2-content-tertiary);font-size:13px}
.download-status:empty{display:none}
.download-status[data-state="error"]{color:var(--nclear-v2-accent-red-default)}
.download-modal :focus-visible{outline:2px solid var(--nclear-v2-accent-cyan-default);outline-offset:2px}
.download-modal .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:640px){.download-heading h2{padding-inline:24px;font-size:30px}.download-fields{grid-template-columns:1fr;gap:16px}.download-price legend{white-space:normal}.download-price-row{flex-wrap:wrap;justify-content:center}.download-consent-primary,.download-consent-secondary{width:100%}}
