.dbg-profile{--profile-navy:#060454;--profile-cyan:#007b91;max-width:900px;margin-inline:auto;color:var(--profile-navy)}
.dbg-profile *{box-sizing:border-box;min-width:0}.dbg-profile-card{background:#fff;border:1px solid #dbe3e9;border-radius:14px;padding:1.25rem}.dbg-profile h1{font-size:clamp(1.5rem,4vw,2rem);margin:0 0 1rem}.dbg-profile h2{font-size:1.3rem;margin:0}.dbg-profile label,.dbg-profile dt{font-weight:600}.dbg-profile input:not([type=checkbox]),.dbg-profile select,.dbg-profile textarea{display:block;width:100%;min-height:44px;border:1px solid #a7b5c5;border-radius:6px;padding:.65rem;font:inherit;color:inherit;background:white;margin:.35rem 0 1rem}.dbg-profile textarea{resize:vertical}.dbg-profile input[type=checkbox]{width:20px;height:20px;margin:0;flex-shrink:0}.dbg-profile-check{display:flex;align-items:center;gap:.65rem;min-height:44px;margin:.5rem 0 1rem}.dbg-profile-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.65rem 1rem;background:var(--profile-navy);border:1px solid var(--profile-navy);border-radius:7px;color:#fff;text-decoration:none;font:inherit;cursor:pointer}.dbg-profile-secondary{color:var(--profile-navy);background:white}.dbg-profile a:hover{color:#fff;background:var(--profile-cyan)}.dbg-profile :is(input,select,textarea,button,a):focus-visible{outline:3px solid #00a3bc;outline-offset:3px}.dbg-profile-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.dbg-profile-actions form{margin:0}.dbg-profile-identity{display:flex;align-items:center;gap:1rem;margin-bottom:1.25rem}.dbg-profile-avatar{display:block;flex:0 0 64px;width:64px;height:64px;max-width:64px;border-radius:50%;object-fit:cover;background:#edf7f9;padding:.5rem}.dbg-profile-avatar svg{width:100%;height:100%}.dbg-profile-details{margin:0}.dbg-profile-details>div{padding:.6rem 0;border-bottom:1px solid #edf1f4}.dbg-profile-details dd{margin:.25rem 0 0;overflow-wrap:anywhere;white-space:normal}.dbg-profile-note{font-size:.9rem;color:#45566a;overflow-wrap:anywhere}.dbg-profile-form{display:grid;grid-template-columns:minmax(0,1fr)}.dbg-profile-login{max-width:520px}.dbg-profile p{overflow-wrap:anywhere}.dbg-profile [hidden]{display:none}
@media(min-width:64rem){.dbg-profile-card{padding:1.75rem}.dbg-profile-form{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1.5rem}.dbg-profile-wide{grid-column:1/-1}}

.dbg-registration details.dbg-profile-actions{display:block;margin-top:1.5rem}.dbg-registration summary{display:flex;align-items:center;min-height:44px;cursor:pointer;overflow-wrap:anywhere}.dbg-registration details form{margin-top:.75rem}.dbg-registration details button{max-width:100%}

.dbg-registration .dbg-field-error{display:block;color:#a31621;font-size:.9rem;line-height:1.4;overflow-wrap:anywhere}
.dbg-registration .dbg-field-error:empty{display:none}
.dbg-registration [aria-invalid="true"]{border-color:#a31621}
.dbg-registration .dbg-registration-summary{border-inline-start:4px solid #a31621;padding:.75rem;background:#fff3f3}
.dbg-registration .dbg-password-requirements{margin-block:.5rem;min-inline-size:0;font-size:.9rem}
.dbg-registration .dbg-password-requirements ul{padding-inline-start:1.25rem}
.dbg-registration .dbg-password-requirements li{margin-block:.3rem;overflow-wrap:anywhere}
.dbg-registration .dbg-policy-result{font-weight:600}
.dbg-registration .dbg-password-strength{display:grid;gap:.75rem;font-size:.9rem;margin-block:1rem}
.dbg-registration .dbg-password-strength[hidden]{display:none}
.dbg-registration .dbg-password-strength progress{inline-size:100%;max-inline-size:100%;height:.75rem;accent-color:var(--strength-color,#45566a);border:0;border-radius:6px;overflow:hidden;background:#e5ebef}
.dbg-registration .dbg-password-strength progress::-webkit-progress-bar{background:#e5ebef;border-radius:6px}
.dbg-registration .dbg-password-strength progress::-webkit-progress-value{background:var(--strength-color,#45566a);border-radius:6px}
.dbg-registration .dbg-password-strength progress::-moz-progress-bar{background:var(--strength-color,#45566a);border-radius:6px}
.dbg-registration [data-strength="1"]{--strength-color:#981b28}
.dbg-registration [data-strength="2"]{--strength-color:#9a4700}
.dbg-registration [data-strength="3"]{--strength-color:#627200}
.dbg-registration [data-strength="4"]{--strength-color:#146135}
.dbg-registration .dbg-password-strength p{margin:0;font-size:.85rem}

/* Registration-only states override the more specific shared input rules. */
.dbg-profile.dbg-registration .dbg-field-error{color:#981b28;font-weight:600;margin-block:.25rem .8rem}
.dbg-profile.dbg-registration .dbg-profile-field [aria-invalid="true"]{border-color:#981b28}
.dbg-profile.dbg-registration .dbg-profile-field :is(input,select)[aria-invalid="true"]{border-color:#981b28;margin-bottom:.25rem}
.dbg-profile.dbg-registration .dbg-profile-field :is(input,select)[aria-invalid="true"]:focus-visible{outline-color:#981b28}
.dbg-registration .dbg-password-requirements summary{list-style:none;gap:.5rem;padding:.4rem .2rem;min-height:44px}
.dbg-registration .dbg-password-requirements summary::-webkit-details-marker{display:none}
.dbg-registration .dbg-password-requirements summary::after{content:"▾"}
.dbg-registration .dbg-password-requirements[open] summary::after{content:"▴"}
.dbg-registration .dbg-password-requirements summary:focus-visible{outline:3px solid #007b91;outline-offset:2px}
.dbg-registration .dbg-password-requirements ul{list-style:none;padding:0}
.dbg-registration .dbg-password-requirements li{display:flex;flex-wrap:wrap;gap:.3rem .65rem}
.dbg-registration .dbg-policy-result{color:#45566a}
.dbg-registration [data-met="true"] .dbg-policy-result{color:#146135}
.dbg-registration .dbg-privacy-dialog{width:min(900px,calc(100vw - 48px));max-width:calc(100% - 32px);height:80vh;height:80dvh;max-height:80vh;max-height:80dvh;padding:1rem;border:1px solid #a7b5c5;border-radius:12px;color:#060454;background:#fff;overflow:hidden}
.dbg-registration .dbg-privacy-dialog[open]{display:flex;flex-direction:column}
.dbg-registration .dbg-privacy-dialog::backdrop{background:rgb(6 4 84 / .45)}
.dbg-registration .dbg-privacy-dialog-header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:.75rem;padding-bottom:.75rem;background:#fff}
.dbg-registration .dbg-privacy-dialog-header h2{font-size:1.1rem}
.dbg-registration .dbg-privacy-dialog button{min-width:44px;min-height:44px;background:#060454;color:white;border:0;border-radius:6px;padding:.6rem;cursor:pointer}
.dbg-registration .dbg-privacy-dialog iframe{display:block;flex:1;width:100%;min-height:0;border:0}
.dbg-registration .dbg-password-input{position:relative;margin:.35rem 0 1rem}
.dbg-profile.dbg-registration .dbg-password-input input{padding-inline-end:3.25rem;margin:0}
.dbg-registration .dbg-password-toggle{position:absolute;inset-inline-end:1px;top:1px;width:44px;height:44px;padding:10px;border:0;border-radius:5px;background:transparent;color:#060454;cursor:pointer}
.dbg-registration .dbg-password-toggle svg{display:block;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7}
.dbg-registration .dbg-password-toggle .dbg-eye-slash{display:none}
.dbg-registration .dbg-password-toggle[aria-pressed="true"] .dbg-eye-slash{display:block}
@media(max-width:1199px){.dbg-registration .dbg-privacy-dialog{width:calc(100vw - 32px);height:min(85vh,calc(100vh - 112px));height:min(85dvh,calc(100dvh - 112px));max-height:calc(100vh - 112px);max-height:calc(100dvh - 112px);margin:16px auto 96px}}

/* Own-profile presentation and media; registration styles above remain unchanged. */
.dbg-profile-page .dbg-profile-card{padding:0;overflow:hidden}
.dbg-profile-body{padding:1.25rem}
.dbg-profile-cover{aspect-ratio:3/1;width:100%;overflow:hidden;background:linear-gradient(115deg,#060454,#007b91);border-radius:10px}
.dbg-profile-page .dbg-profile-cover{border-radius:0}
.dbg-profile-cover img{display:block;width:100%;height:100%;object-fit:cover}
.dbg-profile .dbg-profile-avatar{display:grid;place-items:center;width:112px;height:112px;flex:0 0 112px;max-width:112px;padding:0;overflow:hidden;background:#060454;color:#fff;border-radius:50%}
.dbg-profile-avatar img{display:block;width:100%;height:100%;object-fit:cover}
.dbg-profile-initials{display:grid;place-items:center;width:100%;height:100%;font-size:2.25rem;font-weight:700}
.dbg-profile-initials svg{width:54px;height:54px}
.dbg-profile-identity h2{overflow-wrap:anywhere}
.dbg-profile-review{padding:1rem;margin-block:1rem;background:#edf7f9;border-radius:8px}
.dbg-profile-review h3{margin:0 0 .5rem}
.dbg-profile-confirm{margin-block:1rem}
.dbg-profile-media{margin-block:1.5rem;padding-block:1rem;border-block:1px solid #dbe3e9}
.dbg-profile-media-grid{display:grid;gap:1.5rem;grid-template-columns:minmax(0,1fr)}
.dbg-profile-media-grid h3{font-size:1.05rem;margin:0 0 .75rem}
.dbg-profile-media-grid .dbg-profile-cover{max-width:100%}
.dbg-profile-crop-dialog{width:min(900px,calc(100vw - 48px));max-width:calc(100% - 32px);height:80vh;height:80dvh;max-height:80dvh;padding:1rem;background:#fff;color:#060454;border:1px solid #a7b5c5;border-radius:12px;overflow:hidden}
.dbg-profile-crop-dialog[open]{display:flex;flex-direction:column;gap:.65rem}
.dbg-profile-crop-dialog::backdrop{background:rgb(6 4 84 / .45)}
.dbg-profile-crop-dialog header{display:flex;flex:0 0 auto;justify-content:space-between;align-items:center;gap:.75rem}
.dbg-profile-crop-dialog h2{font-size:1.15rem;overflow-wrap:anywhere}
.dbg-profile-crop-dialog input[type=file]{margin:.35rem 0 0;font-size:.9rem}
.dbg-crop-preview{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#edf1f4;border-radius:8px}
.dbg-crop-preview canvas{display:block;width:auto;height:auto;max-width:100%;max-height:100%;touch-action:none;cursor:grab}
.dbg-profile-crop-dialog[data-kind=avatar] canvas{border-radius:50%}
.dbg-crop-controls{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.2rem .75rem;align-items:center;flex:0 0 auto}
.dbg-profile-crop-dialog .dbg-crop-controls input[type=range]{margin:0;min-height:44px;padding:0;border:0;accent-color:#007b91}
.dbg-profile-crop-dialog footer{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:.75rem;background:white}
.dbg-profile-crop-dialog [data-crop-status]{font-size:.9rem;margin:0;color:#981b28}
.dbg-profile-media button:disabled{opacity:.55;cursor:not-allowed}
@media(min-width:64rem){.dbg-profile-body{padding:1.75rem}.dbg-profile-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1199px){.dbg-profile-crop-dialog{width:min(900px,calc(100vw - 32px));height:min(85vh,calc(100vh - 112px));height:min(85dvh,calc(100dvh - 112px));max-height:calc(100dvh - 112px);margin:16px auto 96px}}
@media(max-width:430px){.dbg-profile .dbg-profile-avatar{width:96px;height:96px;flex-basis:96px}.dbg-profile-identity{gap:.75rem}.dbg-profile-identity h2{font-size:1.2rem}.dbg-profile-crop-dialog h2{font-size:1rem}.dbg-profile-crop-dialog{gap:.4rem}}

/* Alleen de geopende cropfallback; gesloten pagina-scroll blijft native. */
.dbg-profile-crop-dialog:not([open]){display:none}
.dbg-profile-crop-overlay{--profile-navy:#060454;--profile-cyan:#007b91;position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:16px;background:rgb(6 4 84 / .45)}
.dbg-profile-crop-overlay .dbg-profile-crop-dialog[data-fallback]{position:relative;inset:auto;margin:0;max-width:100%;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px)}
@media(max-width:1199px){.dbg-profile-crop-overlay{padding-bottom:96px}.dbg-profile-crop-overlay .dbg-profile-crop-dialog[data-fallback]{max-height:calc(100vh - 112px);max-height:calc(100dvh - 112px)}}
