/* Scoped to this extension; never restyle the login or remote desktop surface. */
.enrollment-page { max-width: 1120px; margin: 0 auto; padding: 30px 28px 60px; color: #243243; line-height: 1.65; box-sizing: border-box; }
.enrollment-page *, .enrollment-home-entry * { box-sizing: border-box; }
.enrollment-page h1, .enrollment-page h2, .enrollment-page h3, .enrollment-page p { margin-top: 0; }
.enrollment-page h1 { font-size: 30px; line-height: 1.25; font-weight: 650; margin-bottom: 12px; }
.enrollment-page h2 { font-size: 18px; margin-bottom: 8px; }
.enrollment-page h3 { font-size: 16px; margin-bottom: 8px; }
.enrollment-page a, .enrollment-home-entry a { color: #165b8d; }
.enrollment-page button, .enrollment-home-entry a { min-height: 38px; padding: 8px 16px; cursor: pointer; border-radius: 6px; font-weight: 600; }
.enrollment-page button:disabled { opacity: .55; cursor: not-allowed; }
.enrollment-page button.enrollment-primary { background: #195d69; border-color: #195d69; color: #fff; }
.enrollment-page button:focus-visible, .enrollment-page a:focus-visible, .enrollment-page input:focus-visible, .enrollment-page select:focus-visible, .enrollment-page textarea:focus-visible, .enrollment-page summary:focus-visible { outline: 3px solid #e4a040; outline-offset: 3px; }
.enrollment-header { display: flex; justify-content: space-between; gap: 24px; margin-bottom: 28px; }
.enrollment-back { display: inline-block; margin-bottom: 26px; font-size: 13px; }
.enrollment-eyebrow { color: #52717c; font-size: 12px; font-weight: 700; letter-spacing: .1em; margin-bottom: 8px; }
.enrollment-subtitle, .enrollment-muted, .enrollment-panel-title > span, .enrollment-panel-title small, .enrollment-footer { color: #586879; font-size: 14px; }
.enrollment-steps { list-style: none; margin: 0 0 22px; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.enrollment-steps li { display: grid; grid-template-columns: 28px 1fr; gap: 1px 9px; font-size: 14px; }
.enrollment-steps li > span { background: #edf3f4; color: #195d69; border-radius: 50%; text-align: center; height: 27px; line-height: 27px; grid-row: span 2; font-weight: 700; }
.enrollment-steps small { color: #637283; }
.enrollment-boundary { background: #fff8e8; border: 1px solid #ecdbb2; border-radius: 8px; padding: 17px 20px; margin-bottom: 24px; }
.enrollment-boundary strong { color: #795315; }
.enrollment-boundary p { margin: 6px 0 0; font-size: 14px; }
.enrollment-panel, .enrollment-no-access { border: 1px solid #d9e1e7; border-radius: 9px; padding: 23px; margin-bottom: 21px; background: #fff; }
.enrollment-panel-title, .enrollment-device-title { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px; margin-bottom: 15px; }
.enrollment-panel-title h2, .enrollment-panel-title h3, .enrollment-device-title h3 { margin-bottom: 0; }
.enrollment-page fieldset { border: 0; padding: 0; margin: 0; min-width: 0; }
.enrollment-fields { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 16px; margin-bottom: 16px; }
.enrollment-page label { display: block; font-size: 14px; font-weight: 600; }
.enrollment-page input[type=text], .enrollment-page select, .enrollment-page textarea { display: block; width: 100%; min-height: 40px; padding: 8px 10px; margin-top: 6px; font-size: 14px; border: 1px solid #aabac5; border-radius: 5px; background: #fff; color: #243243; }
.enrollment-secret { background: #eef7f6; border: 1px solid #8fb9b6; border-radius: 7px; padding: 18px; margin-top: 20px; }
.enrollment-secret p, .enrollment-secret small { font-size: 13px; }
.enrollment-secret textarea { min-height: 82px; font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: 18px; overflow-wrap: anywhere; resize: vertical; user-select: all; }
.enrollment-secret small { display: block; margin-top: 10px; }
.enrollment-download { border: 1px solid #dce5e8; padding: 13px 15px; border-radius: 6px; margin: 12px 0; }
.enrollment-download > span { margin-left: 12px; font-size: 13px; color: #637283; }
.enrollment-download label { font-size: 11px; font-weight: 400; margin-top: 7px; }
.enrollment-download code { display: block; font-size: 12px; }
.enrollment-page code, .enrollment-details dd { overflow-wrap: anywhere; word-break: break-word; }
.enrollment-page code { font-family: ui-monospace, SFMono-Regular, Consolas, monospace; }
.enrollment-permissions { background: #f5f7f9; padding: 13px 16px; border-radius: 6px; margin-top: 16px; }
.enrollment-page summary { cursor: pointer; color: #315d75; }
.enrollment-permissions ul { padding-left: 21px; }
.enrollment-permissions li { margin-bottom: 10px; font-size: 14px; }
.enrollment-permissions p { font-size: 13px; margin-bottom: 0; }
.enrollment-device { border-top: 1px solid #e1e7eb; padding-top: 20px; margin-top: 20px; }
.enrollment-state { font-size: 12px; padding: 3px 10px; background: #f1f3f5; border-radius: 20px; border: 1px solid #d9e1e7; }
.enrollment-state.pending { background: #fff7e3; color: #795315; border-color: #e9d8b0; }
.enrollment-state.reviewed, .enrollment-state.ready { background: #edf3fc; color: #365581; border-color: #cedcf0; }
.enrollment-state.active { background: #eaf5ed; color: #285e39; border-color: #c0dbc8; }
.enrollment-state.rejected { background: #f8eeee; color: #8b4141; border-color: #e4cccc; }
.enrollment-details { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 24px; margin: 12px 0; font-size: 13px; }
.enrollment-details > div { min-width: 0; }
.enrollment-details dt { color: #637283; font-size: 12px; }
.enrollment-details dd { margin: 2px 0 0; }
.enrollment-long { grid-template-columns: 1fr; }
.enrollment-fingerprint { padding: 12px 15px; background: #f4f7f9; border-radius: 5px; margin: 15px 0; }
.enrollment-fingerprint strong { font-size: 12px; display: block; color: #576976; margin-bottom: 5px; }
.enrollment-fingerprint code { font-size: 13px; }
.enrollment-actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 15px; }
.enrollment-confirm { border: 2px solid #54929b; background: #f9fcfc; }
.enrollment-checkbox { display: flex !important; gap: 9px; margin-top: 17px; align-items: flex-start; }
.enrollment-checkbox input { margin-top: 5px; flex-shrink: 0; }
.enrollment-checkbox span { font-weight: 400; font-size: 14px; }
.enrollment-code-list { list-style: none; margin: 0; padding: 0; }
.enrollment-code-list li { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 13px 0; border-top: 1px solid #e1e7eb; }
.enrollment-code-list strong { font-size: 14px; margin-right: 10px; overflow-wrap: anywhere; }
.enrollment-code-list span { font-size: 12px; color: #637283; }
.enrollment-code-list small { display: block; color: #637283; }
.enrollment-revoke { border: 1px solid #e0c7c7; background: #fcf7f7; padding: 15px; border-radius: 6px; margin-top: 14px; }
.enrollment-alert { border-radius: 6px; padding: 13px 17px; margin: 0 0 18px; font-size: 14px; }
.enrollment-error { color: #853d3d; background: #fff0f0; border: 1px solid #eccaca; }
.enrollment-notice { color: #225961; background: #edf7f7; border: 1px solid #c0dddf; }
.enrollment-empty { padding: 15px 0; color: #637283; }
.enrollment-footer { text-align: center; font-size: 12px; margin-top: 24px; }
.enrollment-home-entry { margin: 28px 0; border: 1px solid #d9e1e7; padding: 17px 20px; border-radius: 7px; display: flex; align-items: center; justify-content: space-between; gap: 15px; background: #f5f9fa; }
.enrollment-home-entry strong { display: block; }
.enrollment-home-entry span { display: block; font-size: 13px; color: #586879; margin-top: 5px; }
.enrollment-home-entry a { text-decoration: none; background: #e7f0f3; white-space: nowrap; }
@media (max-width: 720px) {
    .enrollment-page { padding: 20px 15px 35px; }
    .enrollment-page h1 { font-size: 26px; }
    .enrollment-panel { padding: 17px; }
    .enrollment-steps { grid-template-columns: 1fr 1fr; gap: 16px 10px; }
    .enrollment-fields, .enrollment-details { grid-template-columns: 1fr; }
    .enrollment-home-entry { flex-direction: column; align-items: flex-start; }
    .enrollment-header { gap: 10px; }
}
@media print {
    .enrollment-secret { display: none !important; }
}
/*
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 */

/* Label/tag denoting the user that shared a connection */
.jdbc-share-tag {

    background: #0095ff;
    padding: 0.25em;

    -moz-border-radius:    0.25em;
    -webkit-border-radius: 0.25em;
    -khtml-border-radius:  0.25em;
    border-radius:         0.25em;

    color: white;
    font-size: 0.75em;
    font-weight: bold;

}
.totp-enroll p,.totp-details{font-size:.8em}.totp-qr-code{text-align:center}.totp-qr-code img{margin:1em;border:1px solid rgba(0,0,0,0.25);box-shadow:1px 1px 2px rgba(0,0,0,0.25);cursor:pointer}h3.totp-details-header{font-size:.8em}h3.totp-details-header::before{content:'▸ '}.totp-details-visible h3.totp-details-header::before{content:'▾ '}.totp-details,.totp-hide-details{display:none}.totp-details-visible .totp-details{display:table}.totp-details-visible .totp-hide-details{display:inline}.totp-details-visible .totp-show-details{display:none}.totp-hide-details,.totp-show-details{color:blue;text-decoration:underline;cursor:pointer;margin:0 .25em;font-weight:normal}.totp-details{margin:0 auto}.totp-details th{padding-right:.25em;text-align:left}.totp-details td{font-family:monospace}.totp-detail{display:inline-block;margin:0 .25em}