/* _content/Arsakeio_Portal/Components/Layout/Drawer.razor.rz.scp.css */
::deep .navigation-drawer[b-g21q5iy3ha] {
    height: 100vh;
    max-height: 100%;
}

[b-g21q5iy3ha] .panel-open:not(.mobile) .menu-button {
    display: none;
}

[b-g21q5iy3ha] .navigation-drawer > .dxbl-drawer-panel {
    background-image: linear-gradient(180deg, var(--bs-primary, var(--DS-primary-90)) 0%, var(--bs-black, #000) 150%);
}

[b-g21q5iy3ha] .navigation-drawer > .dxbl-drawer-content {
    height: 100vh;
    overflow: auto;
}

[b-g21q5iy3ha] .navigation-drawer > .dxbl-drawer-panel > .dxbl-drawer-header {
    border-bottom: none;
    padding: 2rem 1rem;
    background: none;
}

    [b-g21q5iy3ha] .navigation-drawer > .dxbl-drawer-panel > .dxbl-drawer-header > .navigation-drawer-header {
        width: 100%;
        display: flex;
        justify-content: space-between;
    }

[b-g21q5iy3ha] .navigation-drawer > .dxbl-drawer-panel > .dxbl-drawer-body {
    --dxbl-drawer-panel-body-padding-x: 0;
    --dxbl-drawer-panel-body-padding-y: 1rem;
}

[b-g21q5iy3ha] .navigation-drawer > .dxbl-drawer-panel > .dxbl-drawer-footer {
    --dxbl-drawer-panel-footer-justify-content: center;
    border-top: none;
    padding-bottom: 1.5rem;
    width: 240px;
    background: none;
}

[b-g21q5iy3ha] .navigation-drawer > .dxbl-drawer-panel {
    display: flex;
}

[b-g21q5iy3ha] .navigation-drawer.mobile > .dxbl-drawer-panel {
    display: none;
}

[b-g21q5iy3ha] .navigation-drawer > .dxbl-drawer-content > .navigation-drawer-shading {
    display: none;
}

@media (max-width: 768px) {
    [b-g21q5iy3ha] .panel-open:not(.mobile) .menu-button {
        display: inline-flex;
    }

    [b-g21q5iy3ha] .navigation-drawer > .dxbl-drawer-panel {
        display: none;
    }

    [b-g21q5iy3ha] .navigation-drawer.mobile > .dxbl-drawer-panel {
        display: flex;
    }

    [b-g21q5iy3ha] .navigation-drawer > .dxbl-drawer-content > .navigation-drawer-shading {
        background-color: var(--dxbl-drawer-content-shading-bg);
        display: block;
        height: 100%;
        position: absolute;
        transition: ease var(--dxbl-drawer-animation-duration);
        transition-property: opacity, visibility;
        visibility: visible;
        width: 100%;
        z-index: 99;
        opacity: var(--dxbl-drawer-content-shading-opacity);
    }

    [b-g21q5iy3ha] .navigation-drawer.mobile.panel-closed .navigation-drawer-shading {
        opacity: 0;
        visibility: hidden;
    }
}
/* _content/Arsakeio_Portal/Components/Layout/MainLayout.razor.rz.scp.css */
/* --- Layout + logo (keep your sizing) --- */
.page[b-10pubi0u20] {
    height: 100%;
    font-family: var(--bs-font-sans-serif, var(--DS-font-family-sans-serif));
    min-height: 0;
}

.logo[b-10pubi0u20],
.navigation-drawer-header .logo[b-10pubi0u20] {
    display: block;
    text-align: center;
    height: 44px;
    width: auto;
    max-width: 180px;
    object-fit: contain;
}

@media (max-width:900px) {
    .navigation-drawer-header[b-10pubi0u20] {
        min-height: 56px;
        padding: .5rem .75rem;
    }

        .logo[b-10pubi0u20],
        .navigation-drawer-header .logo[b-10pubi0u20] {
            height: 36px;
            max-width: 150px;
        }
}

/* --- Template icon mask mappings (unchanged) --- */
[b-10pubi0u20] .icon-back {
    --icon-mask-image: var(--icon-back-mask-image);
}

[b-10pubi0u20] .icon-close {
    --icon-mask-image: var(--icon-close-mask-image);
}

[b-10pubi0u20] .icon-menu {
    --icon-mask-image: var(--icon-menu-mask-image);
}

/* Optional footer icons (as in template) */
[b-10pubi0u20] .docs-icon {
    --icon-mask-image: var(--icon-docs-mask-image);
}

[b-10pubi0u20] .demos-icon {
    --icon-mask-image: var(--icon-demos-mask-image);
}

[b-10pubi0u20] .footer-button:hover .demos-icon {
    background-color: var(--dxbl-btn-hover-color);
}

[b-10pubi0u20] .footer-button:hover .docs-icon {
    background-color: var(--dxbl-btn-hover-color);
}

[b-10pubi0u20] .menu-button:hover .icon {
    background-color: var(--dxbl-btn-hover-color);
}

[b-10pubi0u20] .menu-button-nav:hover .icon {
    background-color: var(--dxbl-btn-hover-color);
}

/* Show the top-left burger only when inner drawer is open (template logic) */
.panel-open .menu-button[b-10pubi0u20] {
    display: inline-flex;
}

/* Header buttons placement (template spacing) */
.nav-buttons-container[b-10pubi0u20] {
    display: flex;
    gap: 10px;
    padding: 2rem 1rem;
}

    .nav-buttons-container[b-10pubi0u20]  .menubutton-float-end {
        margin-left: auto;
    }

/* Footer native button styled like DX text button (kept, but not used now) */
[b-10pubi0u20] .footer-button {
    appearance: none;
    -webkit-appearance: none;
    border: 0 !important;
    background: transparent !important;
    color: var(--dxbl-btn-light-color, var(--dxbl-link-color,#0d6efd)) !important;
    padding: .5rem .75rem;
    border-radius: 12px;
    font: inherit;
    font-weight: 500;
    line-height: 1.25;
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    cursor: pointer;
}

/* ---------------- IMPORTANT: keep scrolling working ---------------- */
/* Do NOT force overflow: visible on the Drawer / ScrollView containers,
   it disables the internal scrolling that DxDrawer uses. */
[b-10pubi0u20] .dxbl-scroll-view,
[b-10pubi0u20] .dxbl-scroll-view-content,
[b-10pubi0u20] .dxbl-drawer-body,
[b-10pubi0u20] .dxbl-drawer-content {
    overflow: auto !important;
    min-height: 0;
}

/* ---------------- ChatGPT-like Account footer ---------------- */

.drawer-footer[b-10pubi0u20] {
    position: relative;
    padding: 12px 12px 16px;
    width: 100%;
    box-sizing: border-box;
    /* IMPORTANT: allow popup to render outside footer */
    overflow: visible;
    /* Keep it above panel backgrounds */
    z-index: 50;
}

/* full-screen click-catcher (only rendered when open) */
.account-overlay[b-10pubi0u20] {
    position: fixed;
    inset: 0;
    background: transparent;
    border: 0;
    padding: 0;
    margin: 0;
    z-index: 900; /* ✅ behind the menu */
}

.account-wrap[b-10pubi0u20] {
    position: relative;
    width: 100%;
    z-index: 1000;
}

/* the pill chip */
.account-trigger[b-10pubi0u20] {
    width: 100%;
    display: grid;
    grid-template-columns: 38px 1fr 18px;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 14px;
    border: 1px solid rgba(255,255,255,.18);
    background: rgba(255,255,255,.08);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    color: #fff;
    cursor: pointer;
    user-select: none;
}

    .account-trigger:hover[b-10pubi0u20] {
        background: rgba(255,255,255,.12);
        border-color: rgba(255,255,255,.25);
    }

    .account-trigger:focus-visible[b-10pubi0u20] {
        outline: 0;
        box-shadow: 0 0 0 4px rgba(59,130,246,.25);
    }

.account-avatar[b-10pubi0u20] {
    width: 38px;
    height: 38px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    letter-spacing: .3px;
    background: rgba(255,255,255,.14);
    border: 1px solid rgba(255,255,255,.20);
}

    .account-avatar.sm[b-10pubi0u20] {
        width: 34px;
        height: 34px;
        font-size: .9rem;
    }

.account-text[b-10pubi0u20] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    line-height: 1.15;
}

.account-name[b-10pubi0u20] {
    font-weight: 700;
    font-size: .98rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.account-role[b-10pubi0u20] {
    font-weight: 600;
    font-size: .82rem;
    opacity: .85;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.account-caret[b-10pubi0u20] {
    opacity: .9;
    font-size: .85rem;
    justify-self: end;
}

/* ===================== SLIMMER MENU (UPDATED) ===================== */

/* menu popup (opens UP) */
.account-menu[b-10pubi0u20] {
    position: absolute;
    left: 0;
    right: 0;
    bottom: calc(100% + 10px);
    background: #fff;
    color: #111827;
    border-radius: 12px; /* slimmer */
    border: 1px solid rgba(17,24,39,.12);
    box-shadow: 0 18px 40px rgba(16,24,40,.18);
    /* tighter padding */
    padding: 8px;
    display: none;
    /* ✅ If it would exceed available space, it scrolls internally */
    max-height: min(60vh, 520px);
    overflow: auto;
    /* ✅ Be above drawer chrome */
    z-index: 1100;
}

    .account-menu.open[b-10pubi0u20] {
        display: block;
    }

.account-menu-header[b-10pubi0u20] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 6px 6px 10px;
    border-radius: 12px;
    cursor: pointer;
}

    .account-menu-header:hover[b-10pubi0u20] {
        background: rgba(17,24,39,.06);
    }

.account-menu-identity .account-name[b-10pubi0u20] {
    color: #111827;
    font-size: .92rem; /* smaller */
    font-weight: 700;
}

.account-menu-identity .account-role[b-10pubi0u20] {
    color: #6b7280;
    opacity: 1;
    font-size: .78rem; /* smaller */
    font-weight: 600;
}

/* tighter separator spacing */
.account-menu-sep[b-10pubi0u20] {
    height: 1px;
    background: rgba(17,24,39,.10);
    margin: 6px 0;
}

.account-menu-form[b-10pubi0u20] {
    margin: 0;
}

.account-menu-item[b-10pubi0u20] {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 8px; /* tighter */
    border: 0;
    background: transparent;
    border-radius: 10px;
    /* tighter row height */
    padding: 8px 8px;
    font: inherit;
    font-weight: 600;
    font-size: .92rem; /* smaller */
    line-height: 1.1;
    cursor: pointer;
    color: #111827;
    text-align: left;
}

    .account-menu-item:hover[b-10pubi0u20] {
        background: rgba(17,24,39,.06);
    }

    .account-menu-item:focus-visible[b-10pubi0u20] {
        outline: 0;
        box-shadow: 0 0 0 3px rgba(59,130,246,.22);
    }

    .account-menu-item.danger[b-10pubi0u20] {
        color: #b42318;
    }

        .account-menu-item.danger:hover[b-10pubi0u20] {
            background: rgba(220,53,69,.08);
        }

.mi-icon[b-10pubi0u20] {
    width: 16px; /* smaller icon slot */
    display: inline-flex;
    justify-content: center;
    opacity: .85;
}

/* ================================================================ */

/* Keep drawer footer from “feeling cut” on small heights */
@media (max-height: 650px) {
    .drawer-footer[b-10pubi0u20] {
        padding-bottom: 20px;
    }
}

/* ---------------- FIX: allow the account popup to escape the Drawer (FOOTER ONLY) ---------------- */
/* Allow overflow ONLY on footer containers so the menu can escape upward,
   without breaking the main scroll containers. */
[b-10pubi0u20] .dxbl-drawer-footer,
.drawer-footer[b-10pubi0u20] {
    overflow: visible !important;
}

/* Some DX themes also clip with position context; keep footer above */
[b-10pubi0u20] .dxbl-drawer-footer {
    position: relative;
    z-index: 50;
}

/* Your wrapper/footer already has overflow visible — keep it */
.drawer-footer[b-10pubi0u20] {
    position: relative;
    overflow: visible;
}

/* Make sure the menu wins stacking over drawer/body content */
.account-wrap[b-10pubi0u20] {
    position: relative;
    z-index: 1000;
}

.account-menu[b-10pubi0u20] {
    z-index: 1100;
}

/* ---------------- Impersonation additions - matches existing account style ---------------- */

.account-trigger.impersonating[b-10pubi0u20] {
    border-color: rgba(255,255,255,.28);
    background: rgba(255,255,255,.10);
}

.account-role-line[b-10pubi0u20] {
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
    font-weight: 600;
    font-size: .82rem;
    opacity: .85;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.impersonation-chip[b-10pubi0u20] {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    padding: 1px 5px;
    border-radius: 999px;
    font-size: .62rem;
    font-weight: 700;
    color: #f59e0b;
    background: rgba(245,158,11,.10);
}

.account-original[b-10pubi0u20] {
    margin-top: 3px;
    color: #6b7280;
    font-size: .72rem;
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.account-menu-item.warning[b-10pubi0u20] {
    color: #b45309;
}

    .account-menu-item.warning:hover[b-10pubi0u20] {
        background: rgba(245,158,11,.08);
    }

.menu-unread-badge[b-10pubi0u20] {
    min-width: 18px;
    height: 18px;
    padding: 0 6px;
    border-radius: 999px;
    background: #dc3545;
    color: #fff;
    font-size: 11px;
    line-height: 18px;
    text-align: center;
    margin-left: auto;
}

.account-unread-badge[b-10pubi0u20] {
    position: absolute;
    top: -4px;
    right: -4px;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    border-radius: 999px;
    font-size: 11px;
    line-height: 18px;
    background: #dc3545;
    color: #fff;
    text-align: center;
}

.account-name[b-10pubi0u20] {
    white-space: normal;
    overflow: hidden;
    text-overflow: unset;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.account-trigger .account-name[b-10pubi0u20] {
    line-height: 1.05;
    font-size: .9rem;
}

.account-menu-identity .account-name[b-10pubi0u20] {
    line-height: 1.05;
    font-size: .88rem;
}

.account-original[b-10pubi0u20] {
    white-space: normal;
    line-height: 1.15;
}

.impersonation-chip[b-10pubi0u20] {
    font-size: .58rem;
    padding: 1px 4px;
}

/* ---------------- Account footer alignment fix ---------------- */

.account-trigger[b-10pubi0u20] {
    min-height: 60px;
}

    .account-trigger .account-text[b-10pubi0u20] {
        justify-content: center;
        gap: 1px;
    }

    .account-trigger .account-name[b-10pubi0u20] {
        display: block;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        line-height: 1.05;
        font-size: .95rem;
    }

    .account-trigger .account-role-line[b-10pubi0u20] {
        display: flex;
        align-items: center;
        gap: 6px;
        line-height: 1.05;
        min-height: 16px;
    }

    .account-trigger .account-role[b-10pubi0u20] {
        line-height: 1.05;
    }

    .account-trigger .impersonation-chip[b-10pubi0u20] {
        transform: translateY(-1px);
    }

/* ---------------- Final account pill alignment ---------------- */

.account-trigger[b-10pubi0u20] {
    grid-template-columns: 38px minmax(0, 1fr) 18px;
    align-items: center;
}

    .account-trigger .account-text[b-10pubi0u20] {
        display: grid;
        grid-template-rows: auto auto;
        align-content: center;
        justify-content: start;
        gap: 2px;
        min-height: 38px;
    }

    .account-trigger .account-name[b-10pubi0u20],
    .account-trigger .account-role-line[b-10pubi0u20] {
        margin: 0;
        padding: 0;
        text-align: left;
    }

    .account-trigger .account-name[b-10pubi0u20] {
        line-height: 1.05;
    }

    .account-trigger .account-role-line[b-10pubi0u20] {
        line-height: 1;
    }
/* _content/Arsakeio_Portal/Components/Layout/NavMenu.razor.rz.scp.css */
/* Scope: only this nav instance */
[b-cxo86dbrq3] .nav-tree-scope {
    --dxbl-body-color: #fff;
    --dxbl-secondary-text-color: rgba(255,255,255,.9);
    --dxbl-link-color: #fff;
    color: #fff;
}

/* Keep container white */
[b-cxo86dbrq3] .nav-tree {
    color: #fff;
}
/* _content/Arsakeio_Portal/Components/Pages/AdminActivitySettings.razor.rz.scp.css */
.prca-admin-page[b-n9fwb7bi6r] {
    width: 100%;
    min-height: 100vh;
    padding: 40px 32px 80px;
    background: #ffffff;
}

.admin-shell[b-n9fwb7bi6r] {
    width: 100%;
    max-width: none;
    margin: 0;
}

.admin-header[b-n9fwb7bi6r] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    width: 100%;
    margin-bottom: 22px;
    padding: 30px;
    border-radius: 28px;
    background: rgba(255,255,255,.76);
    backdrop-filter: blur(18px);
    border: 1px solid rgba(255,255,255,.85);
    box-shadow: 0 24px 70px rgba(15,23,42,.08);
}

.eyebrow[b-n9fwb7bi6r] {
    display: inline-flex;
    padding: 7px 13px;
    border-radius: 999px;
    background: rgba(219,234,254,.9);
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 900;
    margin-bottom: 12px;
}

.admin-header h1[b-n9fwb7bi6r] {
    margin: 0;
    font-size: clamp(32px, 4vw, 52px);
    font-weight: 950;
    letter-spacing: -.05em;
    color: #0f172a;
}

.admin-header p[b-n9fwb7bi6r] {
    margin: 10px 0 0;
    max-width: 900px;
    color: #64748b;
    font-size: 16px;
    line-height: 1.55;
}

.header-actions[b-n9fwb7bi6r],
.panel-head-actions[b-n9fwb7bi6r] {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    flex-wrap: wrap;
}

[b-n9fwb7bi6r] .save-main.dxbs-button,
[b-n9fwb7bi6r] .save-main.btn {
    border-radius: 999px !important;
    padding: 13px 28px !important;
    font-weight: 900 !important;
    background: #2563eb !important;
    border-color: #2563eb !important;
    color: #fff !important;
    box-shadow: 0 16px 34px rgba(37,99,235,.25);
}

[b-n9fwb7bi6r] .save-small.dxbs-button,
[b-n9fwb7bi6r] .save-small.btn {
    padding: 10px 18px !important;
    font-size: 14px !important;
}

[b-n9fwb7bi6r] .role-preview-button.dxbs-button,
[b-n9fwb7bi6r] .role-preview-button.btn {
    padding: 10px 18px !important;
    border-color: #93c5fd !important;
    border-radius: 999px !important;
    background: #eff6ff !important;
    color: #1d4ed8 !important;
    font-weight: 900 !important;
    box-shadow: 0 10px 24px rgba(37, 99, 235, .1);
}

.admin-alert[b-n9fwb7bi6r] {
    margin-bottom: 16px;
    padding: 14px 18px;
    border: 1px solid transparent;
    border-radius: 16px;
    font-weight: 800;
    line-height: 1.45;
}

    .admin-alert.success[b-n9fwb7bi6r] {
        border-color: #bbf7d0;
        background: #dcfce7;
        color: #166534;
    }

    .admin-alert.error[b-n9fwb7bi6r] {
        border-color: #fecaca;
        background: #fee2e2;
        color: #991b1b;
    }

.year-card[b-n9fwb7bi6r] {
    display: grid;
    grid-template-columns: 220px minmax(0, 1fr);
    gap: 16px;
    align-items: center;
    width: 100%;
    margin-bottom: 22px;
    padding: 20px;
    border-radius: 22px;
    background: rgba(255,255,255,.8);
    backdrop-filter: blur(16px);
    border: 1px solid rgba(226,232,240,.9);
    box-shadow: 0 16px 44px rgba(15,23,42,.06);
}

    .year-card label[b-n9fwb7bi6r] {
        color: #334155;
        font-weight: 900;
    }

.scope-loading[b-n9fwb7bi6r] {
    margin: -6px 0 18px;
    padding: 10px 15px;
    border: 1px solid #bfdbfe;
    border-radius: 14px;
    background: #eff6ff;
    color: #1d4ed8;
    font-size: 13px;
    font-weight: 900;
}

.tab-panel[b-n9fwb7bi6r] {
    width: 100%;
    padding: 26px;
    border-radius: 26px;
    background: rgba(255,255,255,.82);
    backdrop-filter: blur(18px);
    border: 1px solid rgba(226,232,240,.9);
    box-shadow: 0 22px 60px rgba(15,23,42,.07);
    overflow: visible;
}

.panel-head[b-n9fwb7bi6r] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
    margin-bottom: 22px;
}

    .panel-head h2[b-n9fwb7bi6r] {
        margin: 0;
        color: #0f172a;
        font-size: 24px;
        font-weight: 950;
    }

    .panel-head p[b-n9fwb7bi6r] {
        max-width: 980px;
        margin: 7px 0 0;
        color: #64748b;
        line-height: 1.5;
    }

.token-box[b-n9fwb7bi6r],
.fullscreen-token-panel[b-n9fwb7bi6r] {
    padding: 18px;
    border-radius: 22px;
    background: rgba(248,250,252,.95);
    border: 1px solid rgba(226,232,240,.9);
}

.token-box-wide[b-n9fwb7bi6r] {
    margin-bottom: 22px;
}

.token-title[b-n9fwb7bi6r],
.fullscreen-token-panel h3[b-n9fwb7bi6r] {
    margin: 0 0 14px;
    color: #0f172a;
    font-size: 15px;
    font-weight: 950;
}

.token-help[b-n9fwb7bi6r],
.fullscreen-token-panel p[b-n9fwb7bi6r] {
    margin: -6px 0 14px;
    color: #64748b;
    font-size: 13px;
    line-height: 1.45;
}

.token-list[b-n9fwb7bi6r],
.fullscreen-token-list[b-n9fwb7bi6r] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.token-list-scroll[b-n9fwb7bi6r] {
    max-height: 190px;
    overflow-y: auto;
    padding-right: 6px;
}

.token-chip[b-n9fwb7bi6r] {
    display: inline-flex;
    align-items: center;
    padding: 7px 12px;
    border: 0;
    border-radius: 999px;
    background: #eef2ff;
    color: #1d4ed8;
    font-family: ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;
    font-size: 12px;
    font-weight: 900;
    line-height: 1;
    cursor: pointer;
    user-select: none;
}

.token-chip-large[b-n9fwb7bi6r] {
    display: inline-grid;
    gap: 3px;
    min-width: 210px;
    text-align: left;
}

    .token-chip-large strong[b-n9fwb7bi6r] {
        color: #1e293b;
        font-size: 12px;
    }

    .token-chip-large small[b-n9fwb7bi6r] {
        color: #4f63d7;
        font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
        font-size: 11px;
    }

.template-body-editor[b-n9fwb7bi6r] {
    width: 100%;
    display: grid;
    gap: 12px;
}

    .template-body-editor label[b-n9fwb7bi6r] {
        color: #334155;
        font-size: 13px;
        font-weight: 900;
    }

.editor-title-row[b-n9fwb7bi6r] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
}

    .editor-title-row > div[b-n9fwb7bi6r] {
        display: grid;
        gap: 4px;
    }

    .editor-title-row small[b-n9fwb7bi6r] {
        color: #64748b;
        font-size: 13px;
        font-weight: 750;
        line-height: 1.45;
    }

.editor-shell-full[b-n9fwb7bi6r],
.fullscreen-editor-main[b-n9fwb7bi6r] {
    min-width: 0;
    overflow: hidden;
    border: 1px solid rgba(226,232,240,.9);
    border-radius: 20px;
    background: #fff;
}

.empty-panel[b-n9fwb7bi6r] {
    padding: 24px;
    border: 1px dashed #cbd5e1;
    border-radius: 20px;
    background: #f8fafc;
}

    .empty-panel h2[b-n9fwb7bi6r] {
        margin: 0;
        color: #0f172a;
        font-size: 22px;
        font-weight: 950;
    }

    .empty-panel p[b-n9fwb7bi6r] {
        margin: 8px 0 0;
        color: #64748b;
        line-height: 1.55;
    }

.activity-editor-fullscreen-body[b-n9fwb7bi6r] {
    padding: 0 !important;
}

.fullscreen-dialog[b-n9fwb7bi6r] {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    height: 94vh;
    background: #ffffff;
}

.fullscreen-header[b-n9fwb7bi6r] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 18px 22px;
    border-bottom: 1px solid #e2e8f0;
    background: #f8fafc;
}

    .fullscreen-header span[b-n9fwb7bi6r] {
        display: block;
        color: #2563eb;
        font-size: 11px;
        font-weight: 950;
        letter-spacing: .08em;
        text-transform: uppercase;
    }

    .fullscreen-header h2[b-n9fwb7bi6r] {
        margin: 5px 0 0;
        color: #0f172a;
        font-size: 23px;
        font-weight: 950;
        letter-spacing: -.03em;
    }

.fullscreen-actions[b-n9fwb7bi6r] {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.modal-primary-button[b-n9fwb7bi6r],
.modal-secondary-button[b-n9fwb7bi6r] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 10px 18px;
    border-radius: 999px;
    font-family: inherit;
    font-size: 13px;
    font-weight: 900;
    line-height: 1;
    cursor: pointer;
}

.modal-primary-button[b-n9fwb7bi6r] {
    border: 1px solid #2563eb;
    background: #2563eb;
    color: #ffffff;
    box-shadow: 0 14px 30px rgba(37, 99, 235, .22);
}

.modal-secondary-button[b-n9fwb7bi6r] {
    border: 1px solid rgba(226, 232, 240, .95);
    background: #ffffff;
    color: #334155;
}

.fullscreen-content[b-n9fwb7bi6r] {
    display: grid;
    grid-template-columns: 320px minmax(0, 1fr);
    gap: 18px;
    min-height: 0;
    padding: 18px;
    background: #ffffff;
}

@media (min-width: 1300px) {
    .token-list-scroll[b-n9fwb7bi6r] {
        display: grid;
        grid-template-columns: repeat(4, minmax(170px, 1fr));
        gap: 10px;
        align-items: stretch;
    }

    .token-chip-large[b-n9fwb7bi6r] {
        width: 100%;
        min-width: 0;
    }
}

@media (max-width: 980px) {
    .prca-admin-page[b-n9fwb7bi6r] {
        padding: 24px 16px 60px;
    }

    .admin-header[b-n9fwb7bi6r],
    .panel-head[b-n9fwb7bi6r],
    .fullscreen-header[b-n9fwb7bi6r] {
        flex-direction: column;
        align-items: stretch;
    }

    .year-card[b-n9fwb7bi6r],
    .fullscreen-content[b-n9fwb7bi6r] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .prca-admin-page[b-n9fwb7bi6r] {
        padding: 18px 10px 50px;
    }

    .admin-header[b-n9fwb7bi6r],
    .tab-panel[b-n9fwb7bi6r] {
        border-radius: 22px;
        padding: 18px;
    }

    .header-actions[b-n9fwb7bi6r],
    .panel-head-actions[b-n9fwb7bi6r],
    .fullscreen-actions[b-n9fwb7bi6r] {
        display: grid;
        grid-template-columns: 1fr;
        width: 100%;
    }

    [b-n9fwb7bi6r] .header-actions .dxbs-button,
    [b-n9fwb7bi6r] .header-actions .btn,
    [b-n9fwb7bi6r] .panel-head-actions .dxbs-button,
    [b-n9fwb7bi6r] .panel-head-actions .btn,
    .modal-primary-button[b-n9fwb7bi6r],
    .modal-secondary-button[b-n9fwb7bi6r] {
        width: 100%;
    }

    .editor-title-row[b-n9fwb7bi6r] {
        flex-direction: column;
        align-items: stretch;
    }

    .token-list-scroll[b-n9fwb7bi6r],
    .fullscreen-token-list[b-n9fwb7bi6r] {
        display: grid;
        grid-template-columns: 1fr;
        max-height: 260px;
    }

    .token-chip-large[b-n9fwb7bi6r] {
        width: 100%;
        min-width: 0;
    }
}

/* =========================================================
   Activity OTP setting card
   Append this to AdminActivitySettings.razor.css
   ========================================================= */

.otp-settings-card[b-n9fwb7bi6r] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 22px;
    padding: 18px;
    border: 1px solid rgba(191, 219, 254, .9);
    border-radius: 22px;
    background: linear-gradient(135deg, rgba(239,246,255,.92), rgba(255,255,255,.85));
    box-shadow: 0 14px 36px rgba(37, 99, 235, .06);
}

.otp-settings-copy[b-n9fwb7bi6r] {
    min-width: 0;
}

    .otp-settings-copy h3[b-n9fwb7bi6r] {
        margin: 0;
        color: #0f172a;
        font-size: 18px;
        font-weight: 950;
        letter-spacing: -.025em;
    }

    .otp-settings-copy p[b-n9fwb7bi6r] {
        max-width: 920px;
        margin: 7px 0 0;
        color: #64748b;
        font-size: 13px;
        font-weight: 750;
        line-height: 1.5;
    }

.otp-radio-group[b-n9fwb7bi6r] {
    display: inline-flex;
    align-items: stretch;
    gap: 8px;
    flex: 0 0 auto;
    padding: 6px;
    border-radius: 999px;
    background: rgba(255,255,255,.85);
    border: 1px solid rgba(226,232,240,.95);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.95);
}

.otp-radio[b-n9fwb7bi6r] {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-areas:
        "radio text"
        "radio help";
    column-gap: 8px;
    align-items: center;
    min-width: 128px;
    padding: 9px 14px;
    border-radius: 999px;
    color: #64748b;
    cursor: pointer;
    user-select: none;
    transition: background-color .16s ease, color .16s ease, box-shadow .16s ease;
}

    .otp-radio input[b-n9fwb7bi6r] {
        grid-area: radio;
        width: 15px;
        height: 15px;
        accent-color: #2563eb;
    }

    .otp-radio span[b-n9fwb7bi6r] {
        grid-area: text;
        color: inherit;
        font-size: 13px;
        font-weight: 950;
        line-height: 1;
    }

    .otp-radio small[b-n9fwb7bi6r] {
        grid-area: help;
        margin-top: 3px;
        color: inherit;
        opacity: .78;
        font-size: 10px;
        font-weight: 900;
        line-height: 1;
    }

    .otp-radio.selected[b-n9fwb7bi6r] {
        background: #2563eb;
        color: #ffffff;
        box-shadow: 0 12px 26px rgba(37, 99, 235, .22);
    }

    .otp-radio:has(input:disabled)[b-n9fwb7bi6r] {
        cursor: not-allowed;
        opacity: .75;
    }

@media (max-width: 980px) {
    .otp-settings-card[b-n9fwb7bi6r] {
        flex-direction: column;
        align-items: stretch;
    }

    .otp-radio-group[b-n9fwb7bi6r] {
        width: 100%;
    }

    .otp-radio[b-n9fwb7bi6r] {
        width: 100%;
    }
}

@media (max-width: 520px) {
    .otp-radio-group[b-n9fwb7bi6r] {
        display: grid;
        grid-template-columns: 1fr;
        border-radius: 20px;
    }

    .otp-radio[b-n9fwb7bi6r] {
        border-radius: 16px;
    }
}
/* _content/Arsakeio_Portal/Components/Pages/AdminBusRouteSettings.razor.rz.scp.css */
.prca-admin-page[b-beeq9dzir6] {
    width: 100%;
    min-height: 100vh;
    padding: 40px 32px 80px;
    background: #ffffff;
}

.admin-shell[b-beeq9dzir6] {
    width: 100%;
    max-width: none;
    margin: 0;
}

.admin-header[b-beeq9dzir6] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    width: 100%;
    margin-bottom: 22px;
    padding: 30px;
    border-radius: 28px;
    background: rgba(255,255,255,.76);
    backdrop-filter: blur(18px);
    border: 1px solid rgba(255,255,255,.85);
    box-shadow: 0 24px 70px rgba(15,23,42,.08);
}

.eyebrow[b-beeq9dzir6] {
    display: inline-flex;
    padding: 7px 13px;
    border-radius: 999px;
    background: rgba(219,234,254,.9);
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 900;
    margin-bottom: 12px;
}

.admin-header h1[b-beeq9dzir6] {
    margin: 0;
    font-size: clamp(32px, 4vw, 52px);
    font-weight: 950;
    letter-spacing: -.05em;
    color: #0f172a;
}

.admin-header p[b-beeq9dzir6] {
    margin: 10px 0 0;
    max-width: 900px;
    color: #64748b;
    font-size: 16px;
    line-height: 1.55;
}

.header-actions[b-beeq9dzir6],
.panel-head-actions[b-beeq9dzir6] {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    flex-wrap: wrap;
}

[b-beeq9dzir6] .save-main.dxbs-button,
[b-beeq9dzir6] .save-main.btn {
    border-radius: 999px !important;
    padding: 13px 28px !important;
    font-weight: 900 !important;
    background: #2563eb !important;
    border-color: #2563eb !important;
    color: #fff !important;
    box-shadow: 0 16px 34px rgba(37,99,235,.25);
}

[b-beeq9dzir6] .save-small.dxbs-button,
[b-beeq9dzir6] .save-small.btn {
    padding: 10px 18px !important;
    font-size: 14px !important;
}

[b-beeq9dzir6] .role-preview-button.dxbs-button,
[b-beeq9dzir6] .role-preview-button.btn {
    padding: 10px 18px !important;
    border-color: #93c5fd !important;
    border-radius: 999px !important;
    background: #eff6ff !important;
    color: #1d4ed8 !important;
    font-weight: 900 !important;
    box-shadow: 0 10px 24px rgba(37, 99, 235, .1);
}

    [b-beeq9dzir6] .role-preview-button.dxbs-button:hover,
    [b-beeq9dzir6] .role-preview-button.btn:hover {
        border-color: #2563eb !important;
        background: #dbeafe !important;
        color: #1e40af !important;
    }

.admin-alert[b-beeq9dzir6] {
    margin-bottom: 16px;
    padding: 14px 18px;
    border: 1px solid transparent;
    border-radius: 16px;
    font-weight: 800;
    line-height: 1.45;
}

    .admin-alert.success[b-beeq9dzir6] {
        border-color: #bbf7d0;
        background: #dcfce7;
        color: #166534;
    }

    .admin-alert.error[b-beeq9dzir6] {
        border-color: #fecaca;
        background: #fee2e2;
        color: #991b1b;
    }

    .admin-alert.warning[b-beeq9dzir6] {
        border-color: #fed7aa;
        background: #fff7ed;
        color: #9a3412;
    }

    .admin-alert.info[b-beeq9dzir6] {
        border-color: #bae6fd;
        background: #f0f9ff;
        color: #075985;
    }

.year-card[b-beeq9dzir6] {
    display: grid;
    grid-template-columns: 220px minmax(0, 1fr);
    gap: 16px;
    align-items: center;
    width: 100%;
    margin-bottom: 22px;
    padding: 20px;
    border-radius: 22px;
    background: rgba(255,255,255,.8);
    backdrop-filter: blur(16px);
    border: 1px solid rgba(226,232,240,.9);
    box-shadow: 0 16px 44px rgba(15,23,42,.06);
}

    .year-card label[b-beeq9dzir6] {
        color: #334155;
        font-weight: 900;
    }

[b-beeq9dzir6] .year-card .dxbs-editor,
[b-beeq9dzir6] .year-card .dxbs-combobox,
[b-beeq9dzir6] .year-card .dxbs-editor-container,
[b-beeq9dzir6] .year-card .dxbl-text-edit,
[b-beeq9dzir6] .year-card .dxbl-edit {
    width: 100%;
}

.scope-loading[b-beeq9dzir6] {
    margin: -6px 0 18px;
    padding: 10px 15px;
    border: 1px solid #bfdbfe;
    border-radius: 14px;
    background: #eff6ff;
    color: #1d4ed8;
    font-size: 13px;
    font-weight: 900;
}

[b-beeq9dzir6] .admin-tabs .dxbs-tabs {
    border: 0;
}

[b-beeq9dzir6] .admin-tabs .nav-tabs {
    border: 1px solid rgba(226,232,240,.9) !important;
    gap: 10px;
    margin: 0 0 34px !important;
    padding: 12px 14px !important;
    border-radius: 22px !important;
    background: rgba(255,255,255,.78) !important;
    backdrop-filter: blur(16px);
    box-shadow: 0 16px 44px rgba(15,23,42,.06);
    overflow-x: auto;
    flex-wrap: nowrap !important;
}

[b-beeq9dzir6] .admin-tabs .tab-content {
    padding-top: 0 !important;
}

[b-beeq9dzir6] .admin-tabs .nav-tabs .nav-link {
    border: 1px solid transparent !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: #64748b !important;
    font-weight: 900 !important;
    padding: 10px 16px !important;
    white-space: nowrap;
}

    [b-beeq9dzir6] .admin-tabs .nav-tabs .nav-link:hover {
        background: rgba(241,245,249,.9) !important;
        color: #0f172a !important;
    }

    [b-beeq9dzir6] .admin-tabs .nav-tabs .nav-link.active {
        background: #2563eb !important;
        color: #fff !important;
        border-color: #2563eb !important;
        box-shadow: 0 12px 26px rgba(37,99,235,.22);
    }

.tab-panel[b-beeq9dzir6] {
    width: 100%;
    padding: 26px;
    border-radius: 26px;
    background: rgba(255,255,255,.82);
    backdrop-filter: blur(18px);
    border: 1px solid rgba(226,232,240,.9);
    box-shadow: 0 22px 60px rgba(15,23,42,.07);
    overflow: visible;
}

.panel-head[b-beeq9dzir6] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
    margin-bottom: 22px;
}

    .panel-head.standard-order[b-beeq9dzir6] {
        flex-direction: row;
    }

    .panel-head h2[b-beeq9dzir6] {
        margin: 0;
        color: #0f172a;
        font-size: 24px;
        font-weight: 950;
    }

    .panel-head p[b-beeq9dzir6] {
        max-width: 980px;
        margin: 7px 0 0;
        color: #64748b;
        line-height: 1.5;
    }

.feature-summary-grid[b-beeq9dzir6] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 22px;
}

.feature-summary-card[b-beeq9dzir6] {
    min-width: 0;
    padding: 18px;
    border: 1px solid rgba(226, 232, 240, .95);
    border-radius: 20px;
    background: rgba(248, 250, 252, .92);
}

    .feature-summary-card span[b-beeq9dzir6] {
        display: block;
        margin-bottom: 8px;
        color: #64748b;
        font-size: 12px;
        font-weight: 900;
        letter-spacing: .06em;
        text-transform: uppercase;
    }

    .feature-summary-card strong[b-beeq9dzir6] {
        display: block;
        overflow-wrap: anywhere;
        color: #0f172a;
        font-size: 24px;
        font-weight: 950;
        line-height: 1.1;
    }

    .feature-summary-card small[b-beeq9dzir6] {
        display: block;
        margin-top: 7px;
        color: #94a3b8;
        font-weight: 750;
        line-height: 1.4;
    }

    .feature-summary-card.warning[b-beeq9dzir6] {
        border-color: #fed7aa;
        background: #fff7ed;
    }

        .feature-summary-card.warning span[b-beeq9dzir6],
        .feature-summary-card.warning small[b-beeq9dzir6] {
            color: #9a3412;
        }

    .feature-summary-card.success[b-beeq9dzir6] {
        border-color: #bbf7d0;
        background: #f0fdf4;
    }

        .feature-summary-card.success span[b-beeq9dzir6],
        .feature-summary-card.success small[b-beeq9dzir6] {
            color: #166534;
        }

    .feature-summary-card.info[b-beeq9dzir6] {
        border-color: #bae6fd;
        background: #f0f9ff;
    }

        .feature-summary-card.info span[b-beeq9dzir6],
        .feature-summary-card.info small[b-beeq9dzir6] {
            color: #075985;
        }

.template-body-editor[b-beeq9dzir6] {
    width: 100%;
    max-width: 100%;
    display: grid;
    gap: 12px;
    margin-top: 8px;
    overflow: visible;
}

    .template-body-editor label[b-beeq9dzir6] {
        display: block;
        margin-bottom: 8px;
        color: #334155;
        font-size: 13px;
        font-weight: 900;
    }

.editor-title-row[b-beeq9dzir6] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
}

.bus-agreement-editor-layout[b-beeq9dzir6] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 340px;
    gap: 18px;
    align-items: start;
}

.bus-editor-shell[b-beeq9dzir6] {
    min-width: 0;
    width: 100%;
    overflow: hidden;
    border: 1px solid rgba(226,232,240,.9);
    border-radius: 20px;
    background: #fff;
}

.token-box[b-beeq9dzir6],
.fullscreen-token-panel[b-beeq9dzir6] {
    padding: 18px;
    border-radius: 22px;
    background: rgba(248,250,252,.95);
    border: 1px solid rgba(226,232,240,.9);
}

    .token-title[b-beeq9dzir6],
    .fullscreen-token-panel h3[b-beeq9dzir6] {
        margin: 0 0 14px;
        color: #0f172a;
        font-size: 15px;
        font-weight: 950;
    }

    .token-help[b-beeq9dzir6],
    .fullscreen-token-panel p[b-beeq9dzir6] {
        margin: -6px 0 14px;
        color: #64748b;
        font-size: 13px;
        line-height: 1.45;
    }

.token-list[b-beeq9dzir6],
.fullscreen-token-list[b-beeq9dzir6] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.token-chip[b-beeq9dzir6] {
    display: inline-flex;
    align-items: center;
    padding: 7px 12px;
    border: 0;
    border-radius: 999px;
    background: #eef2ff;
    color: #1d4ed8;
    font-family: ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;
    font-size: 12px;
    font-weight: 900;
    line-height: 1;
    cursor: pointer;
    user-select: none;
}

.token-chip-large[b-beeq9dzir6] {
    display: inline-grid;
    gap: 3px;
    min-width: 170px;
    text-align: left;
}

    .token-chip-large strong[b-beeq9dzir6] {
        color: #1e293b;
        font-size: 12px;
    }

    .token-chip-large small[b-beeq9dzir6] {
        color: #4f63d7;
        font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
        font-size: 11px;
    }

.settings-grid-view[b-beeq9dzir6] {
    width: 100%;
    margin-top: 12px;
    overflow: hidden;
    border-radius: 20px;
}

[b-beeq9dzir6] .settings-grid-view .dxbs-grid {
    overflow: hidden !important;
    border: 1px solid rgba(226,232,240,.9) !important;
    border-radius: 18px !important;
}

[b-beeq9dzir6] .settings-grid-view th {
    background: #f8fafc !important;
    color: #475569 !important;
    font-size: 12px !important;
    font-weight: 950 !important;
    letter-spacing: .06em;
    text-transform: uppercase;
}

[b-beeq9dzir6] .settings-grid-view td {
    vertical-align: middle !important;
}

.area-code-pill[b-beeq9dzir6] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    min-height: 30px;
    padding: 6px 10px;
    border-radius: 999px;
    background: #eef2ff;
    color: #3730a3;
    font-size: 13px;
    font-weight: 950;
}

.rule-toggle[b-beeq9dzir6] {
    min-height: 34px;
    width: 100%;
    padding: 7px 11px;
    border-radius: 999px;
    font-family: inherit;
    font-size: 12px;
    font-weight: 950;
    cursor: pointer;
    transition: .15s ease;
}

    .rule-toggle.on[b-beeq9dzir6] {
        border: 1px solid #bbf7d0;
        background: #dcfce7;
        color: #166534;
    }

    .rule-toggle.off[b-beeq9dzir6] {
        border: 1px solid #fecaca;
        background: #fff1f2;
        color: #991b1b;
    }

.empty-panel[b-beeq9dzir6] {
    padding: 24px;
    border: 1px dashed #cbd5e1;
    border-radius: 20px;
    background: #f8fafc;
}

    .empty-panel h2[b-beeq9dzir6] {
        margin: 0;
        color: #0f172a;
        font-size: 22px;
        font-weight: 950;
    }

    .empty-panel p[b-beeq9dzir6] {
        margin: 8px 0 0;
        color: #64748b;
        line-height: 1.55;
    }

/* Fullscreen editor */

.agreement-editor-fullscreen-body[b-beeq9dzir6] {
    padding: 0 !important;
}

.fullscreen-dialog[b-beeq9dzir6] {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    height: 94vh;
    background: #ffffff;
}

.fullscreen-header[b-beeq9dzir6] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 18px 22px;
    border-bottom: 1px solid #e2e8f0;
    background: #f8fafc;
}

    .fullscreen-header span[b-beeq9dzir6] {
        display: block;
        color: #2563eb;
        font-size: 11px;
        font-weight: 950;
        letter-spacing: .08em;
        text-transform: uppercase;
    }

    .fullscreen-header h2[b-beeq9dzir6] {
        margin: 5px 0 0;
        color: #0f172a;
        font-size: 23px;
        font-weight: 950;
        letter-spacing: -.03em;
    }

.fullscreen-actions[b-beeq9dzir6] {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.modal-primary-button[b-beeq9dzir6],
.modal-secondary-button[b-beeq9dzir6] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 10px 18px;
    border-radius: 999px;
    font-family: inherit;
    font-size: 13px;
    font-weight: 900;
    line-height: 1;
    cursor: pointer;
    text-decoration: none;
    transition: transform .16s ease, box-shadow .16s ease, background-color .16s ease, border-color .16s ease;
}

.modal-primary-button[b-beeq9dzir6] {
    border: 1px solid #2563eb;
    background: #2563eb;
    color: #ffffff;
    box-shadow: 0 14px 30px rgba(37, 99, 235, .22);
}

.modal-secondary-button[b-beeq9dzir6] {
    border: 1px solid rgba(226, 232, 240, .95);
    background: #ffffff;
    color: #334155;
}

    .modal-primary-button:disabled[b-beeq9dzir6],
    .modal-secondary-button:disabled[b-beeq9dzir6] {
        cursor: not-allowed;
        opacity: .58;
        box-shadow: none;
    }

.fullscreen-content[b-beeq9dzir6] {
    display: grid;
    grid-template-columns: 320px minmax(0, 1fr);
    gap: 18px;
    min-height: 0;
    padding: 18px;
    background: #ffffff;
}

.fullscreen-editor-main[b-beeq9dzir6] {
    min-width: 0;
    min-height: 0;
    overflow: hidden;
    border: 1px solid #e2e8f0;
    border-radius: 20px;
    background: #ffffff;
}

html[b-beeq9dzir6],
body[b-beeq9dzir6] {
    background: #ffffff !important;
}

@media (max-width: 1280px) {
    .feature-summary-grid[b-beeq9dzir6] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bus-agreement-editor-layout[b-beeq9dzir6],
    .fullscreen-content[b-beeq9dzir6] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 980px) {
    .prca-admin-page[b-beeq9dzir6] {
        padding: 24px 16px 60px;
    }

    .admin-header[b-beeq9dzir6] {
        flex-direction: column;
        align-items: stretch;
        padding: 24px;
    }

    .year-card[b-beeq9dzir6] {
        grid-template-columns: 1fr;
    }

    .panel-head[b-beeq9dzir6],
    .panel-head.standard-order[b-beeq9dzir6] {
        flex-direction: column;
    }

    .header-actions[b-beeq9dzir6],
    .panel-head-actions[b-beeq9dzir6],
    .fullscreen-actions[b-beeq9dzir6] {
        justify-content: flex-start;
    }
}

@media (max-width: 640px) {
    .prca-admin-page[b-beeq9dzir6] {
        padding: 18px 10px 50px;
    }

    .admin-header[b-beeq9dzir6] {
        padding: 22px 18px;
        border-radius: 22px;
    }

    .header-actions[b-beeq9dzir6],
    .panel-head-actions[b-beeq9dzir6],
    .fullscreen-actions[b-beeq9dzir6] {
        display: grid;
        grid-template-columns: 1fr;
        width: 100%;
    }

    [b-beeq9dzir6] .header-actions .dxbs-button,
    [b-beeq9dzir6] .header-actions .btn,
    [b-beeq9dzir6] .panel-head-actions .dxbs-button,
    [b-beeq9dzir6] .panel-head-actions .btn,
    .modal-primary-button[b-beeq9dzir6],
    .modal-secondary-button[b-beeq9dzir6] {
        width: 100%;
    }

    .tab-panel[b-beeq9dzir6] {
        padding: 16px;
        border-radius: 20px;
    }

    .feature-summary-grid[b-beeq9dzir6] {
        grid-template-columns: 1fr;
    }

    .editor-title-row[b-beeq9dzir6] {
        align-items: stretch;
        flex-direction: column;
    }

    [b-beeq9dzir6] .admin-tabs .nav-tabs {
        border-radius: 18px !important;
        overflow-x: auto;
        flex-wrap: nowrap !important;
    }

        [b-beeq9dzir6] .admin-tabs .nav-tabs .nav-link {
            white-space: nowrap;
        }

    .fullscreen-header[b-beeq9dzir6] {
        flex-direction: column;
        align-items: stretch;
    }

    .fullscreen-content[b-beeq9dzir6] {
        padding: 12px;
    }

    .settings-grid-view[b-beeq9dzir6] {
        overflow-x: auto;
    }
}


/* =========================================================
   Agreement editor layout aligned with registration settings
   ========================================================= */

.bus-token-box-wide[b-beeq9dzir6] {
    margin-bottom: 22px;
}

.bus-token-list-scroll[b-beeq9dzir6] {
    max-height: 190px;
    overflow-y: auto;
    padding-right: 6px;
}

.bus-template-body-editor[b-beeq9dzir6] {
    margin-top: 0;
}

.editor-title-row > div[b-beeq9dzir6] {
    display: grid;
    gap: 4px;
}

.editor-title-row small[b-beeq9dzir6] {
    color: #64748b;
    font-size: 13px;
    font-weight: 750;
    line-height: 1.45;
}

.bus-editor-shell-full[b-beeq9dzir6] {
    width: 100%;
    max-width: 100%;
}

/* The old agreement layout had editor + token sidebar.
   The bus page now follows Registration Settings: token dictionary above,
   full-width editor below. */
.bus-agreement-editor-layout[b-beeq9dzir6] {
    display: block;
}

.bus-token-box .token-chip-large[b-beeq9dzir6] {
    min-width: 210px;
}

@media (min-width: 1300px) {
    .bus-token-list-scroll[b-beeq9dzir6] {
        display: grid;
        grid-template-columns: repeat(5, minmax(170px, 1fr));
        gap: 10px;
        align-items: stretch;
    }

    .bus-token-box .token-chip-large[b-beeq9dzir6] {
        min-width: 0;
        width: 100%;
    }
}

@media (max-width: 980px) {
    .bus-token-list-scroll[b-beeq9dzir6] {
        max-height: 260px;
    }
}

@media (max-width: 640px) {
    .bus-token-list-scroll[b-beeq9dzir6] {
        display: grid;
        grid-template-columns: 1fr;
    }

    .bus-token-box .token-chip-large[b-beeq9dzir6] {
        width: 100%;
        min-width: 0;
    }
}
/* _content/Arsakeio_Portal/Components/Pages/AdminMaintenanceSettings.razor.rz.scp.css */
.maintenance-admin-page[b-qou40wgbrc] {
    display: grid;
    gap: 18px;
    max-width: 1500px;
    margin: 0 auto;
    padding: clamp(16px, 2vw, 28px);
}

.maintenance-admin-hero[b-qou40wgbrc],
.settings-card[b-qou40wgbrc],
.preview-card[b-qou40wgbrc] {
    border: 1px solid rgba(226, 232, 240, .9);
    border-radius: 26px;
    background: rgba(255, 255, 255, .94);
    box-shadow: 0 18px 48px rgba(15, 23, 42, .07);
}

.maintenance-admin-hero[b-qou40wgbrc] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 22px;
    padding: clamp(22px, 2vw, 30px);
}

.eyebrow[b-qou40wgbrc] {
    display: inline-flex;
    padding: 7px 13px;
    border-radius: 999px;
    background: rgba(219, 234, 254, .9);
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 900;
    margin-bottom: 12px;
}

.maintenance-admin-hero h1[b-qou40wgbrc],
.section-title-row h2[b-qou40wgbrc] {
    margin: 0;
    color: #0f172a;
    font-weight: 950;
    letter-spacing: -.035em;
}

.maintenance-admin-hero h1[b-qou40wgbrc] {
    font-size: clamp(34px, 4vw, 56px);
    line-height: 1;
}

.maintenance-admin-hero p[b-qou40wgbrc],
.section-title-row p[b-qou40wgbrc] {
    margin: 8px 0 0;
    color: #64748b;
    font-size: 14px;
    font-weight: 750;
    line-height: 1.55;
}

.state-pill[b-qou40wgbrc] {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 9px 14px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 950;
    white-space: nowrap;
}

.state-pill.enabled[b-qou40wgbrc] {
    color: #991b1b;
    background: #fff1f2;
    border: 1px solid #fecaca;
}

.state-pill.disabled[b-qou40wgbrc] {
    color: #166534;
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
}

.settings-card[b-qou40wgbrc],
.preview-card[b-qou40wgbrc] {
    padding: clamp(18px, 1.8vw, 26px);
}

.section-title-row[b-qou40wgbrc] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
    margin-bottom: 18px;
}

.maintenance-toggle-panel[b-qou40wgbrc] {
    width: fit-content;
    display: inline-grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    min-height: 62px;
    padding: 7px;
    border: 1px solid #e2e8f0;
    border-radius: 999px;
    background: #f8fafc;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .9);
}

.maintenance-choice[b-qou40wgbrc] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 48px;
    min-width: 178px;
    border: 0;
    border-radius: 999px;
    padding: 9px 20px;
    background: transparent;
    color: #64748b;
    font-family: inherit;
    line-height: 1;
    cursor: pointer;
    transition: background .18s ease, color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.maintenance-choice:hover[b-qou40wgbrc] {
    background: rgba(226, 232, 240, .55);
}

.maintenance-choice.selected[b-qou40wgbrc] {
    background: #4f63e6;
    color: #ffffff;
    box-shadow: 0 16px 34px rgba(79, 99, 230, .28);
}

.maintenance-choice.selected:hover[b-qou40wgbrc] {
    transform: translateY(-1px);
    background: #4f63e6;
}

.choice-dot[b-qou40wgbrc] {
    width: 18px;
    height: 18px;
    flex: 0 0 auto;
    border-radius: 999px;
    border: 2px solid #94a3b8;
    background: #ffffff;
}

.maintenance-choice.selected .choice-dot[b-qou40wgbrc] {
    border-color: #ffffff;
    background: #4f63e6;
    box-shadow: inset 0 0 0 4px #4f63e6, inset 0 0 0 7px #ffffff;
}

.choice-copy[b-qou40wgbrc] {
    display: grid;
    gap: 3px;
    text-align: left;
}

.choice-copy strong[b-qou40wgbrc] {
    font-size: 15px;
    font-weight: 950;
    letter-spacing: -.01em;
}

.choice-copy small[b-qou40wgbrc] {
    font-size: 12px;
    font-weight: 850;
    opacity: .84;
}

.maintenance-choice:not(.selected) .choice-copy strong[b-qou40wgbrc] {
    color: #334155;
}

.maintenance-choice:not(.selected) .choice-copy small[b-qou40wgbrc] {
    color: #64748b;
}

.maintenance-warning[b-qou40wgbrc] {
    margin-top: 18px;
    padding: 14px 16px;
    border-radius: 18px;
    border: 1px solid #fed7aa;
    background: #fff7ed;
    color: #9a3412;
    font-size: 13px;
    font-weight: 820;
    line-height: 1.5;
}

.form-actions[b-qou40wgbrc] {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 18px;
}

[b-qou40wgbrc] .primary-action.dxbs-button {
    border-radius: 999px !important;
    min-height: 42px !important;
    padding-inline: 22px !important;
    font-weight: 900 !important;
    background: #2563eb !important;
    border-color: #2563eb !important;
    color: #ffffff !important;
}

.admin-alert[b-qou40wgbrc] {
    padding: 13px 16px;
    border-radius: 18px;
    font-size: 13px;
    font-weight: 850;
}

.admin-alert.success[b-qou40wgbrc] {
    border: 1px solid #bbf7d0;
    background: #f0fdf4;
    color: #166534;
}

.admin-alert.error[b-qou40wgbrc] {
    border: 1px solid #fecaca;
    background: #fff1f2;
    color: #991b1b;
}

.maintenance-preview[b-qou40wgbrc] {
    padding: 22px;
    border: 1px solid #dbeafe;
    border-radius: 22px;
    background: linear-gradient(135deg, #eff6ff, #ffffff);
}

.maintenance-preview span[b-qou40wgbrc] {
    display: inline-flex;
    padding: 7px 12px;
    border-radius: 999px;
    background: #dbeafe;
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 950;
}

.maintenance-preview h3[b-qou40wgbrc] {
    margin: 14px 0 8px;
    color: #0f172a;
    font-size: 26px;
    font-weight: 950;
    letter-spacing: -.03em;
}

.maintenance-preview p[b-qou40wgbrc] {
    margin: 0;
    max-width: 850px;
    color: #475569;
    line-height: 1.55;
    font-weight: 760;
}

@media (max-width: 760px) {
    .maintenance-admin-hero[b-qou40wgbrc],
    .section-title-row[b-qou40wgbrc],
    .form-actions[b-qou40wgbrc] {
        flex-direction: column;
        align-items: stretch;
    }

    .maintenance-toggle-panel[b-qou40wgbrc] {
        width: 100%;
        border-radius: 24px;
        grid-template-columns: 1fr;
    }

    .maintenance-choice[b-qou40wgbrc] {
        width: 100%;
        min-width: 0;
        border-radius: 18px;
    }

    .state-pill[b-qou40wgbrc] {
        width: fit-content;
    }
}
/* _content/Arsakeio_Portal/Components/Pages/AdminReplacement.razor.rz.scp.css */
/* ===== Popup shell (allows sticky footer) ===== */
.rep-popup-shell[b-urc2f1vrm1] {
    display: flex;
    flex-direction: column;
    max-height: 70vh; /* prevents huge popup height on big screens */
    overflow: hidden; /* footer stays clean */
}

/* ===== Popup body ===== */
.rep-popup-body[b-urc2f1vrm1] {
    padding: 16px 18px;
    max-width: 1200px;
    width: 100%;
    overflow: auto; /* scroll body if needed */
}

/* ===== Divider under Row 1 ===== */
.rep-divider[b-urc2f1vrm1] {
    height: 1px;
    background: rgba(0,0,0,.06);
    margin: 10px 0 6px;
}

/* ===== Row 1: custom grid (tight + symmetric) ===== */
.rep-row1[b-urc2f1vrm1] {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 18px;
    align-items: end;
}

.rep-field[b-urc2f1vrm1] {
    min-width: 0;
}

.rep-label[b-urc2f1vrm1] {
    display: block;
    margin-bottom: 4px;
    line-height: 1.15;
    font-size: 0.92rem;
    font-weight: 600;
    letter-spacing: .2px;
    color: rgba(0, 0, 0, .65);
}

.rep-status .status-wrap[b-urc2f1vrm1] {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    min-height: 34px;
}

/* ===== Status pill (cleaner than badge inside the form) ===== */
.rep-pill[b-urc2f1vrm1] {
    display: inline-flex;
    align-items: center;
    height: 28px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 0.85rem;
    font-weight: 700;
    border: 1px solid rgba(0,0,0,.12);
    background: rgba(0,0,0,.03);
}

.rep-pill--on[b-urc2f1vrm1] {
    background: rgba(13,110,253,.10);
    border-color: rgba(13,110,253,.25);
}

.rep-pill--off[b-urc2f1vrm1] {
    background: rgba(108,117,125,.10);
    border-color: rgba(108,117,125,.25);
}

/* ===== Row 2/3 grids (2 columns like the screenshot) ===== */
.rep-row2[b-urc2f1vrm1] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
    align-items: start;
}

/* ===== Hint under the teacher combos ===== */
.hint[b-urc2f1vrm1] {
    margin-top: 4px;
    line-height: 1.2;
    color: rgba(0,0,0,.45) !important;
}

/* ===== Keep FormLayout compact (safety net if theme adds padding) ===== */
.rep-form .dxfl-item[b-urc2f1vrm1] {
    padding-top: 2px;
    padding-bottom: 6px;
}

/* ===== Dropdown column helpers ===== */
.dd-aa[b-urc2f1vrm1] {
    text-align: right;
    font-variant-numeric: tabular-nums;
    color: rgba(0,0,0,.65);
}

.dd-ellipsis[b-urc2f1vrm1] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.dd-email[b-urc2f1vrm1] {
    color: rgba(0,0,0,.75);
}

/* Make Year/Trim look nicer */
.year-editor .dxbl-text-editor-input[b-urc2f1vrm1],
.trim-editor .dxbl-text-editor-input[b-urc2f1vrm1] {
    text-overflow: ellipsis;
    font-variant-numeric: tabular-nums;
}

/* Your dropdown row styles kept (if you still use them anywhere) */
.teacher-dd-row[b-urc2f1vrm1] {
    display: grid;
    grid-template-columns: 1.4fr 1.6fr 90px;
    gap: 10px;
    align-items: center;
    padding: 6px 10px;
    border-bottom: 1px solid rgba(0,0,0,.06);
    font-size: 0.95rem;
}

.teacher-dd-head[b-urc2f1vrm1] {
    font-weight: 600;
    color: rgba(0,0,0,.65);
    background: rgba(0,0,0,.03);
    position: sticky;
    top: 0;
    z-index: 1;
}

.teacher-dd-aa[b-urc2f1vrm1] {
    text-align: right;
    font-variant-numeric: tabular-nums;
    color: rgba(0,0,0,.65);
}

.teacher-dd-email[b-urc2f1vrm1] {
    color: rgba(0,0,0,.75);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.teacher-dd-name[b-urc2f1vrm1] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* ===== Sticky footer (clean + consistent) ===== */
.rep-footer[b-urc2f1vrm1] {
    padding: 10px 18px;
    border-top: 1px solid rgba(0,0,0,.08);
    background: rgba(255,255,255,.96);
}

/* ===== Responsive stacking ===== */
@media (max-width: 900px) {
    .rep-row1[b-urc2f1vrm1] {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .rep-row2[b-urc2f1vrm1] {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .rep-popup-shell[b-urc2f1vrm1] {
        max-height: 78vh;
    }
}
/* _content/Arsakeio_Portal/Components/Pages/AdminScholarshipSettings.razor.rz.scp.css */
.discount-admin-page[b-d35ldpo947] {
    display: grid;
    gap: 18px;
    max-width: 1500px;
    margin: 0 auto;
    padding: clamp(16px, 2vw, 28px);
}

.discount-hero[b-d35ldpo947],
.settings-card[b-d35ldpo947] {
    border: 1px solid rgba(226, 232, 240, .9);
    border-radius: 26px;
    background: rgba(255, 255, 255, .94);
    box-shadow: 0 18px 48px rgba(15, 23, 42, .07);
}

.discount-hero[b-d35ldpo947] {
    padding: clamp(22px, 2vw, 30px);
}

.eyebrow[b-d35ldpo947] {
    display: inline-flex;
    padding: 7px 13px;
    border-radius: 999px;
    background: rgba(219, 234, 254, .9);
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 900;
    margin-bottom: 12px;
}

.discount-hero h1[b-d35ldpo947],
.section-title-row h2[b-d35ldpo947] {
    margin: 0;
    color: #0f172a;
    font-weight: 950;
    letter-spacing: -.035em;
}

.discount-hero h1[b-d35ldpo947] {
    font-size: clamp(32px, 3vw, 50px);
    line-height: 1;
}

.discount-hero p[b-d35ldpo947],
.section-title-row p[b-d35ldpo947] {
    margin: 8px 0 0;
    color: #64748b;
    font-size: 14px;
    font-weight: 750;
    line-height: 1.55;
}

.settings-card[b-d35ldpo947] {
    padding: clamp(18px, 1.8vw, 26px);
}

.section-title-row[b-d35ldpo947] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 18px;
}

.setting-chip[b-d35ldpo947] {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 8px 13px;
    border-radius: 999px;
    background: #eff6ff;
    color: #1d4ed8;
    border: 1px solid #bfdbfe;
    font-size: 12px;
    font-weight: 950;
    white-space: nowrap;
}

.settings-grid[b-d35ldpo947] {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) minmax(220px, 300px);
    gap: 14px;
}

    .settings-grid label[b-d35ldpo947] {
        display: grid;
        gap: 7px;
    }

        .settings-grid label span[b-d35ldpo947] {
            color: #64748b;
            font-size: 12px;
            font-weight: 900;
            letter-spacing: .03em;
            text-transform: uppercase;
        }

.wide[b-d35ldpo947] {
    grid-column: 1 / -1;
}

[b-d35ldpo947] .settings-combo,
[b-d35ldpo947] .settings-input,
[b-d35ldpo947] .settings-combo .dxbl-text-edit,
[b-d35ldpo947] .settings-input .dxbl-text-edit,
[b-d35ldpo947] .settings-combo .dxbl-edit,
[b-d35ldpo947] .settings-input .dxbl-edit,
[b-d35ldpo947] .settings-combo .dxbs-editor,
[b-d35ldpo947] .settings-input .dxbs-editor {
    width: 100%;
    border-radius: 14px !important;
}

    [b-d35ldpo947] .settings-combo input,
    [b-d35ldpo947] .settings-input input,
    [b-d35ldpo947] .settings-combo input[readonly],
    [b-d35ldpo947] .settings-input input[readonly],
    [b-d35ldpo947] .settings-combo input.form-control,
    [b-d35ldpo947] .settings-input input.form-control {
        min-height: 42px !important;
        background-color: #ffffff !important;
        color: #0f172a !important;
        -webkit-text-fill-color: #0f172a !important;
        font-weight: 850 !important;
    }


.form-actions[b-d35ldpo947] {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 18px;
}

[b-d35ldpo947] .primary-action.dxbs-button,
[b-d35ldpo947] .secondary-action.dxbs-button {
    border-radius: 999px !important;
    min-height: 42px !important;
    padding-inline: 20px !important;
    font-weight: 900 !important;
}

[b-d35ldpo947] .primary-action.dxbs-button {
    background: #2563eb !important;
    border-color: #2563eb !important;
    color: #ffffff !important;
}

[b-d35ldpo947] .secondary-action.dxbs-button {
    background: #ffffff !important;
    border-color: #e2e8f0 !important;
    color: #334155 !important;
}

.admin-alert[b-d35ldpo947] {
    padding: 13px 16px;
    border-radius: 18px;
    font-size: 13px;
    font-weight: 850;
}

    .admin-alert.success[b-d35ldpo947] {
        border: 1px solid #bbf7d0;
        background: #f0fdf4;
        color: #166534;
    }

    .admin-alert.error[b-d35ldpo947] {
        border: 1px solid #fecaca;
        background: #fff1f2;
        color: #991b1b;
    }

.grid-edit-button[b-d35ldpo947] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: 7px 12px;
    border-radius: 999px;
    border: 1px solid #bfdbfe;
    background: #eff6ff;
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 900;
    cursor: pointer;
}

[b-d35ldpo947] .settings-grid-list {
    border-radius: 18px;
    overflow: hidden;
}

@media (max-width: 900px) {
    .section-title-row[b-d35ldpo947],
    .form-actions[b-d35ldpo947] {
        flex-direction: column;
        align-items: stretch;
    }

    .settings-grid[b-d35ldpo947] {
        grid-template-columns: 1fr;
    }
}


/* =========================================================
   Scholarship settings edit/delete grid actions and modals
   ========================================================= */

.grid-actions[b-d35ldpo947] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
}

.grid-edit-button[b-d35ldpo947],
.grid-delete-button[b-d35ldpo947] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: 7px 12px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
    cursor: pointer;
}

.grid-edit-button[b-d35ldpo947] {
    border: 1px solid #bfdbfe;
    background: #eff6ff;
    color: #1d4ed8;
}

.grid-delete-button[b-d35ldpo947] {
    border: 1px solid #fecaca;
    background: #fff1f2;
    color: #991b1b;
}

.settings-popup[b-d35ldpo947]  .dxbs-modal-content,
.settings-popup[b-d35ldpo947]  .dxbl-popup-content,
.delete-popup[b-d35ldpo947]  .dxbs-modal-content,
.delete-popup[b-d35ldpo947]  .dxbl-popup-content {
    border-radius: 28px !important;
    overflow: hidden !important;
}

.settings-popup-body[b-d35ldpo947] {
    display: grid;
    gap: 18px;
    padding: clamp(20px, 2vw, 28px);
    background: #ffffff;
}

.popup-header[b-d35ldpo947] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
    padding-bottom: 14px;
    border-bottom: 1px solid #e2e8f0;
}

    .popup-header h2[b-d35ldpo947] {
        margin: 8px 0 0;
        color: #0f172a;
        font-size: clamp(24px, 2vw, 34px);
        font-weight: 950;
        letter-spacing: -.035em;
    }

    .popup-header p[b-d35ldpo947] {
        margin: 6px 0 0;
        color: #64748b;
        font-size: 13px;
        font-weight: 800;
        line-height: 1.45;
    }

.popup-chip[b-d35ldpo947] {
    display: inline-flex;
    padding: 7px 12px;
    border-radius: 999px;
    background: #eff6ff;
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 950;
}

.popup-close-button[b-d35ldpo947] {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 999px;
    border: 1px solid #e2e8f0;
    background: #ffffff;
    color: #334155;
    font-size: 24px;
    font-weight: 900;
    cursor: pointer;
}

    .popup-close-button:hover[b-d35ldpo947] {
        background: #f8fafc;
    }

.edit-settings-grid[b-d35ldpo947] {
    grid-template-columns: minmax(260px, 1fr) minmax(220px, 300px);
}

.popup-toggle-row[b-d35ldpo947] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 14px;
    border: 1px solid #e2e8f0;
    border-radius: 18px;
    background: #f8fafc;
}

    .popup-toggle-row label[b-d35ldpo947] {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        color: #0f172a;
        font-size: 13px;
        font-weight: 900;
    }

.delete-popup-body[b-d35ldpo947] {
    display: grid;
    gap: 14px;
    justify-items: center;
    text-align: center;
    padding: 30px;
    background: #ffffff;
}

.delete-icon[b-d35ldpo947] {
    display: grid;
    place-items: center;
    width: 58px;
    height: 58px;
    border-radius: 999px;
    background: #fff1f2;
    border: 1px solid #fecaca;
    color: #991b1b;
    font-size: 30px;
    font-weight: 950;
}

.delete-popup-body h2[b-d35ldpo947] {
    margin: 0;
    color: #0f172a;
    font-size: 26px;
    font-weight: 950;
    letter-spacing: -.03em;
}

.delete-popup-body p[b-d35ldpo947] {
    margin: 0;
    color: #64748b;
    font-size: 14px;
    font-weight: 750;
    line-height: 1.5;
}

.delete-actions[b-d35ldpo947] {
    display: flex;
    justify-content: center;
    gap: 10px;
    width: 100%;
    margin-top: 6px;
}

[b-d35ldpo947] .danger-action.dxbs-button {
    border-radius: 999px !important;
    min-height: 42px !important;
    padding-inline: 20px !important;
    font-weight: 900 !important;
    background: #dc2626 !important;
    border-color: #dc2626 !important;
    color: #ffffff !important;
}

@media (max-width: 760px) {
    .grid-actions[b-d35ldpo947],
    .delete-actions[b-d35ldpo947] {
        display: grid;
        grid-template-columns: 1fr;
    }

    .edit-settings-grid[b-d35ldpo947] {
        grid-template-columns: 1fr;
    }
}

/* =========================================================
   Scholarship settings: OTP and application school year
   Same segmented radio style as Activities admin
   ========================================================= */

.setting-toggle-field[b-d35ldpo947] {
    display: grid;
    gap: 7px;
}

    .setting-toggle-field > span[b-d35ldpo947] {
        color: #64748b;
        font-size: 12px;
        font-weight: 900;
        letter-spacing: .03em;
        text-transform: uppercase;
    }

.setting-choice-group[b-d35ldpo947] {
    display: inline-grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    min-height: 58px;
    padding: 7px;
    border: 1px solid #e2e8f0;
    border-radius: 999px;
    background: #f8fafc;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .9);
}

.setting-choice[b-d35ldpo947] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 44px;
    min-width: 132px;
    border: 0;
    border-radius: 999px;
    padding: 9px 18px;
    background: transparent;
    color: #64748b;
    font-family: inherit;
    line-height: 1;
    cursor: pointer;
    transition: background .18s ease, color .18s ease, box-shadow .18s ease, transform .18s ease;
}

    .setting-choice:hover[b-d35ldpo947] {
        background: rgba(226, 232, 240, .55);
    }

    .setting-choice.selected[b-d35ldpo947] {
        background: #4f63e6;
        color: #ffffff;
        box-shadow: 0 16px 34px rgba(79, 99, 230, .28);
    }

        .setting-choice.selected:hover[b-d35ldpo947] {
            transform: translateY(-1px);
            background: #4f63e6;
        }

.choice-dot[b-d35ldpo947] {
    width: 18px;
    height: 18px;
    flex: 0 0 auto;
    border-radius: 999px;
    border: 2px solid #94a3b8;
    background: #ffffff;
}

.setting-choice.selected .choice-dot[b-d35ldpo947] {
    border-color: #ffffff;
    background: #4f63e6;
    box-shadow: inset 0 0 0 4px #4f63e6, inset 0 0 0 7px #ffffff;
}

.choice-copy[b-d35ldpo947] {
    display: grid;
    gap: 3px;
    text-align: left;
}

    .choice-copy strong[b-d35ldpo947] {
        font-size: 15px;
        font-weight: 950;
        letter-spacing: -.01em;
    }

    .choice-copy small[b-d35ldpo947] {
        font-size: 12px;
        font-weight: 850;
        opacity: .84;
    }

.setting-choice:not(.selected) .choice-copy strong[b-d35ldpo947] {
    color: #334155;
}

.setting-choice:not(.selected) .choice-copy small[b-d35ldpo947] {
    color: #64748b;
}

@media (max-width: 900px) {
    .setting-choice-group[b-d35ldpo947] {
        width: 100%;
    }

    .setting-choice[b-d35ldpo947] {
        width: 100%;
        min-width: 0;
    }
}

@media (max-width: 480px) {
    .setting-choice-group[b-d35ldpo947] {
        grid-template-columns: 1fr;
        border-radius: 24px;
    }

    .setting-choice[b-d35ldpo947] {
        border-radius: 18px;
    }
}
/* _content/Arsakeio_Portal/Components/Pages/AdminSchoolOffDays.razor.rz.scp.css */
.offdays-admin-page[b-6wo3so38la] {
    min-height: 100vh;
    display: grid;
    gap: 18px;
    max-width: 1600px;
    margin: 0 auto;
    padding: clamp(16px, 2.4vw, 34px);
    background: #ffffff;
}

.offdays-hero[b-6wo3so38la],
.offdays-toolbar[b-6wo3so38la],
.offdays-edit-card[b-6wo3so38la],
.offdays-grid-card[b-6wo3so38la] {
    border: 1px solid rgba(226, 232, 240, .88);
    border-radius: 26px;
    background: rgba(255, 255, 255, .94);
    box-shadow: 0 22px 60px rgba(15, 23, 42, .07);
}

.offdays-hero[b-6wo3so38la] {
    padding: clamp(22px, 2vw, 30px);
}

.eyebrow[b-6wo3so38la] {
    display: inline-flex;
    padding: 7px 13px;
    border-radius: 999px;
    background: rgba(219, 234, 254, .9);
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 900;
    margin-bottom: 12px;
}

.offdays-hero h1[b-6wo3so38la],
.section-title-row h2[b-6wo3so38la] {
    margin: 0;
    color: #0f172a;
    font-weight: 950;
    letter-spacing: -.035em;
}

.offdays-hero h1[b-6wo3so38la] {
    font-size: clamp(32px, 3vw, 52px);
    line-height: .98;
}

.offdays-hero p[b-6wo3so38la],
.section-title-row p[b-6wo3so38la] {
    margin: 8px 0 0;
    color: #64748b;
    font-size: 14px;
    font-weight: 750;
    line-height: 1.55;
}

.offdays-toolbar.compact-toolbar[b-6wo3so38la] {
    display: grid;
    grid-template-columns: minmax(260px, 420px);
    gap: 16px;
    align-items: end;
    padding: 18px 20px;
}

.toolbar-field[b-6wo3so38la] {
    display: grid;
    gap: 8px;
    min-width: 0;
}

    .toolbar-field label[b-6wo3so38la],
    .offdays-form-grid label span[b-6wo3so38la] {
        color: #64748b;
        font-size: 12px;
        font-weight: 900;
        letter-spacing: .03em;
        text-transform: uppercase;
    }

.offdays-edit-card[b-6wo3so38la],
.offdays-grid-card[b-6wo3so38la] {
    padding: clamp(18px, 1.6vw, 24px);
}

.section-title-row[b-6wo3so38la] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
    margin-bottom: 18px;
}

.grid-title-row[b-6wo3so38la] {
    align-items: center;
}

.edit-chip[b-6wo3so38la] {
    display: inline-flex;
    min-height: 32px;
    align-items: center;
    padding: 7px 12px;
    border: 1px solid #bfdbfe;
    border-radius: 999px;
    background: #eff6ff;
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 950;
    white-space: nowrap;
}

.offdays-form-grid[b-6wo3so38la] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

    .offdays-form-grid label[b-6wo3so38la] {
        display: grid;
        gap: 7px;
        min-width: 0;
    }

    .offdays-form-grid input[b-6wo3so38la],
    .offdays-form-grid select[b-6wo3so38la] {
        min-height: 42px;
        border: 1px solid #cbd5e1;
        border-radius: 14px;
        padding: 9px 12px;
        background: #ffffff;
        font: inherit;
        color: #0f172a;
        font-weight: 850;
    }

[b-6wo3so38la] .offdays-combo,
[b-6wo3so38la] .offdays-combo .dxbl-text-edit,
[b-6wo3so38la] .offdays-combo .dxbl-edit,
[b-6wo3so38la] .offdays-combo .dxbs-editor,
[b-6wo3so38la] .offdays-combo .dxbs-editor-container {
    width: 100%;
    border-radius: 14px !important;
}

    [b-6wo3so38la] .offdays-combo input,
    [b-6wo3so38la] .offdays-combo input[readonly],
    [b-6wo3so38la] .offdays-combo input[role="combobox"],
    [b-6wo3so38la] .offdays-combo input.dxbl-text-edit-input,
    [b-6wo3so38la] .offdays-combo input.form-control {
        min-height: 42px !important;
        background-color: #ffffff !important;
        color: #0f172a !important;
        -webkit-text-fill-color: #0f172a !important;
        font-weight: 850 !important;
        cursor: pointer !important;
    }

[b-6wo3so38la] .dxbl-listbox-item-selected,
[b-6wo3so38la] .dxbl-listbox-item[aria-selected="true"],
[b-6wo3so38la] .dropdown-item.active {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.wide[b-6wo3so38la] {
    grid-column: 1 / -1;
}

.checks[b-6wo3so38la] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    padding-top: 2px;
}

    .checks label[b-6wo3so38la] {
        display: flex;
        align-items: center;
        gap: 8px;
        min-height: 38px;
        padding: 8px 12px;
        border: 1px solid #e2e8f0;
        border-radius: 999px;
        background: #f8fafc;
        color: #334155;
        font-size: 12px;
        font-weight: 900;
    }

    .checks input[b-6wo3so38la] {
        min-height: auto;
    }

.form-actions[b-6wo3so38la],
.delete-actions[b-6wo3so38la] {
    display: flex;
    gap: 10px;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
}

.form-actions[b-6wo3so38la] {
    margin-top: 18px;
}

.primary-button[b-6wo3so38la],
.secondary-button[b-6wo3so38la],
.danger-button[b-6wo3so38la],
.grid-edit-button[b-6wo3so38la],
.grid-delete-button[b-6wo3so38la] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 10px 16px;
    border-radius: 999px;
    font-family: inherit;
    font-size: 13px;
    font-weight: 900;
    line-height: 1;
    cursor: pointer;
    transition: transform .16s ease, border-color .16s ease, background-color .16s ease, box-shadow .16s ease;
}

.primary-button[b-6wo3so38la] {
    border: 1px solid #2563eb;
    background: #2563eb;
    color: #ffffff;
    box-shadow: 0 14px 28px rgba(37, 99, 235, .20);
}

.secondary-button[b-6wo3so38la] {
    border: 1px solid rgba(226, 232, 240, .95);
    background: #ffffff;
    color: #334155;
}

.danger-button[b-6wo3so38la] {
    border: 1px solid #dc2626;
    background: #dc2626;
    color: #ffffff;
}

    .primary-button:hover:not(:disabled)[b-6wo3so38la],
    .secondary-button:hover:not(:disabled)[b-6wo3so38la],
    .danger-button:hover:not(:disabled)[b-6wo3so38la],
    .grid-edit-button:hover:not(:disabled)[b-6wo3so38la],
    .grid-delete-button:hover:not(:disabled)[b-6wo3so38la] {
        transform: translateY(-1px);
    }

    .primary-button:disabled[b-6wo3so38la],
    .secondary-button:disabled[b-6wo3so38la],
    .danger-button:disabled[b-6wo3so38la] {
        opacity: .58;
        cursor: not-allowed;
        box-shadow: none;
    }

.offdays-message[b-6wo3so38la] {
    padding: 13px 16px;
    border-radius: 18px;
    font-size: 13px;
    font-weight: 850;
}

    .offdays-message.info[b-6wo3so38la] {
        border: 1px solid #bfdbfe;
        background: #eff6ff;
        color: #1d4ed8;
    }

    .offdays-message.success[b-6wo3so38la] {
        border: 1px solid #bbf7d0;
        background: #f0fdf4;
        color: #166534;
    }

    .offdays-message.error[b-6wo3so38la] {
        border: 1px solid #fecaca;
        background: #fff1f2;
        color: #991b1b;
    }

[b-6wo3so38la] .offdays-grid {
    border-radius: 20px;
    overflow: hidden;
}

.grid-title-cell[b-6wo3so38la] {
    display: grid;
    gap: 4px;
}

    .grid-title-cell strong[b-6wo3so38la] {
        color: #0f172a;
        font-size: 13px;
        font-weight: 950;
    }

    .grid-title-cell span[b-6wo3so38la] {
        color: #64748b;
        font-size: 12px;
        font-weight: 750;
    }

.date-pill[b-6wo3so38la],
.school-unit-pill[b-6wo3so38la],
.type-pill[b-6wo3so38la],
.affects-pill[b-6wo3so38la],
.status-pill[b-6wo3so38la] {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 6px 10px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 950;
    white-space: nowrap;
}

.date-pill[b-6wo3so38la] {
    background: #f8fafc;
    color: #334155;
    border: 1px solid #e2e8f0;
}

.school-unit-pill.all[b-6wo3so38la] {
    background: #eff6ff;
    color: #1d4ed8;
    border: 1px solid #bfdbfe;
}

.school-unit-pill.specific[b-6wo3so38la] {
    background: #f0fdf4;
    color: #166534;
    border: 1px solid #bbf7d0;
}

.type-pill[b-6wo3so38la] {
    background: #f5f3ff;
    color: #5b21b6;
    border: 1px solid #ddd6fe;
}

.affects-list[b-6wo3so38la] {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}

.affects-pill.on[b-6wo3so38la] {
    background: #dcfce7;
    color: #166534;
    border: 1px solid #bbf7d0;
}

.affects-pill.off[b-6wo3so38la] {
    background: #f1f5f9;
    color: #64748b;
    border: 1px solid #e2e8f0;
    opacity: .72;
}

.status-pill.active[b-6wo3so38la] {
    background: #dcfce7;
    color: #166534;
    border: 1px solid #bbf7d0;
}

.status-pill.inactive[b-6wo3so38la] {
    background: #fff1f2;
    color: #991b1b;
    border: 1px solid #fecaca;
}

.grid-actions[b-6wo3so38la] {
    display: flex;
    gap: 8px;
    align-items: center;
    justify-content: flex-end;
}

.grid-edit-button[b-6wo3so38la] {
    border: 1px solid #bfdbfe;
    background: #eff6ff;
    color: #1d4ed8;
}

.grid-delete-button[b-6wo3so38la] {
    border: 1px solid #fecaca;
    background: #fff1f2;
    color: #991b1b;
}

.delete-popup[b-6wo3so38la]  .dxbs-modal-content {
    border-radius: 24px !important;
    overflow: hidden !important;
}

.delete-popup-content[b-6wo3so38la] {
    display: grid;
    gap: 14px;
    justify-items: center;
    text-align: center;
    padding: 30px;
}

.delete-icon[b-6wo3so38la] {
    display: grid;
    place-items: center;
    width: 62px;
    height: 62px;
    border-radius: 999px;
    background: #fff1f2;
    color: #991b1b;
    font-size: 32px;
    font-weight: 950;
}

.delete-popup-content h2[b-6wo3so38la] {
    margin: 0;
    color: #0f172a;
    font-size: 24px;
    font-weight: 950;
}

.delete-popup-content p[b-6wo3so38la] {
    margin: 0;
    color: #64748b;
    line-height: 1.5;
}

.delete-actions[b-6wo3so38la] {
    width: 100%;
    margin-top: 4px;
}

@media (max-width: 1200px) {
    .offdays-form-grid[b-6wo3so38la] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .offdays-admin-page[b-6wo3so38la] {
        padding: 14px 10px 44px;
    }

    .offdays-hero[b-6wo3so38la],
    .offdays-toolbar[b-6wo3so38la],
    .offdays-edit-card[b-6wo3so38la],
    .offdays-grid-card[b-6wo3so38la] {
        border-radius: 22px;
    }

    .section-title-row[b-6wo3so38la],
    .grid-title-row[b-6wo3so38la] {
        flex-direction: column;
        align-items: stretch;
    }

    .form-actions[b-6wo3so38la],
    .delete-actions[b-6wo3so38la] {
        display: grid;
        grid-template-columns: 1fr;
    }

    .offdays-form-grid[b-6wo3so38la] {
        grid-template-columns: 1fr;
    }

    .checks[b-6wo3so38la] {
        display: grid;
        grid-template-columns: 1fr;
    }

    .grid-actions[b-6wo3so38la] {
        justify-content: stretch;
    }

    .grid-edit-button[b-6wo3so38la],
    .grid-delete-button[b-6wo3so38la] {
        flex: 1;
    }
}


.area-pill[b-6wo3so38la] {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 6px 10px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 950;
    white-space: nowrap;
    background: #eef2ff;
    color: #3730a3;
    border: 1px solid #c7d2fe;
}

    .area-pill.all[b-6wo3so38la] {
        background: #eff6ff;
        color: #1d4ed8;
        border: 1px solid #bfdbfe;
    }


/* =========================================================
   Always-visible create form + popup edit mode
   ========================================================= */

.offdays-hero[b-6wo3so38la] {
    min-height: unset !important;
}

.offdays-toolbar.compact-toolbar[b-6wo3so38la] {
    min-height: unset !important;
}

.offday-edit-popup[b-6wo3so38la]  .dxbs-modal-content,
.offday-edit-popup[b-6wo3so38la]  .dxbl-popup-content {
    border-radius: 28px !important;
    overflow: hidden !important;
}

.edit-popup-content[b-6wo3so38la] {
    display: grid;
    gap: 18px;
    padding: clamp(20px, 2vw, 28px);
    background: #ffffff;
}

.edit-popup-header[b-6wo3so38la] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding-bottom: 12px;
    border-bottom: 1px solid #e2e8f0;
}

    .edit-popup-header h2[b-6wo3so38la] {
        margin: 8px 0 0;
        color: #0f172a;
        font-size: clamp(24px, 2vw, 34px);
        font-weight: 950;
        letter-spacing: -.035em;
    }

    .edit-popup-header p[b-6wo3so38la] {
        margin: 6px 0 0;
        color: #64748b;
        font-size: 13px;
        font-weight: 800;
    }

.popup-close-button[b-6wo3so38la] {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 999px;
    border: 1px solid #e2e8f0;
    background: #ffffff;
    color: #334155;
    font-size: 24px;
    font-weight: 900;
    line-height: 1;
    cursor: pointer;
}

    .popup-close-button:hover[b-6wo3so38la] {
        background: #f8fafc;
    }

@media (max-width: 760px) {
    .edit-popup-header[b-6wo3so38la] {
        align-items: stretch;
    }
}


/* =========================================================
   Greek date editor formatting
   ========================================================= */

[b-6wo3so38la] .offdays-date-edit,
[b-6wo3so38la] .offdays-date-edit .dxbl-text-edit,
[b-6wo3so38la] .offdays-date-edit .dxbl-edit,
[b-6wo3so38la] .offdays-date-edit .dxbs-editor,
[b-6wo3so38la] .offdays-date-edit .dxbs-editor-container {
    width: 100%;
    border-radius: 14px !important;
}

    [b-6wo3so38la] .offdays-date-edit input,
    [b-6wo3so38la] .offdays-date-edit input[readonly],
    [b-6wo3so38la] .offdays-date-edit input.dxbl-text-edit-input,
    [b-6wo3so38la] .offdays-date-edit input.form-control {
        min-height: 42px !important;
        background-color: #ffffff !important;
        color: #0f172a !important;
        -webkit-text-fill-color: #0f172a !important;
        font-weight: 850 !important;
    }


/* =========================================================
   1920x1080 desktop compact optimization
   Keeps the same UI, but removes the oversized spacing.
   ========================================================= */

.offdays-admin-page[b-6wo3so38la] {
    min-height: unset !important;
    width: 100%;
    max-width: 1520px !important;
    padding: clamp(10px, 1.1vw, 18px) clamp(12px, 1.2vw, 22px) 26px !important;
    gap: 12px !important;
    box-sizing: border-box;
    overflow-x: hidden;
}

.offdays-hero[b-6wo3so38la],
.offdays-toolbar[b-6wo3so38la],
.offdays-edit-card[b-6wo3so38la],
.offdays-grid-card[b-6wo3so38la] {
    border-radius: 20px !important;
    box-shadow: 0 10px 30px rgba(15, 23, 42, .055) !important;
}

.offdays-hero[b-6wo3so38la] {
    padding: clamp(16px, 1.25vw, 22px) clamp(18px, 1.5vw, 28px) !important;
}

.eyebrow[b-6wo3so38la] {
    padding: 5px 10px !important;
    font-size: 11px !important;
    margin-bottom: 8px !important;
}

.offdays-hero h1[b-6wo3so38la] {
    font-size: clamp(30px, 2.1vw, 42px) !important;
    line-height: 1 !important;
}

.offdays-hero p[b-6wo3so38la],
.section-title-row p[b-6wo3so38la] {
    margin-top: 5px !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
}

.offdays-toolbar.compact-toolbar[b-6wo3so38la] {
    grid-template-columns: minmax(240px, 360px) !important;
    padding: 12px 18px !important;
}

.offdays-edit-card[b-6wo3so38la],
.offdays-grid-card[b-6wo3so38la] {
    padding: 16px 18px !important;
}

.section-title-row[b-6wo3so38la] {
    margin-bottom: 12px !important;
    gap: 14px !important;
}

    .section-title-row h2[b-6wo3so38la] {
        font-size: clamp(22px, 1.55vw, 30px) !important;
        line-height: 1.05 !important;
    }

.offdays-form-grid[b-6wo3so38la] {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 10px 14px !important;
}

    .offdays-form-grid > label.wide[b-6wo3so38la] {
        grid-column: span 2 !important;
    }

    .offdays-form-grid > .checks.wide[b-6wo3so38la] {
        grid-column: 1 / -1 !important;
    }

    .toolbar-field label[b-6wo3so38la],
    .offdays-form-grid label span[b-6wo3so38la] {
        font-size: 11px !important;
        letter-spacing: .025em !important;
    }

    .offdays-form-grid label[b-6wo3so38la] {
        gap: 5px !important;
    }

    .offdays-form-grid input[b-6wo3so38la],
    .offdays-form-grid select[b-6wo3so38la] {
        min-height: 38px !important;
        border-radius: 12px !important;
        padding: 7px 11px !important;
        font-size: 13px !important;
    }

[b-6wo3so38la] .offdays-combo input,
[b-6wo3so38la] .offdays-combo input[readonly],
[b-6wo3so38la] .offdays-combo input[role="combobox"],
[b-6wo3so38la] .offdays-combo input.dxbl-text-edit-input,
[b-6wo3so38la] .offdays-combo input.form-control,
[b-6wo3so38la] .offdays-date-edit input,
[b-6wo3so38la] .offdays-date-edit input[readonly],
[b-6wo3so38la] .offdays-date-edit input.dxbl-text-edit-input,
[b-6wo3so38la] .offdays-date-edit input.form-control {
    min-height: 38px !important;
    font-size: 13px !important;
}

.checks[b-6wo3so38la] {
    gap: 8px !important;
    padding-top: 0 !important;
}

    .checks label[b-6wo3so38la] {
        min-height: 32px !important;
        padding: 6px 10px !important;
        font-size: 11px !important;
    }

.form-actions[b-6wo3so38la] {
    margin-top: 12px !important;
}

.primary-button[b-6wo3so38la],
.secondary-button[b-6wo3so38la],
.danger-button[b-6wo3so38la],
.grid-edit-button[b-6wo3so38la],
.grid-delete-button[b-6wo3so38la] {
    min-height: 36px !important;
    padding: 8px 14px !important;
    font-size: 12px !important;
}

.offdays-message[b-6wo3so38la] {
    padding: 10px 14px !important;
    border-radius: 14px !important;
    font-size: 12px !important;
}

.offdays-grid-card[b-6wo3so38la] {
    overflow-x: auto;
}

[b-6wo3so38la] .offdays-grid {
    border-radius: 16px !important;
    min-width: 1060px;
}

    [b-6wo3so38la] .offdays-grid table {
        font-size: 12px;
    }

    [b-6wo3so38la] .offdays-grid th,
    [b-6wo3so38la] .offdays-grid td {
        padding-top: 7px !important;
        padding-bottom: 7px !important;
    }

.grid-title-cell[b-6wo3so38la] {
    gap: 2px !important;
}

    .grid-title-cell strong[b-6wo3so38la] {
        font-size: 12px !important;
    }

    .grid-title-cell span[b-6wo3so38la] {
        font-size: 11px !important;
    }

.date-pill[b-6wo3so38la],
.school-unit-pill[b-6wo3so38la],
.type-pill[b-6wo3so38la],
.area-pill[b-6wo3so38la],
.affects-pill[b-6wo3so38la],
.status-pill[b-6wo3so38la] {
    min-height: 24px !important;
    padding: 4px 8px !important;
    font-size: 10.5px !important;
}

.affects-list[b-6wo3so38la] {
    gap: 5px !important;
}

.grid-actions[b-6wo3so38la] {
    gap: 6px !important;
}

/* 1920x1080 and similar laptop/desktop screens */
@media (min-width: 1281px) and (max-height: 1120px) {
    .offdays-admin-page[b-6wo3so38la] {
        max-width: 1480px !important;
        gap: 10px !important;
        padding-top: 10px !important;
    }

    .offdays-hero[b-6wo3so38la] {
        padding-top: 14px !important;
        padding-bottom: 14px !important;
    }

    .offdays-toolbar.compact-toolbar[b-6wo3so38la] {
        padding-top: 10px !important;
        padding-bottom: 10px !important;
    }

    .offdays-edit-card[b-6wo3so38la],
    .offdays-grid-card[b-6wo3so38la] {
        padding-top: 14px !important;
        padding-bottom: 14px !important;
    }
}

@media (max-width: 1360px) {
    .offdays-form-grid[b-6wo3so38la] {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

        .offdays-form-grid > label.wide[b-6wo3so38la] {
            grid-column: 1 / -1 !important;
        }
}

@media (max-width: 1200px) {
    .offdays-form-grid[b-6wo3so38la] {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 760px) {
    .offdays-admin-page[b-6wo3so38la] {
        padding: 12px 10px 36px !important;
        gap: 12px !important;
    }

    .offdays-hero h1[b-6wo3so38la] {
        font-size: 28px !important;
    }

    .offdays-form-grid[b-6wo3so38la] {
        grid-template-columns: 1fr !important;
    }

        .offdays-form-grid > label.wide[b-6wo3so38la],
        .offdays-form-grid > .checks.wide[b-6wo3so38la] {
            grid-column: 1 / -1 !important;
        }

    [b-6wo3so38la] .offdays-grid {
        min-width: 920px;
    }
}


/* =========================================================
   Compact resizable DxGrid + column chooser button
   ========================================================= */

.grid-toolbar-actions[b-6wo3so38la] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
}

.grid-toolbar-button[b-6wo3so38la] {
    min-height: 34px;
    padding: 8px 13px;
    font-size: 12px;
}

[b-6wo3so38la] .offdays-grid {
    font-size: 12px;
}

    [b-6wo3so38la] .offdays-grid .dxbl-grid-table,
    [b-6wo3so38la] .offdays-grid table {
        table-layout: fixed;
    }

    [b-6wo3so38la] .offdays-grid .dxbl-grid-header-cell,
    [b-6wo3so38la] .offdays-grid th {
        padding: 7px 8px !important;
        font-size: 11px !important;
        font-weight: 900 !important;
        letter-spacing: .025em;
        color: #475569 !important;
        text-transform: uppercase;
    }

    [b-6wo3so38la] .offdays-grid .dxbl-grid-data-cell,
    [b-6wo3so38la] .offdays-grid td {
        padding: 7px 8px !important;
        vertical-align: middle !important;
    }

.grid-title-cell strong[b-6wo3so38la] {
    font-size: 12px;
    line-height: 1.2;
}

.grid-title-cell span[b-6wo3so38la] {
    font-size: 11px;
    line-height: 1.25;
}

.date-pill[b-6wo3so38la],
.area-pill[b-6wo3so38la],
.school-unit-pill[b-6wo3so38la],
.type-pill[b-6wo3so38la],
.affects-pill[b-6wo3so38la],
.status-pill[b-6wo3so38la] {
    min-height: 25px;
    padding: 4px 8px;
    font-size: 10px;
    line-height: 1.1;
}

.affects-list[b-6wo3so38la] {
    gap: 4px;
}

.grid-actions[b-6wo3so38la] {
    gap: 5px;
}

.grid-edit-button[b-6wo3so38la],
.grid-delete-button[b-6wo3so38la] {
    min-height: 31px;
    padding: 7px 10px;
    font-size: 11px;
}

[b-6wo3so38la] .offdays-grid .dxbl-grid-search-box,
[b-6wo3so38la] .offdays-grid .dxbl-search-box,
[b-6wo3so38la] .offdays-grid input[type="search"] {
    min-height: 32px !important;
    font-size: 12px !important;
}

[b-6wo3so38la] .offdays-grid .dxbl-grid-column-resize-anchor,
[b-6wo3so38la] .offdays-grid .dxbl-grid-column-resize-handle {
    cursor: col-resize !important;
}

@media (max-width: 760px) {
    .grid-toolbar-actions[b-6wo3so38la] {
        justify-content: stretch;
    }

    .grid-toolbar-button[b-6wo3so38la] {
        width: 100%;
    }
}


/* =========================================================
   Full-width no-horizontal-scroll grid
   ========================================================= */

/*
   Use proportional column widths and NextColumn resizing.
   The grid now fills the card instead of keeping a fixed pixel-width table.
*/

[b-6wo3so38la] .offdays-grid,
[b-6wo3so38la] .offdays-grid .dxbl-grid,
[b-6wo3so38la] .offdays-grid .dxbl-grid-table,
[b-6wo3so38la] .offdays-grid table {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
}

[b-6wo3so38la] .offdays-grid {
    overflow-x: hidden !important;
}

    [b-6wo3so38la] .offdays-grid .dxbl-grid-table,
    [b-6wo3so38la] .offdays-grid table {
        table-layout: fixed !important;
    }

    [b-6wo3so38la] .offdays-grid .dxbl-grid-data-cell,
    [b-6wo3so38la] .offdays-grid .dxbl-grid-header-cell,
    [b-6wo3so38la] .offdays-grid td,
    [b-6wo3so38la] .offdays-grid th {
        white-space: normal !important;
        overflow-wrap: anywhere !important;
        word-break: normal !important;
    }

.grid-title-cell[b-6wo3so38la],
.affects-list[b-6wo3so38la],
.grid-actions[b-6wo3so38la] {
    min-width: 0;
}

    .grid-title-cell strong[b-6wo3so38la],
    .grid-title-cell span[b-6wo3so38la] {
        display: block;
        max-width: 100%;
        overflow-wrap: anywhere;
    }

.date-pill[b-6wo3so38la],
.area-pill[b-6wo3so38la],
.school-unit-pill[b-6wo3so38la],
.type-pill[b-6wo3so38la],
.affects-pill[b-6wo3so38la],
.status-pill[b-6wo3so38la] {
    max-width: 100%;
    white-space: normal;
    text-align: center;
}

.affects-list[b-6wo3so38la] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}

.grid-actions[b-6wo3so38la] {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 5px;
}

.grid-edit-button[b-6wo3so38la],
.grid-delete-button[b-6wo3so38la] {
    flex: 1 1 48px;
    min-width: 48px;
    padding-left: 8px;
    padding-right: 8px;
}

/* Override the earlier 1080p mobile/tablet min-width rule that forced horizontal scrolling. */
@media (max-width: 1500px) {
    [b-6wo3so38la] .offdays-grid {
        min-width: 0 !important;
    }
}

@media (max-width: 900px) {
    [b-6wo3so38la] .offdays-grid {
        overflow-x: auto !important;
    }

        [b-6wo3so38la] .offdays-grid,
        [b-6wo3so38la] .offdays-grid .dxbl-grid,
        [b-6wo3so38la] .offdays-grid .dxbl-grid-table,
        [b-6wo3so38la] .offdays-grid table {
            min-width: 760px !important;
        }
}
/* _content/Arsakeio_Portal/Components/Pages/CandidateSubmissionAdminSettingsPage.razor.rz.scp.css */
.prca-admin-page[b-us7p8l0tbp] {
    width: 100%;
    min-height: 100vh;
    padding: 40px 32px 80px;
    background: #ffffff;
}

.admin-shell[b-us7p8l0tbp] {
    width: 100%;
    max-width: none;
    margin: 0;
}

.admin-header[b-us7p8l0tbp] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    width: 100%;
    margin-bottom: 22px;
    padding: 30px;
    border-radius: 28px;
    background: rgba(255,255,255,.76);
    backdrop-filter: blur(18px);
    border: 1px solid rgba(255,255,255,.85);
    box-shadow: 0 24px 70px rgba(15,23,42,.08);
}

.eyebrow[b-us7p8l0tbp] {
    display: inline-flex;
    padding: 7px 13px;
    border-radius: 999px;
    background: rgba(219,234,254,.9);
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 900;
    margin-bottom: 12px;
}

.admin-header h1[b-us7p8l0tbp] {
    margin: 0;
    font-size: clamp(32px, 4vw, 52px);
    font-weight: 950;
    letter-spacing: -.05em;
    color: #0f172a;
}

.admin-header p[b-us7p8l0tbp] {
    margin: 10px 0 0;
    color: #64748b;
    font-size: 16px;
}

[b-us7p8l0tbp] .save-main.dxbs-button {
    border-radius: 999px !important;
    padding: 13px 28px !important;
    font-weight: 900 !important;
    background: #2563eb !important;
    border-color: #2563eb !important;
    box-shadow: 0 16px 34px rgba(37,99,235,.25);
}

.admin-alert[b-us7p8l0tbp] {
    margin-bottom: 16px;
    padding: 14px 18px;
    border-radius: 16px;
    font-weight: 800;
}

    .admin-alert.success[b-us7p8l0tbp] {
        background: #dcfce7;
        color: #166534;
    }

    .admin-alert.error[b-us7p8l0tbp] {
        background: #fee2e2;
        color: #991b1b;
    }

.year-card[b-us7p8l0tbp] {
    display: grid;
    grid-template-columns: 220px minmax(0, 1fr);
    gap: 16px;
    align-items: center;
    width: 100%;
    margin-bottom: 22px;
    padding: 20px;
    border-radius: 22px;
    background: rgba(255,255,255,.8);
    backdrop-filter: blur(16px);
    border: 1px solid rgba(226,232,240,.9);
    box-shadow: 0 16px 44px rgba(15,23,42,.06);
}

    .year-card label[b-us7p8l0tbp] {
        font-weight: 900;
        color: #334155;
    }

[b-us7p8l0tbp] .year-card .dxbs-editor,
[b-us7p8l0tbp] .year-card .dxbs-combobox,
[b-us7p8l0tbp] .year-card .dxbs-editor-container {
    width: 100%;
}

[b-us7p8l0tbp] .admin-tabs .dxbs-tabs {
    border: 0;
}

[b-us7p8l0tbp] .admin-tabs .nav-tabs {
    border: 1px solid rgba(226,232,240,.9) !important;
    gap: 10px;
    margin: 0 0 34px !important;
    padding: 12px 14px !important;
    border-radius: 22px !important;
    background: rgba(255,255,255,.78) !important;
    backdrop-filter: blur(16px);
    box-shadow: 0 16px 44px rgba(15,23,42,.06);
    overflow-x: auto;
    flex-wrap: nowrap !important;
}

[b-us7p8l0tbp] .admin-tabs .tab-content {
    padding-top: 0 !important;
}

[b-us7p8l0tbp] .admin-tabs .nav-tabs .nav-link {
    border: 1px solid transparent !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: #64748b !important;
    font-weight: 900 !important;
    padding: 10px 16px !important;
    white-space: nowrap;
}

    [b-us7p8l0tbp] .admin-tabs .nav-tabs .nav-link:hover {
        background: rgba(241,245,249,.9) !important;
        color: #0f172a !important;
    }

    [b-us7p8l0tbp] .admin-tabs .nav-tabs .nav-link.active {
        background: #2563eb !important;
        color: #fff !important;
        border-color: #2563eb !important;
        box-shadow: 0 12px 26px rgba(37,99,235,.22);
    }

.tab-panel[b-us7p8l0tbp] {
    width: 100%;
    padding: 26px;
    border-radius: 26px;
    background: rgba(255,255,255,.82);
    backdrop-filter: blur(18px);
    border: 1px solid rgba(226,232,240,.9);
    box-shadow: 0 22px 60px rgba(15,23,42,.07);
    overflow-x: auto;
}

.panel-head[b-us7p8l0tbp] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
    margin-bottom: 22px;
}

    .panel-head h2[b-us7p8l0tbp] {
        margin: 0;
        font-size: 24px;
        font-weight: 950;
        color: #0f172a;
    }

    .panel-head p[b-us7p8l0tbp] {
        margin: 7px 0 0;
        color: #64748b;
    }

.field-grid[b-us7p8l0tbp] {
    display: grid;
    grid-template-columns: minmax(220px, 1fr) 120px 140px;
    gap: 16px;
    align-items: center;
    padding: 13px 18px;
    border-bottom: 1px solid rgba(226,232,240,.65);
}

    .field-grid:last-child[b-us7p8l0tbp] {
        border-bottom: 0;
    }

.field-grid-head[b-us7p8l0tbp] {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: #64748b;
    font-weight: 950;
    background: rgba(248,250,252,.72);
}

.field-label[b-us7p8l0tbp] {
    font-weight: 850;
    color: #0f172a;
}

.field-key[b-us7p8l0tbp] {
    margin-top: 3px;
    color: #94a3b8;
    font-size: 12px;
    font-family: ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;
}

.settings-step-accordion[b-us7p8l0tbp] {
    display: grid;
    gap: 14px;
    min-width: 680px;
}

.settings-step-box[b-us7p8l0tbp] {
    border: 1px solid rgba(226,232,240,.95);
    border-radius: 18px;
    background: #fff;
    overflow: hidden;
}

    .settings-step-box summary[b-us7p8l0tbp] {
        cursor: pointer;
        padding: 18px 20px;
        font-weight: 900;
        color: #111827;
        background: #f8fafc;
        list-style: none;
    }

        .settings-step-box summary[b-us7p8l0tbp]::-webkit-details-marker {
            display: none;
        }

        .settings-step-box summary[b-us7p8l0tbp]::after {
            content: "⌄";
            float: right;
            color: #64748b;
            font-size: 18px;
        }

    .settings-step-box[open] summary[b-us7p8l0tbp]::after {
        content: "⌃";
    }

.year-list[b-us7p8l0tbp] {
    display: grid;
    gap: 10px;
}

.year-row[b-us7p8l0tbp] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 18px;
    padding: 16px 18px;
    border-radius: 18px;
    background: rgba(255,255,255,.88);
    border: 1px solid rgba(226,232,240,.9);
}

    .year-row strong[b-us7p8l0tbp] {
        display: block;
        color: #0f172a;
        font-size: 16px;
    }

    .year-row span[b-us7p8l0tbp] {
        display: block;
        margin-top: 3px;
        color: #94a3b8;
        font-size: 13px;
    }

.template-top-layout[b-us7p8l0tbp] {
    display: grid;
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 28px;
    align-items: start;
    width: 100%;
    max-width: 100%;
    margin-bottom: 24px;
}

.template-list[b-us7p8l0tbp] {
    display: grid;
    gap: 12px;
    position: sticky;
    top: 18px;
}

.template-item[b-us7p8l0tbp] {
    width: 100%;
    border: 1px solid rgba(226,232,240,.9);
    background: rgba(255,255,255,.9);
    border-radius: 18px;
    padding: 16px 18px;
    text-align: left;
    cursor: pointer;
    transition: .18s ease;
}

    .template-item:hover[b-us7p8l0tbp] {
        transform: translateY(-2px);
        box-shadow: 0 16px 28px rgba(15,23,42,.08);
    }

    .template-item.active[b-us7p8l0tbp] {
        border-color: #2563eb;
        box-shadow: 0 0 0 4px rgba(37,99,235,.12);
    }

    .template-item strong[b-us7p8l0tbp] {
        display: block;
        color: #0f172a;
        font-weight: 950;
        font-size: 16px;
    }

    .template-item span[b-us7p8l0tbp] {
        display: block;
        margin-top: 5px;
        color: #64748b;
        font-size: 13px;
    }

.template-meta-editor[b-us7p8l0tbp] {
    min-width: 0;
    width: 100%;
    display: grid;
    gap: 18px;
}

.template-body-editor[b-us7p8l0tbp] {
    width: 100%;
    max-width: 100%;
    overflow: hidden;
    display: grid;
    gap: 6px;
    margin-top: 8px;
}

    .template-body-editor label[b-us7p8l0tbp],
    .template-editor label[b-us7p8l0tbp],
    .setting-card label[b-us7p8l0tbp] {
        display: block;
        margin-bottom: 8px;
        font-size: 13px;
        font-weight: 900;
        color: #334155;
    }

    .template-body-editor > div[b-us7p8l0tbp] {
        width: 100%;
        max-width: 100%;
        overflow: hidden;
    }

.editor-grid[b-us7p8l0tbp] {
    display: grid;
    grid-template-columns: minmax(0,1fr) 160px;
    gap: 16px;
    width: 100%;
}

.token-box[b-us7p8l0tbp] {
    padding: 18px;
    border-radius: 22px;
    background: rgba(248,250,252,.95);
    border: 1px solid rgba(226,232,240,.9);
}

.token-title[b-us7p8l0tbp] {
    font-weight: 950;
    color: #0f172a;
    margin-bottom: 14px;
    font-size: 15px;
}

.token-list[b-us7p8l0tbp] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.token-chip[b-us7p8l0tbp] {
    display: inline-flex;
    align-items: center;
    padding: 7px 12px;
    border-radius: 999px;
    background: #eef2ff;
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 900;
    line-height: 1;
    font-family: ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;
}

.inline-check[b-us7p8l0tbp] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 6px;
    font-weight: 850;
    color: #334155;
}

.settings-grid[b-us7p8l0tbp] {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 14px;
}

.setting-card[b-us7p8l0tbp] {
    display: grid;
    gap: 8px;
    padding: 16px;
    border-radius: 18px;
    background: rgba(255,255,255,.88);
    border: 1px solid rgba(226,232,240,.9);
}

    .setting-card small[b-us7p8l0tbp] {
        color: #94a3b8;
        line-height: 1.35;
    }

[b-us7p8l0tbp] .dxbs-editor-input,
[b-us7p8l0tbp] input.form-control,
[b-us7p8l0tbp] textarea.form-control {
    border-radius: 12px !important;
    border-color: #dbe2ea !important;
    min-height: 42px;
    background: rgba(255,255,255,.95) !important;
}

    [b-us7p8l0tbp] .dxbs-editor-input:focus,
    [b-us7p8l0tbp] input.form-control:focus,
    [b-us7p8l0tbp] textarea.form-control:focus {
        border-color: #2563eb !important;
        box-shadow: 0 0 0 4px rgba(37,99,235,.14) !important;
    }

html[b-us7p8l0tbp],
body[b-us7p8l0tbp] {
    background: #ffffff !important;
}

@media (max-width: 980px) {
    .prca-admin-page[b-us7p8l0tbp] {
        padding: 24px 16px 60px;
    }

    .admin-header[b-us7p8l0tbp] {
        flex-direction: column;
        align-items: stretch;
        padding: 24px;
    }

    .year-card[b-us7p8l0tbp] {
        grid-template-columns: 1fr;
    }

    .template-top-layout[b-us7p8l0tbp] {
        grid-template-columns: 1fr;
    }

    .template-list[b-us7p8l0tbp] {
        position: static;
    }

    .editor-grid[b-us7p8l0tbp],
    .settings-grid[b-us7p8l0tbp] {
        grid-template-columns: 1fr;
    }

    .panel-head[b-us7p8l0tbp] {
        flex-direction: column;
    }
}

@media (max-width: 640px) {
    .prca-admin-page[b-us7p8l0tbp] {
        padding: 18px 10px 50px;
    }

    .admin-header[b-us7p8l0tbp] {
        padding: 22px 18px;
        border-radius: 22px;
    }

    .tab-panel[b-us7p8l0tbp] {
        padding: 16px;
        border-radius: 20px;
    }

    .field-grid[b-us7p8l0tbp] {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .field-grid-head[b-us7p8l0tbp] {
        display: none;
    }

    .settings-step-accordion[b-us7p8l0tbp] {
        min-width: 0;
    }

    [b-us7p8l0tbp] .admin-tabs .nav-tabs {
        border-radius: 18px !important;
        overflow-x: auto;
        flex-wrap: nowrap !important;
    }

        [b-us7p8l0tbp] .admin-tabs .nav-tabs .nav-link {
            white-space: nowrap;
        }
}

/* tokens */
.token-help[b-us7p8l0tbp] {
    margin: -6px 0 14px;
    color: #64748b;
    font-size: 13px;
}

.token-chip[b-us7p8l0tbp] {
    cursor: grab;
    user-select: none;
}

    .token-chip:active[b-us7p8l0tbp] {
        cursor: pointer;
    }

.info-token-box[b-us7p8l0tbp] {
    margin-bottom: 18px;
}

.token-list-descriptive[b-us7p8l0tbp] {
    align-items: stretch;
}

.token-chip-large[b-us7p8l0tbp] {
    display: inline-grid;
    gap: 3px;
    text-align: left;
    min-width: 170px;
    cursor: grab;
}

    .token-chip-large strong[b-us7p8l0tbp] {
        font-size: 12px;
        color: #1e293b;
    }

    .token-chip-large small[b-us7p8l0tbp] {
        font-size: 11px;
        color: #4f63d7;
        font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    }

/* OTP RADIO */
/* OTP Enabled Radio Group */

[b-us7p8l0tbp] .otp-enabled-radio {
    display: inline-flex;
    padding: 5px;
    border-radius: 999px;
    background: #f1f5f9;
    border: 1px solid #e2e8f0;
}

    [b-us7p8l0tbp] .otp-enabled-radio .dxbl-radio-group-items {
        display: flex;
        gap: 8px;
    }

    [b-us7p8l0tbp] .otp-enabled-radio .dxbl-radio {
        margin: 0 !important;
    }

        [b-us7p8l0tbp] .otp-enabled-radio .dxbl-radio label,
        [b-us7p8l0tbp] .otp-enabled-radio label {
            border-radius: 999px;
            padding: 8px 18px;
            font-weight: 900;
        }

        [b-us7p8l0tbp] .otp-enabled-radio .dxbl-radio:first-child:has(input:checked) label {
            background: #ef4444;
            color: #fff;
        }

        [b-us7p8l0tbp] .otp-enabled-radio .dxbl-radio:last-child:has(input:checked) label {
            background: #22c55e;
            color: #fff;
        }

/* Email / OTP collapsible settings cards */
.mail-settings-stack[b-us7p8l0tbp] {
    display: grid;
    gap: 18px;
}

.settings-card-section[b-us7p8l0tbp] {
    border: 1px solid rgba(226,232,240,.95);
    border-radius: 22px;
    background: rgba(255,255,255,.9);
    overflow: hidden;
    box-shadow: 0 16px 44px rgba(15,23,42,.05);
}

    .settings-card-section summary[b-us7p8l0tbp] {
        cursor: pointer;
        padding: 20px 22px;
        background: linear-gradient(135deg, #f8fafc, #ffffff);
        list-style: none;
        border-bottom: 1px solid rgba(226,232,240,.8);
    }

        .settings-card-section summary[b-us7p8l0tbp]::-webkit-details-marker {
            display: none;
        }

        .settings-card-section summary[b-us7p8l0tbp]::after {
            content: "⌄";
            float: right;
            margin-top: -34px;
            color: #64748b;
            font-size: 20px;
            font-weight: 950;
        }

    .settings-card-section[open] summary[b-us7p8l0tbp]::after {
        content: "⌃";
    }

    .settings-card-section summary strong[b-us7p8l0tbp] {
        display: block;
        color: #0f172a;
        font-size: 18px;
        font-weight: 950;
    }

    .settings-card-section summary span[b-us7p8l0tbp] {
        display: block;
        margin-top: 5px;
        color: #64748b;
        font-size: 13px;
        max-width: 900px;
    }

.settings-card-section-body[b-us7p8l0tbp] {
    padding: 20px;
}

.recipient-rules-toolbar[b-us7p8l0tbp] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
    margin-bottom: 16px;
}

.recipient-rules-help[b-us7p8l0tbp] {
    display: grid;
    gap: 4px;
    color: #64748b;
    font-size: 13px;
}

    .recipient-rules-help strong[b-us7p8l0tbp] {
        color: #334155;
        font-weight: 950;
        font-size: 14px;
    }

.recipient-empty-alert[b-us7p8l0tbp] {
    margin: 0;
}

.settings-grid-view[b-us7p8l0tbp] {
    width: 100%;
}

[b-us7p8l0tbp] .recipient-rules-grid .dxbs-grid {
    border-radius: 18px !important;
    overflow: hidden !important;
    border: 1px solid rgba(226,232,240,.9) !important;
}

[b-us7p8l0tbp] .recipient-rules-grid th {
    background: #f8fafc !important;
    color: #475569 !important;
    font-size: 12px !important;
    font-weight: 950 !important;
    text-transform: uppercase;
    letter-spacing: .06em;
}

[b-us7p8l0tbp] .recipient-rules-grid td {
    vertical-align: middle !important;
}

@media (max-width: 980px) {
    .recipient-rules-toolbar[b-us7p8l0tbp] {
        flex-direction: column;
        align-items: stretch;
    }
}


/* ==========================================
   FULLSCREEN HTML TEMPLATE EDITORS
   ========================================== */

.editor-title-row[b-us7p8l0tbp] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 10px;
    overflow: visible !important;
}

    .editor-title-row label[b-us7p8l0tbp] {
        margin-bottom: 4px !important;
    }

    .editor-title-row p[b-us7p8l0tbp] {
        margin: 0;
        color: #64748b;
        font-size: 13px;
        line-height: 1.45;
    }

.editor-expand-button[b-us7p8l0tbp] {
    flex: 0 0 auto;
    min-height: 36px;
    padding: 8px 14px;
    border: 1px solid #bfdbfe;
    border-radius: 999px;
    background: #eff6ff;
    color: #1d4ed8;
    font-family: inherit;
    font-size: 12px;
    font-weight: 950;
    cursor: pointer;
    transition: transform .16s ease, background-color .16s ease, border-color .16s ease;
}

    .editor-expand-button:hover[b-us7p8l0tbp] {
        transform: translateY(-1px);
        background: #dbeafe;
        border-color: #93c5fd;
    }

.editor-shell[b-us7p8l0tbp] {
    width: 100%;
    max-width: 100%;
    overflow: hidden;
}

.editor-frame[b-us7p8l0tbp] {
    width: 100%;
    max-width: 100%;
    overflow: hidden;
    border-radius: 18px;
    border: 1px solid rgba(226, 232, 240, .95);
    background: #ffffff;
}

[b-us7p8l0tbp] .editor-frame .dx-htmleditor,
[b-us7p8l0tbp] .editor-frame .dxbs-html-editor,
[b-us7p8l0tbp] .editor-frame .dxbs-htmleditor {
    border: 0 !important;
    border-radius: 18px !important;
    overflow: hidden !important;
}

.template-editor-fullscreen-popup[b-us7p8l0tbp]  .dxbs-modal-content,
[b-us7p8l0tbp] .template-editor-fullscreen-popup .dxbs-modal-content {
    border: 0 !important;
    border-radius: 28px !important;
    overflow: hidden !important;
    box-shadow: 0 30px 100px rgba(15, 23, 42, .28) !important;
}

.template-editor-fullscreen-body[b-us7p8l0tbp] {
    padding: 0 !important;
    overflow: hidden !important;
    background: #ffffff;
}

.template-fullscreen-dialog[b-us7p8l0tbp] {
    height: 100%;
    min-height: 0;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    background: #ffffff;
}

.template-fullscreen-header[b-us7p8l0tbp] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
    padding: 20px 22px;
    border-bottom: 1px solid rgba(226, 232, 240, .9);
    background: linear-gradient(135deg, #f8fafc, #ffffff);
}

    .template-fullscreen-header span[b-us7p8l0tbp] {
        display: inline-flex;
        margin-bottom: 6px;
        color: #2563eb;
        font-size: 12px;
        font-weight: 950;
        letter-spacing: .05em;
        text-transform: uppercase;
    }

    .template-fullscreen-header h2[b-us7p8l0tbp] {
        margin: 0;
        color: #0f172a;
        font-size: clamp(22px, 2vw, 30px);
        font-weight: 950;
        letter-spacing: -.035em;
    }

    .template-fullscreen-header p[b-us7p8l0tbp] {
        margin: 5px 0 0;
        color: #64748b;
        font-size: 13px;
        line-height: 1.35;
    }

.template-fullscreen-actions[b-us7p8l0tbp] {
    display: flex;
    gap: 10px;
    flex: 0 0 auto;
}

.modal-secondary-button[b-us7p8l0tbp],
.modal-primary-button[b-us7p8l0tbp] {
    min-height: 40px;
    padding: 9px 16px;
    border-radius: 999px;
    font-family: inherit;
    font-size: 13px;
    font-weight: 950;
    cursor: pointer;
    transition: transform .16s ease, opacity .16s ease;
}

.modal-secondary-button[b-us7p8l0tbp] {
    border: 1px solid #e2e8f0;
    background: #ffffff;
    color: #334155;
}

.modal-primary-button[b-us7p8l0tbp] {
    border: 1px solid #2563eb;
    background: #2563eb;
    color: #ffffff;
    box-shadow: 0 14px 28px rgba(37, 99, 235, .22);
}

    .modal-secondary-button:hover:not(:disabled)[b-us7p8l0tbp],
    .modal-primary-button:hover:not(:disabled)[b-us7p8l0tbp] {
        transform: translateY(-1px);
    }

    .modal-secondary-button:disabled[b-us7p8l0tbp],
    .modal-primary-button:disabled[b-us7p8l0tbp] {
        cursor: not-allowed;
        opacity: .65;
    }

.template-fullscreen-content[b-us7p8l0tbp] {
    min-height: 0;
    display: grid;
    grid-template-columns: minmax(240px, 320px) minmax(0, 1fr);
    gap: 0;
}

.template-fullscreen-token-panel[b-us7p8l0tbp] {
    min-height: 0;
    overflow-y: auto;
    padding: 20px;
    border-right: 1px solid rgba(226, 232, 240, .9);
    background: #f8fafc;
}

.fullscreen-token-list[b-us7p8l0tbp] {
    display: grid;
    grid-template-columns: 1fr;
    max-height: none;
    overflow: visible;
}

    .fullscreen-token-list .token-chip-large[b-us7p8l0tbp] {
        width: 100%;
        min-width: 0;
        background: #ffffff;
        border: 1px solid rgba(226, 232, 240, .9);
    }

.template-fullscreen-editor-main[b-us7p8l0tbp] {
    min-width: 0;
    min-height: 0;
    padding: 20px;
    background: #ffffff;
}

.template-fullscreen-editor-frame[b-us7p8l0tbp] {
    height: 100%;
    min-height: 0;
    overflow: hidden;
    border: 1px solid rgba(226, 232, 240, .95);
    border-radius: 22px;
    background: #ffffff;
}

[b-us7p8l0tbp] .template-fullscreen-editor-frame .dx-htmleditor,
[b-us7p8l0tbp] .template-fullscreen-editor-frame .dxbs-html-editor,
[b-us7p8l0tbp] .template-fullscreen-editor-frame .dxbs-htmleditor {
    border: 0 !important;
    border-radius: 22px !important;
    overflow: hidden !important;
}

@media (max-width: 980px) {
    .template-fullscreen-content[b-us7p8l0tbp] {
        grid-template-columns: 1fr;
        grid-template-rows: auto minmax(0, 1fr);
    }

    .template-fullscreen-token-panel[b-us7p8l0tbp] {
        max-height: 180px;
        border-right: 0;
        border-bottom: 1px solid rgba(226, 232, 240, .9);
    }

    .template-fullscreen-header[b-us7p8l0tbp] {
        flex-direction: column;
    }

    .template-fullscreen-actions[b-us7p8l0tbp] {
        width: 100%;
    }

        .template-fullscreen-actions button[b-us7p8l0tbp] {
            flex: 1 1 0;
        }
}

@media (max-width: 640px) {
    .editor-title-row[b-us7p8l0tbp] {
        flex-direction: column;
        align-items: stretch;
    }

    .editor-expand-button[b-us7p8l0tbp] {
        width: 100%;
    }

    .template-fullscreen-header[b-us7p8l0tbp] {
        padding: 16px;
    }

    .template-fullscreen-token-panel[b-us7p8l0tbp],
    .template-fullscreen-editor-main[b-us7p8l0tbp] {
        padding: 14px;
    }

    .template-fullscreen-actions[b-us7p8l0tbp] {
        display: grid;
        grid-template-columns: 1fr;
    }
}
/* _content/Arsakeio_Portal/Components/Pages/CandidateSubmissionPage.razor.rz.scp.css */
/* Hide Google reCAPTCHA badge */
[b-np940e9c0b] .grecaptcha-badge {
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.candidate-page[b-np940e9c0b] {
    height: 100dvh;
    min-height: 100dvh;
    padding: 32px;
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-y: contain;
    touch-action: pan-y;
    background: radial-gradient(circle at 20% 20%, rgba(56, 189, 248, .18), transparent 32%), radial-gradient(circle at 80% 15%, rgba(37, 99, 235, .14), transparent 30%), linear-gradient(135deg, #f8fbff 0%, #eef7ff 45%, #ffffff 100%);
}

/* Slide transition */
.candidate-start-screen[b-np940e9c0b],
.candidate-form-enter[b-np940e9c0b] {
    animation-duration: .7s;
    animation-timing-function: cubic-bezier(.22, 1, .36, 1);
    animation-fill-mode: both;
    will-change: transform, opacity;
}

.candidate-start-screen[b-np940e9c0b] {
    animation-name: candidateSlideStart-b-np940e9c0b;
}

.candidate-form-enter[b-np940e9c0b] {
    animation-name: candidateSlideForm-b-np940e9c0b;
}

@keyframes candidateSlideStart-b-np940e9c0b {
    from {
        opacity: 0;
        transform: translateX(-90px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes candidateSlideForm-b-np940e9c0b {
    from {
        opacity: 0;
        transform: translateX(90px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}


.candidate-form-enter[b-np940e9c0b] {
    min-height: 100%;
    padding-bottom: 24px;
}

/* MAIN WIZARD */
.candidate-wizard[b-np940e9c0b] {
    max-width: 1180px;
    margin: 0 auto;
    background: rgba(255, 255, 255, .84);
    backdrop-filter: blur(18px);
    border: 1px solid rgba(255,255,255,.7);
    border-radius: 26px;
    padding: 32px;
    box-shadow: 0 25px 60px rgba(15, 23, 42, .08);
}

/* Steps */
.candidate-steps[b-np940e9c0b] {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 10px;
    list-style: none;
    padding: 0;
    margin: 0 0 18px;
}

    .candidate-steps li[b-np940e9c0b] {
        padding: 12px 14px;
        border-radius: 999px;
        background: rgba(241, 245, 249, .85);
        color: #64748b;
        font-size: 14px;
        text-align: center;
        font-weight: 700;
    }

        .candidate-steps li.active[b-np940e9c0b] {
            background: #2563eb;
            color: #fff;
            box-shadow: 0 10px 20px rgba(37, 99, 235, .22);
        }

        .candidate-steps li.done[b-np940e9c0b] {
            background: #dbeafe;
            color: #1d4ed8;
        }

/* Progress */
.candidate-progress[b-np940e9c0b] {
    height: 8px;
    background: #e2e8f0;
    border-radius: 999px;
    overflow: hidden;
    margin-bottom: 42px;
}

    .candidate-progress div[b-np940e9c0b] {
        height: 100%;
        background: linear-gradient(90deg, #2563eb, #38bdf8);
        border-radius: 999px;
        transition: width .25s ease;
    }

/* Content */
.candidate-pane[b-np940e9c0b] {
    max-width: 760px;
    margin: 0 auto;
}

    .candidate-pane h5[b-np940e9c0b] {
        margin-bottom: 26px;
        font-size: 22px;
        font-weight: 900;
        color: #0f172a;
    }

/* Sections */
.section-box[b-np940e9c0b] {
    border: 1px solid rgba(226,232,240,.8);
    border-radius: 20px;
    padding: 22px;
    margin-bottom: 20px;
    background: rgba(255,255,255,.82);
    backdrop-filter: blur(10px);
}

    .section-box h6[b-np940e9c0b] {
        font-size: 15px;
        font-weight: 900;
        color: #334155;
        margin-bottom: 18px;
    }

/* Fields */
.form-row[b-np940e9c0b] {
    display: grid;
    grid-template-columns: 190px 1fr;
    gap: 14px;
    align-items: center;
    margin-bottom: 14px;
}

    .form-row:last-child[b-np940e9c0b] {
        margin-bottom: 0;
    }

    .form-row label[b-np940e9c0b] {
        font-size: 13px;
        font-weight: 700;
        color: #475569;
    }

/* DevExpress editors */
[b-np940e9c0b] .form-row .dxbs-editor,
[b-np940e9c0b] .form-row .dxbs-textbox,
[b-np940e9c0b] .form-row .dxbs-combobox,
[b-np940e9c0b] .form-row .dxbs-date-edit,
[b-np940e9c0b] .form-row .dxbs-memo,
[b-np940e9c0b] .form-row .dxbs-editor-container {
    width: 100%;
}

[b-np940e9c0b] .dxbs-editor-input,
[b-np940e9c0b] input.form-control,
[b-np940e9c0b] textarea.form-control {
    border-radius: 12px !important;
    border-color: #dbe2ea !important;
    min-height: 42px;
    background: rgba(255,255,255,.9) !important;
}

    [b-np940e9c0b] .dxbs-editor-input:focus,
    [b-np940e9c0b] input.form-control:focus,
    [b-np940e9c0b] textarea.form-control:focus {
        border-color: #2563eb !important;
        box-shadow: 0 0 0 4px rgba(37, 99, 235, .14) !important;
    }

/* Info step */
.info-text[b-np940e9c0b] {
    max-width: 980px;
    padding: 8px 4px;
    color: #1f2937;
    font-size: 16px;
    line-height: 1.7;
}

    .info-text h4[b-np940e9c0b] {
        font-size: 24px;
        font-weight: 900;
        color: #0f172a;
        margin-bottom: 22px;
    }

/* Actions */
.candidate-actions[b-np940e9c0b] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    margin-top: 24px;
}

.candidate-actions-left[b-np940e9c0b] {
    display: flex;
}

.candidate-actions-right[b-np940e9c0b] {
    display: flex;
}

.candidate-actions > div[b-np940e9c0b] {
    display: flex;
    gap: 10px;
}

/* Buttons */
[b-np940e9c0b] .candidate-actions .dxbs-button {
    border-radius: 12px !important;
    padding: 10px 20px !important;
    font-weight: 800 !important;
}

    [b-np940e9c0b] .candidate-actions .btn-primary,
    [b-np940e9c0b] .candidate-actions .dxbs-button:not(.btn-secondary):not(.btn-light) {
        background: #2563eb !important;
        border-color: #2563eb !important;
    }

        [b-np940e9c0b] .candidate-actions .btn-primary:hover,
        [b-np940e9c0b] .candidate-actions .dxbs-button:not(.btn-secondary):not(.btn-light):hover {
            background: #1d4ed8 !important;
            border-color: #1d4ed8 !important;
        }

/* Alerts */
.alert[b-np940e9c0b] {
    border-radius: 14px;
    border: 0;
}

/* Lock after submit */
.form-locked[b-np940e9c0b] {
    pointer-events: none;
    opacity: .45;
    user-select: none;
}

/* Success Popup */
.candidate-success-popup[b-np940e9c0b]  .dxbs-modal-content {
    border-radius: 24px;
    backdrop-filter: blur(16px);
}

.success-box[b-np940e9c0b] {
    text-align: center;
    padding: 40px 30px;
}

.success-icon[b-np940e9c0b] {
    width: 78px;
    height: 78px;
    margin: 0 auto 20px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #22c55e;
    color: white;
    font-size: 40px;
    font-weight: 900;
}

.success-box h2[b-np940e9c0b] {
    font-size: 34px;
    font-weight: 900;
    margin-bottom: 10px;
    color: #0f172a;
}

.success-box p[b-np940e9c0b] {
    color: #475569;
    font-size: 18px;
    margin-bottom: 26px;
}

/* START SCREEN */
.candidate-start-screen[b-np940e9c0b] {
    width: 100%;
    min-height: calc(100dvh - 64px);
    display: grid;
    place-items: center;
}

.start-card[b-np940e9c0b] {
    width: min(1180px, 92vw);
    min-height: 68vh;
    text-align: center;
    padding: 72px 56px;
    border-radius: 34px;
    background: rgba(255, 255, 255, .72);
    backdrop-filter: blur(22px);
    box-shadow: 0 30px 90px rgba(15, 23, 42, .12);
    border: 1px solid rgba(255, 255, 255, .9);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.start-badge[b-np940e9c0b] {
    display: inline-block;
    padding: 10px 18px;
    margin-bottom: 28px;
    border-radius: 999px;
    background: rgba(219, 234, 254, .9);
    color: #1d4ed8;
    font-weight: 900;
    font-size: 14px;
}

.start-card h1[b-np940e9c0b] {
    font-size: clamp(56px, 7vw, 104px);
    line-height: .95;
    font-weight: 950;
    color: #7fa6d8;
    margin-bottom: 28px;
    letter-spacing: -0.06em;
}

.start-card p[b-np940e9c0b] {
    max-width: 760px;
    margin: 0 auto 42px;
    color: #475569;
    font-size: clamp(18px, 1.4vw, 24px);
    line-height: 1.65;
}

[b-np940e9c0b] .start-button.dxbs-button {
    border-radius: 999px !important;
    padding: 15px 38px !important;
    font-size: 18px !important;
    font-weight: 900 !important;
    background: #2563eb !important;
    border-color: #2563eb !important;
    box-shadow: 0 18px 34px rgba(37, 99, 235, .28);
}

/* Responsive */
@media (max-width: 900px) {
    .candidate-page[b-np940e9c0b] {
        padding: 16px;
    }

    .candidate-wizard[b-np940e9c0b] {
        padding: 20px;
    }

    .candidate-steps[b-np940e9c0b] {
        grid-template-columns: repeat(5, 180px);
        overflow-x: auto;
        padding-bottom: 6px;
    }

    .form-row[b-np940e9c0b] {
        grid-template-columns: 1fr;
        gap: 6px;
    }

    .candidate-actions[b-np940e9c0b] {
        flex-direction: column;
        align-items: stretch;
    }

        .candidate-actions > div[b-np940e9c0b] {
            justify-content: flex-end;
        }

    .start-card[b-np940e9c0b] {
        padding: 44px 24px;
        min-height: 62vh;
    }

        .start-card h1[b-np940e9c0b] {
            font-size: 52px;
        }

        .start-card p[b-np940e9c0b] {
            font-size: 17px;
        }
}

[b-np940e9c0b] .candidate-invalid input,
[b-np940e9c0b] .candidate-invalid textarea,
[b-np940e9c0b] .candidate-invalid .form-control,
[b-np940e9c0b] .candidate-invalid .dxbs-editor-input {
    border-color: #dc2626 !important;
    box-shadow: 0 0 0 4px rgba(220, 38, 38, .12) !important;
}

.validation-message[b-np940e9c0b] {
    display: block;
    margin-top: 6px;
    font-size: 12px;
    font-weight: 700;
    color: #dc2626;
}

.section-disabled[b-np940e9c0b] {
    opacity: .45;
    filter: grayscale(.35);
}

.start-logo-wrap[b-np940e9c0b] {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 28px;
}

.start-logo[b-np940e9c0b] {
    width: 540px;
    max-width: 80%;
    height: auto;
    object-fit: contain;
    filter: drop-shadow(0 8px 30px rgba(0,0,0,.18));
}

/* ---------- OTP popup ---------- */

[b-np940e9c0b] .otp-popup .dxbs-modal-content {
    border-radius: 22px !important;
    overflow: hidden !important;
    border: 1px solid rgba(226, 232, 240, .9) !important;
    box-shadow: 0 28px 90px rgba(15, 23, 42, .22) !important;
    background: rgba(255, 255, 255, .96) !important;
    backdrop-filter: blur(18px);
}

[b-np940e9c0b] .otp-popup .dxbs-popup-body {
    padding: 0 !important;
}

[b-np940e9c0b] .otp-popup .dxbs-popup-close-button {
    position: absolute !important;
    top: 14px !important;
    right: 14px !important;
    margin: 0 !important;
    width: 38px !important;
    height: 38px !important;
    border-radius: 12px !important;
    background: rgba(15, 23, 42, .05) !important;
}

    [b-np940e9c0b] .otp-popup .dxbs-popup-close-button:hover {
        background: rgba(15, 23, 42, .10) !important;
    }

[b-np940e9c0b] .otp-popup .otp-body {
    text-align: center;
}

[b-np940e9c0b] .otp-card {
    padding: 34px 30px 28px;
    background: radial-gradient(circle at top, rgba(56, 189, 248, .12), transparent 38%), rgba(255, 255, 255, .96);
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

[b-np940e9c0b] .otp-icon {
    width: 72px;
    height: 72px;
    margin: 4px auto 14px;
    border-radius: 999px;
    background: linear-gradient(135deg, #2563eb, #38bdf8);
    display: grid;
    place-items: center;
    box-shadow: 0 18px 34px rgba(37, 99, 235, .24);
}

[b-np940e9c0b] .otp-shield {
    color: #fff;
    font-weight: 900;
    font-size: 32px;
    line-height: 1;
}

[b-np940e9c0b] .otp-title {
    font-weight: 950;
    font-size: 30px;
    color: #0f172a;
    margin: 8px 0 8px;
    width: 100%;
    text-align: center;
    letter-spacing: -0.03em;
}

[b-np940e9c0b] .otp-sub {
    color: #64748b;
    font-size: 15px;
    margin-bottom: 22px;
    width: 100%;
    text-align: center;
    line-height: 1.55;
}

[b-np940e9c0b] .otp-email {
    display: block;
    font-weight: 900;
    color: #0f172a;
    margin-top: 4px;
    word-break: break-word;
}

[b-np940e9c0b] .otp-input-wrap {
    width: min(420px, 100%);
    margin-left: auto;
    margin-right: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 4px;
}

[b-np940e9c0b] .otp-label {
    display: block;
    font-weight: 900;
    color: #0f172a;
    margin-bottom: 10px;
    text-align: center;
}

[b-np940e9c0b] .otp-hint {
    margin-top: 10px;
    font-size: 13px;
    color: #64748b;
    text-align: center;
}

[b-np940e9c0b] .otp-input {
    --box: 52px;
    --gap: 10px;
    --pad: 16px;
    width: calc((var(--box) * 6) + (var(--gap) * 5) + (var(--pad) * 2));
    max-width: 100%;
    height: 60px;
    border-radius: 16px;
    border: 2px solid rgba(203, 213, 225, .95);
    outline: none;
    padding: 0 var(--pad);
    font-size: 24px;
    font-weight: 950;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    letter-spacing: calc(var(--box) - 20px + var(--gap));
    text-align: left;
    overflow: hidden;
    white-space: nowrap;
    color: #0f172a;
    background: linear-gradient(#fff, #fff) padding-box, repeating-linear-gradient( to right, rgba(148, 163, 184, .65) 0, rgba(148, 163, 184, .65) 2px, transparent 2px, transparent calc(var(--box) + var(--gap)) );
    background-size: auto, calc(var(--box) + var(--gap)) 100%;
    background-position: 0 0, calc(var(--pad) + var(--box)) 0;
    background-repeat: no-repeat, repeat-x;
    caret-color: transparent;
}

    [b-np940e9c0b] .otp-input:focus {
        border-color: #2563eb;
        box-shadow: 0 0 0 5px rgba(37, 99, 235, .16);
    }

[b-np940e9c0b] .otp-error {
    width: min(420px, 100%);
    margin-left: auto;
    margin-right: auto;
    margin-top: 14px;
    border-radius: 14px;
    padding: 11px 13px;
    background: #fef2f2;
    border: 1px solid #fecaca;
    color: #991b1b;
    font-size: 14px;
    font-weight: 700;
    text-align: left;
}

[b-np940e9c0b] .otp-actions-2 {
    width: min(420px, 100%);
    margin-left: auto;
    margin-right: auto;
    margin-top: 18px;
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: 12px;
}

[b-np940e9c0b] .otp-btn.dxbs-button {
    min-height: 48px !important;
    border-radius: 14px !important;
    font-weight: 900 !important;
}

[b-np940e9c0b] .otp-primary.dxbs-button {
    background: #2563eb !important;
    border-color: #2563eb !important;
    box-shadow: 0 14px 28px rgba(37, 99, 235, .24) !important;
}

@media (max-width: 576px) {
    [b-np940e9c0b] .otp-card {
        padding: 26px 18px 20px;
    }

    [b-np940e9c0b] .otp-title {
        font-size: 24px;
    }

    [b-np940e9c0b] .otp-input {
        --box: 42px;
        --gap: 8px;
        --pad: 12px;
        height: 54px;
        font-size: 21px;
    }

    [b-np940e9c0b] .otp-actions-2 {
        grid-template-columns: 1fr;
    }
}

.hidden-fields-css[b-np940e9c0b] {
    display: none !important;
}

.form-locked[b-np940e9c0b] {
    pointer-events: none;
    opacity: .65;
}

/* MISSING GUARDIAN POPUP*/

.missing-guardian-popup[b-np940e9c0b]  .dxbs-modal-content {
    border-radius: 26px !important;
    overflow: hidden !important;
    border: 1px solid rgba(226,232,240,.9) !important;
    box-shadow: 0 28px 90px rgba(15,23,42,.22) !important;
    background: rgba(255,255,255,.96) !important;
    backdrop-filter: blur(18px);
}

.missing-guardian-card[b-np940e9c0b] {
    padding: 40px 34px 32px;
    text-align: center;
}

.missing-guardian-icon[b-np940e9c0b] {
    width: 78px;
    height: 78px;
    margin: 0 auto 18px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #f97316;
    color: #fff;
    font-size: 42px;
    font-weight: 950;
    box-shadow: 0 18px 34px rgba(249,115,22,.24);
}

.missing-guardian-card h2[b-np940e9c0b] {
    font-size: 32px;
    font-weight: 950;
    margin-bottom: 14px;
    color: #0f172a;
}

.missing-guardian-text[b-np940e9c0b] {
    text-align: left;
    padding: 18px;
    border-radius: 18px;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    margin-bottom: 20px;
}

.missing-guardian-timer[b-np940e9c0b] {
    color: #64748b;
    font-weight: 800;
    margin-bottom: 18px;
}

.missing-guardian-button.dxbs-button[b-np940e9c0b] {
    min-width: 170px !important;
    min-height: 48px !important;
    border-radius: 14px !important;
    font-weight: 900 !important;
}

    .missing-guardian-button.dxbs-button:not(:disabled)[b-np940e9c0b] {
        background: #2563eb !important;
        border-color: #2563eb !important;
        color: #fff !important;
        box-shadow: 0 14px 28px rgba(37,99,235,.24) !important;
    }

    .missing-guardian-button.dxbs-button:disabled[b-np940e9c0b] {
        opacity: .45 !important;
        cursor: not-allowed !important;
        box-shadow: none !important;
    }

/*MOBILE */

@media (max-width: 640px) {
    .candidate-page[b-np940e9c0b] {
        height: 100dvh;
        min-height: 100dvh;
        padding: 10px;
        padding-bottom: calc(28px + env(safe-area-inset-bottom));
        overflow-y: auto;
        overflow-x: hidden;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior-y: contain;
        touch-action: pan-y;
    }

    .candidate-wizard[b-np940e9c0b] {
        width: 100%;
        max-width: 100%;
        padding: 14px;
        border-radius: 18px;
        overflow: visible;
    }

    .candidate-pane[b-np940e9c0b] {
        max-width: 100%;
    }

        .candidate-pane h5[b-np940e9c0b] {
            font-size: 19px;
            margin-bottom: 18px;
        }

    .section-box[b-np940e9c0b] {
        padding: 16px 14px;
        border-radius: 16px;
        margin-bottom: 16px;
    }

    .form-row[b-np940e9c0b] {
        grid-template-columns: 1fr;
        gap: 6px;
        margin-bottom: 14px;
    }

        .form-row label[b-np940e9c0b] {
            font-size: 13px;
        }

    .candidate-steps[b-np940e9c0b] {
        display: flex;
        overflow-x: auto;
        gap: 8px;
        padding-bottom: 8px;
        margin-bottom: 14px;
        scroll-snap-type: x mandatory;
    }

        .candidate-steps li[b-np940e9c0b] {
            min-width: 150px;
            font-size: 12px;
            padding: 10px 12px;
            scroll-snap-align: start;
        }

    .candidate-progress[b-np940e9c0b] {
        margin-bottom: 24px;
    }

    .candidate-actions[b-np940e9c0b] {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 12px;
        align-items: stretch;
    }

    .candidate-actions-left[b-np940e9c0b],
    .candidate-actions-right[b-np940e9c0b] {
        display: flex;
    }

    .candidate-actions-left[b-np940e9c0b] {
        justify-content: flex-start;
    }

    .candidate-actions-right[b-np940e9c0b] {
        justify-content: flex-end;
    }

    [b-np940e9c0b] .candidate-actions .dxbs-button {
        width: 100%;
        min-height: 46px;
    }

    .start-card[b-np940e9c0b] {
        width: 100%;
        min-height: calc(100dvh - 20px);
        padding: 36px 18px;
        border-radius: 22px;
    }

    .start-logo[b-np940e9c0b] {
        width: 320px;
        max-width: 88%;
    }

    .start-card h1[b-np940e9c0b] {
        font-size: 42px;
    }

    .start-card p[b-np940e9c0b] {
        font-size: 16px;
        line-height: 1.55;
    }

    [b-np940e9c0b] .otp-popup .dxbs-modal-dialog,
    .missing-guardian-popup[b-np940e9c0b]  .dxbs-modal-dialog,
    .candidate-success-popup[b-np940e9c0b]  .dxbs-modal-dialog {
        width: calc(100vw - 20px) !important;
        max-width: calc(100vw - 20px) !important;
        margin: 10px auto !important;
    }

    [b-np940e9c0b] .otp-card,
    .missing-guardian-card[b-np940e9c0b],
    .success-box[b-np940e9c0b] {
        padding: 24px 16px !important;
    }

        .missing-guardian-card h2[b-np940e9c0b],
        .success-box h2[b-np940e9c0b] {
            font-size: 24px;
        }

    .missing-guardian-text[b-np940e9c0b],
    .info-text[b-np940e9c0b] {
        font-size: 14px;
        line-height: 1.55;
    }
}

@media (max-width: 640px) {
    [b-np940e9c0b] .dxbs-modal-content {
        max-height: 90dvh;
        overflow-y: auto;
    }
}
/* _content/Arsakeio_Portal/Components/Pages/CandidateSubmissionsAdminViewPage.razor.rz.scp.css */
.prca-admin-page[b-mgi2igdput] {
    padding: 40px 32px 80px;
    background: #ffffff;
    min-height: 100vh;
    width: 100%;
}

.admin-shell[b-mgi2igdput] {
    width: 100%;
    max-width: none;
    margin: 0;
}

.admin-header[b-mgi2igdput] {
    width: 100%;
    background: #fff;
    border-radius: 28px;
    padding: 42px 48px;
    margin-bottom: 24px;
    box-shadow: 0 20px 50px rgba(15, 23, 42, 0.08);
    border: 1px solid rgba(226, 232, 240, 0.9);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
}

.header-year-filter[b-mgi2igdput] {
    width: min(420px, 100%);
    min-width: 320px;
}

    .header-year-filter label[b-mgi2igdput] {
        display: block;
        margin-bottom: 10px;
        color: #64748b;
        font-size: 12px;
        font-weight: 900;
        text-transform: uppercase;
        letter-spacing: 0.06em;
    }

[b-mgi2igdput] .header-year-filter .dxbs-combobox {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

[b-mgi2igdput] .header-year-filter .dxbs-editor {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

[b-mgi2igdput] .header-year-filter .dxbs-input-group {
    background: #ffffff !important;
    border-radius: 999px !important;
    border: 1px solid rgba(226, 232, 240, 0.95) !important;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06);
    overflow: hidden;
}

[b-mgi2igdput] .header-year-filter .dxbs-editor-input {
    background: transparent !important;
    border: 0 !important;
    min-height: 48px;
    padding-inline: 18px !important;
    font-weight: 600;
}

[b-mgi2igdput] .header-year-filter .dxbs-input-group-text {
    background: transparent !important;
    border: 0 !important;
}

.eyebrow[b-mgi2igdput] {
    display: inline-flex;
    align-items: center;
    padding: 7px 14px;
    border-radius: 999px;
    background: rgba(80, 115, 230, 0.12);
    color: #4169e1;
    font-weight: 800;
    font-size: 13px;
    margin-bottom: 18px;
}

.admin-header h1[b-mgi2igdput] {
    margin: 0;
    color: #111827;
    font-size: clamp(34px, 4vw, 54px);
    line-height: 1.02;
    font-weight: 900;
    letter-spacing: -0.04em;
}

.admin-header p[b-mgi2igdput] {
    margin: 18px 0 0;
    color: #64748b;
    font-size: 17px;
}

.admin-alert[b-mgi2igdput] {
    border-radius: 18px;
    padding: 14px 18px;
    margin-bottom: 18px;
    font-weight: 700;
}

    .admin-alert.success[b-mgi2igdput] {
        background: #ecfdf5;
        color: #047857;
        border: 1px solid #a7f3d0;
    }

    .admin-alert.error[b-mgi2igdput] {
        background: #fef2f2;
        color: #b91c1c;
        border: 1px solid #fecaca;
    }

.tab-panel[b-mgi2igdput] {
    width: 100%;
    background: #fff;
    border-radius: 24px;
    padding: 22px;
    box-shadow: 0 16px 40px rgba(15, 23, 42, 0.06);
    border: 1px solid rgba(226, 232, 240, 0.9);
}

.submissions-panel[b-mgi2igdput] {
    padding: 0;
    overflow-x: auto;
}

.submission-detail-card[b-mgi2igdput] {
    background: #fff;
    border-radius: 18px;
    padding: 22px;
    margin: 12px;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.08);
    border: 1px solid rgba(148, 163, 184, 0.25);
}

.submission-detail-head[b-mgi2igdput] {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    align-items: flex-start;
    margin-bottom: 22px;
}

    .submission-detail-head h3[b-mgi2igdput] {
        margin: 0;
        font-size: 22px;
        color: #111827;
    }

    .submission-detail-head p[b-mgi2igdput] {
        margin: 6px 0 0;
        color: #64748b;
    }

.detail-actions[b-mgi2igdput],
.popup-actions[b-mgi2igdput] {
    display: flex;
    gap: 10px;
    justify-content: flex-end;
    flex-wrap: wrap;
}

.step-accordion[b-mgi2igdput] {
    display: grid;
    gap: 14px;
}

    .step-accordion details[b-mgi2igdput] {
        border: 1px solid rgba(226, 232, 240, 0.95);
        border-radius: 18px;
        background: #ffffff;
        overflow: hidden;
    }

    .step-accordion summary[b-mgi2igdput] {
        cursor: pointer;
        padding: 18px 20px;
        font-weight: 900;
        color: #111827;
        background: #f8fafc;
        list-style: none;
    }

        .step-accordion summary[b-mgi2igdput]::-webkit-details-marker {
            display: none;
        }

        .step-accordion summary[b-mgi2igdput]::after {
            content: "⌄";
            float: right;
            color: #64748b;
            font-size: 18px;
        }

    .step-accordion details[open] summary[b-mgi2igdput]::after {
        content: "⌃";
    }

.submission-detail-grid[b-mgi2igdput],
.edit-form-grid[b-mgi2igdput] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    padding: 18px;
}

    .submission-detail-grid div[b-mgi2igdput],
    .edit-form-grid div[b-mgi2igdput] {
        background: #f8fafc;
        border-radius: 14px;
        padding: 14px;
    }

    .submission-detail-grid label[b-mgi2igdput],
    .edit-form-grid label[b-mgi2igdput] {
        display: block;
        font-size: 12px;
        font-weight: 800;
        color: #64748b;
        margin-bottom: 6px;
        text-transform: uppercase;
        letter-spacing: 0.04em;
    }

    .submission-detail-grid span[b-mgi2igdput] {
        color: #0f172a;
        font-weight: 700;
        overflow-wrap: anywhere;
    }

.wide[b-mgi2igdput] {
    grid-column: 1 / -1;
}

.popup-actions[b-mgi2igdput] {
    margin-top: 22px;
}

.delete-confirm-box[b-mgi2igdput] {
    background: #fef2f2;
    border: 1px solid #fecaca;
    border-radius: 18px;
    padding: 18px;
}

    .delete-confirm-box h3[b-mgi2igdput] {
        margin: 0 0 10px;
        color: #991b1b;
    }

    .delete-confirm-box p[b-mgi2igdput] {
        margin: 0 0 8px;
        color: #7f1d1d;
    }

.delete-warning[b-mgi2igdput] {
    font-weight: 800;
}

[b-mgi2igdput] .submissions-grid {
    width: 100%;
    min-width: 900px;
    border-radius: 18px;
    overflow: hidden;
}

[b-mgi2igdput] .submissions-toolbar {
    padding: 10px 12px;
}

[b-mgi2igdput] .submissions-grid .dxbl-grid-toolbar {
    border-bottom: 1px solid rgba(148, 163, 184, 0.25);
    background: #f8fafc;
}

[b-mgi2igdput] .submissions-grid .dxbl-grid-group-panel {
    background: #ffffff;
    border-bottom: 1px solid rgba(148, 163, 184, 0.25);
}

[b-mgi2igdput] .submissions-grid .dxbl-grid-search-box {
    min-width: 280px;
}

[b-mgi2igdput] .detail-edit-btn {
    background: #5b7cfa !important;
    border-color: #5b7cfa !important;
    color: #fff !important;
    border-radius: 999px !important;
    font-weight: 800;
    padding-inline: 18px;
}

[b-mgi2igdput] .detail-delete-btn,
[b-mgi2igdput] .confirm-delete-btn {
    background: #dc2626 !important;
    border-color: #dc2626 !important;
    color: #fff !important;
    border-radius: 999px !important;
    font-weight: 800;
    padding-inline: 18px;
}

    [b-mgi2igdput] .detail-delete-btn:hover,
    [b-mgi2igdput] .confirm-delete-btn:hover {
        background: #b91c1c !important;
        border-color: #b91c1c !important;
    }

@media (max-width: 900px) {
    .prca-admin-page[b-mgi2igdput] {
        padding: 24px 12px 60px;
    }

    .admin-header[b-mgi2igdput] {
        padding: 28px 22px;
        border-radius: 22px;
        flex-direction: column;
        align-items: stretch;
    }

    .header-year-filter[b-mgi2igdput] {
        min-width: 0;
        width: 100%;
    }

    .submission-detail-head[b-mgi2igdput] {
        flex-direction: column;
    }

    .submission-detail-grid[b-mgi2igdput],
    .edit-form-grid[b-mgi2igdput] {
        grid-template-columns: 1fr;
    }

    .wide[b-mgi2igdput] {
        grid-column: auto;
    }

    [b-mgi2igdput] .submissions-grid {
        min-width: 760px;
    }
}

.editable-detail-grid div[b-mgi2igdput] {
    transition: box-shadow .15s ease, transform .15s ease;
}

    .editable-detail-grid div:focus-within[b-mgi2igdput] {
        box-shadow: 0 0 0 3px rgba(91, 124, 250, 0.18);
        transform: translateY(-1px);
    }

[b-mgi2igdput] .editable-detail-grid .dxbs-editor,
[b-mgi2igdput] .editable-detail-grid .dxbs-editor-container,
[b-mgi2igdput] .editable-detail-grid .dxbs-textbox,
[b-mgi2igdput] .editable-detail-grid .dxbs-spin-edit,
[b-mgi2igdput] .editable-detail-grid .dxbs-date-edit {
    width: 100%;
}
/* _content/Arsakeio_Portal/Components/Pages/Index.razor.rz.scp.css */
.parent-home-page[b-6ma1cshnoc] {
    min-height: calc(100vh - 92px);
    height: auto;
    overflow-x: hidden;
    overflow-y: auto;
}

.parent-dashboard[b-6ma1cshnoc] {
    height: 100%;
    width: 100%;
    max-width: 1680px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    grid-template-rows: 1fr auto;
    grid-template-areas:
        "left scheduler"
        "students students";
    gap: 14px;
    align-items: stretch;
}

.left-stack[b-6ma1cshnoc] {
    grid-area: left;
    display: grid;
    grid-template-rows: auto auto minmax(170px, 1fr);
    gap: 14px;
}

.dashboard-card[b-6ma1cshnoc] {
    background: rgba(255,255,255,.72);
    backdrop-filter: blur(28px) saturate(180%);
    -webkit-backdrop-filter: blur(28px) saturate(180%);
    border: 1px solid rgba(255,255,255,.65);
    border-radius: 24px;
    box-shadow: 0 8px 24px rgba(15,23,42,.05), 0 20px 48px rgba(15,23,42,.06), inset 0 1px 0 rgba(255,255,255,.92);
    position: relative;
    overflow: hidden;
    transition: all .18s ease;
}

    .dashboard-card[b-6ma1cshnoc]::before {
        content: "";
        position: absolute;
        inset: 0;
        border-radius: inherit;
        background: linear-gradient( 180deg, rgba(255,255,255,.55) 0%, rgba(255,255,255,.18) 40%, rgba(255,255,255,.05) 100% );
        pointer-events: none;
    }

    .dashboard-card:hover[b-6ma1cshnoc] {
        transform: translateY(-1px);
        box-shadow: 0 14px 36px rgba(15,23,42,.08), 0 28px 60px rgba(15,23,42,.08), inset 0 1px 0 rgba(255,255,255,.95);
    }

.profile-panel[b-6ma1cshnoc] {
    min-height: 200px;
    padding: 18px;
    display: grid;
    place-items: center;
    text-align: center;
}

.avatar[b-6ma1cshnoc] {
    width: 88px;
    height: 88px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    background: linear-gradient(135deg, #2563eb, #38bdf8);
    color: white;
    font-size: 28px;
    font-weight: 950;
    box-shadow: 0 18px 38px rgba(37,99,235,.22);
}

.profile-panel h2[b-6ma1cshnoc] {
    margin: 12px 0 2px;
    font-size: 20px;
    font-weight: 950;
    color: #0f172a;
}

.profile-panel p[b-6ma1cshnoc] {
    margin: 0 0 10px;
    color: #64748b;
    font-size: 13px;
}

.actions-panel[b-6ma1cshnoc] {
    padding: 16px;
    min-height: 0;
}

.card-head[b-6ma1cshnoc] {
    display: flex;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 12px;
}

    .card-head h2[b-6ma1cshnoc],
    .card-head h3[b-6ma1cshnoc] {
        margin: 0;
        color: #0f172a;
        font-weight: 950;
    }

    .card-head h2[b-6ma1cshnoc] {
        font-size: 20px;
    }

    .card-head h3[b-6ma1cshnoc] {
        font-size: 17px;
    }

    .card-head p[b-6ma1cshnoc] {
        margin: 3px 0 0;
        color: #64748b;
        font-size: 12px;
    }

.quick-action-list[b-6ma1cshnoc] {
    display: grid;
    gap: 10px;
}

[b-6ma1cshnoc] .quick-action.dxbs-button,
[b-6ma1cshnoc] .profile-button.dxbs-button,
[b-6ma1cshnoc] .student-button.dxbs-button,
[b-6ma1cshnoc] .bus-route-card-button.dxbs-button {
    border-radius: 14px !important;
    font-weight: 850 !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

[b-6ma1cshnoc] .quick-action.dxbs-button,
[b-6ma1cshnoc] .bus-route-card-button.dxbs-button {
    width: 100%;
    justify-content: flex-start !important;
    min-height: 42px !important;
}

[b-6ma1cshnoc] .quick-action.primary.dxbs-button,
[b-6ma1cshnoc] .profile-button.dxbs-button,
[b-6ma1cshnoc] .bus-route-card-button.dxbs-button {
    background: rgba(37,99,235,.88) !important;
    border-color: rgba(37,99,235,.72) !important;
    color: white !important;
    box-shadow: 0 14px 28px rgba(37,99,235,.16);
}

/* Bus route dashboard card */

.bus-route-panel[b-6ma1cshnoc] {
    display: grid;
    gap: 12px;
    align-content: start;
    min-height: 170px;
    padding: 16px;
}

.bus-card-head[b-6ma1cshnoc] {
    align-items: flex-start;
}

.bus-status-chip[b-6ma1cshnoc] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 24px;
    padding: 5px 8px;
    border-radius: 999px;
    font-size: 10px;
    font-weight: 950;
    white-space: nowrap;
}

    .bus-status-chip.active[b-6ma1cshnoc] {
        background: #dcfce7;
        color: #166534;
        border: 1px solid #bbf7d0;
    }

    .bus-status-chip.next[b-6ma1cshnoc] {
        background: #eff6ff;
        color: #1d4ed8;
        border: 1px solid #bfdbfe;
    }

    .bus-status-chip.empty[b-6ma1cshnoc],
    .bus-status-chip.loading[b-6ma1cshnoc] {
        background: #f1f5f9;
        color: #64748b;
        border: 1px solid #e2e8f0;
    }

.bus-route-state[b-6ma1cshnoc],
.bus-route-live-card[b-6ma1cshnoc] {
    display: grid;
    gap: 8px;
    padding: 14px;
    border-radius: 18px;
    background: rgba(248,250,252,.85);
    border: 1px solid rgba(226,232,240,.88);
    position: relative;
    z-index: 1;
}

    .bus-route-state strong[b-6ma1cshnoc],
    .bus-route-live-card strong[b-6ma1cshnoc] {
        color: #0f172a;
        font-size: 15px;
        font-weight: 950;
        line-height: 1.22;
    }

    .bus-route-state span[b-6ma1cshnoc],
    .bus-route-live-card p[b-6ma1cshnoc],
    .bus-route-live-card small[b-6ma1cshnoc] {
        color: #64748b;
        font-size: 12px;
        font-weight: 750;
        line-height: 1.4;
    }

    .bus-route-state.empty[b-6ma1cshnoc] {
        background: linear-gradient(135deg, rgba(239,246,255,.88), rgba(255,255,255,.78));
        border-color: #dbeafe;
    }

    .bus-route-live-card.active[b-6ma1cshnoc] {
        background: linear-gradient(135deg, rgba(240,253,244,.95), rgba(255,255,255,.78));
        border-color: #bbf7d0;
        box-shadow: 0 14px 32px rgba(34,197,94,.08);
    }

    .bus-route-live-card p[b-6ma1cshnoc] {
        margin: 0;
    }

.bus-route-student[b-6ma1cshnoc] {
    width: fit-content;
    padding: 4px 8px;
    border-radius: 999px;
    background: #eef2ff;
    color: #3730a3;
    font-size: 10px;
    font-weight: 950;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.bus-route-map-button[b-6ma1cshnoc] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    margin-top: 2px;
    padding: 9px 12px;
    border: 1px solid #2563eb;
    border-radius: 14px;
    background: #2563eb;
    color: #ffffff;
    font-size: 12px;
    font-weight: 950;
    text-decoration: none;
    box-shadow: 0 14px 28px rgba(37,99,235,.16);
    transition: transform .16s ease, background-color .16s ease, border-color .16s ease;
}

    .bus-route-map-button:hover[b-6ma1cshnoc] {
        transform: translateY(-1px);
        background: #1d4ed8;
        border-color: #1d4ed8;
        color: #ffffff;
        text-decoration: none;
    }

.scheduler-panel[b-6ma1cshnoc] {
    grid-area: scheduler;
    padding: 14px;
    height: 100%;
    overflow: hidden;
}

[b-6ma1cshnoc] .home-scheduler {
    height: clamp(460px, 70vh, 760px) !important;
    border-radius: 18px;
    overflow: hidden;
    background: rgba(255,255,255,.55) !important;
    backdrop-filter: blur(24px) saturate(180%);
    -webkit-backdrop-filter: blur(24px) saturate(180%);
    border: 1px solid rgba(255,255,255,.60);
    box-shadow: 0 8px 24px rgba(15,23,42,.05), inset 0 1px 0 rgba(255,255,255,.85);
}

    [b-6ma1cshnoc] .home-scheduler *,
    [b-6ma1cshnoc] .home-scheduler .dxbs-scheduler,
    [b-6ma1cshnoc] .home-scheduler .dxbl-scheduler {
        background-color: transparent !important;
    }

    [b-6ma1cshnoc] .home-scheduler table,
    [b-6ma1cshnoc] .home-scheduler td,
    [b-6ma1cshnoc] .home-scheduler th {
        background-color: rgba(255,255,255,.35) !important;
    }

.students-panel[b-6ma1cshnoc] {
    grid-area: students;
    padding: 12px 16px;
}

.student-list[b-6ma1cshnoc] {
    display: grid;
    gap: 7px;
}

.student-row[b-6ma1cshnoc] {
    display: grid;
    grid-template-columns: 44px 1fr auto;
    gap: 12px;
    align-items: center;
    padding: 8px 12px;
    border-radius: 16px;
    background: rgba(255,255,255,.62);
    border: 1px solid rgba(255,255,255,.70);
    backdrop-filter: blur(18px) saturate(180%);
    -webkit-backdrop-filter: blur(18px) saturate(180%);
    box-shadow: 0 6px 18px rgba(15,23,42,.04), inset 0 1px 0 rgba(255,255,255,.90);
    transition: all .18s ease;
}

    .student-row:hover[b-6ma1cshnoc] {
        transform: translateY(-1px);
        box-shadow: 0 10px 24px rgba(15,23,42,.06), inset 0 1px 0 rgba(255,255,255,.95);
    }

.student-avatar[b-6ma1cshnoc] {
    width: 44px;
    height: 44px;
    border-radius: 15px;
    display: grid;
    place-items: center;
    background: rgba(96,165,250,.14);
    color: #2563eb;
    font-weight: 950;
    border: 1px solid rgba(255,255,255,.75);
}

.student-row strong[b-6ma1cshnoc] {
    display: block;
    color: #0f172a;
    font-weight: 900;
}

.student-row span[b-6ma1cshnoc] {
    display: block;
    margin-top: 1px;
    color: #64748b;
    font-size: 12px;
}

[b-6ma1cshnoc] .content,
[b-6ma1cshnoc] main,
[b-6ma1cshnoc] article {
    padding-top: 0 !important;
    background: transparent !important;
}

@media (max-width: 1100px) {
    .parent-home-page[b-6ma1cshnoc] {
        height: auto;
        min-height: 100vh;
        padding: 16px;
        overflow: auto;
    }

    .parent-dashboard[b-6ma1cshnoc] {
        height: auto;
        display: block;
    }

    .left-stack[b-6ma1cshnoc] {
        display: grid;
        grid-template-columns: 1fr;
    }

    [b-6ma1cshnoc] .home-scheduler {
        height: 650px !important;
    }

    .dashboard-card[b-6ma1cshnoc] {
        margin-bottom: 16px;
    }
}

@media (max-width: 640px) {
    .parent-home-page[b-6ma1cshnoc] {
        height: auto;
        min-height: 100vh;
        padding: 16px;
        overflow: auto;
    }

    .student-row[b-6ma1cshnoc] {
        grid-template-columns: 44px 1fr;
    }

    [b-6ma1cshnoc] .student-button.dxbs-button {
        grid-column: 1 / -1;
        width: 100%;
    }

    .bus-card-head[b-6ma1cshnoc] {
        flex-direction: column;
        align-items: flex-start;
    }

    .bus-status-chip[b-6ma1cshnoc] {
        width: fit-content;
    }

    .bus-route-map-button[b-6ma1cshnoc] {
        width: 100%;
    }
}


/* =========================================================
   Cleaner bus-route card message and ETA emphasis
   ========================================================= */

.bus-route-eta[b-6ma1cshnoc] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    align-items: center;
    padding: 9px 11px;
    border: 1px solid #bfdbfe;
    border-radius: 14px;
    background: #eff6ff;
}

    .bus-route-eta span[b-6ma1cshnoc] {
        color: #1d4ed8;
        font-size: 11px;
        font-weight: 950;
        letter-spacing: .04em;
        text-transform: uppercase;
    }

    .bus-route-eta strong[b-6ma1cshnoc] {
        color: #0f172a;
        font-size: 20px;
        font-weight: 950;
        letter-spacing: -.035em;
        line-height: 1;
        font-variant-numeric: tabular-nums;
    }

.bus-route-live-card.active .bus-route-eta[b-6ma1cshnoc] {
    border-color: #bbf7d0;
    background: #dcfce7;
}

    .bus-route-live-card.active .bus-route-eta span[b-6ma1cshnoc] {
        color: #166534;
    }

@media (max-width: 640px) {
    .bus-route-eta[b-6ma1cshnoc] {
        grid-template-columns: 1fr;
        gap: 4px;
    }

        .bus-route-eta strong[b-6ma1cshnoc] {
            font-size: 22px;
        }
}


/* =========================================================
   School off-day state for bus tracker
   ========================================================= */

.bus-status-chip.holiday[b-6ma1cshnoc] {
    background: #fef3c7;
    color: #92400e;
    border: 1px solid #fde68a;
}

.bus-route-state.holiday[b-6ma1cshnoc] {
    background: linear-gradient(135deg, #fffbeb, #ffffff);
    border-color: #fde68a;
}

    .bus-route-state.holiday strong[b-6ma1cshnoc] {
        color: #92400e;
        font-size: 18px;
    }

    .bus-route-state.holiday small[b-6ma1cshnoc] {
        color: #64748b;
        font-size: 12px;
        font-weight: 800;
    }


/* =========================================================
   Read-only, soft-colored dashboard scheduler
   ========================================================= */

[b-6ma1cshnoc] .home-scheduler .dxbl-sc-apt,
[b-6ma1cshnoc] .home-scheduler .dxbl-scheduler-apt,
[b-6ma1cshnoc] .home-scheduler .dxbs-sc-apt,
[b-6ma1cshnoc] .home-scheduler .dxbs-scheduler-apt {
    border-radius: 10px !important;
    font-weight: 750 !important;
    cursor: default !important;
}

[b-6ma1cshnoc] .home-scheduler .home-scheduler-label-holiday,
[b-6ma1cshnoc] .home-scheduler-label-holiday {
    background: #fef3c7 !important;
    border-color: #fde68a !important;
}

[b-6ma1cshnoc] .home-scheduler .home-scheduler-label-holiday-text,
[b-6ma1cshnoc] .home-scheduler-label-holiday-text {
    color: #92400e !important;
}

[b-6ma1cshnoc] .home-scheduler .home-scheduler-label-meeting,
[b-6ma1cshnoc] .home-scheduler-label-meeting {
    background: #dbeafe !important;
    border-color: #bfdbfe !important;
}

[b-6ma1cshnoc] .home-scheduler .home-scheduler-label-meeting-text,
[b-6ma1cshnoc] .home-scheduler-label-meeting-text {
    color: #1e40af !important;
}

[b-6ma1cshnoc] .home-scheduler .home-scheduler-label-deadline,
[b-6ma1cshnoc] .home-scheduler-label-deadline {
    background: #fee2e2 !important;
    border-color: #fecaca !important;
}

[b-6ma1cshnoc] .home-scheduler .home-scheduler-label-deadline-text,
[b-6ma1cshnoc] .home-scheduler-label-deadline-text {
    color: #991b1b !important;
}

[b-6ma1cshnoc] .home-scheduler .home-scheduler-label-info,
[b-6ma1cshnoc] .home-scheduler-label-info {
    background: #e0f2fe !important;
    border-color: #bae6fd !important;
}

[b-6ma1cshnoc] .home-scheduler .home-scheduler-label-info-text,
[b-6ma1cshnoc] .home-scheduler-label-info-text {
    color: #075985 !important;
}

[b-6ma1cshnoc] .home-scheduler .home-scheduler-label-general,
[b-6ma1cshnoc] .home-scheduler-label-general {
    background: #ede9fe !important;
    border-color: #ddd6fe !important;
}

[b-6ma1cshnoc] .home-scheduler .home-scheduler-label-general-text,
[b-6ma1cshnoc] .home-scheduler-label-general-text {
    color: #5b21b6 !important;
}

/* Hide edit/delete affordances in appointment popup if a DevExpress theme still renders them visually. */
[b-6ma1cshnoc] .home-scheduler .dxbl-scheduler-apt-tooltip button[title*="Edit"],
[b-6ma1cshnoc] .home-scheduler .dxbl-scheduler-apt-tooltip button[title*="Delete"],
[b-6ma1cshnoc] .home-scheduler .dxbs-scheduler-apt-tooltip button[title*="Edit"],
[b-6ma1cshnoc] .home-scheduler .dxbs-scheduler-apt-tooltip button[title*="Delete"] {
    display: none !important;
}


/* =========================================================
   Scheduler student resource selector
   ========================================================= */

.scheduler-head[b-6ma1cshnoc] {
    align-items: flex-start;
}

.scheduler-student-filter[b-6ma1cshnoc] {
    display: grid;
    gap: 6px;
    min-width: min(300px, 100%);
}

    .scheduler-student-filter span[b-6ma1cshnoc] {
        color: #64748b;
        font-size: 11px;
        font-weight: 900;
        letter-spacing: .04em;
        text-transform: uppercase;
    }

[b-6ma1cshnoc] .scheduler-student-combo,
[b-6ma1cshnoc] .scheduler-student-combo .dxbl-text-edit,
[b-6ma1cshnoc] .scheduler-student-combo .dxbl-edit,
[b-6ma1cshnoc] .scheduler-student-combo .dxbs-editor,
[b-6ma1cshnoc] .scheduler-student-combo .dxbs-editor-container {
    width: 100%;
    border-radius: 14px !important;
}

    [b-6ma1cshnoc] .scheduler-student-combo input,
    [b-6ma1cshnoc] .scheduler-student-combo input[readonly],
    [b-6ma1cshnoc] .scheduler-student-combo input[role="combobox"],
    [b-6ma1cshnoc] .scheduler-student-combo input.dxbl-text-edit-input,
    [b-6ma1cshnoc] .scheduler-student-combo input.form-control {
        min-height: 38px !important;
        background-color: rgba(255,255,255,.84) !important;
        color: #0f172a !important;
        -webkit-text-fill-color: #0f172a !important;
        font-weight: 850 !important;
        cursor: pointer !important;
    }

/* Soft appointment colors for student activities */
[b-6ma1cshnoc] .home-scheduler .home-scheduler-label-activity-blue,
[b-6ma1cshnoc] .home-scheduler-label-activity-blue {
    background: #dbeafe !important;
    border-color: #bfdbfe !important;
}

[b-6ma1cshnoc] .home-scheduler .home-scheduler-label-activity-blue-text,
[b-6ma1cshnoc] .home-scheduler-label-activity-blue-text {
    color: #1e40af !important;
}

[b-6ma1cshnoc] .home-scheduler .home-scheduler-label-activity-green,
[b-6ma1cshnoc] .home-scheduler-label-activity-green {
    background: #dcfce7 !important;
    border-color: #bbf7d0 !important;
}

[b-6ma1cshnoc] .home-scheduler .home-scheduler-label-activity-green-text,
[b-6ma1cshnoc] .home-scheduler-label-activity-green-text {
    color: #166534 !important;
}

[b-6ma1cshnoc] .home-scheduler .home-scheduler-label-activity-purple,
[b-6ma1cshnoc] .home-scheduler-label-activity-purple {
    background: #ede9fe !important;
    border-color: #ddd6fe !important;
}

[b-6ma1cshnoc] .home-scheduler .home-scheduler-label-activity-purple-text,
[b-6ma1cshnoc] .home-scheduler-label-activity-purple-text {
    color: #5b21b6 !important;
}

[b-6ma1cshnoc] .home-scheduler .home-scheduler-label-activity-orange,
[b-6ma1cshnoc] .home-scheduler-label-activity-orange {
    background: #ffedd5 !important;
    border-color: #fed7aa !important;
}

[b-6ma1cshnoc] .home-scheduler .home-scheduler-label-activity-orange-text,
[b-6ma1cshnoc] .home-scheduler-label-activity-orange-text {
    color: #9a3412 !important;
}

/* Soft resource styling by student */
[b-6ma1cshnoc] .home-scheduler .home-resource-blue,
[b-6ma1cshnoc] .home-resource-blue {
    background: #eff6ff !important;
    border-color: #bfdbfe !important;
}

[b-6ma1cshnoc] .home-scheduler .home-resource-green,
[b-6ma1cshnoc] .home-resource-green {
    background: #f0fdf4 !important;
    border-color: #bbf7d0 !important;
}

[b-6ma1cshnoc] .home-scheduler .home-resource-purple,
[b-6ma1cshnoc] .home-resource-purple {
    background: #f5f3ff !important;
    border-color: #ddd6fe !important;
}

[b-6ma1cshnoc] .home-scheduler .home-resource-orange,
[b-6ma1cshnoc] .home-resource-orange {
    background: #fff7ed !important;
    border-color: #fed7aa !important;
}

[b-6ma1cshnoc] .home-scheduler .home-resource-pink,
[b-6ma1cshnoc] .home-resource-pink {
    background: #fdf2f8 !important;
    border-color: #fbcfe8 !important;
}

[b-6ma1cshnoc] .home-scheduler .home-scheduler-resource-text,
[b-6ma1cshnoc] .home-scheduler-resource-text {
    color: #334155 !important;
    font-weight: 850 !important;
}

@media (max-width: 760px) {
    .scheduler-head[b-6ma1cshnoc] {
        display: grid;
    }

    .scheduler-student-filter[b-6ma1cshnoc] {
        min-width: 0;
    }
}


/* =========================================================
   Scheduler built-in resource navigator
   ========================================================= */

/*
   The scheduler now uses the built-in DevExpress Resource Navigator instead of
   the separate page dropdown. In Greek UI, this is the "Μαθητές" selector.
*/

[b-6ma1cshnoc] .home-scheduler [title="Resources"],
[b-6ma1cshnoc] .home-scheduler [aria-label="Resources"] {
    font-size: 0 !important;
}

    [b-6ma1cshnoc] .home-scheduler [title="Resources"]::after,
    [b-6ma1cshnoc] .home-scheduler [aria-label="Resources"]::after {
        content: "Μαθητές";
        font-size: 14px;
        font-weight: 850;
        color: #334155;
    }

/* In case DevExpress renders the toolbar item as text instead of title/aria. */
[b-6ma1cshnoc] .home-scheduler .dxbl-toolbar-item:has([title="Resources"]) {
    font-size: 0 !important;
}

    [b-6ma1cshnoc] .home-scheduler .dxbl-toolbar-item:has([title="Resources"])::after {
        content: "Μαθητές";
        font-size: 14px;
        font-weight: 850;
        color: #334155;
    }
/* _content/Arsakeio_Portal/Components/Pages/Loginscreen.razor.rz.scp.css */
/* Full-page soft background */
.login-page[b-p60fveo7g1] {
    min-height: 100dvh; /* better on mobile Safari than 100vh */
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 32px;
    background: transparent; /* let BackgroundPage show through */
}

/* Big centered card */
.login-card[b-p60fveo7g1] {
    width: 1040px;
    height: 560px;
    border-radius: 26px;
    overflow: hidden;
    display: grid;
    grid-template-columns: 1fr 1fr;
    box-shadow: 0 24px 60px rgba(16,24,40,.16);
    background: #fff;
}

/* ============================================================
   LEFT PANEL — blue background + green accent
   ============================================================ */
.card-left[b-p60fveo7g1] {
    position: relative;
    overflow: hidden;
    color: #fff;
    background: linear-gradient(135deg, #6ea8ff 0%, #3f7dff 55%, #2a6ae9 100%);
}

    /* Soft blobs (simple, no tech lines) */
    .card-left[b-p60fveo7g1]::before {
        content: "";
        position: absolute;
        inset: -140px -140px -140px -140px;
        background: radial-gradient(circle 340px at 78% 18%, rgba(255,255,255,.18) 0%, rgba(255,255,255,0) 70%), radial-gradient(circle 360px at 20% 92%, rgba(61,220,151,.28) 0%, rgba(61,220,151,0) 72%), radial-gradient(circle 260px at 92% 92%, rgba(255,255,255,.10) 0%, rgba(255,255,255,0) 68%);
        z-index: 0;
        pointer-events: none;
    }

    /* Light depth/vignette */
    .card-left[b-p60fveo7g1]::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(180deg, rgba(255,255,255,.06) 0%, rgba(0,0,0,.10) 100%);
        opacity: .55;
        z-index: 0;
        pointer-events: none;
    }

/* Left content */
.left-inner[b-p60fveo7g1] {
    position: relative;
    z-index: 2;
    height: 100%;
    padding: 74px 56px 48px 56px;
    display: flex;
    flex-direction: column;
    justify-content: center; /* ✅ center vertically */
    align-items: center; /* ✅ center horizontally */
    text-align: center; /* ✅ center text */
}

/* Brand stays top-left */
.brand[b-p60fveo7g1] {
    position: absolute;
    top: 26px;
    left: 30px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-weight: 700;
    font-size: .78rem;
    letter-spacing: .08em;
    text-transform: uppercase;
    opacity: .95;
    margin: 0;
    line-height: 1.1;
}

    .brand[b-p60fveo7g1]::before {
        content: "";
        width: 10px;
        height: 10px;
        border-radius: 999px;
        background: rgba(255,255,255,.9);
        box-shadow: 0 0 0 4px rgba(255,255,255,.22);
    }

    .brand .sub[b-p60fveo7g1] {
        font-weight: 500;
        opacity: .85;
        font-size: .78rem;
        letter-spacing: .06em;
    }

/* Main headline */
.card-left h2[b-p60fveo7g1] {
    margin: 0 0 12px;
    font-weight: 900;
    letter-spacing: 1px;
    line-height: 1.05;
    font-size: clamp(1.95rem, 3.1vw, 2.75rem);
    white-space: nowrap;
}

    /* keep underline removed */
    .card-left h2[b-p60fveo7g1]::after {
        content: none !important;
        display: none !important;
    }

.card-left p[b-p60fveo7g1] {
    margin: 10px 0 0;
    opacity: .92;
    line-height: 1.65;
    max-width: 360px;
    font-size: .95rem;
}

/* Green diagonal accent only */
.wave[b-p60fveo7g1] {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: none;
}

    .wave[b-p60fveo7g1]::before {
        content: "";
        position: absolute;
        right: -120px;
        bottom: -140px;
        width: 520px;
        height: 520px;
        transform: rotate(-18deg);
        background: linear-gradient(135deg, rgba(61,220,151,.32) 0 12px, transparent 12px 36px, rgba(61,220,151,.20) 36px 44px, transparent 44px 100%);
        opacity: .9;
        filter: blur(.2px);
    }

    .wave[b-p60fveo7g1]::after {
        content: "";
        position: absolute;
        right: -140px;
        bottom: -170px;
        width: 560px;
        height: 560px;
        transform: rotate(-18deg);
        background: linear-gradient(135deg, rgba(255,255,255,.12) 0 10px, transparent 10px 34px, rgba(255,255,255,.08) 34px 40px, transparent 40px 100%);
        opacity: .55;
    }

/* ============================================================
   RIGHT PANEL (unchanged)
   ============================================================ */
.card-right[b-p60fveo7g1] {
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
}

.right-inner[b-p60fveo7g1] {
    width: 100%;
    max-width: 420px;
    padding: 36px 44px;
    display: flex;
    flex-direction: column;
    align-items: stretch;
}

.title[b-p60fveo7g1] {
    margin: 0;
    text-align: center;
    font-weight: 800;
    letter-spacing: .5px;
}

.subtitle[b-p60fveo7g1] {
    text-align: center;
    font-size: .85rem;
    color: #64748b;
    margin: 4px 0 18px;
}

/* Labels + spacing */
.field-label[b-p60fveo7g1] {
    display: block;
    text-align: center;
    font-size: .9rem;
    color: #64748b;
    margin: 0 0 6px;
}

.form-group[b-p60fveo7g1] {
    margin-bottom: 16px;
}

/* ---------- Pill inputs ---------- */
.pill-input[b-p60fveo7g1] {
    display: flex;
    align-items: center;
    border: 1.5px solid #e5e7eb;
    border-radius: 9999px;
    background: #fff;
    padding: 6px 14px;
    transition: border-color .15s, box-shadow .15s;
}

    .pill-input:focus-within[b-p60fveo7g1] {
        border-color: #93b4ff;
        box-shadow: 0 0 0 4px rgba(59,130,246,.15);
    }

    .pill-input input[b-p60fveo7g1] {
        flex: 1 1 auto;
        width: 100%;
        height: 34px;
        border: 0;
        outline: 0;
        background: transparent;
        font-size: 1rem;
        padding: 0;
    }

        .pill-input input[b-p60fveo7g1]::placeholder {
            color: #a1a1aa;
            font-size: 0.70rem;
        }

/* Login button */
.btn-row[b-p60fveo7g1] {
    display: flex;
    justify-content: stretch;
    margin-top: 6px;
}

.login-btn[b-p60fveo7g1] {
    height: 48px;
    width: 100%;
    min-width: 0;
    border-radius: 9999px;
    border: 0;
    font-weight: 600;
    cursor: pointer;
    color: #fff;
    background: linear-gradient(90deg,#4e8ef7,#62a6ff);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

    .login-btn:focus[b-p60fveo7g1] {
        box-shadow: 0 0 0 4px rgba(59,130,246,.2);
    }

.login-btn-text[b-p60fveo7g1] {
    line-height: 1;
}

.error[b-p60fveo7g1] {
    color: #ef4444;
    margin: 4px 0 6px;
}

/* Simple Microsoft logo (4 squares) */
.ms-logo[b-p60fveo7g1] {
    width: 18px;
    height: 18px;
    display: inline-block;
    background: linear-gradient(#F25022 0 0) 0 0 / 48% 48% no-repeat, linear-gradient(#7FBA00 0 0) 100% 0 / 48% 48% no-repeat, linear-gradient(#00A4EF 0 0) 0 100% / 48% 48% no-repeat, linear-gradient(#FFB900 0 0) 100% 100% / 48% 48% no-repeat;
    border-radius: 4px;
}

/* Ensure reCAPTCHA badge is visible */
.grecaptcha-badge[b-p60fveo7g1] {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: fixed !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 2147483647 !important;
}

/* ============================================================
   ROLE SELECTION MODAL
   ============================================================ */
.role-dialog-backdrop[b-p60fveo7g1] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.55);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
}

.role-dialog[b-p60fveo7g1] {
    background: #ffffff;
    border-radius: 18px;
    padding: 24px 28px;
    width: min(420px, 90vw);
    box-shadow: 0 22px 60px rgba(15, 23, 42, 0.35);
    animation: role-dialog-pop-b-p60fveo7g1 .18s ease-out;
}

    .role-dialog h4[b-p60fveo7g1] {
        margin: 0 0 8px;
        font-weight: 700;
        font-size: 1.1rem;
        color: #0f172a;
    }

    .role-dialog p[b-p60fveo7g1] {
        margin: 0 0 16px;
        font-size: .9rem;
        color: #64748b;
    }

.pill-input-select[b-p60fveo7g1] {
    width: 100%;
    border-radius: 9999px;
    border: 1.5px solid #e5e7eb;
    background: #fff;
    padding: 8px 14px;
    font-size: .95rem;
    outline: 0;
    transition: border-color .15s, box-shadow .15s, background-color .15s;
    appearance: none;
    background-image: linear-gradient(45deg, transparent 50%, #9ca3af 50%), linear-gradient(135deg, #9ca3af 50%, transparent 50%);
    background-position: calc(100% - 18px) 50%, calc(100% - 13px) 50%;
    background-size: 6px 6px, 6px 6px;
    background-repeat: no-repeat;
    cursor: pointer;
}

    .pill-input-select:focus[b-p60fveo7g1] {
        border-color: #93b4ff;
        box-shadow: 0 0 0 4px rgba(59,130,246,.15);
    }

.dialog-buttons[b-p60fveo7g1] {
    margin-top: 18px;
    display: flex;
    gap: 8px;
    justify-content: flex-end;
}

    .dialog-buttons .pill-btn[b-p60fveo7g1] {
        border-radius: 9999px;
        padding: 8px 20px;
        font-size: .9rem;
        font-weight: 600;
        border: 1px solid #e5e7eb;
        background: #ffffff;
        color: #111827;
        cursor: pointer;
        transition: background-color .15s, box-shadow .15s, border-color .15s, transform .08s;
    }

        .dialog-buttons .pill-btn:hover[b-p60fveo7g1] {
            background: #f9fafb;
            box-shadow: 0 2px 6px rgba(15,23,42,0.12);
            transform: translateY(-1px);
        }

        .dialog-buttons .pill-btn.secondary[b-p60fveo7g1] {
            background: #ef4444;
            border-color: #ef4444;
            color: #ffffff;
        }

            .dialog-buttons .pill-btn.secondary:hover[b-p60fveo7g1] {
                background: #dc2626;
                border-color: #dc2626;
                box-shadow: 0 2px 8px rgba(248,113,113,0.45);
            }

@keyframes role-dialog-pop-b-p60fveo7g1 {
    from {
        opacity: 0;
        transform: translateY(8px) scale(0.98);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

/* ============================================================
   MOBILE: show only the white card, SMALLER + CENTERED
   ============================================================ */
@media (max-width: 900px) {
    .login-page[b-p60fveo7g1] {
        padding: 18px;
    }

    .login-card[b-p60fveo7g1] {
        grid-template-columns: 1fr;
        width: min(92vw, 440px);
        height: auto;
        border-radius: 22px;
    }

    .card-left[b-p60fveo7g1] {
        display: none;
    }

    .right-inner[b-p60fveo7g1] {
        max-width: none;
        padding: 26px 22px;
    }

    .pill-input input[b-p60fveo7g1] {
        font-size: 16px;
    }
}

/* ============================================================
   Parent password reminder
   ============================================================ */

.forgot-password-link[b-p60fveo7g1] {
    display: inline-flex;
    align-self: center;
    justify-content: center;
    margin: 8px auto 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: #2563eb;
    font-size: .82rem;
    font-weight: 700;
    cursor: pointer;
    text-decoration: none;
}

    .forgot-password-link:hover[b-p60fveo7g1] {
        color: #1d4ed8;
        text-decoration: underline;
    }

    .forgot-password-link:disabled[b-p60fveo7g1] {
        opacity: .55;
        cursor: default;
        text-decoration: none;
    }

.recovery-dialog p strong[b-p60fveo7g1] {
    color: #1d4ed8;
}

.recovery-success[b-p60fveo7g1] {
    margin: 6px 0 10px;
    padding: 10px 12px;
    border-radius: 14px;
    border: 1px solid #bbf7d0;
    background: #f0fdf4;
    color: #166534;
    font-size: .86rem;
    font-weight: 700;
    line-height: 1.35;
}

.recovery-note[b-p60fveo7g1] {
    margin: 8px 8px 0;
    color: #64748b;
    font-size: .78rem;
    line-height: 1.4;
    text-align: center;
}
/* _content/Arsakeio_Portal/Components/Pages/Maintenance.razor.rz.scp.css */
.maintenance-page[b-974wjug9hx] {
    min-height: 100dvh;
    display: grid;
    place-items: center;
    padding: clamp(22px, 4vw, 56px);
    background: radial-gradient(circle at 18% 16%, rgba(37, 99, 235, .16), transparent 34%), radial-gradient(circle at 86% 82%, rgba(56, 189, 248, .15), transparent 32%), linear-gradient(135deg, #f8fafc 0%, #eef6ff 48%, #ffffff 100%);
    overflow: hidden;
}

.maintenance-card[b-974wjug9hx] {
    position: relative;
    width: min(1040px, 100%);
    min-height: 520px;
    display: grid;
    grid-template-columns: minmax(280px, .9fr) minmax(0, 1.1fr);
    gap: clamp(24px, 4vw, 52px);
    align-items: center;
    padding: clamp(26px, 4vw, 52px);
    border-radius: 34px;
    background: rgba(255, 255, 255, .82);
    border: 1px solid rgba(226, 232, 240, .92);
    box-shadow: 0 26px 80px rgba(15, 23, 42, .10), inset 0 1px 0 rgba(255, 255, 255, .95);
    backdrop-filter: blur(22px) saturate(170%);
    -webkit-backdrop-filter: blur(22px) saturate(170%);
    overflow: hidden;
}

    .maintenance-card[b-974wjug9hx]::before {
        content: "";
        position: absolute;
        inset: 0;
        border-radius: inherit;
        background: linear-gradient(180deg, rgba(255,255,255,.56), rgba(255,255,255,.08)), radial-gradient(circle at 88% 10%, rgba(79, 99, 230, .10), transparent 30%);
        pointer-events: none;
    }

.maintenance-visual[b-974wjug9hx],
.maintenance-content[b-974wjug9hx] {
    position: relative;
    z-index: 1;
}

.maintenance-visual[b-974wjug9hx] {
    min-height: 340px;
    display: grid;
    place-items: center;
}

.maintenance-icon[b-974wjug9hx] {
    position: relative;
    z-index: 2;
    width: clamp(150px, 18vw, 230px);
    height: clamp(150px, 18vw, 230px);
    display: grid;
    place-items: center;
    border-radius: 999px;
    background: linear-gradient(135deg, rgba(79, 99, 230, .95), rgba(59, 130, 246, .92)), #4f63e6;
    color: #ffffff;
    font-size: clamp(72px, 8vw, 116px);
    font-weight: 950;
    box-shadow: 0 30px 70px rgba(37, 99, 235, .30), inset 0 1px 0 rgba(255, 255, 255, .45);
}

    .maintenance-icon span[b-974wjug9hx] {
        transform: translateY(-3px);
    }

.orb[b-974wjug9hx] {
    position: absolute;
    border-radius: 999px;
    filter: blur(.2px);
    opacity: .78;
}

.orb-one[b-974wjug9hx] {
    width: 280px;
    height: 280px;
    background: #dbeafe;
    transform: translate(-76px, -44px);
}

.orb-two[b-974wjug9hx] {
    width: 190px;
    height: 190px;
    background: #e0f2fe;
    transform: translate(88px, 94px);
}

.maintenance-content[b-974wjug9hx] {
    display: grid;
    gap: 18px;
}

.maintenance-pill[b-974wjug9hx] {
    width: fit-content;
    display: inline-flex;
    align-items: center;
    padding: 8px 14px;
    border-radius: 999px;
    background: #eff6ff;
    color: #1d4ed8;
    border: 1px solid #bfdbfe;
    font-size: 12px;
    font-weight: 950;
    letter-spacing: .03em;
}

.maintenance-content h1[b-974wjug9hx] {
    margin: 0;
    color: #0f172a;
    font-size: clamp(34px, 4.4vw, 58px);
    font-weight: 950;
    letter-spacing: -.055em;
    line-height: .98;
}

.lead[b-974wjug9hx] {
    max-width: 620px;
    margin: 0;
    color: #475569;
    font-size: clamp(16px, 1.3vw, 19px);
    font-weight: 750;
    line-height: 1.65;
}

.maintenance-info-grid[b-974wjug9hx] {
    display: grid;
    gap: 12px;
    margin-top: 4px;
}

.maintenance-info-item[b-974wjug9hx] {
    padding: 16px 18px;
    border-radius: 20px;
    border: 1px solid rgba(226, 232, 240, .92);
    background: rgba(248, 250, 252, .82);
}

    .maintenance-info-item strong[b-974wjug9hx] {
        display: block;
        color: #0f172a;
        font-size: 14px;
        font-weight: 950;
    }

    .maintenance-info-item span[b-974wjug9hx] {
        display: block;
        margin-top: 4px;
        color: #64748b;
        font-size: 13px;
        font-weight: 760;
        line-height: 1.45;
    }

@media (max-width: 840px) {
    .maintenance-card[b-974wjug9hx] {
        grid-template-columns: 1fr;
        min-height: 0;
        text-align: center;
    }

    .maintenance-visual[b-974wjug9hx] {
        min-height: 220px;
    }

    .maintenance-content[b-974wjug9hx],
    .maintenance-pill[b-974wjug9hx] {
        justify-items: center;
        margin-inline: auto;
    }

    .maintenance-info-item[b-974wjug9hx] {
        text-align: left;
    }
}

@media (max-width: 520px) {
    .maintenance-page[b-974wjug9hx] {
        padding: 16px;
    }

    .maintenance-card[b-974wjug9hx] {
        border-radius: 26px;
        padding: 24px;
    }

    .maintenance-visual[b-974wjug9hx] {
        min-height: 170px;
    }
}
/* _content/Arsakeio_Portal/Components/Pages/PRPAActivities.razor.rz.scp.css */
.activities-page[b-c7uvo7oair] {
    min-height: 100vh;
    padding: clamp(16px, 2.4vw, 34px);
    overflow-x: hidden;
    background: #ffffff;
}

.activities-form-enter[b-c7uvo7oair] {
    animation: activitiesSlideForm-b-c7uvo7oair .7s cubic-bezier(.22, 1, .36, 1) both;
    will-change: transform, opacity;
}

@keyframes activitiesSlideForm-b-c7uvo7oair {
    from {
        opacity: 0;
        transform: translateX(90px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.activities-shell[b-c7uvo7oair] {
    width: min(100%, 1440px);
    margin: 0 auto;
    display: grid;
    gap: clamp(16px, 1.5vw, 22px);
}

.activities-hero[b-c7uvo7oair],
.activity-card[b-c7uvo7oair],
.state-card[b-c7uvo7oair],
.activities-toolbar[b-c7uvo7oair] {
    border: 1px solid rgba(226, 232, 240, .88);
    background: rgba(255, 255, 255, .92);
    box-shadow: 0 22px 60px rgba(15, 23, 42, .07);
}

.activities-hero[b-c7uvo7oair] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    padding: clamp(22px, 2vw, 30px);
    border-radius: 28px;
}

.eyebrow[b-c7uvo7oair] {
    display: inline-flex;
    padding: 7px 13px;
    border-radius: 999px;
    background: rgba(219, 234, 254, .9);
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 900;
    margin-bottom: 12px;
}

.activities-hero h1[b-c7uvo7oair] {
    margin: 0;
    color: #0f172a;
    font-size: clamp(34px, 3.2vw, 56px);
    font-weight: 950;
    letter-spacing: -.05em;
    line-height: .98;
}

.activities-hero p[b-c7uvo7oair] {
    max-width: 850px;
    margin: 10px 0 0;
    color: #64748b;
    font-size: 16px;
    line-height: 1.55;
}

.secondary-button[b-c7uvo7oair] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 10px 18px;
    border: 1px solid rgba(226, 232, 240, .95);
    border-radius: 999px;
    background: #ffffff;
    color: #334155;
    font-family: inherit;
    font-size: 13px;
    font-weight: 900;
    cursor: pointer;
    transition: transform .16s ease, border-color .16s ease, background-color .16s ease;
}

    .secondary-button.small[b-c7uvo7oair] {
        min-height: 38px;
        padding: 8px 15px;
    }

    .secondary-button:hover:not(:disabled)[b-c7uvo7oair] {
        transform: translateY(-1px);
        border-color: #cbd5e1;
        background: #f8fafc;
    }

    .secondary-button:disabled[b-c7uvo7oair] {
        cursor: not-allowed;
        opacity: .58;
    }

.activities-toolbar[b-c7uvo7oair] {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 18px;
    padding: 18px 20px;
    border-radius: 22px;
}

.toolbar-selectors[b-c7uvo7oair] {
    display: flex;
    align-items: flex-end;
    gap: 14px;
    flex-wrap: wrap;
}

.toolbar-field[b-c7uvo7oair] {
    min-width: 260px;
}

    .toolbar-field.student-field[b-c7uvo7oair] {
        min-width: min(520px, 48vw);
    }

.toolbar-label[b-c7uvo7oair] {
    display: block;
    margin-bottom: 9px;
    color: #64748b;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .03em;
    text-transform: uppercase;
}

[b-c7uvo7oair] .activities-selector-combo,
[b-c7uvo7oair] .activities-selector-combo .dxbl-text-edit,
[b-c7uvo7oair] .activities-selector-combo .dxbl-edit {
    width: 100%;
    border-radius: 16px !important;
}

    [b-c7uvo7oair] .activities-selector-combo input,
    [b-c7uvo7oair] .activities-selector-combo input[readonly],
    [b-c7uvo7oair] .activities-selector-combo input[role="combobox"],
    [b-c7uvo7oair] .activities-selector-combo input.dxbl-text-edit-input {
        min-height: 42px !important;
        background-color: #ffffff !important;
        color: #0f172a !important;
        -webkit-text-fill-color: #0f172a !important;
        font-weight: 850 !important;
        cursor: pointer !important;
    }

.student-option-item[b-c7uvo7oair],
.student-option-edit[b-c7uvo7oair] {
    display: grid;
    gap: 2px;
    color: inherit;
}

    .student-option-item strong[b-c7uvo7oair],
    .student-option-edit[b-c7uvo7oair] {
        font-size: 13px;
        font-weight: 950;
        color: inherit;
        -webkit-text-fill-color: currentColor;
    }

[b-c7uvo7oair] .dxbl-listbox-item-selected .student-option-item,
[b-c7uvo7oair] .dxbl-listbox-item-selected .student-option-item strong,
[b-c7uvo7oair] .dxbl-listbox-item.dxbl-selected .student-option-item,
[b-c7uvo7oair] .dxbl-listbox-item.dxbl-selected .student-option-item strong,
[b-c7uvo7oair] .dxbl-listbox-item[aria-selected="true"] .student-option-item,
[b-c7uvo7oair] .dxbl-listbox-item[aria-selected="true"] .student-option-item strong,
[b-c7uvo7oair] .dxbl-listbox-item.dxbl-focused .student-option-item,
[b-c7uvo7oair] .dxbl-listbox-item.dxbl-focused .student-option-item strong,
[b-c7uvo7oair] .dxbl-listbox-item:focus .student-option-item,
[b-c7uvo7oair] .dxbl-listbox-item:focus .student-option-item strong {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.activities-tabs[b-c7uvo7oair] {
    display: flex;
    gap: 8px;
    padding: 6px;
    border: 1px solid #e2e8f0;
    border-radius: 999px;
    background: #f8fafc;
    width: fit-content;
}

.activities-tab[b-c7uvo7oair] {
    min-height: 38px;
    padding: 8px 18px;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: #475569;
    font-family: inherit;
    font-size: 13px;
    font-weight: 900;
    cursor: pointer;
    transition: .16s ease;
}

    .activities-tab.active[b-c7uvo7oair] {
        background: #2563eb;
        color: #ffffff;
        box-shadow: 0 10px 20px rgba(37, 99, 235, .22);
    }

.activity-request-layout[b-c7uvo7oair] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 390px;
    gap: clamp(14px, 1.2vw, 18px);
    align-items: start;
}

.activity-card[b-c7uvo7oair] {
    border-radius: 24px;
    padding: clamp(18px, 1.5vw, 22px);
    overflow: hidden;
}

.card-header[b-c7uvo7oair] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
    margin-bottom: 16px;
}

    .card-header h2[b-c7uvo7oair] {
        margin: 0;
        color: #0f172a;
        font-size: 20px;
        font-weight: 950;
        letter-spacing: -.025em;
    }

    .card-header p[b-c7uvo7oair] {
        max-width: 760px;
        margin: 6px 0 0;
        color: #64748b;
        font-size: 14px;
        line-height: 1.5;
    }

.compact-header[b-c7uvo7oair] {
    margin-bottom: 12px;
}

.grid-total[b-c7uvo7oair] {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 7px 12px;
    border-radius: 999px;
    background: #eff6ff;
    color: #1d4ed8;
    font-size: 13px;
    font-weight: 950;
}

.step-strip[b-c7uvo7oair] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-bottom: 18px;
}

.step-pill[b-c7uvo7oair] {
    display: flex;
    align-items: center;
    gap: 9px;
    min-height: 42px;
    padding: 9px 12px;
    border-radius: 999px;
    background: #f1f5f9;
    color: #64748b;
    font-size: 13px;
    font-weight: 900;
}

    .step-pill span[b-c7uvo7oair] {
        display: grid;
        place-items: center;
        width: 24px;
        height: 24px;
        border-radius: 999px;
        background: #ffffff;
        color: inherit;
        font-size: 12px;
        font-weight: 950;
    }

    .step-pill.active[b-c7uvo7oair] {
        background: #2563eb;
        color: #ffffff;
    }

.activity-selector-grid[b-c7uvo7oair] {
    display: grid;
    gap: 14px;
    margin-bottom: 16px;
}

.form-field[b-c7uvo7oair] {
    display: grid;
    gap: 8px;
}

    .form-field label[b-c7uvo7oair] {
        color: #64748b;
        font-size: 12px;
        font-weight: 900;
        letter-spacing: .03em;
        text-transform: uppercase;
    }

.available-days-block[b-c7uvo7oair] {
    display: grid;
    gap: 12px;
}

    .available-days-block h3[b-c7uvo7oair] {
        margin: 0;
        color: #0f172a;
        font-size: 17px;
        font-weight: 950;
    }

[b-c7uvo7oair] .activity-grid .dxbl-grid,
[b-c7uvo7oair] .activity-grid {
    border-radius: 18px;
    overflow: hidden;
}

.day-pill[b-c7uvo7oair] {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 6px 10px;
    border-radius: 999px;
    background: #eef2ff;
    color: #3730a3;
    font-size: 12px;
    font-weight: 950;
}

.select-activity-button[b-c7uvo7oair],
.remove-button[b-c7uvo7oair],
.primary-submit-button[b-c7uvo7oair] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    border-radius: 999px;
    font-family: inherit;
    font-size: 12px;
    font-weight: 950;
    cursor: pointer;
    transition: .16s ease;
}

.select-activity-button[b-c7uvo7oair] {
    width: 100%;
    padding: 8px 12px;
    border: 1px solid #2563eb;
    background: #eff6ff;
    color: #1d4ed8;
}

    .select-activity-button.selected[b-c7uvo7oair],
    .select-activity-button:disabled[b-c7uvo7oair] {
        border-color: #bbf7d0;
        background: #dcfce7;
        color: #166534;
        cursor: default;
    }

.remove-button[b-c7uvo7oair] {
    padding: 7px 10px;
    border: 1px solid #fecaca;
    background: #fff1f2;
    color: #991b1b;
}

.primary-submit-button[b-c7uvo7oair] {
    width: 100%;
    min-height: 44px;
    padding: 10px 18px;
    border: 1px solid #2563eb;
    background: #2563eb;
    color: #ffffff;
    box-shadow: 0 14px 28px rgba(37, 99, 235, .18);
}

    .primary-submit-button:disabled[b-c7uvo7oair] {
        cursor: not-allowed;
        opacity: .65;
        box-shadow: none;
    }

.selected-card[b-c7uvo7oair] {
    position: sticky;
    top: 16px;
}

.selected-activity-list[b-c7uvo7oair],
.active-activity-list[b-c7uvo7oair] {
    display: grid;
    gap: 10px;
}

.selected-activity-item[b-c7uvo7oair],
.active-activity-card[b-c7uvo7oair] {
    display: grid;
    gap: 10px;
    padding: 14px;
    border: 1px solid #e2e8f0;
    border-radius: 18px;
    background: #f8fafc;
}

.selected-activity-item[b-c7uvo7oair] {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
}

    .selected-activity-item span[b-c7uvo7oair],
    .active-activity-card span[b-c7uvo7oair] {
        color: #2563eb;
        font-size: 11px;
        font-weight: 950;
        letter-spacing: .06em;
        text-transform: uppercase;
    }

    .selected-activity-item strong[b-c7uvo7oair],
    .active-activity-card strong[b-c7uvo7oair] {
        display: block;
        margin-top: 4px;
        color: #0f172a;
        font-size: 14px;
        font-weight: 950;
        line-height: 1.25;
    }

    .selected-activity-item small[b-c7uvo7oair],
    .active-activity-card small[b-c7uvo7oair] {
        display: block;
        margin-top: 5px;
        color: #64748b;
        font-size: 12px;
        font-weight: 800;
    }

.active-activity-list[b-c7uvo7oair] {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.active-activity-card[b-c7uvo7oair] {
    background: linear-gradient(135deg, #f0fdf4, #ffffff);
    border-color: #bbf7d0;
}

.rules-box[b-c7uvo7oair] {
    display: grid;
    gap: 12px;
    margin-top: 14px;
    padding: 15px;
    border: 1px solid #bfdbfe;
    border-radius: 18px;
    background: linear-gradient(135deg, #f8fbff, #ffffff);
}

    .rules-box h3[b-c7uvo7oair] {
        margin: 0;
        color: #0f172a;
        font-size: 16px;
        font-weight: 950;
    }

    .rules-box p[b-c7uvo7oair] {
        margin: 0;
        color: #64748b;
        font-size: 13px;
        line-height: 1.45;
    }

.confirm-row[b-c7uvo7oair] {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    color: #0f172a;
    font-size: 13px;
    font-weight: 850;
}

.form-message[b-c7uvo7oair] {
    margin-top: 14px;
    padding: 13px 15px;
    border: 1px solid #fed7aa;
    border-radius: 16px;
    background: #fff7ed;
    color: #9a3412;
    font-size: 13px;
    font-weight: 850;
}

.status-pill[b-c7uvo7oair] {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 6px 10px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 950;
}

    .status-pill.approved[b-c7uvo7oair] {
        background: #dcfce7;
        color: #166534;
    }

    .status-pill.pending[b-c7uvo7oair] {
        background: #eff6ff;
        color: #1d4ed8;
    }

    .status-pill.rejected[b-c7uvo7oair] {
        background: #fff1f2;
        color: #991b1b;
    }

.empty-state[b-c7uvo7oair] {
    padding: 24px;
    border: 1px dashed #cbd5e1;
    border-radius: 18px;
    background: #f8fafc;
    color: #64748b;
    font-size: 14px;
    font-weight: 800;
    text-align: center;
}

    .empty-state.compact[b-c7uvo7oair] {
        padding: 18px;
    }

.state-card[b-c7uvo7oair] {
    padding: 28px;
    border-radius: 24px;
}

    .state-card h2[b-c7uvo7oair] {
        margin: 0;
        color: #0f172a;
        font-size: 22px;
        font-weight: 950;
    }

    .state-card p[b-c7uvo7oair] {
        margin: 8px 0 0;
        color: #64748b;
        line-height: 1.55;
    }

    .state-card.error[b-c7uvo7oair] {
        border-color: #fecaca;
        background: #fff1f2;
    }

        .state-card.error h2[b-c7uvo7oair],
        .state-card.error p[b-c7uvo7oair] {
            color: #991b1b;
        }

.activities-actions[b-c7uvo7oair] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    margin-top: 24px;
}

    .activities-actions.single-action[b-c7uvo7oair] {
        justify-content: flex-end;
    }

[b-c7uvo7oair] .activities-actions .dxbs-button,
[b-c7uvo7oair] .activities-actions .btn {
    border-radius: 12px !important;
    padding: 10px 20px !important;
    font-weight: 850 !important;
}

.success-popup-content[b-c7uvo7oair] {
    display: grid;
    gap: 14px;
    justify-items: center;
    text-align: center;
    padding: 30px;
}

.success-icon[b-c7uvo7oair] {
    display: grid;
    place-items: center;
    width: 64px;
    height: 64px;
    border-radius: 999px;
    background: #dcfce7;
    color: #166534;
    font-size: 30px;
    font-weight: 950;
}

.success-popup-content h2[b-c7uvo7oair] {
    margin: 0;
    color: #0f172a;
    font-size: 24px;
    font-weight: 950;
}

.success-popup-content p[b-c7uvo7oair] {
    margin: 0;
    color: #64748b;
    line-height: 1.5;
}

@media (max-width: 1200px) {
    .activity-request-layout[b-c7uvo7oair] {
        grid-template-columns: 1fr;
    }

    .selected-card[b-c7uvo7oair] {
        position: static;
    }

    .active-activity-list[b-c7uvo7oair] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .activities-page[b-c7uvo7oair] {
        padding: 16px;
    }

    .activities-hero[b-c7uvo7oair],
    .activities-toolbar[b-c7uvo7oair] {
        flex-direction: column;
        align-items: stretch;
    }

    .activities-hero[b-c7uvo7oair] {
        padding: 22px;
    }

    .toolbar-selectors[b-c7uvo7oair] {
        display: grid;
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .toolbar-field[b-c7uvo7oair],
    .toolbar-field.student-field[b-c7uvo7oair] {
        min-width: 0;
        width: 100%;
    }

    .card-header[b-c7uvo7oair] {
        flex-direction: column;
    }

    .grid-total[b-c7uvo7oair] {
        align-self: flex-start;
    }

    .secondary-button[b-c7uvo7oair] {
        width: 100%;
    }

    .activities-tabs[b-c7uvo7oair] {
        width: 100%;
        display: grid;
        grid-template-columns: 1fr 1fr;
        border-radius: 18px;
    }

    .activities-tab[b-c7uvo7oair] {
        border-radius: 14px;
    }
}

@media (max-width: 576px) {
    .activities-page[b-c7uvo7oair] {
        padding: 12px 10px 38px;
    }

    .activities-shell[b-c7uvo7oair] {
        gap: 14px;
    }

    .activities-hero[b-c7uvo7oair],
    .activity-card[b-c7uvo7oair],
    .state-card[b-c7uvo7oair],
    .activities-toolbar[b-c7uvo7oair] {
        border-radius: 20px;
    }

        .activities-hero h1[b-c7uvo7oair] {
            font-size: 34px;
        }

        .activities-hero p[b-c7uvo7oair] {
            font-size: 14px;
            line-height: 1.45;
        }

    .step-strip[b-c7uvo7oair] {
        grid-template-columns: 1fr;
    }

    .selected-activity-item[b-c7uvo7oair] {
        grid-template-columns: 1fr;
    }

    .remove-button[b-c7uvo7oair] {
        width: 100%;
    }

    .active-activity-list[b-c7uvo7oair] {
        grid-template-columns: 1fr;
    }

    .activities-tabs[b-c7uvo7oair] {
        grid-template-columns: 1fr;
    }
}


/* =========================================================
   One activity per day validation
   ========================================================= */

.select-activity-button.blocked[b-c7uvo7oair],
.select-activity-button.blocked:disabled[b-c7uvo7oair] {
    border-color: #e2e8f0;
    background: #f1f5f9;
    color: #64748b;
    cursor: not-allowed;
}


/* =========================================================
   Simpler parent wizard layout
   ========================================================= */

.compact-activities-hero[b-c7uvo7oair] {
    padding-block: 24px;
}

.compact-toolbar[b-c7uvo7oair] {
    align-items: center;
}

.wizard-card[b-c7uvo7oair] {
    display: grid;
    gap: 18px;
}

.wizard-header[b-c7uvo7oair] {
    margin-bottom: 0;
}

.simple-wizard-strip[b-c7uvo7oair] {
    margin-bottom: 2px;
}

.step-pill.completed[b-c7uvo7oair] {
    background: #dcfce7;
    color: #166534;
}

.activity-selection-step[b-c7uvo7oair],
.activity-confirm-step[b-c7uvo7oair] {
    display: grid;
    gap: 18px;
}

.activity-main-combo[b-c7uvo7oair] {
    max-width: 820px;
}

.block-title-row[b-c7uvo7oair] {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 12px;
}

    .block-title-row small[b-c7uvo7oair] {
        color: #64748b;
        font-size: 12px;
        font-weight: 800;
    }

.activity-day-cards[b-c7uvo7oair] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.activity-day-card[b-c7uvo7oair] {
    display: grid;
    gap: 5px;
    min-height: 96px;
    padding: 14px;
    border: 1px solid #dbeafe;
    border-radius: 18px;
    background: linear-gradient(135deg, #f8fbff, #ffffff);
    color: #0f172a;
    text-align: left;
    font-family: inherit;
    cursor: pointer;
    transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease, background-color .16s ease;
}

    .activity-day-card:hover:not(:disabled)[b-c7uvo7oair] {
        transform: translateY(-1px);
        border-color: #93c5fd;
        box-shadow: 0 12px 26px rgba(37, 99, 235, .10);
    }

    .activity-day-card span[b-c7uvo7oair] {
        width: fit-content;
        padding: 5px 9px;
        border-radius: 999px;
        background: #eef2ff;
        color: #3730a3;
        font-size: 11px;
        font-weight: 950;
        letter-spacing: .04em;
        text-transform: uppercase;
    }

    .activity-day-card strong[b-c7uvo7oair] {
        color: #0f172a;
        font-size: 16px;
        font-weight: 950;
    }

    .activity-day-card small[b-c7uvo7oair] {
        color: #2563eb;
        font-size: 12px;
        font-weight: 900;
    }

    .activity-day-card.selected[b-c7uvo7oair] {
        border-color: #bbf7d0;
        background: linear-gradient(135deg, #f0fdf4, #ffffff);
    }

        .activity-day-card.selected small[b-c7uvo7oair] {
            color: #166534;
        }

    .activity-day-card.blocked[b-c7uvo7oair] {
        cursor: not-allowed;
        opacity: .58;
        background: #f8fafc;
        border-color: #e2e8f0;
    }

        .activity-day-card.blocked small[b-c7uvo7oair] {
            color: #64748b;
        }

.selected-summary-box[b-c7uvo7oair] {
    display: grid;
    gap: 12px;
    padding: 16px;
    border: 1px solid #dbeafe;
    border-radius: 20px;
    background: linear-gradient(135deg, #f8fbff, #ffffff);
}

    .selected-summary-box.empty[b-c7uvo7oair] {
        border-style: dashed;
        background: #f8fafc;
    }

    .selected-summary-box p[b-c7uvo7oair] {
        margin: 0;
        color: #64748b;
        font-size: 13px;
        font-weight: 800;
    }

.selected-summary-head[b-c7uvo7oair] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

    .selected-summary-head strong[b-c7uvo7oair] {
        color: #0f172a;
        font-size: 15px;
        font-weight: 950;
    }

    .selected-summary-head span[b-c7uvo7oair] {
        display: grid;
        place-items: center;
        min-width: 30px;
        min-height: 30px;
        border-radius: 999px;
        background: #2563eb;
        color: #fff;
        font-size: 12px;
        font-weight: 950;
    }

.selected-chip-list[b-c7uvo7oair] {
    display: grid;
    gap: 9px;
}

.selected-chip-item[b-c7uvo7oair] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
    align-items: center;
    padding: 13px;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    background: rgba(255,255,255,.78);
}

    .selected-chip-item span[b-c7uvo7oair] {
        color: #2563eb;
        font-size: 11px;
        font-weight: 950;
        letter-spacing: .05em;
        text-transform: uppercase;
    }

    .selected-chip-item strong[b-c7uvo7oair] {
        display: block;
        margin-top: 3px;
        color: #0f172a;
        font-size: 13px;
        font-weight: 950;
        line-height: 1.25;
    }

    .selected-chip-item small[b-c7uvo7oair] {
        display: block;
        margin-top: 3px;
        color: #64748b;
        font-size: 12px;
        font-weight: 800;
    }

.chip-remove-button[b-c7uvo7oair] {
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    border: 1px solid #fecaca;
    border-radius: 999px;
    background: #fff1f2;
    color: #991b1b;
    font-size: 20px;
    font-weight: 900;
    line-height: 1;
    cursor: pointer;
}

.wizard-actions[b-c7uvo7oair] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    margin-top: 2px;
}

.next-button[b-c7uvo7oair] {
    width: auto;
    min-width: 260px;
}

.split-actions[b-c7uvo7oair] {
    justify-content: space-between;
}

.confirm-grid[b-c7uvo7oair] {
    display: grid;
    grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
    gap: 16px;
    align-items: start;
}

.confirm-summary-card[b-c7uvo7oair],
.confirm-rules-box[b-c7uvo7oair] {
    min-height: 100%;
}

.confirm-summary-card[b-c7uvo7oair] {
    display: grid;
    gap: 12px;
    padding: 16px;
    border: 1px solid #e2e8f0;
    border-radius: 20px;
    background: #f8fafc;
}

    .confirm-summary-card h3[b-c7uvo7oair],
    .confirm-rules-box h3[b-c7uvo7oair] {
        margin: 0;
        color: #0f172a;
        font-size: 17px;
        font-weight: 950;
    }

.final-list[b-c7uvo7oair] {
    gap: 9px;
}

.selected-activity-item.readonly[b-c7uvo7oair] {
    grid-template-columns: 1fr;
    background: #ffffff;
}

.contract-preview[b-c7uvo7oair] {
    max-height: 280px;
    overflow: auto;
    padding: 14px;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    background: #ffffff;
    color: #334155;
    font-size: 13px;
    line-height: 1.5;
}

    .contract-preview h2[b-c7uvo7oair] {
        margin: 0 0 10px;
        color: #0f172a;
        font-size: 18px;
        font-weight: 950;
    }

    .contract-preview p[b-c7uvo7oair] {
        margin: 0 0 10px;
    }

    .contract-preview ul[b-c7uvo7oair] {
        margin: 0 0 10px;
        padding-left: 22px;
    }

.confirm-row-large[b-c7uvo7oair] {
    padding: 12px;
    border-radius: 16px;
    background: #eff6ff;
}

.existing-requests-card[b-c7uvo7oair] {
    margin-top: 0;
}

@media (max-width: 1100px) {
    .activity-day-cards[b-c7uvo7oair],
    .confirm-grid[b-c7uvo7oair] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .wizard-actions[b-c7uvo7oair],
    .split-actions[b-c7uvo7oair] {
        display: grid;
        grid-template-columns: 1fr;
    }

        .next-button[b-c7uvo7oair],
        .primary-submit-button[b-c7uvo7oair],
        .wizard-actions .secondary-button[b-c7uvo7oair] {
            width: 100%;
            min-width: 0;
        }

    .selected-chip-item[b-c7uvo7oair] {
        grid-template-columns: 1fr;
    }

    .chip-remove-button[b-c7uvo7oair] {
        width: 100%;
        height: 36px;
    }
}


/* =========================================================
   Cleaner activity request UI
   ========================================================= */

.activity-day-desktop-list[b-c7uvo7oair] {
    display: grid;
    gap: 8px;
}

.activity-day-row[b-c7uvo7oair] {
    display: grid;
    grid-template-columns: 150px minmax(120px, 1fr) 130px;
    gap: 12px;
    align-items: center;
    min-height: 54px;
    padding: 10px 12px;
    border: 1px solid #dbeafe;
    border-radius: 16px;
    background: linear-gradient(135deg, #f8fbff, #ffffff);
    color: #0f172a;
    font-family: inherit;
    text-align: left;
    cursor: pointer;
    transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease, background-color .16s ease;
}

    .activity-day-row:hover:not(:disabled)[b-c7uvo7oair] {
        transform: translateY(-1px);
        border-color: #93c5fd;
        box-shadow: 0 10px 22px rgba(37, 99, 235, .08);
    }

    .activity-day-row strong[b-c7uvo7oair] {
        color: #0f172a;
        font-size: 15px;
        font-weight: 950;
        font-variant-numeric: tabular-nums;
    }

    .activity-day-row small[b-c7uvo7oair] {
        justify-self: end;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-height: 32px;
        min-width: 98px;
        padding: 7px 12px;
        border: 1px solid #2563eb;
        border-radius: 999px;
        background: #eff6ff;
        color: #1d4ed8;
        font-size: 12px;
        font-weight: 950;
    }

    .activity-day-row.selected[b-c7uvo7oair] {
        border-color: #bbf7d0;
        background: linear-gradient(135deg, #f0fdf4, #ffffff);
    }

        .activity-day-row.selected small[b-c7uvo7oair] {
            border-color: #bbf7d0;
            background: #dcfce7;
            color: #166534;
        }

    .activity-day-row.blocked[b-c7uvo7oair] {
        cursor: not-allowed;
        opacity: .58;
        background: #f8fafc;
        border-color: #e2e8f0;
    }

        .activity-day-row.blocked small[b-c7uvo7oair] {
            border-color: #e2e8f0;
            background: #f1f5f9;
            color: #64748b;
        }

.mobile-day-cards[b-c7uvo7oair] {
    display: none;
}

.confirm-rules-focus[b-c7uvo7oair] {
    max-width: none;
    width: 100%;
}

.confirm-rules-subtitle[b-c7uvo7oair] {
    margin: -4px 0 12px;
    color: #64748b;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.45;
}

.confirm-rules-focus .contract-preview[b-c7uvo7oair] {
    max-height: min(58vh, 620px);
    padding: 18px;
    font-size: 14px;
}

.selected-review-card[b-c7uvo7oair] {
    margin-top: 0;
}

.selected-review-list[b-c7uvo7oair] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.selected-review-item[b-c7uvo7oair] {
    display: grid;
    gap: 5px;
    padding: 14px;
    border: 1px solid #dbeafe;
    border-radius: 18px;
    background: linear-gradient(135deg, #f8fbff, #ffffff);
}

    .selected-review-item span[b-c7uvo7oair] {
        width: fit-content;
        padding: 5px 9px;
        border-radius: 999px;
        background: #eef2ff;
        color: #3730a3;
        font-size: 11px;
        font-weight: 950;
        letter-spacing: .04em;
        text-transform: uppercase;
    }

    .selected-review-item strong[b-c7uvo7oair] {
        color: #0f172a;
        font-size: 14px;
        font-weight: 950;
        line-height: 1.25;
    }

    .selected-review-item small[b-c7uvo7oair] {
        color: #64748b;
        font-size: 12px;
        font-weight: 850;
    }

@media (max-width: 900px) {
    .activity-day-desktop-list[b-c7uvo7oair] {
        display: none;
    }

    .mobile-day-cards[b-c7uvo7oair] {
        display: grid;
    }

    .selected-review-list[b-c7uvo7oair] {
        grid-template-columns: 1fr;
    }

    .confirm-rules-focus .contract-preview[b-c7uvo7oair] {
        max-height: 56vh;
    }
}

@media (max-width: 640px) {
    .block-title-row[b-c7uvo7oair] {
        align-items: flex-start;
        flex-direction: column;
    }

    .selected-review-card .card-header[b-c7uvo7oair] {
        gap: 10px;
    }
}


/* =========================================================
   Step 2 compact action buttons
   ========================================================= */

.confirmation-actions[b-c7uvo7oair] {
    justify-content: flex-end;
    align-items: center;
    gap: 12px;
    margin-top: 14px;
    padding-top: 4px;
}

    .confirmation-actions .secondary-button[b-c7uvo7oair] {
        width: auto;
        min-width: 150px;
        flex: 0 0 auto;
    }

    .confirmation-actions .primary-submit-button[b-c7uvo7oair] {
        width: auto;
        min-width: 220px;
        max-width: 280px;
        flex: 0 0 auto;
    }

@media (max-width: 640px) {
    .confirmation-actions[b-c7uvo7oair] {
        display: grid;
        grid-template-columns: 1fr;
    }

        .confirmation-actions .secondary-button[b-c7uvo7oair],
        .confirmation-actions .primary-submit-button[b-c7uvo7oair] {
            width: 100%;
            min-width: 0;
            max-width: none;
        }
}


/* =========================================================
   Bus-style wizard step indicator
   ========================================================= */

.activity-steps[b-c7uvo7oair] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    list-style: none;
    padding: 0;
    margin: 0 0 10px;
}

    .activity-steps li[b-c7uvo7oair] {
        padding: 12px 14px;
        border-radius: 999px;
        background: rgba(241, 245, 249, .85);
        color: #64748b;
        font-size: 14px;
        text-align: center;
        font-weight: 850;
        line-height: 1.15;
    }

        .activity-steps li.active[b-c7uvo7oair] {
            background: #2563eb;
            color: #ffffff;
            box-shadow: 0 10px 20px rgba(37, 99, 235, .22);
        }

        .activity-steps li.done[b-c7uvo7oair] {
            background: #dbeafe;
            color: #1d4ed8;
        }

.activity-progress[b-c7uvo7oair] {
    height: 8px;
    margin: 0 0 20px;
    background: #e2e8f0;
    border-radius: 999px;
    overflow: hidden;
}

    .activity-progress div[b-c7uvo7oair] {
        height: 100%;
        background: linear-gradient(90deg, #2563eb, #38bdf8);
        border-radius: 999px;
        transition: width .25s ease;
    }

/* Retire the previous larger pill indicator spacing when old classes still exist elsewhere. */
.simple-wizard-strip[b-c7uvo7oair] {
    margin-bottom: 0;
}

@media (max-width: 760px) {
    .activity-steps[b-c7uvo7oair] {
        grid-template-columns: repeat(2, minmax(180px, 1fr));
        overflow-x: auto;
        padding-bottom: 4px;
    }
}

@media (max-width: 480px) {
    .activity-steps li[b-c7uvo7oair] {
        padding: 11px 12px;
        font-size: 13px;
        white-space: nowrap;
    }
}

/* =========================================================
   Activity route option in confirmation step
   ========================================================= */

.activity-route-question[b-c7uvo7oair] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 18px;
    padding: 16px 18px;
    border: 1px solid #dbeafe;
    border-radius: 18px;
    background: linear-gradient(135deg, #f8fbff, #ffffff);
}

    .activity-route-question h4[b-c7uvo7oair] {
        margin: 0;
        color: #0f172a;
        font-size: 15px;
        font-weight: 950;
        letter-spacing: -.015em;
    }

    .activity-route-question p[b-c7uvo7oair] {
        margin: 4px 0 0;
        color: #64748b;
        font-size: 13px;
        font-weight: 800;
        line-height: 1.45;
    }

.yes-no-choice[b-c7uvo7oair] {
    display: inline-flex;
    flex: 0 0 auto;
    gap: 8px;
    padding: 5px;
    border-radius: 999px;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
}

.yes-no-btn[b-c7uvo7oair] {
    min-width: 86px;
    border: 0;
    border-radius: 999px;
    padding: 10px 18px;
    font-family: inherit;
    font-size: 13px;
    font-weight: 950;
    background: transparent;
    cursor: pointer;
    transition: background-color .15s ease, color .15s ease, box-shadow .15s ease, transform .15s ease;
}

    .yes-no-btn:hover[b-c7uvo7oair] {
        transform: translateY(-1px);
    }

    .yes-no-btn.yes[b-c7uvo7oair] {
        color: #15803d;
    }

    .yes-no-btn.no[b-c7uvo7oair] {
        color: #b91c1c;
    }

    .yes-no-btn.yes.selected[b-c7uvo7oair] {
        background: #22c55e;
        color: #ffffff;
        box-shadow: 0 10px 20px rgba(34, 197, 94, .22);
    }

    .yes-no-btn.no.selected[b-c7uvo7oair] {
        background: #ef4444;
        color: #ffffff;
        box-shadow: 0 10px 20px rgba(239, 68, 68, .22);
    }

@media (max-width: 760px) {
    .activity-route-question[b-c7uvo7oair] {
        display: grid;
        grid-template-columns: 1fr;
    }

    .yes-no-choice[b-c7uvo7oair] {
        display: grid;
        grid-template-columns: 1fr 1fr;
        width: 100%;
        border-radius: 16px;
    }

    .yes-no-btn[b-c7uvo7oair] {
        width: 100%;
    }
}


/* =========================================================
   Mobile cards for existing activity requests
   ========================================================= */

.mobile-activity-request-cards[b-c7uvo7oair] {
    display: none;
}

@media (max-width: 700px) {
    .desktop-activity-requests-grid[b-c7uvo7oair] {
        display: none;
    }

    .mobile-activity-request-cards[b-c7uvo7oair] {
        display: grid;
        gap: 10px;
    }

    .mobile-activity-request-card[b-c7uvo7oair] {
        display: grid;
        gap: 9px;
        padding: 14px;
        border: 1px solid #dbeafe;
        border-radius: 18px;
        background: linear-gradient(135deg, #f8fbff, #ffffff);
        box-shadow: 0 8px 18px rgba(15, 23, 42, .04);
    }

    .mobile-request-badges[b-c7uvo7oair] {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        align-items: center;
    }

    .mobile-request-day-badge[b-c7uvo7oair] {
        display: inline-flex;
        align-items: center;
        min-height: 30px;
        padding: 6px 10px;
        border-radius: 999px;
        background: #eef2ff;
        color: #3730a3;
        font-size: 11px;
        font-weight: 950;
        letter-spacing: .04em;
        text-transform: uppercase;
    }

    .mobile-activity-request-card strong[b-c7uvo7oair] {
        color: #0f172a;
        font-size: 14px;
        font-weight: 950;
        line-height: 1.25;
    }

    .mobile-activity-request-card small[b-c7uvo7oair] {
        color: #64748b;
        font-size: 12px;
        font-weight: 850;
    }

    .existing-requests-card .card-header[b-c7uvo7oair] {
        gap: 8px;
    }
}


/* =========================================================
   Active activities weekly scheduler
   ========================================================= */

.active-scheduler-layout[b-c7uvo7oair] {
    display: grid;
    gap: 16px;
}

.active-scheduler-block[b-c7uvo7oair],
.active-activity-summary-block[b-c7uvo7oair] {
    display: grid;
    gap: 12px;
}

.active-scheduler-title-row[b-c7uvo7oair] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
}

    .active-scheduler-title-row h3[b-c7uvo7oair] {
        margin: 0;
        color: #0f172a;
        font-size: 18px;
        font-weight: 950;
        letter-spacing: -.025em;
    }

    .active-scheduler-title-row p[b-c7uvo7oair] {
        margin: 4px 0 0;
        color: #64748b;
        font-size: 13px;
        font-weight: 750;
        line-height: 1.45;
    }

[b-c7uvo7oair] .activity-week-scheduler {
    min-height: 520px;
    border: 1px solid #dbeafe;
    border-radius: 22px;
    overflow: hidden;
    background: rgba(255, 255, 255, .82) !important;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .055);
}

    [b-c7uvo7oair] .activity-week-scheduler .dxbl-scheduler,
    [b-c7uvo7oair] .activity-week-scheduler .dxbs-scheduler {
        background: transparent !important;
    }

    [b-c7uvo7oair] .activity-week-scheduler table,
    [b-c7uvo7oair] .activity-week-scheduler td,
    [b-c7uvo7oair] .activity-week-scheduler th {
        background-color: rgba(255, 255, 255, .72) !important;
    }

    [b-c7uvo7oair] .activity-week-scheduler .dxbl-scheduler-apt,
    [b-c7uvo7oair] .activity-week-scheduler .dxbs-sc-apt {
        border-radius: 12px !important;
        font-weight: 850 !important;
    }

.scheduler-summary-list[b-c7uvo7oair] {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media (max-width: 1100px) {
    .scheduler-summary-list[b-c7uvo7oair] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    [b-c7uvo7oair] .activity-week-scheduler {
        min-height: 560px;
    }
}

@media (max-width: 700px) {
    .active-scheduler-title-row[b-c7uvo7oair] {
        flex-direction: column;
    }

    .scheduler-summary-list[b-c7uvo7oair] {
        grid-template-columns: 1fr;
    }

    [b-c7uvo7oair] .activity-week-scheduler {
        min-height: 620px;
        border-radius: 18px;
    }
}


/* =========================================================
   Condensed read-only active activities scheduler
   ========================================================= */

[b-c7uvo7oair] .activity-week-scheduler {
    min-height: 340px !important;
    height: 340px !important;
    border-radius: 18px;
}

    [b-c7uvo7oair] .activity-week-scheduler .dxbl-scheduler,
    [b-c7uvo7oair] .activity-week-scheduler .dxbs-scheduler {
        font-size: 12px;
    }

    [b-c7uvo7oair] .activity-week-scheduler .dxbl-sc-time-cell,
    [b-c7uvo7oair] .activity-week-scheduler .dxbs-sc-time-cell,
    [b-c7uvo7oair] .activity-week-scheduler td,
    [b-c7uvo7oair] .activity-week-scheduler th {
        font-size: 12px !important;
    }

    [b-c7uvo7oair] .activity-week-scheduler .dxbl-scheduler-apt,
    [b-c7uvo7oair] .activity-week-scheduler .dxbs-sc-apt {
        border-radius: 10px !important;
        box-shadow: none !important;
        border-width: 1px !important;
        font-weight: 850 !important;
    }

[b-c7uvo7oair] .activity-scheduler-label-blue {
    background-color: #dbeafe !important;
    border-color: #93c5fd !important;
}

[b-c7uvo7oair] .activity-scheduler-label-blue-text {
    color: #1e3a8a !important;
}

[b-c7uvo7oair] .activity-scheduler-label-green {
    background-color: #dcfce7 !important;
    border-color: #86efac !important;
}

[b-c7uvo7oair] .activity-scheduler-label-green-text {
    color: #14532d !important;
}

[b-c7uvo7oair] .activity-scheduler-label-purple {
    background-color: #ede9fe !important;
    border-color: #c4b5fd !important;
}

[b-c7uvo7oair] .activity-scheduler-label-purple-text {
    color: #4c1d95 !important;
}

[b-c7uvo7oair] .activity-scheduler-label-orange {
    background-color: #ffedd5 !important;
    border-color: #fdba74 !important;
}

[b-c7uvo7oair] .activity-scheduler-label-orange-text {
    color: #7c2d12 !important;
}

[b-c7uvo7oair] .activity-scheduler-label-pink {
    background-color: #fce7f3 !important;
    border-color: #f9a8d4 !important;
}

[b-c7uvo7oair] .activity-scheduler-label-pink-text {
    color: #831843 !important;
}

@media (max-width: 700px) {
    [b-c7uvo7oair] .activity-week-scheduler {
        min-height: 420px !important;
        height: 420px !important;
    }
}


/* =========================================================
   Dynamic condensed active scheduler
   ========================================================= */

[b-c7uvo7oair] .activity-week-scheduler {
    min-height: 260px !important;
    max-height: 420px !important;
}

    [b-c7uvo7oair] .activity-week-scheduler .dxbs-sc-time-cell,
    [b-c7uvo7oair] .activity-week-scheduler .dxbs-sc-time-ruler-cell,
    [b-c7uvo7oair] .activity-week-scheduler .dxbl-sc-time-cell,
    [b-c7uvo7oair] .activity-week-scheduler .dxbl-sc-time-ruler-cell {
        min-height: 34px !important;
    }


/* =========================================================
   Weekly recurring activities + school off days
   ========================================================= */

[b-c7uvo7oair] .activity-scheduler-label-holiday {
    background-color: #fef3c7 !important;
    border-color: #fcd34d !important;
}

[b-c7uvo7oair] .activity-scheduler-label-holiday-text {
    color: #78350f !important;
    font-weight: 950 !important;
}

[b-c7uvo7oair] .activity-week-scheduler .dxbl-scheduler-apt:has(.activity-scheduler-label-holiday-text),
[b-c7uvo7oair] .activity-week-scheduler .dxbs-sc-apt:has(.activity-scheduler-label-holiday-text) {
    border-style: dashed !important;
}


/* =========================================================
   Activity agreement radio choice
   ========================================================= */

.activity-contract-question[b-c7uvo7oair] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 18px;
    padding: 16px 18px;
    border: 1px solid #dbeafe;
    border-radius: 18px;
    background: linear-gradient(135deg, #f8fbff, #ffffff);
}

    .activity-contract-question h4[b-c7uvo7oair] {
        margin: 0;
        color: #0f172a;
        font-size: 15px;
        font-weight: 950;
        letter-spacing: -.015em;
    }

    .activity-contract-question p[b-c7uvo7oair] {
        margin: 4px 0 0;
        color: #64748b;
        font-size: 13px;
        font-weight: 800;
        line-height: 1.45;
    }

.agreement-radio-group[b-c7uvo7oair] {
    display: inline-flex;
    flex: 0 0 auto;
    gap: 8px;
    padding: 5px;
    border-radius: 999px;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
}

.agreement-radio-option[b-c7uvo7oair] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 132px;
    justify-content: center;
    border-radius: 999px;
    padding: 10px 16px;
    font-size: 13px;
    font-weight: 950;
    cursor: pointer;
    transition: background-color .15s ease, color .15s ease, box-shadow .15s ease, transform .15s ease;
}

    .agreement-radio-option:hover[b-c7uvo7oair] {
        transform: translateY(-1px);
    }

    .agreement-radio-option input[b-c7uvo7oair] {
        accent-color: currentColor;
    }

    .agreement-radio-option.yes[b-c7uvo7oair] {
        color: #15803d;
    }

    .agreement-radio-option.no[b-c7uvo7oair] {
        color: #b91c1c;
    }

    .agreement-radio-option.yes.selected[b-c7uvo7oair] {
        background: #22c55e;
        color: #ffffff;
        box-shadow: 0 10px 20px rgba(34, 197, 94, .22);
    }

    .agreement-radio-option.no.selected[b-c7uvo7oair] {
        background: #ef4444;
        color: #ffffff;
        box-shadow: 0 10px 20px rgba(239, 68, 68, .22);
    }

@media (max-width: 760px) {
    .activity-contract-question[b-c7uvo7oair] {
        display: grid;
        grid-template-columns: 1fr;
    }

    .agreement-radio-group[b-c7uvo7oair] {
        display: grid;
        grid-template-columns: 1fr;
        border-radius: 18px;
    }

    .agreement-radio-option[b-c7uvo7oair] {
        width: 100%;
        border-radius: 14px;
    }
}


/* =========================================================
   Activity OTP popup
   ========================================================= */

[b-c7uvo7oair] .otp-popup .dxbs-modal-content,
[b-c7uvo7oair] .otp-popup .dxbl-popup-content {
    border-radius: 22px !important;
    overflow: hidden !important;
    border: 1px solid rgba(226, 232, 240, .9) !important;
    box-shadow: 0 28px 90px rgba(15, 23, 42, .22) !important;
    background: rgba(255, 255, 255, .96) !important;
    backdrop-filter: blur(18px);
}

[b-c7uvo7oair] .otp-popup .dxbs-popup-body,
[b-c7uvo7oair] .otp-popup .dxbl-popup-body {
    padding: 0 !important;
}

.otp-card[b-c7uvo7oair] {
    padding: 34px 30px 28px;
    background: radial-gradient(circle at top, rgba(56, 189, 248, .12), transparent 38%), rgba(255, 255, 255, .96);
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.otp-icon[b-c7uvo7oair] {
    width: 72px;
    height: 72px;
    margin: 4px auto 14px;
    border-radius: 999px;
    background: linear-gradient(135deg, #2563eb, #38bdf8);
    display: grid;
    place-items: center;
    box-shadow: 0 18px 34px rgba(37, 99, 235, .24);
}

.otp-shield[b-c7uvo7oair] {
    color: #fff;
    font-weight: 900;
    font-size: 32px;
    line-height: 1;
}

.otp-title[b-c7uvo7oair] {
    font-weight: 950;
    font-size: 30px;
    color: #0f172a;
    margin: 8px 0;
    width: 100%;
    text-align: center;
    letter-spacing: -0.03em;
}

.otp-sub[b-c7uvo7oair] {
    color: #64748b;
    font-size: 15px;
    margin-bottom: 22px;
    width: 100%;
    text-align: center;
    line-height: 1.55;
}

.otp-email[b-c7uvo7oair] {
    display: block;
    font-weight: 900;
    color: #0f172a;
    margin-top: 4px;
    word-break: break-word;
}

.otp-input-wrap[b-c7uvo7oair] {
    width: min(420px, 100%);
    margin: 4px auto 0;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.otp-label[b-c7uvo7oair] {
    display: block;
    font-weight: 900;
    color: #0f172a;
    margin-bottom: 10px;
    text-align: center;
}

.otp-hint[b-c7uvo7oair] {
    margin-top: 10px;
    font-size: 13px;
    color: #64748b;
    text-align: center;
}

.otp-input[b-c7uvo7oair] {
    width: min(420px, 100%);
    height: 60px;
    border-radius: 16px;
    border: 2px solid rgba(203, 213, 225, .95);
    outline: none;
    padding: 0 16px;
    font-size: 24px;
    font-weight: 950;
    letter-spacing: 18px;
    text-align: center;
    color: #0f172a;
    background: #fff;
}

    .otp-input:focus[b-c7uvo7oair] {
        border-color: #2563eb;
        box-shadow: 0 0 0 5px rgba(37, 99, 235, .16);
    }

.otp-error[b-c7uvo7oair] {
    width: min(420px, 100%);
    margin: 14px auto 0;
    border-radius: 14px;
    padding: 11px 13px;
    background: #fef2f2;
    border: 1px solid #fecaca;
    color: #991b1b;
    font-size: 14px;
    font-weight: 700;
    text-align: left;
}

.otp-actions-2[b-c7uvo7oair] {
    width: min(420px, 100%);
    margin: 18px auto 0;
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: 12px;
}

[b-c7uvo7oair] .otp-btn.dxbs-button,
[b-c7uvo7oair] .otp-btn.dxbl-btn,
[b-c7uvo7oair] .otp-btn.btn {
    min-height: 48px !important;
    border-radius: 14px !important;
    font-weight: 900 !important;
}

[b-c7uvo7oair] .otp-primary.dxbs-button,
[b-c7uvo7oair] .otp-primary.dxbl-btn,
[b-c7uvo7oair] .otp-primary.btn {
    background: #2563eb !important;
    border-color: #2563eb !important;
    color: #ffffff !important;
    box-shadow: 0 14px 28px rgba(37, 99, 235, .24) !important;
}

@media (max-width: 576px) {
    .otp-card[b-c7uvo7oair] {
        padding: 26px 18px 20px;
    }

    .otp-title[b-c7uvo7oair] {
        font-size: 24px;
    }

    .otp-input[b-c7uvo7oair] {
        height: 54px;
        font-size: 21px;
        letter-spacing: 12px;
    }

    .otp-actions-2[b-c7uvo7oair] {
        grid-template-columns: 1fr;
    }
}
/* _content/Arsakeio_Portal/Components/Pages/PRPABusRegistration.razor.rz.scp.css */
.bus-page[b-bbjqv28a75] {
    min-height: 100vh;
    padding: clamp(16px, 2.4vw, 34px);
    overflow-x: hidden;
    background: #ffffff;
}

.bus-form-enter[b-bbjqv28a75] {
    animation: busSlideForm-b-bbjqv28a75 .7s cubic-bezier(.22, 1, .36, 1) both;
    will-change: transform, opacity;
}

@keyframes busSlideForm-b-bbjqv28a75 {
    from {
        opacity: 0;
        transform: translateX(90px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.bus-shell[b-bbjqv28a75] {
    width: min(100%, 1440px);
    margin: 0 auto;
    display: grid;
    gap: clamp(16px, 1.5vw, 22px);
}

.bus-hero[b-bbjqv28a75],
.bus-toolbar[b-bbjqv28a75],
.section-box[b-bbjqv28a75],
.state-card[b-bbjqv28a75] {
    border: 1px solid rgba(226, 232, 240, .88);
    background: rgba(255, 255, 255, .92);
    box-shadow: 0 22px 60px rgba(15, 23, 42, .07);
}

.bus-hero[b-bbjqv28a75] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    padding: clamp(22px, 2vw, 30px);
    border-radius: 28px;
}

.eyebrow[b-bbjqv28a75] {
    display: inline-flex;
    padding: 7px 13px;
    border-radius: 999px;
    background: rgba(219, 234, 254, .9);
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 900;
    margin-bottom: 12px;
}

.bus-hero h1[b-bbjqv28a75] {
    margin: 0;
    color: #0f172a;
    font-size: clamp(34px, 3.2vw, 56px);
    font-weight: 950;
    letter-spacing: -.05em;
    line-height: .98;
}

.bus-hero p[b-bbjqv28a75] {
    max-width: 900px;
    margin: 10px 0 0;
    color: #64748b;
    font-size: 16px;
    line-height: 1.55;
}

.bus-steps[b-bbjqv28a75] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    list-style: none;
    padding: 0;
    margin: 0;
}

    .bus-steps li[b-bbjqv28a75] {
        padding: 12px 14px;
        border-radius: 999px;
        background: rgba(241, 245, 249, .85);
        color: #64748b;
        font-size: 14px;
        text-align: center;
        font-weight: 800;
    }

        .bus-steps li.active[b-bbjqv28a75] {
            background: #2563eb;
            color: #ffffff;
            box-shadow: 0 10px 20px rgba(37, 99, 235, .22);
        }

        .bus-steps li.done[b-bbjqv28a75] {
            background: #dbeafe;
            color: #1d4ed8;
        }

.bus-progress[b-bbjqv28a75] {
    height: 8px;
    background: #e2e8f0;
    border-radius: 999px;
    overflow: hidden;
}

    .bus-progress div[b-bbjqv28a75] {
        height: 100%;
        background: linear-gradient(90deg, #2563eb, #38bdf8);
        border-radius: 999px;
        transition: width .25s ease;
    }

.bus-toolbar[b-bbjqv28a75] {
    display: grid;
    grid-template-columns: minmax(280px, 1fr) minmax(260px, 420px);
    gap: 16px;
    align-items: end;
    padding: 18px 20px;
    border-radius: 22px;
}

.toolbar-field[b-bbjqv28a75] {
    display: grid;
    gap: 8px;
    min-width: 0;
}

    .toolbar-field label[b-bbjqv28a75],
    .form-row label[b-bbjqv28a75] {
        color: #64748b;
        font-size: 12px;
        font-weight: 900;
        letter-spacing: .03em;
        text-transform: uppercase;
    }

[b-bbjqv28a75] .bus-selector-combo,
[b-bbjqv28a75] .bus-selector-combo .dxbl-text-edit,
[b-bbjqv28a75] .bus-selector-combo .dxbl-edit,
[b-bbjqv28a75] .bus-selector-combo .dxbs-editor,
[b-bbjqv28a75] .bus-selector-combo .dxbs-editor-container {
    width: 100%;
    border-radius: 16px !important;
}

    [b-bbjqv28a75] .bus-selector-combo input,
    [b-bbjqv28a75] .bus-selector-combo input[readonly],
    [b-bbjqv28a75] .bus-selector-combo input[role="combobox"],
    [b-bbjqv28a75] .bus-selector-combo input.dxbl-text-edit-input,
    [b-bbjqv28a75] .bus-selector-combo input.form-control {
        min-height: 42px !important;
        background-color: #ffffff !important;
        color: #0f172a !important;
        -webkit-text-fill-color: #0f172a !important;
        font-weight: 850 !important;
        cursor: pointer !important;
    }

.student-option-item[b-bbjqv28a75],
.student-option-edit[b-bbjqv28a75] {
    display: grid;
    gap: 2px;
    color: inherit;
}

    .student-option-item strong[b-bbjqv28a75],
    .student-option-edit[b-bbjqv28a75] {
        font-size: 13px;
        font-weight: 950;
        color: inherit;
        -webkit-text-fill-color: currentColor;
    }

    .student-option-item small[b-bbjqv28a75] {
        color: #64748b;
        font-size: 11px;
        font-weight: 800;
    }

[b-bbjqv28a75] .dxbl-listbox-item-selected .student-option-item,
[b-bbjqv28a75] .dxbl-listbox-item-selected .student-option-item strong,
[b-bbjqv28a75] .dxbl-listbox-item-selected .student-option-item small,
[b-bbjqv28a75] .dxbl-listbox-item[aria-selected="true"] .student-option-item,
[b-bbjqv28a75] .dxbl-listbox-item[aria-selected="true"] .student-option-item strong,
[b-bbjqv28a75] .dxbl-listbox-item[aria-selected="true"] .student-option-item small,
[b-bbjqv28a75] .dropdown-item.active .student-option-item,
[b-bbjqv28a75] .dropdown-item.active .student-option-item strong,
[b-bbjqv28a75] .dropdown-item.active .student-option-item small,
[b-bbjqv28a75] [aria-selected="true"] .student-option-item,
[b-bbjqv28a75] [aria-selected="true"] .student-option-item strong,
[b-bbjqv28a75] [aria-selected="true"] .student-option-item small {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.bus-pane[b-bbjqv28a75] {
    display: grid;
    gap: 18px;
}

.section-box[b-bbjqv28a75] {
    border-radius: 24px;
    padding: clamp(18px, 1.5vw, 22px);
}

    .section-box h6[b-bbjqv28a75] {
        margin: 0 0 16px;
        color: #0f172a;
        font-size: 18px;
        font-weight: 950;
        letter-spacing: -.02em;
    }

.form-row[b-bbjqv28a75] {
    display: grid;
    grid-template-columns: 170px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
}

.route-selection-box[b-bbjqv28a75] {
    overflow: hidden;
}

.route-section-header[b-bbjqv28a75] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 18px;
}

    .route-section-header h6[b-bbjqv28a75] {
        margin: 0;
    }

    .route-section-header p[b-bbjqv28a75] {
        margin: 6px 0 0;
        color: #64748b;
        font-size: 13px;
        font-weight: 700;
        line-height: 1.45;
    }

.selected-badge[b-bbjqv28a75] {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 6px 10px;
    border: 1px solid #bbf7d0;
    border-radius: 999px;
    background: #f0fdf4;
    color: #166534;
    font-size: 11px;
    font-weight: 950;
    white-space: nowrap;
}

.route-grid[b-bbjqv28a75] {
    display: grid;
    grid-template-columns: 105px 130px minmax(0, 1fr) 110px;
    border: 1px solid #e2e8f0;
    border-radius: 18px;
    overflow: hidden;
    background: #ffffff;
}

.route-grid-head[b-bbjqv28a75] {
    padding: 12px 14px;
    background: #f8fafc;
    color: #475569;
    font-size: 11px;
    font-weight: 950;
    letter-spacing: .055em;
    text-transform: uppercase;
    border-bottom: 1px solid #e2e8f0;
}

.route-grid-row[b-bbjqv28a75] {
    display: contents;
}

    .route-grid-row > div[b-bbjqv28a75] {
        min-height: 58px;
        display: flex;
        align-items: center;
        padding: 10px 14px;
        border-bottom: 1px solid #e2e8f0;
        transition: background-color .15s ease;
    }

    .route-grid-row.selected > div[b-bbjqv28a75] {
        background: #eff6ff;
    }

.route-time[b-bbjqv28a75] {
    color: #0f172a;
    font-size: 18px;
    font-weight: 950;
    letter-spacing: -.02em;
}

.route-weekday[b-bbjqv28a75] {
    color: #475569;
    font-size: 13px;
    font-weight: 850;
}

.route-stop-select[b-bbjqv28a75] {
    min-width: 0;
}

[b-bbjqv28a75] .bus-stop-combo,
[b-bbjqv28a75] .bus-stop-combo .dxbs-editor,
[b-bbjqv28a75] .bus-stop-combo .dxbs-editor-container,
[b-bbjqv28a75] .bus-stop-combo .dxbl-text-edit,
[b-bbjqv28a75] .bus-stop-combo .dxbl-edit {
    width: 100%;
}

.route-row-action[b-bbjqv28a75] {
    justify-content: flex-end;
}

.select-route-button[b-bbjqv28a75] {
    min-height: 36px;
    padding: 8px 13px;
    border: 1px solid #2563eb;
    border-radius: 999px;
    background: #eff6ff;
    color: #1d4ed8;
    font-family: inherit;
    font-size: 12px;
    font-weight: 950;
    cursor: pointer;
    transition: .15s ease;
}

    .select-route-button:hover[b-bbjqv28a75] {
        transform: translateY(-1px);
        background: #dbeafe;
    }

.route-grid-row.selected .select-route-button[b-bbjqv28a75] {
    background: #2563eb;
    color: #ffffff;
}

.agreement-box[b-bbjqv28a75] {
    display: grid;
    gap: 16px;
}

.agreement-placeholder[b-bbjqv28a75] {
    padding: 18px;
    border: 1px solid #dbeafe;
    border-radius: 18px;
    background: linear-gradient(135deg, #f8fbff, #ffffff);
    color: #334155;
    line-height: 1.65;
}

    .agreement-placeholder p[b-bbjqv28a75] {
        margin: 0 0 12px;
    }

        .agreement-placeholder p:last-child[b-bbjqv28a75] {
            margin-bottom: 0;
        }

.selected-route-summary[b-bbjqv28a75] {
    display: grid;
    gap: 12px;
}

.selected-route-card[b-bbjqv28a75] {
    display: grid;
    gap: 5px;
    padding: 16px 18px;
    border: 1px solid #e2e8f0;
    border-radius: 18px;
    background: #ffffff;
}

    .selected-route-card span[b-bbjqv28a75] {
        color: #2563eb;
        font-size: 11px;
        font-weight: 950;
        letter-spacing: .06em;
        text-transform: uppercase;
    }

    .selected-route-card strong[b-bbjqv28a75] {
        color: #0f172a;
        font-size: 16px;
        font-weight: 950;
    }

    .selected-route-card small[b-bbjqv28a75] {
        color: #64748b;
        font-size: 13px;
        font-weight: 750;
    }

.consent-question-row[b-bbjqv28a75] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 18px;
    align-items: center;
    padding: 16px 18px;
    border-radius: 16px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
}

    .consent-question-row label[b-bbjqv28a75] {
        display: grid;
        gap: 5px;
        margin: 0;
        font-weight: 800;
        color: #334155;
    }

.consent-question-title[b-bbjqv28a75] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.consent-question-row.mandatory-positive[b-bbjqv28a75] {
    border-color: #facc15;
    background: linear-gradient(135deg, #fffdf5, #fffbeb);
    box-shadow: inset 4px 0 0 #eab308;
}

.mandatory-positive-badge[b-bbjqv28a75] {
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    padding: 3px 7px;
    border: 1px solid #facc15;
    border-radius: 999px;
    background: #fef9c3;
    color: #854d0e;
    font-size: 8px;
    font-weight: 950;
    letter-spacing: .04em;
    text-transform: uppercase;
    white-space: nowrap;
}

.consent-question-row label small[b-bbjqv28a75] {
    color: #b45309;
    font-size: 10px;
    font-weight: 850;
}

    .consent-question-row label small.mandatory-positive-message[b-bbjqv28a75] {
        color: #b91c1c;
        font-size: 11px;
        font-weight: 900;
    }

.yes-no-choice[b-bbjqv28a75] {
    display: inline-flex;
    gap: 8px;
    padding: 4px;
    border-radius: 999px;
    background: #ffffff;
    border: 1px solid #e2e8f0;
}

.yes-no-btn[b-bbjqv28a75] {
    border: 0;
    border-radius: 999px;
    padding: 8px 18px;
    font-family: inherit;
    font-weight: 900;
    background: transparent;
    cursor: pointer;
    transition: .15s ease;
}

    .yes-no-btn.yes[b-bbjqv28a75] {
        color: #15803d;
    }

    .yes-no-btn.no[b-bbjqv28a75] {
        color: #b91c1c;
    }

    .yes-no-btn.yes.selected[b-bbjqv28a75] {
        background: #22c55e;
        color: #ffffff;
        box-shadow: 0 10px 20px rgba(34, 197, 94, .22);
    }

    .yes-no-btn.no.selected[b-bbjqv28a75] {
        background: #ef4444;
        color: #ffffff;
        box-shadow: 0 10px 20px rgba(239, 68, 68, .22);
    }

.bus-actions[b-bbjqv28a75] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    margin-top: 4px;
}

    .bus-actions > div[b-bbjqv28a75] {
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
        justify-content: flex-end;
    }

.primary-button[b-bbjqv28a75],
.secondary-button[b-bbjqv28a75] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 10px 18px;
    border-radius: 999px;
    font-family: inherit;
    font-size: 13px;
    font-weight: 900;
    line-height: 1;
    text-decoration: none;
    cursor: pointer;
    transition: transform .16s ease, border-color .16s ease, background-color .16s ease, box-shadow .16s ease;
}

.primary-button[b-bbjqv28a75] {
    border: 1px solid #2563eb;
    background: #2563eb;
    color: #ffffff;
    box-shadow: 0 14px 30px rgba(37, 99, 235, .22);
}

.secondary-button[b-bbjqv28a75] {
    border: 1px solid rgba(226, 232, 240, .95);
    background: #ffffff;
    color: #334155;
}

    .primary-button:hover:not(:disabled)[b-bbjqv28a75],
    .secondary-button:hover:not(:disabled)[b-bbjqv28a75] {
        transform: translateY(-1px);
    }

    .primary-button:disabled[b-bbjqv28a75],
    .secondary-button:disabled[b-bbjqv28a75] {
        cursor: not-allowed;
        opacity: .58;
        box-shadow: none;
    }

.alert[b-bbjqv28a75],
.loading-box[b-bbjqv28a75],
.empty-state[b-bbjqv28a75] {
    padding: 14px 16px;
    border-radius: 16px;
    font-size: 13px;
    font-weight: 850;
    line-height: 1.45;
}

.alert-warning[b-bbjqv28a75] {
    border: 1px solid #fed7aa;
    background: #fff7ed;
    color: #9a3412;
}

.loading-box[b-bbjqv28a75],
.empty-state[b-bbjqv28a75] {
    border: 1px dashed #cbd5e1;
    background: #f8fafc;
    color: #64748b;
    text-align: center;
}

.state-card[b-bbjqv28a75] {
    padding: 28px;
    border-radius: 24px;
}

    .state-card h2[b-bbjqv28a75] {
        margin: 0;
        color: #0f172a;
        font-size: 22px;
        font-weight: 950;
    }

    .state-card p[b-bbjqv28a75] {
        margin: 8px 0 0;
        color: #64748b;
        line-height: 1.55;
    }

    .state-card.error[b-bbjqv28a75] {
        border-color: #fecaca;
        background: #fff1f2;
    }

        .state-card.error h2[b-bbjqv28a75],
        .state-card.error p[b-bbjqv28a75] {
            color: #991b1b;
        }

    .state-card.empty[b-bbjqv28a75] {
        background: #f8fafc;
    }

    .state-card.completed[b-bbjqv28a75] {
        border-color: #bbf7d0;
        background: linear-gradient(135deg, #f0fdf4, #ffffff);
    }

        .state-card.completed h2[b-bbjqv28a75] {
            color: #166534;
        }

.completed-routes-list[b-bbjqv28a75] {
    display: grid;
    gap: 10px;
    margin-top: 18px;
}

.completed-route-item[b-bbjqv28a75] {
    display: grid;
    gap: 4px;
    padding: 13px 15px;
    border: 1px solid #bbf7d0;
    border-radius: 16px;
    background: #ffffff;
}

    .completed-route-item strong[b-bbjqv28a75] {
        color: #166534;
        font-size: 13px;
        font-weight: 950;
    }

    .completed-route-item span[b-bbjqv28a75] {
        color: #475569;
        font-size: 13px;
        font-weight: 750;
    }

/* OTP popup */

[b-bbjqv28a75] .otp-popup .dxbs-modal-content {
    border-radius: 22px !important;
    overflow: hidden !important;
    border: 1px solid rgba(226, 232, 240, .9) !important;
    box-shadow: 0 28px 90px rgba(15, 23, 42, .22) !important;
    background: rgba(255, 255, 255, .96) !important;
    backdrop-filter: blur(18px);
}

[b-bbjqv28a75] .otp-popup .dxbs-popup-body {
    padding: 0 !important;
}

[b-bbjqv28a75] .otp-card {
    padding: 34px 30px 28px;
    background: radial-gradient(circle at top, rgba(56, 189, 248, .12), transparent 38%), rgba(255, 255, 255, .96);
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

[b-bbjqv28a75] .otp-icon {
    width: 72px;
    height: 72px;
    margin: 4px auto 14px;
    border-radius: 999px;
    background: linear-gradient(135deg, #2563eb, #38bdf8);
    display: grid;
    place-items: center;
    box-shadow: 0 18px 34px rgba(37, 99, 235, .24);
}

[b-bbjqv28a75] .otp-shield {
    color: #fff;
    font-weight: 900;
    font-size: 32px;
    line-height: 1;
}

[b-bbjqv28a75] .otp-title {
    width: 100%;
    margin: 8px 0;
    color: #0f172a;
    font-size: 30px;
    font-weight: 950;
    letter-spacing: -0.03em;
    text-align: center;
}

[b-bbjqv28a75] .otp-sub {
    width: 100%;
    margin-bottom: 22px;
    color: #64748b;
    font-size: 15px;
    line-height: 1.55;
    text-align: center;
}

[b-bbjqv28a75] .otp-email {
    display: block;
    margin-top: 4px;
    color: #0f172a;
    font-weight: 900;
    word-break: break-word;
}

[b-bbjqv28a75] .otp-input-wrap {
    width: min(420px, 100%);
    margin: 4px auto 0;
    display: flex;
    flex-direction: column;
    align-items: center;
}

[b-bbjqv28a75] .otp-label {
    display: block;
    margin-bottom: 10px;
    color: #0f172a;
    font-weight: 900;
    text-align: center;
}

[b-bbjqv28a75] .otp-hint {
    margin-top: 10px;
    color: #64748b;
    font-size: 13px;
    text-align: center;
}

[b-bbjqv28a75] .otp-input {
    width: min(420px, 100%);
    height: 60px;
    border: 2px solid rgba(203, 213, 225, .95);
    border-radius: 16px;
    outline: none;
    padding: 0 16px;
    background: #fff;
    color: #0f172a;
    font-size: 24px;
    font-weight: 950;
    letter-spacing: 18px;
    text-align: center;
}

    [b-bbjqv28a75] .otp-input:focus {
        border-color: #2563eb;
        box-shadow: 0 0 0 5px rgba(37, 99, 235, .16);
    }

[b-bbjqv28a75] .otp-error {
    width: min(420px, 100%);
    margin: 14px auto 0;
    padding: 11px 13px;
    border: 1px solid #fecaca;
    border-radius: 14px;
    background: #fef2f2;
    color: #991b1b;
    font-size: 14px;
    font-weight: 700;
    text-align: left;
}

[b-bbjqv28a75] .otp-actions-2 {
    width: min(420px, 100%);
    margin: 18px auto 0;
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: 12px;
}

[b-bbjqv28a75] .otp-btn.dxbs-button,
[b-bbjqv28a75] .otp-btn.btn {
    min-height: 48px !important;
    border-radius: 14px !important;
    font-weight: 900 !important;
}

[b-bbjqv28a75] .otp-primary.dxbs-button,
[b-bbjqv28a75] .otp-primary.btn {
    background: #2563eb !important;
    border-color: #2563eb !important;
    box-shadow: 0 14px 28px rgba(37, 99, 235, .24) !important;
}

.bus-success-popup[b-bbjqv28a75]  .dxbs-modal-content {
    border-radius: 24px;
    backdrop-filter: blur(16px);
}

.success-box[b-bbjqv28a75] {
    text-align: center;
    padding: 40px 30px;
}

.success-icon[b-bbjqv28a75] {
    width: 78px;
    height: 78px;
    margin: 0 auto 20px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #22c55e;
    color: white;
    font-size: 40px;
    font-weight: 900;
}

.success-box h2[b-bbjqv28a75] {
    font-size: 30px;
    font-weight: 950;
    margin-bottom: 10px;
    color: #0f172a;
}

.success-box p[b-bbjqv28a75] {
    color: #475569;
    font-size: 16px;
    margin-bottom: 26px;
}

@media (max-width: 1100px) {
    .bus-toolbar[b-bbjqv28a75] {
        grid-template-columns: 1fr;
    }

    .route-grid[b-bbjqv28a75] {
        grid-template-columns: 90px 110px minmax(0, 1fr) 100px;
    }
}

@media (max-width: 760px) {
    .bus-page[b-bbjqv28a75] {
        padding: 14px 10px 44px;
    }

    .bus-shell[b-bbjqv28a75] {
        gap: 14px;
    }

    .bus-hero[b-bbjqv28a75],
    .bus-toolbar[b-bbjqv28a75],
    .section-box[b-bbjqv28a75],
    .state-card[b-bbjqv28a75] {
        border-radius: 22px;
    }

    .bus-hero[b-bbjqv28a75] {
        flex-direction: column;
        align-items: stretch;
        padding: 22px 20px;
    }

        .bus-hero h1[b-bbjqv28a75] {
            font-size: clamp(32px, 11vw, 44px);
            line-height: .98;
        }

        .bus-hero p[b-bbjqv28a75] {
            font-size: 14px;
            line-height: 1.45;
        }

    .bus-steps[b-bbjqv28a75] {
        grid-template-columns: repeat(2, minmax(180px, 1fr));
        overflow-x: auto;
        padding-bottom: 4px;
    }

    .bus-toolbar[b-bbjqv28a75] {
        padding: 16px;
    }

    .form-row[b-bbjqv28a75] {
        grid-template-columns: 1fr;
        gap: 6px;
    }

    .route-section-header[b-bbjqv28a75] {
        flex-direction: column;
        align-items: stretch;
    }

    .selected-badge[b-bbjqv28a75] {
        width: fit-content;
    }

    .route-grid[b-bbjqv28a75] {
        display: grid;
        grid-template-columns: 1fr;
        border: 0;
        gap: 12px;
        background: transparent;
        overflow: visible;
    }

    .route-grid-head[b-bbjqv28a75] {
        display: none;
    }

    .route-grid-row[b-bbjqv28a75] {
        display: grid;
        grid-template-columns: 1fr;
        gap: 10px;
        padding: 14px;
        border: 1px solid #e2e8f0;
        border-radius: 18px;
        background: #ffffff;
    }

        .route-grid-row > div[b-bbjqv28a75] {
            min-height: 0;
            padding: 0;
            border-bottom: 0;
        }

        .route-grid-row.selected[b-bbjqv28a75] {
            border-color: #93c5fd;
            background: #eff6ff;
        }

    .route-row-action[b-bbjqv28a75],
    .route-stop-select[b-bbjqv28a75] {
        justify-content: stretch;
    }

    .select-route-button[b-bbjqv28a75] {
        width: 100%;
        min-height: 42px;
    }

    .consent-question-row[b-bbjqv28a75] {
        grid-template-columns: 1fr;
        align-items: stretch;
    }

    .yes-no-choice[b-bbjqv28a75] {
        display: grid;
        grid-template-columns: 1fr 1fr;
        width: 100%;
        border-radius: 16px;
    }

    .yes-no-btn[b-bbjqv28a75] {
        width: 100%;
        padding: 11px 14px;
    }

    .bus-actions[b-bbjqv28a75] {
        flex-direction: column;
        align-items: stretch;
    }

        .bus-actions > div[b-bbjqv28a75] {
            display: grid;
            grid-template-columns: 1fr;
            width: 100%;
        }

    .primary-button[b-bbjqv28a75],
    .secondary-button[b-bbjqv28a75] {
        width: 100%;
    }
}

@media (max-width: 576px) {
    [b-bbjqv28a75] .otp-card {
        padding: 26px 18px 20px;
    }

    [b-bbjqv28a75] .otp-title {
        font-size: 24px;
    }

    [b-bbjqv28a75] .otp-input {
        height: 54px;
        font-size: 21px;
        letter-spacing: 12px;
    }

    [b-bbjqv28a75] .otp-actions-2 {
        grid-template-columns: 1fr;
    }

    .success-box[b-bbjqv28a75] {
        padding: 32px 20px;
    }

        .success-box h2[b-bbjqv28a75] {
            font-size: 25px;
        }
}


/* =========================================================
   DevExpress grid schedule selector
   ========================================================= */

.bus-routes-grid[b-bbjqv28a75] {
    width: 100%;
    margin-top: 10px;
    border-radius: 18px;
    overflow: hidden;
}

[b-bbjqv28a75] .bus-routes-grid .dxbs-grid,
[b-bbjqv28a75] .bus-routes-grid .dxbl-grid {
    border: 1px solid rgba(226, 232, 240, .95) !important;
    border-radius: 18px !important;
    overflow: hidden !important;
    background: #ffffff !important;
}

[b-bbjqv28a75] .bus-routes-grid table {
    background: #ffffff;
}

[b-bbjqv28a75] .bus-routes-grid th,
[b-bbjqv28a75] .bus-routes-grid .dxbl-grid-header-row > td {
    background: #f8fafc !important;
    color: #475569 !important;
    font-size: 11px !important;
    font-weight: 950 !important;
    text-transform: uppercase;
    letter-spacing: .055em;
}

[b-bbjqv28a75] .bus-routes-grid td {
    vertical-align: middle !important;
}

[b-bbjqv28a75] .bus-routes-grid .dxbs-grid-search-box,
[b-bbjqv28a75] .bus-routes-grid .dxbl-grid-search-box {
    border-radius: 12px !important;
}

.stop-picker-cell[b-bbjqv28a75] {
    display: grid;
    gap: 6px;
    min-width: 0;
}

.stop-meta[b-bbjqv28a75] {
    color: #64748b;
    font-size: 11px;
    font-weight: 750;
    overflow-wrap: anywhere;
}

.route-code-pill[b-bbjqv28a75] {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: 5px 9px;
    border-radius: 999px;
    background: #eef2ff;
    color: #3730a3;
    font-size: 11px;
    font-weight: 950;
    white-space: nowrap;
}

.select-route-button.selected[b-bbjqv28a75] {
    background: #2563eb;
    color: #ffffff;
    box-shadow: 0 12px 24px rgba(37, 99, 235, .20);
}

/* Hide the old handmade schedule grid if the old markup is accidentally left anywhere. */
.route-grid[b-bbjqv28a75] {
    display: none;
}

@media (max-width: 760px) {
    .bus-routes-grid[b-bbjqv28a75] {
        overflow-x: auto;
        border-radius: 18px;
    }

    [b-bbjqv28a75] .bus-routes-grid .dxbs-grid,
    [b-bbjqv28a75] .bus-routes-grid .dxbl-grid {
        min-width: 820px;
    }

    .route-time[b-bbjqv28a75] {
        font-size: 16px;
    }

    .select-route-button[b-bbjqv28a75] {
        width: 100%;
    }
}


/* =========================================================
   Refined schedule grid UX
   ========================================================= */

.route-section-actions[b-bbjqv28a75] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex-wrap: wrap;
}

.route-collapse-button[b-bbjqv28a75] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 34px;
    padding: 7px 11px;
    border: 1px solid #dbeafe;
    border-radius: 999px;
    background: #f8fbff;
    color: #1d4ed8;
    font-family: inherit;
    font-size: 11px;
    font-weight: 900;
    cursor: pointer;
    transition: transform .16s ease, border-color .16s ease, background-color .16s ease;
    white-space: nowrap;
}

    .route-collapse-button:hover[b-bbjqv28a75] {
        transform: translateY(-1px);
        border-color: #93c5fd;
        background: #eff6ff;
    }

.route-collapse-chevron[b-bbjqv28a75] {
    display: inline-block;
    font-size: 16px;
    line-height: 1;
    transform: rotate(180deg);
    transition: transform .22s ease;
}

    .route-collapse-chevron.collapsed[b-bbjqv28a75] {
        transform: rotate(0deg);
    }

.route-collapsed-summary[b-bbjqv28a75] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 6px 14px;
    align-items: center;
    padding: 15px 17px;
    border: 1px solid #bfdbfe;
    border-radius: 18px;
    background: linear-gradient(135deg, #eff6ff, #ffffff);
}

    .route-collapsed-summary strong[b-bbjqv28a75] {
        color: #0f172a;
        font-size: 20px;
        font-weight: 950;
        letter-spacing: -.03em;
    }

    .route-collapsed-summary span[b-bbjqv28a75] {
        min-width: 0;
        color: #334155;
        font-size: 14px;
        font-weight: 850;
        overflow-wrap: anywhere;
    }

    .route-collapsed-summary small[b-bbjqv28a75] {
        grid-column: 2;
        color: #64748b;
        font-size: 12px;
        font-weight: 750;
    }

    .route-collapsed-summary.empty[b-bbjqv28a75] {
        display: block;
        border-color: #e2e8f0;
        background: #f8fafc;
        color: #64748b;
        font-size: 13px;
        font-weight: 850;
    }

.single-stop-value[b-bbjqv28a75] {
    color: #0f172a;
    font-size: 13px;
    font-weight: 850;
    overflow-wrap: anywhere;
}

.stop-choice-count[b-bbjqv28a75] {
    width: fit-content;
    padding: 3px 8px;
    border-radius: 999px;
    background: #eff6ff;
    color: #1d4ed8;
    font-size: 10px;
    font-weight: 950;
}

.stop-comment[b-bbjqv28a75] {
    display: block;
    color: #475569;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.route-code-list[b-bbjqv28a75] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

/* The time column now uses text (HH:mm), so the DevExpress filter is no longer a date picker. */
[b-bbjqv28a75] .bus-routes-grid .route-time {
    font-variant-numeric: tabular-nums;
}

@media (max-width: 760px) {
    .route-section-actions[b-bbjqv28a75] {
        justify-content: flex-start;
    }

    .route-collapse-button[b-bbjqv28a75] {
        width: 100%;
        justify-content: space-between;
    }

    .route-collapsed-summary[b-bbjqv28a75] {
        grid-template-columns: 1fr;
    }

        .route-collapsed-summary small[b-bbjqv28a75] {
            grid-column: auto;
        }

    [b-bbjqv28a75] .bus-routes-grid .dxbs-grid,
    [b-bbjqv28a75] .bus-routes-grid .dxbl-grid {
        min-width: 940px;
    }
}


/* =========================================================
   Zone column + desktop/mobile schedule tuning
   ========================================================= */

.zone-list[b-bbjqv28a75] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

.zone-pill[b-bbjqv28a75] {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: 5px 9px;
    border-radius: 999px;
    background: #ecfeff;
    color: #155e75;
    font-size: 11px;
    font-weight: 950;
    white-space: nowrap;
}

@media (min-width: 1500px) and (max-height: 1100px) {
    .bus-page[b-bbjqv28a75] {
        padding: 18px 28px 48px;
    }

    .bus-shell[b-bbjqv28a75] {
        max-width: 1680px;
        gap: 14px;
    }

    .bus-hero[b-bbjqv28a75] {
        padding: 22px 26px;
    }

        .bus-hero h1[b-bbjqv28a75] {
            font-size: clamp(34px, 2.7vw, 48px);
        }

        .bus-hero p[b-bbjqv28a75] {
            font-size: 14px;
            line-height: 1.45;
        }

    .section-box[b-bbjqv28a75] {
        padding: 18px;
    }

    .route-section-header[b-bbjqv28a75] {
        margin-bottom: 12px;
    }

    [b-bbjqv28a75] .bus-routes-grid td {
        padding-top: 8px !important;
        padding-bottom: 8px !important;
    }
}

/* Mobile: only show Ώρα, Στάση / Διεύθυνση, Επιλογή.
   Περιγραφή, Δρομολόγιο and Ζώνη stay available on tablet/desktop. */
@media (max-width: 760px) {
    [b-bbjqv28a75] .bus-routes-grid .dxbs-grid,
    [b-bbjqv28a75] .bus-routes-grid .dxbl-grid {
        min-width: 0 !important;
    }

    [b-bbjqv28a75] .bus-routes-grid table {
        min-width: 100% !important;
        table-layout: fixed !important;
    }

    /* Columns:
       1 Ώρα
       2 Στάση / Διεύθυνση
       3 Περιγραφή
       4 Δρομολόγιο
       5 Ζώνη
       6 Επιλογή */
    [b-bbjqv28a75] .bus-routes-grid th:nth-child(3),
    [b-bbjqv28a75] .bus-routes-grid td:nth-child(3),
    [b-bbjqv28a75] .bus-routes-grid th:nth-child(4),
    [b-bbjqv28a75] .bus-routes-grid td:nth-child(4),
    [b-bbjqv28a75] .bus-routes-grid th:nth-child(5),
    [b-bbjqv28a75] .bus-routes-grid td:nth-child(5) {
        display: none !important;
    }

    [b-bbjqv28a75] .bus-routes-grid th:nth-child(1),
    [b-bbjqv28a75] .bus-routes-grid td:nth-child(1) {
        width: 72px !important;
        min-width: 72px !important;
        max-width: 72px !important;
    }

    [b-bbjqv28a75] .bus-routes-grid th:nth-child(6),
    [b-bbjqv28a75] .bus-routes-grid td:nth-child(6) {
        width: 92px !important;
        min-width: 92px !important;
        max-width: 92px !important;
    }

    [b-bbjqv28a75] .bus-routes-grid th:nth-child(2),
    [b-bbjqv28a75] .bus-routes-grid td:nth-child(2) {
        width: auto !important;
    }

    .route-time[b-bbjqv28a75] {
        font-size: 15px;
    }

    .single-stop-value[b-bbjqv28a75] {
        font-size: 12px;
        line-height: 1.3;
    }

    .stop-choice-count[b-bbjqv28a75] {
        font-size: 9px;
        padding: 2px 7px;
    }

    .select-route-button[b-bbjqv28a75] {
        min-height: 38px;
        padding: 8px 9px;
        font-size: 11px;
    }

    .stop-picker-cell[b-bbjqv28a75] {
        gap: 4px;
    }
}

@media (max-width: 420px) {
    [b-bbjqv28a75] .bus-routes-grid th:nth-child(1),
    [b-bbjqv28a75] .bus-routes-grid td:nth-child(1) {
        width: 62px !important;
        min-width: 62px !important;
        max-width: 62px !important;
    }

    [b-bbjqv28a75] .bus-routes-grid th:nth-child(6),
    [b-bbjqv28a75] .bus-routes-grid td:nth-child(6) {
        width: 82px !important;
        min-width: 82px !important;
        max-width: 82px !important;
    }

    .route-time[b-bbjqv28a75] {
        font-size: 14px;
    }

    .select-route-button[b-bbjqv28a75] {
        padding: 7px 7px;
    }
}


/* =========================================================
   Final route selector polish
   ========================================================= */

/* Make multiple-choice stop dropdown text match the bold weight of single-stop rows. */
[b-bbjqv28a75] .bus-stop-combo input,
[b-bbjqv28a75] .bus-stop-combo input[readonly],
[b-bbjqv28a75] .bus-stop-combo input[role="combobox"],
[b-bbjqv28a75] .bus-stop-combo input.dxbl-text-edit-input,
[b-bbjqv28a75] .bus-stop-combo input.form-control,
[b-bbjqv28a75] .bus-stop-combo .dxbs-editor-input,
[b-bbjqv28a75] .bus-stop-combo .dxbl-text-edit-input {
    color: #0f172a !important;
    -webkit-text-fill-color: #0f172a !important;
    font-weight: 900 !important;
}

[b-bbjqv28a75] .bus-stop-combo .dxbl-text-edit,
[b-bbjqv28a75] .bus-stop-combo .dxbl-edit,
[b-bbjqv28a75] .bus-stop-combo .dxbs-editor,
[b-bbjqv28a75] .bus-stop-combo .dxbs-editor-container {
    font-weight: 900 !important;
}

.single-stop-value[b-bbjqv28a75] {
    font-weight: 900;
}

/* Highlight the currently selected stop's bus and zone. */
.route-code-pill.selected[b-bbjqv28a75],
.zone-pill.selected[b-bbjqv28a75] {
    background: #dcfce7 !important;
    color: #166534 !important;
    box-shadow: inset 0 0 0 1px rgba(22, 101, 52, .12);
}

.route-code-pill.selected[b-bbjqv28a75],
.zone-pill.selected[b-bbjqv28a75] {
    border-color: #bbf7d0;
}


/* =========================================================
   Phone schedule selector: touch cards instead of grid
   ========================================================= */

.mobile-touch-route-list[b-bbjqv28a75] {
    display: none;
}

.route-desktop-grid[b-bbjqv28a75] {
    display: block;
}

@media (max-width: 900px) {
    /* The DevExpress grid is still the better desktop/tablet control,
       but on phones it becomes too cramped. Hide it completely and use
       touch-friendly cards with only time + address/route info. */
    .route-desktop-grid[b-bbjqv28a75] {
        display: none !important;
    }

    .mobile-touch-route-list[b-bbjqv28a75] {
        display: grid;
        gap: 10px;
    }

    .mobile-touch-route-card[b-bbjqv28a75] {
        display: grid;
        grid-template-columns: 68px minmax(0, 1fr);
        gap: 11px;
        align-items: center;
        min-height: 74px;
        padding: 12px;
        border: 1px solid #e2e8f0;
        border-radius: 18px;
        background: #ffffff;
        box-shadow: 0 10px 26px rgba(15, 23, 42, .045);
        cursor: pointer;
        transition: border-color .16s ease, background-color .16s ease, box-shadow .16s ease, transform .16s ease;
        -webkit-tap-highlight-color: transparent;
    }

        .mobile-touch-route-card:active[b-bbjqv28a75] {
            transform: scale(.99);
        }

        .mobile-touch-route-card.selected[b-bbjqv28a75] {
            border-color: #93c5fd;
            background: linear-gradient(135deg, #eff6ff, #ffffff);
            box-shadow: 0 14px 30px rgba(37, 99, 235, .10);
        }

    .mobile-touch-time[b-bbjqv28a75] {
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: 50px;
        border-radius: 15px;
        background: #f8fafc;
    }

        .mobile-touch-time span[b-bbjqv28a75] {
            color: #0f172a;
            font-size: 17px;
            font-weight: 950;
            letter-spacing: -.03em;
            font-variant-numeric: tabular-nums;
        }

    .mobile-touch-main[b-bbjqv28a75] {
        display: grid;
        gap: 6px;
        min-width: 0;
    }

        .mobile-touch-main strong[b-bbjqv28a75] {
            display: block;
            color: #0f172a;
            font-size: 13px;
            font-weight: 950;
            line-height: 1.25;
            overflow-wrap: anywhere;
        }

    .mobile-touch-combo-wrap[b-bbjqv28a75] {
        min-width: 0;
    }

    .mobile-touch-stop-combo[b-bbjqv28a75] {
        min-width: 0;
        width: 100%;
    }

    [b-bbjqv28a75] .mobile-touch-stop-combo input,
    [b-bbjqv28a75] .mobile-touch-stop-combo input[readonly],
    [b-bbjqv28a75] .mobile-touch-stop-combo input[role="combobox"],
    [b-bbjqv28a75] .mobile-touch-stop-combo input.dxbl-text-edit-input,
    [b-bbjqv28a75] .mobile-touch-stop-combo input.form-control,
    [b-bbjqv28a75] .mobile-touch-stop-combo .dxbs-editor-input,
    [b-bbjqv28a75] .mobile-touch-stop-combo .dxbl-text-edit-input {
        min-height: 38px !important;
        padding-inline: 9px !important;
        color: #0f172a !important;
        -webkit-text-fill-color: #0f172a !important;
        font-size: 12px !important;
        font-weight: 950 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    .mobile-choice-count[b-bbjqv28a75] {
        width: fit-content;
        padding: 3px 8px;
        border-radius: 999px;
        background: #eff6ff;
        color: #1d4ed8;
        font-size: 9px;
        font-weight: 950;
        line-height: 1;
    }

    .mobile-route-badges[b-bbjqv28a75] {
        display: flex;
        align-items: center;
        gap: 6px;
        flex-wrap: wrap;
    }

    .mobile-selected-chip[b-bbjqv28a75] {
        display: inline-flex;
        align-items: center;
        min-height: 24px;
        padding: 4px 8px;
        border-radius: 999px;
        background: #2563eb;
        color: #ffffff;
        font-size: 10px;
        font-weight: 950;
        line-height: 1;
    }

    .route-section-header[b-bbjqv28a75] {
        margin-bottom: 12px;
    }

    .route-section-actions[b-bbjqv28a75] {
        justify-content: stretch;
    }

    .route-collapse-button[b-bbjqv28a75] {
        width: 100%;
        justify-content: space-between;
    }
}

@media (max-width: 420px) {
    .mobile-touch-route-card[b-bbjqv28a75] {
        grid-template-columns: 60px minmax(0, 1fr);
        gap: 9px;
        padding: 10px;
    }

    .mobile-touch-time span[b-bbjqv28a75] {
        font-size: 15px;
    }

    .mobile-touch-main strong[b-bbjqv28a75] {
        font-size: 12px;
    }

    .mobile-route-badges .route-code-pill[b-bbjqv28a75] {
        min-height: 22px;
        padding: 4px 7px;
        font-size: 10px;
    }

    .mobile-selected-chip[b-bbjqv28a75] {
        min-height: 22px;
        padding: 4px 7px;
        font-size: 9px;
    }
}

.info-text[b-bbjqv28a75] {
    color: #334155;
    line-height: 1.65;
}


/* =========================================================
   Route type admin-rule wiring
   ========================================================= */

[b-bbjqv28a75] .route-type-field .dxbl-disabled,
[b-bbjqv28a75] .route-type-field .dxbs-disabled,
[b-bbjqv28a75] .route-type-field .disabled {
    opacity: .68 !important;
}

.state-card.empty strong[b-bbjqv28a75] {
    color: #0f172a;
}


/* =========================================================
   Route finder information + per-trip area selection
   ========================================================= */

.route-finder-card[b-bbjqv28a75] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 16px;
    align-items: center;
    padding: 18px 20px;
    border: 1px solid #bfdbfe;
    border-radius: 22px;
    background: linear-gradient(135deg, #eff6ff, #ffffff);
    box-shadow: 0 18px 48px rgba(37, 99, 235, .09);
}

.route-finder-icon[b-bbjqv28a75] {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border-radius: 999px;
    background: #2563eb;
    color: #ffffff;
    font-size: 22px;
    font-weight: 950;
    box-shadow: 0 14px 26px rgba(37, 99, 235, .22);
}

.route-finder-copy[b-bbjqv28a75] {
    min-width: 0;
}

    .route-finder-copy h2[b-bbjqv28a75] {
        margin: 0 0 4px;
        color: #0f172a;
        font-size: 18px;
        font-weight: 950;
        letter-spacing: -.02em;
    }

    .route-finder-copy p[b-bbjqv28a75] {
        margin: 0;
        color: #475569;
        font-size: 13px;
        font-weight: 750;
        line-height: 1.45;
    }

.route-finder-link[b-bbjqv28a75] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 9px 14px;
    border: 1px solid #2563eb;
    border-radius: 999px;
    background: #2563eb;
    color: #ffffff;
    font-size: 12px;
    font-weight: 950;
    text-decoration: none;
    white-space: nowrap;
}

    .route-finder-link:hover[b-bbjqv28a75] {
        color: #ffffff;
        transform: translateY(-1px);
    }

.area-selection-box[b-bbjqv28a75] {
    display: grid;
    gap: 14px;
}

.area-selection-help[b-bbjqv28a75] {
    margin: -4px 0 0;
    color: #64748b;
    font-size: 13px;
    font-weight: 750;
    line-height: 1.45;
}

.trip-area-grid[b-bbjqv28a75] {
    display: grid;
    gap: 14px;
}

    .trip-area-grid.double[b-bbjqv28a75] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .trip-area-grid.single[b-bbjqv28a75] {
        grid-template-columns: minmax(0, 1fr);
    }

.trip-area-card[b-bbjqv28a75] {
    display: grid;
    grid-template-columns: minmax(180px, 260px) minmax(0, 1fr);
    gap: 14px;
    align-items: center;
    padding: 15px;
    border: 1px solid #e2e8f0;
    border-radius: 18px;
    background: #f8fafc;
}

    .trip-area-card label[b-bbjqv28a75] {
        display: block;
        margin: 0 0 4px;
        color: #0f172a;
        font-size: 13px;
        font-weight: 950;
        letter-spacing: -.01em;
    }

    .trip-area-card small[b-bbjqv28a75] {
        display: block;
        color: #64748b;
        font-size: 11px;
        font-weight: 750;
        line-height: 1.35;
    }

    .trip-area-card.morning[b-bbjqv28a75] {
        border-color: #bfdbfe;
        background: linear-gradient(135deg, #eff6ff, #ffffff);
    }

    .trip-area-card.noon[b-bbjqv28a75] {
        border-color: #ddd6fe;
        background: linear-gradient(135deg, #f5f3ff, #ffffff);
    }

@media (max-width: 900px) {
    .route-finder-card[b-bbjqv28a75] {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .route-finder-link[b-bbjqv28a75] {
        grid-column: 1 / -1;
        width: 100%;
    }

    .trip-area-grid.double[b-bbjqv28a75],
    .trip-area-grid.single[b-bbjqv28a75] {
        grid-template-columns: 1fr;
    }

    .trip-area-card[b-bbjqv28a75] {
        grid-template-columns: 1fr;
        gap: 10px;
    }
}

@media (max-width: 520px) {
    .route-finder-card[b-bbjqv28a75] {
        grid-template-columns: 1fr;
        text-align: left;
        padding: 16px;
    }

    .route-finder-icon[b-bbjqv28a75] {
        width: 40px;
        height: 40px;
        font-size: 20px;
    }
}


/* =========================================================
   NavFleet live route links
   ========================================================= */

.route-live-link[b-bbjqv28a75] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    min-height: 34px;
    padding: 8px 13px;
    border: 1px solid #2563eb;
    border-radius: 999px;
    background: #eff6ff;
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 950;
    text-decoration: none;
    white-space: nowrap;
    transition: transform .16s ease, background-color .16s ease, border-color .16s ease;
}

    .route-live-link:hover[b-bbjqv28a75] {
        transform: translateY(-1px);
        border-color: #1d4ed8;
        background: #dbeafe;
        color: #1e40af;
        text-decoration: none;
    }

    .route-live-link.compact[b-bbjqv28a75] {
        margin-top: 6px;
        min-height: 30px;
        padding: 6px 11px;
        font-size: 11px;
    }

.completed-route-item[b-bbjqv28a75] {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
}

    .completed-route-item > div[b-bbjqv28a75] {
        display: grid;
        gap: 4px;
        min-width: 0;
    }

@media (max-width: 640px) {
    .completed-route-item[b-bbjqv28a75] {
        grid-template-columns: 1fr;
        align-items: stretch;
    }

    .route-live-link[b-bbjqv28a75] {
        width: 100%;
    }
}


/* =========================================================
   School off-day notice
   ========================================================= */

.bus-holiday-card[b-bbjqv28a75] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 14px;
    align-items: center;
    padding: 18px 20px;
    border: 1px solid #fde68a;
    border-radius: 22px;
    background: linear-gradient(135deg, #fffbeb, #ffffff);
    box-shadow: 0 16px 40px rgba(146, 64, 14, .08);
}

.bus-holiday-badge[b-bbjqv28a75] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 8px 13px;
    border-radius: 999px;
    background: #fef3c7;
    color: #92400e;
    font-size: 13px;
    font-weight: 950;
}

.bus-holiday-card h2[b-bbjqv28a75] {
    margin: 0;
    color: #92400e;
    font-size: 18px;
    font-weight: 950;
}

.bus-holiday-card p[b-bbjqv28a75] {
    margin: 4px 0 0;
    color: #64748b;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.45;
}

@media (max-width: 640px) {
    .bus-holiday-card[b-bbjqv28a75] {
        grid-template-columns: 1fr;
    }

    .bus-holiday-badge[b-bbjqv28a75] {
        width: fit-content;
    }
}
/* _content/Arsakeio_Portal/Components/Pages/PRPAParentDetails.razor.rz.scp.css */
.change-details-page[b-04stdp4h81] {
    min-height: 100vh;
    padding: 32px;
    overflow-x: hidden;
    background: #ffffff;
}

.change-details-form-enter[b-04stdp4h81] {
    animation: changeDetailsSlideForm-b-04stdp4h81 .7s cubic-bezier(.22, 1, .36, 1) both;
    will-change: transform, opacity;
}

@keyframes changeDetailsSlideForm-b-04stdp4h81 {
    from {
        opacity: 0;
        transform: translateX(90px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.change-details-wizard[b-04stdp4h81] {
    max-width: 1180px;
    margin: 0 auto;
    display: grid;
    gap: 22px;
}

.change-details-hero[b-04stdp4h81],
.section-box[b-04stdp4h81],
.state-card[b-04stdp4h81] {
    border: 1px solid rgba(226, 232, 240, .88);
    background: rgba(255, 255, 255, .88);
    box-shadow: 0 22px 60px rgba(15, 23, 42, .07);
}

.change-details-hero[b-04stdp4h81] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    padding: 30px;
    border-radius: 28px;
}

.eyebrow[b-04stdp4h81] {
    display: inline-flex;
    padding: 7px 13px;
    border-radius: 999px;
    background: rgba(219, 234, 254, .9);
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 900;
    margin-bottom: 12px;
}

.change-details-hero h1[b-04stdp4h81] {
    margin: 0;
    color: #0f172a;
    font-size: clamp(34px, 4vw, 54px);
    font-weight: 950;
    letter-spacing: -.05em;
    line-height: .98;
}

.change-details-hero p[b-04stdp4h81] {
    max-width: 850px;
    margin: 10px 0 0;
    color: #64748b;
    font-size: 16px;
    line-height: 1.55;
}

.change-details-pane[b-04stdp4h81] {
    max-width: 900px;
    width: 100%;
    margin: 0 auto;
}

.section-box[b-04stdp4h81] {
    border-radius: 20px;
    padding: 22px;
    margin-bottom: 20px;
    backdrop-filter: blur(10px);
}

    .section-box h6[b-04stdp4h81] {
        margin: 0 0 18px;
        color: #334155;
        font-size: 15px;
        font-weight: 900;
    }

.form-row[b-04stdp4h81] {
    display: grid;
    grid-template-columns: 190px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
    margin-bottom: 14px;
}

    .form-row:last-child[b-04stdp4h81] {
        margin-bottom: 0;
    }

    .form-row label[b-04stdp4h81] {
        color: #475569;
        font-size: 13px;
        font-weight: 800;
    }

[b-04stdp4h81] .form-row .dxbs-editor,
[b-04stdp4h81] .form-row .dxbs-textbox,
[b-04stdp4h81] .form-row .dxbs-combobox,
[b-04stdp4h81] .form-row .dxbs-editor-container {
    width: 100%;
}

[b-04stdp4h81] .dxbs-editor-input,
[b-04stdp4h81] input.form-control,
[b-04stdp4h81] textarea.form-control {
    min-height: 42px;
    border-color: #dbe2ea !important;
    border-radius: 12px !important;
    background: rgba(255, 255, 255, .92) !important;
}

    [b-04stdp4h81] .dxbs-editor-input:focus,
    [b-04stdp4h81] input.form-control:focus,
    [b-04stdp4h81] textarea.form-control:focus {
        border-color: #2563eb !important;
        box-shadow: 0 0 0 4px rgba(37, 99, 235, .14) !important;
    }

[b-04stdp4h81] input[readonly],
[b-04stdp4h81] textarea[readonly] {
    background: #f8fafc !important;
    color: #64748b !important;
    border-color: #e2e8f0 !important;
    font-weight: 750;
}

.details-guidance[b-04stdp4h81] {
    display: grid;
    gap: 5px;
    margin-bottom: 20px;
    padding: 16px 18px;
    border: 1px solid #bae6fd;
    border-radius: 18px;
    background: linear-gradient(135deg, #f8fdff, #f0f9ff);
    color: #075985;
}

    .details-guidance strong[b-04stdp4h81] {
        font-size: 14px;
        font-weight: 950;
    }

    .details-guidance span[b-04stdp4h81] {
        font-size: 13px;
        font-weight: 700;
        line-height: 1.5;
    }

.candidate-actions[b-04stdp4h81] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    margin-top: 34px;
}

    .candidate-actions > div[b-04stdp4h81] {
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
        justify-content: flex-end;
    }

[b-04stdp4h81] .candidate-actions .dxbs-button,
[b-04stdp4h81] .candidate-actions .btn {
    border-radius: 12px !important;
    padding: 10px 20px !important;
    font-weight: 850 !important;
}

    [b-04stdp4h81] .candidate-actions .btn-primary,
    [b-04stdp4h81] .candidate-actions .dxbs-button:not(.btn-secondary):not(.btn-light) {
        background: #2563eb !important;
        border-color: #2563eb !important;
    }

.secondary-button[b-04stdp4h81] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 10px 18px;
    border: 1px solid rgba(226, 232, 240, .95);
    border-radius: 999px;
    background: #ffffff;
    color: #334155;
    font-family: inherit;
    font-size: 13px;
    font-weight: 900;
    cursor: pointer;
    transition: transform .16s ease, border-color .16s ease, background-color .16s ease;
}

    .secondary-button:hover[b-04stdp4h81] {
        transform: translateY(-1px);
        border-color: #cbd5e1;
        background: #f8fafc;
    }

.alert[b-04stdp4h81] {
    margin-bottom: 16px;
    padding: 13px 15px;
    border: 0;
    border-radius: 14px;
    font-weight: 800;
    line-height: 1.45;
}

.alert-warning[b-04stdp4h81] {
    background: #fff7ed;
    color: #9a3412;
}

.alert-success[b-04stdp4h81] {
    background: #dcfce7;
    color: #166534;
}

.alert-danger[b-04stdp4h81] {
    background: #fee2e2;
    color: #991b1b;
}

.state-card[b-04stdp4h81] {
    padding: 28px;
    border-radius: 24px;
}

    .state-card h2[b-04stdp4h81] {
        margin: 0;
        color: #0f172a;
        font-size: 22px;
        font-weight: 950;
    }

    .state-card p[b-04stdp4h81] {
        margin: 8px 0 0;
        color: #64748b;
        line-height: 1.55;
    }

    .state-card.error[b-04stdp4h81] {
        border-color: #fecaca;
        background: #fff1f2;
    }

        .state-card.error h2[b-04stdp4h81],
        .state-card.error p[b-04stdp4h81] {
            color: #991b1b;
        }

.candidate-success-popup[b-04stdp4h81]  .dxbs-modal-content {
    border-radius: 24px;
    backdrop-filter: blur(16px);
}

.success-box[b-04stdp4h81] {
    text-align: center;
    padding: 40px 30px;
}

.success-icon[b-04stdp4h81] {
    width: 78px;
    height: 78px;
    margin: 0 auto 20px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #22c55e;
    color: white;
    font-size: 40px;
    font-weight: 900;
}

.success-box h2[b-04stdp4h81] {
    font-size: 34px;
    font-weight: 900;
    margin-bottom: 10px;
    color: #0f172a;
}

.success-box p[b-04stdp4h81] {
    color: #475569;
    font-size: 18px;
    margin-bottom: 26px;
}

.success-actions[b-04stdp4h81] {
    display: flex;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
}

/* OTP popup */

[b-04stdp4h81] .otp-popup .dxbs-modal-content {
    border-radius: 22px !important;
    overflow: hidden !important;
    border: 1px solid rgba(226, 232, 240, .9) !important;
    box-shadow: 0 28px 90px rgba(15, 23, 42, .22) !important;
    background: rgba(255, 255, 255, .96) !important;
    backdrop-filter: blur(18px);
}

[b-04stdp4h81] .otp-popup .dxbs-popup-body {
    padding: 0 !important;
}

[b-04stdp4h81] .otp-card {
    padding: 34px 30px 28px;
    background: radial-gradient(circle at top, rgba(56, 189, 248, .12), transparent 38%), rgba(255, 255, 255, .96);
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

[b-04stdp4h81] .otp-icon {
    width: 72px;
    height: 72px;
    margin: 4px auto 14px;
    border-radius: 999px;
    background: linear-gradient(135deg, #2563eb, #38bdf8);
    display: grid;
    place-items: center;
    box-shadow: 0 18px 34px rgba(37, 99, 235, .24);
}

[b-04stdp4h81] .otp-shield {
    color: #fff;
    font-weight: 900;
    font-size: 32px;
    line-height: 1;
}

[b-04stdp4h81] .otp-title {
    width: 100%;
    margin: 8px 0;
    color: #0f172a;
    font-size: 30px;
    font-weight: 950;
    letter-spacing: -0.03em;
    text-align: center;
}

[b-04stdp4h81] .otp-sub {
    width: 100%;
    margin-bottom: 22px;
    color: #64748b;
    font-size: 15px;
    line-height: 1.55;
    text-align: center;
}

[b-04stdp4h81] .otp-email {
    display: block;
    margin-top: 4px;
    color: #0f172a;
    font-weight: 900;
    word-break: break-word;
}

[b-04stdp4h81] .otp-input-wrap {
    width: min(420px, 100%);
    margin: 4px auto 0;
    display: flex;
    flex-direction: column;
    align-items: center;
}

[b-04stdp4h81] .otp-label {
    display: block;
    margin-bottom: 10px;
    color: #0f172a;
    font-weight: 900;
    text-align: center;
}

[b-04stdp4h81] .otp-hint {
    margin-top: 10px;
    color: #64748b;
    font-size: 13px;
    text-align: center;
}

[b-04stdp4h81] .otp-input {
    width: min(420px, 100%);
    height: 60px;
    border: 2px solid rgba(203, 213, 225, .95);
    border-radius: 16px;
    outline: none;
    padding: 0 16px;
    background: #fff;
    color: #0f172a;
    font-size: 24px;
    font-weight: 950;
    letter-spacing: 18px;
    text-align: center;
}

    [b-04stdp4h81] .otp-input:focus {
        border-color: #2563eb;
        box-shadow: 0 0 0 5px rgba(37, 99, 235, .16);
    }

[b-04stdp4h81] .otp-error {
    width: min(420px, 100%);
    margin: 14px auto 0;
    padding: 11px 13px;
    border: 1px solid #fecaca;
    border-radius: 14px;
    background: #fef2f2;
    color: #991b1b;
    font-size: 14px;
    font-weight: 700;
    text-align: left;
}

[b-04stdp4h81] .otp-actions-2 {
    width: min(420px, 100%);
    margin: 18px auto 0;
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: 12px;
}

[b-04stdp4h81] .otp-btn.dxbs-button,
[b-04stdp4h81] .otp-btn.btn {
    min-height: 48px !important;
    border-radius: 14px !important;
    font-weight: 900 !important;
}

[b-04stdp4h81] .otp-primary.dxbs-button,
[b-04stdp4h81] .otp-primary.btn {
    background: #2563eb !important;
    border-color: #2563eb !important;
    box-shadow: 0 14px 28px rgba(37, 99, 235, .24) !important;
}

@media (max-width: 900px) {
    .change-details-page[b-04stdp4h81] {
        padding: 16px;
    }

    .change-details-hero[b-04stdp4h81] {
        flex-direction: column;
        align-items: stretch;
        padding: 22px;
    }

    .form-row[b-04stdp4h81] {
        grid-template-columns: 1fr;
        gap: 6px;
    }

    .candidate-actions[b-04stdp4h81] {
        flex-direction: column;
        align-items: stretch;
    }

        .candidate-actions > div[b-04stdp4h81] {
            justify-content: stretch;
        }

    [b-04stdp4h81] .candidate-actions .dxbs-button,
    [b-04stdp4h81] .candidate-actions .btn {
        width: 100%;
    }

    .secondary-button[b-04stdp4h81] {
        width: 100%;
    }
}

@media (max-width: 576px) {
    .change-details-page[b-04stdp4h81] {
        padding: 12px 10px 38px;
    }

    .change-details-wizard[b-04stdp4h81] {
        gap: 14px;
    }

    .change-details-hero[b-04stdp4h81],
    .section-box[b-04stdp4h81],
    .state-card[b-04stdp4h81] {
        border-radius: 20px;
    }

    .change-details-hero[b-04stdp4h81] {
        padding: 20px;
    }

        .change-details-hero h1[b-04stdp4h81] {
            font-size: 34px;
        }

        .change-details-hero p[b-04stdp4h81] {
            font-size: 14px;
            line-height: 1.45;
        }

    .section-box[b-04stdp4h81] {
        padding: 16px;
    }

    .details-guidance[b-04stdp4h81] {
        padding: 14px;
        border-radius: 16px;
    }

        .details-guidance strong[b-04stdp4h81] {
            font-size: 13px;
        }

        .details-guidance span[b-04stdp4h81] {
            font-size: 12px;
        }

    [b-04stdp4h81] .otp-card {
        padding: 26px 18px 20px;
    }

    [b-04stdp4h81] .otp-title {
        font-size: 24px;
    }

    [b-04stdp4h81] .otp-input {
        height: 54px;
        font-size: 21px;
        letter-spacing: 12px;
    }

    [b-04stdp4h81] .otp-actions-2 {
        grid-template-columns: 1fr;
    }

    .success-box[b-04stdp4h81] {
        padding: 32px 20px;
    }

        .success-box h2[b-04stdp4h81] {
            font-size: 26px;
        }

        .success-box p[b-04stdp4h81] {
            font-size: 15px;
        }
}


/* Parent details version: student/year selection is resolved internally */
.change-details-pane[b-04stdp4h81] {
    margin-top: 0;
}

.details-guidance[b-04stdp4h81] {
    margin-top: 0;
}


/* Portal access state */

.portal-access-state[b-04stdp4h81] {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    margin-bottom: 20px;
    padding: 16px 18px;
    border-radius: 18px;
    border: 1px solid rgba(226, 232, 240, .95);
    background: #f8fafc;
}

    .portal-access-state h6[b-04stdp4h81] {
        margin: 0 0 6px;
        color: #0f172a;
        font-size: 14px;
        font-weight: 950;
    }

    .portal-access-state p[b-04stdp4h81] {
        margin: 0;
        color: #475569;
        font-size: 13px;
        font-weight: 700;
        line-height: 1.5;
    }

    .portal-access-state.readonly[b-04stdp4h81] {
        border-color: #fed7aa;
        background: #fff7ed;
    }

        .portal-access-state.readonly h6[b-04stdp4h81],
        .portal-access-state.readonly p[b-04stdp4h81] {
            color: #9a3412;
        }

    .portal-access-state.denied[b-04stdp4h81] {
        border-color: #fecaca;
        background: #fef2f2;
    }

        .portal-access-state.denied h6[b-04stdp4h81],
        .portal-access-state.denied p[b-04stdp4h81] {
            color: #991b1b;
        }

.portal-access-icon[b-04stdp4h81] {
    flex: 0 0 auto;
    width: 34px;
    height: 34px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    background: #ffffff;
    color: #0f172a;
    font-weight: 950;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .08);
}

.portal-access-state.readonly .portal-access-icon[b-04stdp4h81] {
    color: #9a3412;
}

.portal-access-state.denied .portal-access-icon[b-04stdp4h81] {
    color: #991b1b;
}

.candidate-actions.single-action[b-04stdp4h81] {
    justify-content: flex-end;
}
/* _content/Arsakeio_Portal/Components/Pages/PRPAParentFinancials.razor.rz.scp.css */
.financial-page[b-68w4on085y] {
    min-height: 100vh;
    padding: clamp(16px, 2.4vw, 34px);
    overflow-x: hidden;
    background: #ffffff;
}

.financial-form-enter[b-68w4on085y] {
    animation: financialSlideForm-b-68w4on085y .7s cubic-bezier(.22, 1, .36, 1) both;
    will-change: transform, opacity;
}

@keyframes financialSlideForm-b-68w4on085y {
    from {
        opacity: 0;
        transform: translateX(90px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.financial-shell[b-68w4on085y] {
    width: min(100%, 1440px);
    margin: 0 auto;
    display: grid;
    gap: clamp(16px, 1.5vw, 22px);
}

.financial-hero[b-68w4on085y],
.finance-card[b-68w4on085y],
.summary-card[b-68w4on085y],
.state-card[b-68w4on085y],
.financial-toolbar[b-68w4on085y] {
    border: 1px solid rgba(226, 232, 240, .88);
    background: rgba(255, 255, 255, .92);
    box-shadow: 0 22px 60px rgba(15, 23, 42, .07);
}

.financial-hero[b-68w4on085y] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    padding: clamp(22px, 2vw, 30px);
    border-radius: 28px;
}

.eyebrow[b-68w4on085y] {
    display: inline-flex;
    padding: 7px 13px;
    border-radius: 999px;
    background: rgba(219, 234, 254, .9);
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 900;
    margin-bottom: 12px;
}

.financial-hero h1[b-68w4on085y] {
    margin: 0;
    color: #0f172a;
    font-size: clamp(34px, 3.2vw, 56px);
    font-weight: 950;
    letter-spacing: -.05em;
    line-height: .98;
}

.financial-hero p[b-68w4on085y] {
    max-width: 850px;
    margin: 10px 0 0;
    color: #64748b;
    font-size: 16px;
    line-height: 1.55;
}

.secondary-button[b-68w4on085y] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 10px 18px;
    border: 1px solid rgba(226, 232, 240, .95);
    border-radius: 999px;
    background: #ffffff;
    color: #334155;
    font-family: inherit;
    font-size: 13px;
    font-weight: 900;
    cursor: pointer;
    transition: transform .16s ease, border-color .16s ease, background-color .16s ease;
}

    .secondary-button.small[b-68w4on085y] {
        min-height: 38px;
        padding: 8px 15px;
    }

    .secondary-button:hover:not(:disabled)[b-68w4on085y] {
        transform: translateY(-1px);
        border-color: #cbd5e1;
        background: #f8fafc;
    }

    .secondary-button:disabled[b-68w4on085y] {
        cursor: not-allowed;
        opacity: .58;
    }

.financial-toolbar[b-68w4on085y] {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 18px;
    padding: 18px 20px;
    border-radius: 22px;
}

.toolbar-selectors[b-68w4on085y] {
    display: flex;
    align-items: flex-end;
    gap: 14px;
    flex-wrap: wrap;
}

.toolbar-field[b-68w4on085y] {
    min-width: 260px;
}

    .toolbar-field.period-field[b-68w4on085y] {
        min-width: 310px;
    }

    .toolbar-field.student-field[b-68w4on085y] {
        min-width: min(420px, 42vw);
    }

.toolbar-label[b-68w4on085y] {
    display: block;
    margin-bottom: 9px;
    color: #64748b;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .03em;
    text-transform: uppercase;
}

[b-68w4on085y] .financial-selector-combo,
[b-68w4on085y] .financial-selector-combo .dxbl-text-edit,
[b-68w4on085y] .financial-selector-combo .dxbl-edit {
    width: 100%;
    border-radius: 16px !important;
}

    [b-68w4on085y] .financial-selector-combo input,
    [b-68w4on085y] .financial-selector-combo input[readonly],
    [b-68w4on085y] .financial-selector-combo input[role="combobox"],
    [b-68w4on085y] .financial-selector-combo input.dxbl-text-edit-input {
        min-height: 42px !important;
        background-color: #ffffff !important;
        color: #0f172a !important;
        -webkit-text-fill-color: #0f172a !important;
        font-weight: 850 !important;
        cursor: pointer !important;
    }

.student-option-item[b-68w4on085y],
.student-option-edit[b-68w4on085y] {
    display: grid;
    gap: 2px;
    color: inherit;
}

    .student-option-item strong[b-68w4on085y],
    .student-option-edit[b-68w4on085y] {
        font-size: 13px;
        font-weight: 950;
        color: inherit;
        -webkit-text-fill-color: currentColor;
    }

/* DevExpress dropdown selected/focused item readability.
   The old CSS forced the student name to dark text, which made the
   highlighted blue row hard to read. Let normal rows inherit the default
   text color, and force selected rows to white. */
[b-68w4on085y] .dxbl-listbox-item-selected .student-option-item,
[b-68w4on085y] .dxbl-listbox-item-selected .student-option-item strong,
[b-68w4on085y] .dxbl-listbox-item.dxbl-selected .student-option-item,
[b-68w4on085y] .dxbl-listbox-item.dxbl-selected .student-option-item strong,
[b-68w4on085y] .dxbl-listbox-item[aria-selected="true"] .student-option-item,
[b-68w4on085y] .dxbl-listbox-item[aria-selected="true"] .student-option-item strong,
[b-68w4on085y] .dxbl-listbox-item.dxbl-focused .student-option-item,
[b-68w4on085y] .dxbl-listbox-item.dxbl-focused .student-option-item strong,
[b-68w4on085y] .dxbl-listbox-item:focus .student-option-item,
[b-68w4on085y] .dxbl-listbox-item:focus .student-option-item strong {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.period-switch[b-68w4on085y] {
    display: inline-flex;
    gap: 6px;
    padding: 5px;
    border: 1px solid #e2e8f0;
    border-radius: 999px;
    background: #f8fafc;
}

.period-pill[b-68w4on085y] {
    min-height: 36px;
    padding: 8px 16px;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: #475569;
    font-family: inherit;
    font-size: 13px;
    font-weight: 900;
    cursor: pointer;
    transition: .16s ease;
}

    .period-pill.active[b-68w4on085y] {
        background: #2563eb;
        color: #ffffff;
        box-shadow: 0 10px 20px rgba(37, 99, 235, .22);
    }

    .period-pill:disabled[b-68w4on085y] {
        cursor: not-allowed;
        opacity: .65;
    }

.summary-grid[b-68w4on085y] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(12px, 1.1vw, 16px);
}

.summary-card[b-68w4on085y] {
    min-height: 138px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: clamp(18px, 1.5vw, 22px);
    border-radius: 24px;
    overflow: hidden;
}

    .summary-card span[b-68w4on085y] {
        color: #64748b;
        font-size: 12px;
        font-weight: 900;
        letter-spacing: .035em;
        text-transform: uppercase;
    }

    .summary-card strong[b-68w4on085y] {
        margin-top: 12px;
        color: #0f172a;
        font-size: clamp(24px, 2vw, 34px);
        font-weight: 950;
        letter-spacing: -.04em;
        line-height: 1.05;
        word-break: break-word;
    }

    .summary-card small[b-68w4on085y] {
        margin-top: 10px;
        color: #64748b;
        font-size: 13px;
        font-weight: 800;
    }

    .summary-card.balance[b-68w4on085y] {
        background: linear-gradient(135deg, #eff6ff, #ffffff);
        border-color: #bfdbfe;
    }

        .summary-card.balance strong[b-68w4on085y] {
            color: #1d4ed8;
        }

    .summary-card.rf-card strong[b-68w4on085y] {
        font-size: 16px;
        letter-spacing: 0;
        line-height: 1.35;
    }

.finance-card[b-68w4on085y] {
    border-radius: 24px;
    padding: clamp(18px, 1.5vw, 22px);
    overflow: hidden;
}

.chart-card[b-68w4on085y] {
    min-height: 390px;
}

.card-header[b-68w4on085y] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
    margin-bottom: 16px;
}

    .card-header h2[b-68w4on085y] {
        margin: 0;
        color: #0f172a;
        font-size: 20px;
        font-weight: 950;
        letter-spacing: -.025em;
    }

    .card-header p[b-68w4on085y] {
        max-width: 760px;
        margin: 6px 0 0;
        color: #64748b;
        font-size: 14px;
        line-height: 1.5;
    }

.grid-total[b-68w4on085y] {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 7px 12px;
    border-radius: 999px;
    background: #eff6ff;
    color: #1d4ed8;
    font-size: 13px;
    font-weight: 950;
}

    .grid-total.success[b-68w4on085y] {
        background: #dcfce7;
        color: #166534;
    }

.finance-grid-layout[b-68w4on085y] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(14px, 1.2vw, 18px);
}

[b-68w4on085y] .finance-chart {
    min-height: 300px;
}

[b-68w4on085y] .finance-grid .dxbl-grid,
[b-68w4on085y] .finance-grid {
    border-radius: 18px;
    overflow: hidden;
}

.empty-state[b-68w4on085y] {
    padding: 24px;
    border: 1px dashed #cbd5e1;
    border-radius: 18px;
    background: #f8fafc;
    color: #64748b;
    font-size: 14px;
    font-weight: 800;
    text-align: center;
}

.state-card[b-68w4on085y] {
    padding: 28px;
    border-radius: 24px;
}

    .state-card h2[b-68w4on085y] {
        margin: 0;
        color: #0f172a;
        font-size: 22px;
        font-weight: 950;
    }

    .state-card p[b-68w4on085y] {
        margin: 8px 0 0;
        color: #64748b;
        line-height: 1.55;
    }

    .state-card.error[b-68w4on085y] {
        border-color: #fecaca;
        background: #fff1f2;
    }

        .state-card.error h2[b-68w4on085y],
        .state-card.error p[b-68w4on085y] {
            color: #991b1b;
        }

.financial-actions[b-68w4on085y] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    margin-top: 24px;
}

    .financial-actions.single-action[b-68w4on085y] {
        justify-content: flex-end;
    }

[b-68w4on085y] .financial-actions .dxbs-button,
[b-68w4on085y] .financial-actions .btn {
    border-radius: 12px !important;
    padding: 10px 20px !important;
    font-weight: 850 !important;
}

@media (min-width: 1600px) {
    .financial-shell[b-68w4on085y] {
        width: min(100%, 1500px);
    }

    .chart-card[b-68w4on085y] {
        min-height: 360px;
    }

    [b-68w4on085y] .finance-chart {
        min-height: 280px;
    }

    .summary-card[b-68w4on085y] {
        min-height: 132px;
    }
}

@media (max-width: 1200px) {
    .summary-grid[b-68w4on085y] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .finance-grid-layout[b-68w4on085y] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 900px) {
    .financial-page[b-68w4on085y] {
        padding: 16px;
    }

    .financial-hero[b-68w4on085y],
    .financial-toolbar[b-68w4on085y] {
        flex-direction: column;
        align-items: stretch;
    }

    .financial-hero[b-68w4on085y] {
        padding: 22px;
    }

    .toolbar-selectors[b-68w4on085y] {
        display: grid;
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .toolbar-field[b-68w4on085y],
    .toolbar-field.period-field[b-68w4on085y],
    .toolbar-field.student-field[b-68w4on085y] {
        min-width: 0;
        width: 100%;
    }

    .summary-grid[b-68w4on085y] {
        grid-template-columns: 1fr;
    }

    .card-header[b-68w4on085y] {
        flex-direction: column;
    }

    .grid-total[b-68w4on085y] {
        align-self: flex-start;
    }

    .period-switch[b-68w4on085y] {
        width: 100%;
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .secondary-button[b-68w4on085y] {
        width: 100%;
    }
}

@media (max-width: 576px) {
    .financial-page[b-68w4on085y] {
        padding: 12px 10px 38px;
    }

    .financial-shell[b-68w4on085y] {
        gap: 14px;
    }

    .financial-hero[b-68w4on085y],
    .finance-card[b-68w4on085y],
    .summary-card[b-68w4on085y],
    .state-card[b-68w4on085y],
    .financial-toolbar[b-68w4on085y] {
        border-radius: 20px;
    }

        .financial-hero h1[b-68w4on085y] {
            font-size: 34px;
        }

        .financial-hero p[b-68w4on085y] {
            font-size: 14px;
            line-height: 1.45;
        }

    .summary-card[b-68w4on085y] {
        min-height: 126px;
    }

    .period-switch[b-68w4on085y] {
        grid-template-columns: 1fr;
        border-radius: 18px;
    }

    .period-pill[b-68w4on085y] {
        border-radius: 14px;
    }

    .chart-card[b-68w4on085y] {
        min-height: 340px;
    }

    [b-68w4on085y] .finance-chart {
        min-height: 250px;
    }
}


/* =========================================================
   Family total financial view
   ========================================================= */

.student-option-item small[b-68w4on085y] {
    display: block;
    margin-top: 2px;
    color: inherit;
    font-size: 11px;
    font-weight: 750;
    opacity: .82;
}

.student-option-item.total strong[b-68w4on085y] {
    color: inherit;
}

.rf-overview-card[b-68w4on085y] {
    padding: 18px 20px;
}

.card-header.compact[b-68w4on085y] {
    margin-bottom: 12px;
}

.rf-code-list[b-68w4on085y] {
    display: grid;
    gap: 8px;
}

.rf-code-row[b-68w4on085y] {
    display: grid;
    grid-template-columns: minmax(180px, .75fr) minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    padding: 10px 12px;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    background: #f8fafc;
}

    .rf-code-row span[b-68w4on085y] {
        min-width: 0;
        color: #0f172a;
        font-size: 13px;
        font-weight: 900;
        overflow-wrap: anywhere;
    }

    .rf-code-row strong[b-68w4on085y] {
        min-width: 0;
        color: #1d4ed8;
        font-size: 13px;
        font-weight: 950;
        overflow-wrap: anywhere;
    }

@media (max-width: 900px) {
    .rf-code-row[b-68w4on085y] {
        grid-template-columns: 1fr;
        gap: 5px;
    }
}
/* _content/Arsakeio_Portal/Components/Pages/PRPAPortalPermissionsAdmin.razor.rz.scp.css */
.prca-admin-page[b-sfx784rjih] {
    width: 100%;
    min-height: 100vh;
    padding: 40px 32px 80px;
    background: #ffffff;
}

.admin-shell[b-sfx784rjih] {
    width: 100%;
    max-width: none;
    margin: 0;
    transition: filter .28s ease, opacity .28s ease, transform .28s ease;
}

/* Soft-focus the page behind the Father / Mother preview. */
.prca-admin-page.role-preview-open .admin-shell[b-sfx784rjih] {
    filter: blur(7px) saturate(.86);
    opacity: .68;
    transform: scale(.996);
    pointer-events: none;
    user-select: none;
}

.admin-header[b-sfx784rjih] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    width: 100%;
    margin-bottom: 22px;
    padding: 30px;
    border: 1px solid rgba(226, 232, 240, .92);
    border-radius: 28px;
    background: rgba(255, 255, 255, .88);
    box-shadow: 0 24px 70px rgba(15, 23, 42, .08);
}

.eyebrow[b-sfx784rjih] {
    display: inline-flex;
    margin-bottom: 12px;
    padding: 7px 13px;
    border-radius: 999px;
    background: rgba(219, 234, 254, .9);
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 900;
}

.admin-header h1[b-sfx784rjih] {
    margin: 0;
    color: #0f172a;
    font-size: clamp(32px, 4vw, 52px);
    font-weight: 950;
    letter-spacing: -.05em;
}

.admin-header p[b-sfx784rjih] {
    max-width: 900px;
    margin: 10px 0 0;
    color: #64748b;
    font-size: 16px;
    line-height: 1.55;
}

.header-actions[b-sfx784rjih] {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    flex-wrap: wrap;
}

[b-sfx784rjih] .save-main.dxbs-button,
[b-sfx784rjih] .save-main.btn {
    padding: 13px 28px !important;
    border-color: #2563eb !important;
    border-radius: 999px !important;
    background: #2563eb !important;
    color: #fff !important;
    font-weight: 900 !important;
    box-shadow: 0 16px 34px rgba(37, 99, 235, .25);
}

[b-sfx784rjih] .sync-main.dxbs-button,
[b-sfx784rjih] .sync-main.btn {
    border-color: #0f172a !important;
    background: #0f172a !important;
    box-shadow: 0 16px 34px rgba(15, 23, 42, .2) !important;
}

[b-sfx784rjih] .save-small.dxbs-button,
[b-sfx784rjih] .save-small.btn {
    padding: 10px 18px !important;
    font-size: 14px !important;
}

.admin-alert[b-sfx784rjih] {
    margin-bottom: 16px;
    padding: 14px 18px;
    border: 1px solid transparent;
    border-radius: 16px;
    font-weight: 800;
    line-height: 1.45;
}

    .admin-alert.success[b-sfx784rjih] {
        border-color: #bbf7d0;
        background: #dcfce7;
        color: #166534;
    }

    .admin-alert.error[b-sfx784rjih] {
        border-color: #fecaca;
        background: #fee2e2;
        color: #991b1b;
    }

    .admin-alert.warning[b-sfx784rjih] {
        border-color: #fed7aa;
        background: #fff7ed;
        color: #9a3412;
    }

    .admin-alert.info[b-sfx784rjih] {
        border-color: #bae6fd;
        background: #f0f9ff;
        color: #075985;
    }

.permissions-filter-card[b-sfx784rjih] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    align-items: stretch;
    width: 100%;
    margin-bottom: 22px;
    padding: 20px;
    border: 1px solid rgba(226, 232, 240, .92);
    border-radius: 22px;
    background: rgba(255, 255, 255, .9);
    box-shadow: 0 16px 44px rgba(15, 23, 42, .06);
}

.filter-field[b-sfx784rjih] {
    display: grid;
    min-width: 0;
    gap: 8px;
}

    .filter-field label[b-sfx784rjih] {
        color: #334155;
        font-weight: 900;
    }

.filter-label-row[b-sfx784rjih] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-width: 0;
}

.filter-scope-badge[b-sfx784rjih] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 4px 8px;
    border: 1px solid #bfdbfe;
    border-radius: 999px;
    background: #eff6ff;
    color: #1d4ed8;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .03em;
    line-height: 1.2;
    text-align: center;
    white-space: nowrap;
}

.filter-help-text[b-sfx784rjih] {
    display: block;
    min-height: 34px;
    color: #64748b;
    font-size: 12px;
    font-weight: 750;
    line-height: 1.4;
}

.header-filter-field[b-sfx784rjih] {
    grid-template-rows: auto auto minmax(34px, auto);
    align-content: start;
    padding: 12px;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    background: #f8fafc;
    transition: opacity .18s ease, background-color .18s ease, border-color .18s ease, box-shadow .18s ease;
}

    .header-filter-field.always-active[b-sfx784rjih] {
        border-color: #dbeafe;
        background: #f8fbff;
    }

        .header-filter-field.always-active .filter-scope-badge[b-sfx784rjih] {
            border-color: #bfdbfe;
            background: #eff6ff;
            color: #1d4ed8;
        }

.role-filter-field.active[b-sfx784rjih] {
    border-color: #93c5fd;
    background: #eff6ff;
    box-shadow: 0 0 0 4px rgba(37, 99, 235, .08);
}

.role-filter-field.inactive[b-sfx784rjih] {
    border-color: #e2e8f0;
    background: #f8fafc;
    opacity: .62;
}

    .role-filter-field.inactive .filter-scope-badge[b-sfx784rjih] {
        border-color: #cbd5e1;
        background: #e2e8f0;
        color: #64748b;
    }

    .role-filter-field.inactive label[b-sfx784rjih],
    .role-filter-field.inactive .filter-help-text[b-sfx784rjih] {
        color: #94a3b8;
    }

[b-sfx784rjih] .role-filter-field.inactive .dxbs-editor,
[b-sfx784rjih] .role-filter-field.inactive .dxbs-combobox,
[b-sfx784rjih] .role-filter-field.inactive .dxbs-editor-container,
[b-sfx784rjih] .role-filter-field.inactive input {
    cursor: not-allowed !important;
}

[b-sfx784rjih] .permissions-filter-card .dxbs-editor,
[b-sfx784rjih] .permissions-filter-card .dxbs-combobox,
[b-sfx784rjih] .permissions-filter-card .dxbs-editor-container,
[b-sfx784rjih] .override-search-card .dxbs-editor,
[b-sfx784rjih] .override-search-card .dxbs-editor-container {
    width: 100%;
}

.scope-loading[b-sfx784rjih] {
    margin: -6px 0 18px;
    padding: 10px 15px;
    border: 1px solid #bfdbfe;
    border-radius: 14px;
    background: #eff6ff;
    color: #1d4ed8;
    font-size: 13px;
    font-weight: 900;
}

[b-sfx784rjih] .admin-tabs .dxbs-tabs {
    border: 0;
}

[b-sfx784rjih] .admin-tabs .nav-tabs {
    display: flex;
    flex-wrap: nowrap !important;
    gap: 10px;
    margin: 0 0 34px !important;
    padding: 12px 14px !important;
    overflow-x: auto;
    border: 1px solid rgba(226, 232, 240, .92) !important;
    border-radius: 22px !important;
    background: rgba(255, 255, 255, .9) !important;
    box-shadow: 0 16px 44px rgba(15, 23, 42, .06);
}

[b-sfx784rjih] .admin-tabs .tab-content,
[b-sfx784rjih] .admin-tabs .tab-pane {
    overflow: visible !important;
}

[b-sfx784rjih] .admin-tabs .tab-content {
    padding-top: 0 !important;
}

[b-sfx784rjih] .admin-tabs .nav-tabs .nav-link {
    padding: 10px 16px !important;
    border: 1px solid transparent !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: #64748b !important;
    font-weight: 900 !important;
    white-space: nowrap;
}

    [b-sfx784rjih] .admin-tabs .nav-tabs .nav-link:hover {
        background: #f1f5f9 !important;
        color: #0f172a !important;
    }

    [b-sfx784rjih] .admin-tabs .nav-tabs .nav-link.active {
        border-color: #2563eb !important;
        background: #2563eb !important;
        color: #fff !important;
        box-shadow: 0 12px 26px rgba(37, 99, 235, .22);
    }

.tab-panel[b-sfx784rjih] {
    width: 100%;
    padding: 26px;
    overflow: visible;
    border: 1px solid rgba(226, 232, 240, .92);
    border-radius: 26px;
    background: rgba(255, 255, 255, .94);
    box-shadow: 0 22px 60px rgba(15, 23, 42, .07);
}

.panel-head[b-sfx784rjih] {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
    margin-bottom: 22px;
}

    .panel-head.standard-order[b-sfx784rjih] {
        flex-direction: row;
    }

    .panel-head h2[b-sfx784rjih],
    .panel-head h3[b-sfx784rjih] {
        margin: 0;
        color: #0f172a;
        font-weight: 950;
    }

    .panel-head h2[b-sfx784rjih] {
        font-size: 24px;
    }

    .panel-head h3[b-sfx784rjih] {
        font-size: 20px;
    }

    .panel-head p[b-sfx784rjih] {
        max-width: 980px;
        margin: 7px 0 0;
        color: #64748b;
        line-height: 1.5;
    }

.panel-head-actions[b-sfx784rjih] {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex-wrap: wrap;
}

[b-sfx784rjih] .role-preview-button.dxbs-button,
[b-sfx784rjih] .role-preview-button.btn {
    padding: 10px 18px !important;
    border-color: #93c5fd !important;
    border-radius: 999px !important;
    background: #eff6ff !important;
    color: #1d4ed8 !important;
    font-weight: 900 !important;
    box-shadow: 0 10px 24px rgba(37, 99, 235, .1);
}

    [b-sfx784rjih] .role-preview-button.dxbs-button:hover,
    [b-sfx784rjih] .role-preview-button.btn:hover {
        border-color: #2563eb !important;
        background: #dbeafe !important;
        color: #1e40af !important;
    }

.feature-summary-grid[b-sfx784rjih] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 22px;
}

.feature-summary-card[b-sfx784rjih],
.context-card[b-sfx784rjih],
.debtor-summary-card[b-sfx784rjih] {
    min-width: 0;
    padding: 18px;
    border: 1px solid rgba(226, 232, 240, .95);
    border-radius: 20px;
    background: rgba(248, 250, 252, .92);
}

    .feature-summary-card span[b-sfx784rjih],
    .context-card > span[b-sfx784rjih],
    .debtor-summary-card span[b-sfx784rjih] {
        display: block;
        margin-bottom: 8px;
        color: #64748b;
        font-size: 12px;
        font-weight: 900;
        letter-spacing: .06em;
        text-transform: uppercase;
    }

    .feature-summary-card strong[b-sfx784rjih],
    .debtor-summary-card strong[b-sfx784rjih] {
        display: block;
        color: #0f172a;
        font-size: 28px;
        font-weight: 950;
        line-height: 1.1;
    }

    .context-card > strong[b-sfx784rjih] {
        display: block;
        overflow-wrap: anywhere;
        color: #0f172a;
        font-size: 20px;
        font-weight: 950;
        line-height: 1.15;
    }

    .feature-summary-card small[b-sfx784rjih],
    .context-card > small[b-sfx784rjih],
    .debtor-summary-card small[b-sfx784rjih] {
        display: block;
        margin-top: 7px;
        color: #94a3b8;
        font-weight: 750;
        line-height: 1.4;
    }

    .feature-summary-card.warning[b-sfx784rjih],
    .context-card.warning[b-sfx784rjih],
    .debtor-summary-card.warning[b-sfx784rjih] {
        border-color: #fed7aa;
        background: #fff7ed;
    }

        .feature-summary-card.warning span[b-sfx784rjih],
        .feature-summary-card.warning small[b-sfx784rjih],
        .context-card.warning > span[b-sfx784rjih],
        .context-card.warning > small[b-sfx784rjih],
        .debtor-summary-card.warning span[b-sfx784rjih],
        .debtor-summary-card.warning small[b-sfx784rjih] {
            color: #9a3412;
        }

    .feature-summary-card.success[b-sfx784rjih],
    .context-card.success[b-sfx784rjih],
    .debtor-summary-card.success[b-sfx784rjih] {
        border-color: #bbf7d0;
        background: #f0fdf4;
    }

        .feature-summary-card.success span[b-sfx784rjih],
        .feature-summary-card.success small[b-sfx784rjih],
        .context-card.success > span[b-sfx784rjih],
        .context-card.success > small[b-sfx784rjih],
        .debtor-summary-card.success span[b-sfx784rjih],
        .debtor-summary-card.success small[b-sfx784rjih] {
            color: #166534;
        }

    .context-card.info[b-sfx784rjih],
    .debtor-summary-card.info[b-sfx784rjih] {
        border-color: #bae6fd;
        background: #f0f9ff;
    }

        .context-card.info > span[b-sfx784rjih],
        .context-card.info > small[b-sfx784rjih],
        .debtor-summary-card.info span[b-sfx784rjih],
        .debtor-summary-card.info small[b-sfx784rjih] {
            color: #075985;
        }

.permission-context[b-sfx784rjih] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 18px;
}

.settings-grid-view[b-sfx784rjih] {
    width: 100%;
    margin-top: 12px;
    overflow: hidden;
    border-radius: 20px;
}

[b-sfx784rjih] .settings-grid-view .dxbs-grid {
    overflow: hidden !important;
    border: 1px solid rgba(226, 232, 240, .92) !important;
    border-radius: 18px !important;
}

[b-sfx784rjih] .settings-grid-view table {
    background: #fff;
}

[b-sfx784rjih] .settings-grid-view th {
    background: #f8fafc !important;
    color: #475569 !important;
    font-size: 12px !important;
    font-weight: 950 !important;
    letter-spacing: .05em;
    text-transform: uppercase;
    white-space: nowrap !important;
}

[b-sfx784rjih] .settings-grid-view td {
    vertical-align: middle !important;
}

[b-sfx784rjih] .settings-grid-view .dxbs-grid-search-box {
    border-radius: 12px !important;
}

[b-sfx784rjih] .settings-grid-view .dxbs-button,
[b-sfx784rjih] .settings-grid-view .btn {
    border-radius: 10px !important;
    font-weight: 800 !important;
}

[b-sfx784rjih] .permissions-grid .dxbs-grid-group-panel {
    margin-bottom: 12px !important;
    border: 1px dashed rgba(148, 163, 184, .65) !important;
    border-radius: 14px !important;
    background: #f8fafc !important;
    color: #64748b !important;
    font-weight: 800 !important;
}

[b-sfx784rjih] .permissions-toolbar.dxbs-toolbar,
[b-sfx784rjih] .permissions-toolbar .dxbs-toolbar {
    margin-bottom: 12px !important;
    padding: 8px !important;
    border: 1px solid rgba(226, 232, 240, .92) !important;
    border-radius: 16px !important;
    background: #fff !important;
}

[b-sfx784rjih] .permissions-toolbar .dxbs-button,
[b-sfx784rjih] .permissions-toolbar .btn {
    border-radius: 12px !important;
    font-weight: 800 !important;
}

.permission-check-state[b-sfx784rjih] {
    display: inline-flex;
    min-width: 102px;
    align-items: center;
    gap: 8px;
    padding: 5px 9px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
    white-space: nowrap;
}

    .permission-check-state.allowed[b-sfx784rjih] {
        border-color: #86efac;
        background: #dcfce7;
        color: #166534;
    }

    .permission-check-state.denied[b-sfx784rjih] {
        border-color: #fecaca;
        background: #fee2e2;
        color: #991b1b;
    }

    .permission-check-state.inherited[b-sfx784rjih] {
        border-color: #bae6fd;
        background: #e0f2fe;
        color: #075985;
    }

[b-sfx784rjih] .permission-check-state .dxbs-checkbox {
    margin: 0 !important;
}

.effective-badge[b-sfx784rjih],
.rule-source-badge[b-sfx784rjih] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 72px;
    padding: 5px 10px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
    white-space: nowrap;
}

    .effective-badge.yes[b-sfx784rjih] {
        border-color: #86efac;
        background: #dcfce7;
        color: #166534;
    }

    .effective-badge.no[b-sfx784rjih] {
        border-color: #fecaca;
        background: #fee2e2;
        color: #991b1b;
    }

    .rule-source-badge.year[b-sfx784rjih] {
        border-color: #86efac;
        background: #dcfce7;
        color: #166534;
    }

    .rule-source-badge.default[b-sfx784rjih] {
        border-color: #fdba74;
        background: #ffedd5;
        color: #9a3412;
    }

    .rule-source-badge.registry[b-sfx784rjih] {
        border-color: #c4b5fd;
        background: #ede9fe;
        color: #6d28d9;
    }

    .rule-source-badge.user[b-sfx784rjih] {
        border-color: #93c5fd;
        background: #dbeafe;
        color: #1d4ed8;
    }

    .rule-source-badge.inherited[b-sfx784rjih] {
        border-color: #cbd5e1;
        background: #f1f5f9;
        color: #475569;
    }

[b-sfx784rjih] .row-reset-button.dxbs-button,
[b-sfx784rjih] .row-reset-button.btn {
    padding: 6px 10px !important;
    border-color: #cbd5e1 !important;
    border-radius: 999px !important;
    background: #fff !important;
    color: #475569 !important;
    font-size: 12px !important;
    font-weight: 900 !important;
}

    [b-sfx784rjih] .row-reset-button.dxbs-button:hover,
    [b-sfx784rjih] .row-reset-button.btn:hover {
        border-color: #fca5a5 !important;
        background: #fff1f2 !important;
        color: #be123c !important;
    }

.override-search-card[b-sfx784rjih] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 14px;
    align-items: end;
    margin-bottom: 18px;
    padding: 18px;
    overflow: visible;
    border: 1px solid rgba(226, 232, 240, .92);
    border-radius: 22px;
    background: rgba(248, 250, 252, .86);
}

.override-combo-field[b-sfx784rjih],
.override-combo-wrap[b-sfx784rjih] {
    min-width: 0;
}

.override-combo-wrap[b-sfx784rjih] {
    position: relative;
    z-index: 40;
}

.override-search-status[b-sfx784rjih] {
    position: absolute;
    top: calc(100% + 7px);
    right: 8px;
    z-index: 52;
    padding: 6px 10px;
    border-radius: 999px;
    background: #eff6ff;
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 900;
}

.override-suggestion-list[b-sfx784rjih] {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    right: 0;
    z-index: 50;
    display: grid;
    max-height: 420px;
    overflow-y: auto;
    border: 1px solid #cbd5e1;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 24px 70px rgba(15, 23, 42, .18);
}

.override-suggestion-item[b-sfx784rjih] {
    display: grid;
    grid-template-columns: minmax(170px, 1fr) minmax(220px, 1.2fr) auto;
    gap: 14px;
    align-items: center;
    width: 100%;
    padding: 14px 16px;
    border: 0;
    border-bottom: 1px solid #e2e8f0;
    background: #fff;
    color: inherit;
    text-align: left;
    cursor: pointer;
}

    .override-suggestion-item:last-child[b-sfx784rjih] {
        border-bottom: 0;
    }

    .override-suggestion-item:hover[b-sfx784rjih],
    .override-suggestion-item:focus-visible[b-sfx784rjih] {
        outline: 0;
        background: #f8fafc;
    }

.suggestion-main[b-sfx784rjih],
.suggestion-parent[b-sfx784rjih] {
    display: grid;
    min-width: 0;
    gap: 3px;
}

    .suggestion-main strong[b-sfx784rjih],
    .suggestion-parent strong[b-sfx784rjih] {
        overflow: hidden;
        color: #0f172a;
        font-size: 14px;
        font-weight: 950;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .suggestion-main small[b-sfx784rjih],
    .suggestion-parent small[b-sfx784rjih] {
        overflow: hidden;
        color: #64748b;
        font-size: 12px;
        font-weight: 750;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

.suggestion-status[b-sfx784rjih] {
    display: inline-flex;
    justify-content: center;
    min-width: 70px;
    padding: 6px 9px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 950;
}

    .suggestion-status.debtor[b-sfx784rjih] {
        background: #fee2e2;
        color: #991b1b;
    }

    .suggestion-status.clear[b-sfx784rjih] {
        background: #dcfce7;
        color: #166534;
    }

.user-override-context[b-sfx784rjih] {
    margin-top: 22px;
}

.override-actions-head[b-sfx784rjih] {
    margin-top: 24px;
}

.reason-edit-cell[b-sfx784rjih] {
    min-width: 230px;
}

[b-sfx784rjih] .reason-edit-cell .dxbs-editor,
[b-sfx784rjih] .reason-edit-cell .dxbs-editor-container {
    width: 100%;
}

[b-sfx784rjih] .clear-selection-btn.dxbs-button,
[b-sfx784rjih] .clear-selection-btn.btn {
    padding: 10px 16px !important;
    border-color: #cbd5e1 !important;
    border-radius: 999px !important;
    background: #fff !important;
    color: #475569 !important;
    font-weight: 900 !important;
}

.debtor-summary-grid[b-sfx784rjih] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 22px;
}

.settings-section-card[b-sfx784rjih] {
    padding: 22px;
    border: 1px solid rgba(226, 232, 240, .92);
    border-radius: 24px;
    background: rgba(255, 255, 255, .92);
}

.settings-section-head[b-sfx784rjih] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
    margin-bottom: 20px;
}

    .settings-section-head h3[b-sfx784rjih] {
        margin: 0;
        color: #0f172a;
        font-size: 20px;
        font-weight: 950;
    }

    .settings-section-head p[b-sfx784rjih] {
        margin: 6px 0 0;
        color: #64748b;
        font-size: 14px;
    }

.settings-form-grid[b-sfx784rjih] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.setting-card[b-sfx784rjih] {
    display: grid;
    gap: 10px;
    padding: 18px;
    border: 1px solid rgba(226, 232, 240, .92);
    border-radius: 20px;
    background: rgba(248, 250, 252, .86);
}

    .setting-card label[b-sfx784rjih] {
        color: #334155;
        font-size: 13px;
        font-weight: 950;
    }

    .setting-card small[b-sfx784rjih] {
        display: block;
        color: #64748b;
        line-height: 1.45;
    }

[b-sfx784rjih] .setting-card .dxbs-editor,
[b-sfx784rjih] .setting-card .dxbs-spin-edit,
[b-sfx784rjih] .setting-card .dxbs-editor-container {
    width: 100%;
}

.lookup-grid-panel[b-sfx784rjih] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
}

.family-status-list[b-sfx784rjih] {
    display: grid;
    gap: 10px;
}

.family-status-row[b-sfx784rjih] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 18px;
    width: 100%;
    padding: 16px 18px;
    border: 1px solid rgba(226, 232, 240, .92);
    border-radius: 18px;
    background: rgba(255, 255, 255, .92);
    color: inherit;
    text-align: left;
    cursor: pointer;
    transition: .18s ease;
}

    .family-status-row:hover[b-sfx784rjih] {
        transform: translateY(-1px);
        box-shadow: 0 14px 28px rgba(15, 23, 42, .07);
    }

    .family-status-row.active[b-sfx784rjih] {
        border-color: #2563eb;
        box-shadow: 0 0 0 4px rgba(37, 99, 235, .12);
    }

    .family-status-row > span[b-sfx784rjih] {
        display: grid;
        gap: 3px;
    }

    .family-status-row strong[b-sfx784rjih] {
        color: #0f172a;
        font-size: 16px;
        font-weight: 950;
    }

    .family-status-row small[b-sfx784rjih] {
        color: #94a3b8;
        font-size: 13px;
        font-style: normal;
        font-weight: 750;
    }

    .family-status-row em[b-sfx784rjih] {
        color: #64748b;
        font-size: 13px;
        font-style: normal;
        font-weight: 900;
    }

[b-sfx784rjih] .dxbs-editor-input,
[b-sfx784rjih] input.form-control,
[b-sfx784rjih] textarea.form-control {
    min-height: 42px;
    border-color: #dbe2ea !important;
    border-radius: 12px !important;
    background: rgba(255, 255, 255, .98) !important;
}

    [b-sfx784rjih] .dxbs-editor-input:focus,
    [b-sfx784rjih] input.form-control:focus,
    [b-sfx784rjih] textarea.form-control:focus {
        border-color: #2563eb !important;
        box-shadow: 0 0 0 4px rgba(37, 99, 235, .14) !important;
    }

@media (max-width: 1280px) {
    .feature-summary-grid[b-sfx784rjih] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 980px) {
    .prca-admin-page[b-sfx784rjih] {
        padding: 24px 16px 60px;
    }

    .admin-header[b-sfx784rjih] {
        flex-direction: column;
        align-items: stretch;
        padding: 24px;
    }

    .header-actions[b-sfx784rjih] {
        justify-content: flex-start;
    }

    .permissions-filter-card[b-sfx784rjih],
    .permission-context[b-sfx784rjih],
    .debtor-summary-grid[b-sfx784rjih],
    .settings-form-grid[b-sfx784rjih],
    .lookup-grid-panel[b-sfx784rjih] {
        grid-template-columns: 1fr;
    }

    .panel-head[b-sfx784rjih],
    .panel-head.standard-order[b-sfx784rjih] {
        flex-direction: column;
    }

    .override-search-card[b-sfx784rjih] {
        grid-template-columns: 1fr;
    }

    .override-suggestion-item[b-sfx784rjih] {
        grid-template-columns: 1fr auto;
    }

    .suggestion-parent[b-sfx784rjih] {
        grid-column: 1 / -1;
        grid-row: 2;
    }
}

@media (max-width: 640px) {
    .filter-label-row[b-sfx784rjih] {
        align-items: flex-start;
        flex-direction: column;
    }

    .filter-scope-badge[b-sfx784rjih] {
        white-space: normal;
    }

    .prca-admin-page[b-sfx784rjih] {
        padding: 18px 10px 50px;
    }

    .admin-header[b-sfx784rjih] {
        padding: 22px 18px;
        border-radius: 22px;
    }

    .header-actions[b-sfx784rjih] {
        display: grid;
        grid-template-columns: 1fr;
    }

    [b-sfx784rjih] .header-actions .dxbs-button,
    [b-sfx784rjih] .header-actions .btn {
        width: 100%;
    }

    .feature-summary-grid[b-sfx784rjih] {
        grid-template-columns: 1fr;
    }

    .tab-panel[b-sfx784rjih] {
        padding: 16px;
        overflow: visible;
        border-radius: 20px;
    }

    [b-sfx784rjih] .admin-tabs .nav-tabs {
        overflow-x: auto;
        border-radius: 18px !important;
    }

    .settings-section-card[b-sfx784rjih],
    .debtor-summary-card[b-sfx784rjih],
    .setting-card[b-sfx784rjih] {
        padding: 16px;
        border-radius: 18px;
    }

    .override-suggestion-item[b-sfx784rjih] {
        grid-template-columns: 1fr;
    }

    .suggestion-parent[b-sfx784rjih],
    .suggestion-status[b-sfx784rjih] {
        grid-column: auto;
        grid-row: auto;
    }

    .suggestion-status[b-sfx784rjih] {
        justify-self: start;
    }
}

/* Parent-role permission dropdowns: Κληρ. / Ναι / Όχι */
[b-sfx784rjih] .permission-combo,
[b-sfx784rjih] .permission-combo .dxbs-editor,
[b-sfx784rjih] .permission-combo .dxbs-editor-container {
    width: 100% !important;
    min-width: 140px !important;
}

    [b-sfx784rjih] .permission-combo .dxbs-editor,
    [b-sfx784rjih] .permission-combo .dxbs-editor-container {
        min-height: 38px !important;
        border-radius: 12px !important;
    }

    [b-sfx784rjih] .permission-combo input,
    [b-sfx784rjih] .permission-combo .dxbs-editor-input {
        min-height: 38px !important;
        font-size: 13px !important;
        font-weight: 850 !important;
    }


/* ---------------------------------------------------------
   Auto-save feedback
   --------------------------------------------------------- */

.autosave-indicator[b-sfx784rjih] {
    position: fixed;
    top: 22px;
    right: 24px;
    z-index: 2200;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    min-height: 42px;
    padding: 10px 15px;
    border: 1px solid #bfdbfe;
    border-radius: 999px;
    background: rgba(255, 255, 255, .98);
    color: #1d4ed8;
    font-size: 13px;
    font-weight: 900;
    box-shadow: 0 18px 45px rgba(15, 23, 42, .16);
    animation: autosave-enter-b-sfx784rjih .18s ease-out;
}

.autosave-dot[b-sfx784rjih] {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: currentColor;
}

.autosave-indicator.saving .autosave-dot[b-sfx784rjih] {
    animation: autosave-pulse-b-sfx784rjih .9s infinite ease-in-out;
}

.autosave-indicator.saved[b-sfx784rjih] {
    border-color: #bbf7d0;
    color: #166534;
}

.autosave-indicator.failed[b-sfx784rjih] {
    border-color: #fecaca;
    color: #991b1b;
}

@keyframes autosave-enter-b-sfx784rjih {
    from {
        transform: translateY(-8px);
        opacity: 0;
    }

    to {
        transform: translateY(0);
        opacity: 1;
    }
}

@keyframes autosave-pulse-b-sfx784rjih {
    0%, 100% {
        transform: scale(.8);
        opacity: .45;
    }

    50% {
        transform: scale(1.15);
        opacity: 1;
    }
}

/* ---------------------------------------------------------
   Multi-row selection
   --------------------------------------------------------- */

.selection-action-hint[b-sfx784rjih] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 14px;
    padding: 14px 16px;
    border: 1px solid #e2e8f0;
    border-radius: 18px;
    background: #f8fafc;
    transition: border-color .18s ease, background-color .18s ease, box-shadow .18s ease;
}

    .selection-action-hint.active[b-sfx784rjih] {
        border-color: #93c5fd;
        background: linear-gradient(135deg, #f8fbff, #eff6ff);
        box-shadow: 0 10px 28px rgba(37, 99, 235, .08);
    }

    .selection-action-hint > div[b-sfx784rjih] {
        display: grid;
        min-width: 0;
        gap: 4px;
    }

    .selection-action-hint strong[b-sfx784rjih] {
        color: #0f172a;
        font-size: 14px;
        font-weight: 950;
    }

    .selection-action-hint small[b-sfx784rjih] {
        color: #64748b;
        font-size: 12px;
        font-weight: 750;
        line-height: 1.45;
    }

.selection-count-chip[b-sfx784rjih] {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    min-width: 104px;
    padding: 7px 11px;
    border: 1px solid #cbd5e1;
    border-radius: 999px;
    background: #fff;
    color: #475569;
    font-size: 11px;
    font-weight: 900;
    white-space: nowrap;
}

.selection-action-hint.active .selection-count-chip[b-sfx784rjih] {
    border-color: #93c5fd;
    background: #dbeafe;
    color: #1d4ed8;
}

[b-sfx784rjih] .permissions-grid .dxbs-grid-selection-column {
    background: #f8fafc !important;
}

/* ---------------------------------------------------------
   Father / Mother comparison
   --------------------------------------------------------- */

/*
   This preview intentionally uses plain HTML instead of DxPopup.
   DevExpress Popup content is rendered through popup web components
   and shadow roots, so component-scoped selectors cannot reliably
   restyle its internal modal shell.
*/

.role-glass-overlay[b-sfx784rjih] {
    position: fixed;
    inset: 0;
    z-index: 5000;
    display: grid;
    place-items: center;
    padding: 20px;
    overflow: hidden;
    background: radial-gradient( circle at 20% 12%, rgba(96, 165, 250, .17), transparent 30% ), radial-gradient( circle at 80% 16%, rgba(244, 114, 182, .14), transparent 28% ), rgba(15, 23, 42, .36);
    -webkit-backdrop-filter: blur(18px) saturate(135%);
    backdrop-filter: blur(18px) saturate(135%);
    animation: role-glass-overlay-in-b-sfx784rjih .24s ease-out both;
}

.role-glass-dialog[b-sfx784rjih] {
    position: relative;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    width: min(1180px, calc(100vw - 32px));
    max-height: calc(100vh - 40px);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .52);
    border-radius: 30px;
    background: linear-gradient( 145deg, rgba(255, 255, 255, .42), rgba(255, 255, 255, .24) );
    box-shadow: 0 40px 120px rgba(2, 6, 23, .38), inset 0 1px 0 rgba(255, 255, 255, .60), inset 0 -1px 0 rgba(255, 255, 255, .16);
    -webkit-backdrop-filter: blur(34px) saturate(175%);
    backdrop-filter: blur(34px) saturate(175%);
    animation: role-glass-dialog-in-b-sfx784rjih .30s cubic-bezier(.2, .8, .2, 1) both;
}

    .role-glass-dialog[b-sfx784rjih]::before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: -1;
        pointer-events: none;
        border-radius: inherit;
        background: radial-gradient( circle at 10% -10%, rgba(255, 255, 255, .62), transparent 35% ), radial-gradient( circle at 88% 0%, rgba(191, 219, 254, .24), transparent 30% );
    }

.role-glass-dialog-header[b-sfx784rjih] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 58px;
    padding: 12px 16px 12px 20px;
    border-bottom: 1px solid rgba(255, 255, 255, .26);
    background: rgba(255, 255, 255, .24);
    -webkit-backdrop-filter: blur(24px) saturate(165%);
    backdrop-filter: blur(24px) saturate(165%);
}

    .role-glass-dialog-header > strong[b-sfx784rjih] {
        color: #0f172a;
        font-size: 15px;
        font-weight: 950;
        letter-spacing: -.01em;
    }

.role-glass-close-button[b-sfx784rjih] {
    display: inline-grid;
    place-items: center;
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, .50);
    border-radius: 999px;
    background: rgba(255, 255, 255, .24);
    color: #334155;
    font-family: inherit;
    font-size: 24px;
    font-weight: 500;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .12), inset 0 1px 0 rgba(255, 255, 255, .62);
    transition: transform .16s ease, background-color .16s ease, color .16s ease;
}

    .role-glass-close-button:hover[b-sfx784rjih] {
        transform: scale(1.05);
        background: rgba(255, 255, 255, .46);
        color: #0f172a;
    }

    .role-glass-close-button:focus-visible[b-sfx784rjih],
    .role-glass-footer-button:focus-visible[b-sfx784rjih] {
        outline: 3px solid rgba(37, 99, 235, .28);
        outline-offset: 2px;
    }

.role-glass-dialog-body[b-sfx784rjih] {
    min-height: 0;
    padding: 16px;
    overflow-y: auto;
    background: rgba(255, 255, 255, .18);
    scrollbar-color: rgba(100, 116, 139, .42) transparent;
    scrollbar-width: thin;
}

    .role-glass-dialog-body[b-sfx784rjih]::-webkit-scrollbar {
        width: 10px;
    }

    .role-glass-dialog-body[b-sfx784rjih]::-webkit-scrollbar-track {
        background: transparent;
    }

    .role-glass-dialog-body[b-sfx784rjih]::-webkit-scrollbar-thumb {
        border: 3px solid transparent;
        border-radius: 999px;
        background: rgba(100, 116, 139, .42);
        background-clip: padding-box;
    }

.role-glass-dialog-footer[b-sfx784rjih] {
    display: flex;
    justify-content: flex-end;
    padding: 10px 14px 14px;
    border-top: 1px solid rgba(255, 255, 255, .22);
    background: rgba(255, 255, 255, .20);
    -webkit-backdrop-filter: blur(22px) saturate(155%);
    backdrop-filter: blur(22px) saturate(155%);
}

.role-glass-footer-button[b-sfx784rjih] {
    min-width: 96px;
    padding: 9px 18px;
    border: 1px solid rgba(255, 255, 255, .56);
    border-radius: 999px;
    background: linear-gradient( 180deg, rgba(96, 133, 247, .96), rgba(75, 105, 225, .96) );
    color: #fff;
    font-family: inherit;
    font-size: 13px;
    font-weight: 900;
    cursor: pointer;
    box-shadow: 0 12px 28px rgba(59, 91, 219, .24), inset 0 1px 0 rgba(255, 255, 255, .30);
    transition: transform .16s ease, box-shadow .16s ease;
}

    .role-glass-footer-button:hover[b-sfx784rjih] {
        transform: translateY(-1px);
        box-shadow: 0 16px 34px rgba(59, 91, 219, .30), inset 0 1px 0 rgba(255, 255, 255, .34);
    }

.role-comparison-popup-body[b-sfx784rjih] {
    display: grid;
    gap: 16px;
    animation: role-comparison-popup-in-b-sfx784rjih .32s cubic-bezier(.2, .8, .2, 1) both;
}

.role-comparison-heading[b-sfx784rjih] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    padding: 2px 4px 0;
}

    .role-comparison-heading h3[b-sfx784rjih] {
        margin: 0;
        color: #0f172a;
        font-size: 21px;
        font-weight: 950;
        letter-spacing: -.02em;
    }

    .role-comparison-heading p[b-sfx784rjih] {
        max-width: 760px;
        margin: 7px 0 0;
        color: #475569;
        font-size: 13px;
        line-height: 1.5;
    }

.comparison-scope-chip[b-sfx784rjih] {
    display: inline-flex;
    flex: 0 0 auto;
    padding: 8px 12px;
    border: 1px solid rgba(255, 255, 255, .58);
    border-radius: 999px;
    background: rgba(239, 246, 255, .36);
    color: #1d4ed8;
    font-size: 11px;
    font-weight: 900;
    white-space: nowrap;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .62), 0 8px 18px rgba(37, 99, 235, .07);
    -webkit-backdrop-filter: blur(18px) saturate(150%);
    backdrop-filter: blur(18px) saturate(150%);
}

.role-comparison-grid[b-sfx784rjih] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.role-comparison-card[b-sfx784rjih] {
    min-width: 0;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .78);
    border-radius: 24px;
    background: linear-gradient( 145deg, rgba(255, 255, 255, .82), rgba(248, 250, 252, .66) );
    box-shadow: 0 18px 48px rgba(15, 23, 42, .12), inset 0 1px 0 rgba(255, 255, 255, .92);
    -webkit-backdrop-filter: blur(22px) saturate(150%);
    backdrop-filter: blur(22px) saturate(150%);
}

    .role-comparison-card.father[b-sfx784rjih] {
        border-top: 4px solid rgba(37, 99, 235, .88);
    }

    .role-comparison-card.mother[b-sfx784rjih] {
        border-top: 4px solid rgba(190, 52, 113, .86);
    }

    .role-comparison-card > header[b-sfx784rjih] {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 14px;
        padding: 18px 19px;
        border-bottom: 1px solid rgba(226, 232, 240, .72);
        background: rgba(255, 255, 255, .42);
    }

.role-card-kicker[b-sfx784rjih] {
    display: block;
    margin-bottom: 5px;
    color: #94a3b8;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.role-comparison-card h4[b-sfx784rjih] {
    margin: 0;
    color: #0f172a;
    font-size: 22px;
    font-weight: 950;
    letter-spacing: -.025em;
}

.role-card-counts[b-sfx784rjih] {
    display: grid;
    gap: 8px;
    color: #64748b;
    font-size: 11px;
    font-weight: 800;
    text-align: right;
}

    .role-card-counts b[b-sfx784rjih] {
        color: #0f172a;
        font-size: 14px;
    }

.role-capability-list[b-sfx784rjih] {
    display: grid;
}

.role-capability-row[b-sfx784rjih] {
    display: grid;
    grid-template-columns: minmax(140px, 1fr) auto;
    gap: 18px;
    align-items: center;
    padding: 14px 17px;
    border-bottom: 1px solid rgba(226, 232, 240, .70);
    transition: background-color .16s ease;
}

    .role-capability-row:hover[b-sfx784rjih] {
        background: rgba(255, 255, 255, .46);
    }

    .role-capability-row:last-child[b-sfx784rjih] {
        border-bottom: 0;
    }

.role-capability-name[b-sfx784rjih] {
    display: grid;
    min-width: 0;
    gap: 4px;
}

    .role-capability-name strong[b-sfx784rjih] {
        overflow: hidden;
        color: #0f172a;
        font-size: 13px;
        font-weight: 900;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .role-capability-name small[b-sfx784rjih] {
        color: #94a3b8;
        font-size: 10px;
        font-weight: 750;
    }

.role-capability-badges[b-sfx784rjih] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    flex-wrap: wrap;
}

.role-value-badge[b-sfx784rjih] {
    display: grid;
    min-width: 138px;
    gap: 8px;
    padding: 10px 14px 11px;
    border: 1px solid transparent;
    border-radius: 15px;
    text-align: center;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .78);
}

    .role-value-badge small[b-sfx784rjih] {
        display: block;
        margin: 0;
        color: currentColor;
        font-size: 9px;
        font-weight: 900;
        letter-spacing: .06em;
        line-height: 1.15;
        text-transform: uppercase;
        opacity: .72;
    }

    .role-value-badge strong[b-sfx784rjih] {
        display: block;
        margin: 0;
        font-size: 11px;
        font-weight: 950;
        line-height: 1.3;
        white-space: nowrap;
    }

    .role-value-badge.yes[b-sfx784rjih] {
        border-color: rgba(134, 239, 172, .78);
        background: rgba(240, 253, 244, .80);
        color: #166534;
    }

    .role-value-badge.no[b-sfx784rjih] {
        border-color: rgba(254, 202, 202, .82);
        background: rgba(255, 241, 242, .82);
        color: #991b1b;
    }

    .role-value-badge.inherited[b-sfx784rjih] {
        border-style: dashed;
    }

@keyframes role-glass-overlay-in-b-sfx784rjih {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes role-glass-dialog-in-b-sfx784rjih {
    from {
        transform: translateY(18px) scale(.975);
        opacity: 0;
    }

    to {
        transform: translateY(0) scale(1);
        opacity: 1;
    }
}

@keyframes role-comparison-popup-in-b-sfx784rjih {
    from {
        transform: translateY(10px);
        opacity: 0;
    }

    to {
        transform: translateY(0);
        opacity: 1;
    }
}

@media (max-width: 980px) {
    .role-glass-overlay[b-sfx784rjih] {
        padding: 12px;
    }

    .role-glass-dialog[b-sfx784rjih] {
        width: min(100%, calc(100vw - 24px));
        max-height: calc(100vh - 24px);
        border-radius: 24px;
    }

    .role-comparison-heading[b-sfx784rjih] {
        align-items: stretch;
        flex-direction: column;
    }

    .role-comparison-grid[b-sfx784rjih] {
        grid-template-columns: 1fr;
    }

    .comparison-scope-chip[b-sfx784rjih] {
        align-self: flex-start;
    }
}

@media (max-width: 640px) {
    .role-glass-overlay[b-sfx784rjih] {
        padding: 6px;
    }

    .role-glass-dialog[b-sfx784rjih] {
        width: calc(100vw - 12px);
        max-height: calc(100vh - 12px);
        border-radius: 20px;
    }

    .role-glass-dialog-header[b-sfx784rjih] {
        min-height: 52px;
        padding: 9px 10px 9px 14px;
    }

    .role-glass-dialog-body[b-sfx784rjih] {
        padding: 10px;
    }

    .role-comparison-card > header[b-sfx784rjih] {
        flex-direction: column;
    }

    .role-card-counts[b-sfx784rjih] {
        text-align: left;
    }

    .role-capability-row[b-sfx784rjih] {
        grid-template-columns: 1fr;
    }

    .role-capability-badges[b-sfx784rjih] {
        display: grid;
        grid-template-columns: 1fr;
        justify-content: stretch;
    }

    .role-value-badge[b-sfx784rjih] {
        width: 100%;
        min-width: 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .role-glass-overlay[b-sfx784rjih],
    .role-glass-dialog[b-sfx784rjih],
    .role-comparison-popup-body[b-sfx784rjih] {
        animation: none;
    }
}

/* ---------------------------------------------------------
   Access preview
   --------------------------------------------------------- */

.preview-search-card[b-sfx784rjih] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 14px;
    align-items: end;
    margin-bottom: 18px;
    padding: 18px;
    overflow: visible;
    border: 1px solid #dbeafe;
    border-radius: 22px;
    background: linear-gradient(135deg, #f8fbff, #eff6ff);
}

.empty-preview-state[b-sfx784rjih] {
    display: grid;
    place-items: center;
    min-height: 280px;
    padding: 40px 24px;
    border: 1px dashed #cbd5e1;
    border-radius: 22px;
    background: #f8fafc;
    text-align: center;
}

    .empty-preview-state.compact[b-sfx784rjih] {
        min-height: 210px;
    }

.empty-preview-icon[b-sfx784rjih] {
    display: grid;
    place-items: center;
    width: 54px;
    height: 54px;
    margin-bottom: 12px;
    border-radius: 50%;
    background: #dbeafe;
    color: #1d4ed8;
    font-size: 25px;
    font-weight: 950;
}

.empty-preview-state h3[b-sfx784rjih] {
    margin: 0;
    color: #0f172a;
    font-size: 19px;
    font-weight: 950;
}

.empty-preview-state p[b-sfx784rjih] {
    max-width: 520px;
    margin: 8px 0 0;
    color: #64748b;
    line-height: 1.5;
}

.preview-context[b-sfx784rjih] {
    margin-top: 20px;
}

.preview-loading-state[b-sfx784rjih],
.sync-preview-loading[b-sfx784rjih] {
    padding: 22px;
    border: 1px solid #bfdbfe;
    border-radius: 18px;
    background: #eff6ff;
    color: #1d4ed8;
    font-weight: 900;
    text-align: center;
}

.preview-summary-grid[b-sfx784rjih],
.history-summary-grid[b-sfx784rjih] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 13px;
    margin: 18px 0;
}

.preview-summary-card[b-sfx784rjih],
.history-summary-card[b-sfx784rjih] {
    min-width: 0;
    padding: 16px;
    border: 1px solid #e2e8f0;
    border-radius: 18px;
    background: #f8fafc;
}

    .preview-summary-card span[b-sfx784rjih],
    .history-summary-card span[b-sfx784rjih] {
        display: block;
        margin-bottom: 7px;
        color: #64748b;
        font-size: 10px;
        font-weight: 900;
        letter-spacing: .06em;
        text-transform: uppercase;
    }

    .preview-summary-card strong[b-sfx784rjih],
    .history-summary-card strong[b-sfx784rjih] {
        display: block;
        color: #0f172a;
        font-size: 25px;
        font-weight: 950;
    }

    .preview-summary-card small[b-sfx784rjih],
    .history-summary-card small[b-sfx784rjih] {
        display: block;
        margin-top: 6px;
        color: #94a3b8;
        font-size: 11px;
        font-weight: 750;
        line-height: 1.35;
    }

    .preview-summary-card.warning[b-sfx784rjih] {
        border-color: #fed7aa;
        background: #fff7ed;
    }

    .preview-summary-card.success[b-sfx784rjih] {
        border-color: #bbf7d0;
        background: #f0fdf4;
    }

.access-source-badge[b-sfx784rjih],
.access-restriction-badge[b-sfx784rjih],
.history-action-badge[b-sfx784rjih] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 90px;
    padding: 6px 9px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 900;
    text-align: center;
}

    .access-source-badge.family[b-sfx784rjih] {
        border-color: #cbd5e1;
        background: #f1f5f9;
        color: #475569;
    }

    .access-source-badge.role[b-sfx784rjih] {
        border-color: #bfdbfe;
        background: #eff6ff;
        color: #1d4ed8;
    }

    .access-source-badge.debt[b-sfx784rjih] {
        border-color: #fed7aa;
        background: #fff7ed;
        color: #9a3412;
    }

    .access-source-badge.override[b-sfx784rjih] {
        border-color: #c4b5fd;
        background: #f5f3ff;
        color: #6d28d9;
    }

    .access-source-badge.denied[b-sfx784rjih] {
        border-color: #fecaca;
        background: #fff1f2;
        color: #991b1b;
    }

    .access-restriction-badge.none[b-sfx784rjih] {
        border-color: #bbf7d0;
        background: #f0fdf4;
        color: #166534;
    }

    .access-restriction-badge.debt[b-sfx784rjih] {
        border-color: #fed7aa;
        background: #fff7ed;
        color: #9a3412;
    }

    .access-restriction-badge.admin[b-sfx784rjih] {
        border-color: #fecaca;
        background: #fff1f2;
        color: #991b1b;
    }

/* ---------------------------------------------------------
   Audit history
   --------------------------------------------------------- */

.history-date[b-sfx784rjih] {
    color: #334155;
    font-size: 12px;
    font-weight: 850;
    white-space: nowrap;
}

.history-actor[b-sfx784rjih],
.history-scope[b-sfx784rjih] {
    display: grid;
    min-width: 0;
    gap: 3px;
}

    .history-actor strong[b-sfx784rjih],
    .history-scope strong[b-sfx784rjih] {
        overflow: hidden;
        color: #0f172a;
        font-size: 12px;
        font-weight: 900;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .history-actor small[b-sfx784rjih],
    .history-scope small[b-sfx784rjih] {
        color: #64748b;
        font-size: 10px;
        font-weight: 750;
        line-height: 1.35;
    }

.history-action-badge.insert[b-sfx784rjih] {
    border-color: #bbf7d0;
    background: #f0fdf4;
    color: #166534;
}

.history-action-badge.update[b-sfx784rjih] {
    border-color: #bfdbfe;
    background: #eff6ff;
    color: #1d4ed8;
}

.history-action-badge.bulk[b-sfx784rjih] {
    border-color: #c4b5fd;
    background: #f5f3ff;
    color: #6d28d9;
}

.history-action-badge.sync[b-sfx784rjih] {
    border-color: #bae6fd;
    background: #f0f9ff;
    color: #075985;
}

.history-action-badge.delete[b-sfx784rjih] {
    border-color: #fecaca;
    background: #fff1f2;
    color: #991b1b;
}

.history-value[b-sfx784rjih] {
    display: inline-block;
    max-width: 260px;
    overflow: hidden;
    color: #475569;
    font-size: 11px;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}

    .history-value.old[b-sfx784rjih] {
        text-decoration-color: #fca5a5;
    }

    .history-value.new[b-sfx784rjih] {
        color: #0f172a;
    }

/* ---------------------------------------------------------
   Sync preview popup
   --------------------------------------------------------- */

.sync-preview-body[b-sfx784rjih] {
    display: grid;
    gap: 16px;
}

.sync-preview-intro[b-sfx784rjih] {
    margin: 0;
    color: #475569;
    line-height: 1.55;
}

.sync-preview-grid[b-sfx784rjih] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 11px;
}

.sync-preview-card[b-sfx784rjih] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 14px 16px;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    background: #f8fafc;
}

    .sync-preview-card span[b-sfx784rjih] {
        color: #475569;
        font-size: 12px;
        font-weight: 850;
        line-height: 1.35;
    }

    .sync-preview-card strong[b-sfx784rjih] {
        flex: 0 0 auto;
        color: #0f172a;
        font-size: 24px;
        font-weight: 950;
    }

    .sync-preview-card.add[b-sfx784rjih] {
        border-color: #bbf7d0;
        background: #f0fdf4;
    }

    .sync-preview-card.update[b-sfx784rjih] {
        border-color: #bfdbfe;
        background: #eff6ff;
    }

    .sync-preview-card.delete[b-sfx784rjih] {
        border-color: #fecaca;
        background: #fff1f2;
    }

    .sync-preview-card.total[b-sfx784rjih] {
        border-color: #c4b5fd;
        background: #f5f3ff;
    }

.sync-destructive-warning[b-sfx784rjih] {
    margin-bottom: 0;
}

.popup-footer-actions[b-sfx784rjih] {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    width: 100%;
}

[b-sfx784rjih] .popup-cancel-button.dxbs-button,
[b-sfx784rjih] .popup-cancel-button.btn {
    padding: 10px 17px !important;
    border-color: #cbd5e1 !important;
    border-radius: 999px !important;
    background: #fff !important;
    color: #475569 !important;
    font-weight: 900 !important;
}

/* ---------------------------------------------------------
   Responsive additions
   --------------------------------------------------------- */

@media (max-width: 1180px) {
    .preview-summary-grid[b-sfx784rjih],
    .history-summary-grid[b-sfx784rjih] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .role-capability-row[b-sfx784rjih] {
        grid-template-columns: 1fr;
    }

    .role-capability-badges[b-sfx784rjih] {
        justify-content: flex-start;
    }
}

@media (max-width: 980px) {
    .selection-action-hint[b-sfx784rjih],
    .role-comparison-heading[b-sfx784rjih] {
        align-items: stretch;
        flex-direction: column;
    }

    .selection-count-chip[b-sfx784rjih] {
        align-self: flex-start;
    }

    .role-comparison-grid[b-sfx784rjih],
    .preview-search-card[b-sfx784rjih] {
        grid-template-columns: 1fr;
    }

    .comparison-scope-chip[b-sfx784rjih] {
        align-self: flex-start;
    }
}

@media (max-width: 640px) {
    .autosave-indicator[b-sfx784rjih] {
        top: 12px;
        right: 12px;
        left: 12px;
        justify-content: center;
    }

    .preview-summary-grid[b-sfx784rjih],
    .history-summary-grid[b-sfx784rjih],
    .sync-preview-grid[b-sfx784rjih] {
        grid-template-columns: 1fr;
    }

    .role-comparison-card > header[b-sfx784rjih] {
        flex-direction: column;
    }

    .role-card-counts[b-sfx784rjih] {
        text-align: left;
    }

    .role-capability-badges[b-sfx784rjih] {
        display: grid;
        grid-template-columns: 1fr;
    }

    .role-value-badge[b-sfx784rjih] {
        width: 100%;
    }

    .popup-footer-actions[b-sfx784rjih] {
        display: grid;
        grid-template-columns: 1fr;
    }

    [b-sfx784rjih] .popup-footer-actions .dxbs-button,
    [b-sfx784rjih] .popup-footer-actions .btn {
        width: 100%;
    }
}


@media (max-width: 720px) {
    .panel-head-actions[b-sfx784rjih] {
        width: 100%;
        justify-content: stretch;
    }

    [b-sfx784rjih] .panel-head-actions .dxbs-button,
    [b-sfx784rjih] .panel-head-actions .btn {
        flex: 1 1 auto;
    }
}

@media (prefers-reduced-motion: reduce) {
    .admin-shell[b-sfx784rjih] {
        transition: none;
    }
}
/* _content/Arsakeio_Portal/Components/Pages/PRPARegistration.razor.rz.scp.css */
.candidate-page[b-1m5068jji1] {
    height: 100dvh;
    min-height: 100vh;
    padding: 32px;
    overflow-y: auto;
    overflow-x: hidden;
    background: #ffffff;
}

.candidate-form-enter[b-1m5068jji1] {
    animation: candidateSlideForm-b-1m5068jji1 .7s cubic-bezier(.22, 1, .36, 1) both;
    will-change: transform, opacity;
}

@keyframes candidateSlideForm-b-1m5068jji1 {
    from {
        opacity: 0;
        transform: translateX(90px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.candidate-wizard[b-1m5068jji1] {
    max-width: 1180px;
    margin: 0 auto;
    background: rgba(255, 255, 255, .84);
    backdrop-filter: blur(18px);
    border: 1px solid rgba(255,255,255,.7);
    border-radius: 26px;
    padding: 32px;
    box-shadow: 0 25px 60px rgba(15, 23, 42, .08);
}

.candidate-steps[b-1m5068jji1] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    list-style: none;
    padding: 0;
    margin: 0 0 18px;
}

    .candidate-steps li[b-1m5068jji1] {
        padding: 12px 14px;
        border-radius: 999px;
        background: rgba(241, 245, 249, .85);
        color: #64748b;
        font-size: 14px;
        text-align: center;
        font-weight: 700;
    }

        .candidate-steps li.active[b-1m5068jji1] {
            background: #2563eb;
            color: #fff;
            box-shadow: 0 10px 20px rgba(37, 99, 235, .22);
        }

        .candidate-steps li.done[b-1m5068jji1] {
            background: #dbeafe;
            color: #1d4ed8;
        }

.candidate-progress[b-1m5068jji1] {
    height: 8px;
    background: #e2e8f0;
    border-radius: 999px;
    overflow: hidden;
    margin-bottom: 42px;
}

    .candidate-progress div[b-1m5068jji1] {
        height: 100%;
        background: linear-gradient(90deg, #2563eb, #38bdf8);
        border-radius: 999px;
        transition: width .25s ease;
    }

.candidate-pane[b-1m5068jji1] {
    max-width: 900px;
    margin: 0 auto;
}

    .candidate-pane h5[b-1m5068jji1] {
        margin-bottom: 26px;
        font-size: 22px;
        font-weight: 900;
        color: #0f172a;
    }

.section-box[b-1m5068jji1] {
    border: 1px solid rgba(226,232,240,.8);
    border-radius: 20px;
    padding: 22px;
    margin-bottom: 20px;
    background: rgba(255,255,255,.82);
    backdrop-filter: blur(10px);
}

    .section-box h6[b-1m5068jji1] {
        font-size: 15px;
        font-weight: 900;
        color: #334155;
        margin-bottom: 18px;
    }

.form-row[b-1m5068jji1] {
    display: grid;
    grid-template-columns: 190px 1fr;
    gap: 14px;
    align-items: center;
    margin-bottom: 14px;
}

    .form-row:last-child[b-1m5068jji1] {
        margin-bottom: 0;
    }

    .form-row label[b-1m5068jji1] {
        font-size: 13px;
        font-weight: 700;
        color: #475569;
    }

[b-1m5068jji1] .form-row .dxbs-editor,
[b-1m5068jji1] .form-row .dxbs-textbox,
[b-1m5068jji1] .form-row .dxbs-combobox,
[b-1m5068jji1] .form-row .dxbs-date-edit,
[b-1m5068jji1] .form-row .dxbs-memo,
[b-1m5068jji1] .form-row .dxbs-editor-container {
    width: 100%;
}

[b-1m5068jji1] .dxbs-editor-input,
[b-1m5068jji1] input.form-control,
[b-1m5068jji1] textarea.form-control {
    border-radius: 12px !important;
    border-color: #dbe2ea !important;
    min-height: 42px;
    background: rgba(255,255,255,.9) !important;
}

    [b-1m5068jji1] .dxbs-editor-input:focus,
    [b-1m5068jji1] input.form-control:focus,
    [b-1m5068jji1] textarea.form-control:focus {
        border-color: #2563eb !important;
        box-shadow: 0 0 0 4px rgba(37, 99, 235, .14) !important;
    }

[b-1m5068jji1] input[readonly],
[b-1m5068jji1] textarea[readonly] {
    background: #f8fafc !important;
    color: #64748b !important;
    border-color: #e2e8f0 !important;
}

.info-text[b-1m5068jji1] {
    color: #1f2937;
    font-size: 16px;
    line-height: 1.7;
}

    .info-text h1[b-1m5068jji1],
    .info-text h2[b-1m5068jji1],
    .info-text h3[b-1m5068jji1],
    .info-text h4[b-1m5068jji1] {
        font-weight: 900;
        color: #0f172a;
        margin-bottom: 18px;
    }

    .info-text p[b-1m5068jji1] {
        margin-bottom: 14px;
    }

    .info-text table[b-1m5068jji1] {
        width: 100%;
        border-collapse: collapse;
        margin: 20px 0;
    }

    .info-text th[b-1m5068jji1],
    .info-text td[b-1m5068jji1] {
        border: 1px solid #e2e8f0;
        padding: 10px;
    }

    .info-text img[b-1m5068jji1] {
        max-width: 100%;
        height: auto;
    }

    .info-text ul[b-1m5068jji1],
    .info-text ol[b-1m5068jji1] {
        padding-left: 25px;
    }

.candidate-actions[b-1m5068jji1] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    margin-top: 42px;
}

    .candidate-actions > div[b-1m5068jji1] {
        display: flex;
        gap: 10px;
    }

[b-1m5068jji1] .candidate-actions .dxbs-button {
    border-radius: 12px !important;
    padding: 10px 20px !important;
    font-weight: 800 !important;
}

    [b-1m5068jji1] .candidate-actions .btn-primary,
    [b-1m5068jji1] .candidate-actions .dxbs-button:not(.btn-secondary):not(.btn-light) {
        background: #2563eb !important;
        border-color: #2563eb !important;
    }

        [b-1m5068jji1] .candidate-actions .btn-primary:hover,
        [b-1m5068jji1] .candidate-actions .dxbs-button:not(.btn-secondary):not(.btn-light):hover {
            background: #1d4ed8 !important;
            border-color: #1d4ed8 !important;
        }

.alert[b-1m5068jji1] {
    border-radius: 14px;
    border: 0;
}

.candidate-success-popup[b-1m5068jji1]  .dxbs-modal-content {
    border-radius: 24px;
    backdrop-filter: blur(16px);
}

.success-box[b-1m5068jji1] {
    text-align: center;
    padding: 40px 30px;
}

.success-icon[b-1m5068jji1] {
    width: 78px;
    height: 78px;
    margin: 0 auto 20px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #22c55e;
    color: white;
    font-size: 40px;
    font-weight: 900;
}

.success-box h2[b-1m5068jji1] {
    font-size: 34px;
    font-weight: 900;
    margin-bottom: 10px;
    color: #0f172a;
}

.success-box p[b-1m5068jji1] {
    color: #475569;
    font-size: 18px;
    margin-bottom: 26px;
}

[b-1m5068jji1] .otp-popup .dxbs-modal-content {
    border-radius: 22px !important;
    overflow: hidden !important;
    border: 1px solid rgba(226, 232, 240, .9) !important;
    box-shadow: 0 28px 90px rgba(15, 23, 42, .22) !important;
    background: rgba(255, 255, 255, .96) !important;
    backdrop-filter: blur(18px);
}

[b-1m5068jji1] .otp-popup .dxbs-popup-body {
    padding: 0 !important;
}

[b-1m5068jji1] .otp-card {
    padding: 34px 30px 28px;
    background: radial-gradient(circle at top, rgba(56, 189, 248, .12), transparent 38%), rgba(255, 255, 255, .96);
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

[b-1m5068jji1] .otp-icon {
    width: 72px;
    height: 72px;
    margin: 4px auto 14px;
    border-radius: 999px;
    background: linear-gradient(135deg, #2563eb, #38bdf8);
    display: grid;
    place-items: center;
    box-shadow: 0 18px 34px rgba(37, 99, 235, .24);
}

[b-1m5068jji1] .otp-shield {
    color: #fff;
    font-weight: 900;
    font-size: 32px;
    line-height: 1;
}

[b-1m5068jji1] .otp-title {
    font-weight: 950;
    font-size: 30px;
    color: #0f172a;
    margin: 8px 0;
    width: 100%;
    text-align: center;
    letter-spacing: -0.03em;
}

[b-1m5068jji1] .otp-sub {
    color: #64748b;
    font-size: 15px;
    margin-bottom: 22px;
    width: 100%;
    text-align: center;
    line-height: 1.55;
}

[b-1m5068jji1] .otp-email {
    display: block;
    font-weight: 900;
    color: #0f172a;
    margin-top: 4px;
    word-break: break-word;
}

[b-1m5068jji1] .otp-input-wrap {
    width: min(420px, 100%);
    margin: 4px auto 0;
    display: flex;
    flex-direction: column;
    align-items: center;
}

[b-1m5068jji1] .otp-label {
    display: block;
    font-weight: 900;
    color: #0f172a;
    margin-bottom: 10px;
    text-align: center;
}

[b-1m5068jji1] .otp-hint {
    margin-top: 10px;
    font-size: 13px;
    color: #64748b;
    text-align: center;
}

[b-1m5068jji1] .otp-input {
    width: min(420px, 100%);
    height: 60px;
    border-radius: 16px;
    border: 2px solid rgba(203, 213, 225, .95);
    outline: none;
    padding: 0 16px;
    font-size: 24px;
    font-weight: 950;
    letter-spacing: 18px;
    text-align: center;
    color: #0f172a;
    background: #fff;
}

    [b-1m5068jji1] .otp-input:focus {
        border-color: #2563eb;
        box-shadow: 0 0 0 5px rgba(37, 99, 235, .16);
    }

[b-1m5068jji1] .otp-error {
    width: min(420px, 100%);
    margin: 14px auto 0;
    border-radius: 14px;
    padding: 11px 13px;
    background: #fef2f2;
    border: 1px solid #fecaca;
    color: #991b1b;
    font-size: 14px;
    font-weight: 700;
    text-align: left;
}

[b-1m5068jji1] .otp-actions-2 {
    width: min(420px, 100%);
    margin: 18px auto 0;
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: 12px;
}

[b-1m5068jji1] .otp-btn.dxbs-button {
    min-height: 48px !important;
    border-radius: 14px !important;
    font-weight: 900 !important;
}

[b-1m5068jji1] .otp-primary.dxbs-button {
    background: #2563eb !important;
    border-color: #2563eb !important;
    box-shadow: 0 14px 28px rgba(37, 99, 235, .24) !important;
}

@media (max-width: 900px) {
    .candidate-page[b-1m5068jji1] {
        padding: 16px;
    }

    .candidate-wizard[b-1m5068jji1] {
        padding: 20px;
    }

    .candidate-steps[b-1m5068jji1] {
        grid-template-columns: repeat(3, 220px);
        overflow-x: auto;
        padding-bottom: 6px;
    }

    .form-row[b-1m5068jji1] {
        grid-template-columns: 1fr;
        gap: 6px;
    }

    .candidate-actions[b-1m5068jji1] {
        flex-direction: column;
        align-items: stretch;
    }

        .candidate-actions > div[b-1m5068jji1] {
            justify-content: flex-end;
        }
}

@media (max-width: 576px) {
    [b-1m5068jji1] .otp-card {
        padding: 26px 18px 20px;
    }

    [b-1m5068jji1] .otp-title {
        font-size: 24px;
    }

    [b-1m5068jji1] .otp-input {
        height: 54px;
        font-size: 21px;
        letter-spacing: 12px;
    }

    [b-1m5068jji1] .otp-actions-2 {
        grid-template-columns: 1fr;
    }
}

.year-option-item[b-1m5068jji1],
.year-option-edit[b-1m5068jji1] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    color: #0f172a;
}

    .year-option-item small[b-1m5068jji1] {
        font-size: 11px;
        color: #64748b;
    }

    .year-option-item.completed[b-1m5068jji1],
    .year-option-edit.completed[b-1m5068jji1] {
        opacity: .45;
        color: #64748b;
    }

.consent-question-list[b-1m5068jji1] {
    display: grid;
    gap: 14px;
    margin-top: 24px;
}

.consent-section.collapsed .consent-question-list[b-1m5068jji1] {
    margin-top: 18px;
}

.consent-question-row[b-1m5068jji1] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 18px;
    align-items: center;
    padding: 16px 18px;
    border-radius: 16px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
}

    .consent-question-row label[b-1m5068jji1] {
        margin: 0;
        font-weight: 800;
        color: #334155;
    }

.yes-no-choice[b-1m5068jji1] {
    display: inline-flex;
    gap: 8px;
    padding: 4px;
    border-radius: 999px;
    background: #ffffff;
    border: 1px solid #e2e8f0;
}

.yes-no-btn[b-1m5068jji1] {
    border: 0;
    border-radius: 999px;
    padding: 8px 18px;
    font-weight: 900;
    background: transparent;
    cursor: pointer;
    transition: .15s ease;
}

    .yes-no-btn.yes[b-1m5068jji1] {
        color: #15803d;
    }

    .yes-no-btn.no[b-1m5068jji1] {
        color: #b91c1c;
    }

    .yes-no-btn.yes.selected[b-1m5068jji1] {
        background: #22c55e;
        color: #ffffff;
        box-shadow: 0 10px 20px rgba(34, 197, 94, .22);
    }

    .yes-no-btn.no.selected[b-1m5068jji1] {
        background: #ef4444;
        color: #ffffff;
        box-shadow: 0 10px 20px rgba(239, 68, 68, .22);
    }

/* ---------------------------------------------------------
   Registration access context
   --------------------------------------------------------- */

.portal-access-state[b-1m5068jji1] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 14px;
    align-items: flex-start;
    margin-bottom: 20px;
    padding: 18px;
    border: 1px solid transparent;
    border-radius: 20px;
}

    .portal-access-state.denied[b-1m5068jji1] {
        border-color: #fecaca;
        background: linear-gradient(135deg, #fff7f7, #fff1f2);
        color: #991b1b;
    }

    .portal-access-state.readonly[b-1m5068jji1] {
        border-color: #fed7aa;
        background: linear-gradient(135deg, #fffdf7, #fff7ed);
        color: #9a3412;
    }

.portal-access-icon[b-1m5068jji1] {
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    border: 1px solid currentColor;
    border-radius: 50%;
    font-size: 19px;
    font-weight: 950;
    line-height: 1;
    opacity: .88;
}

.portal-access-state h6[b-1m5068jji1] {
    margin: 0 0 5px;
    color: currentColor;
    font-size: 15px;
    font-weight: 950;
}

.portal-access-state p[b-1m5068jji1] {
    margin: 0;
    color: currentColor;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.5;
    opacity: .88;
}

/* ---------------------------------------------------------
   Consent choice experience
   --------------------------------------------------------- */

.consent-guidance[b-1m5068jji1] {
    display: grid;
    gap: 5px;
    margin-bottom: 20px;
    padding: 16px 18px;
    border: 1px solid #bae6fd;
    border-radius: 18px;
    background: linear-gradient(135deg, #f8fdff, #f0f9ff);
    color: #075985;
}

    .consent-guidance strong[b-1m5068jji1] {
        font-size: 14px;
        font-weight: 950;
    }

    .consent-guidance span[b-1m5068jji1] {
        font-size: 13px;
        font-weight: 700;
        line-height: 1.5;
    }

.consent-section-head[b-1m5068jji1] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

    .consent-section-head h6[b-1m5068jji1] {
        display: flex;
        align-items: center;
        gap: 10px;
        flex-wrap: wrap;
        margin-bottom: 0;
    }

.consent-section[b-1m5068jji1] {
    overflow: hidden;
    transition: border-color .18s ease, background-color .18s ease, box-shadow .18s ease;
}

    .consent-section.collapsed[b-1m5068jji1] {
        border-color: #dbeafe;
        background: linear-gradient(135deg, #ffffff, #f8fbff);
    }

.consent-collapse-button[b-1m5068jji1] {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 34px;
    padding: 7px 11px;
    border: 1px solid #dbeafe;
    border-radius: 999px;
    background: #f8fbff;
    color: #1d4ed8;
    font-family: inherit;
    font-size: 11px;
    font-weight: 900;
    cursor: pointer;
    transition: transform .16s ease, border-color .16s ease, background-color .16s ease;
}

    .consent-collapse-button:hover[b-1m5068jji1] {
        transform: translateY(-1px);
        border-color: #93c5fd;
        background: #eff6ff;
    }

    .consent-collapse-button:focus-visible[b-1m5068jji1] {
        outline: 3px solid rgba(37, 99, 235, .18);
        outline-offset: 2px;
    }

.consent-collapse-chevron[b-1m5068jji1] {
    display: inline-block;
    font-size: 16px;
    line-height: 1;
    transform: rotate(180deg);
    transition: transform .22s ease;
}

    .consent-collapse-chevron.collapsed[b-1m5068jji1] {
        transform: rotate(0deg);
    }

.consent-collapse-region[b-1m5068jji1] {
    display: grid;
    grid-template-rows: 1fr;
    opacity: 1;
    transition: grid-template-rows .26s cubic-bezier(.2, .8, .2, 1), opacity .20s ease, margin-top .22s ease;
}

    .consent-collapse-region.collapsed[b-1m5068jji1] {
        grid-template-rows: 0fr;
        margin-top: 0;
        opacity: 0;
        pointer-events: none;
    }

.consent-collapse-content[b-1m5068jji1] {
    min-height: 0;
    overflow: hidden;
}

.answer-required-badge[b-1m5068jji1] {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 4px 8px;
    border: 1px solid #bfdbfe;
    border-radius: 999px;
    background: #eff6ff;
    color: #1d4ed8;
    font-size: 9px;
    font-weight: 950;
    letter-spacing: .045em;
    text-transform: uppercase;
}

.consent-html[b-1m5068jji1] {
    margin-top: 18px;
}

.consent-question-row label[b-1m5068jji1] {
    display: grid;
    gap: 5px;
}

.consent-question-title[b-1m5068jji1] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.consent-question-row.mandatory-positive[b-1m5068jji1] {
    border-color: #facc15;
    background: linear-gradient(135deg, #fffdf5, #fffbeb);
    box-shadow: inset 4px 0 0 #eab308;
}

.mandatory-positive-badge[b-1m5068jji1] {
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    padding: 3px 7px;
    border: 1px solid #facc15;
    border-radius: 999px;
    background: #fef9c3;
    color: #854d0e;
    font-size: 8px;
    font-weight: 950;
    letter-spacing: .04em;
    line-height: 1.15;
    text-transform: uppercase;
    white-space: nowrap;
}

.consent-question-row label small[b-1m5068jji1] {
    color: #b45309;
    font-size: 10px;
    font-weight: 850;
}

    .consent-question-row label small.mandatory-positive-message[b-1m5068jji1] {
        color: #b91c1c;
        font-size: 11px;
        font-weight: 900;
    }

.yes-no-btn:disabled[b-1m5068jji1] {
    cursor: not-allowed;
    opacity: .58;
}

    .yes-no-btn:disabled:not(.selected)[b-1m5068jji1] {
        background: #f8fafc;
        color: #94a3b8;
    }

.yes-no-btn:focus-visible[b-1m5068jji1] {
    outline: 3px solid rgba(37, 99, 235, .20);
    outline-offset: 2px;
}

/* ---------------------------------------------------------
   Completed agreement actions
   --------------------------------------------------------- */

.completed-agreement-actions[b-1m5068jji1] {
    display: flex;
    justify-content: flex-end;
    margin-top: 16px;
}

.agreement-view-button[b-1m5068jji1],
[b-1m5068jji1] .agreement-view-button.dxbs-button,
[b-1m5068jji1] .agreement-view-button.btn {
    padding: 10px 18px !important;
    border: 1px solid #2563eb !important;
    border-radius: 999px !important;
    background: #eff6ff !important;
    color: #1d4ed8 !important;
    font-family: inherit;
    font-size: 13px;
    font-weight: 900 !important;
    cursor: pointer;
    box-shadow: 0 10px 24px rgba(37, 99, 235, .10);
    transition: transform .16s ease, border-color .16s ease, background-color .16s ease, color .16s ease;
}

    .agreement-view-button:hover:not(:disabled)[b-1m5068jji1],
    [b-1m5068jji1] .agreement-view-button.dxbs-button:hover,
    [b-1m5068jji1] .agreement-view-button.btn:hover {
        transform: translateY(-1px);
        border-color: #1d4ed8 !important;
        background: #dbeafe !important;
        color: #1e40af !important;
    }

    .agreement-view-button:disabled[b-1m5068jji1] {
        cursor: not-allowed;
        opacity: .52;
    }

    .agreement-view-button:focus-visible[b-1m5068jji1] {
        outline: 3px solid rgba(37, 99, 235, .20);
        outline-offset: 2px;
    }

.success-actions[b-1m5068jji1] {
    display: flex;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
}

/* ---------------------------------------------------------
   Read-only agreement preview
   --------------------------------------------------------- */

.agreement-preview-overlay[b-1m5068jji1] {
    position: fixed;
    inset: 0;
    z-index: 4200;
    display: grid;
    place-items: center;
    padding: 24px;
    background: rgba(15, 23, 42, .44);
    -webkit-backdrop-filter: blur(14px) saturate(125%);
    backdrop-filter: blur(14px) saturate(125%);
    animation: agreementOverlayIn-b-1m5068jji1 .20s ease-out both;
}

.agreement-preview-dialog[b-1m5068jji1] {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    width: min(980px, calc(100vw - 32px));
    max-height: calc(100vh - 48px);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .72);
    border-radius: 28px;
    background: rgba(255, 255, 255, .94);
    box-shadow: 0 34px 100px rgba(2, 6, 23, .32), inset 0 1px 0 rgba(255, 255, 255, .92);
    animation: agreementDialogIn-b-1m5068jji1 .28s cubic-bezier(.2, .8, .2, 1) both;
}

.agreement-preview-header[b-1m5068jji1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 18px 20px;
    border-bottom: 1px solid #e2e8f0;
    background: linear-gradient(135deg, #f8fbff, #ffffff);
}

    .agreement-preview-header > div[b-1m5068jji1] {
        display: grid;
        gap: 3px;
    }

    .agreement-preview-header span[b-1m5068jji1] {
        color: #64748b;
        font-size: 11px;
        font-weight: 850;
    }

    .agreement-preview-header h2[b-1m5068jji1] {
        margin: 0;
        color: #0f172a;
        font-size: 21px;
        font-weight: 950;
        letter-spacing: -.025em;
    }

.agreement-preview-close[b-1m5068jji1] {
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    padding: 0;
    border: 1px solid #cbd5e1;
    border-radius: 999px;
    background: #fff;
    color: #475569;
    font-size: 25px;
    line-height: 1;
    cursor: pointer;
    transition: .16s ease;
}

    .agreement-preview-close:hover[b-1m5068jji1] {
        transform: scale(1.04);
        border-color: #94a3b8;
        color: #0f172a;
    }

.agreement-preview-body[b-1m5068jji1] {
    min-height: 0;
    padding: 26px;
    overflow-y: auto;
    background: #fff;
}

.agreement-preview-loading[b-1m5068jji1] {
    display: grid;
    place-items: center;
    min-height: 260px;
    padding: 30px;
    color: #1d4ed8;
    font-size: 14px;
    font-weight: 900;
    text-align: center;
}

.agreement-preview-footer[b-1m5068jji1] {
    display: flex;
    justify-content: flex-end;
    padding: 12px 18px 16px;
    border-top: 1px solid #e2e8f0;
    background: #f8fafc;
}

.agreement-preview-button[b-1m5068jji1] {
    min-width: 104px;
    padding: 10px 20px;
    border: 1px solid #2563eb;
    border-radius: 999px;
    background: #2563eb;
    color: #fff;
    font-family: inherit;
    font-size: 13px;
    font-weight: 900;
    cursor: pointer;
    box-shadow: 0 12px 26px rgba(37, 99, 235, .22);
}

@keyframes agreementOverlayIn-b-1m5068jji1 {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes agreementDialogIn-b-1m5068jji1 {
    from {
        transform: translateY(16px) scale(.98);
        opacity: 0;
    }

    to {
        transform: translateY(0) scale(1);
        opacity: 1;
    }
}

@media (max-width: 900px) {
    .consent-section-head[b-1m5068jji1] {
        align-items: stretch;
        flex-direction: column;
    }

    .consent-collapse-button[b-1m5068jji1] {
        align-self: flex-start;
    }

    .consent-question-row[b-1m5068jji1] {
        grid-template-columns: 1fr;
        align-items: stretch;
    }

    .yes-no-choice[b-1m5068jji1] {
        justify-self: start;
    }

    .agreement-preview-overlay[b-1m5068jji1] {
        padding: 12px;
    }

    .agreement-preview-dialog[b-1m5068jji1] {
        width: calc(100vw - 24px);
        max-height: calc(100vh - 24px);
        border-radius: 22px;
    }

    .agreement-preview-body[b-1m5068jji1] {
        padding: 18px;
    }
}

@media (max-width: 576px) {
    .portal-access-state[b-1m5068jji1] {
        grid-template-columns: 1fr;
    }

    .completed-agreement-actions[b-1m5068jji1],
    .success-actions[b-1m5068jji1] {
        display: grid;
        grid-template-columns: 1fr;
    }

    [b-1m5068jji1] .completed-agreement-actions .dxbs-button,
    [b-1m5068jji1] .success-actions .dxbs-button {
        width: 100%;
    }

    .agreement-preview-overlay[b-1m5068jji1] {
        padding: 6px;
    }

    .agreement-preview-dialog[b-1m5068jji1] {
        width: calc(100vw - 12px);
        max-height: calc(100vh - 12px);
        border-radius: 18px;
    }

    .agreement-preview-header[b-1m5068jji1] {
        padding: 14px;
    }

    .agreement-preview-body[b-1m5068jji1] {
        padding: 14px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .agreement-preview-overlay[b-1m5068jji1],
    .agreement-preview-dialog[b-1m5068jji1] {
        animation: none;
    }

    .consent-collapse-region[b-1m5068jji1],
    .consent-collapse-chevron[b-1m5068jji1] {
        transition: none;
    }
}


/* ---------------------------------------------------------
   Agreement preview body-only mode
   --------------------------------------------------------- */

.agreement-preview-dialog[b-1m5068jji1] {
    position: relative;
    grid-template-rows: minmax(0, 1fr);
}

.agreement-preview-header[b-1m5068jji1],
.agreement-preview-footer[b-1m5068jji1] {
    display: none !important;
}

.agreement-preview-close[b-1m5068jji1] {
    position: absolute;
    top: 14px;
    right: 14px;
    z-index: 2;
}

.agreement-preview-body[b-1m5068jji1] {
    padding: 34px 30px 30px;
}

@media (max-width: 576px) {
    .agreement-preview-body[b-1m5068jji1] {
        padding: 28px 18px 22px;
    }
}

/* ---------------------------------------------------------
   Agreement mandatory acceptance row
   --------------------------------------------------------- */

.agreement-acceptance-list[b-1m5068jji1] {
    margin-top: 0;
}

.agreement-acceptance-row[b-1m5068jji1] {
    margin: 0;
}



/* ---------------------------------------------------------
   Registration dropdown completion/readability fixes
   --------------------------------------------------------- */

[b-1m5068jji1] .registration-selector-combo .dxbs-editor-input,
[b-1m5068jji1] .registration-selector-combo input.form-control,
[b-1m5068jji1] .registration-selector-combo input[readonly],
[b-1m5068jji1] .registration-selector-combo input[readonly].form-control {
    background: #ffffff !important;
    color: #0f172a !important;
    opacity: 1 !important;
    cursor: pointer !important;
}

.year-option-item[b-1m5068jji1],
.year-option-edit[b-1m5068jji1],
.student-option-item[b-1m5068jji1],
.student-option-edit[b-1m5068jji1] {
    display: grid;
    gap: 2px;
    min-width: 0;
    color: #0f172a;
}

    .year-option-item span[b-1m5068jji1],
    .year-option-edit span[b-1m5068jji1],
    .student-option-item span[b-1m5068jji1],
    .student-option-edit span[b-1m5068jji1] {
        min-width: 0;
        overflow: hidden;
        color: inherit;
        font-weight: 850;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .year-option-item small[b-1m5068jji1],
    .year-option-edit small[b-1m5068jji1],
    .student-option-item small[b-1m5068jji1],
    .student-option-edit small[b-1m5068jji1] {
        color: inherit;
        font-size: 11px;
        font-weight: 900;
        line-height: 1.2;
        opacity: .88;
    }

    .year-option-item.completed[b-1m5068jji1],
    .year-option-edit.completed[b-1m5068jji1],
    .student-option-item.completed[b-1m5068jji1],
    .student-option-edit.completed[b-1m5068jji1] {
        width: 100%;
        opacity: 1 !important;
        padding: 7px 10px;
        border: 1px solid #bbf7d0;
        border-radius: 12px;
        background: #f0fdf4;
        color: #166534 !important;
    }

    .year-option-edit.completed[b-1m5068jji1],
    .student-option-edit.completed[b-1m5068jji1] {
        margin: 2px 0;
        padding: 5px 9px;
    }

/* Keep text readable when DevExpress highlights the dropdown row in blue. */
[b-1m5068jji1] .dropdown-item.active .year-option-item,
[b-1m5068jji1] .dropdown-item.active .year-option-item *,
[b-1m5068jji1] .dropdown-item.active .student-option-item,
[b-1m5068jji1] .dropdown-item.active .student-option-item *,
[b-1m5068jji1] .dropdown-item:active .year-option-item,
[b-1m5068jji1] .dropdown-item:active .year-option-item *,
[b-1m5068jji1] .dropdown-item:active .student-option-item,
[b-1m5068jji1] .dropdown-item:active .student-option-item *,
[b-1m5068jji1] .dropdown-item:hover .year-option-item,
[b-1m5068jji1] .dropdown-item:hover .year-option-item *,
[b-1m5068jji1] .dropdown-item:hover .student-option-item,
[b-1m5068jji1] .dropdown-item:hover .student-option-item *,
[b-1m5068jji1] .dxbs-dropdown-item.active .year-option-item,
[b-1m5068jji1] .dxbs-dropdown-item.active .year-option-item *,
[b-1m5068jji1] .dxbs-dropdown-item.active .student-option-item,
[b-1m5068jji1] .dxbs-dropdown-item.active .student-option-item *,
[b-1m5068jji1] .dxbs-listbox-item-selected .year-option-item,
[b-1m5068jji1] .dxbs-listbox-item-selected .year-option-item *,
[b-1m5068jji1] .dxbs-listbox-item-selected .student-option-item,
[b-1m5068jji1] .dxbs-listbox-item-selected .student-option-item *,
[b-1m5068jji1] [aria-selected="true"] .year-option-item,
[b-1m5068jji1] [aria-selected="true"] .year-option-item *,
[b-1m5068jji1] [aria-selected="true"] .student-option-item,
[b-1m5068jji1] [aria-selected="true"] .student-option-item * {
    color: #ffffff !important;
}

[b-1m5068jji1] .dropdown-item.active,
[b-1m5068jji1] .dropdown-item:active,
[b-1m5068jji1] .dxbs-dropdown-item.active,
[b-1m5068jji1] .dxbs-listbox-item-selected,
[b-1m5068jji1] [aria-selected="true"] {
    background-color: #2563eb !important;
}

[b-1m5068jji1] .dropdown-item:hover,
[b-1m5068jji1] .dxbs-dropdown-item:hover {
    background-color: #3b82f6 !important;
}

    /* Completed rows should still be visibly completed when hovered/selected. */
    [b-1m5068jji1] .dropdown-item.active .year-option-item.completed,
    [b-1m5068jji1] .dropdown-item.active .student-option-item.completed,
    [b-1m5068jji1] .dropdown-item:active .year-option-item.completed,
    [b-1m5068jji1] .dropdown-item:active .student-option-item.completed,
    [b-1m5068jji1] .dropdown-item:hover .year-option-item.completed,
    [b-1m5068jji1] .dropdown-item:hover .student-option-item.completed,
    [b-1m5068jji1] [aria-selected="true"] .year-option-item.completed,
    [b-1m5068jji1] [aria-selected="true"] .student-option-item.completed {
        border-color: rgba(255, 255, 255, .72) !important;
        background: rgba(34, 197, 94, .34) !important;
    }

@media (max-width: 576px) {
    .year-option-item.completed[b-1m5068jji1],
    .year-option-edit.completed[b-1m5068jji1],
    .student-option-item.completed[b-1m5068jji1],
    .student-option-edit.completed[b-1m5068jji1] {
        padding: 6px 8px;
    }

    .year-option-item span[b-1m5068jji1],
    .year-option-edit span[b-1m5068jji1],
    .student-option-item span[b-1m5068jji1],
    .student-option-edit span[b-1m5068jji1] {
        font-size: 13px;
    }

    .year-option-item small[b-1m5068jji1],
    .year-option-edit small[b-1m5068jji1],
    .student-option-item small[b-1m5068jji1],
    .student-option-edit small[b-1m5068jji1] {
        font-size: 10px;
    }
}



/* ---------------------------------------------------------
   Scoped dropdown selected-item readability fix
   Same approach as My Consents: put selected state on our template element.
   --------------------------------------------------------- */

.year-option-item.selected[b-1m5068jji1],
.student-option-item.selected[b-1m5068jji1],
.year-option-item.selected *[b-1m5068jji1],
.student-option-item.selected *[b-1m5068jji1] {
    color: #ffffff !important;
}

.year-option-item.completed.selected[b-1m5068jji1],
.student-option-item.completed.selected[b-1m5068jji1] {
    border-color: rgba(255, 255, 255, .72) !important;
    background: rgba(34, 197, 94, .34) !important;
    color: #ffffff !important;
}

/* DevExpress popup item text should inherit from our selected/completed item container. */
.year-option-item[b-1m5068jji1],
.year-option-item *[b-1m5068jji1],
.student-option-item[b-1m5068jji1],
.student-option-item *[b-1m5068jji1] {
    transition: color .12s ease, background-color .12s ease, border-color .12s ease;
}



/* ---------------------------------------------------------
   Final fix: DevExpress ComboBox closed editor must not look read-only/grey.
   DxComboBox uses a readonly <input role="combobox"> internally, so the generic
   input[readonly] rule was making dropdowns look disabled.
   --------------------------------------------------------- */

[b-1m5068jji1] .registration-selector-combo,
[b-1m5068jji1] dxbl-combo-box.registration-selector-combo,
[b-1m5068jji1] .registration-selector-combo .dxbl-text-edit,
[b-1m5068jji1] .registration-selector-combo .dxbl-edit {
    opacity: 1 !important;
    filter: none !important;
}

    [b-1m5068jji1] .registration-selector-combo input,
    [b-1m5068jji1] .registration-selector-combo input[readonly],
    [b-1m5068jji1] .registration-selector-combo input[role="combobox"],
    [b-1m5068jji1] .registration-selector-combo input.dxbl-text-edit-input,
    [b-1m5068jji1] dxbl-combo-box.registration-selector-combo input,
    [b-1m5068jji1] dxbl-combo-box.registration-selector-combo input[readonly],
    [b-1m5068jji1] dxbl-combo-box.registration-selector-combo input[role="combobox"],
    [b-1m5068jji1] dxbl-combo-box.registration-selector-combo input.dxbl-text-edit-input {
        background-color: #ffffff !important;
        color: #0f172a !important;
        -webkit-text-fill-color: #0f172a !important;
        opacity: 1 !important;
        font-weight: 850 !important;
        cursor: pointer !important;
    }

    /* Completed selected value in the closed ComboBox */
    [b-1m5068jji1] .registration-selector-combo .year-option-edit.completed,
    [b-1m5068jji1] .registration-selector-combo .student-option-edit.completed {
        background: #f0fdf4 !important;
        border-color: #bbf7d0 !important;
        color: #166534 !important;
        opacity: 1 !important;
    }

    /* Non-completed selected value in the closed ComboBox */
    [b-1m5068jji1] .registration-selector-combo .year-option-edit,
    [b-1m5068jji1] .registration-selector-combo .student-option-edit {
        color: #0f172a !important;
        opacity: 1 !important;
        font-weight: 850 !important;
    }

    /* Keep the dropdown arrow area active-looking too */
    [b-1m5068jji1] .registration-selector-combo .dxbl-btn,
    [b-1m5068jji1] .registration-selector-combo .dxbl-edit-btn,
    [b-1m5068jji1] .registration-selector-combo button {
        opacity: 1 !important;
        cursor: pointer !important;
    }

/* Optional: if you do not want the generic readonly rule to affect any ComboBox on this page */
[b-1m5068jji1] dxbl-combo-box input[readonly],
[b-1m5068jji1] dxbl-combo-box input[role="combobox"] {
    background-color: #ffffff !important;
    color: #0f172a !important;
    -webkit-text-fill-color: #0f172a !important;
    opacity: 1 !important;
}


/* ---------------------------------------------------------
   Required registration details
   --------------------------------------------------------- */

.required-star[b-1m5068jji1] {
    color: #dc2626;
    font-weight: 950;
}

.required-row label[b-1m5068jji1] {
    color: #0f172a;
}
/* _content/Arsakeio_Portal/Components/Pages/PRPARegistrationAdmin.razor.rz.scp.css */
.prca-admin-page[b-16mhq7xkhn] {
    width: 100%;
    min-height: 100vh;
    padding: 40px 32px 80px;
    background: #ffffff;
}

.admin-shell[b-16mhq7xkhn] {
    width: 100%;
    max-width: none;
    margin: 0;
}

.admin-header[b-16mhq7xkhn] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    width: 100%;
    margin-bottom: 22px;
    padding: 30px;
    border-radius: 28px;
    background: rgba(255,255,255,.76);
    backdrop-filter: blur(18px);
    border: 1px solid rgba(255,255,255,.85);
    box-shadow: 0 24px 70px rgba(15,23,42,.08);
}

.eyebrow[b-16mhq7xkhn] {
    display: inline-flex;
    padding: 7px 13px;
    border-radius: 999px;
    background: rgba(219,234,254,.9);
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 900;
    margin-bottom: 12px;
}

.admin-header h1[b-16mhq7xkhn] {
    margin: 0;
    font-size: clamp(32px, 4vw, 52px);
    font-weight: 950;
    letter-spacing: -.05em;
    color: #0f172a;
}

.admin-header p[b-16mhq7xkhn] {
    margin: 10px 0 0;
    color: #64748b;
    font-size: 16px;
}

[b-16mhq7xkhn] .save-main.dxbs-button {
    border-radius: 999px !important;
    padding: 13px 28px !important;
    font-weight: 900 !important;
    background: #2563eb !important;
    border-color: #2563eb !important;
    box-shadow: 0 16px 34px rgba(37,99,235,.25);
}

.admin-alert[b-16mhq7xkhn] {
    margin-bottom: 16px;
    padding: 14px 18px;
    border-radius: 16px;
    font-weight: 800;
}

    .admin-alert.success[b-16mhq7xkhn] {
        background: #dcfce7;
        color: #166534;
    }

    .admin-alert.error[b-16mhq7xkhn] {
        background: #fee2e2;
        color: #991b1b;
    }

.year-card[b-16mhq7xkhn] {
    display: grid;
    grid-template-columns: 220px minmax(0, 1fr);
    gap: 16px;
    align-items: center;
    width: 100%;
    margin-bottom: 22px;
    padding: 20px;
    border-radius: 22px;
    background: rgba(255,255,255,.8);
    backdrop-filter: blur(16px);
    border: 1px solid rgba(226,232,240,.9);
    box-shadow: 0 16px 44px rgba(15,23,42,.06);
}

    .year-card label[b-16mhq7xkhn] {
        font-weight: 900;
        color: #334155;
    }

[b-16mhq7xkhn] .year-card .dxbs-editor,
[b-16mhq7xkhn] .year-card .dxbs-combobox,
[b-16mhq7xkhn] .year-card .dxbs-editor-container {
    width: 100%;
}

[b-16mhq7xkhn] .admin-tabs .dxbs-tabs {
    border: 0;
}

[b-16mhq7xkhn] .admin-tabs .nav-tabs {
    border: 1px solid rgba(226,232,240,.9) !important;
    gap: 10px;
    margin: 0 0 34px !important;
    padding: 12px 14px !important;
    border-radius: 22px !important;
    background: rgba(255,255,255,.78) !important;
    backdrop-filter: blur(16px);
    box-shadow: 0 16px 44px rgba(15,23,42,.06);
    overflow-x: auto;
    flex-wrap: nowrap !important;
}

[b-16mhq7xkhn] .admin-tabs .tab-content {
    padding-top: 0 !important;
}

[b-16mhq7xkhn] .admin-tabs .nav-tabs .nav-link {
    border: 1px solid transparent !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: #64748b !important;
    font-weight: 900 !important;
    padding: 10px 16px !important;
    white-space: nowrap;
}

    [b-16mhq7xkhn] .admin-tabs .nav-tabs .nav-link:hover {
        background: rgba(241,245,249,.9) !important;
        color: #0f172a !important;
    }

    [b-16mhq7xkhn] .admin-tabs .nav-tabs .nav-link.active {
        background: #2563eb !important;
        color: #fff !important;
        border-color: #2563eb !important;
        box-shadow: 0 12px 26px rgba(37,99,235,.22);
    }

.tab-panel[b-16mhq7xkhn] {
    width: 100%;
    padding: 26px;
    border-radius: 26px;
    background: rgba(255,255,255,.82);
    backdrop-filter: blur(18px);
    border: 1px solid rgba(226,232,240,.9);
    box-shadow: 0 22px 60px rgba(15,23,42,.07);
    overflow-x: hidden;
}

.panel-head[b-16mhq7xkhn] {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
    margin-bottom: 22px;
}

    .panel-head h2[b-16mhq7xkhn] {
        margin: 0;
        font-size: 24px;
        font-weight: 950;
        color: #0f172a;
    }

    .panel-head p[b-16mhq7xkhn] {
        margin: 7px 0 0;
        color: #64748b;
    }

/* Template editor layout */
.template-top-layout[b-16mhq7xkhn] {
    display: grid;
    grid-template-columns: 320px minmax(0, 1fr);
    gap: 28px;
    align-items: start;
    width: 100%;
    max-width: 100%;
    margin-bottom: 24px;
}

.template-list[b-16mhq7xkhn] {
    display: grid;
    gap: 12px;
    position: sticky;
    top: 18px;
    max-height: 520px;
    overflow-y: auto;
    padding-right: 8px;
    align-self: start;
}

.template-top-layout[b-16mhq7xkhn] {
    align-items: start;
}

.template-meta-editor[b-16mhq7xkhn] {
    align-self: start;
}

.token-list[b-16mhq7xkhn] {
    max-height: 210px;
    overflow-y: auto;
    padding-right: 4px;
}

.template-item[b-16mhq7xkhn] {
    width: 100%;
    border: 1px solid rgba(226,232,240,.9);
    background: rgba(255,255,255,.92);
    border-radius: 18px;
    padding: 16px 18px;
    text-align: left;
    cursor: pointer;
    transition: .18s ease;
    box-shadow: 0 8px 22px rgba(15,23,42,.035);
}

    .template-item:hover[b-16mhq7xkhn] {
        transform: translateY(-2px);
        box-shadow: 0 16px 28px rgba(15,23,42,.08);
    }

    .template-item.active[b-16mhq7xkhn] {
        border-color: #2563eb;
        background: #ffffff;
        box-shadow: 0 0 0 4px rgba(37,99,235,.12), 0 16px 34px rgba(15,23,42,.08);
    }

    .template-item.add-template[b-16mhq7xkhn] {
        border-style: dashed;
        background: #f8fafc;
    }

    .template-item strong[b-16mhq7xkhn] {
        display: block;
        color: #0f172a;
        font-weight: 950;
        font-size: 15px;
        line-height: 1.25;
    }

    .template-item span[b-16mhq7xkhn] {
        display: block;
        margin-top: 6px;
        color: #64748b;
        font-size: 12px;
        overflow-wrap: anywhere;
    }

.template-meta-editor[b-16mhq7xkhn] {
    min-width: 0;
    width: 100%;
    display: grid;
    gap: 18px;
    padding: 22px;
    border-radius: 24px;
    background: rgba(248,250,252,.78);
    border: 1px solid rgba(226,232,240,.9);
}

.editor-grid[b-16mhq7xkhn] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 160px;
    gap: 16px;
    width: 100%;
}

.template-meta-editor label[b-16mhq7xkhn],
.template-body-editor label[b-16mhq7xkhn] {
    display: block;
    margin-bottom: 8px;
    font-size: 13px;
    font-weight: 900;
    color: #334155;
}

.inline-check[b-16mhq7xkhn] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: -4px;
    font-weight: 850;
    color: #334155;
}

/* Token dictionary */
.token-box[b-16mhq7xkhn] {
    padding: 18px;
    border-radius: 22px;
    background: rgba(255,255,255,.92);
    border: 1px solid rgba(226,232,240,.9);
}

.token-title[b-16mhq7xkhn] {
    font-weight: 950;
    color: #0f172a;
    margin-bottom: 8px;
    font-size: 15px;
}

.token-help[b-16mhq7xkhn] {
    margin: 0 0 14px;
    color: #64748b;
    font-size: 13px;
}

.token-list[b-16mhq7xkhn] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.token-chip[b-16mhq7xkhn] {
    display: inline-flex;
    align-items: center;
    padding: 7px 12px;
    border-radius: 999px;
    background: #eef2ff;
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 900;
    line-height: 1;
    font-family: ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;
    cursor: pointer;
    user-select: none;
    transition: .15s ease;
}

    .token-chip:hover[b-16mhq7xkhn] {
        background: #dbeafe;
        transform: translateY(-1px);
    }

.token-list-descriptive[b-16mhq7xkhn] {
    align-items: stretch;
}

.token-chip-large[b-16mhq7xkhn] {
    display: inline-grid;
    gap: 3px;
    text-align: left;
    min-width: 170px;
    cursor: pointer;
}

    .token-chip-large strong[b-16mhq7xkhn] {
        font-size: 12px;
        color: #1e293b;
    }

    .token-chip-large small[b-16mhq7xkhn] {
        font-size: 11px;
        color: #4f63d7;
        font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    }

/* HTML editor */
.template-body-editor[b-16mhq7xkhn] {
    width: 100%;
    max-width: 100%;
    overflow: hidden;
    display: grid;
    gap: 6px;
    margin-top: 8px;
    padding: 22px;
    border-radius: 24px;
    background: rgba(255,255,255,.88);
    border: 1px solid rgba(226,232,240,.9);
}

    .template-body-editor > div[b-16mhq7xkhn] {
        width: 100%;
        max-width: 100%;
        overflow: hidden;
    }

[b-16mhq7xkhn] .template-body-editor .dx-htmleditor,
[b-16mhq7xkhn] .template-body-editor .dxbs-html-editor,
[b-16mhq7xkhn] .template-body-editor .dxbs-htmleditor {
    border-radius: 18px !important;
    overflow: hidden !important;
    border-color: rgba(226,232,240,.95) !important;
}

/* Questions grid */
.consent-head[b-16mhq7xkhn] {
    margin-top: 30px;
    padding-top: 24px;
    border-top: 1px solid rgba(226,232,240,.8);
}

.settings-grid-view[b-16mhq7xkhn] {
    width: 100%;
    margin-top: 12px;
    border-radius: 20px;
    overflow: hidden;
}

[b-16mhq7xkhn] .settings-grid-view .dxbs-grid {
    border-radius: 18px !important;
    overflow: hidden !important;
    border: 1px solid rgba(226,232,240,.9) !important;
}

[b-16mhq7xkhn] .settings-grid-view table {
    background: #ffffff;
}

[b-16mhq7xkhn] .settings-grid-view th {
    background: #f8fafc !important;
    color: #475569 !important;
    font-size: 12px !important;
    font-weight: 950 !important;
    text-transform: uppercase;
    letter-spacing: .06em;
}

[b-16mhq7xkhn] .settings-grid-view td {
    vertical-align: middle !important;
}

[b-16mhq7xkhn] .settings-grid-view .dxbs-grid-search-box {
    border-radius: 12px !important;
}

[b-16mhq7xkhn] .settings-grid-view .dxbs-button {
    border-radius: 10px !important;
    font-weight: 800 !important;
}

/* Years */
.year-list[b-16mhq7xkhn] {
    display: grid;
    gap: 10px;
}

.year-row[b-16mhq7xkhn] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 18px;
    padding: 16px 18px;
    border-radius: 18px;
    background: rgba(255,255,255,.88);
    border: 1px solid rgba(226,232,240,.9);
}

    .year-row strong[b-16mhq7xkhn] {
        display: block;
        color: #0f172a;
        font-size: 16px;
    }

    .year-row span[b-16mhq7xkhn] {
        display: block;
        margin-top: 3px;
        color: #94a3b8;
        font-size: 13px;
    }

/* Editors */
[b-16mhq7xkhn] .dxbs-editor-input,
[b-16mhq7xkhn] input.form-control,
[b-16mhq7xkhn] textarea.form-control {
    border-radius: 12px !important;
    border-color: #dbe2ea !important;
    min-height: 42px;
    background: rgba(255,255,255,.95) !important;
}

    [b-16mhq7xkhn] .dxbs-editor-input:focus,
    [b-16mhq7xkhn] input.form-control:focus,
    [b-16mhq7xkhn] textarea.form-control:focus {
        border-color: #2563eb !important;
        box-shadow: 0 0 0 4px rgba(37,99,235,.14) !important;
    }

[b-16mhq7xkhn] .dxbs-checkbox {
    font-weight: 800;
}

html[b-16mhq7xkhn],
body[b-16mhq7xkhn] {
    background: #ffffff !important;
}

@media (max-width: 1100px) {
    .template-top-layout[b-16mhq7xkhn] {
        grid-template-columns: 1fr;
    }

    .template-list[b-16mhq7xkhn] {
        position: static;
        max-height: none;
    }
}

@media (max-width: 980px) {
    .prca-admin-page[b-16mhq7xkhn] {
        padding: 24px 16px 60px;
    }

    .admin-header[b-16mhq7xkhn] {
        flex-direction: column;
        align-items: stretch;
        padding: 24px;
    }

    .year-card[b-16mhq7xkhn] {
        grid-template-columns: 1fr;
    }

    .panel-head[b-16mhq7xkhn] {
        flex-direction: column;
    }

    .editor-grid[b-16mhq7xkhn] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .prca-admin-page[b-16mhq7xkhn] {
        padding: 18px 10px 50px;
    }

    .admin-header[b-16mhq7xkhn] {
        padding: 22px 18px;
        border-radius: 22px;
    }

    .tab-panel[b-16mhq7xkhn] {
        padding: 16px;
        border-radius: 20px;
    }

    .template-meta-editor[b-16mhq7xkhn],
    .template-body-editor[b-16mhq7xkhn] {
        padding: 16px;
        border-radius: 18px;
    }

    [b-16mhq7xkhn] .admin-tabs .nav-tabs {
        border-radius: 18px !important;
        overflow-x: auto;
        flex-wrap: nowrap !important;
    }

        [b-16mhq7xkhn] .admin-tabs .nav-tabs .nav-link {
            white-space: nowrap;
        }
}

/* ==========================================
   AGREEMENT TAB
   ========================================== */

.agreement-layout[b-16mhq7xkhn] {
    display: grid;
    grid-template-columns: 320px minmax(0, 1fr);
    gap: 28px;
    align-items: start;
    width: 100%;
    max-width: 100%;
}

.agreement-family-list[b-16mhq7xkhn] {
    display: grid;
    gap: 12px;
    position: sticky;
    top: 18px;
    max-height: 680px;
    overflow-y: auto;
    padding-right: 8px;
    align-self: start;
}

.agreement-family-item[b-16mhq7xkhn] {
    display: grid;
    gap: 6px;
}

.agreement-status[b-16mhq7xkhn] {
    display: inline-flex;
    width: fit-content;
    margin-top: 4px;
    padding: 5px 9px;
    border-radius: 999px;
    font-size: 10px;
    font-weight: 950;
    line-height: 1;
}

    .agreement-status.ready[b-16mhq7xkhn] {
        background: #dcfce7;
        color: #166534;
    }

    .agreement-status.empty[b-16mhq7xkhn] {
        background: #fff7ed;
        color: #9a3412;
    }

    .agreement-status.inactive[b-16mhq7xkhn] {
        background: #f1f5f9;
        color: #64748b;
    }

    .agreement-status.missing[b-16mhq7xkhn] {
        background: #fee2e2;
        color: #991b1b;
    }

.agreement-editor-panel[b-16mhq7xkhn] {
    display: grid;
    min-width: 0;
    gap: 24px;
}

.agreement-meta-card[b-16mhq7xkhn] {
    display: grid;
    gap: 18px;
    padding: 22px;
    border-radius: 24px;
    background: rgba(248,250,252,.78);
    border: 1px solid rgba(226,232,240,.9);
}

.agreement-family-context[b-16mhq7xkhn] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 16px 18px;
    border-radius: 18px;
    background: rgba(255,255,255,.88);
    border: 1px solid rgba(226,232,240,.9);
}

    .agreement-family-context span[b-16mhq7xkhn] {
        display: block;
        margin-bottom: 5px;
        color: #64748b;
        font-size: 11px;
        font-weight: 900;
        letter-spacing: .06em;
        text-transform: uppercase;
    }

    .agreement-family-context strong[b-16mhq7xkhn] {
        display: block;
        color: #0f172a;
        font-size: 16px;
        font-weight: 950;
    }

    .agreement-family-context small[b-16mhq7xkhn] {
        display: block;
        margin-top: 4px;
        color: #94a3b8;
        font-size: 12px;
        font-weight: 800;
    }

.agreement-token-box[b-16mhq7xkhn] {
    width: 100%;
    margin-bottom: 0;
}

.agreement-token-list[b-16mhq7xkhn] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
    gap: 10px;
    max-height: 260px;
    overflow-y: auto;
    padding-right: 6px;
}

    .agreement-token-list .token-chip-large[b-16mhq7xkhn] {
        width: 100%;
        min-width: 0;
    }

        .agreement-token-list .token-chip-large strong[b-16mhq7xkhn] {
            display: block;
        }

.agreement-editor[b-16mhq7xkhn] {
    width: 100%;
    margin-top: 0;
}

.agreement-empty-state[b-16mhq7xkhn] {
    display: grid;
    place-items: center;
    min-height: 420px;
    padding: 40px 24px;
    border: 1px dashed #cbd5e1;
    border-radius: 24px;
    background: rgba(248,250,252,.88);
    text-align: center;
}

    .agreement-empty-state h3[b-16mhq7xkhn] {
        margin: 0;
        color: #0f172a;
        font-size: 20px;
        font-weight: 950;
    }

    .agreement-empty-state p[b-16mhq7xkhn] {
        max-width: 460px;
        margin: 8px 0 0;
        color: #64748b;
        line-height: 1.5;
    }

[b-16mhq7xkhn] .agreement-editor .dx-htmleditor,
[b-16mhq7xkhn] .agreement-editor .dxbs-html-editor,
[b-16mhq7xkhn] .agreement-editor .dxbs-htmleditor {
    border-radius: 18px !important;
    overflow: hidden !important;
}

@media (max-width: 1100px) {
    .agreement-layout[b-16mhq7xkhn] {
        grid-template-columns: 1fr;
    }

    .agreement-family-list[b-16mhq7xkhn] {
        position: static;
        max-height: none;
    }
}

@media (max-width: 640px) {
    .agreement-meta-card[b-16mhq7xkhn] {
        padding: 16px;
        border-radius: 18px;
    }

    .agreement-family-context[b-16mhq7xkhn] {
        align-items: flex-start;
        flex-direction: column;
    }
}


/* ==========================================
   CONSENT TEMPLATE DELETE + CONFIRM MODAL
   ========================================== */

.template-item-with-delete[b-16mhq7xkhn] {
    position: relative;
    padding-right: 42px;
}

.template-delete-x[b-16mhq7xkhn] {
    position: absolute;
    top: 14px;
    right: 14px;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: auto;
    height: auto;
    min-width: 0;
    min-height: 0;
    padding: 0;
    margin: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #dc2626;
    font-family: Arial, "Segoe UI", sans-serif;
    font-size: 18px;
    font-weight: 950;
    line-height: 1;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    box-shadow: none;
    transition: transform .15s ease, color .15s ease;
}

    .template-delete-x:hover[b-16mhq7xkhn] {
        transform: scale(1.16);
        color: #991b1b;
        background: transparent;
    }

    .template-delete-x:focus-visible[b-16mhq7xkhn] {
        outline: 3px solid rgba(239, 68, 68, .20);
        outline-offset: 3px;
        border-radius: 6px;
    }

.delete-consent-popup[b-16mhq7xkhn]  .dxbs-modal-content {
    border-radius: 26px !important;
    overflow: hidden !important;
    border: 1px solid rgba(254, 202, 202, .95) !important;
    box-shadow: 0 30px 90px rgba(15, 23, 42, .22) !important;
}

.delete-consent-dialog[b-16mhq7xkhn] {
    padding: 34px 30px 28px;
    text-align: center;
    background: #ffffff;
}

.delete-consent-icon[b-16mhq7xkhn] {
    display: grid;
    place-items: center;
    width: 64px;
    height: 64px;
    margin: 0 auto 16px;
    border-radius: 999px;
    background: #fee2e2;
    color: #b91c1c;
    font-size: 32px;
    font-weight: 950;
}

.delete-consent-dialog h2[b-16mhq7xkhn] {
    margin: 0;
    color: #0f172a;
    font-size: 25px;
    font-weight: 950;
    letter-spacing: -.03em;
}

.delete-consent-dialog p[b-16mhq7xkhn] {
    margin: 12px auto 0;
    max-width: 420px;
    color: #475569;
    line-height: 1.55;
}

.delete-consent-warning[b-16mhq7xkhn] {
    padding: 12px 14px;
    border: 1px solid #fed7aa;
    border-radius: 16px;
    background: #fff7ed;
    color: #9a3412 !important;
    font-size: 13px;
    font-weight: 800;
}

.delete-consent-actions[b-16mhq7xkhn] {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 22px;
}

.modal-secondary-button[b-16mhq7xkhn],
.modal-danger-button[b-16mhq7xkhn] {
    min-height: 42px;
    padding: 10px 18px;
    border-radius: 999px;
    font-family: inherit;
    font-size: 13px;
    font-weight: 900;
    cursor: pointer;
}

.modal-secondary-button[b-16mhq7xkhn] {
    border: 1px solid #e2e8f0;
    background: #ffffff;
    color: #334155;
}

.modal-danger-button[b-16mhq7xkhn] {
    border: 1px solid #dc2626;
    background: #dc2626;
    color: #ffffff;
    box-shadow: 0 14px 28px rgba(220, 38, 38, .22);
}

    .modal-secondary-button:disabled[b-16mhq7xkhn],
    .modal-danger-button:disabled[b-16mhq7xkhn] {
        cursor: wait;
        opacity: .65;
    }

@media (max-width: 640px) {
    .delete-consent-actions[b-16mhq7xkhn] {
        flex-direction: column;
    }
}

/* ==========================================
   AGREEMENT TAB - WIDE EDITOR
   ========================================== */

.agreement-tab-panel[b-16mhq7xkhn] {
    overflow-x: hidden;
}

.agreement-top-layout[b-16mhq7xkhn] {
    display: grid;
    grid-template-columns: 320px minmax(0, 1fr);
    gap: 28px;
    align-items: start;
    width: 100%;
    max-width: 100%;
    margin-bottom: 24px;
}

.agreement-meta-column[b-16mhq7xkhn] {
    display: grid;
    gap: 18px;
    min-width: 0;
}

.compact-token-list[b-16mhq7xkhn] {
    max-height: 238px;
}

.compact-empty-state[b-16mhq7xkhn] {
    min-height: 300px;
}

.editor-title-row[b-16mhq7xkhn] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
    margin-bottom: 14px;
}

    .editor-title-row label[b-16mhq7xkhn] {
        margin-bottom: 6px;
    }

    .editor-title-row p[b-16mhq7xkhn] {
        margin: 0;
        color: #64748b;
        font-size: 13px;
        font-weight: 700;
        line-height: 1.45;
    }

.editor-expand-button[b-16mhq7xkhn],
.modal-primary-button[b-16mhq7xkhn] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 10px 18px;
    border: 1px solid #2563eb;
    border-radius: 999px;
    background: #2563eb;
    color: #ffffff;
    font-family: inherit;
    font-size: 13px;
    font-weight: 900;
    cursor: pointer;
    box-shadow: 0 14px 28px rgba(37, 99, 235, .22);
    transition: transform .16s ease, background-color .16s ease, border-color .16s ease;
    white-space: nowrap;
}

    .editor-expand-button:hover[b-16mhq7xkhn],
    .modal-primary-button:hover[b-16mhq7xkhn] {
        transform: translateY(-1px);
        background: #1d4ed8;
        border-color: #1d4ed8;
    }

    .modal-primary-button:disabled[b-16mhq7xkhn] {
        cursor: wait;
        opacity: .65;
    }

.consent-editor-card[b-16mhq7xkhn],
.agreement-editor-card[b-16mhq7xkhn] {
    margin-top: 0;
}

.editor-shell[b-16mhq7xkhn] {
    padding: 18px;
    border: 1px solid #e2e8f0;
    border-radius: 22px;
    background: #f8fafc;
}

.editor-frame[b-16mhq7xkhn] {
    width: 100%;
    max-width: 1240px;
    margin: 0 auto;
    border-radius: 18px;
    overflow: hidden;
    background: #ffffff;
    box-shadow: 0 18px 48px rgba(15, 23, 42, .09);
}

.agreement-editor-frame[b-16mhq7xkhn] {
    max-width: 1280px;
}

[b-16mhq7xkhn] .editor-frame .dx-htmleditor,
[b-16mhq7xkhn] .editor-frame .dxbs-html-editor,
[b-16mhq7xkhn] .editor-frame .dxbs-htmleditor,
[b-16mhq7xkhn] .agreement-fullscreen-editor-frame .dx-htmleditor,
[b-16mhq7xkhn] .agreement-fullscreen-editor-frame .dxbs-html-editor,
[b-16mhq7xkhn] .agreement-fullscreen-editor-frame .dxbs-htmleditor {
    border-radius: 18px !important;
    overflow: hidden !important;
    border-color: rgba(226, 232, 240, .95) !important;
}

/* ==========================================
   FULLSCREEN HTML EDITOR
   ========================================== */

.agreement-editor-fullscreen-popup[b-16mhq7xkhn]  .dxbs-modal-content {
    border-radius: 28px !important;
    overflow: hidden !important;
    border: 1px solid rgba(226, 232, 240, .92) !important;
    box-shadow: 0 34px 110px rgba(15, 23, 42, .30) !important;
    background: #ffffff !important;
}

.agreement-editor-fullscreen-popup[b-16mhq7xkhn]  .dxbs-popup-body,
.agreement-editor-fullscreen-popup[b-16mhq7xkhn]  .dxbs-modal-body,
.agreement-editor-fullscreen-body[b-16mhq7xkhn] {
    padding: 0 !important;
    height: 100%;
}

.agreement-fullscreen-dialog[b-16mhq7xkhn] {
    height: 94vh;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    background: #ffffff;
}

.agreement-fullscreen-header[b-16mhq7xkhn] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    padding: 20px 24px;
    border-bottom: 1px solid #e2e8f0;
    background: linear-gradient(135deg, #f8fbff, #ffffff);
}

    .agreement-fullscreen-header span[b-16mhq7xkhn] {
        display: block;
        margin-bottom: 5px;
        color: #1d4ed8;
        font-size: 11px;
        font-weight: 950;
        letter-spacing: .08em;
        text-transform: uppercase;
    }

    .agreement-fullscreen-header h2[b-16mhq7xkhn] {
        margin: 0;
        color: #0f172a;
        font-size: clamp(20px, 2vw, 28px);
        font-weight: 950;
        letter-spacing: -.03em;
    }

    .agreement-fullscreen-header p[b-16mhq7xkhn] {
        margin: 6px 0 0;
        color: #64748b;
        font-size: 13px;
        font-weight: 800;
    }

.agreement-fullscreen-actions[b-16mhq7xkhn] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 0 0 auto;
}

.agreement-fullscreen-content[b-16mhq7xkhn] {
    min-height: 0;
    display: grid;
    grid-template-columns: 300px minmax(0, 1fr);
    gap: 18px;
    padding: 18px;
    background: #f8fafc;
}

.agreement-fullscreen-token-panel[b-16mhq7xkhn] {
    min-height: 0;
    display: grid;
    grid-template-rows: auto auto minmax(0, 1fr);
    gap: 0;
    padding: 18px;
    border: 1px solid #e2e8f0;
    border-radius: 22px;
    background: #ffffff;
    overflow: hidden;
}

.fullscreen-token-list[b-16mhq7xkhn] {
    max-height: none;
    overflow-y: auto;
    padding-right: 6px;
}

    .fullscreen-token-list .token-chip-large[b-16mhq7xkhn] {
        width: 100%;
        min-width: 0;
    }

.agreement-fullscreen-editor-main[b-16mhq7xkhn] {
    min-width: 0;
    min-height: 0;
    display: grid;
    grid-template-rows: minmax(0, 1fr);
    padding: 18px;
    border: 1px solid #e2e8f0;
    border-radius: 22px;
    background: #ffffff;
    overflow: hidden;
}

.agreement-fullscreen-editor-frame[b-16mhq7xkhn] {
    min-height: 0;
    width: 100%;
    max-width: 1320px;
    margin: 0 auto;
    border-radius: 18px;
    overflow: hidden;
    background: #ffffff;
    box-shadow: 0 20px 54px rgba(15, 23, 42, .12);
}

@media (max-width: 1200px) {
    .agreement-top-layout[b-16mhq7xkhn] {
        grid-template-columns: 1fr;
    }

    .agreement-family-list[b-16mhq7xkhn] {
        position: static;
        max-height: none;
    }

    .agreement-fullscreen-content[b-16mhq7xkhn] {
        grid-template-columns: 1fr;
    }

    .agreement-fullscreen-token-panel[b-16mhq7xkhn] {
        max-height: 190px;
    }
}

@media (max-width: 760px) {
    .editor-title-row[b-16mhq7xkhn],
    .agreement-fullscreen-header[b-16mhq7xkhn],
    .agreement-fullscreen-actions[b-16mhq7xkhn] {
        flex-direction: column;
        align-items: stretch;
    }

    .editor-expand-button[b-16mhq7xkhn],
    .modal-primary-button[b-16mhq7xkhn],
    .modal-secondary-button[b-16mhq7xkhn] {
        width: 100%;
    }

    .editor-shell[b-16mhq7xkhn],
    .agreement-fullscreen-content[b-16mhq7xkhn],
    .agreement-fullscreen-editor-main[b-16mhq7xkhn] {
        padding: 12px;
    }

    .agreement-fullscreen-dialog[b-16mhq7xkhn] {
        height: 94vh;
    }
}

/* ==========================================
   DEFAULT TEMPLATE COPY ACTION
   ========================================== */

.admin-header-actions[b-16mhq7xkhn] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    flex-wrap: wrap;
}

.copy-defaults-button[b-16mhq7xkhn] {
    min-height: 46px;
    padding: 12px 20px;
    border: 1px solid #fed7aa;
    border-radius: 999px;
    background: #fff7ed;
    color: #9a3412;
    font-family: inherit;
    font-size: 13px;
    font-weight: 950;
    cursor: pointer;
    box-shadow: 0 14px 28px rgba(234, 88, 12, .12);
    transition: transform .16s ease, background-color .16s ease, border-color .16s ease, color .16s ease;
    white-space: nowrap;
}

    .copy-defaults-button:hover:not(:disabled)[b-16mhq7xkhn] {
        transform: translateY(-1px);
        border-color: #fdba74;
        background: #ffedd5;
        color: #7c2d12;
    }

    .copy-defaults-button:disabled[b-16mhq7xkhn] {
        cursor: not-allowed;
        opacity: .58;
    }

.copy-defaults-popup[b-16mhq7xkhn]  .dxbs-modal-content {
    border-radius: 26px !important;
    overflow: hidden !important;
    border: 1px solid rgba(253, 186, 116, .95) !important;
    box-shadow: 0 30px 90px rgba(15, 23, 42, .22) !important;
}

.copy-defaults-dialog[b-16mhq7xkhn] {
    padding: 34px 30px 28px;
    text-align: center;
    background: #ffffff;
}

.copy-defaults-icon[b-16mhq7xkhn] {
    display: grid;
    place-items: center;
    width: 64px;
    height: 64px;
    margin: 0 auto 16px;
    border-radius: 999px;
    background: #ffedd5;
    color: #c2410c;
    font-size: 32px;
    font-weight: 950;
}

.copy-defaults-dialog h2[b-16mhq7xkhn] {
    max-width: 520px;
    margin: 0 auto;
    color: #0f172a;
    font-size: 25px;
    font-weight: 950;
    letter-spacing: -.03em;
}

.copy-defaults-dialog p[b-16mhq7xkhn] {
    margin: 12px auto 0;
    max-width: 500px;
    color: #475569;
    line-height: 1.55;
}

.copy-defaults-warning[b-16mhq7xkhn] {
    padding: 12px 14px;
    border: 1px solid #fed7aa;
    border-radius: 16px;
    background: #fff7ed;
    color: #9a3412 !important;
    font-size: 13px;
    font-weight: 800;
}

.copy-defaults-actions[b-16mhq7xkhn] {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 22px;
}

/* ==========================================
   QUESTIONS GRID - CLICK TO EDIT CELLS
   ========================================== */

.questions-edit-cell-grid[b-16mhq7xkhn] {
    cursor: default;
}

[b-16mhq7xkhn] .questions-edit-cell-grid td:not(:first-child) {
    cursor: text;
}

[b-16mhq7xkhn] .questions-edit-cell-grid .dxbs-checkbox,
[b-16mhq7xkhn] .questions-edit-cell-grid input[type="checkbox"],
[b-16mhq7xkhn] .questions-edit-cell-grid .dxbl-checkbox {
    cursor: pointer;
}

[b-16mhq7xkhn] .questions-edit-cell-grid .dxbs-button,
[b-16mhq7xkhn] .questions-edit-cell-grid .btn {
    cursor: pointer;
}

@media (max-width: 980px) {
    .admin-header-actions[b-16mhq7xkhn] {
        justify-content: stretch;
    }

        .admin-header-actions > *[b-16mhq7xkhn],
        .copy-defaults-button[b-16mhq7xkhn] {
            width: 100%;
        }
}

@media (max-width: 640px) {
    .copy-defaults-actions[b-16mhq7xkhn] {
        flex-direction: column;
    }
}
/* _content/Arsakeio_Portal/Components/Pages/PRPAScholarships.razor.rz.scp.css */
.scholarships-page[b-u87wvn09dx] {
    display: grid;
    gap: 18px;
    max-width: 1500px;
    margin: 0 auto;
    padding: clamp(16px, 2vw, 28px);
}

.scholarships-hero[b-u87wvn09dx],
.scholarships-card[b-u87wvn09dx] {
    border: 1px solid rgba(226, 232, 240, .9);
    border-radius: 26px;
    background: rgba(255, 255, 255, .94);
    box-shadow: 0 18px 48px rgba(15, 23, 42, .07);
}

.scholarships-hero[b-u87wvn09dx] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    padding: clamp(22px, 2vw, 30px);
}

.eyebrow[b-u87wvn09dx] {
    display: inline-flex;
    padding: 7px 13px;
    border-radius: 999px;
    background: rgba(219, 234, 254, .9);
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 900;
    margin-bottom: 12px;
}

.scholarships-hero h1[b-u87wvn09dx],
.section-title-row h2[b-u87wvn09dx] {
    margin: 0;
    color: #0f172a;
    font-weight: 950;
    letter-spacing: -.035em;
}

.scholarships-hero h1[b-u87wvn09dx] {
    font-size: clamp(32px, 3vw, 50px);
    line-height: 1;
}

.scholarships-hero p[b-u87wvn09dx],
.section-title-row p[b-u87wvn09dx] {
    margin: 8px 0 0;
    color: #64748b;
    font-size: 14px;
    font-weight: 750;
    line-height: 1.55;
}

.year-pill[b-u87wvn09dx],
.limit-pill[b-u87wvn09dx],
.request-status[b-u87wvn09dx] {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 8px 13px;
    border-radius: 999px;
    background: #eff6ff;
    color: #1d4ed8;
    border: 1px solid #bfdbfe;
    font-size: 12px;
    font-weight: 950;
    white-space: nowrap;
}

.scholarships-card[b-u87wvn09dx] {
    padding: clamp(18px, 1.8vw, 26px);
}

.section-title-row[b-u87wvn09dx] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 18px;
}

.student-card-grid[b-u87wvn09dx] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 12px;
}

.student-display-item[b-u87wvn09dx] {
    display: grid;
    grid-template-columns: 48px 1fr;
    gap: 12px;
    align-items: center;
    padding: 14px;
    border: 1px solid #e2e8f0;
    border-radius: 20px;
    background: #f8fafc;
}

.student-avatar[b-u87wvn09dx] {
    width: 48px;
    height: 48px;
    border-radius: 16px;
    display: grid;
    place-items: center;
    background: #eef2ff;
    color: #3730a3;
    font-weight: 950;
}

.student-display-item strong[b-u87wvn09dx],
.request-row strong[b-u87wvn09dx] {
    display: block;
    color: #0f172a;
    font-weight: 950;
}

.student-display-item span[b-u87wvn09dx],
.request-row span[b-u87wvn09dx] {
    display: block;
    margin-top: 3px;
    color: #64748b;
    font-size: 12px;
    font-weight: 750;
}

.requirements-panel[b-u87wvn09dx] {
    display: grid;
    gap: 10px;
    padding: 16px;
    border-radius: 20px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    margin-bottom: 16px;
}

    .requirements-panel h3[b-u87wvn09dx],
    .upload-box h3[b-u87wvn09dx],
    .comments-panel label[b-u87wvn09dx],
    .consent-panel h3[b-u87wvn09dx] {
        margin: 0;
        color: #0f172a;
        font-size: 15px;
        font-weight: 950;
    }

.requirement-item[b-u87wvn09dx] {
    display: grid;
    grid-template-columns: 34px 1fr;
    gap: 12px;
}

.requirement-number[b-u87wvn09dx] {
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    border-radius: 999px;
    background: #e0e7ff;
    color: #3730a3;
    font-weight: 950;
}

.requirement-item p[b-u87wvn09dx],
.upload-box p[b-u87wvn09dx],
.consent-panel p[b-u87wvn09dx] {
    margin: 4px 0 0;
    color: #64748b;
    font-size: 13px;
    font-weight: 750;
    line-height: 1.45;
}

.upload-grid[b-u87wvn09dx] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.upload-box[b-u87wvn09dx] {
    display: grid;
    gap: 14px;
    min-height: 190px;
    padding: 16px;
    border: 1px dashed #cbd5e1;
    border-radius: 22px;
    background: #ffffff;
}

    .upload-box input[type=file][b-u87wvn09dx] {
        display: block;
        width: 100%;
        padding: 12px;
        border: 1px solid #e2e8f0;
        border-radius: 16px;
        background: #f8fafc;
        color: #334155;
        font-weight: 800;
    }

.selected-file-list[b-u87wvn09dx] {
    display: grid;
    gap: 8px;
}

.file-empty[b-u87wvn09dx] {
    color: #94a3b8;
    font-size: 12px;
    font-weight: 800;
}

.selected-file-item[b-u87wvn09dx] {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    padding: 9px 10px;
    border-radius: 14px;
    background: #f8fafc;
    color: #334155;
    font-size: 12px;
    font-weight: 800;
}

    .selected-file-item span[b-u87wvn09dx] {
        min-width: 0;
        overflow-wrap: anywhere;
    }

    .selected-file-item strong[b-u87wvn09dx] {
        white-space: nowrap;
        color: #1d4ed8;
    }

.comments-panel[b-u87wvn09dx] {
    display: grid;
    gap: 8px;
    margin-top: 16px;
}

    .comments-panel textarea[b-u87wvn09dx] {
        width: 100%;
        resize: vertical;
        min-height: 96px;
        border: 1px solid #cbd5e1;
        border-radius: 18px;
        padding: 12px 14px;
        font: inherit;
        color: #0f172a;
        font-weight: 750;
    }

.consent-panel[b-u87wvn09dx] {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    align-items: center;
    margin-top: 16px;
    padding: 14px 16px;
    border-radius: 20px;
    border: 1px solid #e2e8f0;
    background: #f8fafc;
}

.yes-no-choice[b-u87wvn09dx] {
    display: inline-flex;
    gap: 6px;
    padding: 5px;
    border-radius: 999px;
    background: #ffffff;
    border: 1px solid #e2e8f0;
}

.yes-no-btn[b-u87wvn09dx] {
    min-width: 82px;
    min-height: 34px;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: #64748b;
    font-weight: 950;
    cursor: pointer;
}

    .yes-no-btn.yes.selected[b-u87wvn09dx] {
        background: #dcfce7;
        color: #166534;
    }

    .yes-no-btn.no.selected[b-u87wvn09dx] {
        background: #fee2e2;
        color: #991b1b;
    }

.form-actions[b-u87wvn09dx] {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 18px;
}

[b-u87wvn09dx] .primary-action.dxbs-button,
[b-u87wvn09dx] .secondary-action.dxbs-button {
    border-radius: 999px !important;
    min-height: 42px !important;
    padding-inline: 20px !important;
    font-weight: 900 !important;
}

[b-u87wvn09dx] .primary-action.dxbs-button {
    background: #2563eb !important;
    border-color: #2563eb !important;
    color: #ffffff !important;
}

[b-u87wvn09dx] .secondary-action.dxbs-button {
    background: #ffffff !important;
    border-color: #e2e8f0 !important;
    color: #334155 !important;
}

.scholarships-alert[b-u87wvn09dx] {
    padding: 13px 16px;
    border-radius: 18px;
    font-size: 13px;
    font-weight: 850;
}

    .scholarships-alert.info[b-u87wvn09dx] {
        border: 1px solid #bfdbfe;
        background: #eff6ff;
        color: #1d4ed8;
    }

    .scholarships-alert.success[b-u87wvn09dx] {
        border: 1px solid #bbf7d0;
        background: #f0fdf4;
        color: #166534;
    }

    .scholarships-alert.error[b-u87wvn09dx] {
        border: 1px solid #fecaca;
        background: #fff1f2;
        color: #991b1b;
    }

.empty-state[b-u87wvn09dx] {
    display: grid;
    gap: 4px;
    justify-items: center;
    padding: 24px;
    border: 1px dashed #cbd5e1;
    border-radius: 20px;
    color: #64748b;
    font-weight: 850;
    text-align: center;
}

.request-list[b-u87wvn09dx] {
    display: grid;
    gap: 10px;
}

.request-row[b-u87wvn09dx] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    padding: 14px;
    border: 1px solid #e2e8f0;
    border-radius: 18px;
    background: #f8fafc;
}

.success-popup-body[b-u87wvn09dx] {
    display: grid;
    gap: 12px;
    justify-items: center;
    text-align: center;
    padding: 32px;
}

.success-icon[b-u87wvn09dx] {
    display: grid;
    place-items: center;
    width: 62px;
    height: 62px;
    border-radius: 999px;
    background: #dcfce7;
    color: #166534;
    font-size: 34px;
    font-weight: 950;
}

.success-popup-body h2[b-u87wvn09dx] {
    margin: 0;
    color: #0f172a;
    font-weight: 950;
}

.success-popup-body p[b-u87wvn09dx] {
    margin: 0;
    color: #64748b;
}

@media (max-width: 900px) {
    .scholarships-hero[b-u87wvn09dx],
    .section-title-row[b-u87wvn09dx],
    .consent-panel[b-u87wvn09dx],
    .request-row[b-u87wvn09dx] {
        flex-direction: column;
        align-items: stretch;
    }

    .upload-grid[b-u87wvn09dx] {
        grid-template-columns: 1fr;
    }

    .form-actions[b-u87wvn09dx] {
        display: grid;
        grid-template-columns: 1fr;
    }

    .yes-no-choice[b-u87wvn09dx] {
        width: 100%;
    }

    .yes-no-btn[b-u87wvn09dx] {
        flex: 1;
    }
}


/* =========================================================
   Scholarship GDPR info-only panel
   ========================================================= */

.consent-info-panel[b-u87wvn09dx] {
    align-items: center;
}

.consent-info-badge[b-u87wvn09dx] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 9px 14px;
    border-radius: 999px;
    background: #eff6ff;
    border: 1px solid #bfdbfe;
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 950;
    text-align: center;
    white-space: nowrap;
}

@media (max-width: 900px) {
    .consent-info-badge[b-u87wvn09dx] {
        width: 100%;
        white-space: normal;
    }
}


/* =========================================================
   DevExpress scholarship file input
   ========================================================= */

.devexpress-upload-box[b-u87wvn09dx] {
    align-content: start;
}

[b-u87wvn09dx] .scholarship-file-input,
[b-u87wvn09dx] .scholarship-file-input dxbl-file-input,
[b-u87wvn09dx] .scholarship-file-input .dxbl-upload-panel,
[b-u87wvn09dx] .scholarship-file-input .dxbs-upload-panel {
    width: 100% !important;
}

    [b-u87wvn09dx] .scholarship-file-input .dxbl-upload-panel,
    [b-u87wvn09dx] .scholarship-file-input .dxbs-upload-panel {
        border: 1px solid #e2e8f0 !important;
        border-radius: 16px !important;
        background: #f8fafc !important;
        padding: 10px !important;
    }

    [b-u87wvn09dx] .scholarship-file-input .dxbl-upload-select-btn,
    [b-u87wvn09dx] .scholarship-file-input .dxbs-upload-select-btn,
    [b-u87wvn09dx] .scholarship-file-input button {
        border-radius: 999px !important;
        min-height: 36px !important;
        padding-inline: 14px !important;
        font-weight: 900 !important;
    }

.dx-selected-file-list[b-u87wvn09dx] {
    margin-top: 0;
}

.selected-file-item.invalid[b-u87wvn09dx] {
    background: #fff1f2;
    border: 1px solid #fecaca;
    color: #991b1b;
}

    .selected-file-item.invalid strong[b-u87wvn09dx] {
        color: #991b1b;
    }

.selected-file-item em[b-u87wvn09dx] {
    grid-column: 1 / -1;
    display: block;
    margin-top: 4px;
    color: #991b1b;
    font-size: 11px;
    font-style: normal;
    font-weight: 900;
}

/* The file list is rendered by our page, so DevExpress internal upload buttons are not shown. */
[b-u87wvn09dx] .scholarship-file-input .dxbl-upload-file-list,
[b-u87wvn09dx] .scholarship-file-input .dxbs-upload-file-list {
    display: none !important;
}


/* =========================================================
   Scholarship single-submission lock + DevExpress drop zones
   ========================================================= */

.request-locked-card[b-u87wvn09dx] {
    display: grid;
    grid-template-columns: 58px 1fr;
    gap: 16px;
    align-items: start;
    background: linear-gradient(135deg, #f0fdf4, #ffffff);
    border-color: #bbf7d0;
}

.locked-icon[b-u87wvn09dx] {
    display: grid;
    place-items: center;
    width: 58px;
    height: 58px;
    border-radius: 999px;
    background: #dcfce7;
    color: #166534;
    font-size: 30px;
    font-weight: 950;
    border: 1px solid #bbf7d0;
}

.request-locked-card h2[b-u87wvn09dx] {
    margin: 0;
    color: #0f172a;
    font-size: 24px;
    font-weight: 950;
    letter-spacing: -.025em;
}

.request-locked-card p[b-u87wvn09dx] {
    margin: 8px 0 0;
    color: #475569;
    font-size: 14px;
    font-weight: 750;
    line-height: 1.55;
}

.locked-request-details[b-u87wvn09dx] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 14px;
}

    .locked-request-details span[b-u87wvn09dx] {
        display: inline-flex;
        align-items: center;
        min-height: 30px;
        padding: 6px 10px;
        border-radius: 999px;
        background: #ffffff;
        border: 1px solid #bbf7d0;
        color: #166534;
        font-size: 12px;
        font-weight: 900;
    }

.scholarship-drop-zone[b-u87wvn09dx] {
    display: grid;
    place-items: center;
    min-height: 108px;
    padding: 16px;
    border: 2px dashed #cbd5e1;
    border-radius: 20px;
    background: linear-gradient(135deg, #f8fafc, #ffffff);
    color: #475569;
    transition: all .18s ease;
}

.drop-zone-copy[b-u87wvn09dx] {
    display: grid;
    gap: 4px;
    justify-items: center;
    text-align: center;
}

    .drop-zone-copy strong[b-u87wvn09dx] {
        color: #0f172a;
        font-size: 14px;
        font-weight: 950;
    }

    .drop-zone-copy span[b-u87wvn09dx] {
        color: #64748b;
        font-size: 12px;
        font-weight: 800;
    }

.scholarship-drop-zone-drag-over[b-u87wvn09dx] {
    border-color: #2563eb !important;
    background: #eff6ff !important;
    color: #1d4ed8 !important;
    box-shadow: 0 18px 38px rgba(37, 99, 235, .12);
}

/*
   Hide the built-in DevExpress Upload button.
   Files are uploaded only from the page submit button via UploadAllFiles().
*/
[b-u87wvn09dx] .hide-internal-upload-button .dxbl-upload-upload-btn,
[b-u87wvn09dx] .hide-internal-upload-button .dxbl-upload-start-btn,
[b-u87wvn09dx] .hide-internal-upload-button > dxbl-file-input > div.dxbl-upload-panel > div > .dxbl-upload-upload-btn,
[b-u87wvn09dx] .hide-internal-upload-button > dxbl-file-input > div.dxbl-upload-panel > div > .dxbl-upload-start-btn,
[b-u87wvn09dx] .hide-internal-upload-button button[title^="Upload"],
[b-u87wvn09dx] .hide-internal-upload-button button[aria-label^="Upload"] {
    display: none !important;
}

.request-file-list[b-u87wvn09dx] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 8px;
}

    .request-file-list em[b-u87wvn09dx] {
        display: inline-flex;
        max-width: 320px;
        padding: 5px 8px;
        border-radius: 999px;
        background: #eff6ff;
        color: #1d4ed8;
        font-size: 11px;
        font-style: normal;
        font-weight: 850;
        overflow-wrap: anywhere;
    }

@media (max-width: 700px) {
    .request-locked-card[b-u87wvn09dx] {
        grid-template-columns: 1fr;
    }

    .locked-icon[b-u87wvn09dx] {
        width: 48px;
        height: 48px;
        font-size: 24px;
    }
}


/* =========================================================
   Scholarship upload refinements: centered buttons, per-file remove, statuses
   ========================================================= */

.devexpress-upload-box[b-u87wvn09dx] {
    justify-items: center;
    text-align: center;
}

    .devexpress-upload-box > div:first-child[b-u87wvn09dx],
    .devexpress-upload-box .dx-selected-file-list[b-u87wvn09dx] {
        width: 100%;
        text-align: left;
    }

[b-u87wvn09dx] .scholarship-file-input,
[b-u87wvn09dx] .scholarship-file-input .dxbl-upload-panel,
[b-u87wvn09dx] .scholarship-file-input .dxbs-upload-panel {
    display: flex !important;
    justify-content: center !important;
}

    [b-u87wvn09dx] .scholarship-file-input .dxbl-upload-panel > div,
    [b-u87wvn09dx] .scholarship-file-input .dxbs-upload-panel > div {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 8px;
        width: 100%;
    }

.selected-file-item[b-u87wvn09dx] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    align-items: center;
}

.selected-file-remove[b-u87wvn09dx] {
    display: grid;
    place-items: center;
    width: 28px;
    height: 28px;
    border-radius: 999px;
    border: 1px solid #fecaca;
    background: #fff1f2;
    color: #991b1b;
    font-size: 18px;
    font-weight: 950;
    line-height: 1;
    cursor: pointer;
}

    .selected-file-remove:hover:not(:disabled)[b-u87wvn09dx] {
        background: #fee2e2;
    }

    .selected-file-remove:disabled[b-u87wvn09dx] {
        opacity: .45;
        cursor: not-allowed;
    }

.request-status.pending[b-u87wvn09dx],
.locked-request-details span.pending[b-u87wvn09dx] {
    background: #fffbeb;
    border-color: #fde68a;
    color: #92400e;
}

.request-status.approved[b-u87wvn09dx],
.locked-request-details span.approved[b-u87wvn09dx] {
    background: #dcfce7;
    border-color: #bbf7d0;
    color: #166534;
}

.request-status.rejected[b-u87wvn09dx],
.locked-request-details span.rejected[b-u87wvn09dx] {
    background: #fff1f2;
    border-color: #fecaca;
    color: #991b1b;
}

.request-status.unknown[b-u87wvn09dx],
.locked-request-details span.unknown[b-u87wvn09dx] {
    background: #f8fafc;
    border-color: #e2e8f0;
    color: #475569;
}

/* Hide all built-in DevExpress immediate action buttons; upload/remove is controlled by our own UI. */
[b-u87wvn09dx] .hide-internal-upload-button .dxbl-upload-upload-btn,
[b-u87wvn09dx] .hide-internal-upload-button .dxbl-upload-start-btn,
[b-u87wvn09dx] .hide-internal-upload-button .dxbl-upload-remove-all-btn,
[b-u87wvn09dx] .hide-internal-upload-button .dxbl-file-input-remove-all-btn,
[b-u87wvn09dx] .hide-internal-upload-button .dxbl-upload-clear-btn,
[b-u87wvn09dx] .hide-internal-upload-button .dxbs-upload-upload-btn,
[b-u87wvn09dx] .hide-internal-upload-button .dxbs-upload-start-btn,
[b-u87wvn09dx] .hide-internal-upload-button .dxbs-upload-remove-all-btn,
[b-u87wvn09dx] .hide-internal-upload-button .dxbs-upload-clear-btn,
[b-u87wvn09dx] .hide-internal-upload-button button[title^="Upload"],
[b-u87wvn09dx] .hide-internal-upload-button button[aria-label^="Upload"],
[b-u87wvn09dx] .hide-internal-upload-button button[title^="Remove"],
[b-u87wvn09dx] .hide-internal-upload-button button[aria-label^="Remove"] {
    display: none !important;
}

@media (max-width: 700px) {
    .selected-file-item[b-u87wvn09dx] {
        grid-template-columns: minmax(0, 1fr) auto;
    }

        .selected-file-item strong[b-u87wvn09dx] {
            grid-column: 1 / 2;
        }

    .selected-file-remove[b-u87wvn09dx] {
        grid-column: 2;
        grid-row: 1 / span 2;
    }
}

/* =========================================================
   Scholarship OTP verification popup
   ========================================================= */

.otp-body[b-u87wvn09dx] {
    padding: 0 !important;
}

.otp-card[b-u87wvn09dx] {
    display: grid;
    gap: 16px;
    padding: 30px;
    text-align: center;
    background: #ffffff;
}

.otp-center[b-u87wvn09dx] {
    justify-items: center;
}

.otp-icon[b-u87wvn09dx] {
    display: grid;
    place-items: center;
    width: 64px;
    height: 64px;
    border-radius: 999px;
    background: #dcfce7;
    border: 1px solid #bbf7d0;
    color: #166534;
    font-size: 30px;
    font-weight: 950;
}

.otp-title[b-u87wvn09dx] {
    color: #0f172a;
    font-size: 24px;
    font-weight: 950;
    letter-spacing: -.025em;
}

.otp-sub[b-u87wvn09dx] {
    color: #64748b;
    font-size: 14px;
    font-weight: 750;
    line-height: 1.45;
}

.otp-email[b-u87wvn09dx] {
    margin-top: 6px;
    color: #1d4ed8;
    font-weight: 950;
    overflow-wrap: anywhere;
}

.otp-input-wrap[b-u87wvn09dx] {
    display: grid;
    gap: 8px;
    width: 100%;
}

.otp-label[b-u87wvn09dx] {
    color: #334155;
    font-size: 12px;
    font-weight: 900;
    text-align: left;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.otp-input[b-u87wvn09dx] {
    width: 100%;
    min-height: 54px;
    border: 1px solid #cbd5e1;
    border-radius: 18px;
    background: #f8fafc;
    color: #0f172a;
    font: inherit;
    font-size: 24px;
    font-weight: 950;
    letter-spacing: .28em;
    text-align: center;
}

.otp-hint[b-u87wvn09dx] {
    color: #94a3b8;
    font-size: 12px;
    font-weight: 750;
    text-align: left;
}

.otp-error[b-u87wvn09dx] {
    width: 100%;
    padding: 10px 12px;
    border-radius: 14px;
    border: 1px solid #fecaca;
    background: #fff1f2;
    color: #991b1b;
    font-size: 13px;
    font-weight: 850;
}

.otp-actions-2[b-u87wvn09dx] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    width: 100%;
}

[b-u87wvn09dx] .otp-btn.dxbs-button {
    border-radius: 999px !important;
    min-height: 42px !important;
    font-weight: 900 !important;
}

[b-u87wvn09dx] .otp-primary.dxbs-button {
    background: #2563eb !important;
    border-color: #2563eb !important;
    color: #ffffff !important;
}

@media (max-width: 560px) {
    .otp-card[b-u87wvn09dx] {
        padding: 22px;
    }

    .otp-actions-2[b-u87wvn09dx] {
        grid-template-columns: 1fr;
    }
}

/* =========================================================
   Scholarship Admin Center access states
   ========================================================= */

.readonly-access-card[b-u87wvn09dx] {
    background: linear-gradient(135deg, #eff6ff, #ffffff);
    border-color: #bfdbfe;
}

    .readonly-access-card .locked-icon[b-u87wvn09dx] {
        background: #dbeafe;
        border-color: #bfdbfe;
        color: #1d4ed8;
        font-family: ui-serif, Georgia, serif;
        font-style: italic;
    }
/* _content/Arsakeio_Portal/Components/Pages/PRPASignedContracts.razor.rz.scp.css */
.signed-documents-page[b-5yf8vloij5] {
    width: 100%;
    min-height: 100vh;
    padding: 36px 28px 78px;
    background: #ffffff;
}

.signed-documents-shell[b-5yf8vloij5] {
    display: grid;
    gap: 22px;
    width: 100%;
    max-width: 1540px;
    margin: 0 auto;
}

.signed-documents-hero[b-5yf8vloij5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    padding: 30px;
    border: 1px solid rgba(226, 232, 240, .95);
    border-radius: 30px;
    background: linear-gradient(135deg, rgba(248, 250, 252, .98), rgba(255, 255, 255, .94));
    box-shadow: 0 22px 60px rgba(15, 23, 42, .07);
}

.eyebrow[b-5yf8vloij5] {
    display: inline-flex;
    padding: 7px 13px;
    border-radius: 999px;
    background: rgba(219, 234, 254, .9);
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 900;
    margin-bottom: 12px;
}

.signed-documents-hero h1[b-5yf8vloij5] {
    margin: 0;
    color: #0f172a;
    font-size: clamp(34px, 4vw, 54px);
    font-weight: 950;
    letter-spacing: -.05em;
}

.signed-documents-hero p[b-5yf8vloij5] {
    max-width: 860px;
    margin: 10px 0 0;
    color: #64748b;
    font-size: 16px;
    line-height: 1.55;
}

.document-filters[b-5yf8vloij5],
.document-viewer-card[b-5yf8vloij5],
.state-card[b-5yf8vloij5] {
    border: 1px solid rgba(226, 232, 240, .95);
    border-radius: 26px;
    background: rgba(255, 255, 255, .94);
    box-shadow: 0 18px 48px rgba(15, 23, 42, .055);
}

.document-filters[b-5yf8vloij5] {
    display: grid;
    grid-template-columns: minmax(220px, 300px) minmax(0, 1fr);
    gap: 18px;
    align-items: end;
    padding: 22px;
}

.filter-field[b-5yf8vloij5] {
    display: grid;
    gap: 8px;
    min-width: 0;
}

    .filter-field label[b-5yf8vloij5] {
        color: #334155;
        font-size: 12px;
        font-weight: 950;
        letter-spacing: .04em;
        text-transform: uppercase;
    }

[b-5yf8vloij5] .filter-field .dxbs-editor,
[b-5yf8vloij5] .filter-field .dxbs-combobox,
[b-5yf8vloij5] .filter-field .dxbs-editor-container {
    width: 100%;
}

.document-option[b-5yf8vloij5] {
    display: grid;
    gap: 3px;
    padding: 2px 0;
}

    .document-option strong[b-5yf8vloij5] {
        color: #0f172a;
        font-size: 13px;
        font-weight: 900;
    }

    .document-option span[b-5yf8vloij5] {
        color: #64748b;
        font-size: 12px;
    }


    /* ---------------------------------------------------------
   Dropdown readability
   --------------------------------------------------------- */

    .document-option strong[b-5yf8vloij5],
    .document-option span[b-5yf8vloij5] {
        transition: color .12s ease;
    }

    .document-option.selected strong[b-5yf8vloij5],
    .document-option.selected span[b-5yf8vloij5] {
        color: #ffffff !important;
    }

[b-5yf8vloij5] .dropdown-item.active .document-option strong,
[b-5yf8vloij5] .dropdown-item.active .document-option span,
[b-5yf8vloij5] .dropdown-item:active .document-option strong,
[b-5yf8vloij5] .dropdown-item:active .document-option span,
[b-5yf8vloij5] .dropdown-item:hover .document-option strong,
[b-5yf8vloij5] .dropdown-item:hover .document-option span,
[b-5yf8vloij5] .dxbs-dropdown-item.active .document-option strong,
[b-5yf8vloij5] .dxbs-dropdown-item.active .document-option span,
[b-5yf8vloij5] .dxbs-listbox-item-selected .document-option strong,
[b-5yf8vloij5] .dxbs-listbox-item-selected .document-option span,
[b-5yf8vloij5] [aria-selected="true"] .document-option strong,
[b-5yf8vloij5] [aria-selected="true"] .document-option span {
    color: #ffffff !important;
}

[b-5yf8vloij5] .dropdown-item.active,
[b-5yf8vloij5] .dropdown-item:active,
[b-5yf8vloij5] .dxbs-dropdown-item.active,
[b-5yf8vloij5] .dxbs-listbox-item-selected,
[b-5yf8vloij5] [aria-selected="true"] {
    background-color: #2563eb !important;
}

[b-5yf8vloij5] .dropdown-item:hover,
[b-5yf8vloij5] .dxbs-dropdown-item:hover {
    background-color: #3b82f6 !important;
}

[b-5yf8vloij5] .filter-field .dxbs-editor-input,
[b-5yf8vloij5] .filter-field input.form-control {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.document-viewer-card[b-5yf8vloij5] {
    overflow: hidden;
}

.document-toolbar[b-5yf8vloij5] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding: 24px 24px 18px;
    border-bottom: 1px solid rgba(226, 232, 240, .9);
}

    .document-toolbar span[b-5yf8vloij5] {
        display: block;
        color: #2563eb;
        font-size: 11px;
        font-weight: 950;
        letter-spacing: .08em;
        text-transform: uppercase;
    }

    .document-toolbar h2[b-5yf8vloij5] {
        margin: 5px 0 0;
        color: #0f172a;
        font-size: 26px;
        font-weight: 950;
        letter-spacing: -.03em;
    }

    .document-toolbar p[b-5yf8vloij5] {
        margin: 7px 0 0;
        color: #64748b;
        line-height: 1.5;
    }

.document-actions[b-5yf8vloij5] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex-wrap: wrap;
}

.primary-button[b-5yf8vloij5],
.secondary-button[b-5yf8vloij5] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 10px 17px;
    border-radius: 999px;
    font-family: inherit;
    font-size: 13px;
    font-weight: 900;
    line-height: 1;
    text-decoration: none;
    cursor: pointer;
}

.primary-button[b-5yf8vloij5] {
    border: 1px solid #2563eb;
    background: #2563eb;
    color: #ffffff;
    box-shadow: 0 14px 30px rgba(37, 99, 235, .22);
}

.secondary-button[b-5yf8vloij5] {
    border: 1px solid rgba(226, 232, 240, .95);
    background: #ffffff;
    color: #334155;
}

.document-meta[b-5yf8vloij5] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    padding: 18px 24px;
    background: #f8fafc;
    border-bottom: 1px solid rgba(226, 232, 240, .9);
}

    .document-meta div[b-5yf8vloij5] {
        min-width: 0;
        padding: 12px 13px;
        border: 1px solid rgba(226, 232, 240, .95);
        border-radius: 16px;
        background: #ffffff;
    }

    .document-meta span[b-5yf8vloij5] {
        display: block;
        color: #64748b;
        font-size: 10px;
        font-weight: 950;
        letter-spacing: .06em;
        text-transform: uppercase;
    }

    .document-meta strong[b-5yf8vloij5] {
        display: block;
        margin-top: 6px;
        overflow: hidden;
        color: #0f172a;
        font-size: 13px;
        font-weight: 900;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

.iframe-wrap[b-5yf8vloij5] {
    height: min(820px, calc(100vh - 280px));
    min-height: 540px;
    padding: 18px;
    background: #f1f5f9;
}

.document-frame[b-5yf8vloij5] {
    width: 100%;
    height: 100%;
    border: 1px solid rgba(203, 213, 225, .95);
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 16px 36px rgba(15, 23, 42, .08);
}

.state-card[b-5yf8vloij5] {
    padding: 28px;
}

    .state-card h2[b-5yf8vloij5] {
        margin: 0;
        color: #0f172a;
        font-size: 22px;
        font-weight: 950;
    }

    .state-card p[b-5yf8vloij5] {
        margin: 8px 0 0;
        color: #64748b;
        line-height: 1.55;
    }

    .state-card.error[b-5yf8vloij5] {
        border-color: rgba(254, 202, 202, .95);
        background: #fff1f2;
    }

        .state-card.error h2[b-5yf8vloij5],
        .state-card.error p[b-5yf8vloij5] {
            color: #991b1b;
        }

    .state-card.empty[b-5yf8vloij5] {
        background: #f8fafc;
    }

@media (max-width: 980px) {
    .signed-documents-page[b-5yf8vloij5] {
        padding: 24px 16px 62px;
    }

    .signed-documents-hero[b-5yf8vloij5],
    .document-toolbar[b-5yf8vloij5] {
        flex-direction: column;
        align-items: stretch;
    }

    .document-filters[b-5yf8vloij5] {
        grid-template-columns: 1fr;
    }

    .document-actions[b-5yf8vloij5] {
        justify-content: flex-start;
    }

    .document-meta[b-5yf8vloij5] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .iframe-wrap[b-5yf8vloij5] {
        height: 620px;
    }
}

@media (max-width: 640px) {
    .signed-documents-page[b-5yf8vloij5] {
        padding: 18px 10px 52px;
    }

    .signed-documents-hero[b-5yf8vloij5],
    .document-filters[b-5yf8vloij5],
    .state-card[b-5yf8vloij5] {
        border-radius: 22px;
        padding: 20px;
    }

    .document-toolbar[b-5yf8vloij5],
    .document-meta[b-5yf8vloij5] {
        padding: 18px;
    }

    .document-meta[b-5yf8vloij5] {
        grid-template-columns: 1fr;
    }

    .iframe-wrap[b-5yf8vloij5] {
        min-height: 480px;
        height: 520px;
        padding: 10px;
    }
}

/* Consent edit panel aligned with registration page */

.consent-editor-panel[b-5yf8vloij5] {
    display: grid;
    gap: 20px;
    padding: 24px;
    background: #ffffff;
}

.section-box[b-5yf8vloij5] {
    border: 1px solid rgba(226, 232, 240, .8);
    border-radius: 20px;
    padding: 22px;
    margin-bottom: 0;
    background: rgba(255, 255, 255, .82);
    backdrop-filter: blur(10px);
}

    .section-box h6[b-5yf8vloij5] {
        font-size: 15px;
        font-weight: 900;
        color: #334155;
        margin: 0;
    }

.info-text[b-5yf8vloij5] {
    color: #1f2937;
    font-size: 16px;
    line-height: 1.7;
}

    .info-text h1[b-5yf8vloij5],
    .info-text h2[b-5yf8vloij5],
    .info-text h3[b-5yf8vloij5],
    .info-text h4[b-5yf8vloij5] {
        font-weight: 900;
        color: #0f172a;
        margin-bottom: 18px;
    }

    .info-text p[b-5yf8vloij5] {
        margin-bottom: 14px;
    }

    .info-text table[b-5yf8vloij5] {
        width: 100%;
        border-collapse: collapse;
        margin: 20px 0;
    }

    .info-text th[b-5yf8vloij5],
    .info-text td[b-5yf8vloij5] {
        border: 1px solid #e2e8f0;
        padding: 10px;
    }

    .info-text img[b-5yf8vloij5] {
        max-width: 100%;
        height: auto;
    }

    .info-text ul[b-5yf8vloij5],
    .info-text ol[b-5yf8vloij5] {
        padding-left: 25px;
    }

.consent-guidance[b-5yf8vloij5] {
    display: grid;
    gap: 5px;
    padding: 16px 18px;
    border: 1px solid #bae6fd;
    border-radius: 18px;
    background: linear-gradient(135deg, #f8fdff, #f0f9ff);
    color: #075985;
}

    .consent-guidance strong[b-5yf8vloij5] {
        font-size: 14px;
        font-weight: 950;
    }

    .consent-guidance span[b-5yf8vloij5] {
        font-size: 13px;
        font-weight: 700;
        line-height: 1.5;
    }

.consent-section[b-5yf8vloij5] {
    overflow: hidden;
    transition: border-color .18s ease, background-color .18s ease, box-shadow .18s ease;
}

    .consent-section.expanded[b-5yf8vloij5] {
        border-color: rgba(226, 232, 240, .9);
        background: rgba(255, 255, 255, .88);
    }

    .consent-section.collapsed[b-5yf8vloij5] {
        border-color: #dbeafe;
        background: linear-gradient(135deg, #ffffff, #f8fbff);
    }

.consent-section-head[b-5yf8vloij5] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

    .consent-section-head h6[b-5yf8vloij5] {
        display: flex;
        align-items: center;
        gap: 10px;
        flex-wrap: wrap;
        margin-bottom: 0;
    }

.consent-collapse-button[b-5yf8vloij5] {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 34px;
    padding: 7px 11px;
    border: 1px solid #dbeafe;
    border-radius: 999px;
    background: #f8fbff;
    color: #1d4ed8;
    font-family: inherit;
    font-size: 11px;
    font-weight: 900;
    cursor: pointer;
    transition: transform .16s ease, border-color .16s ease, background-color .16s ease;
}

    .consent-collapse-button:hover[b-5yf8vloij5] {
        transform: translateY(-1px);
        border-color: #93c5fd;
        background: #eff6ff;
    }

    .consent-collapse-button:focus-visible[b-5yf8vloij5] {
        outline: 3px solid rgba(37, 99, 235, .18);
        outline-offset: 2px;
    }

.consent-collapse-chevron[b-5yf8vloij5] {
    display: inline-block;
    font-size: 16px;
    line-height: 1;
    transform: rotate(180deg);
    transition: transform .22s ease;
}

    .consent-collapse-chevron.collapsed[b-5yf8vloij5] {
        transform: rotate(0deg);
    }

.answer-required-badge[b-5yf8vloij5] {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 4px 8px;
    border: 1px solid #bfdbfe;
    border-radius: 999px;
    background: #eff6ff;
    color: #1d4ed8;
    font-size: 9px;
    font-weight: 950;
    letter-spacing: .045em;
    text-transform: uppercase;
}

.consent-collapse-region[b-5yf8vloij5] {
    display: grid;
    grid-template-rows: 1fr;
    opacity: 1;
    margin-top: 18px;
    transition: grid-template-rows .26s cubic-bezier(.2, .8, .2, 1), opacity .20s ease, margin-top .22s ease;
}

    .consent-collapse-region.collapsed[b-5yf8vloij5] {
        grid-template-rows: 0fr;
        margin-top: 0;
        opacity: 0;
        pointer-events: none;
    }

.consent-collapse-content[b-5yf8vloij5] {
    min-height: 0;
    overflow: hidden;
}

.consent-html[b-5yf8vloij5] {
    margin-top: 0;
}

.consent-question-list[b-5yf8vloij5] {
    display: grid;
    gap: 14px;
    margin-top: 24px;
}

.consent-section.collapsed .consent-question-list[b-5yf8vloij5] {
    margin-top: 18px;
}

.consent-question-row[b-5yf8vloij5] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 18px;
    align-items: center;
    padding: 16px 18px;
    border-radius: 16px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
}

    .consent-question-row label[b-5yf8vloij5] {
        display: grid;
        gap: 5px;
        margin: 0;
        font-weight: 800;
        color: #334155;
    }

        .consent-question-row label small[b-5yf8vloij5] {
            color: #b45309;
            font-size: 10px;
            font-weight: 850;
        }

.consent-question-title[b-5yf8vloij5] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.consent-question-row.mandatory-positive[b-5yf8vloij5] {
    border-color: #facc15;
    background: linear-gradient(135deg, #fffdf5, #fffbeb);
    box-shadow: inset 4px 0 0 #eab308;
}

.mandatory-positive-badge[b-5yf8vloij5] {
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    padding: 3px 7px;
    border: 1px solid #facc15;
    border-radius: 999px;
    background: #fef9c3;
    color: #854d0e;
    font-size: 8px;
    font-weight: 950;
    letter-spacing: .04em;
    line-height: 1.15;
    text-transform: uppercase;
    white-space: nowrap;
}

.yes-no-choice[b-5yf8vloij5] {
    display: inline-flex;
    gap: 8px;
    padding: 4px;
    border-radius: 999px;
    background: #ffffff;
    border: 1px solid #e2e8f0;
}

.yes-no-btn[b-5yf8vloij5] {
    border: 0;
    border-radius: 999px;
    padding: 8px 18px;
    font-family: inherit;
    font-weight: 900;
    background: transparent;
    cursor: pointer;
    transition: .15s ease;
}

    .yes-no-btn.yes[b-5yf8vloij5] {
        color: #15803d;
    }

    .yes-no-btn.no[b-5yf8vloij5] {
        color: #b91c1c;
    }

    .yes-no-btn.yes.selected[b-5yf8vloij5] {
        background: #22c55e;
        color: #ffffff;
        box-shadow: 0 10px 20px rgba(34, 197, 94, .22);
    }

    .yes-no-btn.no.selected[b-5yf8vloij5] {
        background: #ef4444;
        color: #ffffff;
        box-shadow: 0 10px 20px rgba(239, 68, 68, .22);
    }

    .yes-no-btn:disabled[b-5yf8vloij5] {
        cursor: not-allowed;
        opacity: .58;
    }

        .yes-no-btn:disabled:not(.selected)[b-5yf8vloij5] {
            background: #f8fafc;
            color: #94a3b8;
        }

    .yes-no-btn:focus-visible[b-5yf8vloij5] {
        outline: 3px solid rgba(37, 99, 235, .20);
        outline-offset: 2px;
    }

.consent-editor-actions[b-5yf8vloij5] {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    flex-wrap: wrap;
    padding-top: 2px;
}

.consent-editor-state[b-5yf8vloij5] {
    padding: 13px 15px;
    border: 1px solid #dbeafe;
    border-radius: 16px;
    background: #eff6ff;
    color: #1e40af;
    font-size: 13px;
    font-weight: 850;
    line-height: 1.45;
}

    .consent-editor-state.warning[b-5yf8vloij5] {
        border-color: #fed7aa;
        background: #fff7ed;
        color: #9a3412;
    }

    .consent-editor-state.success[b-5yf8vloij5] {
        border-color: #bbf7d0;
        background: #f0fdf4;
        color: #166534;
    }

    .consent-editor-state.error[b-5yf8vloij5] {
        border-color: #fecaca;
        background: #fff1f2;
        color: #991b1b;
    }

.primary-button:disabled[b-5yf8vloij5],
.secondary-button:disabled[b-5yf8vloij5] {
    cursor: not-allowed;
    opacity: .55;
    box-shadow: none;
}

@media (max-width: 760px) {
    .consent-question-row[b-5yf8vloij5] {
        grid-template-columns: 1fr;
        align-items: stretch;
    }

    .yes-no-choice[b-5yf8vloij5] {
        width: fit-content;
    }

    .consent-editor-actions[b-5yf8vloij5] {
        justify-content: stretch;
    }

        .consent-editor-actions .primary-button[b-5yf8vloij5],
        .consent-editor-actions .secondary-button[b-5yf8vloij5] {
            width: 100%;
        }
}


/* ---------------------------------------------------------
   Mobile optimisation
   --------------------------------------------------------- */

@media (max-width: 760px) {
    .signed-documents-page[b-5yf8vloij5] {
        padding: 14px 10px 46px;
    }

    .signed-documents-shell[b-5yf8vloij5] {
        gap: 14px;
    }

    .signed-documents-hero[b-5yf8vloij5] {
        align-items: stretch;
        flex-direction: column;
        gap: 16px;
        padding: 22px 20px;
        border-radius: 24px;
    }

        .signed-documents-hero h1[b-5yf8vloij5] {
            font-size: clamp(32px, 11vw, 44px);
            line-height: .98;
            letter-spacing: -.06em;
        }

        .signed-documents-hero p[b-5yf8vloij5] {
            font-size: 14px;
            line-height: 1.45;
        }

    .document-filters[b-5yf8vloij5] {
        grid-template-columns: 1fr;
        gap: 14px;
        padding: 16px;
        border-radius: 22px;
    }

    .filter-field[b-5yf8vloij5] {
        gap: 6px;
    }

        .filter-field label[b-5yf8vloij5] {
            font-size: 11px;
        }

    [b-5yf8vloij5] .filter-field .dxbs-editor,
    [b-5yf8vloij5] .filter-field .dxbs-combobox,
    [b-5yf8vloij5] .filter-field .dxbs-editor-container {
        max-width: 100%;
    }

    [b-5yf8vloij5] .filter-field .dxbs-editor-input,
    [b-5yf8vloij5] .filter-field input.form-control {
        min-height: 46px !important;
        font-size: 14px !important;
    }

    .document-viewer-card[b-5yf8vloij5] {
        border-radius: 22px;
    }

    .document-toolbar[b-5yf8vloij5] {
        flex-direction: column;
        align-items: stretch;
        gap: 14px;
        padding: 18px;
    }

        .document-toolbar h2[b-5yf8vloij5] {
            font-size: 22px;
            line-height: 1.14;
        }

        .document-toolbar p[b-5yf8vloij5] {
            font-size: 13px;
            overflow-wrap: anywhere;
        }

    .document-actions[b-5yf8vloij5] {
        justify-content: stretch;
    }

        .document-actions .primary-button[b-5yf8vloij5],
        .document-actions .secondary-button[b-5yf8vloij5] {
            width: 100%;
        }

    .consent-editor-panel[b-5yf8vloij5] {
        gap: 16px;
        padding: 16px;
    }

    .consent-guidance[b-5yf8vloij5] {
        padding: 14px;
        border-radius: 16px;
    }

        .consent-guidance strong[b-5yf8vloij5] {
            font-size: 13px;
        }

        .consent-guidance span[b-5yf8vloij5] {
            font-size: 12px;
        }

    .section-box[b-5yf8vloij5] {
        padding: 16px;
        border-radius: 18px;
    }

    .consent-section-head[b-5yf8vloij5] {
        flex-direction: column;
        align-items: stretch;
    }

        .consent-section-head h6[b-5yf8vloij5] {
            font-size: 14px;
            line-height: 1.35;
        }

    .consent-collapse-button[b-5yf8vloij5] {
        width: 100%;
        justify-content: space-between;
        padding: 9px 12px;
    }

    .consent-collapse-region[b-5yf8vloij5] {
        margin-top: 14px;
    }

    .info-text[b-5yf8vloij5] {
        font-size: 14px;
        line-height: 1.6;
    }

    .consent-question-list[b-5yf8vloij5] {
        gap: 12px;
        margin-top: 16px;
    }

    .consent-section.collapsed .consent-question-list[b-5yf8vloij5] {
        margin-top: 16px;
    }

    .consent-question-row[b-5yf8vloij5] {
        grid-template-columns: 1fr;
        gap: 12px;
        padding: 14px;
        border-radius: 16px;
    }

    .consent-question-title[b-5yf8vloij5] {
        display: block;
        line-height: 1.35;
    }

    .mandatory-positive-badge[b-5yf8vloij5],
    .answer-required-badge[b-5yf8vloij5] {
        width: fit-content;
        margin-top: 7px;
    }

    .yes-no-choice[b-5yf8vloij5] {
        display: grid;
        grid-template-columns: 1fr 1fr;
        width: 100%;
        gap: 6px;
        border-radius: 16px;
    }

    .yes-no-btn[b-5yf8vloij5] {
        width: 100%;
        padding: 11px 14px;
    }

    .consent-editor-actions[b-5yf8vloij5] {
        flex-direction: column;
        justify-content: stretch;
    }

        .consent-editor-actions .primary-button[b-5yf8vloij5],
        .consent-editor-actions .secondary-button[b-5yf8vloij5] {
            width: 100%;
            min-height: 44px;
        }

    .iframe-wrap[b-5yf8vloij5] {
        min-height: 420px;
        height: 520px;
        padding: 10px;
    }

    .document-frame[b-5yf8vloij5] {
        border-radius: 14px;
    }
}

@media (max-width: 420px) {
    .signed-documents-page[b-5yf8vloij5] {
        padding: 10px 8px 38px;
    }

    .signed-documents-hero[b-5yf8vloij5],
    .document-filters[b-5yf8vloij5],
    .state-card[b-5yf8vloij5] {
        border-radius: 20px;
    }

        .signed-documents-hero h1[b-5yf8vloij5] {
            font-size: 34px;
        }

    .document-toolbar h2[b-5yf8vloij5] {
        font-size: 20px;
    }

    .primary-button[b-5yf8vloij5],
    .secondary-button[b-5yf8vloij5] {
        min-height: 42px;
        padding: 10px 14px;
        font-size: 12px;
    }
}

/* =========================================================
   MY CONSENTS FINAL RESPONSIVE OPTIMISATION
   1920x1080 + tablet + mobile
   ========================================================= */

/* ---------- Desktop / 1920x1080 tuning ---------- */

.signed-documents-page[b-5yf8vloij5] {
    padding: clamp(24px, 3.2vh, 36px) clamp(18px, 2vw, 32px) clamp(46px, 6vh, 72px);
}

.signed-documents-shell[b-5yf8vloij5] {
    max-width: 1500px;
    gap: clamp(16px, 2vh, 22px);
}

.signed-documents-hero[b-5yf8vloij5] {
    min-height: 150px;
    padding: clamp(24px, 3vh, 30px);
}

    .signed-documents-hero h1[b-5yf8vloij5] {
        font-size: clamp(40px, 3.25vw, 56px);
        line-height: .98;
    }

    .signed-documents-hero p[b-5yf8vloij5] {
        max-width: 920px;
    }

.document-filters[b-5yf8vloij5] {
    grid-template-columns: minmax(220px, 300px) minmax(0, 1fr);
    padding: 20px 22px;
}

[b-5yf8vloij5] .filter-field .dxbs-editor-input,
[b-5yf8vloij5] .filter-field input.form-control {
    min-height: 38px;
}

.document-viewer-card[b-5yf8vloij5] {
    min-height: 148px;
}

.document-toolbar[b-5yf8vloij5] {
    min-height: 142px;
    align-items: center;
    padding: 24px;
}

    .document-toolbar h2[b-5yf8vloij5] {
        font-size: clamp(24px, 1.55vw, 30px);
        line-height: 1.12;
    }

    .document-toolbar p[b-5yf8vloij5] {
        max-width: 980px;
        overflow-wrap: anywhere;
    }

.document-actions[b-5yf8vloij5] {
    flex: 0 0 auto;
}

.primary-button[b-5yf8vloij5],
.secondary-button[b-5yf8vloij5] {
    min-height: 44px;
    padding: 11px 20px;
    transition: transform .16s ease, box-shadow .16s ease, background-color .16s ease, border-color .16s ease;
}

    .primary-button:hover:not(:disabled)[b-5yf8vloij5],
    .secondary-button:hover:not(:disabled)[b-5yf8vloij5] {
        transform: translateY(-1px);
    }

    .primary-button:hover:not(:disabled)[b-5yf8vloij5] {
        background: #1d4ed8;
        border-color: #1d4ed8;
        box-shadow: 0 18px 36px rgba(37, 99, 235, .25);
    }

    .secondary-button:hover:not(:disabled)[b-5yf8vloij5] {
        border-color: #cbd5e1;
        background: #f8fafc;
    }

/* ---------- Dropdown readability / long text ---------- */

.document-option[b-5yf8vloij5] {
    min-width: 0;
}

    .document-option strong[b-5yf8vloij5],
    .document-option span[b-5yf8vloij5] {
        min-width: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .document-option.selected strong[b-5yf8vloij5],
    .document-option.selected span[b-5yf8vloij5],
    [b-5yf8vloij5] .dropdown-item.active .document-option strong,
    [b-5yf8vloij5] .dropdown-item.active .document-option span,
    [b-5yf8vloij5] .dropdown-item:active .document-option strong,
    [b-5yf8vloij5] .dropdown-item:active .document-option span,
    [b-5yf8vloij5] .dxbs-dropdown-item.active .document-option strong,
    [b-5yf8vloij5] .dxbs-dropdown-item.active .document-option span,
    [b-5yf8vloij5] .dxbs-listbox-item-selected .document-option strong,
    [b-5yf8vloij5] .dxbs-listbox-item-selected .document-option span,
    [b-5yf8vloij5] [aria-selected="true"] .document-option strong,
    [b-5yf8vloij5] [aria-selected="true"] .document-option span {
        color: #ffffff !important;
    }

[b-5yf8vloij5] .dropdown-item.active,
[b-5yf8vloij5] .dropdown-item:active,
[b-5yf8vloij5] .dxbs-dropdown-item.active,
[b-5yf8vloij5] .dxbs-listbox-item-selected,
[b-5yf8vloij5] [aria-selected="true"] {
    background-color: #2563eb !important;
}

[b-5yf8vloij5] .dropdown-menu,
[b-5yf8vloij5] .dxbs-dropdown-menu {
    max-width: min(980px, calc(100vw - 32px));
}

/* ---------- Consent editor layout ---------- */

.consent-editor-panel[b-5yf8vloij5] {
    padding: clamp(18px, 2vw, 24px);
}

.section-box[b-5yf8vloij5] {
    padding: clamp(16px, 1.8vw, 22px);
}

.consent-question-row[b-5yf8vloij5] {
    grid-template-columns: minmax(0, 1fr) auto;
}

.consent-question-title[b-5yf8vloij5] {
    line-height: 1.35;
}

.yes-no-choice[b-5yf8vloij5] {
    flex-shrink: 0;
}

/* ---------- Agreement / report launch card ---------- */

.document-viewer-card.agreement-mode[b-5yf8vloij5] {
    overflow: hidden;
}

.agreement-launch-panel[b-5yf8vloij5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    min-height: 150px;
    padding: 24px;
    background: linear-gradient(135deg, #ffffff, #f8fbff);
}

.agreement-launch-copy[b-5yf8vloij5] {
    min-width: 0;
}

    .agreement-launch-copy span[b-5yf8vloij5] {
        display: block;
        color: #2563eb;
        font-size: 11px;
        font-weight: 950;
        letter-spacing: .08em;
        text-transform: uppercase;
    }

    .agreement-launch-copy h2[b-5yf8vloij5] {
        margin: 6px 0 0;
        color: #0f172a;
        font-size: clamp(24px, 1.55vw, 30px);
        font-weight: 950;
        letter-spacing: -.035em;
        line-height: 1.12;
    }

    .agreement-launch-copy p[b-5yf8vloij5] {
        margin: 8px 0 0;
        color: #64748b;
        line-height: 1.5;
        overflow-wrap: anywhere;
    }

.agreement-open-button[b-5yf8vloij5] {
    flex: 0 0 auto;
    min-width: 190px;
    min-height: 48px;
    padding-inline: 24px;
}

/* ---------- JS-based DevExpress Document Viewer popup ---------- */

.agreement-report-popup[b-5yf8vloij5]  .dxbs-modal-dialog {
    width: min(1520px, 96vw) !important;
    max-width: min(1520px, 96vw) !important;
}

.agreement-report-popup[b-5yf8vloij5]  .dxbs-modal-content {
    height: min(920px, 92vh) !important;
    overflow: hidden !important;
    border: 1px solid rgba(226, 232, 240, .95) !important;
    border-radius: 20px !important;
    background: #ffffff !important;
    box-shadow: 0 32px 100px rgba(15, 23, 42, .28) !important;
}

.agreement-report-popup[b-5yf8vloij5]  .dxbs-modal-header {
    min-height: 56px;
    padding: 14px 18px !important;
    border-bottom: 1px solid rgba(226, 232, 240, .95) !important;
    background: #ffffff !important;
}

.agreement-report-popup[b-5yf8vloij5]  .dxbs-modal-title {
    color: #0f172a !important;
    font-size: 16px !important;
    font-weight: 950 !important;
}

.agreement-report-popup-body[b-5yf8vloij5] {
    height: calc(min(920px, 92vh) - 56px) !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #f1f5f9;
}

.agreement-report-viewer-host[b-5yf8vloij5] {
    width: 100%;
    height: 100%;
    min-height: 0;
    overflow: hidden;
    background: #ffffff;
}

[b-5yf8vloij5] #agreement-report-viewer,
[b-5yf8vloij5] #agreement-report-viewer > *,
[b-5yf8vloij5] #agreement-report-viewer .dx-designer,
[b-5yf8vloij5] #agreement-report-viewer .dx-reportviewer,
[b-5yf8vloij5] #agreement-report-viewer .dxrd-preview,
[b-5yf8vloij5] #agreement-report-viewer .dxrd-report-preview,
[b-5yf8vloij5] #agreement-report-viewer .dxrd-designer-wrapper {
    width: 100% !important;
    height: 100% !important;
}

/* Keep popup footer compact if used */
.agreement-report-popup[b-5yf8vloij5]  .dxbs-modal-footer {
    padding: 10px 14px !important;
    border-top: 1px solid rgba(226, 232, 240, .95) !important;
    background: #ffffff !important;
}

/* ---------- 1366/1440 laptop optimisation ---------- */

@media (max-width: 1500px) {
    .signed-documents-shell[b-5yf8vloij5] {
        max-width: 1280px;
    }

    .signed-documents-hero[b-5yf8vloij5] {
        min-height: 138px;
    }

    .document-toolbar[b-5yf8vloij5],
    .agreement-launch-panel[b-5yf8vloij5] {
        min-height: 130px;
    }
}

/* ---------- Tablet ---------- */

@media (max-width: 980px) {
    .signed-documents-page[b-5yf8vloij5] {
        padding: 22px 16px 56px;
    }

    .signed-documents-shell[b-5yf8vloij5] {
        gap: 16px;
    }

    .signed-documents-hero[b-5yf8vloij5],
    .document-toolbar[b-5yf8vloij5],
    .agreement-launch-panel[b-5yf8vloij5] {
        flex-direction: column;
        align-items: stretch;
    }

    .signed-documents-hero[b-5yf8vloij5] {
        min-height: 0;
        border-radius: 26px;
    }

    .document-filters[b-5yf8vloij5] {
        grid-template-columns: 1fr;
        gap: 14px;
        padding: 18px;
        border-radius: 22px;
    }

    .document-actions[b-5yf8vloij5] {
        justify-content: flex-start;
    }

    .agreement-open-button[b-5yf8vloij5] {
        width: fit-content;
        min-width: 210px;
    }

    .document-meta[b-5yf8vloij5] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .agreement-report-popup[b-5yf8vloij5]  .dxbs-modal-dialog {
        width: 96vw !important;
        max-width: 96vw !important;
        margin: 2vh auto !important;
    }

    .agreement-report-popup[b-5yf8vloij5]  .dxbs-modal-content {
        height: 94vh !important;
    }

    .agreement-report-popup-body[b-5yf8vloij5] {
        height: calc(94vh - 56px) !important;
    }
}

/* ---------- Phones ---------- */

@media (max-width: 640px) {
    .signed-documents-page[b-5yf8vloij5] {
        padding: 12px 10px 42px;
    }

    .signed-documents-shell[b-5yf8vloij5] {
        gap: 12px;
    }

    .signed-documents-hero[b-5yf8vloij5],
    .document-filters[b-5yf8vloij5],
    .document-viewer-card[b-5yf8vloij5],
    .state-card[b-5yf8vloij5] {
        border-radius: 20px;
    }

    .signed-documents-hero[b-5yf8vloij5] {
        gap: 14px;
        padding: 20px;
    }

    .eyebrow[b-5yf8vloij5] {
        width: fit-content;
        margin-bottom: 10px;
        font-size: 11px;
    }

    .signed-documents-hero h1[b-5yf8vloij5] {
        font-size: clamp(32px, 11vw, 42px);
        line-height: .98;
        letter-spacing: -.06em;
    }

    .signed-documents-hero p[b-5yf8vloij5] {
        font-size: 14px;
        line-height: 1.45;
    }

    .document-filters[b-5yf8vloij5] {
        padding: 14px;
    }

    .filter-field[b-5yf8vloij5] {
        gap: 6px;
    }

        .filter-field label[b-5yf8vloij5] {
            font-size: 10px;
        }

    [b-5yf8vloij5] .filter-field .dxbs-editor-input,
    [b-5yf8vloij5] .filter-field input.form-control {
        min-height: 46px !important;
        font-size: 14px !important;
    }

    .document-toolbar[b-5yf8vloij5],
    .agreement-launch-panel[b-5yf8vloij5] {
        gap: 14px;
        min-height: 0;
        padding: 18px;
    }

        .document-toolbar span[b-5yf8vloij5],
        .agreement-launch-copy span[b-5yf8vloij5] {
            font-size: 10px;
        }

        .document-toolbar h2[b-5yf8vloij5],
        .agreement-launch-copy h2[b-5yf8vloij5] {
            font-size: 22px;
            line-height: 1.12;
        }

        .document-toolbar p[b-5yf8vloij5],
        .agreement-launch-copy p[b-5yf8vloij5] {
            font-size: 13px;
            line-height: 1.45;
        }

    .document-actions[b-5yf8vloij5],
    .document-actions .primary-button[b-5yf8vloij5],
    .document-actions .secondary-button[b-5yf8vloij5],
    .agreement-open-button[b-5yf8vloij5] {
        width: 100%;
    }

    .primary-button[b-5yf8vloij5],
    .secondary-button[b-5yf8vloij5] {
        min-height: 44px;
        padding: 11px 14px;
        font-size: 12px;
    }

    .consent-editor-panel[b-5yf8vloij5] {
        gap: 14px;
        padding: 14px;
    }

    .consent-guidance[b-5yf8vloij5] {
        padding: 13px 14px;
        border-radius: 16px;
    }

        .consent-guidance strong[b-5yf8vloij5] {
            font-size: 13px;
        }

        .consent-guidance span[b-5yf8vloij5] {
            font-size: 12px;
        }

    .section-box[b-5yf8vloij5] {
        padding: 14px;
        border-radius: 16px;
    }

    .consent-section-head[b-5yf8vloij5] {
        flex-direction: column;
        align-items: stretch;
    }

        .consent-section-head h6[b-5yf8vloij5] {
            font-size: 14px;
            line-height: 1.35;
        }

    .consent-collapse-button[b-5yf8vloij5] {
        width: 100%;
        justify-content: space-between;
        min-height: 38px;
    }

    .info-text[b-5yf8vloij5] {
        font-size: 14px;
        line-height: 1.6;
    }

    .consent-question-list[b-5yf8vloij5] {
        gap: 12px;
        margin-top: 16px;
    }

    .consent-question-row[b-5yf8vloij5] {
        grid-template-columns: 1fr;
        gap: 12px;
        padding: 14px;
        border-radius: 16px;
    }

    .consent-question-title[b-5yf8vloij5] {
        display: block;
    }

    .mandatory-positive-badge[b-5yf8vloij5],
    .answer-required-badge[b-5yf8vloij5] {
        width: fit-content;
        margin-top: 7px;
    }

    .yes-no-choice[b-5yf8vloij5] {
        display: grid;
        grid-template-columns: 1fr 1fr;
        width: 100%;
        gap: 6px;
        border-radius: 16px;
    }

    .yes-no-btn[b-5yf8vloij5] {
        width: 100%;
        min-height: 42px;
        padding: 11px 14px;
    }

    .consent-editor-actions[b-5yf8vloij5] {
        flex-direction: column;
        justify-content: stretch;
    }

        .consent-editor-actions .primary-button[b-5yf8vloij5],
        .consent-editor-actions .secondary-button[b-5yf8vloij5] {
            width: 100%;
        }

    .agreement-report-popup[b-5yf8vloij5]  .dxbs-modal-dialog {
        width: 100vw !important;
        max-width: 100vw !important;
        height: 100dvh !important;
        margin: 0 !important;
    }

    .agreement-report-popup[b-5yf8vloij5]  .dxbs-modal-content {
        height: 100dvh !important;
        border-radius: 0 !important;
    }

    .agreement-report-popup[b-5yf8vloij5]  .dxbs-modal-header {
        min-height: 54px;
        padding: 12px 14px !important;
    }

    .agreement-report-popup-body[b-5yf8vloij5] {
        height: calc(100dvh - 54px) !important;
    }

    .agreement-report-popup[b-5yf8vloij5]  .dxbs-modal-title {
        max-width: calc(100vw - 72px);
        overflow: hidden;
        font-size: 14px !important;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
}

/* ---------- Very small phones ---------- */

@media (max-width: 420px) {
    .signed-documents-page[b-5yf8vloij5] {
        padding: 10px 8px 36px;
    }

    .signed-documents-hero[b-5yf8vloij5] {
        padding: 18px;
    }

        .signed-documents-hero h1[b-5yf8vloij5] {
            font-size: 34px;
        }

    .document-toolbar h2[b-5yf8vloij5],
    .agreement-launch-copy h2[b-5yf8vloij5] {
        font-size: 20px;
    }

    .document-toolbar[b-5yf8vloij5],
    .agreement-launch-panel[b-5yf8vloij5] {
        padding: 16px;
    }
}


/* =========================================================
   DevExpress Report Viewer mobile mode refinement
   ========================================================= */

.agreement-report-popup-body[b-5yf8vloij5] {
    min-height: 0 !important;
}

.agreement-report-viewer-host.mobile[b-5yf8vloij5] {
    touch-action: pan-x pan-y pinch-zoom;
}

/* The JS-based DevExpress viewer uses inner containers with fixed sizes.
   Keep all direct viewer containers bound to the popup height. */
[b-5yf8vloij5] #agreement-report-viewer,
[b-5yf8vloij5] #agreement-report-viewer > *,
[b-5yf8vloij5] #agreement-report-viewer .dx-designer,
[b-5yf8vloij5] #agreement-report-viewer .dx-reportviewer,
[b-5yf8vloij5] #agreement-report-viewer .dxrd-preview,
[b-5yf8vloij5] #agreement-report-viewer .dxrd-preview-wrapper,
[b-5yf8vloij5] #agreement-report-viewer .dxrd-report-preview,
[b-5yf8vloij5] #agreement-report-viewer .dxrd-designer-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
}

/* Tablets and phones: let DevExpress MobileMode own the navigation/zoom,
   and make the modal truly full-screen so the toolbar and pages are usable. */
@media (max-width: 760px), (pointer: coarse) {
    .agreement-report-popup[b-5yf8vloij5]  .dxbs-modal-dialog {
        width: 100dvw !important;
        max-width: 100dvw !important;
        height: 100dvh !important;
        max-height: 100dvh !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .agreement-report-popup[b-5yf8vloij5]  .dxbs-modal-content {
        width: 100dvw !important;
        max-width: 100dvw !important;
        height: 100dvh !important;
        max-height: 100dvh !important;
        border: 0 !important;
        border-radius: 0 !important;
        overflow: hidden !important;
    }

    .agreement-report-popup[b-5yf8vloij5]  .dxbs-modal-header {
        min-height: 54px !important;
        height: 54px !important;
        padding: 10px 12px !important;
        flex: 0 0 auto !important;
    }

    .agreement-report-popup[b-5yf8vloij5]  .dxbs-modal-title {
        max-width: calc(100dvw - 74px) !important;
        overflow: hidden !important;
        font-size: 14px !important;
        line-height: 1.2 !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    .agreement-report-popup-body[b-5yf8vloij5] {
        width: 100dvw !important;
        max-width: 100dvw !important;
        height: calc(100dvh - 54px) !important;
        max-height: calc(100dvh - 54px) !important;
        padding: 0 !important;
        overflow: hidden !important;
        background: #ffffff !important;
    }

    .agreement-report-viewer-host[b-5yf8vloij5] {
        width: 100% !important;
        height: calc(100dvh - 54px) !important;
        max-height: calc(100dvh - 54px) !important;
        overflow: hidden !important;
        border-radius: 0 !important;
    }
}

@supports not (height: 100dvh) {
    @media (max-width: 760px), (pointer: coarse) {
        .agreement-report-popup[b-5yf8vloij5]  .dxbs-modal-dialog,
        .agreement-report-popup[b-5yf8vloij5]  .dxbs-modal-content {
            height: 100vh !important;
            max-height: 100vh !important;
        }

        .agreement-report-popup-body[b-5yf8vloij5],
        .agreement-report-viewer-host[b-5yf8vloij5] {
            height: calc(100vh - 54px) !important;
            max-height: calc(100vh - 54px) !important;
        }
    }
}
/* _content/Arsakeio_Portal/Components/Pages/SchoolArea.razor.rz.scp.css */

/* Right-click context bar */
.sc-context-bar[b-1kv8agvbnn] {
    position: fixed;
    right: 20px;
    bottom: 20px;
    display: flex;
    gap: .5rem;
    align-items: center;
    background: #1f2937;
    color: #fff;
    padding: .5rem .75rem;
    border-radius: .5rem;
    box-shadow: 0 6px 16px rgba(0,0,0,.22);
    z-index: 1000;
}

    .sc-context-bar button[b-1kv8agvbnn] {
        background: #60a5fa;
        color: #fff;
        border: 0;
        border-radius: .4rem;
        padding: .35rem .7rem;
        font-weight: 600;
        cursor: pointer;
    }

    .sc-context-bar .dismiss[b-1kv8agvbnn] {
        background: transparent;
        color: #cbd5e1;
        font-weight: 700;
    }
/* _content/Arsakeio_Portal/Components/Pages/SchoolClass.razor.rz.scp.css */

/* Right-click context bar */
.sc-context-bar[b-b98xuf80sf] {
    position: fixed;
    right: 20px;
    bottom: 20px;
    display: flex;
    gap: .5rem;
    align-items: center;
    background: #1f2937;
    color: #fff;
    padding: .5rem .75rem;
    border-radius: .5rem;
    box-shadow: 0 6px 16px rgba(0,0,0,.22);
    z-index: 1000;
}

    .sc-context-bar button[b-b98xuf80sf] {
        background: #60a5fa;
        color: #fff;
        border: 0;
        border-radius: .4rem;
        padding: .35rem .7rem;
        font-weight: 600;
        cursor: pointer;
    }

    .sc-context-bar .dismiss[b-b98xuf80sf] {
        background: transparent;
        color: #cbd5e1;
        font-weight: 700;
    }



/* _content/Arsakeio_Portal/Components/Pages/SchoolDept.razor.rz.scp.css */

/* Right-click context bar */
.sc-context-bar[b-ym23tw5ks5] {
    position: fixed;
    right: 20px;
    bottom: 20px;
    display: flex;
    gap: .5rem;
    align-items: center;
    background: #1f2937;
    color: #fff;
    padding: .5rem .75rem;
    border-radius: .5rem;
    box-shadow: 0 6px 16px rgba(0,0,0,.22);
    z-index: 1000;
}

    .sc-context-bar button[b-ym23tw5ks5] {
        background: #60a5fa;
        color: #fff;
        border: 0;
        border-radius: .4rem;
        padding: .35rem .7rem;
        font-weight: 600;
        cursor: pointer;
    }

    .sc-context-bar .dismiss[b-ym23tw5ks5] {
        background: transparent;
        color: #cbd5e1;
        font-weight: 700;
    }
/* _content/Arsakeio_Portal/Components/Pages/SchoolLevel.razor.rz.scp.css */

/* Right-click context bar */
.sc-context-bar[b-blindehrlk] {
    position: fixed;
    right: 20px;
    bottom: 20px;
    display: flex;
    gap: .5rem;
    align-items: center;
    background: #1f2937;
    color: #fff;
    padding: .5rem .75rem;
    border-radius: .5rem;
    box-shadow: 0 6px 16px rgba(0,0,0,.22);
    z-index: 1000;
}

    .sc-context-bar button[b-blindehrlk] {
        background: #60a5fa;
        color: #fff;
        border: 0;
        border-radius: .4rem;
        padding: .35rem .7rem;
        font-weight: 600;
        cursor: pointer;
    }

    .sc-context-bar .dismiss[b-blindehrlk] {
        background: transparent;
        color: #cbd5e1;
        font-weight: 700;
    }
/* _content/Arsakeio_Portal/Components/Pages/SchoolSite.razor.rz.scp.css */

/* Right-click context bar */
.sc-context-bar[b-xjpfcsjimu] {
    position: fixed;
    right: 20px;
    bottom: 20px;
    display: flex;
    gap: .5rem;
    align-items: center;
    background: #1f2937;
    color: #fff;
    padding: .5rem .75rem;
    border-radius: .5rem;
    box-shadow: 0 6px 16px rgba(0,0,0,.22);
    z-index: 1000;
}

    .sc-context-bar button[b-xjpfcsjimu] {
        background: #60a5fa;
        color: #fff;
        border: 0;
        border-radius: .4rem;
        padding: .35rem .7rem;
        font-weight: 600;
        cursor: pointer;
    }

    .sc-context-bar .dismiss[b-xjpfcsjimu] {
        background: transparent;
        color: #cbd5e1;
        font-weight: 700;
    }
/* _content/Arsakeio_Portal/Components/Shared/BackgroundPage.razor.rz.scp.css */
.page-bg[b-517b5mfr9a] {
    position: fixed;
    inset: 0;
    z-index: -1; /* was -1 */
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    pointer-events: none;
}
/* _content/Arsakeio_Portal/Components/Shared/ImpersonationPopUp.razor.rz.scp.css */
.imp-card[b-8axq80q404] {
    height: 100%;
    display: flex;
    flex-direction: column;
    background: #ffffff;
    border-radius: 18px;
    overflow: hidden;
}

.imp-header[b-8axq80q404] {
    padding: 24px 28px 18px;
    border-bottom: 1px solid #eef2f7;
    background: linear-gradient(135deg, #f8fafc, #ffffff);
}

.imp-title[b-8axq80q404] {
    font-size: 22px;
    font-weight: 800;
    color: #111827;
}

.imp-subtitle[b-8axq80q404] {
    margin-top: 6px;
    font-size: 14px;
    color: #64748b;
}

.imp-count[b-8axq80q404] {
    margin-top: 8px;
    font-size: 12px;
    color: #94a3b8;
}

.imp-body[b-8axq80q404] {
    padding: 22px 28px 24px;
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.imp-label[b-8axq80q404] {
    font-weight: 800;
    color: #111827;
    margin-bottom: 8px;
}

.imp-search[b-8axq80q404] {
    margin-bottom: 14px;
}

.imp-list[b-8axq80q404] {
    height: 245px;
    overflow: auto;
    border: 1px solid #e5e7eb;
    border-radius: 16px;
    background: #ffffff;
}

.imp-teacher[b-8axq80q404] {
    width: 100%;
    border: 0;
    border-bottom: 1px solid #f1f5f9;
    background: #ffffff;
    padding: 14px 18px;
    text-align: left;
    cursor: pointer;
    transition: background-color .15s ease, transform .15s ease;
}

    .imp-teacher:hover[b-8axq80q404] {
        background: #f8fafc;
    }

    .imp-teacher.selected[b-8axq80q404] {
        background: #eef2ff;
    }

.imp-teacher-name[b-8axq80q404] {
    font-weight: 800;
    color: #111827;
}

.imp-teacher-email[b-8axq80q404] {
    margin-top: 4px;
    font-size: 13px;
    color: #64748b;
}

.imp-selected[b-8axq80q404] {
    margin-top: 16px;
    padding: 16px 18px;
    border: 1px solid #dbeafe;
    border-radius: 16px;
    background: #eff6ff;
}

.imp-selected-title[b-8axq80q404] {
    font-size: 13px;
    font-weight: 800;
    color: #1e3a8a;
    margin-bottom: 8px;
}

.imp-selected-name[b-8axq80q404] {
    font-weight: 800;
    color: #111827;
}

.imp-selected-email[b-8axq80q404] {
    margin-top: 4px;
    color: #64748b;
    font-size: 13px;
}

.imp-empty[b-8axq80q404] {
    padding: 32px;
    color: #64748b;
    text-align: center;
}

.imp-error[b-8axq80q404] {
    padding: 14px 16px;
    border-radius: 12px;
    background: #fef2f2;
    color: #991b1b;
    border: 1px solid #fecaca;
}

.imp-actions[b-8axq80q404] {
    margin-top: auto;
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding-top: 20px;
}

.imp-btn[b-8axq80q404] {
    border: 0;
    border-radius: 999px;
    padding: 10px 22px;
    font-weight: 700;
    cursor: pointer;
    box-shadow: 0 10px 22px rgba(15, 23, 42, .08);
}

    .imp-btn.secondary[b-8axq80q404] {
        background: #ffffff;
        color: #111827;
        border: 1px solid #e5e7eb;
    }

    .imp-btn.primary[b-8axq80q404] {
        background: #4f7df3;
        color: #ffffff;
    }

    .imp-btn:disabled[b-8axq80q404] {
        opacity: .45;
        cursor: not-allowed;
        box-shadow: none;
    }


/* =========================================================
   Mobile optimization
   ========================================================= */

[b-8axq80q404] .impersonation-popup .dxbl-popup-content,
[b-8axq80q404] .impersonation-popup .dxbs-popup-body,
[b-8axq80q404] .impersonation-popup .dxbs-modal-body {
    padding: 0 !important;
    overflow: hidden !important;
}

.imp-search[b-8axq80q404] {
    min-width: 0;
}

[b-8axq80q404] .imp-search,
[b-8axq80q404] .imp-search .dxbs-editor,
[b-8axq80q404] .imp-search .dxbs-editor-container,
[b-8axq80q404] .imp-search .dxbl-text-edit,
[b-8axq80q404] .imp-search .dxbl-edit,
[b-8axq80q404] .imp-search .dxbl-combobox {
    width: 100% !important;
}

@media (max-width: 760px) {
    [b-8axq80q404] .impersonation-popup .dxbs-modal-dialog {
        width: 100dvw !important;
        max-width: 100dvw !important;
        height: 100dvh !important;
        max-height: 100dvh !important;
        margin: 0 !important;
    }

    [b-8axq80q404] .impersonation-popup .dxbs-modal-content {
        width: 100dvw !important;
        max-width: 100dvw !important;
        height: 100dvh !important;
        max-height: 100dvh !important;
        border: 0 !important;
        border-radius: 0 !important;
        overflow: hidden !important;
    }

    [b-8axq80q404] .impersonation-popup .dxbs-modal-header {
        min-height: 48px !important;
        padding: 8px 12px !important;
    }

    .imp-card[b-8axq80q404] {
        height: 100%;
        min-height: 0;
        border-radius: 0;
    }

    .imp-header[b-8axq80q404] {
        flex: 0 0 auto;
        padding: 18px 16px 14px;
    }

    .imp-title[b-8axq80q404] {
        font-size: 20px;
        line-height: 1.1;
    }

    .imp-subtitle[b-8axq80q404] {
        font-size: 13px;
        line-height: 1.35;
    }

    .imp-body[b-8axq80q404] {
        min-height: 0;
        padding: 16px;
        overflow: hidden;
    }

    .imp-list[b-8axq80q404] {
        flex: 1 1 auto;
        height: auto;
        min-height: 160px;
        max-height: none;
        overflow: auto;
        -webkit-overflow-scrolling: touch;
        border-radius: 14px;
    }

    .imp-teacher[b-8axq80q404] {
        padding: 13px 14px;
    }

    .imp-teacher-name[b-8axq80q404] {
        font-size: 14px;
        line-height: 1.25;
        overflow-wrap: anywhere;
    }

    .imp-teacher-email[b-8axq80q404] {
        font-size: 12px;
        overflow-wrap: anywhere;
    }

    .imp-selected[b-8axq80q404] {
        flex: 0 0 auto;
        margin-top: 12px;
        padding: 13px 14px;
        border-radius: 14px;
    }

    .imp-actions[b-8axq80q404] {
        flex: 0 0 auto;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 10px;
        padding-top: 14px;
        margin-top: 0;
    }

    .imp-btn[b-8axq80q404] {
        width: 100%;
        min-height: 44px;
        padding: 10px 12px;
    }
}

@media (max-width: 420px) {
    .imp-header[b-8axq80q404] {
        padding: 16px 14px 12px;
    }

    .imp-body[b-8axq80q404] {
        padding: 14px;
    }

    .imp-actions[b-8axq80q404] {
        grid-template-columns: 1fr;
    }
}

@supports not (height: 100dvh) {
    @media (max-width: 760px) {
        [b-8axq80q404] .impersonation-popup .dxbs-modal-dialog,
        [b-8axq80q404] .impersonation-popup .dxbs-modal-content {
            height: 100vh !important;
            max-height: 100vh !important;
        }
    }
}
/* _content/Arsakeio_Portal/Components/Shared/ITForceBadge.razor.rz.scp.css */
.itf-rb[b-4wqqucr9yr] {
    position: fixed;
    left: 10px;
    bottom: 14px;
    display: inline-flex;
    align-items: center;
    padding: 8px 10px;
    height: 40px;
    border-radius: 4px;
    text-decoration: none;
    font: 500 12px/1.1 system-ui, sans-serif;
    box-shadow: 0 2px 6px rgba(0,0,0,.2);
    z-index: 2147482000;
    transform: translateX(-72%);
    transition: transform .22s ease, opacity .22s ease;
    opacity: .98;
    --icon-size: 36px;
}

/* Dark badge background */
.itf-rb--dark[b-4wqqucr9yr] {
    background: #2b2f36;
    color: #e5e7eb; /* text on the left stays light gray */
}

.itf-rb__text[b-4wqqucr9yr] {
    white-space: nowrap;
    margin-right: 10px;
    text-align: right;
}

/* Icon: no tile, just white letters */
.itf-rb__icon[b-4wqqucr9yr] {
    width: var(--icon-size);
    height: var(--icon-size);
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 0;
    /* removed the white box */
    background: transparent; /* was #fff */
    border-radius: 0; /* was 8px */
    padding: 0; /* was 2px */
    box-shadow: none; /* removed outline */

    color: #fff; /* makes SVG text white via currentColor */
}

.itf-logo[b-4wqqucr9yr] {
    width: 100%;
    height: 100%;
    display: block;
}

/* Hover behavior unchanged */
.itf-rb:hover[b-4wqqucr9yr],
.itf-rb:focus[b-4wqqucr9yr],
.itf-rb:focus-visible[b-4wqqucr9yr] {
    transform: translateX(0);
    outline: none;
    opacity: 1;
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
    .itf-rb[b-4wqqucr9yr] {
        transition: none;
    }
}
/* _content/Arsakeio_Portal/Components/Shared/NotificationsPopUp.razor.rz.scp.css */
:deep(.dxbl-popup-content)[b-t2ngj95b46] {
    padding: 0 !important;
}

.notif-card[b-t2ngj95b46] {
    background: #fff;
    border-radius: 14px;
    overflow: hidden;
    height: 100%;
    display: flex;
    flex-direction: column;
}

/* Header */
.notif-header[b-t2ngj95b46] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 18px 18px 10px 18px;
}

.notif-title[b-t2ngj95b46] {
    font-size: 20px;
    font-weight: 700;
}

.notif-link[b-t2ngj95b46] {
    border: 0;
    background: transparent;
    color: #2b66ff;
    font-weight: 700;
    font-size: 12px;
    letter-spacing: .4px;
    cursor: pointer;
}

/* Tabs */
.notif-tabs[b-t2ngj95b46] {
    display: flex;
    gap: 8px;
    padding: 0 18px 12px 18px;
    border-bottom: 1px solid rgba(0,0,0,.06);
}

.notif-tab[b-t2ngj95b46] {
    border: 0;
    background: transparent;
    padding: 8px 10px;
    border-radius: 10px;
    cursor: pointer;
    font-weight: 600;
    color: rgba(0,0,0,.65);
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

    .notif-tab.active[b-t2ngj95b46] {
        color: #000;
        box-shadow: inset 0 -2px 0 #2b66ff;
        border-radius: 0;
    }

.notif-badge[b-t2ngj95b46] {
    font-size: 12px;
    font-weight: 700;
    padding: 2px 7px;
    border-radius: 999px;
    background: rgba(0,0,0,.08);
}

/* List */
.notif-list[b-t2ngj95b46] {
    flex: 1;
    overflow: auto;
}

.notif-empty[b-t2ngj95b46] {
    padding: 30px 18px;
    color: rgba(0,0,0,.55);
}

.notif-item[b-t2ngj95b46] {
    width: 100%;
    border: 0;
    background: transparent;
    display: grid;
    grid-template-columns: 4px 1fr;
    gap: 14px;
    padding: 14px 18px;
    text-align: left;
    cursor: pointer;
    border-bottom: 1px solid rgba(0,0,0,.06);
}

    .notif-item:hover[b-t2ngj95b46] {
        background: rgba(0,0,0,.03);
    }

/* Left unread bar */
.notif-leftbar[b-t2ngj95b46] {
    border-radius: 4px;
    background: #2b66ff;
}

    .notif-leftbar.read[b-t2ngj95b46] {
        background: rgba(0,0,0,.12);
    }

/* Content */
.notif-item-title[b-t2ngj95b46] {
    font-weight: 700;
}

.notif-item-time[b-t2ngj95b46] {
    margin-top: 2px;
    color: rgba(0,0,0,.55);
    font-size: 12px;
}

/* Footer */
.notif-footer[b-t2ngj95b46] {
    padding: 12px 18px;
    display: flex;
    justify-content: flex-end;
    border-top: 1px solid rgba(0,0,0,.06);
}

.notif-footer-btn[b-t2ngj95b46] {
    border: 0;
    background: transparent;
    color: rgba(0,0,0,.7);
    font-weight: 700;
    cursor: pointer;
}

/*-----------------------------------------------------*/
/* Split layout */

/* IMPORTANT: no fixed height calc — let flex do it */
.notif-split[b-t2ngj95b46] {
    flex: 1; /* take remaining space under header+tabs */
    min-height: 0; /* allow children to scroll */
    display: flex;
}

/* Default: only left list visible => full width */
.notif-left[b-t2ngj95b46] {
    width: 100%;
    min-width: 0;
    display: flex;
    flex-direction: column;
    min-height: 0;
    border-right: 0;
}

/* Only when selectedNotification exists */
.notif-split.has-details .notif-left[b-t2ngj95b46] {
    width: 52%;
    min-width: 360px;
    border-right: 1px solid rgba(0,0,0,.06);
}

.notif-right[b-t2ngj95b46] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    min-height: 0;
    background: #fff;
}

/* Ensure list scroll works inside left column */
.notif-left .notif-list[b-t2ngj95b46] {
    flex: 1;
    min-height: 0;
    overflow: auto;
}

.notif-left .notif-footer[b-t2ngj95b46] {
    border-top: 1px solid rgba(0,0,0,.06);
}

/* Selected item */
.notif-item.selected[b-t2ngj95b46] {
    background: rgba(43,102,255,.06);
}

/* Details panel */
.notif-details[b-t2ngj95b46] {
    padding: 16px 18px;
    overflow: auto;
    min-height: 0;
}

.notif-details-title[b-t2ngj95b46] {
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 4px;
}

.notif-details-time[b-t2ngj95b46] {
    font-size: 12px;
    color: rgba(0,0,0,.55);
    margin-bottom: 12px;
}

.notif-details-message[b-t2ngj95b46] {
    white-space: pre-wrap;
    line-height: 1.45;
    font-size: 14px;
}

.notif-details-actions[b-t2ngj95b46] {
    margin-top: 16px;
    display: flex;
    justify-content: flex-end;
}

/* Optional: stack on small screens */
@media (max-width: 920px) {
    .notif-split[b-t2ngj95b46] {
        flex-direction: column;
    }

        .notif-split.has-details .notif-left[b-t2ngj95b46] {
            width: 100%;
            min-width: 0;
            border-right: 0;
            border-bottom: 1px solid rgba(0,0,0,.06);
        }
}

/* Slide-in animation for details panel */
@keyframes notifSlideInRight-b-t2ngj95b46 {
    from {
        opacity: 0;
        transform: translateX(18px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* Animate only when the details area is present */
.notif-split.has-details .notif-right[b-t2ngj95b46] {
    animation: notifSlideInRight-b-t2ngj95b46 180ms ease-out;
}

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce) {
    .notif-split.has-details .notif-right[b-t2ngj95b46] {
        animation: none !important;
    }
}


/* =========================================================
   Mobile optimization
   ========================================================= */

[b-t2ngj95b46] .notifications-popup .dxbl-popup-content,
[b-t2ngj95b46] .notifications-popup .dxbs-popup-body,
[b-t2ngj95b46] .notifications-popup .dxbs-modal-body {
    padding: 0 !important;
    overflow: hidden !important;
}

@media (max-width: 760px) {
    [b-t2ngj95b46] .notifications-popup .dxbs-modal-dialog {
        width: 100dvw !important;
        max-width: 100dvw !important;
        height: 100dvh !important;
        max-height: 100dvh !important;
        margin: 0 !important;
    }

    [b-t2ngj95b46] .notifications-popup .dxbs-modal-content {
        width: 100dvw !important;
        max-width: 100dvw !important;
        height: 100dvh !important;
        max-height: 100dvh !important;
        border: 0 !important;
        border-radius: 0 !important;
        overflow: hidden !important;
    }

    [b-t2ngj95b46] .notifications-popup .dxbs-modal-header {
        min-height: 48px !important;
        padding: 8px 12px !important;
    }

    .notif-card[b-t2ngj95b46] {
        height: 100%;
        min-height: 0;
        border-radius: 0;
    }

    .notif-header[b-t2ngj95b46] {
        flex: 0 0 auto;
        padding: 16px 14px 9px;
    }

    .notif-title[b-t2ngj95b46] {
        font-size: 19px;
    }

    .notif-link[b-t2ngj95b46] {
        font-size: 11px;
    }

    .notif-tabs[b-t2ngj95b46] {
        flex: 0 0 auto;
        gap: 6px;
        padding: 0 12px 10px;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

        .notif-tabs[b-t2ngj95b46]::-webkit-scrollbar {
            display: none;
        }

    .notif-tab[b-t2ngj95b46] {
        flex: 0 0 auto;
        min-height: 36px;
        padding: 8px 10px;
        font-size: 13px;
        white-space: nowrap;
    }

    .notif-split[b-t2ngj95b46] {
        min-height: 0;
        flex: 1 1 auto;
    }

    .notif-list[b-t2ngj95b46],
    .notif-details[b-t2ngj95b46] {
        -webkit-overflow-scrolling: touch;
    }

    .notif-item[b-t2ngj95b46] {
        gap: 10px;
        padding: 13px 14px;
    }

    .notif-item-title[b-t2ngj95b46] {
        font-size: 14px;
        line-height: 1.25;
        overflow-wrap: anywhere;
    }

    .notif-footer[b-t2ngj95b46] {
        flex: 0 0 auto;
        padding: 11px 14px;
    }

    /* On phones, opening a notification becomes a details view.
       The list is hidden until the user closes the selected item. */
    .notif-split.has-details .notif-left[b-t2ngj95b46] {
        display: none;
    }

    .notif-split.has-details .notif-right[b-t2ngj95b46] {
        display: flex;
        width: 100%;
        min-width: 0;
        flex: 1 1 auto;
        animation: notifSlideInRight-b-t2ngj95b46 180ms ease-out;
    }

    .notif-details[b-t2ngj95b46] {
        padding: 16px 14px;
    }

    .notif-details-title[b-t2ngj95b46] {
        font-size: 18px;
        line-height: 1.25;
    }

    .notif-details-message[b-t2ngj95b46] {
        font-size: 14px;
        line-height: 1.5;
        overflow-wrap: anywhere;
    }

    .notif-details-actions[b-t2ngj95b46] {
        justify-content: stretch;
    }

        .notif-details-actions[b-t2ngj95b46]  .dxbs-button,
        .notif-details-actions[b-t2ngj95b46]  .btn,
        [b-t2ngj95b46] .notif-details-actions .dxbs-button,
        [b-t2ngj95b46] .notif-details-actions .btn {
            width: 100%;
        }
}

@media (max-width: 420px) {
    .notif-header[b-t2ngj95b46] {
        padding: 14px 12px 8px;
    }

    .notif-title[b-t2ngj95b46] {
        font-size: 18px;
    }

    .notif-item[b-t2ngj95b46] {
        padding: 12px;
    }
}

@supports not (height: 100dvh) {
    @media (max-width: 760px) {
        [b-t2ngj95b46] .notifications-popup .dxbs-modal-dialog,
        [b-t2ngj95b46] .notifications-popup .dxbs-modal-content {
            height: 100vh !important;
            max-height: 100vh !important;
        }
    }
}
/* _content/Arsakeio_Portal/Components/Shared/PopUpMenu.razor.rz.scp.css */
.drawer-footer[b-egqskb0ks7] {
    padding: 12px;
    overflow: visible;
}

.account-wrap[b-egqskb0ks7] {
    width: 100%;
}

.account-trigger[b-egqskb0ks7] {
    width: 100%;
    display: grid;
    grid-template-columns: 38px 1fr 18px;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 14px;
    border: 1px solid rgba(255,255,255,.18);
    background: rgba(255,255,255,.08);
    color: #fff;
}

.account-avatar[b-egqskb0ks7] {
    width: 38px;
    height: 38px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    background: rgba(255,255,255,.14);
    border: 1px solid rgba(255,255,255,.20);
}

.account-text[b-egqskb0ks7] {
    min-width: 0;
}

.account-name[b-egqskb0ks7] {
    font-weight: 700;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.account-role[b-egqskb0ks7] {
    font-weight: 600;
    font-size: .82rem;
    opacity: .85;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.account-caret[b-egqskb0ks7] {
    justify-self: end;
    opacity: .9;
}

/* Popup layout */
.settings-shell[b-egqskb0ks7] {
    display: grid;
    grid-template-columns: 260px 1fr;
    gap: 0;
    height: 100%;
}

.settings-nav[b-egqskb0ks7] {
    border-right: 1px solid rgba(17,24,39,.08);
    padding: 10px;
    background: #fafafa;
}

.settings-content[b-egqskb0ks7] {
    padding: 18px 18px;
    overflow: auto;
}

.settings-title[b-egqskb0ks7] {
    font-size: 1.15rem;
    font-weight: 700;
    margin-bottom: 12px;
}

.settings-section[b-egqskb0ks7] {
    display: grid;
    gap: 12px;
}

.settings-card[b-egqskb0ks7] {
    border: 1px solid rgba(17,24,39,.10);
    border-radius: 12px;
    padding: 12px;
    background: #fff;
}

.settings-card-title[b-egqskb0ks7] {
    font-weight: 700;
    margin-bottom: 10px;
}

.settings-row[b-egqskb0ks7] {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 12px;
    align-items: center;
    padding: 10px 0;
    border-top: 1px solid rgba(17,24,39,.06);
}

    .settings-row:first-of-type[b-egqskb0ks7] {
        border-top: 0;
        padding-top: 0;
    }

.settings-row-label[b-egqskb0ks7] {
    font-weight: 600;
    color: rgba(17,24,39,.85);
}

.settings-row-control[b-egqskb0ks7] {
    display: flex;
    justify-content: flex-end;
}

.settings-toggle-row[b-egqskb0ks7] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 0;
    border-top: 1px solid rgba(17,24,39,.06);
}

    .settings-toggle-row:first-of-type[b-egqskb0ks7] {
        border-top: 0;
        padding-top: 0;
    }

.account-menu-header-btn[b-egqskb0ks7] {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 10px;
    border: 0;
    background: transparent;
    text-align: left;
    padding: 6px 6px 10px;
    border-radius: 12px;
    cursor: pointer;
}

    .account-menu-header-btn:hover[b-egqskb0ks7] {
        background: rgba(17,24,39,.06);
    }


/* =========================================================
   Mobile optimization
   ========================================================= */

[b-egqskb0ks7] .settings-popup .dxbl-popup-content,
[b-egqskb0ks7] .settings-popup .dxbs-popup-body,
[b-egqskb0ks7] .settings-popup .dxbs-modal-body {
    padding: 0 !important;
    overflow: hidden !important;
}

.settings-content[b-egqskb0ks7] {
    min-height: 0;
}

.settings-row-control[b-egqskb0ks7] {
    min-width: 0;
}

[b-egqskb0ks7] .settings-row-control .dxbs-editor,
[b-egqskb0ks7] .settings-row-control .dxbs-editor-container,
[b-egqskb0ks7] .settings-row-control .dxbl-text-edit,
[b-egqskb0ks7] .settings-row-control .dxbl-edit,
[b-egqskb0ks7] .settings-row-control .dxbl-combobox {
    width: 100% !important;
}

@media (max-width: 760px) {
    [b-egqskb0ks7] .settings-popup .dxbs-modal-dialog {
        width: 100dvw !important;
        max-width: 100dvw !important;
        height: 100dvh !important;
        max-height: 100dvh !important;
        margin: 0 !important;
    }

    [b-egqskb0ks7] .settings-popup .dxbs-modal-content {
        width: 100dvw !important;
        max-width: 100dvw !important;
        height: 100dvh !important;
        max-height: 100dvh !important;
        border: 0 !important;
        border-radius: 0 !important;
        overflow: hidden !important;
    }

    [b-egqskb0ks7] .settings-popup .dxbs-modal-header {
        min-height: 52px !important;
        padding: 10px 14px !important;
    }

    .settings-shell[b-egqskb0ks7] {
        grid-template-columns: 1fr;
        grid-template-rows: auto minmax(0, 1fr);
        height: 100%;
        min-height: 0;
    }

    .settings-nav[b-egqskb0ks7] {
        border-right: 0;
        border-bottom: 1px solid rgba(17,24,39,.08);
        padding: 8px;
        overflow-x: auto;
        overflow-y: hidden;
        background: #ffffff;
    }

    .settings-content[b-egqskb0ks7] {
        min-height: 0;
        padding: 14px;
        overflow: auto;
        -webkit-overflow-scrolling: touch;
    }

    .settings-title[b-egqskb0ks7] {
        margin-bottom: 10px;
        font-size: 1.05rem;
    }

    .settings-card[b-egqskb0ks7] {
        padding: 12px;
        border-radius: 14px;
    }

    .settings-row[b-egqskb0ks7] {
        grid-template-columns: 1fr;
        gap: 8px;
        align-items: stretch;
        padding: 12px 0;
    }

    .settings-row-control[b-egqskb0ks7] {
        justify-content: stretch;
        width: 100%;
    }

    .settings-toggle-row[b-egqskb0ks7] {
        align-items: flex-start;
        gap: 12px;
        line-height: 1.35;
    }

    .account-trigger[b-egqskb0ks7] {
        grid-template-columns: 34px minmax(0, 1fr) 16px;
        gap: 8px;
        padding: 9px 10px;
    }

    .account-avatar[b-egqskb0ks7] {
        width: 34px;
        height: 34px;
        font-size: 13px;
    }
}

@media (max-width: 420px) {
    .settings-content[b-egqskb0ks7] {
        padding: 12px 10px;
    }

    .settings-card[b-egqskb0ks7] {
        padding: 11px;
    }
}

@supports not (height: 100dvh) {
    @media (max-width: 760px) {
        [b-egqskb0ks7] .settings-popup .dxbs-modal-dialog,
        [b-egqskb0ks7] .settings-popup .dxbs-modal-content {
            height: 100vh !important;
            max-height: 100vh !important;
        }
    }
}
