.ethics-page{max-width:960px;margin:28px auto;padding:0 20px;color:#334155}.ethics-head{margin-bottom:28px}.ethics-kicker{font-size:11px;font-weight:700;letter-spacing:1.2px;color:#507191}.ethics-head h1{font-size:30px;line-height:1.3;color:#21446e;font-weight:700;margin:12px 0}.ethics-head p{color:#64748b}.ethics-intro,.ethics-form-card{background:#fff;border:1px solid #e1e8f0;border-radius:16px;padding:32px;margin-bottom:24px;box-shadow:0 5px 20px rgba(25,45,70,.035)}.ethics-intro{border-left:4px solid #21446e}.ethics-intro p{font-size:15px;line-height:1.85;margin:0 0 18px}.ethics-intro p:last-child{margin:0}.ethics-form-card h2{color:#21446e;font-size:23px;margin:0 0 12px;font-weight:700}.ethics-required{color:#64748b;font-size:12px;margin-bottom:28px}.ethics-field{margin:0 0 26px}.ethics-field label{display:block;font-size:14px;font-weight:600;color:#334155;margin-bottom:10px}.ethics-field label span{color:#a33d39}.ethics-field .form-control{border:1px solid #ced8e3;border-radius:8px;padding:12px;min-height:46px;box-shadow:none}.ethics-field textarea.form-control{height:auto;resize:vertical}.ethics-field .form-control:focus{border-color:#3c8dbc;outline:2px solid #d7e9f6;outline-offset:1px}.ethics-field .help-block{color:#a33d39;font-size:13px}.ethics-upload{padding:22px;background:#f8fafc;border:1px dashed #bacadc;border-radius:12px}.ethics-upload p{font-size:13px}.ethics-file-hint{color:#64748b}.ethics-actions{border-top:1px solid #e6ebf1;padding-top:24px}.ethics-actions p{font-size:12px;color:#64748b;margin:12px 0 0}.ethics-submit{background:#21446e;color:#fff;border:0;border-radius:8px;min-height:46px;padding:12px 24px;font-weight:600;cursor:pointer}.ethics-submit:hover{background:#1a3555}.ethics-submit:focus-visible{outline:3px solid #8cb9dc;outline-offset:3px}.ethics-receipt{background:#eef6f1;border:1px solid #c8dfcf;border-radius:12px;padding:24px;margin-bottom:24px}.ethics-receipt h2{font-size:21px;color:#254e39;margin:0 0 12px}.ethics-receipt strong{overflow-wrap:anywhere}@media(max-width:640px){.ethics-page{padding:0 12px}.ethics-head h1{font-size:25px}.ethics-intro,.ethics-form-card{padding:22px 18px}.ethics-submit{width:100%}.ethics-upload{padding:16px}}

/* Own dimensions and typography; do not rely on Bootstrap from the parent layout. */
.ethics-page,.ethics-page *{box-sizing:border-box}
.ethics-page{width:100%;font-family:inherit}
.ethics-page .ethics-field .form-control{display:block;width:100%;max-width:100%;height:auto;background:#fff;color:#24364b;font-family:inherit;font-size:15px;line-height:1.5}
.ethics-page .ethics-field input[readonly]{background:#f1f5f9;border-color:#d9e2ec;color:#475569}
.ethics-page .ethics-field textarea{min-height:160px}
.ethics-page .ethics-field input[type=file]{padding:12px;white-space:normal;overflow:hidden}
.ethics-page .ethics-field input[type=file]::file-selector-button{padding:8px 12px;margin-right:12px;border:1px solid #bacadc;border-radius:6px;background:#edf3f9;color:#21446e;cursor:pointer}
.ethics-page .ethics-submit:disabled{background:#68788a;cursor:not-allowed}
.ethics-page .error-summary{padding:16px;border:1px solid #efc1bd;border-radius:8px;background:#fff4f3;color:#8a302a;margin-bottom:24px}
.ethics-page .ethics-field img{max-width:100%;height:auto}
@media(max-width:640px){.ethics-page{margin:18px auto}.ethics-page .ethics-intro p{font-size:14px;line-height:1.7}.ethics-page .ethics-field label{line-height:1.5}.ethics-page .ethics-field .form-control{font-size:16px}}

/* Keep the form coherent in both member and administration layouts. */
.ethics-page .ethics-head{display:block;position:static;padding:0;background:transparent;border:0}
.ethics-page .ethics-head h1{letter-spacing:-.5px;overflow-wrap:break-word}
.ethics-page .ethics-form-card{display:block;min-width:0}
.ethics-page .ethics-form-card form{display:block;width:100%;margin:0;padding:0}
.ethics-page .ethics-field{display:block;width:100%;min-width:0;text-align:left}
.ethics-page .ethics-field label{float:none;width:auto;height:auto;padding:0;line-height:1.5;white-space:normal;text-transform:none}
.ethics-page .ethics-field .form-control{float:none;margin:0;opacity:1;visibility:visible}
.ethics-page .ethics-form-card h2{line-height:1.4}
.ethics-page .ethics-captcha{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.ethics-page .ethics-captcha-image{flex:0 0 auto;border:1px solid #dce5ee;border-radius:8px;background:#fff;padding:8px}
.ethics-page .ethics-captcha-image img{display:block;cursor:pointer}
.ethics-page .ethics-captcha-input{flex:1 1 180px;max-width:320px}
.ethics-page .ethics-actions{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.ethics-page .ethics-actions p{margin:0;line-height:1.6}
@media(max-width:640px){.ethics-page .ethics-captcha-input{max-width:none}.ethics-page .ethics-actions{align-items:stretch}.ethics-page .ethics-head h1{font-size:24px}}

/* Legacy portal styles float every paragraph; keep these cards in normal flow. */
.ethics-page p{float:none;width:auto;max-width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.7}
.ethics-page h1,.ethics-page h2,.ethics-page label{overflow-wrap:anywhere;max-width:100%}
.ethics-page .ethics-intro,.ethics-page .ethics-form-card,.ethics-page .ethics-receipt{display:flow-root;height:auto;min-width:0}
.ethics-page .ethics-confirmation{background:#fff;border:1px solid #dbe5ef;border-top:4px solid #21446e;border-radius:16px;padding:32px;text-align:left}
.ethics-page .ethics-confirmation-mark{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:#e9f5ec;color:#286641;font-size:26px;margin-bottom:18px}
.ethics-page .ethics-confirmation h2{font-size:24px;line-height:1.4;color:#21446e;margin-bottom:16px}
.ethics-page .ethics-confirmation p{margin:0 0 18px}
.ethics-page .ethics-reference{font-family:monospace;font-size:16px;font-weight:600;overflow-wrap:anywhere;white-space:normal;background:#f3f6fa;border:1px solid #dce5ef;border-radius:8px;padding:14px 16px;margin-bottom:22px;color:#21446e}
.ethics-page .ethics-confirmation-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.ethics-page .ethics-confirmation-actions a{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;line-height:1.5}
.ethics-page .ethics-secondary{border:1px solid #c6d3e1;border-radius:8px;color:#21446e;padding:12px 24px;font-weight:600;min-height:46px;background:#fff}
.ethics-page .ethics-secondary:focus-visible{outline:3px solid #8cb9dc;outline-offset:3px}
@media(max-width:640px){.ethics-page .ethics-confirmation{padding:24px 18px}.ethics-page .ethics-confirmation-actions{flex-direction:column}.ethics-page .ethics-confirmation-actions a{width:100%}.ethics-page .ethics-reference{font-size:14px}}

.ethics-page .ethics-delivery-pending{padding:16px;border:1px solid #e6cb93;border-radius:8px;background:#fff8e9;color:#71531d;line-height:1.7;overflow-wrap:anywhere;margin-bottom:22px}
