/* Shared native controls: visible labels, clear focus, and compact secondary actions. */
.rk-native{--rk-control-border:#dbe4f1;--rk-control-focus:#2356e8}
.rk-native :is(#rk-main-content,.modal-body) .form-control:not([type=file]):not([type=range]){min-height:46px;border-radius:12px;border-color:var(--rk-control-border);background-color:#fcfdff;color:#172a4b;font-size:14px;line-height:1.6;box-shadow:0 1px 2px #14244403;transition:border-color .16s,box-shadow .16s,background-color .16s}
.rk-native :is(#rk-main-content,.modal-body) textarea.form-control{min-height:132px;resize:vertical;padding:13px 15px}
.rk-native :is(#rk-main-content,.modal-body) .form-control:focus{border-color:var(--rk-control-focus);background-color:#fff;box-shadow:0 0 0 3px #2356e812;outline:2px solid transparent;outline-offset:2px}
.rk-native :is(#rk-main-content,.modal-body) .form-control:disabled,.rk-native :is(#rk-main-content,.modal-body) .form-control[readonly]{background-color:#f0f3f8;color:#64748b}
.rk-native :is(#rk-main-content,.modal-body) .form-control.is-invalid,.rk-native :is(#rk-main-content,.modal-body) .has-error .form-control{border-color:#cf4b5b}
.rk-native :is(#rk-main-content,.modal-body) .form-control.is-invalid:focus{box-shadow:0 0 0 3px #cf4b5b18}
.rk-native :is(#rk-main-content,.modal-body) .form-control.is-valid{border-color:#27946f}
.rk-native :is(#rk-main-content,.modal-body) .form-control.is-valid:focus{box-shadow:0 0 0 3px #27946f18}
.rk-native :is(#rk-main-content,.modal-body) .form-control::placeholder{color:#8492a8;opacity:1}
.rk-native :is(#rk-main-content,.modal-body) .form-group>label{color:#4d617d;font-size:13px;line-height:1.65}
.rk-native :is(#rk-main-content,.modal-body) .form-text{font-size:12px;line-height:1.75;margin-top:8px}
.rk-native #rk-main-content .form-group>.control{font-size:12px;color:#738198;line-height:1.8}
.rk-native #rk-main-content .form-group>.control>.form-control{margin-bottom:7px}
/* Keep original checkbox/radio elements and skip widgets managed by iCheck / Bootstrap Switch. */
.rk-native #rk-main-content :is(input[type=checkbox],input[type=radio]):not(.toggle-switch-success):not(.toggle-switch):not(.icheck-input):not([class*=icheck]):not([class*=icheckbox] input):not([class*=iradio] input):not(.bootstrap-switch input){accent-color:#2356e8;width:18px;height:18px;vertical-align:middle}
.rk-native #rk-main-content .controls.form-check{padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px}
.rk-native #rk-main-content .controls.form-check>label{position:relative;padding:14px 14px 14px 40px;border:1px solid #e5ebf4;border-radius:12px;background:#fbfcff;margin:0;font-size:13px;line-height:1.75;cursor:pointer}
.rk-native #rk-main-content .controls.form-check>label:has(input:checked){background:#f5f8ff;border-color:#d8e3fa}
.rk-native #rk-main-content .controls.form-check>label>input[type=checkbox]{position:absolute;left:14px;top:17px;margin:0}
.rk-native #rk-main-content .controls.form-check>br{display:none}
.rk-native #invitePermissions{padding:18px;border:1px solid #e2eaf6;border-radius:14px;background:#f8faff}
.rk-native #invitePermissions label{display:block;padding:10px 8px 10px 28px;margin:0;line-height:1.7;font-size:13px}
.rk-native #invitePermissions .form-check-input{margin-left:-27px;margin-top:2px}
.rk-native #invitePermissions label>.text-muted{display:block;font-size:12px;color:#7a899f!important}
.rk-native #invitePermissions>br{display:none}
.rk-native #rk-main-content input[name=inviteemail]{max-width:560px}
.rk-native #rk-main-content .dataTables_filter input{background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237184a0' stroke-width='1.65' stroke-linecap='round'%3E%3Ccircle cx='10' cy='10' r='6'/%3E%3Cpath d='m15 15 6 6'/%3E%3C/svg%3E") no-repeat 14px center!important;background-size:19px 19px!important;padding:10px 14px 10px 42px!important;min-width:240px}
.rk-native :is(#rk-main-content,.modal) .rk-icon-action{display:inline-flex!important;align-items:center;justify-content:center;vertical-align:middle;min-width:42px!important;width:42px;min-height:42px!important;padding:10px!important;border-radius:12px;position:relative;flex:0 0 auto}
.rk-native .rk-icon-action>svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.rk-native .rk-icon-action>.rk-action-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.rk-native .rk-icon-action:focus-visible{outline:3px solid #2356e84d;outline-offset:3px}
.rk-native .rk-icon-action.disabled,.rk-native .disabled>.rk-icon-action{opacity:.45;cursor:default}
.rk-native .modal .modal-dialog{display:flex;align-items:center;min-height:calc(100vh - 40px);min-height:calc(100dvh - 40px)}
.rk-native .modal .modal-content{width:100%}
.rk-native #modalGeneratePassword .modal-body>.row:last-child .col-sm-8{display:flex;gap:8px}
.rk-native #modalGeneratePassword .modal-title{font-size:20px;line-height:1.5}
.rk-native #inputGeneratePasswordOutput{font-family:ui-monospace,monospace;letter-spacing:.06em}
/* Password form uses a consistent label-above layout, without moving its native form controls. */
.rk-native #rk-main-content[data-rk-page="user-password"] .using-password-strength{max-width:700px}
.rk-native #rk-main-content[data-rk-page="user-password"] .form-group.row{display:block;margin-left:0;margin-right:0}
.rk-native #rk-main-content[data-rk-page="user-password"] .form-group.row>[class*=col-]{max-width:100%;width:100%;padding-left:0;padding-right:0}
.rk-native #rk-main-content[data-rk-page="user-password"] .generate-password{width:auto;margin:12px 0 0;min-height:38px;font-size:13px}
.rk-native #rk-main-content[data-rk-page="user-password"] #passwordStrengthBar{height:4px;margin-top:10px;border-radius:99px}
@media(max-width:767px){
 .rk-native :is(#rk-main-content,.modal-body) .form-control:not([type=file]):not([type=range]){font-size:16px}
 .rk-native #rk-main-content .controls.form-check{grid-template-columns:1fr}
 .rk-native #rk-main-content .dataTables_filter input{min-width:0}
 .rk-native #invitePermissions{padding:12px}
 .rk-native .modal .modal-dialog{min-height:calc(100vh - 20px);min-height:calc(100dvh - 20px)}
 .rk-native #modalGeneratePassword .modal-body>.row:last-child .col-sm-8{padding-top:0}
}
@media(prefers-reduced-motion:reduce){.rk-native :is(#rk-main-content,.modal-body) .form-control{transition:none}}

.rk-native .rk-form-help{margin:-8px 0 22px;color:#627793;font-size:13px}
.rk-native .rk-form-help summary{display:flex;gap:8px;align-items:center;width:fit-content;cursor:pointer;color:#406398;list-style:none;padding:6px 0}
.rk-native .rk-form-help summary::-webkit-details-marker{display:none}
.rk-native .rk-form-help summary::before{content:'?';display:inline-flex;justify-content:center;align-items:center;width:18px;height:18px;border:1px solid #b8cae4;border-radius:50%;font-size:11px;font-weight:600;flex-shrink:0}
.rk-native .rk-form-help summary:focus-visible{outline:2px solid #2356e8;outline-offset:4px;border-radius:4px}
.rk-native .rk-form-help[open]{padding-bottom:4px}
.rk-native .rk-form-help p{margin:8px 0 0;padding:14px 16px;background:#f5f8ff;border-radius:12px;line-height:1.85;max-width:700px}
@media(min-width:992px){.rk-native #invitePermissions{column-count:2;column-gap:24px}.rk-native #invitePermissions label{break-inside:avoid}}
.rk-native #invitePermissions label>span.d-none.d-md-inline{display:none!important}
.rk-native :is(#rk-main-content,.modal-body) .input-group>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}
.rk-native :is(#rk-main-content,.modal-body) .input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}
