h1:focus {
    outline: none;
}

/* Simple form inputs used on the static-SSR account pages (login / reset). */
.sl-input {
    display: block;
    width: 100%;
    padding: 0.6rem 0.75rem;
    margin-top: 0.25rem;
    border: 1px solid #c4c4c4;
    border-radius: 6px;
    font-size: 1rem;
    box-sizing: border-box;
}

.sl-input:focus {
    outline: none;
    border-color: #594ae2;
    box-shadow: 0 0 0 2px rgba(89, 74, 226, 0.2);
}

/* Download button overlaid on a public-gallery thumbnail. */
.sl-download {
    position: absolute;
    right: 6px;
    bottom: 6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.55);
    color: #fff;
    text-decoration: none;
}

.sl-download:hover {
    background: rgba(0, 0, 0, 0.8);
}

/* Favorite (heart) toggle on a public-gallery thumbnail. */
.sl-fav {
    position: absolute;
    left: 6px;
    top: 6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.45);
    color: #fff;
    border: none;
    cursor: pointer;
}

.sl-fav.faved {
    color: #ff4081;
}

.sl-fav:hover {
    background: rgba(0, 0, 0, 0.7);
}

/* Brief shake when a client tries to favorite beyond the selection limit. */
.sl-fav-shake { animation: sl-shake 0.4s; }
@keyframes sl-shake {
    0%,100% { transform: translateX(0); }
    20%,60% { transform: translateX(-3px); }
    40%,80% { transform: translateX(3px); }
}

/* Proofing selection panel (client side). */
.sl-proof { margin: 0 0 20px; }
.sl-proof-bar {
    display: flex; flex-wrap: wrap; align-items: center; gap: 12px 18px;
    padding: 12px 16px; border: 1px solid var(--mud-palette-lines-default);
    border-radius: 12px; background: var(--mud-palette-surface);
}
.sl-proof-sent { color: var(--mud-palette-text-secondary); font-size: 0.85rem; }
.sl-proof-details { margin-left: auto; }
.sl-proof-submit {
    cursor: pointer; font-weight: 700; list-style: none;
    color: var(--sl-accent, var(--mud-palette-primary));
}
.sl-proof-submit::-webkit-details-marker { display: none; }
.sl-proof-form { display: flex; flex-direction: column; gap: 8px; margin-top: 12px; min-width: min(320px, 80vw); }
.sl-proof-hint { font-size: 0.85rem; color: var(--mud-palette-text-secondary); margin: 0 0 4px; }
.sl-proof-form textarea.sl-input { resize: vertical; font-family: inherit; }

/* Photographer-side badge marking a client-favorited asset. */
.sl-fav-badge {
    position: absolute;
    left: 6px;
    top: 6px;
    color: #ff4081;
    background: rgba(0, 0, 0, 0.45);
    border-radius: 50%;
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* ===== Brand + app shell ===== */
.sl-logo {
    width: 26px;
    height: 26px;
    border-radius: 8px;
    margin-right: 10px;
    display: inline-block;
    background: conic-gradient(from 210deg, #4F46E5, #EC4899, #0EA5E9, #4F46E5);
    box-shadow: inset 0 0 0 4px rgba(255, 255, 255, 0.85);
}

.sl-brand { font-weight: 800; font-size: 1.15rem; letter-spacing: -0.02em; }
.sl-brand-link { color: inherit; }
.sl-muted { opacity: 0.7; }

.sl-appbar {
    backdrop-filter: saturate(180%) blur(8px);
    border-bottom: 1px solid var(--mud-palette-divider);
}

.sl-drawer { border-right: 1px solid var(--mud-palette-divider); }

/* Sentence-case buttons instead of ALL CAPS */
.mud-button-root { text-transform: none; letter-spacing: 0; font-weight: 600; }

/* ===== Marketing / landing ===== */
.sl-marketing { min-height: 100vh; }

.sl-marketing-bar {
    display: flex;
    align-items: center;
    gap: 18px;
    max-width: 1120px;
    margin: 0 auto;
    padding: 18px 24px;
}

.sl-nav-link {
    color: var(--mud-palette-text-primary);
    text-decoration: none;
    font-weight: 600;
    opacity: 0.85;
}
.sl-nav-link:hover { opacity: 1; }

.sl-cta {
    text-decoration: none;
    font-weight: 600;
    color: #fff;
    background: var(--mud-palette-primary);
    padding: 9px 18px;
    border-radius: 10px;
}
.sl-cta:hover { filter: brightness(1.06); }

.sl-hero {
    max-width: 1120px;
    margin: 0 auto;
    padding: 48px 24px 24px;
    display: grid;
    grid-template-columns: 1.1fr 1fr;
    gap: 48px;
    align-items: center;
}

@media (max-width: 880px) {
    .sl-hero { grid-template-columns: 1fr; }
    .sl-hero-art { display: none; }
}

.sl-eyebrow {
    display: inline-block;
    font-weight: 700;
    font-size: 0.8rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--mud-palette-primary);
    background: color-mix(in srgb, var(--mud-palette-primary) 12%, transparent);
    padding: 5px 12px;
    border-radius: 999px;
    margin-bottom: 18px;
}

.sl-hero-title {
    font-size: clamp(2.4rem, 5vw, 3.6rem);
    line-height: 1.05;
    letter-spacing: -0.03em;
    font-weight: 800;
    margin: 0 0 18px;
}

.sl-hero-sub {
    font-size: 1.15rem;
    line-height: 1.6;
    color: var(--mud-palette-text-secondary);
    max-width: 40ch;
    margin: 0 0 28px;
}

.sl-hero-cta { display: flex; gap: 12px; flex-wrap: wrap; }
.sl-hero-meta { margin-top: 18px; color: var(--mud-palette-text-secondary); font-size: 0.9rem; }

.sl-hero-art {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-auto-rows: 120px;
    gap: 14px;
    transform: rotate(-4deg);
}

.sl-tile { border-radius: 14px; box-shadow: 0 10px 30px rgba(2, 6, 23, 0.12); }
.sl-t1 { background: linear-gradient(135deg, #6366F1, #8B5CF6); grid-row: span 2; }
.sl-t2 { background: linear-gradient(135deg, #EC4899, #F472B6); }
.sl-t3 { background: linear-gradient(135deg, #0EA5E9, #22D3EE); }
.sl-t4 { background: linear-gradient(135deg, #F59E0B, #FBBF24); }
.sl-t5 { background: linear-gradient(135deg, #10B981, #34D399); grid-row: span 2; }
.sl-t6 { background: linear-gradient(135deg, #64748B, #94A3B8); }

.sl-features {
    max-width: 1120px;
    margin: 32px auto 0;
    padding: 24px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

@media (max-width: 880px) { .sl-features { grid-template-columns: 1fr; } }

.sl-feature {
    background: var(--mud-palette-surface);
    border: 1px solid var(--mud-palette-divider);
    border-radius: 16px;
    padding: 24px;
}

.sl-feature-ic {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: color-mix(in srgb, var(--mud-palette-primary) 14%, transparent);
    color: var(--mud-palette-primary);
    margin-bottom: 14px;
}

.sl-feature h3 { margin: 0 0 8px; font-size: 1.2rem; font-weight: 700; }
.sl-feature p { margin: 0; color: var(--mud-palette-text-secondary); line-height: 1.55; }
.sl-soon { color: var(--mud-palette-primary); font-weight: 600; }

.sl-foot {
    max-width: 1120px;
    margin: 40px auto;
    padding: 0 24px;
    color: var(--mud-palette-text-secondary);
    font-size: 0.85rem;
}

/* ===== Rich marketing footer ===== */
.sl-foot-rich {
    border-top: 1px solid var(--mud-palette-divider);
    margin-top: 64px;
    padding: 40px 24px 24px;
}
.sl-foot-cols {
    max-width: 1120px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1.5fr 1fr 1fr;
    gap: 32px;
}
@media (max-width: 720px) { .sl-foot-cols { grid-template-columns: 1fr; gap: 24px; } }
.sl-foot-brand p { color: var(--mud-palette-text-secondary); margin: 10px 0 0; max-width: 28ch; }
.sl-foot-col h4 { margin: 0 0 10px; font-size: 0.8rem; text-transform: uppercase; letter-spacing: 0.04em; color: var(--mud-palette-text-secondary); }
.sl-foot-col a { display: block; color: var(--mud-palette-text-primary); text-decoration: none; padding: 4px 0; opacity: 0.85; }
.sl-foot-col a:hover { opacity: 1; text-decoration: underline; }
.sl-foot-base { max-width: 1120px; margin: 28px auto 0; color: var(--mud-palette-text-secondary); font-size: 0.85rem; }

/* ===== Legal / prose pages ===== */
.sl-legal { max-width: 760px; margin: 0 auto; padding: 48px 24px; }
.sl-legal h1 { font-size: clamp(1.9rem, 4vw, 2.6rem); font-weight: 800; letter-spacing: -0.02em; margin: 0 0 8px; }
.sl-legal .sl-legal-meta { color: var(--mud-palette-text-secondary); margin: 0 0 8px; }
.sl-legal-draft {
    display: inline-block; font-size: 0.78rem; font-weight: 700; letter-spacing: 0.03em;
    color: var(--mud-palette-warning-text, #92400e); background: color-mix(in srgb, var(--mud-palette-warning) 18%, transparent);
    padding: 4px 12px; border-radius: 999px; margin-bottom: 24px;
}
.sl-legal h2 { font-size: 1.25rem; font-weight: 700; margin: 32px 0 10px; }
.sl-legal p, .sl-legal li { line-height: 1.7; color: var(--mud-palette-text-primary); }
.sl-legal ul { padding-left: 1.2rem; }
.sl-legal a { color: var(--mud-palette-primary); }

/* ===== Pricing ===== */
.sl-pricing { max-width: 1120px; margin: 0 auto; padding: 48px 24px; }
.sl-pricing-head { text-align: center; margin-bottom: 32px; }
.sl-pricing-head h1 { font-size: clamp(2rem, 4vw, 3rem); font-weight: 800; letter-spacing: -0.02em; margin: 0 0 10px; }
.sl-pricing-head p { color: var(--mud-palette-text-secondary); font-size: 1.1rem; margin: 0; }
.sl-pricing-toggle { display: flex; justify-content: center; margin: 24px 0 36px; }
.sl-plans { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
@media (max-width: 880px) { .sl-plans { grid-template-columns: 1fr; max-width: 420px; margin: 0 auto; } }
.sl-plan {
    background: var(--mud-palette-surface); border: 1px solid var(--mud-palette-divider);
    border-radius: 18px; padding: 28px; display: flex; flex-direction: column;
}
.sl-plan.sl-plan-featured { border-color: var(--mud-palette-primary); box-shadow: 0 12px 40px rgba(2,6,23,0.10); }
.sl-plan-name { font-size: 1.2rem; font-weight: 700; margin: 0 0 4px; }
.sl-plan-badge { font-size: 0.72rem; font-weight: 700; color: #fff; background: var(--mud-palette-primary); padding: 3px 10px; border-radius: 999px; align-self: flex-start; margin-bottom: 12px; }
.sl-plan-price { font-size: 2.2rem; font-weight: 800; letter-spacing: -0.02em; }
.sl-plan-price small { font-size: 0.95rem; font-weight: 500; color: var(--mud-palette-text-secondary); }
.sl-plan-desc { color: var(--mud-palette-text-secondary); margin: 8px 0 18px; min-height: 2.6em; }
.sl-plan-feats { list-style: none; padding: 0; margin: 0 0 24px; flex: 1 1 auto; }
.sl-plan-feats li { display: flex; align-items: center; gap: 8px; padding: 6px 0; }
.sl-plan-feats li .mud-icon-root { color: var(--mud-palette-success); font-size: 1.1rem; }

/* ===== Status pages (404 / error) ===== */
.sl-status { max-width: 520px; margin: 8vh auto; padding: 0 24px; text-align: center; }
.sl-status-code {
    font-size: clamp(4rem, 14vw, 7rem); font-weight: 800; line-height: 1; letter-spacing: -0.04em;
    background: linear-gradient(135deg, var(--mud-palette-primary), #8B5CF6);
    -webkit-background-clip: text; background-clip: text; color: transparent; margin-bottom: 8px;
}
.sl-status h1 { font-size: 1.6rem; font-weight: 800; margin: 0 0 8px; }
.sl-status p { color: var(--mud-palette-text-secondary); margin: 0 0 24px; line-height: 1.6; }
.sl-status .sl-status-id { font-size: 0.8rem; color: var(--mud-palette-text-secondary); margin-top: 24px; }

/* ===== Onboarding steps ===== */
.sl-onboard { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
@media (max-width: 880px) { .sl-onboard { grid-template-columns: 1fr; } }
.sl-onboard-step { display: flex; gap: 14px; align-items: flex-start; }
.sl-onboard-num {
    flex: 0 0 auto; width: 32px; height: 32px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center; font-weight: 700;
    color: #fff; background: var(--mud-palette-primary);
}

/* ===== Gallery cards ===== */
.sl-gallery-card {
    overflow: hidden;
    cursor: pointer;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.sl-gallery-card:hover { transform: translateY(-2px); box-shadow: 0 12px 28px rgba(2, 6, 23, 0.12); }
.sl-gallery-cover { aspect-ratio: 4 / 3; background: var(--mud-palette-background-gray); position: relative; }
.sl-folder-badge {
    position: absolute; top: 8px; left: 8px; z-index: 2;
    width: 26px; height: 26px; border-radius: 6px;
    background: rgba(0, 0, 0, 0.55); color: #fff;
    display: flex; align-items: center; justify-content: center;
}
.sl-breadcrumb { font-size: 0.9rem; margin-bottom: 14px; color: var(--sl-text-muted); }
.sl-breadcrumb a { color: var(--sl-accent, var(--mud-palette-primary)); text-decoration: none; }
.sl-breadcrumb a:hover { text-decoration: underline; }
.sl-breadcrumb-sep { margin: 0 8px; opacity: 0.5; }

/* Password gate for a locked folder/gallery (static SSR form). */
.sl-unlock { display: flex; justify-content: center; padding: 64px 16px; }
.sl-unlock-card {
    width: 100%; max-width: 360px; text-align: center;
    background: var(--mud-palette-surface); border: 1px solid var(--mud-palette-lines-default);
    border-radius: 16px; padding: 40px 28px; box-shadow: 0 8px 30px rgba(0,0,0,0.08);
}
.sl-unlock-icon { font-size: 2.4rem !important; color: var(--sl-accent, var(--mud-palette-primary)); }
.sl-unlock-title { font-size: 1.4rem; font-weight: 800; margin: 12px 0 4px; }
.sl-unlock-sub { color: var(--mud-palette-text-secondary); font-size: 0.9rem; margin: 0 0 22px; }
.sl-unlock-form { display: flex; flex-direction: column; gap: 12px; }
.sl-unlock-input {
    width: 100%; box-sizing: border-box; padding: 12px 14px; font-size: 1rem;
    border: 1px solid var(--mud-palette-lines-default); border-radius: 10px;
    background: var(--mud-palette-background); color: var(--mud-palette-text-primary);
}
.sl-unlock-input:focus { outline: none; border-color: var(--sl-accent, var(--mud-palette-primary)); }
.sl-unlock-input-err { border-color: var(--mud-palette-error); }
.sl-unlock-error { color: var(--mud-palette-error); font-size: 0.85rem; text-align: left; }
.sl-unlock-btn {
    padding: 12px 14px; font-size: 1rem; font-weight: 700; cursor: pointer;
    border: none; border-radius: 10px; color: #fff;
    background: var(--sl-accent, var(--mud-palette-primary));
}
.sl-unlock-btn:hover { filter: brightness(0.94); }
.sl-gallery-cover img { width: 100%; height: 100%; object-fit: cover; display: block; }
.sl-gallery-cover-empty {
    width: 100%; height: 100%;
    display: flex; align-items: center; justify-content: center;
    color: var(--mud-palette-text-secondary);
}
.sl-gallery-meta {
    display: flex; align-items: center; justify-content: space-between; gap: 8px;
    padding: 12px 14px;
}

/* ===== Public portfolio ===== */
/* Theme vars (--sl-*) are injected per-studio by PublicHead; these are the light defaults. */
:root {
    --sl-page-bg: #ffffff;
    --sl-text: #0f172a;
    --sl-text-muted: #64748b;
    --sl-card-bg: #ffffff;
    --sl-card-border: 1px solid #e7e9ef;
    --sl-card-radius: 12px;
}
.sl-card-link { text-decoration: none; color: inherit; display: block; }
.sl-portfolio-header { text-align: center; margin: 16px 0 40px; color: var(--sl-text); }
.sl-portfolio-header .mud-text-secondary { color: var(--sl-text-muted) !important; }
.sl-portfolio-logo { max-height: 84px; max-width: 240px; margin-bottom: 16px; object-fit: contain; }
.sl-portfolio-header h3 {
    display: inline-block;
    color: var(--sl-text);
    border-bottom: 3px solid var(--sl-accent, var(--mud-palette-primary));
    padding-bottom: 6px;
}
/* Cards follow the active theme (background / border / radius). */
.sl-gallery-card {
    background: var(--sl-card-bg) !important;
    border: var(--sl-card-border) !important;
    border-radius: var(--sl-card-radius) !important;
}
.sl-gallery-card .sl-gallery-meta .mud-typography { color: var(--sl-text); }
.sl-gallery-card:hover { border-color: var(--sl-accent, var(--mud-palette-primary)) !important; }

/* Theme picker (Settings) — each card previews its own background + image bars */
.sl-theme-pick {
    width: 158px; padding: 12px; border-radius: 12px; cursor: pointer;
    border: 2px solid var(--mud-palette-lines-default, #e0e0e0);
    transition: border-color .15s ease, transform .15s ease;
}
.sl-theme-pick:hover { transform: translateY(-2px); }
.sl-theme-pick.sel { border-color: var(--mud-palette-primary); box-shadow: 0 0 0 3px color-mix(in srgb, var(--mud-palette-primary) 20%, transparent); }
.sl-theme-swatch { display: flex; gap: 5px; margin-bottom: 8px; }
.sl-theme-swatch span { flex: 1; height: 34px; background: currentColor; opacity: 0.85; }
.sl-theme-name { font-weight: 600; font-size: 0.9rem; }
.sl-theme-desc { font-size: 0.74rem; opacity: 0.7; }

/* Buy button on a public-gallery thumbnail */
.sl-buy-form { position: absolute; left: 6px; bottom: 6px; margin: 0; }
.sl-buy {
    display: inline-flex; align-items: center; justify-content: center;
    width: 32px; height: 32px; border-radius: 50%;
    background: rgba(0, 0, 0, 0.55); color: #fff; border: none; cursor: pointer;
}
.sl-buy:hover { background: rgba(0, 0, 0, 0.8); }

/* ===== Lightbox ===== */
/* Drag-and-drop upload zone */
.sl-drop {
    position: relative; margin-bottom: 16px; padding: 18px;
    border: 2px dashed var(--mud-palette-lines-inputs, #cbd0dc); border-radius: 12px;
    display: flex; flex-direction: column; align-items: center; gap: 6px;
    color: var(--mud-palette-text-secondary); cursor: pointer;
    transition: border-color .15s ease, background .15s ease, color .15s ease;
}
.sl-drop--over {
    border-color: var(--mud-palette-primary);
    background: rgba(79, 70, 229, 0.06);
    color: var(--mud-palette-primary);
}
.sl-drop-input { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: pointer; }
.sl-drop-input:disabled { cursor: default; }

/* Bulk selection */
.sl-sel { outline: 3px solid var(--mud-palette-primary); outline-offset: -3px; }
.sl-check {
    position: absolute; top: 6px; left: 6px; z-index: 3;
    width: 26px; height: 26px; border-radius: 50%;
    background: rgba(255, 255, 255, 0.9); box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
    display: flex; align-items: center; justify-content: center; color: transparent;
}
.sl-check.on { background: var(--mud-palette-primary); color: #fff; }

.sl-lb {
    position: fixed; inset: 0; z-index: 2000;
    background: rgba(8, 10, 18, 0.94);
    display: flex; align-items: center; justify-content: center; outline: none;
}
.sl-lb-img {
    max-width: 92vw; max-height: 80vh; object-fit: contain;
    border-radius: 6px; box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
}
.sl-lb-top {
    position: absolute; top: 0; left: 0; right: 0;
    display: flex; align-items: center; gap: 12px; padding: 12px 16px; color: #fff;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.55), transparent);
}
.sl-lb-title { font-weight: 600; }
.sl-lb-count { opacity: 0.7; font-size: 0.9rem; }
.sl-lb-nav {
    position: absolute; top: 50%; transform: translateY(-50%);
    width: 48px; height: 48px; border-radius: 50%;
    background: rgba(255, 255, 255, 0.12); color: #fff; border: none; cursor: pointer;
    display: flex; align-items: center; justify-content: center;
}
.sl-lb-nav:hover { background: rgba(255, 255, 255, 0.22); }
.sl-jslb-prev, .sl-jslb-next, .sl-jslb-close { font-size: 26px; line-height: 1; }
/* Optional thumbnail strip (Finn-style); toggled per studio. */
.sl-jslb-strip {
    position: absolute; bottom: 0; left: 0; right: 0; z-index: 3;
    display: none; gap: 6px; padding: 8px 10px; overflow-x: auto;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.6), transparent);
    scrollbar-width: none;
}
.sl-jslb-strip::-webkit-scrollbar { display: none; }
.sl-jslb-strip img {
    height: 54px; width: 54px; flex: 0 0 auto; object-fit: cover; border-radius: 4px;
    opacity: 0.5; cursor: pointer; transition: opacity 0.15s ease;
}
.sl-jslb-strip img.active { opacity: 1; outline: 2px solid #fff; }
/* Keep the image clear of the strip when it's shown. */
.sl-lb-img { max-height: 80vh; }
.sl-lb-prev { left: 18px; }
.sl-lb-next { right: 18px; }
.sl-lb-bottom {
    position: absolute; bottom: 0; left: 0; right: 0;
    display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap;
    padding: 14px 18px; color: #fff;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.55), transparent);
}
.sl-lb-meta { display: flex; gap: 18px; flex-wrap: wrap; font-size: 0.85rem; opacity: 0.9; }
.sl-lb-meta b { opacity: 0.6; font-weight: 600; margin-right: 4px; }
.sl-lb-actions { display: flex; gap: 8px; margin: 0; }
.sl-lb-actions a, .sl-lb-actions button {
    color: #fff; background: rgba(255, 255, 255, 0.14); border: none; border-radius: 8px;
    padding: 8px 12px; cursor: pointer; text-decoration: none;
    display: inline-flex; align-items: center; gap: 6px; font: inherit;
}
.sl-lb-actions a:hover, .sl-lb-actions button:hover { background: rgba(255, 255, 255, 0.26); }
.sl-lb-actions .faved { color: #ff4081; }

.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;
}