h1:focus {
    outline: none;
}

.valid.modified:not([type=checkbox]) {
    outline: 1px solid #26b050;
}

.invalid {
    outline: 1px solid #e50000;
}

.validation-message {
    color: #e50000;
}

.blazor-error-boundary {
    background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem, #b32121;
    padding: 1rem 1rem 1rem 3.7rem;
    color: white;
}

    .blazor-error-boundary::after {
        content: "An error has occurred."
    }

.darker-border-checkbox.form-check-input {
    border-color: #929292;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
    color: var(--bs-secondary-color);
    text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
    text-align: start;
}:root{--bs-primary:#137b65;--bs-primary-rgb:19,123,101;--bs-body-color:#263d36;--bs-body-bg:#f3f7f5;--bs-body-font-family:'Segoe UI',system-ui,-apple-system,sans-serif}body{background:#f3f7f5;color:#263d36}a{color:#147960}.btn{border-radius:10px;font-size:13px;font-weight:600;padding:.65rem 1rem}.btn-primary{--bs-btn-bg:#137b65;--bs-btn-border-color:#137b65;--bs-btn-hover-bg:#106752;--bs-btn-hover-border-color:#106752;--bs-btn-active-bg:#0c5947;--bs-btn-active-border-color:#0c5947;--bs-btn-disabled-bg:#137b65;--bs-btn-disabled-border-color:#137b65}.btn-outline-secondary{--bs-btn-color:#547064;--bs-btn-border-color:#d1ded7;--bs-btn-hover-bg:#e8f1ec;--bs-btn-hover-color:#24473a;--bs-btn-hover-border-color:#b9d0c4}.form-control,.form-select{border-radius:10px;border-color:#d9e5de;padding:.75rem .85rem;font-size:14px}.form-control:focus,.form-select:focus{border-color:#60b69a;box-shadow:0 0 0 3px #1b9b7420}.form-label{font-size:13px;font-weight:600}.portal-eyebrow{display:block;font-size:10px;letter-spacing:.12em;font-weight:700;color:#6c8b7d;margin-bottom:8px}.portal-page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:8px 0 26px}.portal-page-heading h1{font-size:clamp(25px,3vw,34px);letter-spacing:-.035em;margin-bottom:9px;font-weight:750}.portal-page-heading p{font-size:14px;color:#74877e;margin:0;max-width:580px}.portal-page-tag{font-size:11px;white-space:nowrap;padding:7px 13px;background:#e7f1eb;color:#43775f;border:1px solid #d7e7dd;border-radius:30px}.portal-card{background:#fff;border:1px solid #e0e9e3;border-radius:18px;padding:26px;box-shadow:0 3px 16px #26443704;min-width:0}.portal-card h2{font-size:19px;font-weight:700;letter-spacing:-.02em;margin:0}.portal-card h3{font-size:15px;font-weight:700}.portal-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:20px}.portal-muted{color:#7a8b81;font-size:13px;line-height:1.65}.session-picker{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:22px;padding:20px 26px}.session-picker select{max-width:350px}.session-picker h2{font-size:16px}.session-picker .portal-eyebrow{margin-bottom:4px}.connection-grid{display:grid;grid-template-columns:minmax(0,1.16fr) minmax(0,1fr);gap:22px;align-items:start;margin-bottom:22px}.connection-number{background:#f5f9f6;border:1px solid #e7eee8;border-radius:12px;padding:16px 18px;margin-bottom:14px}.connection-number span{display:block;font-size:11px;color:#6f8778;margin-bottom:6px}.connection-number strong{font-size:23px;letter-spacing:-.02em;overflow-wrap:anywhere}.connection-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:20px 0}.status-pill{display:inline-flex;gap:6px;align-items:center;white-space:nowrap;border-radius:25px;padding:7px 10px;font-size:10px;font-weight:700}.status-dot{width:6px;height:6px;background:currentColor;border-radius:50%}.tone-success{color:#14704f;background:#e6f7ec}.tone-warning{color:#92711a;background:#fff5d7}.tone-danger{color:#a63e39;background:#ffefed}.tone-neutral{color:#7d8a82;background:#eef2ef}.connection-checked{border-top:1px solid #edf2ee;padding-top:15px;margin-top:20px;font-size:10px}.qr-area{border-top:1px solid #edf2ee;padding-top:22px;display:flex;gap:22px;flex-wrap:wrap;align-items:center}.qr-frame{border-radius:14px;border:1px solid #e1e9e3;padding:12px;background:#fff}.qr-frame img{display:block;width:210px;height:210px;max-width:100%;object-fit:contain}.qr-instructions{flex:1;min-width:180px}.qr-instructions ol{padding-left:19px;font-size:12px;line-height:1.9;color:#576c60}.qr-instructions .portal-muted{font-size:11px}.qr-placeholder{min-height:180px;min-width:180px;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#799187;gap:15px;font-size:12px}.connection-wait{display:flex;align-items:center;gap:12px;color:#8a7429;border:1px dashed #e8dca9;border-radius:12px;padding:20px;font-size:12px}.connected-summary{display:flex;gap:13px;align-items:center;border:1px solid #cfe8d8;background:#f0faf3;border-radius:13px;padding:19px;color:#356b4c}.connected-summary p{font-size:12px;margin:5px 0 0}.connected-summary strong{font-size:14px}.connected-icon{width:35px;height:35px;background:#d4eddf;border-radius:50%;display:grid;place-items:center;font-size:18px}.step-icon{background:#eef6f0;color:#478261;border-radius:11px;display:grid;place-items:center;width:34px;height:34px;font-size:20px}.field-help{display:block;color:#88978e;font-size:11px;line-height:1.7;margin-top:7px}.portal-feedback{border-radius:12px;padding:14px 17px;margin:15px 0;font-size:13px;line-height:1.6}.feedback-error{background:#fff0ee;color:#95362c;border:1px solid #f1d5cd}.feedback-warning{background:#fff8e7;color:#8b722e;border:1px solid #ece0be}.feedback-success{background:#edf8f0;color:#2d7049;border:1px solid #cde6d4}.portal-feedback p{margin-bottom:10px}.portal-empty{display:flex;align-items:center;flex-direction:column;text-align:center;padding:55px 28px;gap:12px;color:#819084}.portal-empty p{font-size:13px;margin:0;max-width:510px}.portal-empty h2{color:#2f4739}.empty-icon{font-size:32px;background:#eff5f0;border-radius:16px;display:grid;place-items:center;width:68px;height:68px;color:#6e957b;margin-bottom:5px}.portal-empty.compact{padding:20px 10px}.portal-empty.compact span{font-size:28px;color:#99b2a1}.portal-empty small{font-size:11px}.portal-loading{display:flex;gap:20px;align-items:center;color:#819084;padding:50px}.portal-loading p{margin:0}.portal-text-link{color:#148264;text-decoration:none;font-weight:600;font-size:12px;white-space:nowrap}.activity-item{display:flex;gap:13px;align-items:flex-start;padding:18px 0;border-top:1px solid #edf2ee;min-width:0}.activity-item>div{flex:1;min-width:0}.activity-item strong{font-size:12px;font-weight:600;overflow-wrap:anywhere}.activity-item p{font-size:13px;margin:5px 0 3px;overflow-wrap:anywhere;max-height:44px;overflow:hidden}.activity-item small{color:#93a195;font-size:10px}.activity-direction{background:#eef5f0;color:#73987e;border-radius:10px;display:grid;place-items:center;width:31px;height:31px;flex-shrink:0}.activity-state{font-size:10px;background:#f2f6f3;color:#64816d;border-radius:7px;padding:5px 8px;flex-shrink:0}.portal-service-notices .alert{border-radius:12px;font-size:12px;padding:12px 16px;border-color:#e0e9e3}.portal-service-notices details{font-size:11px;color:#788f80;border-bottom:1px solid #e1ebe4;padding-bottom:15px}.portal-service-notices details[open]{background:#fff;padding:16px;border-radius:12px}.portal-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:24px}.portal-metric{padding:22px}.portal-metric span{font-size:12px;color:#7e9184}.portal-metric strong{display:block;font-size:30px;color:#234f37;font-weight:750;margin-top:6px}.portal-session-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}.portal-session-tile{display:flex;flex-direction:column;gap:18px}.portal-session-tile .status-pill{align-self:flex-start}.portal-session-tile p{font-size:13px;color:#7f9385;margin:0}.portal-session-tile .btn{align-self:flex-start;margin-top:auto}.portal-summary-header{margin:25px 0 16px;font-size:19px;font-weight:700}.validation-message{font-size:12px;margin-top:5px;color:#a33a36}
@media(max-width:1100px){.connection-grid{grid-template-columns:1fr}.portal-card{padding:23px}.connection-number strong{font-size:22px}}
@media(max-width:600px){.session-picker{align-items:stretch;flex-direction:column;gap:14px}.session-picker select{max-width:none}.portal-page-tag{display:none}.portal-page-heading{margin-bottom:22px}.portal-card{padding:20px;border-radius:15px}.portal-card-heading{gap:10px}.portal-card h2{font-size:17px}.connection-actions .btn{flex:1}.connection-number strong{font-size:22px}.status-pill{padding:6px 8px;font-size:9px}.qr-frame{margin:auto}.qr-frame img{width:230px;height:230px}.qr-instructions{min-width:100%}.portal-metrics{gap:8px}.portal-metric{padding:14px}.portal-metric span{font-size:10px}.portal-metric strong{font-size:25px}.activity-item{gap:9px}.activity-state{font-size:9px;max-width:90px;text-align:center}.portal-page-heading h1{font-size:27px}.portal-text-link{font-size:11px}}
