/* Access control: styles intentionally scoped to this page. */
.wbls-access-page.wrap.wbls-content{--access-blue:#3c50f5;--access-ink:#17264b;--access-muted:#63708a;color:var(--access-ink)}
.wbls-access-page *{box-sizing:border-box}
.wbls-access-card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 24px;
    padding-bottom: 20px;
    border-bottom: 1px solid #edf0f6;
}
.wbls-access-card .wbls-access-card-header h3 { margin: 0; padding: 0; border: 0; }
.wbls-access-count{display:inline-flex;align-items:center;gap:8px;background:#e9edff;color:#2c3fb3;padding:10px 15px;border-radius:24px;font-weight:600;font-size:12px;white-space:nowrap}
.wbls-access-card h3{font-size:18px;font-weight:650;color:var(--access-ink);margin:0 0 24px;padding-bottom:20px;border-bottom:1px solid #edf0f6}
.wbls-access-page .form-table{margin:0}
.wbls-access-page .form-table tbody{display:grid;grid-template-columns:minmax(260px,1fr) minmax(320px,1.6fr);gap:26px 36px}
.wbls-access-page .form-table tr{display:block;min-width:0}
.wbls-access-page .form-table tr:nth-child(2){grid-column:1;grid-row:2}
.wbls-access-page .form-table tr:nth-child(3){grid-column:1;grid-row:3}
.wbls-access-page .form-table tr:nth-child(4){grid-column:2;grid-row:1 / span 3}
.wbls-access-page .form-table th,.wbls-access-page .form-table td{display:block;width:100%;padding:0;color:var(--access-ink)}
.wbls-access-page .form-table th{font-size:13px;font-weight:650;margin-bottom:12px}
.wbls-access-page #wbls-access-user{width:100%;max-width:none;border:1px solid #d8deeb;border-radius:8px;min-height:44px;padding:5px 36px 5px 12px;background-color:#fafbfe;font-size:14px;color:var(--access-ink)}
.wbls-access-page input[type=checkbox]{width:18px;height:18px;min-width:18px;border:1px solid #b7c2d8;border-radius:4px;margin:0 9px 0 0;box-shadow:none}
.wbls-access-page input[type=checkbox]:checked{border-color:var(--access-blue);background:#edf0ff}
.wbls-access-page input[type=checkbox]:focus-visible,.wbls-access-page select:focus-visible,.wbls-access-page a:focus-visible,.wbls-access-page button:focus-visible{outline:2px solid var(--access-blue);outline-offset:3px}
.wbls-access-page .form-table td>label{display:flex;align-items:flex-start;line-height:1.6;font-size:13px}
.wbls-access-all{padding:15px;background:#f0f3ff;border:1px solid #dce3ff;border-radius:10px;color:#304581}
.wbls-access-permissions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.wbls-access-option{display:flex;align-items:center;min-height:47px;line-height:1.5;padding:12px;border:1px solid #e3e8f1;border-radius:8px;background:#fafbfe;cursor:pointer;font-size:13px;overflow-wrap:anywhere;transition:border-color .15s,background .15s}
.wbls-access-option:hover{border-color:#a7b4f5;background:#f1f4ff}
.wbls-access-option:has(input:checked){border-color:#aab7ff;background:#edf1ff;color:#273b98}
.wbls-access-form-list{display:grid;gap:8px;margin-top:12px;padding:2px}
.wbls-access-page .submit{margin:26px 0 0;padding:22px 0 0;border-top:1px solid #edf0f6}
.wbls-access-page .button-primary{background:var(--access-blue);border:1px solid var(--access-blue);border-radius:8px;padding:5px 22px;min-height:44px;font-weight:600;box-shadow:0 3px 8px #3c50f522;text-shadow:none}
.wbls-access-page .button-primary:hover{background:#293dd6;border-color:#293dd6}
.wbls-access-table-scroll{overflow-x:auto}
.wbls-access-rules .widefat{border:0;box-shadow:none;min-width:600px;border-collapse:collapse}
.wbls-access-rules .widefat th{background:#f4f6fb;color:#63708a;font-size:12px;font-weight:600;padding:13px 16px;border-bottom:1px solid #e5eaf2}
.wbls-access-rules .widefat td{padding:16px;vertical-align:middle;color:var(--access-ink);border-bottom:1px solid #edf0f6;line-height:1.7}
.wbls-access-rules .widefat td:last-child{white-space:nowrap}
.wbls-access-rules a{color:#3046d6;font-weight:600;text-decoration:none}
.wbls-access-action-divider{color:#c4cbd9;margin:0 7px}
.wbls-access-rules .wbls-access-empty td{text-align:center;padding:40px 20px;color:var(--access-muted);background:#fff}
.wbls-access-empty .dashicons{display:block;margin:0 auto 12px;width:32px;height:32px;font-size:32px;color:#9ca9cf}
.wbls-access-notice{background:#edf8f2;border:1px solid #b8dec9;color:#225d3c;padding:15px 20px;border-radius:10px;margin-bottom:20px}
@media(min-width:1600px){.wbls-access-page .form-table tbody{grid-template-columns:minmax(300px,1fr) minmax(440px,1.6fr)}}
@media(max-width:1100px){.wbls-access-page .form-table tbody{grid-template-columns:1fr}.wbls-access-page .form-table tr:nth-child(n){grid-column:auto;grid-row:auto}}
@media(max-width:600px){.wbls-access-permissions{grid-template-columns:1fr}.wbls-access-page .button-primary{width:100%}}

/* Follow the decision order: person, actions, scope. */
.wbls-access-step{padding:26px 0;border-bottom:1px solid #edf0f6}
.wbls-access-step:first-of-type{padding-top:0}
.wbls-access-step:last-of-type{border-bottom:0;padding-bottom:0}
.wbls-access-step-heading{display:flex;gap:14px;align-items:flex-start;margin-bottom:18px}
.wbls-access-step-number{display:flex;align-items:center;justify-content:center;flex:0 0 32px;height:32px;border-radius:10px;background:#edf0ff;color:#3046d6;font-weight:700;font-size:14px}
.wbls-access-step-heading h4{margin:0 0 5px;font-size:15px;line-height:1.5;color:var(--access-ink)}
.wbls-access-step-heading p{margin:0;font-size:13px;line-height:1.6;color:var(--access-muted);max-width:760px}
.wbls-access-step-body{margin-left:46px;max-width:960px}
.wbls-access-step-body #wbls-access-user{max-width:480px}
.wbls-access-step-body .wbls-access-all{display:flex;align-items:center;line-height:1.6;margin-bottom:16px;cursor:pointer}
.wbls-access-step-body .wbls-access-permissions{grid-template-columns:repeat(3,minmax(0,1fr))}
.wbls-access-step-body .wbls-access-form-list{grid-template-columns:repeat(2,minmax(0,1fr))}
.wbls-access-scope-note{padding:12px 15px;border-left:3px solid #aab7ff;background:#f5f7ff;color:#4d5c80;margin:0 0 16px;font-size:13px;line-height:1.6}
@media(max-width:1100px){.wbls-access-step-body .wbls-access-permissions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.wbls-access-step-body{margin-left:0}.wbls-access-step-body .wbls-access-permissions,.wbls-access-step-body .wbls-access-form-list{grid-template-columns:1fr}}
/* Strong checked state, including WordPress' native checkbox tick. */
.wbls-access-page input[type=checkbox]:checked{background:#3c50f5;border-color:#3c50f5}
.wbls-access-page input[type=checkbox]:checked::before{content:"";display:block;float:none;width:5px;height:10px;margin:1px 0 0 5px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg);background:none;box-sizing:content-box}
@media(forced-colors:active){.wbls-access-page input[type=checkbox]:checked{background:Highlight;border-color:Highlight}.wbls-access-page input[type=checkbox]:checked::before{border-color:HighlightText}}
.wbls-access-page input[type=checkbox]:disabled{opacity:1;cursor:default}
.wbls-access-page .wbls-access-option:has(input:disabled){cursor:default}
.wbls-access-full-access{margin:0 0 26px}
.wbls-access-full-access .wbls-access-all{display:flex;align-items:center;line-height:1.6;padding:18px 20px;cursor:pointer;margin:0}
.wbls-access-step-body .wbls-access-full-access{margin:18px 0 0}
.wbls-access-help{font-size:13px;line-height:1.65;color:var(--access-muted);margin:12px 0 0;max-width:850px}
.wbls-access-save-help{font-size:13px;color:var(--access-muted);margin:26px 0 0}
.wbls-access-rules>.wbls-access-help{margin:0 0 20px}
/* Consistent row actions, with a distinct destructive action. */
.wbls-access-actions{display:flex;align-items:center;gap:8px}
.wbls-access-delete-form{margin:0;padding:0}
.wbls-access-page .wbls-access-action{display:inline-flex;align-items:center;justify-content:center;min-height:36px;margin:0;padding:6px 12px;border:1px solid #dce3f0;border-radius:7px;background:#f5f7ff;color:#3046d6;font-family:inherit;font-size:12px;font-weight:600;line-height:1.5;text-decoration:none;cursor:pointer;box-shadow:none}
.wbls-access-page .wbls-access-action:hover{background:#e9eeff;border-color:#aab7ff;color:#263bb3}
.wbls-access-page .wbls-access-delete{color:#b42332;border-color:#f0cdd1;background:#fff5f5}
.wbls-access-page .wbls-access-delete:hover{color:#91202b;border-color:#dc929b;background:#ffe8eb}

.wbls-access-user-picker { max-inline-size: 480px; }
