/* /Components/Layout/MainLayout.razor.rz.scp.css */
.page[b-ppkm0rjfkr] {
    position: relative;
    display: flex;
    flex-direction: column;
}

main[b-ppkm0rjfkr] {
    flex: 1;
}

/* ── Sidebar ──────────────────────────────────────────── */
.sidebar[b-ppkm0rjfkr] {
    background: #1e2d5a;
}

/* ── Top bar (main content area) ─────────────────────── */
.top-row[b-ppkm0rjfkr] {
    background-color: #ffffff;
    border-bottom: 1px solid #e2e6ef;
    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: center;
    box-shadow: 0 1px 4px rgba(30, 45, 90, 0.06);
}

.top-row[b-ppkm0rjfkr]  a, .top-row[b-ppkm0rjfkr]  .btn-link {
    white-space: nowrap;
    margin-left: 1.5rem;
    text-decoration: none;
    font-weight: 600;
    font-size: 0.875rem;
    color: #3d5a99;
}

.top-row[b-ppkm0rjfkr]  a:hover, .top-row[b-ppkm0rjfkr]  .btn-link:hover {
    text-decoration: underline;
}

.top-row[b-ppkm0rjfkr]  a:first-child {
    overflow: hidden;
    text-overflow: ellipsis;
}

@media (max-width: 640.98px) {
    .top-row[b-ppkm0rjfkr] {
        justify-content: space-between;
    }

    .top-row[b-ppkm0rjfkr]  a, .top-row[b-ppkm0rjfkr]  .btn-link {
        margin-left: 0;
    }
}

@media (min-width: 641px) {
    .page[b-ppkm0rjfkr] {
        flex-direction: row;
    }

    .sidebar[b-ppkm0rjfkr] {
        width: 260px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    .top-row[b-ppkm0rjfkr] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .top-row.auth[b-ppkm0rjfkr]  a:first-child {
        flex: 1;
        text-align: right;
        width: 0;
    }

    .top-row[b-ppkm0rjfkr], article[b-ppkm0rjfkr] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}

/* /Components/Layout/MarketingLayout.razor.rz.scp.css */
/* ── Page shell ───────────────────────────────────────── */
.marketing-page[b-wakbbwuzjk] {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

.marketing-main[b-wakbbwuzjk] {
    flex: 1;
}

/* ── Header ───────────────────────────────────────────── */
.marketing-header[b-wakbbwuzjk] {
    position: sticky;
    top: 0;
    z-index: 100;
    background: rgba(255, 255, 255, 0.92);
    backdrop-filter: blur(8px);
    border-bottom: 1px solid #e2e6ef;
    box-shadow: 0 1px 4px rgba(30, 45, 90, 0.06);
}

.marketing-header-inner[b-wakbbwuzjk] {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 1.5rem;
    height: 4rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* ── Brand ────────────────────────────────────────────── */
.marketing-brand[b-wakbbwuzjk] {
    font-family: 'Nunito', sans-serif;
    font-size: 1.4rem;
    font-weight: 800;
    color: #1e2d5a !important;
    text-decoration: none !important;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    letter-spacing: -0.02em;
}

.marketing-brand-icon[b-wakbbwuzjk] {
    width: 4rem;
    height: 4rem;
    object-fit: contain;
    flex-shrink: 0;
}

.marketing-brand-icon.sm[b-wakbbwuzjk] {
    width: 2rem;
    height: 2rem;
}

/* ── Header nav ───────────────────────────────────────── */
.marketing-nav[b-wakbbwuzjk] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.marketing-nav a[b-wakbbwuzjk] {
    font-weight: 600;
    font-size: 0.9rem;
    color: #3a3a52;
    text-decoration: none;
    transition: color 0.15s ease;
}

.marketing-nav a:hover[b-wakbbwuzjk] {
    color: #3d5a99;
}

.marketing-nav .btn[b-wakbbwuzjk] {
    font-size: 0.85rem;
    padding: 0.35rem 0.9rem;
    font-weight: 700;
    border-radius: 7px;
}

.marketing-nav .btn-outline-primary[b-wakbbwuzjk] {
    border-color: #3d5a99;
    color: #3d5a99;
}

.marketing-nav .btn-outline-primary:hover[b-wakbbwuzjk] {
    background-color: #3d5a99;
    color: #fff;
}

/* ── Footer ───────────────────────────────────────────── */
.marketing-footer[b-wakbbwuzjk] {
    background: #f4f6fb;
    border-top: 1px solid #e2e6ef;
    padding: 1.5rem 0;
}

.marketing-footer-inner[b-wakbbwuzjk] {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 1.5rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 0.5rem;
    font-size: 0.875rem;
}

.marketing-footer-links[b-wakbbwuzjk] {
    display: flex;
    gap: 1.25rem;
}

.marketing-footer-links a[b-wakbbwuzjk] {
    font-size: 0.875rem;
    font-weight: 600;
    color: #4b5563;
    text-decoration: none;
    transition: color 0.15s ease;
}

.marketing-footer-links a:hover[b-wakbbwuzjk] {
    color: #3d5a99;
}

.marketing-brand-footer[b-wakbbwuzjk] {
    font-weight: 800;
    color: #1e2d5a;
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-family: 'Nunito', sans-serif;
    letter-spacing: -0.01em;
}

/* ── Blazor error UI ──────────────────────────────────── */
#blazor-error-ui[b-wakbbwuzjk] {
    color-scheme: light only;
    background: #fff3cd;
    border-top: 2px solid #ffc107;
    bottom: 0;
    box-shadow: 0 -1px 4px rgba(0, 0, 0, 0.1);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
    font-size: 0.9rem;
}

#blazor-error-ui .dismiss[b-wakbbwuzjk] {
    cursor: pointer;
    position: absolute;
    right: 0.75rem;
    top: 0.5rem;
}
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.nav-logo[b-1el9ow2tnh] {
    width: 2rem;
    height: 2rem;
    object-fit: contain;
    margin-right: 0.4rem;
    vertical-align: middle;
}

/* ── Mobile toggle ────────────────────────────────────── */
.navbar-toggler[b-1el9ow2tnh] {
    appearance: none;
    cursor: pointer;
    width: 3.5rem;
    height: 2.5rem;
    color: white;
    position: absolute;
    top: 0.5rem;
    right: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 6px;
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.8%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center/1.75rem transparent;
}

.navbar-toggler:checked[b-1el9ow2tnh] {
    background-color: rgba(255, 255, 255, 0.15);
}

/* ── Sidebar top bar (brand row) ──────────────────────── */
.top-row[b-1el9ow2tnh] {
    min-height: 3.5rem;
    background-color: #162247;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    display: flex;
    align-items: center;
}

/* ── Brand ────────────────────────────────────────────── */
.navbar-brand[b-1el9ow2tnh] {
    font-family: 'Nunito', sans-serif;
    font-size: 1.35rem;
    font-weight: 800;
    color: #ffffff !important;
    letter-spacing: -0.02em;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

/* ── Nav icons ────────────────────────────────────────── */
.bi[b-1el9ow2tnh] {
    display: inline-block;
    position: relative;
    width: 1.15rem;
    height: 1.15rem;
    margin-right: 0.65rem;
    top: -1px;
    background-size: cover;
    opacity: 0.85;
}

.bi-house-door-fill-nav-menu[b-1el9ow2tnh] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-house-door-fill' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5Z'/%3E%3C/svg%3E");
}

.bi-plus-square-fill-nav-menu[b-1el9ow2tnh] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-plus-square-fill' viewBox='0 0 16 16'%3E%3Cpath d='M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm6.5 4.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3a.5.5 0 0 1 1 0z'/%3E%3C/svg%3E");
}

.bi-check2-square-nav-menu[b-1el9ow2tnh] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' viewBox='0 0 16 16'%3E%3Cpath d='M3 14.5A1.5 1.5 0 0 1 1.5 13V3A1.5 1.5 0 0 1 3 1.5h8a.5.5 0 0 1 0 1H3a.5.5 0 0 0-.5.5v10a.5.5 0 0 0 .5.5h10a.5.5 0 0 0 .5-.5V8a.5.5 0 0 1 1 0v5a1.5 1.5 0 0 1-1.5 1.5H3Z'/%3E%3Cpath d='m8.354 10.354 7-7a.5.5 0 0 0-.708-.708L8 9.293 5.354 6.646a.5.5 0 1 0-.708.708l3 3a.5.5 0 0 0 .708 0Z'/%3E%3C/svg%3E");
}

.bi-people-fill-nav-menu[b-1el9ow2tnh] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' viewBox='0 0 16 16'%3E%3Cpath d='M7 14s-1 0-1-1 1-4 5-4 5 3 5 4-1 1-1 1H7Zm4-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6Zm-5.784 6A2.238 2.238 0 0 1 5 13c0-1.355.68-2.75 1.936-3.72A6.325 6.325 0 0 0 5 9c-4 0-5 3-5 4s1 1 1 1h4.216ZM4.5 8a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5Z'/%3E%3C/svg%3E");
}

.bi-person-circle-nav-menu[b-1el9ow2tnh] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' viewBox='0 0 16 16'%3E%3Cpath d='M11 6a3 3 0 1 1-6 0 3 3 0 0 1 6 0z'/%3E%3Cpath fill-rule='evenodd' d='M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8zm8-7a7 7 0 0 0-5.468 11.37C3.242 11.226 4.805 10 8 10s4.757 1.225 5.468 2.37A7 7 0 0 0 8 1z'/%3E%3C/svg%3E");
}

.bi-gift-fill-nav-menu[b-1el9ow2tnh] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' viewBox='0 0 16 16'%3E%3Cpath d='M3 2.5a2.5 2.5 0 0 1 5 0 2.5 2.5 0 0 1 5 0v.006c0 .07 0 .27-.038.494H15a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1v7.5a1.5 1.5 0 0 1-1.5 1.5h-11A1.5 1.5 0 0 1 1 14.5V7a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h2.038A2.968 2.968 0 0 1 3 2.506V2.5zm1.068.5H7v-.5a1.5 1.5 0 1 0-3 0c0 .085.002.274.045.43a.522.522 0 0 0 .023.07zM9 3h2.932a.56.56 0 0 0 .023-.07c.043-.156.045-.345.045-.43a1.5 1.5 0 0 0-3 0V3zM1 4v2h6V4H1zm8 0v2h6V4H9zm5 3H9v8h4.5a.5.5 0 0 0 .5-.5V7zm-7 8V7H2v7.5a.5.5 0 0 0 .5.5H7z'/%3E%3C/svg%3E");
}

.bi-gear-fill-nav-menu[b-1el9ow2tnh] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' viewBox='0 0 16 16'%3E%3Cpath d='M8 4.754a3.246 3.246 0 1 0 0 6.492 3.246 3.246 0 0 0 0-6.492zM5.754 8a2.246 2.246 0 1 1 4.492 0 2.246 2.246 0 0 1-4.492 0z'/%3E%3Cpath d='M9.796 1.343c-.527-1.79-3.065-1.79-3.592 0l-.094.319a.873.873 0 0 1-1.255.52l-.292-.16c-1.64-.892-3.433.902-2.54 2.541l.159.292a.873.873 0 0 1-.52 1.255l-.319.094c-1.79.527-1.79 3.065 0 3.592l.319.094a.873.873 0 0 1 .52 1.255l-.16.292c-.892 1.64.901 3.434 2.541 2.54l.292-.159a.873.873 0 0 1 1.255.52l.094.319c.527 1.79 3.065 1.79 3.592 0l.094-.319a.873.873 0 0 1 1.255-.52l.292.16c1.64.893 3.434-.902 2.54-2.541l-.159-.292a.873.873 0 0 1 .52-1.255l.319-.094c1.79-.527 1.79-3.065 0-3.592l-.319-.094a.873.873 0 0 1-.52-1.255l.16-.292c.893-1.64-.902-3.433-2.541-2.54l-.292.159a.873.873 0 0 1-1.255-.52l-.094-.319zm-2.633.283c.246-.835 1.428-.835 1.674 0l.094.319a1.873 1.873 0 0 0 2.693 1.115l.291-.16c.764-.415 1.6.42 1.184 1.185l-.159.292a1.873 1.873 0 0 0 1.116 2.692l.318.094c.835.246.835 1.428 0 1.674l-.319.094a1.873 1.873 0 0 0-1.115 2.693l.16.291c.415.764-.42 1.6-1.185 1.184l-.291-.159a1.873 1.873 0 0 0-2.693 1.116l-.094.318c-.246.835-1.428.835-1.674 0l-.094-.319a1.873 1.873 0 0 0-2.692-1.115l-.292.16c-.764.415-1.6-.42-1.184-1.185l.159-.291A1.873 1.873 0 0 0 1.945 8.93l-.319-.094c-.835-.246-.835-1.428 0-1.674l.319-.094A1.873 1.873 0 0 0 3.06 4.474l-.16-.292c-.415-.764.42-1.6 1.185-1.184l.292.159a1.873 1.873 0 0 0 2.692-1.115l.094-.319z'/%3E%3C/svg%3E");
}

.bi-box-seam-fill-nav-menu[b-1el9ow2tnh] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' viewBox='0 0 16 16'%3E%3Cpath d='M8.186 1.113a.5.5 0 0 0-.372 0L1.846 3.5l2.404.961L10.404 2l-2.218-.887zm3.564 1.426L5.596 5 8 5.961 14.154 3.5l-2.404-.961zm3.25 1.7-6.5 2.6v7.922l6.5-2.6V4.24zM7.5 14.762V6.838L1 4.239v7.923l6.5 2.6zM7.443.184a1.5 1.5 0 0 1 1.114 0l7.129 2.852A.5.5 0 0 1 16 3.5v8.662a1 1 0 0 1-.629.928l-7.185 2.874a.5.5 0 0 1-.372 0L.63 13.09a1 1 0 0 1-.63-.928V3.5a.5.5 0 0 1 .314-.464L7.443.184z'/%3E%3C/svg%3E");
}

.bi-kanban-fill-nav-menu[b-1el9ow2tnh] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' viewBox='0 0 16 16'%3E%3Cpath d='M13.5 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1h-11a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h11zm-11-1a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h11a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2h-11z'/%3E%3Cpath d='M6.5 3a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1V3zm-4 0a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v7a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1V3zm8 0a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1V3z'/%3E%3C/svg%3E");
}

.bi-sliders-nav-menu[b-1el9ow2tnh] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' viewBox='0 0 16 16'%3E%3Cpath d='M11.5 2a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3zM9.05 3a2.5 2.5 0 0 1 4.9 0H16v1h-2.05a2.5 2.5 0 0 1-4.9 0H0V3h9.05zM4.5 7a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3zM2.05 8a2.5 2.5 0 0 1 4.9 0H16v1H6.95a2.5 2.5 0 0 1-4.9 0H0V8h2.05zm9.45 4a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3zm-2.45 1a2.5 2.5 0 0 1 4.9 0H16v1h-2.05a2.5 2.5 0 0 1-4.9 0H0v-1h9.05z'/%3E%3C/svg%3E");
}

.bi-person-fill-nav-menu[b-1el9ow2tnh] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' viewBox='0 0 16 16'%3E%3Cpath d='M3 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H3zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6z'/%3E%3C/svg%3E");
}

.bi-list-nested-nav-menu[b-1el9ow2tnh] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-list-nested' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M4.5 11.5A.5.5 0 0 1 5 11h10a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 3 7h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 1 3h10a.5.5 0 0 1 0 1H1a.5.5 0 0 1-.5-.5z'/%3E%3C/svg%3E");
}

/* ── Nav items ────────────────────────────────────────── */
.nav-item[b-1el9ow2tnh] {
    font-size: 0.875rem;
    font-weight: 600;
    padding-bottom: 0.25rem;
}

.nav-item:first-of-type[b-1el9ow2tnh] {
    padding-top: 0.75rem;
}

.nav-item:last-of-type[b-1el9ow2tnh] {
    padding-bottom: 0.75rem;
}

.nav-item[b-1el9ow2tnh]  .nav-link {
    color: rgba(255, 255, 255, 0.72);
    background: none;
    border: none;
    border-radius: 8px;
    height: 2.75rem;
    display: flex;
    align-items: center;
    line-height: 1;
    width: 100%;
    padding: 0 0.75rem;
    transition: background-color 0.15s ease, color 0.15s ease;
}

.nav-item[b-1el9ow2tnh]  a.active {
    background-color: rgba(78, 125, 212, 0.35);
    color: #ffffff;
}

.nav-item[b-1el9ow2tnh]  a.active .bi {
    opacity: 1;
}

.nav-item[b-1el9ow2tnh]  .nav-link:hover {
    background-color: rgba(255, 255, 255, 0.08);
    color: #ffffff;
}

/* ── Scrollable nav area ──────────────────────────────── */
.nav-scrollable[b-1el9ow2tnh] {
    display: none;
    padding: 0 0.75rem;
}

.navbar-toggler:checked ~ .nav-scrollable[b-1el9ow2tnh] {
    display: block;
}

@media (min-width: 641px) {
    .navbar-toggler[b-1el9ow2tnh] {
        display: none;
    }

    .nav-scrollable[b-1el9ow2tnh] {
        display: block;
        height: calc(100vh - 3.5rem);
        overflow-y: auto;
    }
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-0klzejzvsz],
.components-reconnect-repeated-attempt-visible[b-0klzejzvsz],
.components-reconnect-failed-visible[b-0klzejzvsz],
.components-pause-visible[b-0klzejzvsz],
.components-resume-failed-visible[b-0klzejzvsz],
.components-rejoining-animation[b-0klzejzvsz] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-0klzejzvsz],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-0klzejzvsz],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-0klzejzvsz],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-0klzejzvsz],
#components-reconnect-modal.components-reconnect-retrying[b-0klzejzvsz],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-0klzejzvsz],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-0klzejzvsz],
#components-reconnect-modal.components-reconnect-failed[b-0klzejzvsz],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-0klzejzvsz] {
    display: block;
}


#components-reconnect-modal[b-0klzejzvsz] {
    font-family: 'Nunito', 'Segoe UI', sans-serif;
    background-color: white;
    width: 22rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    border-radius: 14px;
    box-shadow: 0 8px 32px rgba(30, 45, 90, 0.18);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-0klzejzvsz 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-0klzejzvsz 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-0klzejzvsz 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-0klzejzvsz]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-0klzejzvsz 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-0klzejzvsz {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-0klzejzvsz {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-0klzejzvsz {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-0klzejzvsz] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-0klzejzvsz] {
    margin: 0;
    text-align: center;
    font-size: 0.95rem;
    font-weight: 600;
    color: #1e2d5a;
    line-height: 1.5;
}

#components-reconnect-modal button[b-0klzejzvsz] {
    border: 0;
    background-color: #3d5a99;
    color: white;
    padding: 0.5rem 1.5rem;
    border-radius: 8px;
    font-family: 'Nunito', 'Segoe UI', sans-serif;
    font-size: 0.9rem;
    font-weight: 700;
    cursor: pointer;
    transition: background-color 0.15s ease;
}

    #components-reconnect-modal button:hover[b-0klzejzvsz] {
        background-color: #2b4080;
    }

    #components-reconnect-modal button:active[b-0klzejzvsz] {
        background-color: #3d5a99;
    }

.components-rejoining-animation[b-0klzejzvsz] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-0klzejzvsz] {
        position: absolute;
        border: 3px solid #3d5a99;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-0klzejzvsz 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-0klzejzvsz] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-0klzejzvsz {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Pages/Dashboard/Account.razor.rz.scp.css */
/* ── Family code display ───────────────────────────────── */
.family-code-display[b-eczz7siti1] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.family-code-value[b-eczz7siti1] {
    font-family: 'Courier New', monospace;
    font-size: 1.15rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    background: #f1f3f9;
    border: 1px solid #d1d9e8;
    border-radius: 8px;
    padding: 0.35rem 0.75rem;
    color: #1e2d5a;
    user-select: all;
}

/* ── Page ─────────────────────────────────────────────── */
.account-page[b-eczz7siti1] {
    max-width: 760px;
}

.account-header[b-eczz7siti1] {
    margin-bottom: 2rem;
}

.account-header h1[b-eczz7siti1] {
    margin-bottom: 0.2rem;
}

.account-subtitle[b-eczz7siti1] {
    color: #6b7280;
    font-size: 0.9rem;
    margin: 0;
}

/* ── Sections ─────────────────────────────────────────── */
.account-sections[b-eczz7siti1] {
    display: flex;
    flex-direction: column;
    gap: 1.75rem;
}

.account-section[b-eczz7siti1] {
    background: #ffffff;
    border: 1px solid #e2e6ef;
    border-radius: 12px;
    overflow: hidden;
}

.account-section-header[b-eczz7siti1] {
    padding: 1.1rem 1.5rem;
    border-bottom: 1px solid #e2e6ef;
    background: #f8faff;
}

.account-section-header h2[b-eczz7siti1] {
    font-size: 1rem;
    font-weight: 700;
    margin: 0 0 0.15rem;
    color: #1a2340;
}

.account-section-header p[b-eczz7siti1] {
    font-size: 0.82rem;
    color: #6b7280;
    margin: 0;
}

.account-section-body[b-eczz7siti1] {
    padding: 0.25rem 0;
}

/* ── Setting rows ─────────────────────────────────────── */
.setting-row[b-eczz7siti1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    padding: 0.85rem 1.5rem;
    border-bottom: 1px solid #f0f2f7;
}

.setting-row:last-of-type[b-eczz7siti1] {
    border-bottom: none;
}

.setting-label[b-eczz7siti1] {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
    flex: 1;
    min-width: 0;
}

.setting-name[b-eczz7siti1] {
    font-size: 0.875rem;
    font-weight: 600;
    color: #1a2340;
}

.setting-hint[b-eczz7siti1] {
    font-size: 0.78rem;
    color: #6b7280;
}

.setting-value[b-eczz7siti1] {
    flex-shrink: 0;
}

.setting-input[b-eczz7siti1] {
    width: 220px;
    font-size: 0.875rem;
}

/* ── Section save button ──────────────────────────────── */
.section-actions[b-eczz7siti1] {
    padding: 0.85rem 1.5rem;
    border-top: 1px solid #f0f2f7;
    display: flex;
    justify-content: flex-end;
}

/* ── Toggle switches ──────────────────────────────────── */
.toggle[b-eczz7siti1] {
    position: relative;
    display: inline-block;
    width: 42px;
    height: 24px;
    cursor: pointer;
}

.toggle input[b-eczz7siti1] {
    opacity: 0;
    width: 0;
    height: 0;
    position: absolute;
}

.toggle-slider[b-eczz7siti1] {
    position: absolute;
    inset: 0;
    background: #d1d5db;
    border-radius: 24px;
    transition: background 0.2s ease;
}

.toggle-slider[b-eczz7siti1]::before {
    content: "";
    position: absolute;
    width: 18px;
    height: 18px;
    left: 3px;
    top: 3px;
    background: white;
    border-radius: 50%;
    transition: transform 0.2s ease;
    box-shadow: 0 1px 3px rgba(0,0,0,0.15);
}

.toggle input:checked + .toggle-slider[b-eczz7siti1] {
    background: #4e7dd4;
}

.toggle input:checked + .toggle-slider[b-eczz7siti1]::before {
    transform: translateX(18px);
}

/* ── Billing plan card ────────────────────────────────── */
.billing-plan-card[b-eczz7siti1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.5rem;
    background: #f0f4ff;
    border-bottom: 1px solid #e2e6ef;
    flex-wrap: wrap;
}

.billing-plan-info[b-eczz7siti1] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.plan-badge[b-eczz7siti1] {
    display: inline-block;
    font-size: 0.75rem;
    font-weight: 700;
    color: #4e7dd4;
    background: #dce8ff;
    border-radius: 6px;
    padding: 0.2rem 0.55rem;
    width: fit-content;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.plan-desc[b-eczz7siti1] {
    font-size: 0.82rem;
    color: #6b7280;
    margin: 0;
}

/* ── Support links ────────────────────────────────────── */
.support-links[b-eczz7siti1] {
    display: flex;
    flex-direction: column;
}

.support-link-card[b-eczz7siti1] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.9rem 1.5rem;
    text-decoration: none;
    color: inherit;
    border-bottom: 1px solid #f0f2f7;
    transition: background 0.15s ease;
}

.support-link-card:last-child[b-eczz7siti1] {
    border-bottom: none;
}

.support-link-card:hover[b-eczz7siti1] {
    background: #f8faff;
    color: inherit;
}

.support-link-icon[b-eczz7siti1] {
    font-size: 1.4rem;
    flex-shrink: 0;
    width: 2rem;
    text-align: center;
}

.support-link-title[b-eczz7siti1] {
    font-size: 0.875rem;
    font-weight: 600;
    color: #1a2340;
}

.support-link-desc[b-eczz7siti1] {
    font-size: 0.78rem;
    color: #6b7280;
}

/* ── Danger zone ──────────────────────────────────────── */
.danger-section[b-eczz7siti1] {
    border-color: #fecaca;
}

.danger-section .account-section-header[b-eczz7siti1] {
    background: #fff5f5;
    border-bottom-color: #fecaca;
}

.danger-section .account-section-header h2[b-eczz7siti1] {
    color: #b91c1c;
}
/* /Components/Pages/Dashboard/Inventory.razor.rz.scp.css */
.inventory-page[b-a2lcjfslfy] {
    padding: 2rem;
    max-width: 1100px;
}

.inventory-header[b-a2lcjfslfy] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 1.5rem;
}

.inventory-header h1[b-a2lcjfslfy] {
    margin: 0 0 0.25rem;
}

.inventory-subtitle[b-a2lcjfslfy] {
    color: var(--bs-secondary-color, #6c757d);
    margin: 0;
}

.inventory-toolbar[b-a2lcjfslfy] {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
    margin-bottom: 1.5rem;
}

.search-input[b-a2lcjfslfy] {
    max-width: 280px;
}

.tag-filters[b-a2lcjfslfy] {
    display: flex;
    gap: 0.4rem;
    flex-wrap: wrap;
}

.low-stock-filter[b-a2lcjfslfy] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-left: auto;
}

.inventory-table-wrapper[b-a2lcjfslfy] {
    overflow-x: auto;
}

.inventory-table th[b-a2lcjfslfy] {
    font-weight: 600;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--bs-secondary-color, #6c757d);
    border-top: none;
}

.inventory-table td[b-a2lcjfslfy] {
    vertical-align: middle;
}

.item-name[b-a2lcjfslfy] {
    font-weight: 500;
}

.quantity-value[b-a2lcjfslfy] {
    font-variant-numeric: tabular-nums;
}

.quantity-unit[b-a2lcjfslfy] {
    font-size: 0.875rem;
}

.row-low-stock[b-a2lcjfslfy] {
    background-color: rgba(220, 53, 69, 0.04);
}

.badge-low-stock[b-a2lcjfslfy] {
    background-color: #fff3cd;
    color: #856404;
    font-weight: 500;
    font-size: 0.72rem;
}

.badge-out-of-stock[b-a2lcjfslfy] {
    background-color: #f8d7da;
    color: #842029;
    font-weight: 500;
    font-size: 0.72rem;
}

.badge-tag[b-a2lcjfslfy] {
    background-color: var(--bs-light, #f8f9fa);
    color: var(--bs-body-color, #212529);
    border: 1px solid var(--bs-border-color, #dee2e6);
    font-weight: 400;
    font-size: 0.72rem;
}

.empty-state[b-a2lcjfslfy] {
    text-align: center;
    padding: 3rem;
    color: var(--bs-secondary-color, #6c757d);
}

.loading-text[b-a2lcjfslfy] {
    color: var(--bs-secondary-color, #6c757d);
    padding: 2rem 0;
}
/* /Components/Pages/Dashboard/InventoryItem.razor.rz.scp.css */
.item-page[b-h442hl11h1] {
    padding: 2rem;
    max-width: 760px;
}

.item-header[b-h442hl11h1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 2rem;
}

.item-breadcrumb[b-h442hl11h1] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.95rem;
}

.item-breadcrumb a[b-h442hl11h1] {
    color: var(--bs-primary, #0d6efd);
    text-decoration: none;
}

.item-breadcrumb a:hover[b-h442hl11h1] {
    text-decoration: underline;
}

.breadcrumb-sep[b-h442hl11h1] {
    color: var(--bs-secondary-color, #6c757d);
}

.item-header-actions[b-h442hl11h1] {
    display: flex;
    gap: 0.5rem;
}

.item-body[b-h442hl11h1] {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

.item-section[b-h442hl11h1] {
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: 0.5rem;
    overflow: hidden;
}

.item-section-title[b-h442hl11h1] {
    font-size: 0.85rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--bs-secondary-color, #6c757d);
    margin: 0;
    padding: 0.75rem 1.25rem;
    background: var(--bs-light, #f8f9fa);
    border-bottom: 1px solid var(--bs-border-color, #dee2e6);
}

.item-section-body[b-h442hl11h1] {
    padding: 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.field-row[b-h442hl11h1] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.field-row-inline[b-h442hl11h1] {
    flex-direction: row;
    gap: 1rem;
}

.field-col[b-h442hl11h1] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.field-label[b-h442hl11h1] {
    font-size: 0.875rem;
    font-weight: 500;
}

.required[b-h442hl11h1] {
    color: var(--bs-danger, #dc3545);
}

.tag-picker[b-h442hl11h1] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
}

.tag-toggle[b-h442hl11h1] {
    border-radius: 999px;
}

.attr-row[b-h442hl11h1] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding: 0.75rem;
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: 0.375rem;
}

.attr-row-header[b-h442hl11h1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}

.attr-row-actions[b-h442hl11h1] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    flex-shrink: 0;
}

.attr-label[b-h442hl11h1] {
    font-size: 0.875rem;
    font-weight: 500;
    margin: 0;
}

.attr-value-area[b-h442hl11h1] {
    font-size: 0.9rem;
}

.attr-display-text[b-h442hl11h1] {
    color: var(--bs-body-color);
}

.attr-color-display[b-h442hl11h1] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.attr-color-swatch[b-h442hl11h1] {
    display: inline-block;
    width: 1.25rem;
    height: 1.25rem;
    border-radius: 0.25rem;
    border: 1px solid var(--bs-border-color, #dee2e6);
    flex-shrink: 0;
}

.attr-chips[b-h442hl11h1] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.3rem;
}

.attr-chip[b-h442hl11h1] {
    font-weight: 400;
}

.attr-table-display[b-h442hl11h1] {
    font-size: 0.875rem;
}

.attr-table-display th[b-h442hl11h1] {
    font-weight: 600;
    white-space: nowrap;
}

.attr-table-edit td[b-h442hl11h1] {
    padding: 0.25rem;
    vertical-align: middle;
}

.attr-table-edit th[b-h442hl11h1] {
    font-weight: 600;
    white-space: nowrap;
    padding: 0.5rem 0.5rem;
}

.add-attr-row[b-h442hl11h1] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
    padding-top: 0.5rem;
    border-top: 1px solid var(--bs-border-color, #dee2e6);
}

.add-attr-select[b-h442hl11h1] {
    flex: 1;
    max-width: 280px;
}

.loading-text[b-h442hl11h1] {
    color: var(--bs-secondary-color, #6c757d);
}
/* /Components/Pages/Dashboard/ProjectDetail.razor.rz.scp.css */
.project-detail-page[b-kymg7u7xf2] {
    padding: 2rem;
    max-width: 860px;
}

.detail-header[b-kymg7u7xf2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 2rem;
}

.detail-breadcrumb[b-kymg7u7xf2] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.95rem;
}

.detail-breadcrumb a[b-kymg7u7xf2] {
    color: var(--bs-primary, #0d6efd);
    text-decoration: none;
}

.detail-breadcrumb a:hover[b-kymg7u7xf2] { text-decoration: underline; }

.breadcrumb-sep[b-kymg7u7xf2] { color: var(--bs-secondary-color, #6c757d); }

.detail-header-actions[b-kymg7u7xf2] { display: flex; gap: 0.5rem; }

.detail-body[b-kymg7u7xf2] {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

.detail-section[b-kymg7u7xf2] {
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: 0.5rem;
    overflow: hidden;
}

.detail-section-title-row[b-kymg7u7xf2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1.25rem;
    background: var(--bs-light, #f8f9fa);
    border-bottom: 1px solid var(--bs-border-color, #dee2e6);
}

.detail-section-title-row .detail-section-title[b-kymg7u7xf2] {
    padding: 0;
    background: none;
    border-bottom: none;
}

.section-title-meta[b-kymg7u7xf2] {
    font-size: 0.8rem;
    color: var(--bs-secondary-color, #6c757d);
}

.detail-section-title[b-kymg7u7xf2] {
    font-size: 0.85rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--bs-secondary-color, #6c757d);
    margin: 0;
    padding: 0.75rem 1.25rem;
    background: var(--bs-light, #f8f9fa);
    border-bottom: 1px solid var(--bs-border-color, #dee2e6);
}

.detail-section-body[b-kymg7u7xf2] {
    padding: 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.field-row[b-kymg7u7xf2] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.field-row-inline[b-kymg7u7xf2] {
    flex-direction: row;
    gap: 1rem;
}

.field-col[b-kymg7u7xf2] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.field-label[b-kymg7u7xf2] {
    font-size: 0.875rem;
    font-weight: 500;
}

.required[b-kymg7u7xf2] { color: var(--bs-danger, #dc3545); }

.template-picker-row[b-kymg7u7xf2] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

/* ── Task list ── */

.task-list[b-kymg7u7xf2] {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0;
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: 0.375rem;
    overflow: hidden;
}

.task-item[b-kymg7u7xf2] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.6rem 1rem;
    border-bottom: 1px solid var(--bs-border-color, #dee2e6);
    background: #fff;
}

.task-item:last-child[b-kymg7u7xf2] { border-bottom: none; }

.task-item--complete[b-kymg7u7xf2] {
    background: #f6faf8;
}

.task-item--complete .task-readonly-name[b-kymg7u7xf2] {
    text-decoration: line-through;
    color: var(--bs-secondary-color, #6c757d);
}

.btn-xs[b-kymg7u7xf2] {
    padding: 0.1rem 0.45rem;
    font-size: 0.75rem;
    line-height: 1.4;
    flex-shrink: 0;
}

.task-readonly-name[b-kymg7u7xf2] {
    font-size: 0.9rem;
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.task-readonly-meta[b-kymg7u7xf2] {
    font-size: 0.8rem;
    color: var(--bs-secondary-color, #6c757d);
    white-space: nowrap;
    flex-shrink: 0;
}

.task-status-badge[b-kymg7u7xf2] {
    font-size: 0.72rem;
    font-weight: 500;
    padding: 0.15rem 0.5rem;
    border-radius: 999px;
    white-space: nowrap;
    flex-shrink: 0;
}

.task-status-badge--incomplete[b-kymg7u7xf2] {
    background: var(--bs-light, #f8f9fa);
    border: 1px solid var(--bs-border-color, #dee2e6);
    color: var(--bs-secondary-color, #6c757d);
}

.task-status-badge--inprogress[b-kymg7u7xf2] {
    background: #fff3cd;
    border: 1px solid #ffc107;
    color: #856404;
}

.task-status-badge--complete[b-kymg7u7xf2] {
    background: #d1e7dd;
    border: 1px solid #a3cfbb;
    color: #0f5132;
}

.add-task-row[b-kymg7u7xf2] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
    padding-top: 0.25rem;
}

/* ── Materials ── */

.material-list[b-kymg7u7xf2] {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0;
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: 0.375rem;
    overflow: hidden;
}

.material-item[b-kymg7u7xf2] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.6rem 1rem;
    border-bottom: 1px solid var(--bs-border-color, #dee2e6);
    background: #fff;
}

.material-item:last-child[b-kymg7u7xf2] { border-bottom: none; }

.material-item--understocked[b-kymg7u7xf2] { background: #fff8f8; }

.material-warning-icon[b-kymg7u7xf2] {
    flex-shrink: 0;
    color: var(--bs-danger, #dc3545);
}

.material-name-group[b-kymg7u7xf2] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
}

.material-name[b-kymg7u7xf2] {
    font-size: 0.9rem;
    font-weight: 500;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.material-short-text[b-kymg7u7xf2] {
    font-size: 0.75rem;
    color: var(--bs-danger, #dc3545);
}

.material-qty-group[b-kymg7u7xf2] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    flex-shrink: 0;
}

.material-qty-input[b-kymg7u7xf2] { width: 72px; }
.material-unit[b-kymg7u7xf2] { font-size: 0.8rem; white-space: nowrap; width: 70px; }

.material-stock[b-kymg7u7xf2] {
    font-size: 0.8rem;
    white-space: nowrap;
    flex-shrink: 0;
    width: 120px;
    text-align: right;
}

.add-material-row[b-kymg7u7xf2] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
    padding-top: 0.25rem;
}

.add-material-select[b-kymg7u7xf2] { flex: 1; }

.empty-hint[b-kymg7u7xf2] {
    font-size: 0.875rem;
    color: var(--bs-secondary-color, #6c757d);
    margin: 0;
}

.loading-text[b-kymg7u7xf2] { color: var(--bs-secondary-color, #6c757d); }

/* ── Task modal ── */

.task-modal-backdrop[b-kymg7u7xf2] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.45);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
    padding: 1rem;
}

.task-modal[b-kymg7u7xf2] {
    background: #fff;
    border-radius: 0.5rem;
    box-shadow: 0 8px 32px rgba(0,0,0,0.18);
    width: 100%;
    max-width: 440px;
    display: flex;
    flex-direction: column;
}

.task-modal-header[b-kymg7u7xf2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.25rem 0.75rem;
    border-bottom: 1px solid var(--bs-border-color, #dee2e6);
}

.task-modal-title[b-kymg7u7xf2] {
    font-size: 1rem;
    font-weight: 600;
    margin: 0;
}

.task-modal-close[b-kymg7u7xf2] {
    background: none;
    border: none;
    font-size: 1.4rem;
    line-height: 1;
    color: var(--bs-secondary-color, #6c757d);
    cursor: pointer;
    padding: 0 0.25rem;
}

.task-modal-close:hover[b-kymg7u7xf2] { color: #000; }

.task-modal-body[b-kymg7u7xf2] {
    padding: 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.task-modal-footer[b-kymg7u7xf2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1.25rem 1rem;
    border-top: 1px solid var(--bs-border-color, #dee2e6);
}

.task-modal-footer-right[b-kymg7u7xf2] {
    display: flex;
    gap: 0.5rem;
}
/* /Components/Pages/Dashboard/Projects.razor.rz.scp.css */
.projects-page[b-rh9r9yhkl6] {
    padding: 2rem;
    max-width: 900px;
}

.projects-header[b-rh9r9yhkl6] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 1.5rem;
}

.projects-header h1[b-rh9r9yhkl6] { margin: 0 0 0.25rem; }

.projects-subtitle[b-rh9r9yhkl6] {
    color: var(--bs-secondary-color, #6c757d);
    margin: 0;
}

.projects-toolbar[b-rh9r9yhkl6] {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
    margin-bottom: 1.5rem;
}

.status-filters[b-rh9r9yhkl6] {
    display: flex;
    gap: 0.4rem;
    flex-wrap: wrap;
    flex-shrink: 0;
}

.projects-search[b-rh9r9yhkl6] {
    max-width: 220px;
}

.project-list[b-rh9r9yhkl6] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.project-card[b-rh9r9yhkl6] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.1rem 1.25rem;
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: 0.5rem;
    background: #fff;
    cursor: pointer;
    transition: box-shadow 0.15s, border-color 0.15s;
}

.project-card:hover[b-rh9r9yhkl6] {
    box-shadow: 0 2px 8px rgba(0,0,0,0.07);
    border-color: #adb5bd;
}

.project-card--understocked[b-rh9r9yhkl6] {
    border-color: #f5c2c7;
    background: #fff8f8;
}

.project-card--understocked:hover[b-rh9r9yhkl6] {
    border-color: #dc3545;
}

.project-card-main[b-rh9r9yhkl6] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.project-card-title-row[b-rh9r9yhkl6] {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    flex-wrap: wrap;
}

.project-name[b-rh9r9yhkl6] {
    font-weight: 600;
    font-size: 1rem;
}

.project-description[b-rh9r9yhkl6] {
    font-size: 0.875rem;
    color: var(--bs-secondary-color, #6c757d);
    margin: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.project-meta[b-rh9r9yhkl6] {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
    margin-top: 0.15rem;
}

.project-tasks[b-rh9r9yhkl6] {
    font-size: 0.8rem;
    color: var(--bs-secondary-color, #6c757d);
}

.task-progress[b-rh9r9yhkl6] {
    width: 80px;
    height: 4px;
    background: var(--bs-border-color, #dee2e6);
    border-radius: 999px;
    overflow: hidden;
}

.task-progress-bar[b-rh9r9yhkl6] {
    height: 100%;
    background: var(--bs-success, #198754);
    border-radius: 999px;
    transition: width 0.3s;
}

.project-due[b-rh9r9yhkl6] {
    font-size: 0.8rem;
    color: var(--bs-secondary-color, #6c757d);
}

.due-overdue[b-rh9r9yhkl6] {
    color: var(--bs-danger, #dc3545);
    font-weight: 500;
}

.remaining-hours[b-rh9r9yhkl6] {
    font-size: 0.8rem;
    color: var(--bs-secondary-color, #6c757d);
}

.material-cost[b-rh9r9yhkl6] {
    color: var(--bs-secondary-color, #6c757d);
}

.project-card-aside[b-rh9r9yhkl6] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0.4rem;
    flex-shrink: 0;
}

.project-status-badge[b-rh9r9yhkl6] {
    font-size: 0.72rem;
    font-weight: 500;
    padding: 0.2rem 0.6rem;
    border-radius: 999px;
}

.status-planning[b-rh9r9yhkl6]   { background: #e9ecef; color: #495057; }
.status-inprogress[b-rh9r9yhkl6] { background: #cfe2ff; color: #084298; }
.status-complete[b-rh9r9yhkl6]   { background: #d1e7dd; color: #0a3622; }

.badge-understocked[b-rh9r9yhkl6] {
    font-size: 0.72rem;
    font-weight: 500;
    padding: 0.2rem 0.6rem;
    border-radius: 999px;
    background: #f8d7da;
    color: #842029;
}

.material-count[b-rh9r9yhkl6] {
    font-size: 0.75rem;
    color: var(--bs-secondary-color, #6c757d);
}

.empty-state[b-rh9r9yhkl6] {
    text-align: center;
    padding: 3rem;
    color: var(--bs-secondary-color, #6c757d);
}

.loading-text[b-rh9r9yhkl6] {
    color: var(--bs-secondary-color, #6c757d);
    padding: 2rem 0;
}
/* /Components/Pages/Dashboard/SettingsTags.razor.rz.scp.css */
.field-row[b-za6kwg2oro] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.field-label[b-za6kwg2oro] {
    font-size: 0.875rem;
    font-weight: 500;
}

.field-error[b-za6kwg2oro] {
    color: var(--bs-danger, #dc3545);
    font-size: 0.875rem;
    margin: 0;
}

/* ── Tag modal ── */

.tag-modal-backdrop[b-za6kwg2oro] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.45);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
    padding: 1rem;
}

.tag-modal[b-za6kwg2oro] {
    background: #fff;
    border-radius: 0.5rem;
    box-shadow: 0 8px 32px rgba(0,0,0,0.18);
    width: 100%;
    max-width: 380px;
    display: flex;
    flex-direction: column;
}

.tag-modal-header[b-za6kwg2oro] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.25rem 0.75rem;
    border-bottom: 1px solid var(--bs-border-color, #dee2e6);
}

.tag-modal-title[b-za6kwg2oro] {
    font-size: 1rem;
    font-weight: 600;
    margin: 0;
}

.tag-modal-close[b-za6kwg2oro] {
    background: none;
    border: none;
    font-size: 1.4rem;
    line-height: 1;
    color: var(--bs-secondary-color, #6c757d);
    cursor: pointer;
    padding: 0 0.25rem;
}

.tag-modal-close:hover[b-za6kwg2oro] { color: #000; }

.tag-modal-body[b-za6kwg2oro] {
    padding: 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.tag-modal-footer[b-za6kwg2oro] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.5rem;
    padding: 0.75rem 1.25rem 1rem;
    border-top: 1px solid var(--bs-border-color, #dee2e6);
}
/* /Components/Pages/Dashboard/SettingsUserDetail.razor.rz.scp.css */
/* ── Header ── */

.detail-header[b-lda6wvsuin] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 2rem;
}

.detail-breadcrumb[b-lda6wvsuin] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.95rem;
}

.detail-breadcrumb a[b-lda6wvsuin] {
    color: var(--bs-primary, #0d6efd);
    text-decoration: none;
}

.detail-breadcrumb a:hover[b-lda6wvsuin] { text-decoration: underline; }

.breadcrumb-sep[b-lda6wvsuin] { color: var(--bs-secondary-color, #6c757d); }

.detail-header-actions[b-lda6wvsuin] { display: flex; gap: 0.5rem; }

/* ── Body / Sections ── */

.detail-body[b-lda6wvsuin] {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

.detail-section[b-lda6wvsuin] {
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: 0.5rem;
    overflow: hidden;
}

.detail-section-title[b-lda6wvsuin] {
    font-size: 0.85rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--bs-secondary-color, #6c757d);
    margin: 0;
    padding: 0.75rem 1.25rem;
    background: var(--bs-light, #f8f9fa);
    border-bottom: 1px solid var(--bs-border-color, #dee2e6);
}

.detail-section-body[b-lda6wvsuin] {
    padding: 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.section-hint[b-lda6wvsuin] {
    font-size: 0.85rem;
    color: var(--bs-secondary-color, #6c757d);
    margin: 0;
}

/* ── Fields ── */

.field-row[b-lda6wvsuin] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.field-label[b-lda6wvsuin] {
    font-size: 0.875rem;
    font-weight: 500;
}

.required[b-lda6wvsuin] { color: var(--bs-danger, #dc3545); }

.name-row[b-lda6wvsuin] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

/* ── Permission check list ── */

.perm-check-list[b-lda6wvsuin] {
    display: flex;
    flex-direction: column;
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: 0.375rem;
    overflow: hidden;
}

.perm-check-row[b-lda6wvsuin] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    background: #fff;
    border-bottom: 1px solid var(--bs-border-color, #dee2e6);
    cursor: pointer;
    transition: background 0.1s;
    margin: 0;
}

.perm-check-row:last-child[b-lda6wvsuin] { border-bottom: none; }

.perm-check-row:hover[b-lda6wvsuin] { background: var(--bs-light, #f8f9fa); }

.perm-check-row input[type="checkbox"][b-lda6wvsuin] {
    margin-top: 0.2rem;
    flex-shrink: 0;
}

.perm-check-text[b-lda6wvsuin] {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}

.perm-check-name[b-lda6wvsuin] {
    font-size: 0.9rem;
    font-weight: 500;
    line-height: 1.2;
}

.perm-check-desc[b-lda6wvsuin] {
    font-size: 0.8rem;
    color: var(--bs-secondary-color, #6c757d);
    line-height: 1.3;
}
/* /Components/Pages/Dashboard/TemplateDetail.razor.rz.scp.css */
.template-detail-page[b-1pmqbx3vrk] {
    padding: 2rem;
    max-width: 760px;
}

/* ── Header ── */

.detail-header[b-1pmqbx3vrk] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 2rem;
}

.detail-breadcrumb[b-1pmqbx3vrk] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.95rem;
}

.detail-breadcrumb a[b-1pmqbx3vrk] {
    color: var(--bs-primary, #0d6efd);
    text-decoration: none;
}

.detail-breadcrumb a:hover[b-1pmqbx3vrk] { text-decoration: underline; }

.breadcrumb-sep[b-1pmqbx3vrk] { color: var(--bs-secondary-color, #6c757d); }

.detail-header-actions[b-1pmqbx3vrk] { display: flex; gap: 0.5rem; }

/* ── Body / Sections ── */

.detail-body[b-1pmqbx3vrk] {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

.detail-section[b-1pmqbx3vrk] {
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: 0.5rem;
    overflow: hidden;
}

.detail-section-title[b-1pmqbx3vrk] {
    font-size: 0.85rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--bs-secondary-color, #6c757d);
    margin: 0;
    padding: 0.75rem 1.25rem;
    background: var(--bs-light, #f8f9fa);
    border-bottom: 1px solid var(--bs-border-color, #dee2e6);
}

.detail-section-body[b-1pmqbx3vrk] {
    padding: 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.section-hint[b-1pmqbx3vrk] {
    font-size: 0.85rem;
    color: var(--bs-secondary-color, #6c757d);
    margin: 0;
}

/* ── Fields ── */

.field-row[b-1pmqbx3vrk] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.field-label[b-1pmqbx3vrk] {
    font-size: 0.875rem;
    font-weight: 500;
}

.required[b-1pmqbx3vrk] { color: var(--bs-danger, #dc3545); }

/* ── Task list ── */

.task-list[b-1pmqbx3vrk] {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0;
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: 0.375rem;
    overflow: hidden;
}

.task-item[b-1pmqbx3vrk] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.6rem 1rem;
    border-bottom: 1px solid var(--bs-border-color, #dee2e6);
    background: #fff;
}

.task-item:last-child[b-1pmqbx3vrk] { border-bottom: none; }

.task-reorder[b-1pmqbx3vrk] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.btn-xs[b-1pmqbx3vrk] {
    padding: 0.1rem 0.35rem;
    font-size: 0.7rem;
    line-height: 1.2;
}

.task-fields[b-1pmqbx3vrk] {
    flex: 1;
    display: flex;
    gap: 0.4rem;
    align-items: center;
}

.task-name-input[b-1pmqbx3vrk] { flex: 2; min-width: 140px; }
.task-hours-input[b-1pmqbx3vrk] { flex: 0 0 80px; }

.add-task-row[b-1pmqbx3vrk] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

/* ── Material list ── */

.material-list[b-1pmqbx3vrk] {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0;
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: 0.375rem;
    overflow: hidden;
}

.material-item[b-1pmqbx3vrk] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.6rem 1rem;
    border-bottom: 1px solid var(--bs-border-color, #dee2e6);
    background: #fff;
}

.material-item:last-child[b-1pmqbx3vrk] { border-bottom: none; }

.material-name[b-1pmqbx3vrk] {
    flex: 1;
    font-size: 0.9rem;
    font-weight: 500;
}

.material-qty-group[b-1pmqbx3vrk] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
}

.material-qty-input[b-1pmqbx3vrk] { width: 80px; }
.material-unit[b-1pmqbx3vrk] { font-size: 0.8rem; white-space: nowrap; }

.add-material-row[b-1pmqbx3vrk] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

.add-material-select[b-1pmqbx3vrk] { flex: 1; }

/* ── Misc ── */

.empty-hint[b-1pmqbx3vrk] {
    font-size: 0.875rem;
    color: var(--bs-secondary-color, #6c757d);
    margin: 0;
}

.loading-text[b-1pmqbx3vrk] { color: var(--bs-secondary-color, #6c757d); }
/* /Components/Pages/Features.razor.rz.scp.css */
/* ── Hero ─────────────────────────────────────────────── */
.features-hero[b-8h9xrnrv72] {
    background: linear-gradient(135deg, #eef2fb 0%, #f8f9ff 100%);
    border-bottom: 1px solid #e2e6ef;
    padding: 4.5rem 1.5rem 3.5rem;
    text-align: center;
}

.features-hero-inner[b-8h9xrnrv72] {
    max-width: 640px;
    margin: 0 auto;
}

.features-eyebrow[b-8h9xrnrv72] {
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #3d5a99;
    margin-bottom: 0.75rem;
}

.features-hero h1[b-8h9xrnrv72] {
    font-size: clamp(2rem, 5vw, 2.75rem);
    font-weight: 800;
    color: #1e2d5a;
    margin-bottom: 0.85rem;
}

.features-lead[b-8h9xrnrv72] {
    font-size: 1.05rem;
    color: #4b5563;
    line-height: 1.65;
    margin-bottom: 1.75rem;
}

.features-hero .btn-primary[b-8h9xrnrv72] {
    font-weight: 700;
    border-radius: 9px;
    padding: 0.65rem 1.75rem;
}

/* ── Sticky feature nav ───────────────────────────────── */
.features-nav-bar[b-8h9xrnrv72] {
    position: sticky;
    top: 4rem; /* sit below the marketing header */
    z-index: 50;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(6px);
    border-bottom: 1px solid #e2e6ef;
    box-shadow: 0 1px 4px rgba(30, 45, 90, 0.05);
}

.features-nav-inner[b-8h9xrnrv72] {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 1.5rem;
    display: flex;
    gap: 0;
    overflow-x: auto;
    scrollbar-width: none;
}

.features-nav-inner[b-8h9xrnrv72]::-webkit-scrollbar {
    display: none;
}

.features-nav-inner a[b-8h9xrnrv72] {
    flex-shrink: 0;
    padding: 0.85rem 1.25rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: #4b5563;
    text-decoration: none;
    border-bottom: 2px solid transparent;
    transition: color 0.15s ease, border-color 0.15s ease;
    white-space: nowrap;
}

.features-nav-inner a:hover[b-8h9xrnrv72] {
    color: #3d5a99;
    border-bottom-color: #3d5a99;
}

/* ── Feature sections ─────────────────────────────────── */
.feature-section[b-8h9xrnrv72] {
    padding: 5rem 1.5rem;
    background: #fff;
}

.feature-section.alt[b-8h9xrnrv72] {
    background: #f4f6fb;
    border-top: 1px solid #e2e6ef;
    border-bottom: 1px solid #e2e6ef;
}

.feature-section-inner[b-8h9xrnrv72] {
    max-width: 1100px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 4rem;
    flex-wrap: wrap;
}

.feature-section.alt .feature-section-inner[b-8h9xrnrv72] {
    flex-direction: row-reverse;
}

.feature-section-text[b-8h9xrnrv72] {
    flex: 1;
    min-width: 280px;
}

.feature-section-icon[b-8h9xrnrv72] {
    font-size: 2.25rem;
    margin-bottom: 0.75rem;
}

.feature-section-text h2[b-8h9xrnrv72] {
    font-size: 1.9rem;
    font-weight: 800;
    color: #1e2d5a;
    margin-bottom: 0.65rem;
}

.feature-section-lead[b-8h9xrnrv72] {
    font-size: 1.05rem;
    color: #4b5563;
    line-height: 1.65;
    margin-bottom: 1.5rem;
}

.feature-detail-list[b-8h9xrnrv72] {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
}

.feature-detail-list li[b-8h9xrnrv72] {
    font-size: 0.95rem;
    color: #374151;
    padding-left: 1.6rem;
    position: relative;
    line-height: 1.5;
}

.feature-detail-list li[b-8h9xrnrv72]::before {
    content: "✓";
    position: absolute;
    left: 0;
    color: #3d5a99;
    font-weight: 800;
    font-size: 0.8rem;
    top: 0.1rem;
}

/* ── Feature section visual / mock cards ─────────────── */
.feature-section-visual[b-8h9xrnrv72] {
    flex: 0 0 auto;
    width: 100%;
    max-width: 360px;
}

.mock-card[b-8h9xrnrv72] {
    background: #fff;
    border: 1px solid #e2e6ef;
    border-radius: 14px;
    box-shadow: 0 8px 32px rgba(30, 45, 90, 0.1);
    padding: 1.25rem 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.mock-card-header[b-8h9xrnrv72] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.25rem;
}

.mock-card-title[b-8h9xrnrv72] {
    font-size: 0.8rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #9ca3af;
}

.mock-badge[b-8h9xrnrv72] {
    font-size: 0.75rem;
    font-weight: 700;
    background: #eef2fb;
    color: #3d5a99;
    padding: 0.2rem 0.6rem;
    border-radius: 20px;
}

.mock-badge.points[b-8h9xrnrv72] {
    background: #fefce8;
    color: #92400e;
}

/* Chore rows */
.mock-chore-row[b-8h9xrnrv72] {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: #3a3a52;
}

.mock-check[b-8h9xrnrv72] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.35rem;
    height: 1.35rem;
    border-radius: 50%;
    font-size: 0.65rem;
    font-weight: 800;
    flex-shrink: 0;
    background: #3d5a99;
    color: #fff;
}

.mock-check.done[b-8h9xrnrv72] {
    background: #3d5a99;
    color: #fff;
}

.mock-check:not(.done):not(.overdue)[b-8h9xrnrv72] {
    background: transparent;
    border: 2px solid #d1d5db;
    color: #d1d5db;
    font-size: 0.75rem;
}

.mock-check.overdue[b-8h9xrnrv72] {
    background: #fee2e2;
    color: #dc2626;
    font-size: 0.8rem;
}

.mock-chore-name[b-8h9xrnrv72] {
    flex: 1;
}

.mock-chore-name.done[b-8h9xrnrv72] {
    text-decoration: line-through;
    color: #9ca3af;
}

.mock-chore-name.overdue[b-8h9xrnrv72] {
    color: #dc2626;
}

.mock-chip[b-8h9xrnrv72] {
    font-size: 0.7rem;
    font-weight: 700;
    background: #eef2fb;
    color: #3d5a99;
    padding: 0.15rem 0.5rem;
    border-radius: 20px;
    white-space: nowrap;
}

/* Progress rows */
.mock-progress-row[b-8h9xrnrv72] {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    font-size: 0.875rem;
}

.mock-avatar[b-8h9xrnrv72] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.75rem;
    border-radius: 50%;
    background: #3d5a99;
    color: #fff;
    font-size: 0.75rem;
    font-weight: 800;
    flex-shrink: 0;
}

.mock-progress-name[b-8h9xrnrv72] {
    font-weight: 600;
    color: #374151;
    width: 3.5rem;
    flex-shrink: 0;
}

.mock-progress-bar-wrap[b-8h9xrnrv72] {
    flex: 1;
    height: 8px;
    background: #e5e7eb;
    border-radius: 4px;
    overflow: hidden;
}

.mock-progress-bar[b-8h9xrnrv72] {
    height: 100%;
    background: linear-gradient(90deg, #3d5a99, #6b8fd4);
    border-radius: 4px;
    transition: width 0.4s ease;
}

.mock-progress-label[b-8h9xrnrv72] {
    font-size: 0.75rem;
    font-weight: 700;
    color: #6b7280;
    width: 2.5rem;
    text-align: right;
    flex-shrink: 0;
}

/* Reward rows */
.mock-reward-row[b-8h9xrnrv72] {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    font-size: 0.875rem;
}

.mock-reward-row.locked[b-8h9xrnrv72] {
    opacity: 0.5;
}

.mock-reward-icon[b-8h9xrnrv72] {
    font-size: 1.25rem;
    flex-shrink: 0;
}

.mock-reward-info[b-8h9xrnrv72] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
}

.mock-reward-name[b-8h9xrnrv72] {
    font-weight: 600;
    color: #374151;
    font-size: 0.85rem;
}

.mock-reward-cost[b-8h9xrnrv72] {
    font-size: 0.75rem;
    color: #6b7280;
}

.mock-redeem-btn[b-8h9xrnrv72] {
    font-size: 0.75rem;
    font-weight: 700;
    padding: 0.25rem 0.65rem;
    border-radius: 6px;
    border: 1.5px solid #3d5a99;
    background: transparent;
    color: #3d5a99;
    cursor: default;
    flex-shrink: 0;
}

.mock-redeem-btn.locked[b-8h9xrnrv72] {
    border-color: #d1d5db;
    color: #9ca3af;
}

/* Notification rows */
.mock-notification[b-8h9xrnrv72] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    font-size: 0.875rem;
}

.mock-notif-icon[b-8h9xrnrv72] {
    font-size: 1.1rem;
    flex-shrink: 0;
    margin-top: 0.05rem;
}

.mock-notif-body[b-8h9xrnrv72] {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}

.mock-notif-title[b-8h9xrnrv72] {
    font-weight: 600;
    color: #1e2d5a;
    font-size: 0.875rem;
}

.mock-notif-sub[b-8h9xrnrv72] {
    font-size: 0.775rem;
    color: #9ca3af;
}

/* ── CTA ──────────────────────────────────────────────── */
.features-cta[b-8h9xrnrv72] {
    background: #1e2d5a;
    padding: 4.5rem 1.5rem;
    text-align: center;
}

.features-cta-inner[b-8h9xrnrv72] {
    max-width: 560px;
    margin: 0 auto;
}

.features-cta h2[b-8h9xrnrv72] {
    font-size: 2rem;
    font-weight: 800;
    color: #fff;
    margin-bottom: 0.75rem;
}

.features-cta p[b-8h9xrnrv72] {
    color: rgba(255, 255, 255, 0.75);
    font-size: 1.05rem;
    margin-bottom: 1.75rem;
}

.features-cta-buttons[b-8h9xrnrv72] {
    display: flex;
    gap: 0.75rem;
    justify-content: center;
    flex-wrap: wrap;
}

.features-cta-buttons .btn[b-8h9xrnrv72] {
    font-weight: 700;
    border-radius: 9px;
    padding: 0.65rem 1.5rem;
}

.btn-outline-light[b-8h9xrnrv72] {
    border-color: rgba(255, 255, 255, 0.4);
    color: #fff;
}

.btn-outline-light:hover[b-8h9xrnrv72] {
    background-color: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.7);
    color: #fff;
}

/* ── Responsive ───────────────────────────────────────── */
@media (max-width: 768px) {
    .feature-section.alt .feature-section-inner[b-8h9xrnrv72] {
        flex-direction: row;
    }

    .feature-section-visual[b-8h9xrnrv72] {
        max-width: 100%;
    }
}
/* /Components/Pages/Landing.razor.rz.scp.css */
/* ── Shared section styles ────────────────────────────── */
.section-title[b-2m1ypku1h1] {
    font-size: 2rem;
    font-weight: 800;
    color: #1e2d5a;
    text-align: center;
    margin-bottom: 0.5rem;
}

.section-subtitle[b-2m1ypku1h1] {
    text-align: center;
    color: #6b7280;
    font-size: 1.05rem;
    margin-bottom: 2.5rem;
}

/* ── Hero ─────────────────────────────────────────────── */
.hero[b-2m1ypku1h1] {
    background: linear-gradient(135deg, #eef2fb 0%, #f8f9ff 100%);
    padding: 5rem 1.5rem 4rem;
    border-bottom: 1px solid #e2e6ef;
}

.hero-inner[b-2m1ypku1h1] {
    max-width: 1100px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 3rem;
    flex-wrap: wrap;
}

.hero-text[b-2m1ypku1h1] {
    flex: 1;
    min-width: 280px;
}

.hero-eyebrow[b-2m1ypku1h1] {
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #3d5a99;
    margin-bottom: 0.75rem;
}

.hero-title[b-2m1ypku1h1] {
    font-size: clamp(2.2rem, 5vw, 3.2rem);
    font-weight: 800;
    color: #1e2d5a;
    line-height: 1.1;
    margin-bottom: 1rem;
}

.hero-subtitle[b-2m1ypku1h1] {
    font-size: 1.1rem;
    color: #4b5563;
    line-height: 1.65;
    max-width: 480px;
    margin-bottom: 2rem;
}

.hero-cta[b-2m1ypku1h1] {
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.hero-cta .btn[b-2m1ypku1h1] {
    font-weight: 700;
    border-radius: 9px;
    padding: 0.65rem 1.5rem;
}

/* ── Hero illustration / chore card preview ───────────── */
.hero-illustration[b-2m1ypku1h1] {
    flex: 0 0 auto;
}

.chore-card-preview[b-2m1ypku1h1] {
    background: #fff;
    border: 1px solid #e2e6ef;
    border-radius: 14px;
    box-shadow: 0 8px 32px rgba(30, 45, 90, 0.1);
    padding: 1.25rem 1.5rem;
    min-width: 280px;
    max-width: 320px;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.chore-card-item[b-2m1ypku1h1] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-size: 0.9rem;
    font-weight: 600;
    color: #3a3a52;
}

.chore-card-item.done[b-2m1ypku1h1] {
    color: #9ca3af;
    text-decoration: line-through;
    text-decoration-color: #d1d5db;
}

.chore-check[b-2m1ypku1h1] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.4rem;
    height: 1.4rem;
    background: #3d5a99;
    color: #fff;
    border-radius: 50%;
    font-size: 0.7rem;
    font-weight: 800;
    flex-shrink: 0;
}

.chore-check.pending[b-2m1ypku1h1] {
    background: transparent;
    color: #d1d5db;
    border: 2px solid #d1d5db;
    font-size: 0.85rem;
}

.chore-assignee[b-2m1ypku1h1] {
    margin-left: auto;
    font-size: 0.75rem;
    font-weight: 700;
    background: #eef2fb;
    color: #3d5a99;
    padding: 0.15rem 0.5rem;
    border-radius: 20px;
    white-space: nowrap;
}

.chore-card-item.done .chore-assignee[b-2m1ypku1h1] {
    background: #f3f4f6;
    color: #9ca3af;
}

/* ── Features ─────────────────────────────────────────── */
.features[b-2m1ypku1h1] {
    padding: 5rem 1.5rem;
    background: #fff;
}

.features-inner[b-2m1ypku1h1] {
    max-width: 1100px;
    margin: 0 auto;
}

.feature-grid[b-2m1ypku1h1] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 1.5rem;
}

.feature-card[b-2m1ypku1h1] {
    display: block;
    background: #f8faff;
    border: 1px solid #e2e6ef;
    border-radius: 12px;
    padding: 1.75rem 1.5rem;
    text-decoration: none;
    color: inherit;
    transition: box-shadow 0.2s ease, transform 0.2s ease, border-color 0.2s ease;
}

.feature-card:hover[b-2m1ypku1h1] {
    box-shadow: 0 6px 20px rgba(30, 45, 90, 0.08);
    transform: translateY(-2px);
    border-color: #a5b4d0;
    color: inherit;
    text-decoration: none;
}

.feature-icon[b-2m1ypku1h1] {
    font-size: 2rem;
    margin-bottom: 0.75rem;
}

.feature-card h3[b-2m1ypku1h1] {
    font-size: 1rem;
    font-weight: 700;
    color: #1e2d5a;
    margin-bottom: 0.5rem;
}

.feature-card p[b-2m1ypku1h1] {
    font-size: 0.9rem;
    color: #6b7280;
    line-height: 1.6;
    margin: 0;
}

/* ── How it works ─────────────────────────────────────── */
.how-it-works[b-2m1ypku1h1] {
    padding: 5rem 1.5rem;
    background: #f4f6fb;
    border-top: 1px solid #e2e6ef;
    border-bottom: 1px solid #e2e6ef;
}

.how-inner[b-2m1ypku1h1] {
    max-width: 900px;
    margin: 0 auto;
}

.steps[b-2m1ypku1h1] {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: 0;
    flex-wrap: wrap;
}

.step[b-2m1ypku1h1] {
    flex: 1;
    min-width: 180px;
    max-width: 260px;
    text-align: center;
    padding: 0 1rem;
}

.step-number[b-2m1ypku1h1] {
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
    background: #3d5a99;
    color: #fff;
    font-size: 1.1rem;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
}

.step h3[b-2m1ypku1h1] {
    font-size: 1rem;
    font-weight: 700;
    color: #1e2d5a;
    margin-bottom: 0.4rem;
}

.step p[b-2m1ypku1h1] {
    font-size: 0.875rem;
    color: #6b7280;
    line-height: 1.6;
    margin: 0;
}

.step-connector[b-2m1ypku1h1] {
    width: 3rem;
    height: 2px;
    background: #d1d9ee;
    align-self: center;
    margin-top: -1.5rem;
    flex-shrink: 0;
}

@media (max-width: 640px) {
    .step-connector[b-2m1ypku1h1] {
        display: none;
    }
}

/* ── CTA banner ───────────────────────────────────────── */
.cta-banner[b-2m1ypku1h1] {
    background: #1e2d5a;
    padding: 4.5rem 1.5rem;
    text-align: center;
}

.cta-banner-inner[b-2m1ypku1h1] {
    max-width: 600px;
    margin: 0 auto;
}

.cta-banner h2[b-2m1ypku1h1] {
    font-size: 2rem;
    font-weight: 800;
    color: #fff;
    margin-bottom: 0.75rem;
}

.cta-banner p[b-2m1ypku1h1] {
    color: rgba(255, 255, 255, 0.75);
    font-size: 1.05rem;
    margin-bottom: 1.75rem;
}

.cta-banner .btn-light[b-2m1ypku1h1] {
    font-weight: 700;
    border-radius: 9px;
    padding: 0.65rem 1.75rem;
    color: #1e2d5a;
}
/* /Components/Pages/Login.razor.rz.scp.css */
/* ── Page centering ───────────────────────────────────── */
.login-page[b-cjna73ruwx] {
    min-height: calc(100vh - 4rem - 60px); /* subtract header + footer */
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 3rem 1rem;
    background: linear-gradient(135deg, #eef2fb 0%, #f8f9ff 100%);
}

/* ── Card ─────────────────────────────────────────────── */
.login-card[b-cjna73ruwx] {
    background: #fff;
    border: 1px solid #e2e6ef;
    border-radius: 16px;
    box-shadow: 0 8px 32px rgba(30, 45, 90, 0.09);
    padding: 2.5rem 2.25rem;
    width: 100%;
    max-width: 420px;
}

/* ── Header ───────────────────────────────────────────── */
.login-header[b-cjna73ruwx] {
    text-align: center;
    margin-bottom: 1.75rem;
}

.login-logo[b-cjna73ruwx] {
    display: flex;
    justify-content: center;
    margin-bottom: 1rem;
}

.login-logo img[b-cjna73ruwx] {
    width: 4rem;
    height: 4rem;
    object-fit: contain;
}

.login-title[b-cjna73ruwx] {
    font-size: 1.5rem;
    font-weight: 800;
    color: #1e2d5a;
    margin-bottom: 0.25rem;
}

.login-subtitle[b-cjna73ruwx] {
    font-size: 0.9rem;
    color: #6b7280;
    margin: 0;
}

/* ── Social buttons ───────────────────────────────────── */
.social-logins[b-cjna73ruwx] {
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
    margin-bottom: 1.25rem;
}

.btn-social[b-cjna73ruwx] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.65rem;
    width: 100%;
    padding: 0.6rem 1rem;
    background: #fff;
    border: 1.5px solid #d1d5db;
    border-radius: 8px;
    font-size: 0.9rem;
    font-weight: 600;
    color: #3a3a52;
    transition: background-color 0.15s ease, border-color 0.15s ease;
}

.btn-social:hover[b-cjna73ruwx] {
    background-color: #f8faff;
    border-color: #a5b4d0;
    color: #1e2d5a;
}

.social-icon[b-cjna73ruwx] {
    width: 1.1rem;
    height: 1.1rem;
    flex-shrink: 0;
}

/* ── Divider ──────────────────────────────────────────── */
.divider[b-cjna73ruwx] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin: 1.25rem 0;
    color: #9ca3af;
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.divider[b-cjna73ruwx]::before,
.divider[b-cjna73ruwx]::after {
    content: "";
    flex: 1;
    height: 1px;
    background: #e5e7eb;
}

/* ── Form ─────────────────────────────────────────────── */
.form-label[b-cjna73ruwx] {
    font-weight: 600;
    font-size: 0.875rem;
    color: #374151;
    margin-bottom: 0.35rem;
}

.form-control[b-cjna73ruwx] {
    border-radius: 8px;
    border-color: #d1d5db;
    font-size: 0.9rem;
    padding: 0.55rem 0.85rem;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.form-control:focus[b-cjna73ruwx] {
    border-color: #3d5a99;
    box-shadow: 0 0 0 3px rgba(61, 90, 153, 0.12);
}

.password-label-row[b-cjna73ruwx] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    margin-bottom: 0.35rem;
}

.forgot-link[b-cjna73ruwx] {
    font-size: 0.8rem;
    font-weight: 600;
    color: #3d5a99;
    text-decoration: none;
}

.forgot-link:hover[b-cjna73ruwx] {
    text-decoration: underline;
}

.form-check-label[b-cjna73ruwx] {
    font-size: 0.875rem;
    color: #4b5563;
}

.btn-login[b-cjna73ruwx] {
    font-weight: 700;
    border-radius: 8px;
    padding: 0.65rem;
    font-size: 0.95rem;
}

/* ── Register prompt ──────────────────────────────────── */
.register-prompt[b-cjna73ruwx] {
    text-align: center;
    font-size: 0.875rem;
    color: #6b7280;
    margin: 1.5rem 0 0;
}

.register-prompt a[b-cjna73ruwx] {
    font-weight: 700;
    color: #3d5a99;
    text-decoration: none;
}

.register-prompt a:hover[b-cjna73ruwx] {
    text-decoration: underline;
}
/* /Components/Pages/NotFound.razor.rz.scp.css */
.not-found-page[b-bmhdmm8wqb] {
    min-height: calc(100vh - 4rem - 60px);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 4rem 1.5rem;
    background: linear-gradient(135deg, #eef2fb 0%, #f8f9ff 100%);
}

.not-found-code[b-bmhdmm8wqb] {
    font-size: clamp(5rem, 20vw, 9rem);
    font-weight: 800;
    color: #d1d9ee;
    line-height: 1;
    margin-bottom: 1rem;
    font-family: 'Nunito', sans-serif;
    letter-spacing: -0.04em;
}

.not-found-title[b-bmhdmm8wqb] {
    font-size: 1.75rem;
    font-weight: 800;
    color: #1e2d5a;
    margin-bottom: 0.75rem;
}

.not-found-message[b-bmhdmm8wqb] {
    color: #6b7280;
    font-size: 1rem;
    margin-bottom: 2rem;
}

.not-found-page .btn-primary[b-bmhdmm8wqb] {
    font-weight: 700;
    border-radius: 8px;
    padding: 0.65rem 1.75rem;
}
/* /Components/Pages/Privacy.razor.rz.scp.css */
.legal-page[b-ppwzuo08zo] {
    padding: 4rem 1.5rem 5rem;
    background: #f4f6fb;
    min-height: calc(100vh - 4rem - 60px);
}

.legal-inner[b-ppwzuo08zo] {
    max-width: 740px;
    margin: 0 auto;
}

/* ── Header ───────────────────────────────────────────── */
.legal-header[b-ppwzuo08zo] {
    margin-bottom: 2.5rem;
    padding-bottom: 2rem;
    border-bottom: 1px solid #e2e6ef;
}

.legal-eyebrow[b-ppwzuo08zo] {
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #9ca3af;
    margin-bottom: 0.75rem;
}

.legal-header h1[b-ppwzuo08zo] {
    font-size: 2.25rem;
    font-weight: 800;
    color: #1e2d5a;
    margin-bottom: 0.75rem;
}

.legal-lead[b-ppwzuo08zo] {
    font-size: 1.05rem;
    color: #4b5563;
    line-height: 1.65;
    margin: 0;
}

/* ── Body ─────────────────────────────────────────────── */
.legal-body section[b-ppwzuo08zo] {
    margin-bottom: 2.25rem;
}

.legal-body h2[b-ppwzuo08zo] {
    font-size: 1.1rem;
    font-weight: 700;
    color: #1e2d5a;
    margin-bottom: 0.65rem;
}

.legal-body p[b-ppwzuo08zo] {
    font-size: 0.95rem;
    color: #4b5563;
    line-height: 1.75;
    margin-bottom: 0.85rem;
}

.legal-body p:last-child[b-ppwzuo08zo] {
    margin-bottom: 0;
}

.legal-body a[b-ppwzuo08zo] {
    color: #3d5a99;
    font-weight: 600;
    text-decoration: none;
}

.legal-body a:hover[b-ppwzuo08zo] {
    text-decoration: underline;
}
/* /Components/Pages/Register.razor.rz.scp.css */
/* ── Page centering ───────────────────────────────────── */
.register-page[b-pqclg9ckec] {
    min-height: calc(100vh - 4rem - 60px);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 3rem 1rem;
    background: linear-gradient(135deg, #eef2fb 0%, #f8f9ff 100%);
}

/* ── Card ─────────────────────────────────────────────── */
.register-card[b-pqclg9ckec] {
    background: #fff;
    border: 1px solid #e2e6ef;
    border-radius: 16px;
    box-shadow: 0 8px 32px rgba(30, 45, 90, 0.09);
    padding: 2.5rem 2.25rem;
    width: 100%;
    max-width: 460px;
}

/* ── Header ───────────────────────────────────────────── */
.register-header[b-pqclg9ckec] {
    text-align: center;
    margin-bottom: 1.75rem;
}

.register-logo[b-pqclg9ckec] {
    display: flex;
    justify-content: center;
    margin-bottom: 1rem;
}

.register-logo img[b-pqclg9ckec] {
    width: 4rem;
    height: 4rem;
    object-fit: contain;
}

.register-title[b-pqclg9ckec] {
    font-size: 1.5rem;
    font-weight: 800;
    color: #1e2d5a;
    margin-bottom: 0.25rem;
}

.register-subtitle[b-pqclg9ckec] {
    font-size: 0.9rem;
    color: #6b7280;
    margin: 0;
}

/* ── Social buttons ───────────────────────────────────── */
.social-logins[b-pqclg9ckec] {
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
    margin-bottom: 1.25rem;
}

.btn-social[b-pqclg9ckec] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.65rem;
    width: 100%;
    padding: 0.6rem 1rem;
    background: #fff;
    border: 1.5px solid #d1d5db;
    border-radius: 8px;
    font-size: 0.9rem;
    font-weight: 600;
    color: #3a3a52;
    transition: background-color 0.15s ease, border-color 0.15s ease;
}

.btn-social:hover[b-pqclg9ckec] {
    background-color: #f8faff;
    border-color: #a5b4d0;
    color: #1e2d5a;
}

.social-icon[b-pqclg9ckec] {
    width: 1.1rem;
    height: 1.1rem;
    flex-shrink: 0;
}

/* ── Divider ──────────────────────────────────────────── */
.divider[b-pqclg9ckec] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin: 1.25rem 0;
    color: #9ca3af;
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.divider[b-pqclg9ckec]::before,
.divider[b-pqclg9ckec]::after {
    content: "";
    flex: 1;
    height: 1px;
    background: #e5e7eb;
}

/* ── Form ─────────────────────────────────────────────── */
.name-row[b-pqclg9ckec] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 1rem;
}

@media (max-width: 400px) {
    .name-row[b-pqclg9ckec] {
        grid-template-columns: 1fr;
    }
}

.form-label[b-pqclg9ckec] {
    font-weight: 600;
    font-size: 0.875rem;
    color: #374151;
    margin-bottom: 0.35rem;
}

.form-control[b-pqclg9ckec] {
    border-radius: 8px;
    border-color: #d1d5db;
    font-size: 0.9rem;
    padding: 0.55rem 0.85rem;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.form-control:focus[b-pqclg9ckec] {
    border-color: #3d5a99;
    box-shadow: 0 0 0 3px rgba(61, 90, 153, 0.12);
}

.password-hint[b-pqclg9ckec] {
    color: #9ca3af;
    font-size: 0.78rem;
    margin-top: 0.3rem;
}

.form-check-label[b-pqclg9ckec] {
    font-size: 0.875rem;
    color: #4b5563;
}

.form-check-label a[b-pqclg9ckec] {
    font-weight: 600;
    color: #3d5a99;
    text-decoration: none;
}

.form-check-label a:hover[b-pqclg9ckec] {
    text-decoration: underline;
}

.btn-register[b-pqclg9ckec] {
    font-weight: 700;
    border-radius: 8px;
    padding: 0.65rem;
    font-size: 0.95rem;
}

/* ── Login prompt ─────────────────────────────────────── */
.login-prompt[b-pqclg9ckec] {
    text-align: center;
    font-size: 0.875rem;
    color: #6b7280;
    margin: 1.5rem 0 0;
}

.login-prompt a[b-pqclg9ckec] {
    font-weight: 700;
    color: #3d5a99;
    text-decoration: none;
}

.login-prompt a:hover[b-pqclg9ckec] {
    text-decoration: underline;
}
/* /Components/Pages/Terms.razor.rz.scp.css */
.legal-page[b-31dzcrt229] {
    padding: 4rem 1.5rem 5rem;
    background: #f4f6fb;
    min-height: calc(100vh - 4rem - 60px);
}

.legal-inner[b-31dzcrt229] {
    max-width: 740px;
    margin: 0 auto;
}

/* ── Header ───────────────────────────────────────────── */
.legal-header[b-31dzcrt229] {
    margin-bottom: 2.5rem;
    padding-bottom: 2rem;
    border-bottom: 1px solid #e2e6ef;
}

.legal-eyebrow[b-31dzcrt229] {
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #9ca3af;
    margin-bottom: 0.75rem;
}

.legal-header h1[b-31dzcrt229] {
    font-size: 2.25rem;
    font-weight: 800;
    color: #1e2d5a;
    margin-bottom: 0.75rem;
}

.legal-lead[b-31dzcrt229] {
    font-size: 1.05rem;
    color: #4b5563;
    line-height: 1.65;
    margin: 0;
}

/* ── Body ─────────────────────────────────────────────── */
.legal-body section[b-31dzcrt229] {
    margin-bottom: 2.25rem;
}

.legal-body h2[b-31dzcrt229] {
    font-size: 1.1rem;
    font-weight: 700;
    color: #1e2d5a;
    margin-bottom: 0.65rem;
}

.legal-body p[b-31dzcrt229] {
    font-size: 0.95rem;
    color: #4b5563;
    line-height: 1.75;
    margin-bottom: 0.85rem;
}

.legal-body p:last-child[b-31dzcrt229] {
    margin-bottom: 0;
}

.legal-body a[b-31dzcrt229] {
    color: #3d5a99;
    font-weight: 600;
    text-decoration: none;
}

.legal-body a:hover[b-31dzcrt229] {
    text-decoration: underline;
}
