.rd-role-panel { width: 100%; }
.rd-role-panel .rd-role-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin: 22px 0; }
.rd-role-panel .rd-role-choice { display: flex; flex-direction: column; min-width: 0; text-align: center; }
.rd-role-panel .rd-role-card { display: flex; flex: 1; flex-direction: column; align-items: stretch; width: 100%; margin: 0; padding: 0; overflow: hidden; border: 2px solid #155ee8; border-radius: 10px; background: #fff; color: #000; box-shadow: 0 4px 15px rgba(16, 45, 78, .07); font-family: inherit; cursor: pointer; text-align: center; }
.rd-role-panel .rd-role-card:hover { border-color: #155ee8; }
.rd-role-panel .rd-role-card.login-btn_active { border: 2px solid #155ee8; background: #f8fbff; }
.rd-role-panel .rd-role-heading { display: block; padding: 20px 12px 15px; }
.rd-role-panel .rd-role-prefix { display: block; color: #000; font-size: 17px; font-weight: 600; }
.rd-role-panel .rd-role-name { display: block; margin-top: 2px; color: #064dd9; font-size: 29px; font-weight: 700; line-height: 1.25; }
.rd-role-panel .rd-role-photo { display: block; width: 100%; height: 190px; aspect-ratio: 2 / 1; background: #edf5fd; object-fit: cover; }
.rd-role-panel .rd-role-description { display: block; flex: 1; padding: 18px 17px 12px; color: #000; font-size: 15px; line-height: 1.5; }
.rd-role-panel .rd-role-action { display: block; margin: 8px 18px 20px; padding: 11px 12px; border-radius: 24px; background: #064dd9; color: #fff; font-size: 14px; font-weight: 600; line-height: 1.35; }
.rd-role-panel .rd-role-card.login-btn_active .rd-role-action { background: #133c80; }
.rd-role-panel .rd-role-more { display: inline-block; margin: 12px 2px 4px; color: #064dd9; font-size: 14px; line-height: 1.4; text-decoration: underline; }
.rd-role-panel .rd-registration-note { margin: 20px auto; color: #000; font-size: 15px; line-height: 1.6; text-align: center; }
@media (max-width: 700px) { .rd-role-panel .rd-role-grid { grid-template-columns: 1fr; gap: 22px; } .rd-role-panel .rd-role-photo { max-height: 210px; } }

.rd-role-panel .rd-role-card:focus-visible { outline: 3px solid #ee9b21; outline-offset: 3px; }
.rd-role-panel .rd-role-options { margin: 20px 0; }

.rd-role-panel .rd-role-heading { background:#fff; }
.rd-role-panel .rd-role-card.login-btn_active { box-shadow:0 0 0 3px #99baff; }
.rd-role-panel .rd-role-more { align-self:center; padding:8px 24px; border-radius:24px; background:#075ce6; color:#fff; text-decoration:none; font-weight:700; }
.rd-role-panel .rd-role-more:hover { background:#0344ad; }
.rd-role-panel .rd-requirement-preview { border:2px solid #075ce6; border-radius:8px; background:#edf5ff; padding:16px 20px; color:#000; font-size:15px; }
.rd-role-panel .rd-requirement-preview ul { padding-left:22px; margin:8px 0 0; }
.rd-role-panel [hidden] { display:none !important; }
#step1_submit_button:disabled { background:#e6e9ed; color:#000; cursor:not-allowed; }
#register_div_content:has(.rd-role-grid) { width:calc(100% - 40px); max-width:1080px; }
@media (max-width:700px) { #register_div_content:has(.rd-role-grid) { width:calc(100% - 24px); } }

#register_div_content .rd-role-card { text-decoration:none; }
#register_div_content .login__form.rd-role-panel { width:auto; }
#register_div_content .rd-role-intro { margin:0; text-align:center; font-size:15px; color:#000; }
#register_div_content:has(.rd-business-details) { width:calc(100% - 40px); max-width:820px; margin-bottom:120px; }
#register_div_content .rd-business-details { text-align:left; }
#register_div_content .rd-business-back { display:inline-block; margin:0 0 18px; color:#064dd9; font-size:15px; font-weight:600; }
#register_div_content .rd-business-details .login__form-title { margin:0 0 20px; text-align:left; }
#register_div_content .rd-category-options { min-width:0; margin:0 0 20px; padding:0; border:0; }
#register_div_content .rd-category-options legend { margin:0 0 12px; border:0; font-size:17px; color:#000; }
#register_div_content .rd-category-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
#register_div_content .rd-category-option { display:flex; align-items:center; gap:10px; min-width:0; min-height:52px; margin:0; padding:12px; border:2px solid #000; border-radius:8px; background:#fff; color:#000; font-size:15px; font-weight:400; line-height:1.35; cursor:pointer; }
#register_div_content .rd-category-option input { flex:none; width:17px; height:17px; margin:0; accent-color:#075ce6; }
#register_div_content .rd-category-option span { min-width:0; overflow-wrap:anywhere; }
#register_div_content .rd-category-option:has(input:checked) { border-color:#075ce6; background:#edf5ff; }
#register_div_content .rd-category-option:focus-within { outline:3px solid #ee9b21; outline-offset:2px; }
#register_div_content .rd-business-details .rd-registration-note { margin:16px 0 0; font-size:14px; text-align:left; }
#register_div_content .rd-registration-actions { position:fixed; left:0; right:0; bottom:0; z-index:1020; margin:0; padding:10px 20px calc(12px + env(safe-area-inset-bottom)); border-top:1px solid #000; background:#fff; box-shadow:0 -3px 16px rgba(16,45,78,.1); }
#register_div_content .rd-registration-actions-inner { width:100%; max-width:740px; margin:0 auto; }
#register_div_content .rd-registration-status { margin:0 0 8px; color:#000; font-size:14px; line-height:1.35; }
#register_div_content .rd-registration-action-buttons { display:flex; align-items:center; justify-content:space-between; gap:16px; }
#register_div_content .rd-registration-change { color:#064dd9; font-size:14px; line-height:1.35; }
#register_div_content .rd-registration-next { flex:none; min-width:150px; min-height:46px; margin:0; padding:12px 22px; border:0; border-radius:24px; background:#075ce6; color:#fff; font-family:inherit; font-size:16px; font-weight:700; line-height:1.35; cursor:pointer; }
#register_div_content .rd-registration-next:hover:not(:disabled) { background:#0344ad; }
#register_div_content .rd-registration-next:focus-visible, #register_div_content .rd-business-back:focus-visible, #register_div_content .rd-registration-change:focus-visible { outline:3px solid #ee9b21; outline-offset:3px; }
#register_div_content .rd-registration-next:disabled { background:#e6e9ed; color:#000; cursor:not-allowed; }
@media (max-width:700px) {
    #register_div_content:has(.rd-business-details) { width:calc(100% - 24px); margin-bottom:140px; }
    #register_div_content .rd-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
    #register_div_content .rd-category-option { gap:8px; padding:10px; font-size:14px; }
    #register_div_content .rd-registration-actions { padding-left:12px; padding-right:12px; }
    #register_div_content .rd-registration-action-buttons { gap:12px; }
    #register_div_content .rd-registration-next { min-width:130px; padding:12px 16px; }
}
@media (max-width:360px) {
    #register_div_content .rd-category-option { gap:6px; padding:8px 6px; font-size:13px; }
    #register_div_content .rd-category-option input { width:15px; height:15px; }
}
