/* Domaintechnik TLD-Vormerkung – Formular */
.form-tld{--tld-blue:#1462c5;--tld-blue-hover:#094b9f;--tld-glow:rgba(20,98,197,.15);--tld-line:#d6dbe1;--tld-red:#d63638;max-width:620px}
.form-tld [hidden]{display:none!important}
.form-tld *,.form-tld *::before,.form-tld *::after{box-sizing:border-box}
.form-tld input,.form-tld textarea,.form-tld button{font-family:inherit}

/* Steps */
.form-tld .tld-step{border:0;margin:0 0 48px;padding:0;min-width:0}
.form-tld .tld-step legend{display:block;width:100%;float:none;margin:0;padding:0 0 12px;font-size:1.35em;font-weight:500;line-height:1.3;color:inherit}
.form-tld .tld-step legend .tld-hint{font-weight:400}
.form-tld .tld-hint{color:#8a8a8a}
.form-tld .tld-field{margin:0 0 12px}
.form-tld .tld-step .tld-field:last-child{margin-bottom:0}
.form-tld .tld-label{display:block;margin:0 0 6px;color:#333}
.form-tld .tld-sr,.form-tld .tld-hp{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Inputs */
.form-tld .tld-form .tld-input{display:block;width:100%;margin:0;border:1px solid var(--tld-line);border-radius:999px;padding:18px 28px!important;font-size:1.05em;line-height:1.5;background:#fff;color:#222;box-shadow:none;transition:border-color .15s,box-shadow .15s}
.form-tld .tld-form textarea.tld-input{border-radius:24px;height:120px;min-height:120px;resize:vertical}
.form-tld .tld-form .tld-input::placeholder{color:#8a8a8a;opacity:1}
.form-tld .tld-form .tld-input:focus{outline:none!important;border-color:var(--tld-blue)!important;box-shadow:0 0 0 3px var(--tld-glow)!important}
.form-tld .tld-form .tld-input[aria-invalid="true"]{border-color:var(--tld-red)}

/* TLD pills */
.form-tld .tld-pills{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 16px}
.form-tld .tld-pill{position:relative;margin:0;cursor:pointer}
.form-tld .tld-pill input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.form-tld .tld-pill span{display:inline-block;padding:12px 26px;border:1px solid var(--tld-line);border-radius:999px;background:#fff;color:#333;font-size:1.05em;line-height:1.4;transition:all .15s}
.form-tld .tld-pill:hover span{border-color:var(--tld-blue)}
.form-tld .tld-pill input:checked+span{background:#eaf2fd;border-color:var(--tld-blue);color:var(--tld-blue)}
.form-tld .tld-pill input:focus-visible+span{box-shadow:0 0 0 3px var(--tld-glow)}
.form-tld .tld-pills.is-invalid .tld-pill span{border-color:var(--tld-red)}

/* Domain preview */
.form-tld .tld-preview{margin:10px 0 0 28px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.95em;color:#666;line-height:1.8}
.form-tld .tld-preview strong{color:var(--tld-blue)}
.form-tld .tld-dom{white-space:nowrap}

/* Errors & status */
.form-tld .tld-error{margin:6px 0 0 28px;color:var(--tld-red);font-size:.9em;line-height:1.5}
.form-tld .tld-error--group{margin:-6px 0 14px 0}
.form-tld .tld-status:empty{display:none}
.form-tld .tld-status{margin:0 0 16px;padding:14px 18px;border-radius:12px;background:#fcf0f1;color:#8a1f22;font-size:.95em;line-height:1.5}

/* Consent */
.form-tld .tld-consent{margin:0 0 16px}
.form-tld .tld-check{display:flex;gap:14px;align-items:flex-start;margin:0;color:#444;font-size:.9em;line-height:1.6;cursor:pointer}
.form-tld .tld-check a{color:var(--tld-blue);text-decoration:underline}
.form-tld .tld-check input{-webkit-appearance:none;appearance:none;flex:none;width:20px;height:20px;margin:2px 0 0;padding:0;border:1.5px solid #b8bfc8;border-radius:4px;background:#fff center/14px no-repeat;cursor:pointer;transition:all .15s}
.form-tld .tld-check input:hover{border-color:var(--tld-blue)}
.form-tld .tld-check input:focus-visible{outline:none;border-color:var(--tld-blue);box-shadow:0 0 0 3px var(--tld-glow)}
.form-tld .tld-check input[aria-invalid="true"]{border-color:var(--tld-red)}
.form-tld .tld-check input:checked{background-color:var(--tld-blue);border-color:var(--tld-blue);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5l3 3 6-7' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.form-tld .tld-consent .tld-error{margin-left:34px}

/* Notice & submit */
.form-tld .tld-hinweis{margin:0 0 24px;padding:16px 18px;border-radius:12px;background:#f1f1f1;color:#555;font-size:.9em;line-height:1.6}
.form-tld .tld-submit{display:inline-block;margin:0 0 32px;padding:16px 38px;border:0;border-radius:999px;background:var(--tld-blue)!important;color:#fff!important;font-size:1.05em;font-weight:400;line-height:1.4;cursor:pointer;transition:background-color .15s}
.form-tld .tld-submit:hover,.form-tld .tld-submit:focus-visible{background:var(--tld-blue-hover)!important}
.form-tld .tld-submit:focus-visible{outline:none;box-shadow:0 0 0 3px var(--tld-glow)}
.form-tld .tld-submit:disabled{opacity:.7;cursor:wait}

/* Success */
.form-tld .tld-success{padding:24px 28px;border-radius:16px;background:#eaf2fd;color:#0b3d7a;font-size:1.05em;line-height:1.6;outline:none}
.form-tld .tld-success strong{display:block;margin-bottom:4px;font-size:1.2em;font-weight:500}
