/* /Components/ActionDialog.razor.rz.scp.css */
.exam-action-dialog-mask[b-fo0gi924mb] {
    position: fixed;
    inset: 0;
    background: rgba(49, 48, 74, .3);
    backdrop-filter: blur(2px);
    display: grid;
    place-items: center;
    z-index: 999;
    padding: 1rem;
    animation: dialog-mask-fade-in-b-fo0gi924mb .24s ease-out;
}

.exam-action-dialog[b-fo0gi924mb] {
    width: min(440px, 100%);
    border-radius: 16px;
    border: 1px solid #ece6f9;
    background: #fff;
    box-shadow: 0 16px 35px rgba(156, 137, 191, .16);
    overflow: hidden;
    transform-origin: 50% 40%;
    animation: dialog-panel-pop-in-b-fo0gi924mb .34s cubic-bezier(.22, 1, .36, 1);
}

.exam-action-dialog-header[b-fo0gi924mb] {
    padding: 1rem 1.2rem .6rem;
    border-bottom: 1px solid #ebe4f8;
}

.exam-action-dialog-header h2[b-fo0gi924mb] {
    margin: 0;
    color: #31304a;
    font-size: 1.1rem;
    font-weight: 700;
}

.exam-action-dialog-body[b-fo0gi924mb] {
    margin: 0;
    padding: 1rem 1.2rem;
    color: #7d7897;
    line-height: 1.6;
    font-size: .98rem;
}


.exam-action-dialog-footer[b-fo0gi924mb] {
    display: flex;
    justify-content: flex-end;
    gap: .5rem;
    padding: .2rem 1.2rem 1.1rem;
}

.exam-action-dialog-button[b-fo0gi924mb] {
    border-radius: var(--button-radius);
    border: 1px solid transparent;
    padding: .6rem .95rem;
    font-weight: 700;
    cursor: pointer;
    transition: transform .14s ease, box-shadow .14s ease, border-color .14s ease, background-color .14s ease;
}

.exam-action-dialog-button:not(:disabled):hover[b-fo0gi924mb] {
    box-shadow: 0 8px 16px rgba(127, 105, 217, .16);
}

.exam-action-dialog-button:disabled[b-fo0gi924mb] {
    opacity: .45;
    cursor: not-allowed;
}

.exam-action-dialog-button.ghost[b-fo0gi924mb] {
    border-color: var(--button-soft-border);
    background: var(--button-soft-bg);
    color: var(--button-soft-text);
}

.exam-action-dialog-button.solid[b-fo0gi924mb] {
    color: #fff;
    background: var(--button-primary-bg);
    border-color: var(--button-primary-border);
    box-shadow: var(--button-primary-shadow);
}

@keyframes dialog-mask-fade-in-b-fo0gi924mb {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes dialog-panel-pop-in-b-fo0gi924mb {
    0% {
        opacity: 0;
        transform: translateY(10px) scale(.92);
    }

    65% {
        opacity: 1;
        transform: translateY(-2px) scale(1.01);
    }

    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@media (prefers-reduced-motion: reduce) {
    .exam-action-dialog-mask[b-fo0gi924mb],
    .exam-action-dialog[b-fo0gi924mb] {
        animation: none;
    }
}
/* /Components/AppHeader.razor.rz.scp.css */
.app-header[b-9kv7lx7uer] {
    position: sticky;
    top: 0;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    box-sizing: border-box;
    z-index: 90;
    padding: .26rem 1.2rem;
    border-bottom: 1px solid #eadcf7;
    background:
        linear-gradient(180deg, rgba(255, 250, 254, .98) 0%, rgba(252, 246, 255, .98) 100%);
    box-shadow: 0 10px 24px rgba(162, 98, 163, .14);
    backdrop-filter: blur(8px);
}

.app-header-inner[b-9kv7lx7uer] {
    width: min(1140px, calc(100% - 1.5rem));
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .9rem;
}

.app-header-brand[b-9kv7lx7uer] {
    flex-shrink: 0;
    color: #6a3c7e;
    text-decoration: none;
    font-size: 1.02rem;
    font-weight: 800;
    letter-spacing: .01em;
}

.app-header-brand:hover[b-9kv7lx7uer] {
    text-decoration: underline;
}

.app-header-nav[b-9kv7lx7uer] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: .2rem;
    overflow: visible;
    margin-left: auto;
}

.app-header-nav[b-9kv7lx7uer]  a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    padding: .35rem .6rem;
    border-radius: 999px;
    text-decoration: none;
    color: #7a5f8b;
    font-size: .96rem;
    font-weight: 500;
    line-height: 1;
}

.app-header-nav[b-9kv7lx7uer]  a:hover {
    background: #f4e8fb;
    color: #7a3d95;
    text-decoration: none;
}

.app-header-nav[b-9kv7lx7uer]  a.active {
    background: #edd9f8;
    color: #6d2f89;
    text-decoration: none;
}

.nav-menu-wrapper[b-9kv7lx7uer] {
    position: relative;
    flex-shrink: 0;
}

.nav-menu-trigger[b-9kv7lx7uer] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: transparent;
    padding: .35rem .6rem;
    border-radius: 999px;
    color: #7a5f8b;
    font-size: .96rem;
    font-weight: 500;
    line-height: 1;
    cursor: pointer;
}

.nav-menu-trigger[b-9kv7lx7uer]::after {
    content: "";
    width: .38rem;
    height: .38rem;
    margin-left: .35rem;
    border-right: 1.5px solid currentColor;
    border-bottom: 1.5px solid currentColor;
    transform: translateY(-.12rem) rotate(45deg);
}

.nav-menu-trigger:hover[b-9kv7lx7uer],
.nav-menu-trigger:focus-visible[b-9kv7lx7uer],
.nav-menu-wrapper.open > .nav-menu-trigger[b-9kv7lx7uer],
.nav-menu-wrapper.selected > .nav-menu-trigger[b-9kv7lx7uer] {
    background: #edd9f8;
    color: #6d2f89;
}

.nav-menu-trigger:focus-visible[b-9kv7lx7uer] {
    outline: none;
    box-shadow: 0 0 0 3px rgb(179 111 216 / 22%);
}

.nav-dropdown-menu[b-9kv7lx7uer] {
    position: absolute;
    top: calc(100% + .18rem);
    left: 0;
    min-width: 136px;
    border-radius: .7rem;
    border: 1px solid #eadcf6;
    background: #fff;
    box-shadow: 0 10px 24px rgba(162, 98, 163, .18);
    padding: .5rem;
    display: none;
    flex-direction: column;
    gap: .28rem;
    z-index: 5;
}

.nav-dropdown-menu[b-9kv7lx7uer]::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 100%;
    height: .35rem;
}

.nav-menu-wrapper.open > .nav-dropdown-menu[b-9kv7lx7uer] {
    display: flex;
}

.app-header-nav[b-9kv7lx7uer]  .nav-dropdown-item {
    justify-content: flex-start;
    width: 100%;
    padding: .42rem .38rem;
    border-radius: .5rem;
    color: #6d2f89;
    font-size: .9rem;
    font-weight: 700;
    line-height: 1.2;
}

.app-header-nav[b-9kv7lx7uer]  .nav-dropdown-item:hover,
.app-header-nav[b-9kv7lx7uer]  .nav-dropdown-item.active {
    background: #f4e8fb;
    color: #6d2f89;
}

.app-header-controls[b-9kv7lx7uer] {
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
}

.login-trigger[b-9kv7lx7uer] {
    border: 1px solid var(--button-primary-border);
    background: var(--button-primary-bg);
    color: #fff;
    border-radius: var(--button-radius);
    padding: .48rem 1rem;
    font-size: .95rem;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 8px 16px rgb(127 105 217 / 18%);
}

.login-trigger:hover[b-9kv7lx7uer] {
    box-shadow: var(--button-primary-shadow-hover);
}

.login-trigger:focus-visible[b-9kv7lx7uer] {
    outline: none;
    box-shadow: 0 0 0 3px rgb(179 111 216 / 22%);
}

.user-menu-wrapper[b-9kv7lx7uer] {
    position: relative;
}

.avatar-trigger[b-9kv7lx7uer] {
    border: none;
    background: transparent;
    padding: 0;
    cursor: pointer;
    border-radius: 999px;
}

.avatar-trigger:focus-visible[b-9kv7lx7uer] {
    outline: none;
    box-shadow: 0 0 0 3px rgb(179 111 216 / 22%);
}

.user-menu[b-9kv7lx7uer] {
    position: absolute;
    right: 0;
    top: calc(100% + .5rem);
    min-width: 132px;
    border-radius: .75rem;
    border: 1px solid #eadcf6;
    background: #fff;
    box-shadow: 0 10px 24px rgba(162, 98, 163, .18);
    padding: .32rem;
    display: flex;
    flex-direction: column;
    gap: .15rem;
    z-index: 4;
}

.user-menu-item[b-9kv7lx7uer] {
    border: none;
    background: transparent;
    text-align: left;
    padding: .42rem .5rem;
    border-radius: .5rem;
    color: #6d2f89;
    font-size: .82rem;
    font-weight: 600;
    cursor: pointer;
}

.user-menu-item:hover[b-9kv7lx7uer] {
    background: #f4e8fb;
}

.user-menu-item:focus-visible[b-9kv7lx7uer] {
    outline: none;
    box-shadow: 0 0 0 2px rgb(179 111 216 / 24%);
}

@media (max-width: 860px) {
    .app-header[b-9kv7lx7uer] {
        padding: .24rem .55rem;
    }

    .app-header-inner[b-9kv7lx7uer] {
        width: 100%;
        gap: .5rem;
    }

    .app-header-brand[b-9kv7lx7uer] {
        font-size: .92rem;
    }

    .app-header-nav[b-9kv7lx7uer]  a {
        padding: .3rem .48rem;
        font-size: .85rem;
    }

    .nav-menu-trigger[b-9kv7lx7uer] {
        padding: .3rem .48rem;
        font-size: .85rem;
    }

    .login-trigger[b-9kv7lx7uer] {
        padding: .42rem .7rem;
        font-size: .85rem;
    }
}
/* /Components/CircleOptions.razor.rz.scp.css */
.circle-options[b-xmzsgtl7or] {
    display: grid;
    gap: .38rem;
    margin: .1rem 0 .2rem;
    padding: .55rem .65rem;
    border: 1px solid #e1d7f5;
    border-radius: .72rem;
    background: rgba(255, 255, 255, .54);
    color: #4b4865;
}

.circle-option[b-xmzsgtl7or] {
    display: grid;
    grid-template-columns: 1.75rem minmax(0, 1fr);
    gap: .4rem;
    align-items: start;
}

.circle-option-marker[b-xmzsgtl7or] {
    color: #6f57c8;
    font-weight: 900;
    line-height: 1.55;
}

.circle-option-text[b-xmzsgtl7or] {
    line-height: 1.55;
    min-width: 0;
}

/* /Components/ExplanationPanel.razor.rz.scp.css */
.explanation-panel[b-48t0z638uo] {
    border: 1px solid #e4dbfa;
    border-left: 4px solid #8a68d8;
    border-radius: .8rem;
    padding: .9rem;
    background: linear-gradient(150deg, #fff, #fcf9ff);
    color: #35537c;
}

.explanation-panel.analysis[b-48t0z638uo] {
    border-left-color: #4f83d1;
    background: linear-gradient(150deg, #fff, #f7faff);
}

.explanation-panel.distractors[b-48t0z638uo] {
    border-left-color: #d3994b;
    background: linear-gradient(150deg, #fff, #fffbf5);
}

.explanation-panel h2[b-48t0z638uo] {
    margin: 0 0 .45rem;
    color: #5a478f;
    font-size: 1rem;
}

.explanation-panel.analysis h2[b-48t0z638uo] {
    color: #315f9c;
}

.explanation-panel.distractors h2[b-48t0z638uo] {
    color: #9a651f;
}

.explanation-panel p[b-48t0z638uo] {
    margin: 0;
    white-space: pre-line;
    line-height: 1.7;
}
/* /Components/FloatingBubblesBackground.razor.rz.scp.css */
.floating-background-layer[b-0vn87kslof] {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
    z-index: 0;
}

.floating-bubble[b-0vn87kslof] {
    position: absolute;
    border-radius: 999px;
    pointer-events: none;
    filter: blur(1px);
    z-index: 0;
    animation: float-b-0vn87kslof 10s ease-in-out infinite;
    mix-blend-mode: screen;
}

.floating-bubble-1[b-0vn87kslof] {
    width: 280px;
    height: 280px;
    top: 6%;
    right: -90px;
    background: radial-gradient(circle at 30% 30%, rgb(199 176 255 / 52%), rgb(199 176 255 / 0) 72%);
}

.floating-bubble-2[b-0vn87kslof] {
    width: 220px;
    height: 220px;
    left: -72px;
    bottom: 10%;
    background: radial-gradient(circle at 60% 40%, rgb(227 214 255 / 48%), rgb(227 214 255 / 0) 74%);
    animation-delay: -3.2s;
}

.floating-bubble-3[b-0vn87kslof] {
    width: 180px;
    height: 180px;
    right: 12%;
    bottom: 18%;
    background: radial-gradient(circle at 40% 35%, rgb(169 224 255 / 38%), rgb(169 224 255 / 0) 75%);
    animation-delay: -5.4s;
}

.floating-bubble-4[b-0vn87kslof] {
    width: 130px;
    height: 130px;
    left: 14%;
    top: 18%;
    background: radial-gradient(circle at 55% 40%, rgb(255 219 246 / 38%), rgb(255 219 246 / 0) 72%);
    animation-delay: -1.8s;
}

.floating-ring[b-0vn87kslof] {
    position: absolute;
    border-radius: 999px;
    border: 2px solid rgb(156 206 255 / 34%);
    animation: drift-b-0vn87kslof 15s linear infinite;
}

.floating-ring-1[b-0vn87kslof] {
    width: 96px;
    height: 96px;
    right: 18%;
    top: 13%;
}

.floating-ring-2[b-0vn87kslof] {
    width: 64px;
    height: 64px;
    left: 8%;
    bottom: 28%;
    border-color: rgb(213 180 255 / 32%);
    animation-delay: -6s;
}

.floating-shimmer[b-0vn87kslof] {
    position: absolute;
    width: 160px;
    height: 160px;
    border-radius: 999px;
    background: radial-gradient(circle, rgb(255 255 255 / 42%) 0%, rgb(255 255 255 / 0) 70%);
    filter: blur(8px);
    animation: pulse-b-0vn87kslof 9s ease-in-out infinite;
}

.floating-shimmer-1[b-0vn87kslof] {
    right: 28%;
    top: 40%;
}

.floating-shimmer-2[b-0vn87kslof] {
    left: 20%;
    bottom: 18%;
    animation-delay: -4.5s;
}

@keyframes float-b-0vn87kslof {
    0%,
    100% {
        transform: translate3d(0, 0, 0) scale(1);
    }

    50% {
        transform: translate3d(0, -14px, 0) scale(1.04);
    }
}

@keyframes drift-b-0vn87kslof {
    0% {
        transform: translate3d(0, 0, 0) rotate(0deg);
        opacity: .45;
    }

    50% {
        transform: translate3d(12px, -10px, 0) rotate(180deg);
        opacity: .7;
    }

    100% {
        transform: translate3d(0, 0, 0) rotate(360deg);
        opacity: .45;
    }
}

@keyframes pulse-b-0vn87kslof {
    0%,
    100% {
        transform: scale(.92);
        opacity: .35;
    }

    50% {
        transform: scale(1.1);
        opacity: .7;
    }
}
/* /Components/GoogleSignInButton.razor.rz.scp.css */
.google-identity-button[b-s6vxbzwq4h] {
    display: flex;
    justify-content: center;
    min-height: 44px;
    margin-top: 1rem;
}

.google-identity-error[b-s6vxbzwq4h] {
    margin: .65rem 0 0;
    color: #9c2f3f;
    font-size: .88rem;
}
/* /Components/LoginPanel.razor.rz.scp.css */
.login-panel-mask[b-c07xdpnexl] {
    position: fixed;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    background: rgb(43 34 73 / 46%);
    z-index: 1100;
    backdrop-filter: blur(2px);
    animation: maskFadeIn-b-c07xdpnexl .24s ease-out;
}

.login-panel[b-c07xdpnexl] {
    width: min(460px, 100%);
    border-radius: 1rem;
    border: 1px solid #e6dcfb;
    background: linear-gradient(140deg, #ffffff 0%, #f6f0ff 55%, #f7f2ff 100%);
    box-shadow: 0 24px 36px rgb(73 52 139 / 28%);
    padding: 1.2rem;
    position: relative;
    overflow: hidden;
    transform-origin: center top;
    animation: loginPanelEnter-b-c07xdpnexl .34s cubic-bezier(.22, 1, .36, 1);
}

.login-panel[b-c07xdpnexl]::before {
    content: "";
    position: absolute;
    inset: -80% 40% 20% -40%;
    background: radial-gradient(circle, rgb(166 137 255 / 22%) 0%, rgb(166 137 255 / 0%) 70%);
    pointer-events: none;
    animation: panelSheen-b-c07xdpnexl 1.7s ease-out .05s both;
}


.login-panel-eyebrow[b-c07xdpnexl] {
    margin: 0;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: var(--color-primary);
    font-size: .78rem;
    font-weight: 700;
    animation: contentRise-b-c07xdpnexl .34s ease-out .08s both;
}

.login-panel h2[b-c07xdpnexl] {
    margin: .5rem 0;
    color: #31304a;
    font-size: 1.45rem;
    animation: contentRise-b-c07xdpnexl .34s ease-out .13s both;
}

.login-panel-description[b-c07xdpnexl] {
    margin: 0;
    color: #6b6780;
    line-height: 1.5;
    animation: contentRise-b-c07xdpnexl .34s ease-out .18s both;
}

.login-panel-error[b-c07xdpnexl] {
    margin: .65rem 0 0;
    font-size: .88rem;
    color: #9c2f3f;
    animation: contentRise-b-c07xdpnexl .34s ease-out .2s both;
}

@keyframes maskFadeIn-b-c07xdpnexl {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes loginPanelEnter-b-c07xdpnexl {
    0% {
        opacity: 0;
        transform: translateY(16px) scale(.96);
    }

    60% {
        opacity: 1;
        transform: translateY(-2px) scale(1.01);
    }

    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@keyframes contentRise-b-c07xdpnexl {
    from {
        opacity: 0;
        transform: translateY(8px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes panelSheen-b-c07xdpnexl {
    from {
        transform: translate(-10%, -10%);
        opacity: .2;
    }

    to {
        transform: translate(2%, 2%);
        opacity: 1;
    }
}

@media (prefers-reduced-motion: reduce) {
    .login-panel-mask[b-c07xdpnexl],
    .login-panel[b-c07xdpnexl],
    .login-panel[b-c07xdpnexl]::before,
    .login-panel-eyebrow[b-c07xdpnexl],
    .login-panel h2[b-c07xdpnexl],
    .login-panel-description[b-c07xdpnexl] {
        animation: none;
    }
}
/* /Components/MultiSelectFilterRow.razor.rz.scp.css */
.filter-options[b-8nsd26qkdr] { min-inline-size: 0; border: 0; margin: 0; padding: 0; }
.filter-options legend[b-8nsd26qkdr] {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
}
.filter-option-row[b-8nsd26qkdr] { display: grid; grid-template-columns: 6.5rem minmax(0, 1fr); align-items: center; gap: .5rem; }
.filter-option-values[b-8nsd26qkdr] { min-width: 0; display: flex; flex-wrap: wrap; align-items: center; gap: .25rem .8rem; min-height: 2.2rem; }
.filter-option-values[b-8nsd26qkdr]  label { display: flex; align-items: center; gap: .3rem; min-height: 2.2rem; cursor: pointer; }
@media (max-width: 520px) {
    .filter-option-row[b-8nsd26qkdr] { grid-template-columns: 1fr; gap: .15rem; }
    .filter-option-values[b-8nsd26qkdr] { gap: .2rem .65rem; }
}
.filter-option-label[b-8nsd26qkdr] { color: #695e7d; font-size: .9rem; font-weight: 850; }
.filter-multiple-hint[b-8nsd26qkdr] { margin-left: .3rem; color: #9991a7; font-size: .75rem; font-weight: 500; white-space: nowrap; }
.all-option[b-8nsd26qkdr] {
    border: 1px solid #e4d9ef;
    border-radius: .5rem;
    padding: .3rem .65rem;
    background: white;
    color: #695e7d;
    font: inherit;
    font-weight: 750;
    cursor: pointer;
}
.all-option.active[b-8nsd26qkdr] { border-color: #8068cf; background: #f2edfc; color: #6d55b8; }
.all-option:hover:not(:disabled)[b-8nsd26qkdr] { border-color: #8068cf; }
.all-option:focus-visible[b-8nsd26qkdr] { outline: none; box-shadow: var(--ring-focus); }
.all-option:disabled[b-8nsd26qkdr] { opacity: .6; cursor: default; }
/* /Components/PageState.razor.rz.scp.css */
.page-state[b-xss87y0659] {
    margin: 0;
    padding: 2rem;
    color: rgba(30, 41, 59, 0.64);
    text-align: center;
    font-size: 0.95rem;
}

.page-state.card[b-xss87y0659] {
    border: 1px solid #ece3ff;
    border-radius: 1rem;
    padding: 1.2rem;
    color: var(--color-text-muted);
    background: var(--surface-primary);
}

.page-state.card[b-xss87y0659] {
    border: 1px solid #ece3ff;
    border-radius: 1rem;
    padding: 1.2rem;
    color: var(--color-text-muted);
    background: var(--surface-primary);
}
/* /Components/QuestionAnswerStatistics.razor.rz.scp.css */
.answer-statistics[b-wb98ov4616] {
    margin-bottom: 1.35rem;
    padding: 1.15rem;
    border: 1px solid #e3daf6;
    border-radius: .85rem;
    background: linear-gradient(145deg, rgba(250, 248, 255, .96), rgba(244, 239, 255, .9));
}

.statistics-header[b-wb98ov4616] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

.statistics-header h2[b-wb98ov4616],
.statistics-header p[b-wb98ov4616] {
    margin: 0;
}

.statistics-header h2[b-wb98ov4616] {
    color: var(--color-text-strong);
    font-size: 1rem;
}

.statistics-header p[b-wb98ov4616],
.statistics-updated[b-wb98ov4616] {
    margin-top: .28rem;
    color: #7d7595;
    font-size: .8rem;
}

.statistics-updated[b-wb98ov4616] {
    white-space: nowrap;
}

.statistics-body[b-wb98ov4616] {
    display: grid;
    grid-template-columns: 112px minmax(0, 1fr);
    align-items: center;
    gap: 1.25rem;
}

.distribution-ring[b-wb98ov4616] {
    position: relative;
    width: 104px;
    height: 104px;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #403868;
    font-size: 1.15rem;
    font-weight: 800;
}

.distribution-ring[b-wb98ov4616]::after {
    content: "";
    position: absolute;
    inset: 17px;
    border-radius: 50%;
    background: #faf8ff;
    box-shadow: inset 0 0 0 1px rgba(127, 105, 217, .08);
}

.distribution-ring span[b-wb98ov4616],
.distribution-ring small[b-wb98ov4616] {
    position: relative;
    z-index: 1;
}

.distribution-ring small[b-wb98ov4616] {
    color: #887fa4;
    font-size: .68rem;
    font-weight: 700;
}

.distribution-options[b-wb98ov4616] {
    display: grid;
    gap: .72rem;
}

.distribution-row[b-wb98ov4616] {
    display: grid;
    grid-template-columns: 3rem minmax(0, 1fr);
    align-items: center;
    gap: .65rem;
}

.option-marker[b-wb98ov4616] {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
}

.option-label[b-wb98ov4616] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.8rem;
    height: 1.8rem;
    border-radius: 50%;
    color: #fff;
    font-size: .78rem;
    font-weight: 800;
}

.correct-check[b-wb98ov4616] {
    color: #23865b;
    font-size: 1rem;
    font-weight: 900;
    line-height: 1;
}

.option-measure[b-wb98ov4616] {
    min-width: 0;
}

.option-summary[b-wb98ov4616] {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: .28rem;
    color: #625a78;
    font-size: .78rem;
    font-weight: 700;
}

.option-track[b-wb98ov4616] {
    height: .55rem;
    overflow: hidden;
    border-radius: 999px;
    background: #e7e0f2;
}

.option-track span[b-wb98ov4616] {
    display: block;
    min-width: 0;
    height: 100%;
    border-radius: inherit;
}

@media (max-width: 600px) {
    .statistics-header[b-wb98ov4616] {
        display: block;
    }

    .statistics-updated[b-wb98ov4616] {
        display: block;
    }

    .statistics-body[b-wb98ov4616] {
        grid-template-columns: 1fr;
    }

    .distribution-ring[b-wb98ov4616] {
        margin: 0 auto;
    }
}
/* /Components/QuestionDifficultyBadge.razor.rz.scp.css */
.difficulty-badge[b-brgf06j8fp] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 6rem;
    box-sizing: border-box;
    padding: .42rem .85rem;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: .92rem;
    font-weight: 800;
    line-height: 1.2;
    user-select: none;
    white-space: nowrap;
}

.difficulty-badge.easy[b-brgf06j8fp] {
    border-color: #9bd8b8;
    background: #e7f7ef;
    color: #176a45;
}

.difficulty-badge.medium[b-brgf06j8fp] {
    border-color: #ead275;
    background: #fff8d9;
    color: #806000;
}

.difficulty-badge.hard[b-brgf06j8fp] {
    border-color: #efbd7c;
    background: #fff1df;
    color: #a34b08;
}

.difficulty-badge.very-hard[b-brgf06j8fp] {
    border-color: #e8a09a;
    background: #ffebe9;
    color: #a52a22;
}

.difficulty-badge.contested[b-brgf06j8fp] {
    border-color: #c9b8ec;
    background: #f3edff;
    color: #6545a4;
}

.difficulty-badge.insufficient[b-brgf06j8fp] {
    border-color: #cbd6e2;
    background: #f2f5f8;
    color: #52677d;
}
/* /Components/QuestionExplanation.razor.rz.scp.css */
.explanation-section[b-cqvhv91gb0] {
    display: grid;
    gap: .7rem;
}

.practice-spacing[b-cqvhv91gb0] {
    margin-top: .7rem;
}

.explanation-toolbar[b-cqvhv91gb0] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
}

.explanation-report-side[b-cqvhv91gb0] {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: .65rem;
    min-width: 0;
}

.explanation-tabs[b-cqvhv91gb0] {
    width: fit-content;
    max-width: 100%;
    padding: .25rem;
    display: flex;
    gap: .2rem;
    border: 1px solid #e2e8f0;
    border-radius: .75rem;
    background: #f1f5f9;
}

.explanation-tab[b-cqvhv91gb0] {
    border: 1px solid transparent;
    border-radius: .55rem;
    padding: .45rem .75rem;
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    background: transparent;
    color: var(--color-text-subtle);
    font-weight: 700;
    cursor: pointer;
}

.explanation-tab.active[b-cqvhv91gb0] {
    border-color: #d9ccfa;
    background: #fff;
    color: #694ebf;
    box-shadow: 0 2px 8px rgba(105, 78, 191, .12);
}

.explanation-tab:disabled[b-cqvhv91gb0] {
    opacity: .45;
    cursor: not-allowed;
}

.ai-tab-mark[b-cqvhv91gb0] {
    border-radius: .3rem;
    padding: .05rem .28rem;
    background: #eee6ff;
    color: #694ebf;
    font-size: .68rem;
    line-height: 1.35;
}

.ai-explanation-panels[b-cqvhv91gb0] {
    display: grid;
    gap: .7rem;
}

.ai-explanation-warning[b-cqvhv91gb0] {
    margin: 0;
    padding: .65rem .8rem;
    border: 1px solid #fde68a;
    border-radius: .65rem;
    background: #fffbeb;
    color: #92400e;
    font-size: .9rem;
    line-height: 1.5;
}

.explanation-report-icon[b-cqvhv91gb0] {
    width: 2.8rem;
    height: 2.8rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    border: 1px solid #e2e8f0;
    border-radius: .8rem;
    background: #fff;
    color: var(--color-text-subtle);
    box-shadow: 0 6px 16px rgba(15, 23, 42, .06);
    cursor: pointer;
}

.explanation-report-icon:hover[b-cqvhv91gb0],
.explanation-report-icon:focus-visible[b-cqvhv91gb0] {
    border-color: #c4b5fd;
    color: #694ebf;
    outline: none;
}

.explanation-report-icon svg[b-cqvhv91gb0] {
    width: 1.35rem;
    height: 1.35rem;
    fill: currentColor;
}

.explanation-report-backdrop[b-cqvhv91gb0] {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: grid;
    place-items: center;
    padding: 1rem;
    background: rgba(15, 23, 42, .36);
    backdrop-filter: blur(2px);
}

.explanation-report-dialog[b-cqvhv91gb0] {
    width: min(32rem, 100%);
    display: grid;
    gap: .9rem;
    padding: 1rem;
    border: 1px solid #dbeafe;
    border-radius: 1rem;
    background: #fff;
    box-shadow: 0 20px 48px rgba(15, 23, 42, .22);
}

.explanation-report-header[b-cqvhv91gb0] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.explanation-report-header h2[b-cqvhv91gb0] {
    margin: 0;
    color: #0f172a;
    font-size: 1rem;
    font-weight: 800;
}

.explanation-report-close[b-cqvhv91gb0] {
    width: 2rem;
    height: 2rem;
    border: 1px solid #e2e8f0;
    border-radius: 999px;
    background: #fff;
    color: var(--color-text-subtle);
    font-size: 1.2rem;
    line-height: 1;
    cursor: pointer;
}

.explanation-report-reasons[b-cqvhv91gb0] {
    display: grid;
    gap: .55rem;
    margin: 0;
    padding: 0;
    border: 0;
}

.explanation-report-reasons legend[b-cqvhv91gb0] {
    margin-bottom: .15rem;
    color: #334155;
    font-weight: 700;
}

.explanation-report-reasons label[b-cqvhv91gb0] {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    color: #334155;
}

.explanation-report-comment[b-cqvhv91gb0] {
    min-height: 5rem;
    resize: vertical;
    border: 1px solid #cbd5e1;
    border-radius: .55rem;
    padding: .55rem .65rem;
}

.explanation-report-actions[b-cqvhv91gb0] {
    display: flex;
    justify-content: flex-end;
    gap: .5rem;
}

.explanation-report-actions button[b-cqvhv91gb0] {
    border: 1px solid #cbd5e1;
    border-radius: .5rem;
    padding: .35rem .7rem;
    background: #fff;
}

.explanation-report-actions button:last-child[b-cqvhv91gb0] {
    border-color: #2563eb;
    background: #2563eb;
    color: #fff;
}

.explanation-report-message[b-cqvhv91gb0] {
    margin: 0;
    color: #2563eb;
    font-size: .9rem;
    white-space: nowrap;
}

.explanation-report-error[b-cqvhv91gb0] {
    margin: 0;
    color: var(--status-danger-text);
    font-size: .9rem;
}

@media (max-width: 520px) {
    .explanation-toolbar[b-cqvhv91gb0] {
        align-items: flex-start;
    }

    .explanation-report-side[b-cqvhv91gb0] {
        flex-direction: column-reverse;
        align-items: flex-end;
        gap: .4rem;
    }

    .explanation-tabs[b-cqvhv91gb0] {
        flex-wrap: wrap;
    }
}
/* /Components/QuestionFilterPanel.razor.rz.scp.css */
.question-filter-panel[b-bn2thx2sa0] {
    border: 1px solid rgba(218, 207, 241, .88);
    border-radius: .95rem;
    background: rgba(255, 255, 255, .64);
    box-shadow: 0 6px 18px rgba(105, 85, 155, .06);
    overflow: hidden;
}
.filter-mode[b-bn2thx2sa0] {
    display: flex;
    gap: .25rem;
    padding: .2rem .65rem 0;
    border-bottom: 1px solid #e4d9ef;
    background: rgba(249, 247, 253, .7);
}
.filter-mode button[b-bn2thx2sa0] {
    margin-bottom: -1px;
    padding: .5rem 1rem;
    border: 0;
    border-bottom: 2px solid transparent;
    background: transparent;
    color: #695e7d;
    font: inherit;
    font-weight: 750;
    cursor: pointer;
}
.filter-mode button.active[b-bn2thx2sa0] { border-bottom-color: #8068cf; color: #6d55b8; }
.filter-mode button:hover[b-bn2thx2sa0] { background: rgba(128, 104, 207, .06); }
.filter-mode button:focus-visible[b-bn2thx2sa0] { outline: 2px solid #8068cf; outline-offset: -3px; }
.filter-content[b-bn2thx2sa0] { padding: .5rem .75rem; }
@media (max-width: 520px) {
    .filter-mode[b-bn2thx2sa0] { padding-left: .4rem; padding-right: .4rem; }
    .filter-mode button[b-bn2thx2sa0] { flex: 1; }
    .filter-content[b-bn2thx2sa0] { padding: .5rem; }
}
/* /Components/QuestionReviewPanel.razor.rz.scp.css */
.answer-section[b-auufzwa9at] {
    margin-top: 1.75rem;
    padding-top: 1.5rem;
    border-top: 1px solid #dbe5f0;
}

.review-topics[b-auufzwa9at] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .5rem;
    margin-bottom: 1rem;
}

.review-topics-label[b-auufzwa9at] {
    color: #56708f;
    font-size: .85rem;
    font-weight: 700;
}

.topic-pill[b-auufzwa9at] {
    padding: .3rem .65rem;
    border-radius: 999px;
    font-size: .82rem;
    font-weight: 700;
    text-decoration: none;
}

.topic-pill.primary[b-auufzwa9at] {
    background: #e5f0ff;
    color: #245b9b;
}

.topic-pill.secondary[b-auufzwa9at] {
    background: #eef2f7;
    color: #536981;
}

.empty-explanation[b-auufzwa9at] {
    margin: 0 0 1rem;
    padding: 1rem;
    border-radius: .65rem;
    background: #f5f8fb;
    color: #294766;
    text-align: center;
}

.statistics-divider[b-auufzwa9at] {
    margin: 1.5rem 0;
    border: 0;
    border-top: 1px solid #dbe5f0;
    opacity: 1;
}
/* /Components/QuestionSituation.razor.rz.scp.css */
.question-situation[b-u9cim4wipb] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: .45rem;
    align-items: start;
    margin: .05rem 0 .2rem;
    padding: .78rem .9rem;
    border: 1px solid rgba(166, 132, 232, .28);
    border-left: .28rem solid #8e6be8;
    border-radius: 14px;
    background: linear-gradient(145deg, rgba(255, 255, 255, .9), rgba(248, 244, 255, .86));
    color: #4d4669;
    box-shadow: 0 10px 22px rgba(88, 67, 158, .08);
}

.question-situation-label[b-u9cim4wipb] {
    color: #6e49d5;
    font-weight: 850;
    white-space: nowrap;
}

.question-situation-text[b-u9cim4wipb] {
    min-width: 0;
    line-height: 1.65;
    overflow-wrap: anywhere;
}

@media (max-width: 640px) {
    .question-situation[b-u9cim4wipb] {
        grid-template-columns: 1fr;
        gap: .24rem;
        padding: .68rem .75rem;
        border-radius: 12px;
    }
}
/* /Components/QuestionTopicPicker.razor.rz.scp.css */
.topic-picker[b-wgzrsx3m4k] { width: min(46rem, calc(100vw - 2rem)); height: min(52rem, 92dvh); max-height: 92dvh; box-sizing: border-box; overflow: hidden; padding: 0; border: 1px solid #e4d9ef; border-radius: .9rem; color: #514c6e; background: #fff; box-shadow: 0 1rem 4rem #30204d40; }
.topic-picker[open][b-wgzrsx3m4k] { display: flex; flex-direction: column; }
.topic-picker[b-wgzrsx3m4k]::backdrop { background: #30204d66; }
header[b-wgzrsx3m4k], footer[b-wgzrsx3m4k], .topic-tools[b-wgzrsx3m4k] { flex-shrink: 0; display: flex; align-items: center; gap: .7rem; padding: .75rem 1rem; }
header[b-wgzrsx3m4k] { justify-content: space-between; border-bottom: 1px solid #ede8f5; }
h2[b-wgzrsx3m4k] { font-size: 1.15rem; margin: 0; }
button[b-wgzrsx3m4k] { padding: .4rem .8rem; border: 1px solid #e4d9ef; border-radius: .45rem; background: white; color: inherit; font: inherit; cursor: pointer; }
button:focus-visible[b-wgzrsx3m4k], input:focus-visible[b-wgzrsx3m4k] { outline: 2px solid #8068cf; outline-offset: 2px; }
.topic-tools[b-wgzrsx3m4k] { flex-wrap: wrap; }
.topic-tools input[b-wgzrsx3m4k] { flex: 1; min-width: 12rem; border: 1px solid #e4d9ef; border-radius: .45rem; padding: .5rem; font: inherit; }
.topic-tools span[b-wgzrsx3m4k] { font-size: .875rem; }
.topic-list[b-wgzrsx3m4k] { flex: 1; overflow-y: auto; scrollbar-gutter: stable; min-height: 0; padding: 0 1rem 1rem; }
fieldset[b-wgzrsx3m4k] { border: 0; padding: .5rem 0; margin: 0; min-width: 0; }
legend[b-wgzrsx3m4k] { font-size: .95rem; font-weight: 800; color: #6d55b8; }
label[b-wgzrsx3m4k] { display: flex; align-items: start; gap: .6rem; padding: .55rem; border-bottom: 1px solid #f1edf7; cursor: pointer; }
label:hover[b-wgzrsx3m4k] { background: #f7f4fc; }
label input[b-wgzrsx3m4k] { margin-top: .3rem; }
label strong[b-wgzrsx3m4k] { display: block; }
footer[b-wgzrsx3m4k] { justify-content: end; border-top: 1px solid #ede8f5; }
.apply[b-wgzrsx3m4k] { background: #8068cf; color: white; }
@media (max-width: 520px) { .topic-picker[b-wgzrsx3m4k] { width: calc(100vw - 1rem); height: 94dvh; max-height: 94dvh; } }
/* /Components/QuestionVisuals.razor.rz.scp.css */
.question-visuals[b-q9o940wv34] {
    display: grid;
    gap: .5rem;
    margin: .45rem 0 .65rem;
}

.question-visuals img[b-q9o940wv34] {
    display: block;
    max-width: min(100%, 720px);
    height: auto;
    border: 1px solid #d9e2f1;
    border-radius: .7rem;
    background: #fff;
    box-shadow: 0 10px 22px rgba(67, 83, 123, .1);
}

.option-visuals[b-q9o940wv34] {
    margin: .45rem 0 0;
}

.option-visuals img[b-q9o940wv34] {
    max-width: min(100%, 360px);
}
/* /Components/RouteAccessGate.razor.rz.scp.css */
.login-page[b-tori3k0kf1] {
    min-height: 100vh;
    display: grid;
    place-items: center;
    padding: 2rem 1rem;
}

.login-card[b-tori3k0kf1] {
    width: min(440px, 100%);
    padding: 2rem;
    border: 1px solid var(--surface-border);
    border-radius: var(--panel-radius);
    background: var(--surface-primary);
    box-shadow: var(--surface-shadow-raised);
}

.login-card-eyebrow[b-tori3k0kf1] {
    margin: 0;
    color: var(--color-primary-emphasis);
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.login-card h1[b-tori3k0kf1] {
    margin: .5rem 0;
    color: var(--color-text-strong);
    font-size: 1.6rem;
}

.login-card-description[b-tori3k0kf1] {
    margin: 0;
    color: var(--color-text-muted);
    line-height: 1.6;
}

.login-card-error[b-tori3k0kf1] {
    margin: .75rem 0 0;
    color: #9c2f3f;
    font-size: .88rem;
}

@media (max-width: 480px) {
    .login-page[b-tori3k0kf1] {
        align-items: start;
        padding-top: 15vh;
    }

    .login-card[b-tori3k0kf1] {
        padding: 1.5rem;
    }
}
/* /Components/SortToggle.razor.rz.scp.css */
.sort-toggle[b-n4xrbrklxz] {
    border: 1px solid var(--button-soft-border);
    border-radius: var(--button-radius);
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    color: var(--button-soft-text);
    background: var(--button-soft-bg);
    box-shadow: 0 1px 2px rgb(127 105 217 / 14%);
    cursor: pointer;
    font-weight: 800;
    line-height: 1.2;
}

.sort-toggle.compact[b-n4xrbrklxz],
.sort-toggle.wide[b-n4xrbrklxz] {
    min-width: 7.4rem;
    min-height: 2.45rem;
    padding: .43rem .5rem .43rem .72rem;
    gap: .55rem;
    font-size: .9rem;
}

.sort-toggle.large[b-n4xrbrklxz] {
    min-width: 8rem;
    padding: .45rem .55rem .45rem .8rem;
    gap: .7rem;
    font-size: .95rem;
}

.sort-toggle:hover[b-n4xrbrklxz] {
    border-color: #bbaaf4;
    box-shadow: 0 7px 14px rgb(127 105 217 / 15%);
    transform: translateY(-1px);
}

.sort-toggle:focus-visible[b-n4xrbrklxz] {
    outline: none;
    border-color: var(--color-primary);
    box-shadow: 0 0 0 3px rgb(155 132 239 / 24%);
}

.sort-toggle.active[b-n4xrbrklxz] {
    border-color: var(--button-primary-border);
    color: var(--button-soft-text-strong);
    background: var(--button-soft-bg-active);
}

.sort-arrows[b-n4xrbrklxz] {
    width: .8rem;
    display: grid;
    justify-items: center;
    gap: .18rem;
    line-height: 1;
}

.large .sort-arrows[b-n4xrbrklxz] {
    width: .85rem;
}

.sort-arrow[b-n4xrbrklxz] {
    width: 0;
    height: 0;
    overflow: hidden;
    color: transparent;
}

.sort-arrow.reverse[b-n4xrbrklxz] {
    border-left: .28rem solid transparent;
    border-right: .28rem solid transparent;
    border-bottom: .46rem solid #d8d2e8;
}

.sort-arrow.forward[b-n4xrbrklxz] {
    border-left: .28rem solid transparent;
    border-right: .28rem solid transparent;
    border-top: .46rem solid #d8d2e8;
}

.sort-arrow.reverse.selected[b-n4xrbrklxz] {
    border-bottom-color: #2f9e44;
}

.sort-arrow.forward.selected[b-n4xrbrklxz] {
    border-top-color: #d94848;
}

@media (max-width: 960px) {
    .sort-toggle.compact[b-n4xrbrklxz],
    .sort-toggle.wide[b-n4xrbrklxz] {
        flex: 1;
        min-width: 0;
    }
}

@media (max-width: 640px) {
    .sort-toggle.large[b-n4xrbrklxz] {
        flex: 1 1 calc(50% - .4rem);
        min-width: 0;
    }
}
/* /Components/SubjectModuleFilter.razor.rz.scp.css */
.filter-toolbar[b-2lacpzfjxt] {
    margin-bottom: 0;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    backdrop-filter: none;
}

.filter-toolbar.has-sort[b-2lacpzfjxt] {
    grid-template-columns: minmax(9rem, .78fr) minmax(9rem, .78fr) minmax(0, 2.4fr);
}

.filter-toolbar.has-leading[b-2lacpzfjxt] {
    grid-template-columns: minmax(16rem, 1.55fr) minmax(8rem, .72fr) minmax(8rem, .72fr);
}

.filter-toolbar.has-leading.has-sort[b-2lacpzfjxt] {
    grid-template-columns: minmax(17rem, 1.8fr) minmax(7.5rem, .64fr) minmax(7.5rem, .64fr) minmax(0, 1.75fr);
}

.leading-content[b-2lacpzfjxt] {
    display: flex;
    min-width: 0;
}

.leading-content[b-2lacpzfjxt]  .filter-search {
    font-size: .96rem;
}

.filter-group[b-2lacpzfjxt] {
    display: flex;
    min-width: 0;
}

.subject-filter[b-2lacpzfjxt] {
    font-size: .96rem;
}

.sort-controls[b-2lacpzfjxt] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: .5rem;
    flex-wrap: wrap;
    min-width: 0;
}

.sort-controls[b-2lacpzfjxt]  .sort-toggle {
    min-height: 2.45rem;
    box-shadow: none;
}

@media (max-width: 960px) {
    .filter-toolbar.has-leading[b-2lacpzfjxt],
    .filter-toolbar.has-leading.has-sort[b-2lacpzfjxt],
    .filter-toolbar.has-sort[b-2lacpzfjxt] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .leading-content[b-2lacpzfjxt] {
        grid-column: 1 / -1;
    }

    .sort-controls[b-2lacpzfjxt] {
        grid-column: 1 / -1;
        justify-content: flex-start;
    }
}

@media (max-width: 640px) {
    .filter-toolbar[b-2lacpzfjxt],
    .filter-toolbar.has-leading[b-2lacpzfjxt],
    .filter-toolbar.has-leading.has-sort[b-2lacpzfjxt],
    .filter-toolbar.has-sort[b-2lacpzfjxt] {
        grid-template-columns: 1fr;
    }

    .sort-controls[b-2lacpzfjxt] {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
/* /Components/TopicHint.razor.rz.scp.css */
.topic-hint[b-levinl8wbc] {
    position: relative;
    display: inline-flex;
    align-items: center;
    z-index: 4;
}

.topic-hint-trigger[b-levinl8wbc] {
    display: inline-flex;
    align-items: center;
    gap: .25rem;
    min-height: 1.9rem;
    border: 1px solid #9de6c3;
    border-radius: .55rem;
    padding: .22rem .58rem;
    background: linear-gradient(180deg, #ffffff 0%, #f5fff9 100%);
    color: #0f9f63;
    font-size: .9rem;
    font-weight: 800;
    line-height: 1;
    box-shadow: 0 3px 8px rgba(20, 132, 86, .12);
    cursor: pointer;
}

.topic-hint-trigger:hover[b-levinl8wbc],
.topic-hint-trigger:focus-visible[b-levinl8wbc] {
    border-color: #57d396;
    background: #ffffff;
    outline: 3px solid rgba(87, 211, 150, .18);
    outline-offset: 2px;
}

.topic-hint-trigger[aria-expanded="true"][b-levinl8wbc] {
    border-color: #35bf7d;
    box-shadow: 0 5px 14px rgba(20, 132, 86, .14);
}

.topic-hint-icon[b-levinl8wbc] {
    font-size: .88rem;
    line-height: 1;
}

.topic-hint-panel[b-levinl8wbc] {
    position: absolute;
    bottom: calc(100% + .75rem);
    right: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .85rem;
    width: min(21rem, calc(100vw - 2rem));
    border: 1px solid #e4edf9;
    border-radius: .75rem;
    padding: .85rem .95rem;
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
    color: #23456f;
    box-shadow: 0 10px 22px rgba(39, 71, 112, .1);
    z-index: 20;
}

.topic-hint-title[b-levinl8wbc] {
    flex: 1;
    color: #123d73;
    font-size: .94rem;
    font-weight: 900;
    line-height: 1.5;
    text-align: left;
}

.topic-hint-link[b-levinl8wbc] {
    flex: 0 0 auto;
    border-radius: .55rem;
    padding: .48rem .7rem;
    background: #eef7ff;
    color: #2563eb;
    font-size: .86rem;
    font-weight: 800;
    line-height: 1;
    text-decoration: none;
}

.topic-hint-link:hover[b-levinl8wbc],
.topic-hint-link:focus-visible[b-levinl8wbc] {
    background: #dfefff;
    outline: 3px solid rgba(37, 99, 235, .16);
    outline-offset: 2px;
}

@media (max-width: 520px) {
    .topic-hint-panel[b-levinl8wbc] {
        align-items: stretch;
        flex-direction: column;
        right: 50%;
        transform: translateX(50%);
        width: min(18rem, calc(100vw - 2rem));
    }

    .topic-hint-link[b-levinl8wbc] {
        text-align: center;
    }
}
/* /Components/UserAvatar.razor.rz.scp.css */
.user-avatar[b-1j39ixrxtj] {
    --fallback-head-size: .72rem;
    --fallback-body-offset: .82rem;
    --fallback-body-spread: .28rem;
    --fallback-translate-y: -.28rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 999px;
    border: 1px solid #eadcf6;
    background: linear-gradient(180deg, #fff 0%, #f9f0ff 100%);
    color: #7c488f;
    font-size: .9rem;
    font-weight: 700;
    object-fit: cover;
    overflow: hidden;
}

div.user-avatar[b-1j39ixrxtj]::before {
    content: "";
    width: var(--fallback-head-size);
    height: var(--fallback-head-size);
    flex: 0 0 var(--fallback-head-size);
    border-radius: 50%;
    background: #876cc8;
    box-shadow: 0 var(--fallback-body-offset) 0 var(--fallback-body-spread) #876cc8;
    transform: translateY(var(--fallback-translate-y));
}

.google-avatar[b-1j39ixrxtj]::before {
    content: none;
}

img.user-avatar[b-1j39ixrxtj] {
    padding: 0;
}

.google-avatar[b-1j39ixrxtj] {
    background: #ffffff;
}

.google-icon[b-1j39ixrxtj] {
    width: 22px;
    height: 22px;
}
/* /Layout/MainLayout.razor.rz.scp.css */
.app-shell[b-hgpbz03av8] {
    min-height: 100vh;
    background: transparent;
}

#blazor-error-ui[b-hgpbz03av8] {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, .2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: .6rem 1.25rem .7rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

#blazor-error-ui .dismiss[b-hgpbz03av8] {
    cursor: pointer;
    position: absolute;
    right: .75rem;
    top: .5rem;
}
/* /Pages/ExamAttemptPage.razor.rz.scp.css */
.exam-page.juicy-theme[b-t3tm7crwog] {
    grid-template-rows: auto minmax(0, auto) minmax(0, 1fr) auto;
}

.exam-timer[b-t3tm7crwog] {
    display: grid;
    justify-items: end;
    color: var(--primary-strong);
    line-height: 1.1;
}

.exam-timer span[b-t3tm7crwog] { font-size: .72rem; font-weight: 700; }
.exam-timer strong[b-t3tm7crwog] { font-size: 1.35rem; font-variant-numeric: tabular-nums; }
.exam-timer.urgent[b-t3tm7crwog] { color: #b13f70; }
.node.pending[b-t3tm7crwog] { opacity: .86; }
.node.done[b-t3tm7crwog] { background: #f1ebff; border-color: #c7b4f9; }

.auto-jump-switch[b-t3tm7crwog] {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    font-size: .78rem;
    color: #5f5680;
    border: 1px solid #ded6f6;
    padding: .26rem .42rem;
    border-radius: 11px;
    background: #f7f3ff;
}

.auto-jump-switch input[b-t3tm7crwog] {
    position: absolute;
    opacity: 0;
    width: 1px;
    height: 1px;
}

.switch-label[b-t3tm7crwog] { font-weight: 800; }

.switch-ui[b-t3tm7crwog] {
    width: 2.2rem;
    height: 1.24rem;
    border-radius: 999px;
    background: #ece6fb;
    border: 1px solid #d8cdf7;
    padding: .1rem;
    display: inline-flex;
    align-items: center;
    transition: background .2s ease, border-color .2s ease;
}

.switch-thumb[b-t3tm7crwog] {
    width: .88rem;
    height: .88rem;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 2px 6px rgba(66, 59, 110, .2);
    transform: translateX(0);
    transition: transform .2s ease;
}

.auto-jump-switch input:checked + .switch-ui[b-t3tm7crwog] {
    background: linear-gradient(140deg, #c4b0ff, #8f6de7);
    border-color: #9b7ae8;
}

.auto-jump-switch input:checked + .switch-ui .switch-thumb[b-t3tm7crwog] {
    transform: translateX(.94rem);
}

.option-card[b-t3tm7crwog] {
    text-align: left;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.option-card:hover:not(:disabled)[b-t3tm7crwog] { transform: translateY(-1px); border-color: #c9b7f8; box-shadow: 0 10px 20px rgba(115, 86, 200, .14); }
.option-card.selected[b-t3tm7crwog] { border-color: #a88ef0; box-shadow: 0 12px 24px rgba(115, 86, 200, .2); }
.option-card.selected .option-index[b-t3tm7crwog] { background: linear-gradient(180deg, var(--primary), var(--primary-strong)); color: #fff; }
.option-body[b-t3tm7crwog] { display: grid; }

.question-actions[b-t3tm7crwog] {
    position: relative;
    z-index: 1;
    margin-top: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: .45rem;
    flex-wrap: wrap;
    border: 1px solid var(--line);
    border-radius: 18px;
    padding: .32rem;
    background: var(--card);
    backdrop-filter: blur(12px);
    box-shadow: var(--surface-shadow-soft);
}

.mini-btn.submit[b-t3tm7crwog] { background: linear-gradient(160deg, #f1fff8, #dcf8ea); color: #257a55; border-color: #a8e3c4; }
.mini-btn.abandon[b-t3tm7crwog] { background: linear-gradient(160deg, #fff4f4, #ffe9ec); color: #a74356; border-color: #f2bec8; }

@media (max-height: 900px) and (min-width: 981px) {
    .exam-page.juicy-theme[b-t3tm7crwog] {
        grid-template-rows: auto minmax(0, auto) minmax(0, 1fr) auto;
    }

    .question-actions[b-t3tm7crwog] {
        padding: .28rem;
    }
}

@media (max-width: 980px) {
    .exam-page.juicy-theme[b-t3tm7crwog] {
        grid-template-rows: auto minmax(0, auto) minmax(0, 1fr) auto;
    }
}

@media (max-width: 640px) {
    .exam-page.juicy-theme[b-t3tm7crwog] {
        grid-template-rows: auto minmax(0, auto) minmax(0, 1fr) auto;
    }

    .progress-stage[b-t3tm7crwog] { height: 208px; }
    .question-actions[b-t3tm7crwog] { width: 100%; justify-content: stretch; }
}
/* /Pages/ExamAttemptReviewPage.razor.rz.scp.css */
.exam-attempt-review-page.juicy-theme[b-e3btwjlakr] {
    --chip-pass-bg: rgba(40, 178, 127, .12);
    --chip-pass-text: #16805e;
    --chip-fail-bg: rgba(220, 98, 123, .12);
    --chip-fail-text: #b94862;
    --review-panel-gap: .55rem;
    grid-template-rows: auto auto minmax(0, auto) minmax(0, 1fr) auto;
}

.exam-attempt-review-page .progress-stage[b-e3btwjlakr],
.exam-attempt-review-page .topic-strengthening-shell[b-e3btwjlakr] {
    border-top: 0;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}


.review-stats[b-e3btwjlakr] { display: flex; flex-wrap: wrap; gap: .45rem; }

.review-chip[b-e3btwjlakr] {
    border-radius: 999px;
    font-size: .7rem;
    font-weight: 700;
    padding: .18rem .48rem;
    border: 1px solid transparent;
}

.review-chip.correct[b-e3btwjlakr] { color: var(--status-success-text); background: var(--status-success-surface); border-color: rgba(34, 197, 94, .28); }
.review-chip.wrong[b-e3btwjlakr] { color: var(--status-danger-text); background: var(--status-danger-surface); border-color: rgba(239, 68, 68, .25); }
.review-chip.unanswered[b-e3btwjlakr] { color: #c27d00; background: rgba(245, 158, 11, .16); border-color: rgba(245, 158, 11, .24); }
.review-chip.contested[b-e3btwjlakr] { color: var(--status-contested-text); background: var(--status-contested-surface); border-color: rgba(139, 92, 246, .26); }

.review-tabs[b-e3btwjlakr] {
    position: relative;
    z-index: 1;
    display: flex;
    gap: .25rem;
    border: 1px solid var(--line);
    border-bottom-color: #e4d9ef;
    border-radius: 18px 18px 0 0;
    margin-bottom: calc(-1 * var(--review-panel-gap));
    padding: .2rem .65rem 0;
    background: rgba(249, 247, 253, .7);
}

.tab-btn[b-e3btwjlakr] {
    margin-bottom: -1px;
    border: 0;
    border-bottom: 2px solid transparent;
    border-radius: 0;
    background: transparent;
    color: #695e7d;
    font: inherit;
    font-weight: 750;
    padding: .5rem 1rem;
    cursor: pointer;
    transition: color 120ms ease, border-color 120ms ease;
}

.tab-btn:hover[b-e3btwjlakr] { background: rgba(128, 104, 207, .06); }
.tab-btn:focus-visible[b-e3btwjlakr] { outline: 2px solid #8068cf; outline-offset: -3px; }

.tab-btn.active[b-e3btwjlakr] {
    border-bottom-color: #8068cf;
    color: #6d55b8;
}

.node.correct[b-e3btwjlakr] { background: #f2fff8; border-color: #9fdfba; color: #0f8a4b; }
.node.wrong[b-e3btwjlakr] { background: #fff5f5; border-color: #f3c2c2; color: #c02626; }
.node.unanswered[b-e3btwjlakr] { background: #fff9ef; border-color: #f2ce8a; color: #a15e00; }
.node.contested[b-e3btwjlakr] { background: #f7f1ff; border-color: #d8b4fe; color: var(--status-contested-text); }
.exam-attempt-review-page .node[b-e3btwjlakr] {
    border-radius: 7px;
    font-variant-numeric: tabular-nums;
    cursor: pointer;
    transition: background 140ms ease, border-color 140ms ease, box-shadow 140ms ease;
}

.exam-attempt-review-page .node:hover[b-e3btwjlakr] {
    transform: none;
    box-shadow: inset 0 0 0 1px currentColor;
}

.exam-attempt-review-page .node.active[b-e3btwjlakr] {
    color: #fff;
    border-color: #6d55b8;
    background: #6d55b8;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .24);
    font-weight: 850;
}

.exam-attempt-review-page .node:focus-visible[b-e3btwjlakr] {
    outline: 2px solid #6d55b8;
    outline-offset: 2px;
}

.question-id[b-e3btwjlakr] { margin: 0 0 .28rem; color: var(--color-primary-emphasis); font-size: .82rem; font-weight: 800; line-height: 1.2; }
.question-id a[b-e3btwjlakr] { color: inherit; text-decoration: none; }
.question-id a:hover[b-e3btwjlakr] { text-decoration: underline; }
.question-id a:focus-visible[b-e3btwjlakr] { border-radius: .2rem; outline: 2px solid var(--ring-focus-color); outline-offset: 2px; }
.question-meta[b-e3btwjlakr] { color: var(--muted); margin: 0; }
.unanswered-answer[b-e3btwjlakr] { color: #b45309; font-weight: 800; }
.contested-answer-note[b-e3btwjlakr] { color: var(--status-contested-text); font-weight: 800; }

.question-meta-row[b-e3btwjlakr] {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: .4rem .75rem;
}

.question-topic-badges[b-e3btwjlakr] {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: .32rem;
    min-width: 0;
}

.topic-pill[b-e3btwjlakr] {
    display: inline-flex;
    border: 1px solid transparent;
    max-width: 100%;
    border-radius: 999px;
    padding: .2rem .58rem;
    font-size: .84rem;
    font-weight: 800;
    line-height: 1.45;
    font-family: inherit;
    overflow-wrap: anywhere;
    cursor: pointer;
    transition: transform .14s ease, box-shadow .14s ease;
}

.topic-pill:hover[b-e3btwjlakr] {
    transform: translateY(-1px);
    box-shadow: 0 6px 12px rgba(113, 81, 199, .14);
}

.topic-pill.primary[b-e3btwjlakr] {
    color: #5a478f;
    background: #f1ebff;
    border: 1px solid #dacfff;
}

.topic-pill.secondary[b-e3btwjlakr] {
    color: #0f766e;
    background: #ecfffb;
    border: 1px solid #b9eee5;
}

.option-text-wrap[b-e3btwjlakr] { display: grid; flex: 1; min-width: 0; }

.option-content-row[b-e3btwjlakr] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: .65rem;
}

.option-text[b-e3btwjlakr] { flex: 1; }
.option-card.correct-answer[b-e3btwjlakr] { border-color: var(--status-success-strong); background: rgba(34, 197, 94, .1); }
.option-card.attempt-answer[b-e3btwjlakr] { border-color: var(--status-danger-strong); background: rgba(239, 68, 68, .1); }
.option-card.contested-answer[b-e3btwjlakr] { border-color: #a855f7; background: rgba(168, 85, 247, .1); }
.result-badge[b-e3btwjlakr] { display: inline-flex; width: fit-content; font-size: .72rem; font-weight: 700; padding: .18rem .5rem; border-radius: 999px; flex-shrink: 0; align-self: flex-start; margin-top: .12rem; }
.result-badge.ok[b-e3btwjlakr] { color: #166534; background: rgba(34, 197, 94, .18); }
.result-badge.ng[b-e3btwjlakr] { color: #991b1b; background: rgba(239, 68, 68, .18); }
.result-badge.contested[b-e3btwjlakr] { color: var(--status-contested-text); background: rgba(168, 85, 247, .16); }

.review-page-actions[b-e3btwjlakr] {
    position: relative;
    z-index: 1;
    grid-row: 5;
    align-self: end;
    margin-top: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: .45rem;
    flex-wrap: wrap;
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: .32rem;
    background: var(--card);
    backdrop-filter: blur(12px);
    box-shadow: var(--surface-shadow-soft);
}

.mini-btn.submit[b-e3btwjlakr] { background: linear-gradient(160deg, #effcf4, #e6f9ef); color: #0f7a46; border-color: #bce9cf; }

.topic-strengthening-panel[b-e3btwjlakr] {
    position: relative;
    z-index: 1;
    grid-row: 3 / 5;
    display: grid;
    min-height: 0;
}

.topic-strengthening-shell[b-e3btwjlakr] {
    border: 1px solid var(--line);
    background: var(--card);
    backdrop-filter: blur(12px);
    border-radius: 18px;
    box-shadow: var(--surface-shadow-raised);
    padding: .72rem .82rem;
    overflow: hidden;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    min-height: 0;
}

.topic-practice-tabs[b-e3btwjlakr] {
    display: inline-flex;
    justify-self: start;
    gap: .35rem;
    margin-bottom: .7rem;
    padding: .24rem;
    border: 1px solid #e2daf6;
    border-radius: 12px;
    background: rgba(255, 255, 255, .58);
}

.topic-practice-tab[b-e3btwjlakr] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    min-width: 7rem;
    border: 1px solid transparent;
    border-radius: 9px;
    background: transparent;
    color: #746b91;
    font-weight: 900;
    padding: .42rem .72rem;
    cursor: pointer;
    transition: background 120ms ease, color 120ms ease, border-color 120ms ease;
}

.topic-practice-tab span[b-e3btwjlakr] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.45rem;
    min-height: 1.45rem;
    border-radius: 999px;
    background: rgba(116, 107, 145, .12);
    font-size: .74rem;
}

.topic-practice-tab:hover[b-e3btwjlakr] {
    color: #5f4fb8;
    background: rgba(142, 107, 232, .08);
}

.topic-practice-tab.active[b-e3btwjlakr] {
    border-color: #d8cdf7;
    background: #fff;
    color: var(--primary-strong);
    box-shadow: 0 8px 16px rgba(88, 67, 158, .1);
}

.empty-topics[b-e3btwjlakr] {
    margin: 0;
    color: var(--muted);
    padding: 1rem;
    border: 1px dashed #d8cef5;
    border-radius: 12px;
    background: rgba(255, 255, 255, .58);
}

.topic-table-wrap[b-e3btwjlakr] { min-height: 0; overflow: auto; }
.topic-table[b-e3btwjlakr] { width: 100%; border-collapse: collapse; min-width: 500px; }
.topic-table th[b-e3btwjlakr],
.topic-table td[b-e3btwjlakr] {
    border-bottom: 1px solid #e8e1f8;
    padding: .82rem .65rem;
    text-align: left;
}

.topic-table th[b-e3btwjlakr] {
    color: #6b628c;
    font-size: .78rem;
    text-transform: uppercase;
}

.topic-table td:nth-child(2)[b-e3btwjlakr],
.topic-table th:nth-child(2)[b-e3btwjlakr] {
    width: 7rem;
    text-align: center;
}

.topic-table td:last-child[b-e3btwjlakr],
.topic-table th:last-child[b-e3btwjlakr] {
    width: 6.5rem;
    text-align: right;
}

.topic-table.practiced td:nth-child(2)[b-e3btwjlakr],
.topic-table.practiced th:nth-child(2)[b-e3btwjlakr] {
    width: 6.5rem;
    text-align: right;
}

.topic-link[b-e3btwjlakr] {
    border: 0;
    background: transparent;
    padding: 0;
    color: var(--primary-strong);
    font-weight: 900;
    text-align: left;
    line-height: 1.45;
}

.topic-link:hover[b-e3btwjlakr] { text-decoration: underline; }

.topic-practice-btn[b-e3btwjlakr] {
    border: 1px solid var(--button-primary-border);
    border-radius: var(--button-radius);
    background: var(--button-primary-bg);
    color: #fff;
    padding: .36rem .72rem;
    font-size: .86rem;
    font-weight: 900;
    line-height: 1;
    box-shadow: var(--button-primary-shadow);
    transition: transform .16s ease, box-shadow .16s ease;
}

.topic-practice-btn:hover:not(:disabled)[b-e3btwjlakr] {
    transform: translateY(-1px);
    box-shadow: var(--button-primary-shadow-hover);
}

.topic-practice-btn:disabled[b-e3btwjlakr] {
    opacity: .55;
    cursor: not-allowed;
}

@media (max-height: 900px) and (min-width: 981px) {
    .exam-attempt-review-page.juicy-theme[b-e3btwjlakr] {
        --review-panel-gap: .45rem;
        grid-template-rows: auto auto minmax(0, auto) minmax(0, 1fr) auto;
    }

    .review-page-actions[b-e3btwjlakr] { padding: .28rem; }
}

@media (max-width: 980px) {
    .exam-attempt-review-page.juicy-theme[b-e3btwjlakr] {
        --review-panel-gap: .45rem;
        grid-template-rows: auto auto minmax(0, auto) minmax(0, 1fr) auto;
    }

    .progress-toolbar[b-e3btwjlakr] { grid-template-columns: 1fr; align-items: stretch; }
    .review-stats[b-e3btwjlakr] { justify-content: flex-end; }
}

@media (max-width: 640px) {
    .exam-attempt-review-page.juicy-theme[b-e3btwjlakr] {
        --review-panel-gap: .38rem;
        grid-template-rows: auto auto minmax(0, auto) minmax(0, 1fr) auto;
    }

    .progress-stage[b-e3btwjlakr] { height: 218px; }
    .review-page-actions[b-e3btwjlakr] { width: 100%; justify-content: stretch; }
    .review-context[b-e3btwjlakr] { padding: 0 .15rem; }
    .review-stats[b-e3btwjlakr] { justify-content: flex-start; }
    .topic-table[b-e3btwjlakr] { min-width: 440px; }
    .topic-practice-tabs[b-e3btwjlakr] { width: 100%; }
    .topic-practice-tab[b-e3btwjlakr] { flex: 1; min-width: 0; }
    .topic-strengthening-shell[b-e3btwjlakr] { padding: .55rem .62rem; }
}

@media (max-width: 520px) {
    .review-tabs[b-e3btwjlakr] { padding-left: .4rem; padding-right: .4rem; }
    .tab-btn[b-e3btwjlakr] { flex: 1; }
}

.answer-summary[b-e3btwjlakr] { grid-template-rows: auto minmax(0, 1fr); gap: 1.2rem; }
.summary-score[b-e3btwjlakr] { position: relative; padding: .65rem .4rem .9rem; border-bottom: 1px solid var(--line); }
.summary-score > span[b-e3btwjlakr] { display: block; color: var(--muted); font-size: .85rem; font-weight: 750; }
.summary-score-value[b-e3btwjlakr] { display: flex; align-items: center; flex-wrap: wrap; gap: .75rem; margin: .2rem 0 .55rem; padding-right: 15rem; }
.summary-score-value strong[b-e3btwjlakr] { font-size: clamp(2rem, 4vw, 3rem); line-height: 1.2; font-variant-numeric: tabular-nums; }
.summary-score.passed strong[b-e3btwjlakr] { color: #16805e; }
.summary-score.failed strong[b-e3btwjlakr] { color: #b94862; }
.score-status[b-e3btwjlakr] { border-radius: 999px; padding: .2rem .48rem; font-size: .74rem; font-weight: 850; white-space: nowrap; }
.score-status.passed[b-e3btwjlakr] { color: var(--chip-pass-text); background: var(--chip-pass-bg); }
.score-status.failed[b-e3btwjlakr] { color: var(--chip-fail-text); background: var(--chip-fail-bg); }
.summary-score small[b-e3btwjlakr] { margin-left: .5rem; color: var(--muted); font-size: .9rem; font-weight: 500; }
.summary-score p[b-e3btwjlakr] { margin: .35rem 0 0; color: var(--ink); line-height: 1.7; }
.summary-score .summary-note[b-e3btwjlakr] { color: var(--muted); font-size: .82rem; }
.summary-completed[b-e3btwjlakr] { position: absolute; top: .65rem; right: .4rem; display: grid; gap: .3rem; text-align: right; color: var(--muted); font-variant-numeric: tabular-nums; }
.summary-completed span[b-e3btwjlakr] { font-size: .8rem; }
.summary-completed time[b-e3btwjlakr] { font-size: 1.1rem; font-weight: 650; }
.summary-topics[b-e3btwjlakr] { min-height: 0; overflow: auto; display: grid; align-content: start; }
.summary-topics-header[b-e3btwjlakr],
.summary-topic[b-e3btwjlakr] { display: grid; grid-template-columns: minmax(0, 1.4fr) repeat(2, minmax(0, 1fr)) 6rem; align-items: center; column-gap: 1.2rem; padding: .65rem .85rem; }
.summary-topics-header[b-e3btwjlakr] { position: sticky; top: 0; z-index: 1; background: #f9f7fd; border-bottom: 1px solid var(--line); color: var(--muted); font-size: .8rem; font-weight: 750; }
.summary-topic[b-e3btwjlakr] { border-bottom: 1px solid var(--line); background: rgba(255,255,255,.6); }
.summary-topic:last-child[b-e3btwjlakr] { border-bottom: 0; }
.summary-topic h2[b-e3btwjlakr] { margin: 0; font-size: .92rem; line-height: 1.55; overflow-wrap: anywhere; color: var(--ink); }
.summary-topic-link[b-e3btwjlakr] { color: var(--primary-strong); text-decoration: none; border-radius: .2rem; }
.summary-topic-link:hover[b-e3btwjlakr] { text-decoration: underline; }
.summary-topic-link:focus-visible[b-e3btwjlakr] { outline: 2px solid #8068cf; outline-offset: 3px; }
.summary-question-group[b-e3btwjlakr] { min-width: 0; display: flex; align-items: baseline; gap: .7rem; }
.summary-group-label[b-e3btwjlakr] { display: none; flex-shrink: 0; font-size: .85rem; font-weight: 750; }
.summary-question-group.correct[b-e3btwjlakr] { color: #16805e; }
.summary-question-group.wrong[b-e3btwjlakr] { color: #b94862; }
.summary-question-links[b-e3btwjlakr] { display: flex; flex-wrap: wrap; gap: .4rem; }
.summary-question-item[b-e3btwjlakr] { display: inline-flex; align-items: center; gap: .25rem; }
.summary-question-item small[b-e3btwjlakr] { font-size: .7rem; font-weight: 500; }
.summary-question-link[b-e3btwjlakr] { box-sizing: border-box; display: inline-flex; flex: 0 0 auto; align-items: center; width: 2.2rem; height: 2.2rem; justify-content: center; padding: 0; border: 1px solid currentColor; border-radius: 7px; background: transparent; color: inherit; font: inherit; font-size: .9rem; line-height: 1; font-weight: 700; font-variant-numeric: tabular-nums; cursor: pointer; }
.summary-question-link:hover[b-e3btwjlakr] { background: rgba(128,104,207,.08); }
.summary-question-link:focus-visible[b-e3btwjlakr] { outline: 2px solid #8068cf; outline-offset: 2px; }
.summary-none[b-e3btwjlakr] { color: var(--muted); font-size: .85rem; }
.summary-practice[b-e3btwjlakr] { justify-self: end; }
.summary-practice-btn[b-e3btwjlakr] { display: inline-flex; align-items: center; gap: .35rem; border: 1px solid transparent; border-radius: 6px; padding: .45rem .35rem; background: transparent; color: #625c70; font: inherit; font-size: .82rem; font-weight: 650; white-space: nowrap; cursor: pointer; transition: color 140ms ease, background 140ms ease; }
.summary-practice-btn span[b-e3btwjlakr] { color: #938c9f; }
.summary-practice-btn:hover:not(:disabled)[b-e3btwjlakr] { color: #51436f; background: #f1eef6; }
.summary-practice-btn:focus-visible[b-e3btwjlakr] { outline: 2px solid #8068cf; outline-offset: 2px; }
.summary-practice-btn:disabled[b-e3btwjlakr] { opacity: .55; cursor: wait; }
@media (max-width: 640px) {
    .answer-summary[b-e3btwjlakr] { gap: .7rem; }
    .summary-score-value[b-e3btwjlakr] { padding-right: 0; }
    .summary-completed[b-e3btwjlakr] { position: static; margin: .65rem 0; text-align: left; }
    .summary-topics-header[b-e3btwjlakr] { display: none; }
    .summary-topic[b-e3btwjlakr] { grid-template-columns: minmax(0, 1fr) auto; gap: .5rem; padding: .75rem .4rem; }
    .summary-topic h2[b-e3btwjlakr] { grid-column: 1; grid-row: 1; }
    .summary-practice[b-e3btwjlakr] { grid-column: 2; grid-row: 1; }
    .summary-question-group[b-e3btwjlakr] { grid-column: 1 / -1; }
    .summary-group-label[b-e3btwjlakr] { display: inline; }
    .summary-score p[b-e3btwjlakr] { font-size: .85rem; }
}
/* /Pages/ExamAttemptsPanel.razor.rz.scp.css */
.attempts-content.light-theme[b-zqipm3pvgr] {
    --page-text: #3b3455;
    --muted-text: #827a92;
    --accent: #7359c2;
    --ink-soft: #514866;
    --chip-pass-bg: rgba(40, 178, 127, .12);
    --chip-pass-text: #16805e;
    --chip-fail-bg: rgba(220, 98, 123, .12);
    --chip-fail-text: #b94862;
}

.attempts-content[b-zqipm3pvgr] { display: flex; flex-direction: column; gap: .55rem; height: auto; }
.attempts-toolbar[b-zqipm3pvgr] { display: flex; align-items: center; justify-content: space-between; gap: 1rem; border-bottom: 1px solid rgba(104, 82, 158, .13); padding: .05rem .05rem .7rem; }
.attempts-title-block[b-zqipm3pvgr] { display: grid; }
.attempts-toolbar h2[b-zqipm3pvgr] { margin: 0; color: #453968; font-size: 1.35rem; line-height: 1.25; font-weight: 900; }

.filter-toolbar[b-zqipm3pvgr] { display: flex; align-items: center; gap: .45rem; flex-wrap: wrap; justify-content: flex-end; padding: 0; background: transparent !important; border: 0 !important; box-shadow: none !important; }
.filter-toolbar[b-zqipm3pvgr]  .sort-toggle { min-height: 2.15rem; border-color: #d9d0e8; border-radius: 999px; padding-inline: .75rem; background: rgba(255, 255, 255, .75); box-shadow: none; }
.filter-toolbar[b-zqipm3pvgr]  .sort-toggle:hover,
.filter-toolbar[b-zqipm3pvgr]  .sort-toggle.active { border-color: #baa8dd; background: #f8f4ff; box-shadow: none; }

.attempts-scroll-view[b-zqipm3pvgr] { overflow: visible; background: transparent; }
.attempts-grid[b-zqipm3pvgr] { display: flex; flex-direction: column; }
.attempt-card[b-zqipm3pvgr] {
    display: grid;
    grid-template-columns: minmax(13rem, .8fr) minmax(8rem, auto) minmax(21rem, 1.25fr) auto;
    align-items: center;
    gap: .9rem;
    border: 0 !important;
    border-bottom: 1px solid rgba(111, 92, 151, .14) !important;
    border-radius: 0 !important;
    padding: .75rem .2rem !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none;
}
.attempt-card:last-child[b-zqipm3pvgr] { border-bottom: 0 !important; }
.attempt-card:hover[b-zqipm3pvgr] { background: rgba(250, 248, 255, .48) !important; }

.card-top[b-zqipm3pvgr] { display: grid; gap: .12rem; min-width: 0; }
.card-title-block[b-zqipm3pvgr] { display: grid; gap: .08rem; min-width: 0; }
.subject[b-zqipm3pvgr] { margin: 0; color: var(--accent); font-weight: 800; font-size: .84rem; line-height: 1.25; }
.card-top h2[b-zqipm3pvgr] { margin: 0; overflow: hidden; color: var(--page-text); font-size: 1.04rem; line-height: 1.4; text-overflow: ellipsis; white-space: nowrap; }

.card-completed-time[b-zqipm3pvgr] { display: grid; justify-items: end; gap: .14rem; min-width: 0; text-align: right; }
.card-completed-time span[b-zqipm3pvgr] { color: #81798e; font-size: .76rem; font-weight: 800; line-height: 1.15; white-space: nowrap; }
.card-completed-time time[b-zqipm3pvgr] { color: var(--ink-soft); font-size: .84rem; font-weight: 700; line-height: 1.25; white-space: nowrap; font-variant-numeric: tabular-nums; }

.score-panel[b-zqipm3pvgr] { --correct: 0%; display: grid; grid-template-columns: minmax(7.5rem, auto) minmax(11rem, 1fr); align-items: center; gap: .9rem; min-width: 0; }
.score-summary[b-zqipm3pvgr] { display: grid; align-content: center; gap: .2rem; min-width: 0; }
.metric-label[b-zqipm3pvgr],
.chart-header span[b-zqipm3pvgr] { color: var(--muted-text); font-size: .78rem; font-weight: 800; line-height: 1.15; white-space: nowrap; }
.score-value[b-zqipm3pvgr] { display: flex; align-items: center; gap: .42rem; min-width: 0; }
.score-summary strong[b-zqipm3pvgr] { color: var(--page-text); font-size: 1.18rem; font-weight: 900; line-height: 1.1; white-space: nowrap; font-variant-numeric: tabular-nums; }
.score-summary.failed strong[b-zqipm3pvgr] { color: #b94862; }
.score-summary.passed strong[b-zqipm3pvgr] { color: #16805e; }
.score-summary.in-progress strong[b-zqipm3pvgr] { color: #9a651d; }
.status-chip[b-zqipm3pvgr] { border-radius: 999px; padding: .2rem .48rem; font-size: .74rem; font-weight: 850; white-space: nowrap; }
.status-chip.passed[b-zqipm3pvgr] { color: var(--chip-pass-text); background: var(--chip-pass-bg); }
.status-chip.failed[b-zqipm3pvgr] { color: var(--chip-fail-text); background: var(--chip-fail-bg); }
.status-chip.in-progress[b-zqipm3pvgr] { color: #92400e; background: rgba(245, 158, 11, .14); }

.correct-chart[b-zqipm3pvgr] { display: grid; align-content: center; gap: .4rem; min-width: 0; }
.chart-header[b-zqipm3pvgr] { display: flex; align-items: baseline; justify-content: space-between; gap: .75rem; }
.chart-header strong[b-zqipm3pvgr] { color: var(--ink-soft); font-size: .88rem; line-height: 1.15; white-space: nowrap; }
.answer-bar[b-zqipm3pvgr] { height: .3rem; overflow: hidden; border-radius: 999px; background: #eae6ef; }
.answer-bar span[b-zqipm3pvgr] { display: block; width: var(--correct); height: 100%; border-radius: inherit; background: linear-gradient(90deg, #8268d3, #55b5aa); }

.card-footer[b-zqipm3pvgr] { display: flex; justify-content: flex-end; }
.attempt-action[b-zqipm3pvgr] { border: 1px solid #d5cae8; border-radius: 999px; padding: .45rem .75rem; color: #654ca8; background: #faf8ff; font-weight: 850; font-size: .84rem; cursor: pointer; }
.attempt-action:hover[b-zqipm3pvgr] { border-color: #a995d1; color: #533a98; background: #f4effe; box-shadow: none; }
.attempts-content[b-zqipm3pvgr]  .pagination-nav { margin-top: 0; border-top-color: rgba(111, 92, 151, .14); background: transparent; box-shadow: none; }

@media (max-width: 900px) {
    .attempt-card[b-zqipm3pvgr] { grid-template-columns: minmax(11rem, .8fr) minmax(7.5rem, auto) minmax(16rem, 1.1fr) auto; gap: .6rem; }
}

@media (max-width: 700px) {
    .attempts-toolbar[b-zqipm3pvgr] { align-items: stretch; flex-direction: column; gap: .55rem; }
    .filter-toolbar[b-zqipm3pvgr] { justify-content: flex-start; }
    .attempt-card[b-zqipm3pvgr] { grid-template-columns: 1fr; gap: .55rem; padding: .75rem .2rem !important; }
    .card-completed-time[b-zqipm3pvgr] { justify-items: start; text-align: left; }
    .score-panel[b-zqipm3pvgr] { grid-template-columns: 1fr; gap: .6rem; }
    .card-footer[b-zqipm3pvgr] { justify-content: stretch; }
    .attempt-action[b-zqipm3pvgr] { width: 100%; }
}
/* /Pages/ExamsPage.razor.rz.scp.css */
.exams-page[b-1u9vzj7r0u] {
    --page-bottom-space: 2rem;
    background:
        radial-gradient(circle at 8% 12%, rgba(255, 214, 237, .18), transparent 24rem),
        radial-gradient(circle at 92% 14%, rgba(221, 215, 255, .18), transparent 26rem);
}

.resume-banner[b-1u9vzj7r0u] {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 1rem;
    overflow: hidden;
    margin-bottom: .85rem;
    border: 1px solid rgba(216, 150, 62, .28);
    border-radius: .95rem;
    padding: .78rem .9rem;
    background: linear-gradient(105deg, rgba(255, 246, 224, .92), rgba(255, 252, 246, .76));
    box-shadow: 0 10px 28px rgba(169, 113, 46, .07);
}

.resume-banner[b-1u9vzj7r0u]::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 4px;
    background: linear-gradient(180deg, #f0b85f, #d68334);
}

.resume-banner-main[b-1u9vzj7r0u] { display: flex; align-items: center; gap: .75rem; min-width: 0; }
.resume-banner-main > div[b-1u9vzj7r0u] { display: grid; gap: .06rem; min-width: 0; }
.resume-status[b-1u9vzj7r0u] {
    flex-shrink: 0;
    border-radius: 999px;
    padding: .26rem .52rem;
    color: #8a4b0f;
    background: rgba(237, 171, 70, .2);
    font-size: .8rem;
    font-weight: 900;
}
.resume-banner-main p[b-1u9vzj7r0u],
.resume-banner-main h2[b-1u9vzj7r0u] { margin: 0; }
.resume-banner-main p[b-1u9vzj7r0u] { color: #9e5d18; font-size: .84rem; font-weight: 900; }
.resume-banner-main h2[b-1u9vzj7r0u] { overflow: hidden; color: #4b3a2d; font-size: 1.08rem; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.resume-banner-main div > span[b-1u9vzj7r0u] { color: #7b6c60; font-size: .84rem; line-height: 1.45; }
.resume-timer[b-1u9vzj7r0u] { display: grid; justify-items: end; gap: .05rem; min-width: 5rem; }
.resume-timer span[b-1u9vzj7r0u] { color: #806f5f; font-size: .8rem; font-weight: 800; }
.resume-timer strong[b-1u9vzj7r0u] { color: #9a5a0d; font-size: 1.28rem; font-variant-numeric: tabular-nums; }
.resume-timer.urgent strong[b-1u9vzj7r0u] { color: #c2415a; }
.resume-button[b-1u9vzj7r0u] {
    min-height: 2.3rem;
    border: 0;
    border-radius: 999px;
    padding: .42rem .85rem;
    color: #fff;
    background: linear-gradient(135deg, #b87324, #935414);
    box-shadow: 0 7px 15px rgba(154, 90, 13, .15);
    font-size: .9rem;
    font-weight: 900;
    cursor: pointer;
}

.exam-workspace[b-1u9vzj7r0u] {
    display: grid;
    border: 1px solid rgba(218, 207, 241, .88);
    border-radius: .95rem;
    background: rgba(255, 255, 255, .64);
    box-shadow: 0 6px 18px rgba(105, 85, 155, .06);
    overflow: hidden;
}

.page-container > .exam-workspace[b-1u9vzj7r0u] { margin-top: 1rem; }
.resume-banner + .exam-workspace[b-1u9vzj7r0u] { margin-top: 0; }

.exam-tabs[b-1u9vzj7r0u] {
    display: flex;
    gap: .25rem;
    padding: .2rem .65rem 0;
    border-bottom: 1px solid #e4d9ef;
    background: rgba(249, 247, 253, .7);
}

.exam-tab[b-1u9vzj7r0u] {
    margin-bottom: -1px;
    padding: .5rem 1rem;
    border: 0;
    border-bottom: 2px solid transparent;
    color: #695e7d;
    background: transparent;
    font: inherit;
    font-weight: 750;
    cursor: pointer;
}

.exam-tab:hover[b-1u9vzj7r0u] { background: rgba(128, 104, 207, .06); }
.exam-tab.active[b-1u9vzj7r0u] {
    border-bottom-color: #8068cf;
    color: #6d55b8;
}
.exam-tab:focus-visible[b-1u9vzj7r0u] { outline: 2px solid #8068cf; outline-offset: -3px; }

.exam-tab-content[b-1u9vzj7r0u] {
    min-height: 17rem;
    padding: .9rem;
}

.exam-tab-content[b-1u9vzj7r0u]  > *:first-child { min-height: 17rem; }

.attempts-section[b-1u9vzj7r0u] {
    display: grid;
    margin-top: 1rem;
    scroll-margin-top: 5rem;
    border: 1px solid rgba(109, 88, 160, .12);
    border-radius: 1.1rem;
    padding: 1rem;
    background: rgba(255, 255, 255, .57);
    box-shadow: 0 13px 34px rgba(77, 56, 130, .06);
    backdrop-filter: blur(7px);
}

.attempts-section[b-1u9vzj7r0u]  > .attempts-content { height: auto; }

@media (max-width: 760px) {
    .exams-page .page-container[b-1u9vzj7r0u] { width: min(100% - 1rem, 720px); }
    .exam-tab-content[b-1u9vzj7r0u],
    .exam-tab-content[b-1u9vzj7r0u]  > *:first-child { min-height: 0; }
    .resume-banner[b-1u9vzj7r0u] { grid-template-columns: 1fr auto; }
    .resume-button[b-1u9vzj7r0u] { grid-column: 1 / -1; width: 100%; }
}

@media (max-width: 480px) {
    .exam-tabs[b-1u9vzj7r0u] { padding-left: .4rem; padding-right: .4rem; }
    .exam-tab[b-1u9vzj7r0u] { flex: 1; min-width: 0; }
    .exam-tab-content[b-1u9vzj7r0u] { padding: .7rem; }
    .attempts-section[b-1u9vzj7r0u] { border-radius: .9rem; padding: .7rem; }
    .resume-banner[b-1u9vzj7r0u] { grid-template-columns: 1fr; }
    .resume-timer[b-1u9vzj7r0u] { justify-items: start; }
}
/* /Pages/ExamTemplatesPanel.razor.rz.scp.css */
.templates-content[b-54lubeixqi] { display: grid; height: 100%; }
.template-shell[b-54lubeixqi] { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(15rem, .65fr); gap: .8rem; align-items: stretch; }
.settings-panel[b-54lubeixqi],
.summary-panel[b-54lubeixqi] { box-sizing: border-box; border: 1px solid rgba(108, 84, 166, .13); border-radius: 1rem; background: rgba(255, 255, 255, .7); }
.settings-panel[b-54lubeixqi] { padding: 1rem; }
.summary-panel[b-54lubeixqi] {
    position: sticky;
    top: 4.7rem;
    display: grid;
    gap: .8rem;
    align-content: start;
    padding: 1rem;
    background:
        radial-gradient(circle at 100% 0, rgba(241, 210, 231, .45), transparent 15rem),
        rgba(255, 255, 255, .78);
}

.panel-heading[b-54lubeixqi] { display: flex; align-items: center; gap: .75rem; margin-bottom: .9rem; }
.panel-heading.compact[b-54lubeixqi] { margin-bottom: .1rem; }
.panel-heading h2[b-54lubeixqi] { margin: 0; color: #3f345f; font-size: 1.14rem; line-height: 1.3; font-weight: 900; }
.panel-heading p[b-54lubeixqi] { margin: .12rem 0 0; color: #81798e; font-size: .88rem; line-height: 1.5; }
.panel-index[b-54lubeixqi] {
    display: grid;
    place-items: center;
    width: 2.35rem;
    height: 2.35rem;
    border-radius: 50%;
    color: #fff;
    background: linear-gradient(145deg, #977fe6, #7458c9);
    box-shadow: 0 8px 17px rgba(117, 89, 207, .2);
    font-size: .8rem;
    font-weight: 900;
    flex: 0 0 auto;
}
.summary-panel .panel-index[b-54lubeixqi] { background: linear-gradient(145deg, #df8bb9, #b4689c); box-shadow: 0 8px 17px rgba(188, 101, 154, .18); }

.summary-list[b-54lubeixqi] { display: grid; gap: .15rem; margin: 0; }
.summary-list div[b-54lubeixqi] { display: grid; grid-template-columns: 3.5rem minmax(0, 1fr); align-items: baseline; gap: .55rem; min-height: 2.1rem; border-bottom: 1px solid rgba(108, 84, 166, .1); padding: .45rem .1rem; }
.summary-list dt[b-54lubeixqi] { color: #81798e; font-size: .8rem; font-weight: 800; }
.summary-list dd[b-54lubeixqi] { margin: 0; color: #40375c; font-size: .94rem; font-weight: 900; line-height: 1.4; }
.start-button[b-54lubeixqi] {
    min-height: 3rem;
    width: 100%;
    border: 1px solid rgba(111, 79, 205, .72);
    border-radius: .82rem;
    padding: .55rem .9rem;
    color: #fff;
    background: linear-gradient(145deg, #9076e1, #6e4fc5);
    font-size: .98rem;
    font-weight: 900;
    cursor: pointer;
    box-shadow: 0 10px 20px rgba(104, 75, 189, .18);
    transition: box-shadow 120ms ease, transform 120ms ease, opacity 120ms ease;
}
.start-button:not(:disabled):hover[b-54lubeixqi] { box-shadow: 0 13px 25px rgba(104, 75, 189, .24); transform: translateY(-1px); }
.start-button:disabled[b-54lubeixqi] { opacity: .6; cursor: default; }


.selection-panel[b-54lubeixqi] { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .7rem; }
.selection-field[b-54lubeixqi] { display: grid; gap: .42rem; min-width: 0; color: #756d87; font-size: .88rem; font-weight: 900; }
.selection-field:first-child[b-54lubeixqi] { grid-column: 1 / -1; }
.selection-field select[b-54lubeixqi] { box-sizing: border-box; min-height: 2.8rem; width: 100%; border: 1px solid #ded6ec; border-radius: .78rem; padding: .45rem .72rem; color: #40375c; background: rgba(255,255,255,.86); font: inherit; font-size: 1rem; font-weight: 750; }
.selection-field select:focus-visible[b-54lubeixqi] { outline: none; border-color: var(--color-primary); box-shadow: var(--ring-focus); }
.mode-group[b-54lubeixqi] { min-width: 0; margin: .85rem 0 0; border: 0; border-top: 1px solid rgba(108,84,166,.1); padding: .85rem 0 0; }
.mode-group legend[b-54lubeixqi] { padding: 0 .4rem 0 0; color: #756d87; font-size: .88rem; font-weight: 900; }
.mode-grid[b-54lubeixqi] { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .55rem; }
.mode-option[b-54lubeixqi] { display: grid; grid-template-columns: auto 1fr; gap: .3rem .5rem; align-content: start; border: 1px solid #ded6ec; border-radius: .82rem; padding: .7rem; background: rgba(255,255,255,.7); cursor: pointer; }
.mode-option.selected[b-54lubeixqi] { border-color: #8e73df; background: linear-gradient(145deg,#f7f3ff,#fff9fd); box-shadow: 0 0 0 2px rgba(155,132,239,.11); }
.mode-option:focus-within[b-54lubeixqi] { outline: 2px solid #8068cf; outline-offset: 2px; }
.mode-option input[b-54lubeixqi] { margin: .2rem 0 0; accent-color: #8068cf; }
.mode-option strong[b-54lubeixqi] { color: #4f3e74; font-size: .96rem; }
.mode-option span[b-54lubeixqi] { grid-column: 1 / -1; color: #81798e; font-size: .82rem; line-height: 1.55; }
.mode-group:disabled .mode-option[b-54lubeixqi] { opacity: .6; cursor: default; }
.state-card[b-54lubeixqi] { box-sizing: border-box; border: 1px solid rgba(108,84,166,.14); border-radius: .9rem; background: rgba(255,255,255,.72); min-height: 12rem; padding: 1.5rem; display: grid; place-items: center; color: var(--color-text-muted); text-align: center; }
@media (max-width: 1060px) {
    .template-shell[b-54lubeixqi] { grid-template-columns: 1fr; }
    .summary-panel[b-54lubeixqi] { position: static; }
}
@media (max-width: 760px) {
    .templates-content[b-54lubeixqi] { height: auto; }
    .selection-panel[b-54lubeixqi], .mode-grid[b-54lubeixqi] { grid-template-columns: 1fr; }
    .selection-field:first-child[b-54lubeixqi] { grid-column: auto; }
}
/* /Pages/ExplorePage.razor.rz.scp.css */
.explore-page[b-6rs2ltpksa] {
    overflow: hidden;
}

.explore-content[b-6rs2ltpksa] {
    position: relative;
    z-index: 1;
    width: min(100%, 1160px);
    margin: 0 auto;
    padding: clamp(2rem, 5vw, 4.25rem) 1rem 2rem;
}

.explore-content[b-6rs2ltpksa]::before {
    content: none;
}

.explore-content h1[b-6rs2ltpksa] {
    max-width: 46rem;
    margin: 0 auto clamp(2rem, 4.4vw, 3.5rem);
    color: #241a4d;
    font-size: clamp(1.75rem, 3.1vw, 3rem);
    font-weight: 900;
    line-height: 1.12;
    text-align: center;
    letter-spacing: 0;
    text-wrap: balance;
}

.explore-content h1[b-6rs2ltpksa]::before {
    content: "";
    display: block;
    width: 4.5rem;
    height: .24rem;
    margin: 0 auto 1rem;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--color-primary), #a9e0ff);
    box-shadow: 0 8px 18px rgb(127 105 217 / 18%);
}

.explore-card-grid[b-6rs2ltpksa] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
    gap: clamp(1rem, 2vw, 1.35rem);
}

[b-6rs2ltpksa] .explore-filter-toolbar {
    width: min(100%, 42rem);
    margin: 0 auto clamp(1.2rem, 2.6vw, 1.8rem);
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

[b-6rs2ltpksa] .explore-filter-toolbar .subject-filter {
    font-weight: 800;
}

.explore-card[b-6rs2ltpksa] {
    min-height: 18rem;
    padding: clamp(.82rem, 1.7vw, 1rem);
    border-radius: .72rem;
    border: 1px solid var(--control-border);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: .85rem;
    overflow: hidden;
    position: relative;
    isolation: isolate;
    color: var(--color-text-strong);
    background: var(--surface-translucent-soft);
    box-shadow: none;
}

.explore-card[b-6rs2ltpksa]::before,
.explore-card[b-6rs2ltpksa]::after {
    content: "";
    position: absolute;
    pointer-events: none;
    z-index: -1;
}

.explore-card[b-6rs2ltpksa]::before {
    content: none;
}

.explore-card[b-6rs2ltpksa]::after {
    content: none;
}

.explore-card:nth-child(1)[b-6rs2ltpksa]::before {
    content: none;
}

.explore-card:nth-child(2)[b-6rs2ltpksa]::before {
    content: none;
}

.explore-card-copy[b-6rs2ltpksa] {
    min-height: 0;
    position: relative;
    z-index: 1;
}

.explore-card-kicker[b-6rs2ltpksa],
.explore-card-muted[b-6rs2ltpksa] {
    margin: 0;
    color: var(--color-text-muted);
    font-size: .88rem;
    font-weight: 800;
    line-height: 1.45;
}

.explore-card-kicker[b-6rs2ltpksa] {
    display: inline-flex;
    align-items: center;
    min-height: 1.75rem;
    margin-bottom: .55rem;
    padding: .2rem .48rem;
    border: 1px solid #d9cdea;
    border-radius: 999px;
    color: var(--color-primary-emphasis);
    background: rgba(255, 255, 255, .5);
    box-shadow: none;
}

.explore-card-muted[b-6rs2ltpksa] {
    color: #8b82a8;
}

.explore-card h2[b-6rs2ltpksa] {
    margin: .55rem 0 0;
    color: #383548;
    font-size: clamp(1.02rem, 1.35vw, 1.12rem);
    font-weight: 850;
    line-height: 1.45;
    letter-spacing: 0;
    text-wrap: balance;
}

.explore-topic-meta[b-6rs2ltpksa] {
    margin: .72rem 0 0;
    color: var(--color-text-muted);
    font-size: .86rem;
    font-weight: 800;
    display: flex;
    align-items: center;
    gap: .45rem;
    flex-wrap: wrap;
}

.explore-topic-meta span[b-6rs2ltpksa] {
    display: inline-flex;
    align-items: center;
    min-height: 1.75rem;
    padding: .2rem .48rem;
    border: 1px solid #d9cdea;
    border-radius: 999px;
    background: rgba(255, 255, 255, .5);
}

.topic-practiced[b-6rs2ltpksa] {
    color: #2563eb;
}

.topic-correct-perfect[b-6rs2ltpksa] {
    color: var(--status-success-strong);
}

.explore-action[b-6rs2ltpksa] {
    width: 100%;
    min-height: 2.45rem;
    border: 1px solid var(--button-primary-border);
    border-radius: var(--button-radius);
    color: #fff;
    font-size: .92rem;
    font-weight: 900;
    letter-spacing: 0;
    cursor: pointer;
    position: relative;
    z-index: 1;
    box-shadow: var(--button-primary-shadow);
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}

.explore-action.blue[b-6rs2ltpksa] {
    background: var(--button-primary-bg);
    border-color: var(--button-primary-border);
}

.explore-action.green[b-6rs2ltpksa] {
    background: var(--button-success-bg);
    border-color: var(--button-success-border);
}

.explore-action.purple[b-6rs2ltpksa] {
    background: var(--button-primary-bg);
    border-color: var(--button-primary-border);
}

.explore-action:not(:disabled):hover[b-6rs2ltpksa],
.explore-action:not(:disabled):focus-visible[b-6rs2ltpksa] {
    box-shadow: var(--button-primary-shadow-hover);
}

.explore-action:focus-visible[b-6rs2ltpksa] {
    outline: none;
    box-shadow: var(--ring-focus), 0 18px 32px rgb(127 105 217 / 22%);
}

.explore-action:disabled[b-6rs2ltpksa] {
    opacity: .55;
    cursor: not-allowed;
}

.explore-status[b-6rs2ltpksa] {
    width: min(100%, 26rem);
    margin: 4rem auto 0;
    padding: 1rem 1.2rem;
    border: 1px solid var(--control-border);
    border-radius: .72rem;
    background: var(--surface-translucent-soft);
    color: var(--color-text-muted);
    text-align: center;
    box-shadow: none;
}

@media (max-width: 920px) {
    .explore-card-grid[b-6rs2ltpksa] {
        grid-template-columns: 1fr;
    }

    .explore-card[b-6rs2ltpksa] {
        min-height: 13.5rem;
    }
}

@media (max-width: 640px) {
    .explore-content[b-6rs2ltpksa] {
        padding-top: 1.55rem;
    }

    .explore-content h1[b-6rs2ltpksa] {
        margin-bottom: 1.45rem;
        font-size: clamp(1.55rem, 8vw, 2.2rem);
    }

    .explore-card[b-6rs2ltpksa] {
        min-height: 13rem;
        border-radius: .72rem;
    }

    [b-6rs2ltpksa] .explore-filter-toolbar {
        grid-template-columns: 1fr;
    }

    .explore-action[b-6rs2ltpksa] {
        min-height: 2.45rem;
    }
}
/* /Pages/HomePage.razor.rz.scp.css */
.home-page[b-kot4042h33] {
    min-height: 100vh;
    color: #302448;
    background:
        radial-gradient(ellipse at 8% 24%, #f9e8f5 0, transparent 45%),
        radial-gradient(ellipse at 92% 35%, #eae5fc 0, transparent 45%),
        linear-gradient(135deg, #fffafd, #f3f5ff);
}
.home-container[b-kot4042h33] { width: min(1400px, calc(100% - 4rem)); margin: 0 auto; }
.home-content[b-kot4042h33] { display: flex; align-items: center; min-height: calc(100svh - 8rem); padding: 2rem 0; }
.hero-board[b-kot4042h33] { width: 100%; display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 2rem; }
.hero-copy[b-kot4042h33] { position: relative; z-index: 1; }
.eyebrow[b-kot4042h33] { display: flex; align-items: center; gap: 1rem; margin: 0 0 1.4rem; color: #8868a5; font-size: 1.15rem; font-weight: 700; letter-spacing: .12em; }
.eyebrow[b-kot4042h33]::after { content: ""; height: 1px; width: 5rem; background: linear-gradient(90deg, #bda4d7, transparent); }
h1[b-kot4042h33] { margin: 0; }
.brand-title[b-kot4042h33] { display: block; font-size: clamp(4rem, 7vw, 6rem); font-weight: 850; letter-spacing: -.055em; line-height: 1.15; color: #6e4e97; }
.platform-title[b-kot4042h33] { display: block; margin-top: .65rem; font-size: clamp(1.8rem, 2.8vw, 2.6rem); line-height: 1.5; font-weight: 750; letter-spacing: .03em; }
.hero-actions[b-kot4042h33] { display: flex; flex-wrap: wrap; align-items: center; gap: .8rem; margin-top: 2.2rem; }
.hero-actions a[b-kot4042h33] { display: inline-flex; align-items: center; justify-content: center; gap: .7rem; min-height: 3rem; padding: .75rem 1.2rem; border-radius: 999px; text-decoration: none; font-size: 1.15rem; font-weight: 700; transition: transform .18s, box-shadow .18s; }
.primary-action[b-kot4042h33] { background: #8060ad; color: #fff; box-shadow: 0 8px 22px #8060ad25; }
.hero-actions .tutorial-link[b-kot4042h33] { color: #8a769a; padding-inline: .35rem; font-size: 1.05rem; }
.tutorial-link > span[b-kot4042h33] { font-size: 1.3rem; }
.hero-actions a:hover[b-kot4042h33] { transform: translateY(-2px); }
.repository-map[b-kot4042h33] { position: relative; width: 100%; aspect-ratio: 1; isolation: isolate; }
.repository-map[b-kot4042h33]::before { content: ""; position: absolute; inset: 0; z-index: -1; background-image: radial-gradient(#a58cc24a 1px, transparent 1px); background-size: 22px 22px; mask-image: radial-gradient(ellipse, #000 30%, transparent 70%); }
.map-orbit[b-kot4042h33] { position: absolute; width: 72%; aspect-ratio: 1; left: 14%; top: 14%; border: 1px solid #bda4d72e; border-radius: 50%; box-shadow: 0 0 0 2.1rem #cbb8e00c, 0 0 0 4.2rem #cbb8e00c; }
.map-lines[b-kot4042h33] { position: absolute; inset: 0; width: 100%; height: 100%; z-index: -1; }
.map-lines path[b-kot4042h33] { stroke: #bea7d4; stroke-width: 1.5; stroke-dasharray: 4 7; fill: none; }
.map-hub[b-kot4042h33], .map-node[b-kot4042h33] { position: absolute; display: flex; flex-direction: column; align-items: center; justify-content: center; transform: translate(-50%, -50%); border-radius: 50%; }
.map-hub[b-kot4042h33] { left: 50%; top: 50%; width: 30%; aspect-ratio: 1; gap: .5rem; color: #fff; background: linear-gradient(145deg, #b09bda, #77549e); border: 6px solid #ffffffd9; box-shadow: 0 15px 40px #75519b25; }
.map-hub svg[b-kot4042h33] { width: 3.2rem; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.map-hub strong[b-kot4042h33] { font-size: clamp(1.1rem, 1.6vw, 1.4rem); font-weight: 700; }
.map-node[b-kot4042h33] { width: 26%; aspect-ratio: 1; gap: .7rem; color: #65507c; text-decoration: none; border: 1px solid #ffffff; background: #ffffffd9; box-shadow: 0 10px 32px #73568f12; transition: transform .2s, box-shadow .2s, border-color .2s; }
.node-personal[b-kot4042h33] { left: 50%; top: 14%; }
.node-personal .node-icon[b-kot4042h33] { color: #9a85b2; }
.node-exams[b-kot4042h33] { left: 15.76%; top: 38.88%; }
.node-practices[b-kot4042h33] { left: 84.24%; top: 38.88%; }
.node-topics[b-kot4042h33] { left: 28.84%; top: 79.12%; }
.node-questions[b-kot4042h33] { left: 71.16%; top: 79.12%; }
.node-icon[b-kot4042h33] { display: flex; align-items: center; justify-content: center; width: 3.4rem; height: 3.4rem; color: #9b7db7; }
.node-icon svg[b-kot4042h33] { width: 100%; height: 100%; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.node-practices .node-icon[b-kot4042h33] { color: #789baf; }
.node-topics .node-icon[b-kot4042h33] { color: #739e95; }
.node-questions .node-icon[b-kot4042h33] { color: #b38a9e; }
.map-node strong[b-kot4042h33] { font-size: 1.35rem; font-weight: 700; }
.map-node:hover[b-kot4042h33] { transform: translate(-50%, calc(-50% - 5px)); border-color: #c4abd9; box-shadow: 0 16px 34px #73568f22; }
a:focus-visible[b-kot4042h33] { outline: 3px solid #9b7db7; outline-offset: 5px; }
.copyright[b-kot4042h33] { padding: 1rem 0 1.5rem; text-align: center; color: #93819f; font-size: .75rem; line-height: 1.7; }
@media (max-width: 960px) {
    .hero-board[b-kot4042h33] { grid-template-columns: 1fr; gap: 1.5rem; }
    .home-content[b-kot4042h33] { min-height: auto; padding-top: 3rem; }
    .hero-copy[b-kot4042h33] { text-align: center; }
    .eyebrow[b-kot4042h33], .hero-actions[b-kot4042h33] { justify-content: center; }
    .eyebrow[b-kot4042h33]::after { display: none; }
    .repository-map[b-kot4042h33] { max-width: 620px; justify-self: center; }
    .map-hub strong[b-kot4042h33] { font-size: 1.25rem; }
}
@media (max-width: 620px) {
    .home-container[b-kot4042h33] { width: calc(100% - 2rem); }
    .home-content[b-kot4042h33] { padding: 2rem 0 .5rem; }
    .brand-title[b-kot4042h33] { font-size: 4rem; }
    .platform-title[b-kot4042h33] { font-size: 1.8rem; }
    .hero-actions[b-kot4042h33] { margin-top: 1.5rem; gap: .5rem; }
    .hero-actions a[b-kot4042h33] { font-size: 1rem; padding: .65rem .95rem; }
    .hero-actions .tutorial-link[b-kot4042h33] { flex-basis: 100%; }
    .hero-board[b-kot4042h33] { gap: .5rem; }
    .node-icon[b-kot4042h33] { width: 2rem; height: 2rem; }
    .map-node[b-kot4042h33] { width: 27%; gap: .4rem; }
    .map-node strong[b-kot4042h33] { font-size: clamp(.85rem, 3.5vw, 1.1rem); }
    .map-hub[b-kot4042h33] { width: 32%; border-width: 4px; gap: .25rem; }
    .map-hub svg[b-kot4042h33] { width: 2rem; }
    .map-hub strong[b-kot4042h33] { font-size: clamp(.85rem, 3.5vw, 1.1rem); }
}
@media (prefers-reduced-motion: reduce) {
    .hero-actions a[b-kot4042h33], .map-node[b-kot4042h33] { transition: none; }
    .hero-actions a:hover[b-kot4042h33] { transform: none; }
    .map-node:hover[b-kot4042h33] { transform: translate(-50%, -50%); }
}
/* /Pages/PracticeSessionPage.razor.rz.scp.css */
.practice-session-page[b-g2leqzbit1] {
    --page-bottom-space: .5rem;
}

.practice-session-content[b-g2leqzbit1] {
    margin: 0 auto;
    max-width: 1040px;
    width: 100%;
    padding: 12px 16px 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.practice-card[b-g2leqzbit1] {
    width: min(100%, 640px);
    border-radius: 1rem;
    padding: 1.25rem;
    border: 1px solid var(--surface-border);
}

.practice-mode-banner[b-g2leqzbit1] {
    margin: 0 0 1rem;
    padding: .95rem 1rem;
    border: 1px solid #e5edf8;
    border-radius: .85rem;
    background: linear-gradient(135deg, rgba(138, 52, 224, .1) 0%, rgba(49, 100, 238, .08) 100%);
}

.practice-mode-title[b-g2leqzbit1] {
    margin: 0;
    color: #15396b;
    font-size: 1.35rem;
    line-height: 1.25;
}

.practice-card-header[b-g2leqzbit1] {
    display: flex;
    align-items: flex-start;
    gap: .75rem;
    justify-content: space-between;
}

.question-id[b-g2leqzbit1] {
    margin: 0;
    color: var(--color-text-subtle);
    font-size: .82rem;
    font-weight: 700;
}

.question-id a[b-g2leqzbit1] {
    color: inherit;
    text-decoration: none;
}

.question-id a:hover[b-g2leqzbit1] {
    text-decoration: underline;
}

.question-id a:focus-visible[b-g2leqzbit1] {
    border-radius: .2rem;
    outline: 2px solid var(--ring-focus-color);
    outline-offset: 2px;
}

.remaining-count[b-g2leqzbit1] {
    margin: 0;
    color: #475569;
    font-size: .82rem;
    font-weight: 700;
    white-space: nowrap;
}

.question-stem[b-g2leqzbit1] {
    margin: .65rem 0 1rem;
    color: #304d75;
    font-size: 1.1rem;
    line-height: 1.6;
}

.options-list[b-g2leqzbit1] {
    border: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: .7rem;
}

.option-item[b-g2leqzbit1] {
    position: relative;
    display: flex;
    align-items: flex-start;
    gap: .55rem;
    border: 1px solid #d9e2f1;
    border-radius: .6rem;
    padding: .8rem .9rem;
    color: #36537a;
    transition: transform 150ms ease, border-color 150ms ease, background-color 150ms ease;
}

.options-list:not(:disabled) .option-item[b-g2leqzbit1] {
    cursor: pointer;
}

.option-item input[type="radio"][b-g2leqzbit1] {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
}

.options-list:not(:disabled) .option-item:active[b-g2leqzbit1] {
    transform: scale(.985);
}

.options-list:not(:disabled) .option-item.selected[b-g2leqzbit1] {
    border-color: #9733ee;
    background-color: #f7efff;
    animation: option-select-b-g2leqzbit1 180ms ease-out;
}

.option-item:focus-within[b-g2leqzbit1] {
    outline: 2px solid var(--ring-focus-color);
    outline-offset: 3px;
}

.option-content[b-g2leqzbit1] {
    display: grid;
    gap: .2rem;
    min-width: 0;
}

.option-item.correct[b-g2leqzbit1] {
    border-color: #4cb879;
    background: #ecfdf3;
    animation: answer-correct-b-g2leqzbit1 460ms ease-out;
}

.option-item.correct[b-g2leqzbit1]::after {
    content: "";
    position: absolute;
    inset: -1px;
    border: 2px solid #4cb879;
    border-radius: inherit;
    opacity: 0;
    pointer-events: none;
    animation: success-ring-b-g2leqzbit1 500ms ease-out;
}

.option-item.wrong[b-g2leqzbit1] {
    border-color: #e47070;
    background: #fff1f1;
    animation: answer-wrong-b-g2leqzbit1 240ms ease-out;
}

.question-card[b-g2leqzbit1] {
    animation: question-enter-b-g2leqzbit1 230ms ease-out;
}

.result-text[b-g2leqzbit1],
.explanation-reveal[b-g2leqzbit1] {
    animation: feedback-enter-b-g2leqzbit1 200ms ease-out both;
}

.completion-icon[b-g2leqzbit1] {
    animation: completion-pop-b-g2leqzbit1 650ms ease-out;
}

@keyframes option-select-b-g2leqzbit1 {
    0% { transform: scale(.985); }
    65% { transform: scale(1.006); }
    100% { transform: scale(1); }
}

@keyframes answer-correct-b-g2leqzbit1 {
    0% { transform: scale(1); box-shadow: 0 0 0 0 rgba(76, 184, 121, .25); }
    40% { transform: scale(1.012); box-shadow: 0 0 16px 3px rgba(76, 184, 121, .18); }
    100% { transform: scale(1); box-shadow: 0 0 0 0 transparent; }
}

@keyframes success-ring-b-g2leqzbit1 {
    0% { transform: scale(1); opacity: .55; }
    100% { transform: scale(1.035, 1.18); opacity: 0; }
}

@keyframes answer-wrong-b-g2leqzbit1 {
    0%, 100% { transform: translateX(0); }
    25% { transform: translateX(-3px); }
    50% { transform: translateX(3px); }
    75% { transform: translateX(-1px); }
}

@keyframes question-enter-b-g2leqzbit1 {
    from { opacity: 0; transform: translateX(12px); }
    to { opacity: 1; transform: translateX(0); }
}

@keyframes feedback-enter-b-g2leqzbit1 {
    from { opacity: 0; transform: translateY(6px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes completion-pop-b-g2leqzbit1 {
    0% { transform: scale(.75); }
    45% { transform: scale(1.15); }
    70% { transform: scale(.96); }
    100% { transform: scale(1); }
}

@media (prefers-reduced-motion: reduce) {
    .question-card[b-g2leqzbit1],
    .option-item[b-g2leqzbit1],
    .option-item.correct[b-g2leqzbit1],
    .option-item.wrong[b-g2leqzbit1],
    .options-list:not(:disabled) .option-item.selected[b-g2leqzbit1],
    .option-item.correct[b-g2leqzbit1]::after,
    .result-text[b-g2leqzbit1],
    .explanation-reveal[b-g2leqzbit1],
    .completion-icon[b-g2leqzbit1] {
        animation: none;
        transition: none;
    }

    .options-list:not(:disabled) .option-item:active[b-g2leqzbit1] {
        transform: none;
    }
}

.result-text[b-g2leqzbit1] {
    margin: 1rem 0 .6rem;
    font-weight: 700;
}

.result-text.ok[b-g2leqzbit1] {
    color: #1f8f4f;
}

.result-text.bad[b-g2leqzbit1] {
    color: #c34141;
}

.practice-actions[b-g2leqzbit1] {
    width: min(100%, 22rem);
    margin: 1rem auto 0;
    display: flex;
    flex-direction: column;
    gap: .65rem;
}

.primary-btn[b-g2leqzbit1] {
    width: min(100%, 22rem);
    margin: 0 auto;
    display: block;
    border: none;
    border-radius: .65rem;
    padding: .7rem 1rem;
    background: linear-gradient(135deg, #8a34e0 0%, #9733ee 100%);
    color: #fff;
    font-size: 1rem;
    font-weight: 700;
    cursor: pointer;
}

.secondary-btn[b-g2leqzbit1] {
    width: min(100%, 22rem);
    margin: 0 auto;
    display: block;
    border: 1px solid #cbd5e1;
    border-radius: .65rem;
    padding: .7rem 1rem;
    background: #fff;
    color: #475569;
    font-size: 1rem;
    font-weight: 700;
    cursor: pointer;
}

.stop-practice-btn[b-g2leqzbit1] {
    margin: 1rem auto 0;
    display: block;
    border: none;
    background: transparent;
    color: var(--color-text-subtle);
    font-size: .95rem;
    font-weight: 700;
    cursor: pointer;
}

.stop-practice-btn:hover[b-g2leqzbit1] {
    color: #334155;
    text-decoration: underline;
}

.primary-btn:disabled[b-g2leqzbit1],
.secondary-btn:disabled[b-g2leqzbit1] {
    opacity: .55;
    cursor: not-allowed;
}

.status-text[b-g2leqzbit1] {
    color: var(--color-text-subtle);
}

.completion-card[b-g2leqzbit1] {
    text-align: center;
    padding: 2rem 1.25rem;
}

.completion-icon[b-g2leqzbit1] {
    margin: 0;
    font-size: 2rem;
}

.completion-title[b-g2leqzbit1] {
    margin: .75rem 0;
    color: #15396b;
}

.completion-meta[b-g2leqzbit1] {
    margin: .15rem 0;
    color: var(--color-text-subtle);
}

.completion-actions[b-g2leqzbit1] {
    width: min(100%, 22rem);
    margin: 1.8rem auto 0;
    display: flex;
    flex-direction: column;
    gap: .65rem;
}

.completion-link[b-g2leqzbit1] {
    box-sizing: border-box;
    text-decoration: none;
}

.completion-link:hover[b-g2leqzbit1] {
    border-color: #94a3b8;
    background: #f8fafc;
}
/* /Pages/PracticesPage.razor.rz.scp.css */
.practices-page[b-fwppv5ewt4] {
    --practice-ink: #2f3152;
    --practice-muted: #7b7694;
    --practice-purple: #8068cf;
}

.filter-panel[b-fwppv5ewt4] {
    border: 1px solid rgba(218, 207, 241, .88);
    border-radius: .95rem;
    padding: .38rem;
    background: rgba(255, 255, 255, .64);
    box-shadow: 0 6px 18px rgba(105, 85, 155, .06);
}

.practices-content[b-fwppv5ewt4]  .filter-toolbar {
    border: 0;
    border-radius: .72rem;
    background: transparent;
}

.practices-content[b-fwppv5ewt4]  .filter-toolbar.has-leading.has-sort {
    grid-template-columns: minmax(17rem, 1.25fr) minmax(10rem, .6fr) minmax(10rem, .6fr) auto;
}

.practices-content[b-fwppv5ewt4]  .filter-toolbar.has-leading.has-sort .subject-filter,
.practices-content[b-fwppv5ewt4]  .filter-toolbar.has-leading.has-sort .sort-toggle {
    white-space: nowrap;
}

.wrong-only-toggle[b-fwppv5ewt4] {
    min-height: 2.45rem;
    border: 1px solid #e4d9ef;
    border-radius: var(--button-radius);
    padding: .43rem .72rem;
    display: inline-flex;
    align-items: center;
    gap: .42rem;
    color: #695e7d;
    background: rgba(255, 255, 255, .9);
    font-size: .9rem;
    font-weight: 850;
    white-space: nowrap;
    cursor: pointer;
    transition: border-color 120ms ease, box-shadow 120ms ease, background 120ms ease;
}

.wrong-only-indicator[b-fwppv5ewt4] {
    width: 1.15rem;
    height: 1.15rem;
    border-radius: 50%;
    display: grid;
    place-items: center;
    color: #fff;
    background: #c8bfd7;
    font-size: .8rem;
    font-weight: 900;
    line-height: 1;
}

.wrong-only-toggle:hover[b-fwppv5ewt4] {
    border-color: #d8a4b2;
    box-shadow: 0 6px 14px rgba(194, 78, 104, .1);
}

.wrong-only-toggle:focus-visible[b-fwppv5ewt4] {
    outline: none;
    box-shadow: var(--ring-focus);
}

.wrong-only-toggle.active[b-fwppv5ewt4] {
    border-color: rgba(220, 95, 119, .42);
    color: #b7435d;
    background: rgba(255, 239, 243, .96);
}

.wrong-only-toggle.active .wrong-only-indicator[b-fwppv5ewt4] { background: #dc627a; }

.practices-table[b-fwppv5ewt4] {
    min-height: 0;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
}

.practices-header[b-fwppv5ewt4],
.answer-event-row[b-fwppv5ewt4] {
    display: grid;
    grid-template-columns: 128px 142px 104px minmax(150px, 1fr) 68px 54px;
    align-items: center;
    column-gap: .65rem;
}

.practices-header[b-fwppv5ewt4] {
    padding: .68rem 1rem .58rem 2rem;
    color: #9992a8;
    background: rgba(249, 247, 253, .7);
    font-size: .875rem;
    font-weight: 900;
    letter-spacing: .06em;
}

.practices-header > :nth-child(5)[b-fwppv5ewt4] {
    justify-self: end;
}

.practice-column-sort-button[b-fwppv5ewt4] {
    border: 0;
    padding: .2rem 0;
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    color: inherit;
    background: transparent;
    font: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    cursor: pointer;
}

.practice-column-sort-button:hover[b-fwppv5ewt4] { color: var(--practice-purple); }

.practice-column-sort-button:focus-visible[b-fwppv5ewt4] {
    outline: none;
    box-shadow: var(--ring-focus);
}

.sort-direction-icon[b-fwppv5ewt4] {
    width: 1rem;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    color: #d6d1df;
    font-size: .7rem;
    line-height: .68;
}

.sort-caret[b-fwppv5ewt4] { display: block; }
.sort-caret.ascending.active[b-fwppv5ewt4] { color: #2b9b55; }
.sort-caret.descending.active[b-fwppv5ewt4] { color: #e25b61; }

.mobile-practices-sort[b-fwppv5ewt4] { display: none; }

.practices-scroll-view[b-fwppv5ewt4] {
    padding: .42rem .5rem .65rem;
    display: flex;
    flex-direction: column;
    gap: .38rem;
}

.answer-event-row[b-fwppv5ewt4] {
    min-height: 4.7rem;
    border: 1px solid #ede8f5;
    border-radius: .78rem;
    padding: .45rem .65rem .45rem 1.5rem;
    position: relative;
    color: #4c4b65;
    background: rgba(255, 255, 255, .9);
    font-size: 1rem;
}

.answer-event-row[b-fwppv5ewt4]::before {
    content: "";
    width: .2rem;
    position: absolute;
    inset: .65rem auto .65rem .45rem;
    border-radius: 999px;
    background: linear-gradient(180deg, #c5b4f5, #e7a6c8);
    opacity: .68;
}

.event-time[b-fwppv5ewt4] {
    display: grid;
    gap: .12rem;
    color: #756f8b;
    font-variant-numeric: tabular-nums;
    line-height: 1.1;
}

.event-date[b-fwppv5ewt4] { color: #514c6e; font-size: 1rem; font-weight: 850; }
.event-clock[b-fwppv5ewt4] { color: #81798f; font-size: .875rem; font-weight: 700; }
.event-module[b-fwppv5ewt4] { color: #746e88; font-weight: 650; }

.event-question[b-fwppv5ewt4] {
    color: #6d55b8;
    font-variant-numeric: tabular-nums;
    font-weight: 850;
}

.event-question a[b-fwppv5ewt4] {
    border-radius: .3rem;
    color: inherit;
    text-decoration: none;
}

.event-question a:hover[b-fwppv5ewt4] { color: #543b9f; text-decoration: underline; }

.event-question a:focus-visible[b-fwppv5ewt4],
.event-question-preview-link:focus-visible[b-fwppv5ewt4],
.event-topic-link:focus-visible[b-fwppv5ewt4],
.retry-action:focus-visible[b-fwppv5ewt4] {
    outline: none;
    box-shadow: var(--ring-focus);
}

.event-topic[b-fwppv5ewt4],
.event-topic-body[b-fwppv5ewt4] { min-width: 0; }

.event-topic-body[b-fwppv5ewt4] {
    display: grid;
    gap: .16rem;
}

.event-question-preview-link[b-fwppv5ewt4] {
    min-width: 0;
    border-radius: .3rem;
    color: #315a91;
    text-decoration: none;
}

.event-question-preview-link:hover[b-fwppv5ewt4] {
    color: #234879;
    text-decoration: underline;
    text-underline-offset: .15rem;
}

.event-question-preview[b-fwppv5ewt4],
.event-topic-body[b-fwppv5ewt4]  .event-question-preview {
    display: block;
    overflow: hidden;
    color: inherit;
    font-size: 1rem;
    font-weight: 800;
    line-height: 1.3;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.event-question-preview.is-empty[b-fwppv5ewt4] {
    color: #a19aac;
    font-weight: 650;
}

.event-topic-text[b-fwppv5ewt4],
.event-topic-label[b-fwppv5ewt4] {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #9991a7;
    font-size: .875rem;
    font-weight: 700;
}

.event-topic-link[b-fwppv5ewt4] {
    display: block;
    max-width: 100%;
    border-radius: .3rem;
    color: #8a8098;
    text-decoration: none;
}

.event-topic-link:hover[b-fwppv5ewt4] {
    color: #66548a;
    text-decoration: underline;
    text-underline-offset: .16rem;
}

.event-result[b-fwppv5ewt4] {
    width: fit-content;
    border: 1px solid;
    border-radius: 999px;
    padding: .28rem .5rem;
    display: inline-flex;
    align-items: center;
    gap: .28rem;
    justify-self: end;
    font-size: .875rem;
    line-height: 1;
}

.event-result span[b-fwppv5ewt4] {
    width: .9rem;
    height: .9rem;
    border-radius: 50%;
    display: grid;
    place-items: center;
    color: #fff;
    font-size: .64rem;
    font-weight: 900;
}

.event-result strong[b-fwppv5ewt4] { font-weight: 900; }

.event-result.correct[b-fwppv5ewt4] {
    border-color: rgba(32, 167, 128, .22);
    color: #168567;
    background: rgba(60, 195, 154, .09);
}

.event-result.correct span[b-fwppv5ewt4] { background: #2eaf89; }

.event-result.wrong[b-fwppv5ewt4] {
    border-color: rgba(220, 95, 119, .2);
    color: #c24e68;
    background: rgba(235, 109, 133, .08);
}

.event-result.wrong span[b-fwppv5ewt4] { background: #dc627a; }

.event-actions[b-fwppv5ewt4] { display: flex; justify-content: flex-end; align-items: center; gap: .4rem; flex-wrap: wrap; }

.event-result.contested[b-fwppv5ewt4] {
    border-color: #ecd6a2;
    background: #fff3d9;
    color: #805c14;
    white-space: nowrap;
}

.event-result.contested span[b-fwppv5ewt4] { background: #a87920; }

.retry-action[b-fwppv5ewt4] {
    min-height: 2rem;
    border: 1px solid #dcd2f2;
    border-radius: .58rem;
    padding: .3rem .58rem;
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    color: #6650aa;
    background: linear-gradient(180deg, #fff 0%, #f6f1ff 100%);
    font-size: .9rem;
    font-weight: 850;
    cursor: pointer;
    transition: border-color 120ms ease, box-shadow 120ms ease, transform 120ms ease;
}

.retry-action:disabled[b-fwppv5ewt4] { opacity: .4; cursor: default; }

.retry-action:not(:disabled):hover[b-fwppv5ewt4] {
    border-color: #bfaee6;
    box-shadow: 0 6px 13px rgba(100, 78, 158, .13);
    transform: translateY(-1px);
}

.empty-state[b-fwppv5ewt4] {
    margin: auto;
    padding: 1.5rem;
    display: grid;
    justify-items: center;
    text-align: center;
}

.empty-state-icon[b-fwppv5ewt4] {
    width: 3.2rem;
    height: 3.2rem;
    border: 1px solid #d9cdf2;
    border-radius: 1rem;
    display: grid;
    place-items: center;
    color: var(--practice-purple);
    background: #f4efff;
    font-size: 1.2rem;
    font-weight: 900;
    transform: rotate(-4deg);
}

.empty-state h3[b-fwppv5ewt4] { margin: .75rem 0 .2rem; color: var(--practice-ink); font-size: 1rem; }
.empty-state p[b-fwppv5ewt4] { margin: 0; color: var(--practice-muted); font-size: .82rem; }

.empty-state a[b-fwppv5ewt4],
.clear-result-filter[b-fwppv5ewt4] {
    margin-top: .75rem;
    border-radius: .6rem;
    padding: .48rem .75rem;
    color: #fff;
    background: var(--button-primary-bg);
    box-shadow: var(--button-primary-shadow);
    font-size: .8rem;
    font-weight: 850;
    text-decoration: none;
}

.clear-result-filter[b-fwppv5ewt4] { border: 0; cursor: pointer; }

@media (max-width: 1120px) {
    .practices-content[b-fwppv5ewt4]  .filter-toolbar.has-leading.has-sort {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .practices-content[b-fwppv5ewt4]  .filter-toolbar.has-leading.has-sort .leading-content,
    .practices-content[b-fwppv5ewt4]  .filter-toolbar.has-leading.has-sort .sort-controls {
        grid-column: 1 / -1;
    }

    .practices-content[b-fwppv5ewt4]  .filter-toolbar.has-leading.has-sort .sort-controls {
        justify-content: flex-start;
    }

    .practices-header[b-fwppv5ewt4],
    .answer-event-row[b-fwppv5ewt4] {
        grid-template-columns: 120px 130px 96px minmax(130px, 1fr) 68px 54px;
        column-gap: .55rem;
    }
}

@media (max-width: 780px) {
    .practices-table[b-fwppv5ewt4] { display: block; }
    .practices-header[b-fwppv5ewt4] { display: none; }

    .mobile-practices-sort[b-fwppv5ewt4] {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        gap: .45rem;
        color: var(--practice-muted);
        font-size: .84rem;
        font-weight: 750;
    }

    .mobile-practices-sort .practice-column-sort-button[b-fwppv5ewt4] {
        border: 1px solid rgba(218, 207, 241, .88);
        border-radius: .6rem;
        padding: .48rem .7rem;
        background: rgba(255, 255, 255, .9);
        box-shadow: 0 6px 18px rgba(105, 85, 155, .06);
    }

    .practices-scroll-view[b-fwppv5ewt4] {
        max-height: none;
        padding: .5rem;
        gap: .55rem;
    }

    .answer-event-row[b-fwppv5ewt4] {
        min-height: 0;
        padding: .8rem .75rem .8rem 1.15rem;
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: .65rem 1rem;
    }

    .answer-event-row[b-fwppv5ewt4]::before { inset: .7rem auto .7rem .38rem; }
    .event-time[b-fwppv5ewt4] { grid-column: 1; grid-row: 1; }
    .event-result[b-fwppv5ewt4] { grid-column: 2; grid-row: 1; justify-self: end; }

    .event-module[b-fwppv5ewt4],
    .event-question[b-fwppv5ewt4],
    .event-topic[b-fwppv5ewt4] {
        display: grid;
        grid-template-columns: 3.2rem minmax(0, 1fr);
        gap: .6rem;
        grid-column: 1 / -1;
        align-items: start;
    }

    .event-module[b-fwppv5ewt4]::before,
    .event-question[b-fwppv5ewt4]::before,
    .event-topic[b-fwppv5ewt4]::before {
        content: attr(data-label);
        color: #a19bad;
        font-size: .7rem;
        font-weight: 800;
        line-height: 1.45;
    }

    .event-topic-text[b-fwppv5ewt4],
    .event-topic-label[b-fwppv5ewt4] { white-space: normal; line-height: 1.45; }

    .event-question-preview[b-fwppv5ewt4],
    .event-topic-body[b-fwppv5ewt4]  .event-question-preview {
        display: -webkit-box;
        white-space: normal;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }
    .event-actions[b-fwppv5ewt4] { grid-column: 1 / -1; padding-top: .1rem; }
    .retry-action[b-fwppv5ewt4] { width: 100%; justify-content: center; }
}

@media (max-width: 520px) {
    .filter-panel[b-fwppv5ewt4] { padding: .2rem; }
}

@media (prefers-reduced-motion: reduce) {
    .retry-action[b-fwppv5ewt4],
    .wrong-only-toggle[b-fwppv5ewt4] { transition: none; }
}
/* /Pages/QuestionDetailPage.razor.rz.scp.css */
.question-detail-content[b-92nqxmiydc] {
    width: 100%;
    max-width: 1080px;
    margin: 0 auto;
    padding: 12px 16px 40px;
}

.question-detail-card[b-92nqxmiydc] {
    padding: 1.75rem;
    border: 1px solid var(--surface-border);
    border-radius: 1rem;
}

.question-heading[b-92nqxmiydc] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
    gap: 1.5rem;
    margin: 1.25rem 0;
}

.question-stem[b-92nqxmiydc] {
    margin: 0;
    color: #203a64;
    font-size: 1.25rem;
    line-height: 1.75;
}

.question-heading[b-92nqxmiydc]  .difficulty-badge {
    justify-self: end;
    margin: .15rem 0 0;
}

.option-list[b-92nqxmiydc] {
    list-style: none;
    display: grid;
    gap: .75rem;
    margin: 1.5rem 0 0;
    padding: 0;
}

.contested-note[b-92nqxmiydc] {
    margin: 1.5rem 0 0;
    padding: .8rem 1rem;
    border-radius: .65rem;
    background: #fff7e8;
    color: #87520a;
}

.contested-note + .option-list[b-92nqxmiydc] {
    margin-top: .75rem;
}

.option-card[b-92nqxmiydc] {
    display: grid;
    grid-template-columns: 2rem minmax(0, 1fr) auto;
    align-items: start;
    gap: .85rem;
    padding: 1rem;
    border: 1px solid #dbe5f0;
    border-radius: .8rem;
    background: #fff;
    color: #294766;
}

.option-card.correct-option[b-92nqxmiydc] {
    border-color: #59b987;
    background: #effaf4;
}

.option-key[b-92nqxmiydc] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background: #edf3f9;
    color: #294f7a;
    font-weight: 800;
}

.correct-option .option-key[b-92nqxmiydc] {
    background: #23865b;
    color: #fff;
}

.option-content[b-92nqxmiydc] {
    min-width: 0;
    line-height: 1.65;
}

.correct-badge[b-92nqxmiydc] {
    padding: .3rem .65rem;
    border-radius: 999px;
    font-size: .78rem;
    font-weight: 800;
    white-space: nowrap;
}

.correct-badge[b-92nqxmiydc] {
    background: #d9f4e5;
    color: #176a45;
}

.review-state-note[b-92nqxmiydc] {
    margin-top: 1.75rem;
    padding: 1rem;
    border: 1px solid #dbe5f0;
    border-radius: .75rem;
    background: #f5f8fb;
    color: #56708f;
    text-align: center;
}

.review-state-note.locked[b-92nqxmiydc] {
    background: #f7f9fc;
    color: #445d78;
}

.review-state-note.error[b-92nqxmiydc] {
    border-color: #f2c9c9;
    background: #fff5f5;
    color: #9b3737;
}

.question-navigation[b-92nqxmiydc] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 2fr) minmax(0, 1fr);
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.25rem;
    padding-bottom: 1.25rem;
    border-bottom: 1px solid #dbe5f0;
}

.question-nav-link[b-92nqxmiydc] {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    color: #294f7a;
    font-weight: 700;
    text-decoration: none;
    transition: color .15s ease;
}

.question-nav-link:hover[b-92nqxmiydc] {
    color: #436fa5;
}

.question-nav-link:focus-visible[b-92nqxmiydc] {
    outline: 3px solid rgb(83 130 196 / 28%);
    border-radius: .2rem;
    outline-offset: 2px;
}

.question-nav-link.previous[b-92nqxmiydc] {
    justify-self: start;
}

.question-nav-link.next[b-92nqxmiydc] {
    justify-self: end;
}

.current-question-id[b-92nqxmiydc] {
    grid-column: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    color: #56708f;
    font-size: .92rem;
    font-weight: 700;
    overflow-wrap: anywhere;
    text-align: center;
}

@media (max-width: 800px) {
    .question-heading[b-92nqxmiydc] {
        grid-template-columns: minmax(0, 1fr);
        gap: .65rem;
    }

    .question-heading[b-92nqxmiydc]  .difficulty-badge {
        justify-self: start;
        margin: 0;
    }
}

@media (max-width: 640px) {
    .question-detail-card[b-92nqxmiydc] {
        padding: 1.15rem;
    }

    .option-card[b-92nqxmiydc] {
        grid-template-columns: 2rem minmax(0, 1fr);
    }

    .correct-badge[b-92nqxmiydc] {
        grid-column: 2;
        justify-self: start;
    }

}
/* /Pages/QuestionsPage.razor.rz.scp.css */
.questions-page[b-0bcp2vwhit] {
    --questions-purple: #8068cf;
}

.exam-picker[b-0bcp2vwhit] {
    width: min(100%, 58rem);
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: end;
    gap: .75rem;
}

.exam-picker-field[b-0bcp2vwhit] {
    min-width: 0;
    display: grid;
    gap: .35rem;
}

.exam-picker-field label[b-0bcp2vwhit] {
    color: #695e7d;
    font-size: .9rem;
    font-weight: 850;
    white-space: nowrap;
}

.exam-select-wrap[b-0bcp2vwhit] { position: relative; }

.exam-picker select[b-0bcp2vwhit] {
    width: 100%;
    min-height: 2.45rem;
    border: 1px solid #e4d9ef;
    border-radius: var(--button-radius);
    padding: .43rem 2.25rem .43rem .72rem;
    color: #514c6e;
    appearance: none;
    background: rgba(255, 255, 255, .9);
    font: inherit;
    font-size: .9rem;
    font-weight: 750;
    cursor: pointer;
    transition: border-color 120ms ease, box-shadow 120ms ease, background 120ms ease;
}

.exam-picker select:hover:not(:disabled)[b-0bcp2vwhit] {
    border-color: #cdbde9;
    background: #fff;
}

.exam-picker select:focus-visible[b-0bcp2vwhit] {
    outline: none;
    border-color: #aa96df;
    box-shadow: var(--ring-focus);
}

.exam-picker select:disabled[b-0bcp2vwhit] {
    opacity: .68;
    cursor: wait;
}

.exam-select-icon[b-0bcp2vwhit] {
    position: absolute;
    right: .8rem;
    top: 50%;
    pointer-events: none;
    color: var(--questions-purple);
    font-size: .8rem;
    transform: translateY(-52%);
}

.questions-panel.state-only[b-0bcp2vwhit] {
    grid-template-rows: minmax(12rem, 1fr);
    place-items: center;
}

.question-catalog[b-0bcp2vwhit] {
    min-height: 0;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
}

.questions-list-header[b-0bcp2vwhit],
.question-list-item[b-0bcp2vwhit] {
    display: grid;
    grid-template-columns: 130px 118px minmax(0, 1fr) 110px;
    align-items: center;
    column-gap: .8rem;
}

.questions-list-header[b-0bcp2vwhit] {
    padding: .52rem 1rem .46rem 2rem;
    color: #9992a8;
    background: rgba(249, 247, 253, .7);
    font-size: .875rem;
    font-weight: 900;
    letter-spacing: .06em;
}

.questions-scroll-view[b-0bcp2vwhit] {
    padding: 0;
}

.question-list[b-0bcp2vwhit] {
    display: grid;
    gap: 0;
}

.question-list-item[b-0bcp2vwhit] {
    min-height: 3.5rem;
    border: 0;
    border-bottom: 1px solid #ede8f5;
    padding: .42rem 1rem .42rem 2rem;
    color: #4c4b65;
    background: rgba(255, 255, 255, .56);
    transition: background 120ms ease;
}

.question-list-item:last-child[b-0bcp2vwhit] { border-bottom: 0; }
.question-list-item:hover[b-0bcp2vwhit] { background: rgba(246, 241, 255, .72); }

.question-list-id[b-0bcp2vwhit] {
    color: #6d55b8;
    font-variant-numeric: tabular-nums;
    font-size: .95rem;
    font-weight: 850;
}

.question-list-id a[b-0bcp2vwhit],
.question-list-item h2 a[b-0bcp2vwhit] {
    border-radius: .3rem;
    color: inherit;
    text-decoration: none;
}

.question-list-item h2[b-0bcp2vwhit] {
    min-width: 0;
    margin: 0;
    overflow: hidden;
    color: #315a91;
    font-size: 1rem;
    font-weight: 800;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.question-list-difficulty[b-0bcp2vwhit] {
    justify-self: start;
}

.difficulty-unavailable[b-0bcp2vwhit] {
    color: #aaa3b5;
    font-weight: 750;
}

.question-list-id a:hover[b-0bcp2vwhit],
.question-list-item h2 a:hover[b-0bcp2vwhit] {
    text-decoration: underline;
    text-underline-offset: .15rem;
}

.question-list-id a:hover[b-0bcp2vwhit] { color: #543b9f; }
.question-list-item h2 a:hover[b-0bcp2vwhit] { color: #234879; }

.question-list-id a:focus-visible[b-0bcp2vwhit],
.question-list-item h2 a:focus-visible[b-0bcp2vwhit] {
    outline: none;
    box-shadow: var(--ring-focus);
}

.questions-state[b-0bcp2vwhit] {
    min-height: 0;
    display: grid;
    place-items: center;
}

@media (max-width: 780px) {
    .questions-panel[b-0bcp2vwhit] { min-height: 18rem; }
    .questions-list-header[b-0bcp2vwhit] { grid-template-columns: 100px 92px minmax(0, 1fr) 100px; padding-left: 1.55rem; }
    .question-list-item[b-0bcp2vwhit] { grid-template-columns: 100px 92px minmax(0, 1fr) 100px; padding-left: 1.55rem; }
}

@media (max-width: 520px) {
    .exam-picker[b-0bcp2vwhit] { grid-template-columns: 1fr; gap: .55rem; }
    .exam-picker select[b-0bcp2vwhit] { min-width: 0; }
    .questions-list-header[b-0bcp2vwhit] { display: none; }
    .question-list[b-0bcp2vwhit] { gap: 0; }
    .question-list-item[b-0bcp2vwhit] {
        min-height: 0;
        grid-template-columns: 1fr;
        gap: .45rem;
        padding: .7rem .75rem;
    }
    .question-list-module[b-0bcp2vwhit],
    .question-list-id[b-0bcp2vwhit],
    .question-list-body[b-0bcp2vwhit],
    .question-list-difficulty[b-0bcp2vwhit] {
        display: grid;
        grid-template-columns: 3.8rem minmax(0, 1fr);
        gap: .6rem;
        align-items: start;
        white-space: normal;
    }
    .question-list-module[b-0bcp2vwhit]::before,
    .question-list-id[b-0bcp2vwhit]::before,
    .question-list-body[b-0bcp2vwhit]::before,
    .question-list-difficulty[b-0bcp2vwhit]::before {
        content: attr(data-label);
        color: #a19bad;
        font-size: .7rem;
        font-weight: 800;
        line-height: 1.55;
    }
}

@media (prefers-reduced-motion: reduce) {
    .exam-picker select[b-0bcp2vwhit],
    .question-list-item[b-0bcp2vwhit] { transition: none; }
}

.question-list-body[b-0bcp2vwhit], .question-list-content[b-0bcp2vwhit] { min-width: 0; }
.question-list-content[b-0bcp2vwhit] { display: grid; gap: .16rem; }
.question-topic-label[b-0bcp2vwhit] {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #9991a7;
    font-size: .875rem;
    font-weight: 700;
}
.question-topic-link[b-0bcp2vwhit] {
    display: block;
    max-width: 100%;
    border-radius: .3rem;
    color: #8a8098;
    text-decoration: none;
}
.question-topic-link:hover[b-0bcp2vwhit] { color: #66548a; text-decoration: underline; text-underline-offset: .16rem; }
.question-topic-link:focus-visible[b-0bcp2vwhit] { outline: none; box-shadow: var(--ring-focus); }
@media (max-width: 520px) {
    .question-list-item h2[b-0bcp2vwhit], .question-topic-label[b-0bcp2vwhit] { white-space: normal; }
}

.exam-picker-field select[b-0bcp2vwhit] { padding: .5rem; border: 1px solid #e4d9ef; border-radius: .5rem; font: inherit; }
.advanced-filters[b-0bcp2vwhit] { display: grid; gap: .35rem; }
.advanced-subject[b-0bcp2vwhit] {
    grid-template-columns: 6.5rem minmax(0, 28rem);
    align-items: center;
    gap: .5rem;
}
.advanced-subject select[b-0bcp2vwhit] { width: 100%; min-width: 0; min-height: 2.2rem; padding: .3rem .5rem; }
.filter-option-label[b-0bcp2vwhit] { color: #695e7d; font-size: .9rem; font-weight: 850; }
.filter-multiple-hint[b-0bcp2vwhit] { margin-left: .3rem; color: #9991a7; font-size: .75rem; font-weight: 500; white-space: nowrap; }
@media (max-width: 520px) {
    .advanced-subject[b-0bcp2vwhit] { grid-template-columns: 4rem minmax(0, 1fr); }
}
.question-count[b-0bcp2vwhit] { margin: 0; color: #695e7d; font-size: .9rem; }

.all-modules-option[b-0bcp2vwhit] {
    border: 1px solid #e4d9ef;
    border-radius: .5rem;
    padding: .3rem .65rem;
    background: white;
    color: #695e7d;
    font: inherit;
    font-weight: 750;
    cursor: pointer;
}
.all-modules-option.active[b-0bcp2vwhit] { border-color: #8068cf; background: #f2edfc; color: #6d55b8; }
.all-modules-option:hover:not(:disabled)[b-0bcp2vwhit] { border-color: #8068cf; }
.all-modules-option:focus-visible[b-0bcp2vwhit] { outline: none; box-shadow: var(--ring-focus); }
.all-modules-option:disabled[b-0bcp2vwhit] { opacity: .6; cursor: default; }

.question-list-module[b-0bcp2vwhit] { min-width: 0; color: #746e88; font-weight: 650; overflow-wrap: anywhere; }

.difficulty-status-label[b-0bcp2vwhit] { color: #9991a7; font-size: .875rem; }

.topic-select-button[b-0bcp2vwhit] { justify-self: start; text-align: left; }
/* /Pages/SmartExamPanel.razor.rz.scp.css */
.smart-exam-content[b-k6ojf4yxk2] { display: grid; gap: .75rem; height: 100%; }
.smart-exam-shell[b-k6ojf4yxk2] { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(15rem, .65fr); gap: .8rem; align-items: stretch; height: 100%; }
.loading-shell[b-k6ojf4yxk2] { display: block; border: 1px solid rgba(108, 84, 166, .13); border-radius: 1rem; background: rgba(255, 255, 255, .68); padding: 1.2rem; }
.settings-panel[b-k6ojf4yxk2],
.summary-panel[b-k6ojf4yxk2] { box-sizing: border-box; border: 1px solid rgba(108, 84, 166, .13); border-radius: 1rem; background: rgba(255, 255, 255, .7); }
.settings-panel[b-k6ojf4yxk2] { padding: 1rem; }
.summary-panel[b-k6ojf4yxk2] {
    position: sticky;
    top: 4.7rem;
    display: grid;
    gap: .8rem;
    align-content: start;
    padding: 1rem;
    background:
        radial-gradient(circle at 100% 0, rgba(241, 210, 231, .45), transparent 15rem),
        rgba(255, 255, 255, .78);
}

.panel-heading[b-k6ojf4yxk2] { display: flex; align-items: center; gap: .75rem; margin-bottom: .9rem; }
.panel-heading.compact[b-k6ojf4yxk2] { margin-bottom: .1rem; }
.panel-heading h2[b-k6ojf4yxk2] { margin: 0; color: #3f345f; font-size: 1.14rem; line-height: 1.3; font-weight: 900; }
.panel-heading p[b-k6ojf4yxk2] { margin: .12rem 0 0; color: #81798e; font-size: .88rem; line-height: 1.5; }
.panel-index[b-k6ojf4yxk2] {
    display: grid;
    place-items: center;
    width: 2.35rem;
    height: 2.35rem;
    border-radius: 50%;
    color: #fff;
    background: linear-gradient(145deg, #977fe6, #7458c9);
    box-shadow: 0 8px 17px rgba(117, 89, 207, .2);
    font-size: .8rem;
    font-weight: 900;
    flex: 0 0 auto;
}
.summary-panel .panel-index[b-k6ojf4yxk2] { background: linear-gradient(145deg, #df8bb9, #b4689c); box-shadow: 0 8px 17px rgba(188, 101, 154, .18); }

.filters-row[b-k6ojf4yxk2] { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .7rem; align-items: end; }
.field[b-k6ojf4yxk2] { display: grid; gap: .42rem; color: #5f5683; font-weight: 800; }
.field > span[b-k6ojf4yxk2],
.setting-label[b-k6ojf4yxk2] { color: #756d87; font-size: .88rem; font-weight: 900; }
.question-count-field[b-k6ojf4yxk2] { grid-column: 1 / -1; }
.select-control[b-k6ojf4yxk2] {
    min-height: 2.8rem;
    width: 100%;
    border: 1px solid #ded6ec;
    border-radius: .78rem;
    padding: .45rem .72rem;
    color: #40375c;
    background-color: rgba(255, 255, 255, .86);
    font-size: 1rem;
    font-weight: 750;
    transition: border-color 120ms ease, box-shadow 120ms ease;
}
.select-control:hover[b-k6ojf4yxk2] { border-color: #c8b9e3; }
.select-control:focus[b-k6ojf4yxk2] { outline: none; border-color: var(--color-primary); box-shadow: var(--ring-focus); }

.setting-group[b-k6ojf4yxk2] { display: grid; gap: .55rem; margin-top: .85rem; border-top: 1px solid rgba(108, 84, 166, .1); padding-top: .85rem; }
.segmented-control[b-k6ojf4yxk2] { display: grid; grid-template-columns: repeat(2, minmax(7rem, 1fr)); gap: .3rem; width: 100%; }
.segment-option[b-k6ojf4yxk2] {
    min-height: 2.7rem;
    border: 1px solid #ded6ec;
    border-radius: .75rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .25rem;
    color: #756d92;
    background: rgba(255, 255, 255, .72);
    cursor: pointer;
    line-height: 1;
    text-align: center;
}
.segment-option strong[b-k6ojf4yxk2] { font-size: 1.1rem; font-weight: 900; }
.segment-option span[b-k6ojf4yxk2] { font-size: .86rem; font-weight: 800; }
.segment-option.selected[b-k6ojf4yxk2] { border-color: #8a6edc; color: #fff; background: linear-gradient(145deg, #947be3, #7153c9); box-shadow: 0 7px 15px rgba(105, 77, 191, .17); }
.segment-option.selected span[b-k6ojf4yxk2] { color: #fff; }

.focus-grid[b-k6ojf4yxk2] { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .55rem; }
.focus-option[b-k6ojf4yxk2] {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: .3rem .5rem;
    align-content: start;
    border: 1px solid #ded6ec;
    border-radius: .82rem;
    padding: .7rem;
    text-align: left;
    color: #5f5683;
    background: rgba(255, 255, 255, .7);
    cursor: pointer;
    transition: border-color 120ms ease, background 120ms ease, transform 120ms ease;
}
.focus-option:hover[b-k6ojf4yxk2] { border-color: #bbaaf4; }
.focus-option.selected[b-k6ojf4yxk2] { border-color: #8e73df; background: linear-gradient(145deg, #f7f3ff, #fff9fd); box-shadow: 0 0 0 2px rgba(155, 132, 239, .11); }
.focus-option strong[b-k6ojf4yxk2] { color: #4f3e74; font-size: .96rem; font-weight: 900; }
.focus-option small[b-k6ojf4yxk2] { grid-column: 1 / -1; color: #81798e; font-size: .82rem; line-height: 1.55; }

.summary-list[b-k6ojf4yxk2] { display: grid; gap: .15rem; margin: 0; }
.summary-list div[b-k6ojf4yxk2] { display: grid; grid-template-columns: 3.5rem minmax(0, 1fr); align-items: baseline; gap: .55rem; min-height: 2.1rem; border-bottom: 1px solid rgba(108, 84, 166, .1); padding: .45rem .1rem; }
.summary-list dt[b-k6ojf4yxk2] { color: #81798e; font-size: .8rem; font-weight: 800; }
.summary-list dd[b-k6ojf4yxk2] { margin: 0; color: #40375c; font-size: .94rem; font-weight: 900; line-height: 1.4; }
.start-button[b-k6ojf4yxk2] {
    min-height: 3rem;
    width: 100%;
    border: 1px solid rgba(111, 79, 205, .72);
    border-radius: .82rem;
    padding: .55rem .9rem;
    color: #fff;
    background: linear-gradient(145deg, #9076e1, #6e4fc5);
    font-size: .98rem;
    font-weight: 900;
    cursor: pointer;
    box-shadow: 0 10px 20px rgba(104, 75, 189, .18);
    transition: box-shadow 120ms ease, transform 120ms ease, opacity 120ms ease;
}
.start-button:not(:disabled):hover[b-k6ojf4yxk2] { box-shadow: 0 13px 25px rgba(104, 75, 189, .24); transform: translateY(-1px); }
.start-button:disabled[b-k6ojf4yxk2] { opacity: .6; cursor: default; }

@media (max-width: 1060px) {
    .smart-exam-shell[b-k6ojf4yxk2] { grid-template-columns: 1fr; }
    .summary-panel[b-k6ojf4yxk2] { position: static; }
    .summary-list[b-k6ojf4yxk2] { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .25rem .7rem; }
}

@media (max-width: 760px) {
    .smart-exam-content[b-k6ojf4yxk2],
    .smart-exam-shell[b-k6ojf4yxk2] { height: auto; }
    .filters-row[b-k6ojf4yxk2],
    .focus-grid[b-k6ojf4yxk2] { grid-template-columns: 1fr; }
    .question-count-field[b-k6ojf4yxk2] { grid-column: auto; }
    .summary-list[b-k6ojf4yxk2] { grid-template-columns: 1fr; }
}

.focus-option input[b-k6ojf4yxk2] { margin: .2rem 0 0; accent-color: #8068cf; }
.focus-option:focus-within[b-k6ojf4yxk2] { outline: 2px solid #8068cf; outline-offset: 2px; }
.focus-option:has(input:disabled)[b-k6ojf4yxk2] { opacity: .6; cursor: default; }
/* /Pages/TopicDetailPage.razor.rz.scp.css */
.topic-detail-page[b-4jftea15zb] {
    --page-bottom-space: .5rem;
}

.topic-detail-content[b-4jftea15zb] {
    margin: 0 auto;
    max-width: 1040px;
    width: 100%;
    padding: 12px 16px 24px;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.topic-card-panel[b-4jftea15zb] {
    border-radius: 1rem;
    padding: 1.75rem 1.5rem;
    border: 1px solid var(--surface-border);
}

.topic-card-panel h1[b-4jftea15zb] {
    margin: 0;
    color: #1f3f6d;
    font-size: 1.85rem;
    font-weight: 700;
}

.topic-header-row[b-4jftea15zb] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.topic-practice-cta[b-4jftea15zb] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: .62rem 1rem;
    border-radius: var(--button-radius);
    border: 1px solid var(--button-primary-border);
    background: var(--button-primary-bg);
    color: #fff;
    font-size: .92rem;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
    transition: background-color .2s ease, border-color .2s ease, transform .15s ease, box-shadow .2s ease;
}

.topic-practice-cta:hover[b-4jftea15zb] {
    box-shadow: var(--button-primary-shadow-hover);
    transform: translateY(-1px);
}

.topic-practice-cta:focus-visible[b-4jftea15zb] {
    outline: none;
    box-shadow: var(--ring-focus), var(--button-primary-shadow-hover);
}

.topic-description[b-4jftea15zb] {
    margin: 1rem 0 0;
    color: #35537c;
    font-size: 1.02rem;
    line-height: 1.8;
    white-space: pre-line;
}

.topic-practice-meta[b-4jftea15zb] {
    margin: .75rem 0 0;
    color: #9fa8ba;
    font-size: .9rem;
    display: flex;
    align-items: center;
    gap: .75rem;
    flex-wrap: wrap;
}

.topic-practiced[b-4jftea15zb] {
    color: #2563eb;
}

.topic-correct-perfect[b-4jftea15zb] {
    color: var(--status-success-strong);
}

.topic-card-panel h2[b-4jftea15zb] {
    margin: 0;
    color: #203a64;
    font-size: 1.12rem;
    font-weight: 700;
}

.exam-points-list[b-4jftea15zb] {
    list-style: none;
    margin: 1rem 0 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: .7rem;
}

.exam-points-list li[b-4jftea15zb] {
    border: 1px solid #cfdcf0;
    background: #edf3fb;
    color: #315d9f;
    border-radius: 999px;
    padding: .45rem .9rem;
    font-size: .9rem;
    line-height: 1;
}

.status-text[b-4jftea15zb] {
    margin: 0;
    color: var(--color-text-subtle);
}

.topic-questions-list[b-4jftea15zb] {
    list-style: none;
    margin: 1rem 0 0;
    padding: 0;
}

.topic-questions-list li[b-4jftea15zb] {
    display: flex;
    align-items: center;
    gap: .75rem;
    padding: .85rem 0;
    border-bottom: 1px solid #e6ecf5;
}

.topic-questions-list li:last-child[b-4jftea15zb] {
    border-bottom: none;
}

.topic-question-light[b-4jftea15zb] {
    width: .62rem;
    height: .62rem;
    border-radius: 50%;
    flex: 0 0 auto;
    background: #cfd8e6;
    box-shadow: 0 0 0 3px rgba(207, 216, 230, .28);
}

.topic-question-light.correct[b-4jftea15zb] {
    background: #22c55e;
    box-shadow: var(--status-success-ring);
}

.topic-question-light.wrong[b-4jftea15zb] {
    background: #ef4444;
    box-shadow: var(--status-danger-ring);
}

.topic-question-light.unanswered[b-4jftea15zb] {
    background: #d7dee9;
    box-shadow: 0 0 0 3px rgba(148, 163, 184, .14);
}

.topic-question-body[b-4jftea15zb] {
    min-width: 0;
    display: flex;
    align-items: baseline;
    gap: .8rem;
    flex: 1 1 auto;
}

.topic-question-id[b-4jftea15zb] {
    color: #9aa8bd;
    font-size: .82rem;
    letter-spacing: .04em;
    white-space: nowrap;
}

.topic-question-id a[b-4jftea15zb] {
    color: inherit;
    text-decoration: none;
}

.topic-question-id a:hover[b-4jftea15zb] {
    color: #6f58bd;
    text-decoration: underline;
}

.topic-question-id a:focus-visible[b-4jftea15zb] {
    border-radius: .2rem;
    outline: 2px solid var(--ring-focus-color);
    outline-offset: 2px;
}

.topic-question-stem[b-4jftea15zb] {
    min-width: 0;
    overflow: hidden;
    flex: 1 1 auto;
    color: #304d75;
    font-size: .95rem;
    line-height: 1.6;
    text-decoration: none;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.topic-question-stem:hover[b-4jftea15zb] {
    color: #6f58bd;
    text-decoration: underline;
}

.topic-question-stem:focus-visible[b-4jftea15zb] {
    border-radius: .2rem;
    outline: 2px solid var(--ring-focus-color);
    outline-offset: 2px;
}

.topic-question-status[b-4jftea15zb] {
    flex: 0 0 auto;
    min-width: 4.1rem;
    border-radius: .55rem;
    padding: .28rem .5rem;
    text-align: center;
    font-size: .78rem;
    font-weight: 700;
    line-height: 1;
}

.topic-question-status.correct[b-4jftea15zb] {
    color: var(--status-success-text);
    background: #dcfce7;
}

.topic-question-status.wrong[b-4jftea15zb] {
    color: var(--status-danger-text);
    background: #fee2e2;
}

.topic-question-status.unanswered[b-4jftea15zb] {
    color: var(--color-text-subtle);
    background: #f1f5f9;
}

@media (max-width: 640px) {
    .topic-questions-list li[b-4jftea15zb] {
        align-items: flex-start;
    }

    .topic-question-light[b-4jftea15zb] {
        margin-top: .42rem;
    }

    .topic-question-body[b-4jftea15zb] {
        flex-direction: column;
        gap: .18rem;
    }

    .topic-question-stem[b-4jftea15zb] {
        width: 100%;
    }

    .topic-question-status[b-4jftea15zb] {
        min-width: 3.6rem;
    }
}
/* /Pages/TopicsPage.razor.rz.scp.css */
.topics-page[b-fu22yptrg2] {
    --topics-ink: var(--color-text-default);
    --topics-muted: #69627f;
    --topics-accent: var(--color-primary-emphasis);
    --topics-border: rgba(222, 213, 240, .92);
    --topics-hover: rgba(246, 241, 255, .72);
    --topics-track: #d8d0e6;
    --page-bottom-space: .5rem;
    color: var(--topics-ink);
}

.filter-panel[b-fu22yptrg2] {
    border: 1px solid rgba(218, 207, 241, .88);
    border-radius: .95rem;
    padding: .38rem;
    background: rgba(255, 255, 255, .64);
    box-shadow: 0 6px 18px rgba(105, 85, 155, .06);
}

.topics-content[b-fu22yptrg2]  .filter-toolbar {
    border: 0;
    border-radius: .72rem;
    background: transparent;
}

.topics-content[b-fu22yptrg2]  .filter-toolbar.has-leading.has-sort {
    grid-template-columns: minmax(17rem, 1.25fr) minmax(10rem, .6fr) minmax(10rem, .6fr);
    align-items: center;
}

.topics-content[b-fu22yptrg2]  .filter-toolbar.has-leading.has-sort .sort-controls {
    grid-column: 1 / -1;
    justify-content: flex-start;
    flex-wrap: wrap;
}

.topics-content[b-fu22yptrg2]  .subject-filter,
.topics-content[b-fu22yptrg2]  .sort-toggle {
    white-space: nowrap;
}

.topic-scope-options[b-fu22yptrg2] {
    display: inline-flex;
    order: 10;
    margin-left: auto;
    padding: .2rem;
    border: 1px solid var(--button-soft-border);
    border-radius: var(--control-radius);
    background: var(--surface-translucent);
}
.topic-scope-option[b-fu22yptrg2] {
    min-height: 2rem;
    padding: .3rem .85rem;
    border: 0;
    border-radius: .4rem;
    background: transparent;
    color: var(--topics-muted);
    font: inherit;
    font-size: .9rem;
    cursor: pointer;
}
.topic-scope-option.active[b-fu22yptrg2] {
    background: var(--color-primary-emphasis);
    color: var(--color-white);
    font-weight: 700;
}
.topic-scope-option:hover:not(.active)[b-fu22yptrg2] { background: var(--button-soft-bg-active); }
.topic-scope-option:focus-visible[b-fu22yptrg2] { outline: 2px solid var(--topics-accent); outline-offset: 2px; }

.topics-scroll-view[b-fu22yptrg2] { flex: 1; min-height: 0; padding: .5rem .85rem 1.5rem; scrollbar-gutter: stable; }
.progress-visual[b-fu22yptrg2] { display: grid; gap: 1.8rem; padding-bottom: 1rem; }
.completion-track[b-fu22yptrg2] { display: block; overflow: hidden; border-radius: 3px; background: var(--topics-track); }

.completion-track > span[b-fu22yptrg2] { display: block; height: 100%; max-width: 100%; background: var(--topics-accent); border-radius: inherit; }

.module-group[b-fu22yptrg2] { display: grid; gap: .85rem; }
.module-heading[b-fu22yptrg2] { display: flex; justify-content: space-between; align-items: flex-end; gap: 1rem; padding: 0 .2rem; }
.module-heading h2[b-fu22yptrg2] { margin: 0; color: var(--topics-ink); font-size: 1.5rem; font-weight: 700; letter-spacing: -.02em; }
.topic-list[b-fu22yptrg2] {
    display: grid;
    gap: .65rem;
}
.list-columns[b-fu22yptrg2], [b-fu22yptrg2] .topic-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 3.5rem 8rem 6rem 7.5rem 1.4rem;
    align-items: center;
    column-gap: 1rem;
    padding: 0 1.2rem;
}
.list-columns[b-fu22yptrg2] {
    min-height: 2.4rem;
    color: var(--topics-muted);
    font-size: .95rem;
}
[b-fu22yptrg2] .topic-row {
    min-height: 4.75rem;
    border: 1px solid rgba(222, 213, 240, .55);
    border-left-width: 3px;
    border-radius: .78rem;
    background: rgba(255, 255, 255, .46);
    box-shadow: 0 3px 12px rgba(84, 66, 128, .04);
    color: var(--topics-ink);
    text-decoration: none;
    transition: background 150ms ease, border-color 150ms ease;
}
[b-fu22yptrg2] .topic-row:hover { background: var(--topics-hover); border-color: var(--control-border-strong); }
[b-fu22yptrg2] .topic-row:focus-visible { outline: 2px solid var(--topics-accent); outline-offset: 2px; background: var(--topics-hover); }
.topic-identity[b-fu22yptrg2] { display: flex; gap: .85rem; align-items: center; min-width: 0; }
.topic-copy[b-fu22yptrg2] { flex: 1; min-width: 0; padding: .85rem 0; }
.topic-name[b-fu22yptrg2] { color: #315a91; font-size: 1.25rem; font-weight: 650; line-height: 1.55; overflow-wrap: anywhere; }
.topic-meta[b-fu22yptrg2] {
    display: inline-flex;
    align-items: baseline;
    gap: .3rem;
    color: #695e7d;
    font-size: 1rem;
    line-height: 1.4;
    flex: 0 0 auto;
    white-space: nowrap;
}
.topic-meta strong[b-fu22yptrg2] {
    color: #5d4b86;
    font-size: 1.15rem;
    font-weight: 650;
    font-variant-numeric: tabular-nums;
}
.topic-completion[b-fu22yptrg2] { display: grid; gap: .5rem; }
.topic-completion strong[b-fu22yptrg2], .topic-accuracy strong[b-fu22yptrg2] { color: #4c4b65; font-size: 1.15rem; font-weight: 600; font-variant-numeric: tabular-nums; }
.topic-completion strong > span[b-fu22yptrg2], .topic-accuracy strong > span[b-fu22yptrg2] { margin-left: .1rem; color: var(--topics-muted); font-size: .9rem; font-weight: 400; }
.completion-track[b-fu22yptrg2] { height: 4px; width: 100%; max-width: 8rem; background: #e2ddec; }
.completion-track > span[b-fu22yptrg2] { background: #a59abb; }
.topic-accuracy[b-fu22yptrg2] { color: var(--topics-ink); }
.topic-row-arrow[b-fu22yptrg2] { color: var(--color-text-muted); font-size: 1.5rem; transition: color 150ms ease; }
[b-fu22yptrg2] .topic-row:hover .topic-row-arrow { color: var(--topics-accent); }
.mobile-label[b-fu22yptrg2] { display: none; }

@media (max-width: 960px) {
    .topics-content[b-fu22yptrg2]  .filter-toolbar.has-leading.has-sort {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .topics-content[b-fu22yptrg2]  .filter-toolbar.has-leading.has-sort .leading-content {
        grid-column: 1 / -1;
    }



    .list-columns[b-fu22yptrg2], [b-fu22yptrg2] .topic-row { grid-template-columns: minmax(0, 1fr) 3rem 5rem 3.5rem 7.5rem 1rem; column-gap: .65rem; }
}

@media (max-width: 640px) {
    .topics-content[b-fu22yptrg2]  .filter-toolbar.has-leading.has-sort {
        grid-template-columns: minmax(0, 1fr);
    }

    .topics-content[b-fu22yptrg2]  .filter-toolbar.has-leading.has-sort .sort-controls {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .topics-content[b-fu22yptrg2] { gap: .7rem; }

    .topic-scope-options[b-fu22yptrg2] { margin-left: 0; justify-self: start; }



    .progress-visual[b-fu22yptrg2] { gap: 1.4rem; }
    .module-heading h2[b-fu22yptrg2] { font-size: 1.35rem; }

    .list-columns[b-fu22yptrg2] { display: none; }
    [b-fu22yptrg2] .topic-row { grid-template-columns: minmax(0, 1fr) 6rem 1rem; gap: .65rem 1rem; padding: .85rem; }
    .topic-identity[b-fu22yptrg2] { grid-column: 1 / 3; gap: .65rem; }
    .topic-copy[b-fu22yptrg2] { padding: 0; }
    .topic-name[b-fu22yptrg2] { font-size: 1.15rem; }
    .topic-row-arrow[b-fu22yptrg2] { grid-column: 3; grid-row: 1; }
    .topic-completion[b-fu22yptrg2] { grid-column: 1; grid-row: 3; margin-left: 0; grid-template-columns: auto auto; align-items: center; gap: .45rem; }
    .topic-completion .completion-track[b-fu22yptrg2] { grid-column: 1 / -1; }
    .topic-completion strong[b-fu22yptrg2] { justify-self: end; }
    .topic-accuracy[b-fu22yptrg2] { grid-column: 2 / 4; grid-row: 3; display: flex; align-items: center; gap: .45rem; }
    .mobile-label[b-fu22yptrg2] { display: inline; color: var(--topics-muted); font-size: .85rem; }
    .topic-completion strong[b-fu22yptrg2], .topic-accuracy strong[b-fu22yptrg2] { font-size: 1rem; }
}

@media (prefers-reduced-motion: reduce) {
    [b-fu22yptrg2] .topic-row, .topic-row-arrow[b-fu22yptrg2] { transition: none; }
}

.topic-learning-status[b-fu22yptrg2] {
    justify-self: start;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    width: 7.5rem;
    max-width: 100%;
    text-align: center;
    padding: .3rem .4rem;
    border-radius: .4rem;
    font-size: 1rem;
    font-weight: 650;
    line-height: 1.5;
    white-space: nowrap;
}
.learning-status-icon[b-fu22yptrg2] { width: 1.1rem; height: 1.1rem; flex: 0 0 auto; }
[b-fu22yptrg2] .needs-practice .topic-learning-status { color: #655e78; background: #ece8f2; }
[b-fu22yptrg2] .needs-review .topic-learning-status { color: #91551d; background: #f8ecd9; }
[b-fu22yptrg2] .steady-performance .topic-learning-status { color: #2c725f; background: #e3f0e9; }
[b-fu22yptrg2] .needs-review { border-left: 3px solid #c49a61; }
[b-fu22yptrg2] .steady-performance { border-left-color: rgba(128, 170, 153, .25); }

@media (max-width: 640px) {
    .topic-learning-status[b-fu22yptrg2] { grid-column: 1 / -1; grid-row: 4; }
    .topic-meta[b-fu22yptrg2] { grid-column: 1 / -1; grid-row: 2; justify-self: start; }
}
/* /Pages/UsageStatisticsPage.razor.rz.scp.css */
.usage-statistics-page[b-zn4xy5qkzy] {
    --page-bottom-space: 3rem;
    --page-container-max: 1320px;
}

.usage-statistics-content[b-zn4xy5qkzy] {
    display: grid;
    gap: 1rem;
    margin-top: 1.4rem;
}

.statistics-toolbar[b-zn4xy5qkzy] {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1.5rem;
    padding: 1rem 1.15rem;
    box-shadow: 0 10px 28px rgba(88, 67, 158, .08);
}

.statistics-view-control[b-zn4xy5qkzy] {
    display: grid;
    gap: .42rem;
}

.control-label[b-zn4xy5qkzy] {
    color: var(--color-text-muted);
    font-size: .78rem;
    font-weight: 800;
}

.month-selector[b-zn4xy5qkzy] {
    display: grid;
    gap: .42rem;
}

.month-selector > label[b-zn4xy5qkzy] {
    color: var(--color-text-muted);
    font-size: .78rem;
    font-weight: 800;
}

.month-navigation[b-zn4xy5qkzy] {
    display: grid;
    grid-template-columns: 2.65rem minmax(10.5rem, 1fr) 2.65rem;
    align-items: stretch;
    overflow: hidden;
    border: 1px solid var(--surface-border);
    border-radius: .75rem;
    background: var(--surface-primary);
}

.month-navigation:focus-within[b-zn4xy5qkzy] {
    border-color: var(--color-primary);
    box-shadow: var(--ring-focus);
}

.month-navigation button[b-zn4xy5qkzy] {
    display: grid;
    place-items: center;
    border: 0;
    padding: 0;
    color: var(--color-primary-strong);
    background: #faf8ff;
    font: inherit;
    font-size: 1.55rem;
    line-height: 1;
    cursor: pointer;
}

.month-navigation button:first-child[b-zn4xy5qkzy] {
    border-right: 1px solid var(--surface-border);
}

.month-navigation button:last-child[b-zn4xy5qkzy] {
    border-left: 1px solid var(--surface-border);
}

.month-navigation button:hover:not(:disabled)[b-zn4xy5qkzy] {
    background: #f1ecff;
}

.month-navigation button:focus-visible[b-zn4xy5qkzy] {
    outline: 2px solid var(--color-primary);
    outline-offset: -3px;
}

.month-navigation button:disabled[b-zn4xy5qkzy] {
    color: #c9c3d8;
    background: #f7f6fa;
    cursor: not-allowed;
}

.month-navigation select[b-zn4xy5qkzy] {
    min-width: 0;
    border: 0;
    padding: .62rem 2rem .62rem .8rem;
    color: var(--color-text-strong);
    background-color: var(--surface-primary);
    font: inherit;
    font-size: .95rem;
    font-weight: 750;
    text-align: center;
    cursor: pointer;
}

.month-navigation select:focus[b-zn4xy5qkzy] {
    outline: none;
}

.statistics-view-switch[b-zn4xy5qkzy] {
    display: inline-flex;
    justify-self: start;
    gap: .25rem;
    border: 1px solid var(--surface-border);
    border-radius: var(--pill-radius);
    padding: .25rem;
    background: #f8f5ff;
}

.statistics-view-switch button[b-zn4xy5qkzy] {
    border: 0;
    border-radius: var(--pill-radius);
    padding: .58rem .95rem;
    color: var(--color-text-muted);
    background: transparent;
    font: inherit;
    font-size: .88rem;
    font-weight: 800;
    cursor: pointer;
}

.statistics-view-switch button:hover[b-zn4xy5qkzy] {
    color: var(--color-primary-strong);
}

.statistics-view-switch button:focus-visible[b-zn4xy5qkzy] {
    outline: none;
    box-shadow: var(--ring-focus);
}

.statistics-view-switch button.active[b-zn4xy5qkzy] {
    color: #fff;
    background: linear-gradient(135deg, #8062d2, #9b83df);
    box-shadow: 0 5px 12px rgba(105, 77, 177, .22);
}

.statistics-summary[b-zn4xy5qkzy] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .85rem;
}

.summary-card[b-zn4xy5qkzy] {
    position: relative;
    display: grid;
    gap: .38rem;
    min-height: 6rem;
    box-sizing: border-box;
    border: 1px solid rgba(122, 98, 186, .13);
    border-radius: 1rem;
    padding: 1rem 1.15rem;
    background: rgba(255, 255, 255, .82);
    box-shadow: 0 8px 22px rgba(88, 67, 158, .07);
    animation: summary-card-enter-b-zn4xy5qkzy .36s ease-out both;
}

.summary-card:nth-child(2)[b-zn4xy5qkzy] {
    animation-delay: .05s;
}

.summary-card:nth-child(3)[b-zn4xy5qkzy] {
    animation-delay: .1s;
}

.summary-card[b-zn4xy5qkzy]::before {
    content: "";
    position: absolute;
    top: .95rem;
    bottom: .95rem;
    left: 0;
    width: 3px;
    border-radius: 0 3px 3px 0;
    background: rgba(128, 98, 210, .38);
}

.summary-card.primary-summary[b-zn4xy5qkzy]::before {
    display: none;
}

.summary-card.primary-summary[b-zn4xy5qkzy] {
    border-color: transparent;
    color: #fff;
    background: linear-gradient(135deg, #7355c4 0%, #967ddd 100%);
    box-shadow: 0 14px 30px rgba(105, 77, 177, .22);
}

.summary-card-heading[b-zn4xy5qkzy] {
    display: flex;
    align-items: center;
    gap: .55rem;
}

.summary-icon[b-zn4xy5qkzy] {
    display: grid;
    place-items: center;
    width: 1.75rem;
    height: 1.75rem;
    flex: 0 0 auto;
    border-radius: .58rem;
    color: var(--color-primary-strong) !important;
    background: rgba(128, 98, 210, .1);
}

.summary-icon svg[b-zn4xy5qkzy] {
    width: 1.05rem;
    height: 1.05rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.summary-card:nth-child(3) .summary-icon svg[b-zn4xy5qkzy] {
    fill: currentColor;
    stroke-width: 1.1;
}

.summary-card span[b-zn4xy5qkzy],
.summary-card small[b-zn4xy5qkzy] {
    color: var(--color-text-muted);
    font-size: .78rem;
    font-weight: 750;
}

.summary-card strong[b-zn4xy5qkzy] {
    align-self: end;
    color: var(--color-text-strong);
    font-size: clamp(1.25rem, 2vw, 1.65rem);
    line-height: 1.1;
}

.summary-card.primary-summary .summary-icon[b-zn4xy5qkzy] {
    color: #fff !important;
    background: rgba(255, 255, 255, .18);
}

.summary-card.primary-summary span[b-zn4xy5qkzy],
.summary-card.primary-summary strong[b-zn4xy5qkzy] {
    color: #fff;
}

.summary-card small[b-zn4xy5qkzy] {
    position: absolute;
    right: 1.1rem;
    bottom: 1.05rem;
}

.statistics-chart-panel[b-zn4xy5qkzy] {
    overflow: hidden;
    border-color: rgba(122, 98, 186, .14);
    padding: 1.35rem 1.5rem 1.1rem;
    box-shadow: 0 18px 42px rgba(88, 67, 158, .1);
}

.chart-heading[b-zn4xy5qkzy] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.chart-heading h2[b-zn4xy5qkzy] {
    margin: 0;
    color: var(--color-text-strong);
    font-size: 1.08rem;
}

.chart-heading p[b-zn4xy5qkzy] {
    margin: .25rem 0 0;
    color: var(--color-text-muted);
    font-size: .86rem;
}

.chart-legend[b-zn4xy5qkzy] {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    color: var(--color-text-muted);
    font-size: .82rem;
    font-weight: 750;
}

.chart-legends[b-zn4xy5qkzy] {
    display: flex;
    align-items: center;
    gap: 1.2rem;
}

.future-legend[b-zn4xy5qkzy] {
    display: inline-flex;
    align-items: center;
    gap: .42rem;
    color: #9b95aa;
    font-size: .78rem;
    font-weight: 700;
}

.future-legend span[b-zn4xy5qkzy] {
    width: .85rem;
    height: .65rem;
    border: 1px solid rgba(125, 116, 146, .13);
    border-radius: .22rem;
    background: rgba(126, 118, 144, .07);
}

.chart-legend span[b-zn4xy5qkzy] {
    width: .72rem;
    height: .72rem;
    border-radius: 50%;
    background: #8062d2;
    box-shadow: 0 0 0 4px rgba(128, 98, 210, .13);
}

.chart-legend .practice-legend[b-zn4xy5qkzy] {
    background: #8062d2;
}

.chart-legend .exam-legend[b-zn4xy5qkzy] {
    margin-left: .35rem;
    background: #43a5b5;
    box-shadow: 0 0 0 4px rgba(67, 165, 181, .13);
}

.chart-legend .exam-submissions-legend[b-zn4xy5qkzy] {
    background: #df875d;
    box-shadow: 0 0 0 4px rgba(223, 135, 93, .14);
}

.chart-canvas[b-zn4xy5qkzy] {
    width: 100%;
    margin-top: .7rem;
    overflow-x: auto;
}

.usage-statistics-chart[b-zn4xy5qkzy] {
    display: block;
    width: 100%;
    min-width: 1040px;
    height: auto;
    overflow: visible;
}

.future-chart-area[b-zn4xy5qkzy] {
    fill: rgba(126, 118, 144, .055);
}

.chart-grid-line[b-zn4xy5qkzy] {
    stroke: rgba(122, 98, 186, .14);
    stroke-width: 1;
}

.chart-axis-label[b-zn4xy5qkzy] {
    display: flex;
    align-items: center;
    height: 100%;
    color: var(--color-text-muted);
    font-family: inherit;
    font-size: 12px;
}

.chart-y-label[b-zn4xy5qkzy] {
    justify-content: flex-end;
}

.chart-x-label[b-zn4xy5qkzy] {
    justify-content: center;
}

.chart-x-label.future[b-zn4xy5qkzy] {
    color: #bbb5c6;
}

.chart-area[b-zn4xy5qkzy] {
    fill: url(#activeUsersAreaGradient);
    animation: chart-fade-in-b-zn4xy5qkzy .4s ease-out both;
}

.chart-line[b-zn4xy5qkzy] {
    fill: none;
    stroke: #8062d2;
    stroke-width: 3;
    stroke-linecap: round;
    stroke-linejoin: round;
    filter: drop-shadow(0 4px 5px rgba(101, 73, 174, .18));
    stroke-dasharray: 4000;
    stroke-dashoffset: 4000;
    animation: chart-line-draw-b-zn4xy5qkzy .65s ease-out forwards;
}

.chart-point-hitbox[b-zn4xy5qkzy] {
    fill: transparent;
    stroke: transparent;
    cursor: crosshair;
}

.chart-point[b-zn4xy5qkzy] {
    fill: #fff;
    stroke: #8062d2;
    stroke-width: 2.5;
    pointer-events: none;
    transition: r .14s ease, fill .14s ease;
    transform-box: fill-box;
    transform-origin: center;
    animation: chart-point-enter-b-zn4xy5qkzy .25s .42s ease-out both;
}

.chart-data-point:hover .chart-point[b-zn4xy5qkzy],
.chart-data-point:focus .chart-point[b-zn4xy5qkzy] {
    r: 6px;
    fill: #8062d2;
}

.chart-data-point:focus[b-zn4xy5qkzy] {
    outline: none;
}

.chart-data-point:focus .chart-point-hitbox[b-zn4xy5qkzy] {
    stroke: rgba(128, 98, 210, .28);
    stroke-width: 4;
}

.chart-tooltip[b-zn4xy5qkzy] {
    overflow: visible;
    pointer-events: none;
}

.chart-tooltip-content[b-zn4xy5qkzy] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .5rem;
    height: 38px;
    box-sizing: border-box;
    border: 1px solid rgba(104, 76, 177, .18);
    border-radius: .65rem;
    padding: .48rem .62rem;
    color: #fff;
    background: rgba(66, 48, 111, .94);
    box-shadow: 0 8px 20px rgba(55, 38, 101, .2);
    font-family: inherit;
    font-size: 11px;
    white-space: nowrap;
}

.chart-tooltip-content strong[b-zn4xy5qkzy] {
    font-size: 13px;
}

.chart-peak-annotation[b-zn4xy5qkzy] {
    overflow: visible;
    pointer-events: none;
    animation: chart-annotation-enter-b-zn4xy5qkzy .3s .48s ease-out both;
}

.chart-peak-annotation div[b-zn4xy5qkzy] {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 25px;
    box-sizing: border-box;
    border: 1px solid rgba(128, 98, 210, .2);
    border-radius: 999px;
    color: var(--color-primary-strong);
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 6px 16px rgba(74, 52, 130, .13);
    font-family: inherit;
    font-size: 11px;
    font-weight: 850;
    white-space: nowrap;
}

.chart-bar[b-zn4xy5qkzy] {
    outline: none;
}

.chart-bar-hitbox[b-zn4xy5qkzy] {
    fill: transparent;
    cursor: crosshair;
}

.practice-bar[b-zn4xy5qkzy],
.exam-bar[b-zn4xy5qkzy],
.exam-submission-bar[b-zn4xy5qkzy] {
    pointer-events: none;
    transition: opacity .14s ease;
    transform-box: fill-box;
    transform-origin: center bottom;
    animation: chart-bar-rise-b-zn4xy5qkzy .48s ease-out both;
}

.practice-bar[b-zn4xy5qkzy] {
    fill: #8062d2;
}

.exam-bar[b-zn4xy5qkzy] {
    fill: #43a5b5;
}

.exam-submission-bar[b-zn4xy5qkzy] {
    fill: #df875d;
}

.chart-bar:hover .practice-bar[b-zn4xy5qkzy],
.chart-bar:hover .exam-bar[b-zn4xy5qkzy],
.chart-bar:hover .exam-submission-bar[b-zn4xy5qkzy],
.chart-bar:focus .practice-bar[b-zn4xy5qkzy],
.chart-bar:focus .exam-bar[b-zn4xy5qkzy],
.chart-bar:focus .exam-submission-bar[b-zn4xy5qkzy] {
    opacity: .78;
}

.stacked-tooltip-content[b-zn4xy5qkzy] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-content: center;
    height: 70px;
    row-gap: .18rem;
}

.stacked-tooltip-content > span:first-child[b-zn4xy5qkzy],
.stacked-tooltip-content > strong[b-zn4xy5qkzy] {
    grid-column: 1 / -1;
}

.stacked-tooltip-content > strong[b-zn4xy5qkzy] {
    font-size: 12px;
}

.practice-value[b-zn4xy5qkzy] {
    color: #d9ccff;
}

.exam-value[b-zn4xy5qkzy] {
    color: #aee9f0;
    text-align: right;
}

@keyframes summary-card-enter-b-zn4xy5qkzy {
    from {
        opacity: 0;
        transform: translateY(8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes chart-line-draw-b-zn4xy5qkzy {
    to {
        stroke-dashoffset: 0;
    }
}

@keyframes chart-fade-in-b-zn4xy5qkzy {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes chart-point-enter-b-zn4xy5qkzy {
    from {
        opacity: 0;
        transform: scale(0);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

@keyframes chart-bar-rise-b-zn4xy5qkzy {
    from {
        opacity: .2;
        transform: scaleY(0);
    }
    to {
        opacity: 1;
        transform: scaleY(1);
    }
}

@keyframes chart-annotation-enter-b-zn4xy5qkzy {
    from {
        opacity: 0;
        transform: translateY(5px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (prefers-reduced-motion: reduce) {
    .summary-card[b-zn4xy5qkzy],
    .chart-area[b-zn4xy5qkzy],
    .chart-line[b-zn4xy5qkzy],
    .chart-point[b-zn4xy5qkzy],
    .practice-bar[b-zn4xy5qkzy],
    .exam-bar[b-zn4xy5qkzy],
    .exam-submission-bar[b-zn4xy5qkzy],
    .chart-peak-annotation[b-zn4xy5qkzy] {
        animation: none;
    }

    .chart-line[b-zn4xy5qkzy] {
        stroke-dashoffset: 0;
    }
}

[b-zn4xy5qkzy] .statistics-state {
    min-height: 12rem;
    display: grid;
    place-items: center;
    margin: 0;
    padding: 1.5rem;
    color: var(--color-text-muted);
    text-align: center;
}

[b-zn4xy5qkzy] .statistics-state-forbidden {
    color: var(--status-danger-text);
}

@media (max-width: 820px) {
    .statistics-toolbar[b-zn4xy5qkzy] {
        align-items: stretch;
        flex-direction: column;
        gap: 1rem;
    }

    .month-navigation[b-zn4xy5qkzy] {
        width: 100%;
        box-sizing: border-box;
    }

    .statistics-summary[b-zn4xy5qkzy] {
        grid-template-columns: 1fr;
    }

    .summary-card[b-zn4xy5qkzy] {
        min-height: 5.25rem;
    }

    .statistics-chart-panel[b-zn4xy5qkzy] {
        padding: 1rem .8rem .75rem;
    }

    .chart-heading[b-zn4xy5qkzy] {
        align-items: flex-start;
        flex-direction: column;
    }

    .chart-legends[b-zn4xy5qkzy] {
        flex-wrap: wrap;
    }

    .chart-canvas[b-zn4xy5qkzy] {
        padding-bottom: .35rem;
    }
}

@media (max-width: 480px) {
    .statistics-view-switch[b-zn4xy5qkzy] {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        width: 100%;
        box-sizing: border-box;
    }

    .statistics-view-switch button[b-zn4xy5qkzy] {
        padding-inline: .55rem;
    }

    .month-navigation[b-zn4xy5qkzy] {
        grid-template-columns: 2.65rem minmax(0, 1fr) 2.65rem;
    }
}
/* /Pages/UserPage.razor.rz.scp.css */
.user-page[b-e428ur7u1r] { --page-bottom-space: 3.5rem; --page-container-max: 1480px; overflow: hidden; }
.user-content[b-e428ur7u1r] { position: relative; z-index: 1; width: 100%; padding-top: 1.5rem; }

.profile-hero[b-e428ur7u1r] {
    position: relative; min-height: 13.5rem; padding: clamp(1.5rem, 4vw, 2.5rem);
    border: 1px solid rgba(219, 205, 246, .75); border-radius: 1.6rem;
    display: flex; align-items: center; justify-content: space-between; gap: 2rem;
    overflow: hidden; isolation: isolate; color: #fff;
    background: linear-gradient(125deg, rgba(81, 63, 153, .98), rgba(117, 83, 183, .95) 48%, rgba(190, 119, 174, .88));
    box-shadow: 0 22px 55px rgba(85, 62, 145, .25);
}
.profile-hero[b-e428ur7u1r]::after {
    content: ""; position: absolute; inset: 0; z-index: -2; opacity: .22;
    background-image: radial-gradient(rgba(255, 255, 255, .9) .75px, transparent .75px);
    background-size: 18px 18px; mask-image: linear-gradient(90deg, transparent 10%, #000 100%);
}
.hero-glow[b-e428ur7u1r] { position: absolute; z-index: -1; border-radius: 999px; pointer-events: none; }
.hero-glow-one[b-e428ur7u1r] { width: 18rem; height: 18rem; right: 5%; top: -11rem; background: rgba(255, 210, 235, .22); }
.hero-glow-two[b-e428ur7u1r] { width: 11rem; height: 11rem; left: 34%; bottom: -8rem; background: rgba(180, 226, 255, .16); }
.profile-identity[b-e428ur7u1r] { display: flex; align-items: center; gap: 1.35rem; min-width: 0; }
.profile-avatar-shell[b-e428ur7u1r] {
    position: relative; flex: 0 0 auto; width: 6.3rem; height: 6.3rem; padding: .35rem;
    border-radius: 50%; background: rgba(255, 255, 255, .22);
    box-shadow: 0 12px 28px rgba(38, 25, 80, .22), inset 0 0 0 1px rgba(255, 255, 255, .32);
    backdrop-filter: blur(6px);
}
.profile-avatar-shell[b-e428ur7u1r]  .user-avatar {
    --fallback-head-size: 2rem;
    --fallback-body-offset: 2.25rem;
    --fallback-body-spread: .72rem;
    --fallback-translate-y: -.85rem;
    width: 100%; height: 100%; border: 3px solid rgba(255, 255, 255, .92);
    background: linear-gradient(150deg, #fff, #f4eaff); box-shadow: none;
}
.profile-copy[b-e428ur7u1r] { min-width: 0; }
.profile-eyebrow[b-e428ur7u1r] { margin: 0 0 .42rem; color: rgba(255, 255, 255, .78); font-size: .9rem; font-weight: 900; letter-spacing: .14em; }
.profile-copy h1[b-e428ur7u1r] { margin: 0; color: #fff; font-size: clamp(1.8rem, 4vw, 2.65rem); font-weight: 900; line-height: 1.08; letter-spacing: -.035em; }
.hero-highlight[b-e428ur7u1r] {
    flex: 0 0 auto; min-width: 13.5rem; padding: 1.1rem 1.25rem;
    border: 1px solid rgba(255, 255, 255, .2); border-radius: 1.15rem;
    display: grid; grid-template-columns: auto auto 1fr; align-items: end; column-gap: .25rem;
    background: rgba(255, 255, 255, .12); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12); backdrop-filter: blur(12px);
}
.highlight-label[b-e428ur7u1r] { grid-column: 1 / -1; }
.highlight-label[b-e428ur7u1r] { margin-bottom: .4rem; color: rgba(255, 255, 255, .82); font-size: 1rem; font-weight: 800; }
.hero-highlight strong[b-e428ur7u1r] { font-size: 2.45rem; line-height: .95; letter-spacing: -.06em; }
.highlight-unit[b-e428ur7u1r] { padding-bottom: .18rem; font-size: 1.08rem; font-weight: 800; }

.floating-panel[b-e428ur7u1r] {
    border: 1px solid rgba(232, 225, 245, .95); border-radius: 1.35rem;
    background: rgba(255, 255, 255, .9); box-shadow: 0 16px 38px rgba(94, 75, 137, .105); backdrop-filter: blur(8px);
}
.user-grid[b-e428ur7u1r] { display: grid; grid-template-columns: minmax(0, 13fr) minmax(21rem, 7fr); gap: 1.2rem; margin-top: 1.25rem; }
.user-grid > article[b-e428ur7u1r] { padding: clamp(1.15rem, 2.5vw, 1.6rem); }
.heatmap-card[b-e428ur7u1r] { grid-column: 1; }
.mastery-card[b-e428ur7u1r] { grid-column: 1 / -1; }
.weak-topics-card[b-e428ur7u1r] {
    grid-column: 2; position: relative; min-height: 19rem; overflow: hidden;
    display: flex; flex-direction: column;
}
.weak-topics-card[b-e428ur7u1r]::after {
    content: ""; position: absolute; width: 14rem; height: 14rem; right: -6rem; top: -8rem;
    border-radius: 50%; background: radial-gradient(circle, rgba(220, 113, 137, .11), transparent 70%); pointer-events: none;
}
.weak-topics-header[b-e428ur7u1r] { position: relative; z-index: 1; }
.weak-topics-header .section-eyebrow[b-e428ur7u1r], .activity-header .section-eyebrow[b-e428ur7u1r] { margin-bottom: 0; }
.weak-topics-empty a[b-e428ur7u1r] {
    flex: 0 0 auto; padding: .68rem .9rem; border: 1px solid #ded4eb; border-radius: .72rem;
    color: #664d91; background: rgba(255, 255, 255, .82); font-size: .94rem; font-weight: 850; text-decoration: none;
}
.weak-topics-empty a:hover[b-e428ur7u1r] { border-color: #bfaed7; background: #f8f4fd; }
.weak-topics-list[b-e428ur7u1r] {
    position: relative; z-index: 1; flex: 1; margin: .75rem 0 0; padding: 0;
    display: grid; grid-template-columns: minmax(0, 1fr); grid-auto-rows: minmax(0, 1fr);
    list-style: none;
}
.weak-topics-list li[b-e428ur7u1r] { min-width: 0; }
.weak-topics-list li + li[b-e428ur7u1r] { border-top: 1px solid #eee8f3; }
.weak-topic-link[b-e428ur7u1r] {
    height: 100%; min-height: 3rem; box-sizing: border-box; padding: .38rem .25rem;
    display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .65rem;
    color: inherit; background: transparent; text-decoration: none;
    transition: background-color .16s ease, box-shadow .16s ease;
}
.weak-topic-link:hover[b-e428ur7u1r] { background: linear-gradient(90deg, rgba(244, 239, 249, .8), transparent); }
.weak-topic-link:focus-visible[b-e428ur7u1r] { position: relative; z-index: 1; outline: none; box-shadow: inset var(--ring-focus); }
.weak-topic-rank[b-e428ur7u1r] {
    width: 1.7rem; height: 1.7rem; border-radius: .52rem; display: grid; place-items: center;
    color: #af536c; background: #ffedf2; font-size: .8rem; font-weight: 900;
}
.weak-topic-copy[b-e428ur7u1r] { min-width: 0; }
.weak-topic-copy strong[b-e428ur7u1r] { overflow: hidden; display: block; color: #40384c; font-size: 1rem; font-weight: 900; line-height: 1.25; text-overflow: ellipsis; white-space: nowrap; }
.weak-topic-copy small[b-e428ur7u1r] { overflow: hidden; display: block; margin-top: .14rem; color: #7a7084; font-size: .72rem; font-weight: 700; line-height: 1.25; text-overflow: ellipsis; white-space: nowrap; }
.weak-topic-score[b-e428ur7u1r] { display: flex; flex-direction: column; align-items: flex-end; line-height: 1; }
.weak-topic-score strong[b-e428ur7u1r] { color: #af536c; font-size: 1.08rem; font-weight: 950; letter-spacing: -.04em; }
.weak-topic-score small[b-e428ur7u1r] { margin-top: .18rem; color: #817688; font-size: .68rem; font-weight: 800; }
.weak-topics-empty[b-e428ur7u1r] { margin-top: 1rem; padding: 1rem; border: 1px dashed #ded4e8; border-radius: .9rem; display: flex; align-items: stretch; flex-direction: column; gap: 1rem; color: #665c70; background: #fbfafc; }
.weak-topics-empty a[b-e428ur7u1r] { text-align: center; }
.heatmap-card[b-e428ur7u1r] {
    position: relative; z-index: 2; min-height: 19rem; overflow: visible;
    display: flex; flex-direction: column;
}
.heatmap-card:hover[b-e428ur7u1r], .heatmap-card:focus-within[b-e428ur7u1r] { z-index: 6; }
.activity-header[b-e428ur7u1r] { margin-bottom: 0; }

.heatmap-calendar[b-e428ur7u1r] {
    --heatmap-cell-gap: clamp(.1rem, .14vw, .15rem);
    position: relative; z-index: 2; width: 100%; box-sizing: border-box;
    flex: 1; margin-top: .65rem; padding: .6rem 0 .75rem;
    display: grid; grid-template-columns: auto minmax(0, 1fr); grid-template-rows: auto auto;
    align-content: center; align-items: stretch; column-gap: .65rem; overflow: visible;
}
.heatmap-weekdays[b-e428ur7u1r] {
    grid-column: 1; grid-row: 1;
    padding-top: 1.38rem; display: grid; grid-template-rows: repeat(7, minmax(0, 1fr));
    gap: var(--heatmap-cell-gap); color: #81768d; font-size: .68rem; font-weight: 750; line-height: 1;
}
.weekday-mon[b-e428ur7u1r] { grid-row: 1; } .weekday-wed[b-e428ur7u1r] { grid-row: 3; } .weekday-fri[b-e428ur7u1r] { grid-row: 5; } .weekday-sun[b-e428ur7u1r] { grid-row: 7; }
.heatmap-chart[b-e428ur7u1r] { grid-column: 2; grid-row: 1; width: 100%; min-width: 0; }
.heatmap-month-labels[b-e428ur7u1r] {
    height: 1rem; margin-bottom: .38rem; display: grid;
    grid-template-columns: repeat(var(--heatmap-week-count), minmax(0, 1fr));
    column-gap: var(--heatmap-cell-gap); color: #766a84; font-size: .72rem; font-weight: 800; line-height: 1;
}
.heatmap-month-labels span[b-e428ur7u1r] { white-space: nowrap; }
.heatmap-week-grid[b-e428ur7u1r] {
    display: grid; grid-template-columns: repeat(var(--heatmap-week-count), minmax(0, 1fr));
    grid-template-rows: repeat(7, auto); grid-auto-flow: column; gap: var(--heatmap-cell-gap);
}
.cell[b-e428ur7u1r] {
    width: 100%; height: auto; aspect-ratio: 1; border-radius: 3px;
    background: #e9e7ee; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .42);
}
.cell.lv-1[b-e428ur7u1r] { background: #d9eee7; } .cell.lv-2[b-e428ur7u1r] { background: #8fd5b6; } .cell.lv-3[b-e428ur7u1r] { background: #2c9f7b; }
.cell-empty[b-e428ur7u1r] { visibility: hidden; }
.heatmap-tooltip-cell[b-e428ur7u1r] { position: relative; cursor: pointer; }
.heatmap-tooltip-cell:hover[b-e428ur7u1r], .heatmap-tooltip-cell:focus-visible[b-e428ur7u1r] { z-index: 12; outline: 2px solid rgba(84, 70, 126, .42); outline-offset: 1px; }
.heatmap-tooltip-cell[b-e428ur7u1r]::after {
    content: attr(data-tooltip); position: absolute; left: 50%; bottom: calc(100% + .7rem); z-index: 20;
    min-width: 10.5rem;
    padding: .42rem .65rem; border: 1px solid #e5deef; border-radius: .62rem; opacity: 0;
    color: #403751; background: #fff; box-shadow: 0 8px 20px rgba(73, 57, 109, .16);
    font-size: .94rem; line-height: 1.5; text-align: left; white-space: pre-line; pointer-events: none;
    transform: translateX(-50%) translateY(.18rem) scale(.96); transform-origin: bottom center;
    transition: opacity .14s ease, transform .16s ease;
}
.heatmap-tooltip-cell:hover[b-e428ur7u1r]::after, .heatmap-tooltip-cell:focus-visible[b-e428ur7u1r]::after { opacity: 1; transform: translateX(-50%) translateY(0) scale(1); }
.heatmap-legend[b-e428ur7u1r] {
    grid-column: 2; grid-row: 2; justify-self: end; margin-top: .7rem;
    display: flex; align-items: center; gap: .38rem; color: #81778b; font-size: .82rem; font-weight: 750;
}
.legend-text[b-e428ur7u1r] { font-size: .78rem; }
.legend-cell[b-e428ur7u1r] { width: .78rem; height: .78rem; border-radius: 3px; background: #e9e7ee; }
.legend-cell.level-1[b-e428ur7u1r] { background: #d9eee7; }
.legend-cell.level-2[b-e428ur7u1r] { background: #8fd5b6; }
.legend-cell.level-3[b-e428ur7u1r] { background: #2c9f7b; }
.activity-stats[b-e428ur7u1r] { display: grid; grid-template-columns: repeat(2, 1fr); margin-top: auto; border-top: 1px solid #eee9f5; padding-top: 1rem; }
.activity-stats > div[b-e428ur7u1r] { display: flex; align-items: baseline; justify-content: center; gap: .58rem; color: #716678; font-size: 1rem; font-weight: 750; }
.activity-stats > div + div[b-e428ur7u1r] { border-left: 1px solid #eee9f5; }
.activity-stats strong[b-e428ur7u1r] { color: #4d4262; font-size: 1.32rem; font-weight: 900; }
.activity-stats small[b-e428ur7u1r] { font-size: .92rem; font-weight: 800; }

.mastery-card[b-e428ur7u1r] { position: relative; overflow: hidden; }
.mastery-card[b-e428ur7u1r]::before {
    content: ""; position: absolute; width: 18rem; height: 18rem; right: -8rem; top: -10rem;
    border-radius: 50%; background: radial-gradient(circle, rgba(130, 103, 194, .1), transparent 68%); pointer-events: none;
}
.mastery-header[b-e428ur7u1r] { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: start; gap: 1.5rem; }
.mastery-header-copy[b-e428ur7u1r] { min-width: 0; }
.mastery-header-copy .section-eyebrow[b-e428ur7u1r] { margin-bottom: 0; }
.section-eyebrow[b-e428ur7u1r] { margin: 0 0 .42rem; color: #7659ad; font-size: 1.2rem; font-weight: 900; letter-spacing: .06em; }
.view-switch[b-e428ur7u1r] { display: inline-flex; gap: .22rem; padding: .24rem; border: 1px solid #e4ddec; border-radius: .78rem; background: rgba(245, 242, 248, .88); }
.view-icon-button[b-e428ur7u1r] {
    width: 2.9rem; height: 2.9rem; padding: 0; border: 0; border-radius: .68rem;
    display: grid; place-items: center; color: #84788f; background: transparent; cursor: pointer;
    transition: color .15s ease, background-color .15s ease, box-shadow .15s ease, transform .15s ease;
}
.view-icon-button svg[b-e428ur7u1r] { width: 1.5rem; height: 1.5rem; overflow: visible; fill: currentColor; }
.view-icon-button svg path[b-e428ur7u1r] { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; }
.view-icon-button:hover[b-e428ur7u1r] { color: #58466b; background: rgba(255, 255, 255, .82); }
.view-icon-button.active[b-e428ur7u1r] { color: #fff; background: #5c4774; box-shadow: 0 4px 11px rgba(70, 51, 96, .2); }
.view-icon-button:focus-visible[b-e428ur7u1r] { outline: none; box-shadow: var(--ring-focus); }
.mastery-board[b-e428ur7u1r] { margin-top: 1rem; border: 1px solid #ebe5f1; border-radius: 1.15rem; overflow: hidden; background: #fbfafc; }
.mastery-toolbar[b-e428ur7u1r] {
    padding: 1.05rem 1.15rem; border-bottom: 1px solid #ebe5f1;
    display: flex; align-items: center; justify-content: space-between; gap: 1rem; background: rgba(255, 255, 255, .88);
}
.toolbar-copy h3[b-e428ur7u1r] { margin: 0; color: #40364f; font-size: 1.14rem; font-weight: 900; }
.toolbar-copy span[b-e428ur7u1r] { display: block; margin-top: .28rem; color: #776d82; font-size: .94rem; font-weight: 700; }
.mastery-controls[b-e428ur7u1r] { display: flex; align-items: center; gap: .55rem; }
.segmented-control[b-e428ur7u1r] { display: inline-flex; gap: .18rem; padding: .2rem; border: 1px solid #e4ddec; border-radius: .72rem; background: #f5f2f8; }
.segment-button[b-e428ur7u1r] {
    min-width: 4.25rem; min-height: 2.7rem; border: 0; border-radius: .58rem; padding: .62rem .9rem;
    color: #665b71; background: transparent; font-size: 1rem; font-weight: 850; cursor: pointer;
    transition: color .15s ease, background-color .15s ease, box-shadow .15s ease, transform .15s ease;
}
.segment-button:hover[b-e428ur7u1r] { color: #59456f; background: rgba(255, 255, 255, .75); }
.segment-button.active[b-e428ur7u1r] { color: #fff; background: #7055ad; box-shadow: 0 4px 10px rgba(88, 62, 145, .22); }
.metric-control .segment-button.active[b-e428ur7u1r] { color: #5e438e; background: #fff; box-shadow: 0 2px 7px rgba(64, 46, 96, .12); }
.segment-button:focus-visible[b-e428ur7u1r] { outline: none; box-shadow: var(--ring-focus); }
.mastery-list[b-e428ur7u1r] { padding: .4rem 1.15rem .65rem; }
.mastery-row[b-e428ur7u1r] {
    --row-accent: #dc7189; --row-soft: #fff0f3;
    min-width: 0; padding: 1.05rem 0; display: grid; grid-template-columns: minmax(13rem, 1.05fr) minmax(17rem, 2fr); align-items: center; gap: 1.35rem;
}
.mastery-row + .mastery-row[b-e428ur7u1r] { border-top: 1px solid #eee9f2; }
.mastery-row.tone-growing[b-e428ur7u1r] { --row-accent: #d09a36; --row-soft: #fff6e4; }
.mastery-row.tone-strong[b-e428ur7u1r] { --row-accent: #36a47d; --row-soft: #eaf8f2; }
.mastery-row-heading[b-e428ur7u1r] { min-width: 0; display: flex; align-items: center; gap: .7rem; }
.mastery-rank[b-e428ur7u1r] {
    flex: 0 0 auto; width: 2rem; height: 2rem; border-radius: .6rem; display: grid; place-items: center;
    color: var(--row-accent); background: var(--row-soft); font-size: .9rem; font-weight: 900;
}
.mastery-name[b-e428ur7u1r] { min-width: 0; display: flex; flex-direction: column; gap: .16rem; }
.mastery-name strong[b-e428ur7u1r] { overflow: hidden; color: #40384c; font-size: 1.08rem; font-weight: 850; text-overflow: ellipsis; white-space: nowrap; }
.mastery-name span[b-e428ur7u1r] { color: #786e82; font-size: .94rem; font-weight: 700; }
.mastery-progress-group[b-e428ur7u1r] { min-width: 0; display: grid; grid-template-columns: minmax(7rem, 1fr) 3.8rem 5.4rem; align-items: center; gap: .8rem; }
.mastery-progress[b-e428ur7u1r] { height: .68rem; border-radius: 999px; overflow: hidden; background: #ece8ef; }
.mastery-progress span[b-e428ur7u1r] { display: block; height: 100%; border-radius: inherit; background: var(--row-accent); box-shadow: 0 0 10px color-mix(in srgb, var(--row-accent) 35%, transparent); transition: width .3s ease; }
.mastery-score[b-e428ur7u1r] { color: #453b52; font-size: 1.12rem; font-weight: 900; text-align: right; }
.mastery-status[b-e428ur7u1r] { padding: .48rem .6rem; border-radius: 999px; color: var(--row-accent); background: var(--row-soft); font-size: .88rem; font-weight: 850; text-align: center; white-space: nowrap; }
.mastery-bubbles[b-e428ur7u1r] {
    min-height: 18rem; padding: clamp(1.5rem, 4vw, 2.5rem);
    display: flex; flex-wrap: wrap; align-items: center; align-content: center; justify-content: center; gap: clamp(.9rem, 2vw, 1.4rem);
    background: radial-gradient(circle at 50% 45%, rgba(126, 96, 190, .055), transparent 56%);
}
.mastery-bubble[b-e428ur7u1r] {
    --row-accent: #dc7189; --row-soft: #fff0f3;
    position: relative; isolation: isolate; flex: 0 0 auto;
    width: var(--bubble-size); height: var(--bubble-size); border: 1px solid color-mix(in srgb, var(--row-accent) 38%, #d8d1df);
    border-radius: 50%; display: grid; place-items: center; overflow: hidden;
    color: #40364c; background: rgba(255, 255, 255, .94);
    box-shadow: 0 12px 26px rgba(62, 47, 89, .12), inset 0 0 0 4px rgba(255, 255, 255, .65);
    transition: transform .18s ease, box-shadow .18s ease;
}
.mastery-bubble[b-e428ur7u1r]::before {
    content: ""; position: absolute; inset: 0; z-index: -2;
    background: linear-gradient(to top, var(--row-soft) 0 var(--bubble-fill), rgba(255, 255, 255, .12) var(--bubble-fill) 100%);
}
.mastery-bubble[b-e428ur7u1r]::after {
    content: ""; position: absolute; z-index: -1; width: 58%; height: 22%; left: 13%; top: 9%;
    border-radius: 50%; background: rgba(255, 255, 255, .38); transform: rotate(-18deg); filter: blur(1px);
}
.mastery-bubble.tone-growing[b-e428ur7u1r] { --row-accent: #d09a36; --row-soft: #fff1cb; }
.mastery-bubble.tone-strong[b-e428ur7u1r] { --row-accent: #36a47d; --row-soft: #dff5eb; }
.mastery-bubble:hover[b-e428ur7u1r] { transform: translateY(-3px); box-shadow: 0 17px 30px rgba(62, 47, 89, .16), inset 0 0 0 4px rgba(255, 255, 255, .7); }
.bubble-content[b-e428ur7u1r] { width: 78%; display: flex; align-items: center; flex-direction: column; text-align: center; line-height: 1.15; }
.bubble-content > strong[b-e428ur7u1r] {
    width: 100%; overflow: hidden; display: -webkit-box; color: #3f364a; font-size: clamp(1rem, 1.2vw, 1.08rem); font-weight: 900;
    -webkit-box-orient: vertical; -webkit-line-clamp: 2;
}
.bubble-score[b-e428ur7u1r] { margin-top: .42rem; color: var(--row-accent); font-size: clamp(1.35rem, 2vw, 1.6rem); font-weight: 950; letter-spacing: -.035em; }
.bubble-content small[b-e428ur7u1r] { margin-top: .35rem; color: #665d6e; font-size: .88rem; font-weight: 750; }
.mastery-empty[b-e428ur7u1r] { min-height: 12rem; padding: 2rem; display: grid; place-items: center; align-content: center; color: #8b8197; text-align: center; }
.mastery-empty > span[b-e428ur7u1r] { width: 2.7rem; height: 2.7rem; border-radius: .85rem; display: grid; place-items: center; color: #765eb0; background: #eee8f8; font-size: 1.25rem; }
.mastery-empty strong[b-e428ur7u1r] { margin-top: .75rem; color: #4a4057; font-size: 1.12rem; }
.mastery-empty p[b-e428ur7u1r] { margin: .35rem 0 0; font-size: 1rem; }

@media (max-width: 1100px) {
    .user-grid[b-e428ur7u1r] { grid-template-columns: minmax(0, 1fr); }
    .heatmap-card[b-e428ur7u1r], .weak-topics-card[b-e428ur7u1r], .mastery-card[b-e428ur7u1r] { grid-column: 1; }
    .heatmap-card[b-e428ur7u1r], .weak-topics-card[b-e428ur7u1r] { min-height: auto; }
    .activity-header[b-e428ur7u1r] { margin-bottom: 1.15rem; }
    .activity-stats[b-e428ur7u1r] { margin-top: 1rem; }
}

@media (min-width: 1101px) {
    .user-grid > .heatmap-card[b-e428ur7u1r], .user-grid > .weak-topics-card[b-e428ur7u1r] { padding-block: 1.25rem; }
}

@media (max-width: 960px) {
    .profile-hero[b-e428ur7u1r] { align-items: flex-start; }
    .hero-highlight[b-e428ur7u1r] { min-width: 11.5rem; }
    .heatmap-calendar[b-e428ur7u1r] { justify-content: flex-start; overflow-x: auto; overflow-y: hidden; }
}

@media (max-width: 820px) {
    .mastery-toolbar[b-e428ur7u1r] { align-items: flex-start; flex-direction: column; }
    .mastery-controls[b-e428ur7u1r] { width: 100%; }
    .segmented-control[b-e428ur7u1r] { flex: 1; }
    .segment-button[b-e428ur7u1r] { flex: 1; }
    .mastery-row[b-e428ur7u1r] { grid-template-columns: minmax(9rem, .9fr) minmax(13rem, 1.4fr); gap: .8rem; }
}

@media (max-width: 680px) {
    .user-page[b-e428ur7u1r] { padding-bottom: 2rem; }
    .user-content[b-e428ur7u1r] { padding-top: .85rem; }
    .profile-hero[b-e428ur7u1r] { min-height: auto; padding: 1.35rem; border-radius: 1.25rem; flex-direction: column; gap: 1.25rem; }
    .profile-identity[b-e428ur7u1r] { align-items: flex-start; gap: 1rem; }
    .profile-avatar-shell[b-e428ur7u1r] { width: 4.8rem; height: 4.8rem; }
    .hero-highlight[b-e428ur7u1r] { width: 100%; box-sizing: border-box; }
    .mastery-header[b-e428ur7u1r] { gap: .75rem; }
    .user-grid[b-e428ur7u1r] { gap: .9rem; }
    .user-grid > article[b-e428ur7u1r] { padding: 1rem; border-radius: 1.1rem; }
    .activity-stats > div[b-e428ur7u1r] { align-items: center; flex-direction: column; gap: .15rem; text-align: center; }
    .mastery-controls[b-e428ur7u1r] { align-items: stretch; flex-direction: column; }
    .mastery-row[b-e428ur7u1r] { padding: .85rem 0; grid-template-columns: 1fr; gap: .55rem; }
    .mastery-progress-group[b-e428ur7u1r] { grid-template-columns: minmax(5rem, 1fr) 3.7rem 5.2rem; }
    .mastery-bubbles[b-e428ur7u1r] { padding: 1.2rem .7rem; gap: .7rem; }
    .mastery-bubble[b-e428ur7u1r] { width: min(var(--bubble-size), 172px); height: min(var(--bubble-size), 172px); }
    .heatmap-chart[b-e428ur7u1r] { min-width: 40rem; }
}

@media (max-width: 430px) {
    .profile-identity[b-e428ur7u1r] { flex-direction: column; }
    .weak-topic-link[b-e428ur7u1r] { grid-template-columns: auto minmax(0, 1fr) auto; }
}
/* /Pages/UsersPage.razor.rz.scp.css */
.users-content[b-eelgvdo9nv] {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: 1rem;
    margin-top: 1.25rem;
    min-height: 0;
}

.users-search-toolbar[b-eelgvdo9nv] {
    width: min(100%, 32rem);
}

.users-table-panel[b-eelgvdo9nv] {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    border-color: rgba(122, 98, 186, .14);
}

.users-content[b-eelgvdo9nv]  .pagination-nav {
    margin-top: .15rem;
    font-size: .92rem;
}

.users-table[b-eelgvdo9nv] {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

.users-table th[b-eelgvdo9nv],
.users-table td[b-eelgvdo9nv] {
    padding: .9rem 1rem;
    text-align: left;
    vertical-align: middle;
}

.users-table td[b-eelgvdo9nv] {
    font-size: .96rem;
}

.users-table th[b-eelgvdo9nv] {
    position: sticky;
    top: 0;
    z-index: 1;
    border-bottom: 1px solid rgba(122, 98, 186, .14);
    color: var(--color-text-subtle);
    background: rgba(252, 251, 255, .96);
    box-shadow: 0 3px 10px rgba(88, 65, 148, .035);
    font-size: .86rem;
    font-weight: 800;
    letter-spacing: .025em;
}

.users-table th:nth-child(1)[b-eelgvdo9nv] { width: 22%; }
.users-table th:nth-child(2)[b-eelgvdo9nv] { width: 13%; }
.users-table th:nth-child(3)[b-eelgvdo9nv] { width: 27%; }
.users-table th:nth-child(4)[b-eelgvdo9nv] { width: 19%; }
.users-table th:nth-child(5)[b-eelgvdo9nv] { width: 19%; }

.users-table tbody tr + tr[b-eelgvdo9nv] {
    border-top: 1px solid var(--surface-border);
}

.users-table tbody tr[b-eelgvdo9nv] {
    transition: background-color .16s ease, box-shadow .16s ease;
}

.users-table tbody tr:hover[b-eelgvdo9nv] {
    background: rgba(248, 246, 255, .62);
    box-shadow: inset 3px 0 0 rgba(132, 99, 209, .28);
}

.users-sort-button[b-eelgvdo9nv] {
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    border: 0;
    padding: .25rem 0;
    color: inherit;
    background: transparent;
    font: inherit;
    font-size: 1rem;
    font-weight: inherit;
    letter-spacing: inherit;
    cursor: pointer;
}

.users-sort-button:hover[b-eelgvdo9nv] {
    color: var(--color-primary-strong);
}

.users-sort-button:focus-visible[b-eelgvdo9nv] {
    outline: none;
    box-shadow: var(--ring-focus);
}

.sort-direction-icon[b-eelgvdo9nv] {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    width: 1rem;
    color: #d6d1df;
    font-size: .7rem;
    line-height: .68;
}

.sort-caret[b-eelgvdo9nv] {
    display: block;
}

.sort-caret.ascending.active[b-eelgvdo9nv] {
    color: #2b9b55;
}

.sort-caret.descending.active[b-eelgvdo9nv] {
    color: #e25b61;
}

.activity-sort-button .sort-caret.descending.active[b-eelgvdo9nv] {
    color: #2b9b55;
}

.activity-sort-button .sort-caret.ascending.active[b-eelgvdo9nv] {
    color: #e25b61;
}

.mobile-users-sort[b-eelgvdo9nv] {
    display: none;
}

.users-table td strong[b-eelgvdo9nv] {
    color: var(--color-text-strong);
}

.user-name-cell[b-eelgvdo9nv] {
    display: flex;
    align-items: center;
    gap: .7rem;
    min-width: 0;
}

.user-name-cell strong[b-eelgvdo9nv] {
    min-width: 0;
    overflow-wrap: anywhere;
}

.user-name-cell[b-eelgvdo9nv]  .user-avatar {
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
}

.users-table code[b-eelgvdo9nv] {
    color: var(--color-text-subtle);
    font-size: .9rem;
    white-space: normal;
    overflow-wrap: anywhere;
}

.user-uid-link[b-eelgvdo9nv] {
    display: inline-block;
    border-radius: .35rem;
    text-decoration: none;
}

.user-uid-link:hover code[b-eelgvdo9nv],
.user-uid-link:focus-visible code[b-eelgvdo9nv] {
    color: var(--color-primary-strong);
    text-decoration: underline;
}

.user-uid-link:focus-visible[b-eelgvdo9nv] {
    outline: none;
    box-shadow: var(--ring-focus);
}

.last-login-at[b-eelgvdo9nv],
.last-active-at[b-eelgvdo9nv] {
    color: var(--color-text-subtle);
    white-space: nowrap;
}

.role-badge[b-eelgvdo9nv] {
    display: inline-flex;
    border-radius: var(--pill-radius);
    padding: .3rem .62rem;
    font-size: .84rem;
    font-weight: 800;
}

.role-badge.student[b-eelgvdo9nv] {
    color: #2563a5;
    background: rgba(96, 165, 250, .16);
}

.role-badge.teacher[b-eelgvdo9nv] {
    color: #147963;
    background: rgba(52, 211, 153, .16);
}

.role-badge.administrator[b-eelgvdo9nv] {
    color: #7447bd;
    background: rgba(155, 132, 239, .18);
}

[b-eelgvdo9nv] .users-state {
    min-height: 12rem;
    display: grid;
    place-items: center;
    margin: 0;
    padding: 1.5rem;
    color: var(--color-text-muted);
    text-align: center;
}

[b-eelgvdo9nv] .users-state-forbidden {
    color: var(--status-danger-text);
}

@media (max-width: 640px) {
    .users-table-panel[b-eelgvdo9nv] {
        border: 0;
        background: transparent;
        box-shadow: none;
    }

    .mobile-users-sort[b-eelgvdo9nv] {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: flex-end;
        gap: .45rem;
        color: var(--color-text-muted);
        font-size: .84rem;
        font-weight: 750;
    }

    .mobile-users-sort .users-sort-button[b-eelgvdo9nv] {
        border: 1px solid var(--surface-border);
        padding: .48rem .7rem;
        background: var(--surface-primary);
        box-shadow: var(--surface-shadow-soft);
    }

    .users-table[b-eelgvdo9nv],
    .users-table tbody[b-eelgvdo9nv],
    .users-table tr[b-eelgvdo9nv],
    .users-table td[b-eelgvdo9nv] {
        display: block;
        width: 100%;
    }

    .users-table thead[b-eelgvdo9nv] {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip: rect(0 0 0 0);
    }

    .users-table th[b-eelgvdo9nv] {
        position: static;
    }

    .users-table tbody[b-eelgvdo9nv] {
        display: grid;
        gap: .75rem;
    }

    .users-table tbody tr[b-eelgvdo9nv] {
        display: grid;
        gap: .7rem;
        border: 1px solid var(--surface-border);
        border-radius: var(--panel-radius);
        padding: .9rem;
        background: var(--surface-primary);
        box-shadow: var(--surface-shadow-soft);
    }

    .users-table tbody tr + tr[b-eelgvdo9nv] {
        border-top: 1px solid var(--surface-border);
    }

    .users-table td[b-eelgvdo9nv] {
        display: grid;
        grid-template-columns: 4.25rem minmax(0, 1fr);
        align-items: center;
        padding: 0;
    }

    .users-table td[b-eelgvdo9nv]::before {
        content: attr(data-label);
        color: var(--color-text-muted);
        font-size: .8rem;
        font-weight: 800;
    }

}
/* /Pages/WrongQuestionsPage.razor.rz.scp.css */
.wrong-questions-page[b-012pok8ouj] {
    --review-ink: #2f3152;
    --review-muted: #7b7694;
    --review-purple: #8068cf;
    font-size: 1.2rem;
    line-height: 1.75;
}

.filter-panel[b-012pok8ouj] {
    border: 1px solid rgba(218, 207, 241, .88);
    border-radius: .95rem;
    padding: .38rem;
    background: rgba(255, 255, 255, .64);
    box-shadow: 0 6px 18px rgba(105, 85, 155, .06);
}

.wrong-questions-content[b-012pok8ouj]  .filter-toolbar {
    border: 0;
    border-radius: .72rem;
    background: transparent;
}


.wrong-questions-scroll-view[b-012pok8ouj] {
    padding: .42rem .5rem .65rem;
}
.wrong-questions-list[b-012pok8ouj] {
    display: grid;
    gap: .65rem;
}
.wrong-question-card[b-012pok8ouj] {
    overflow: hidden;
    position: relative;
    border: 1px solid #ede8f5;
    border-radius: .78rem;
    color: #4c4b65;
    background: rgba(255,255,255,.9);
}
.wrong-question-card[b-012pok8ouj]::before {
    content: "";
    width: .2rem;
    position: absolute;
    inset: .85rem auto auto .45rem;
    height: 2.6rem;
    border-radius: 999px;
    background: linear-gradient(180deg, #c5b4f5, #e7a6c8);
    opacity: .68;
}
.wrong-question-card > header[b-012pok8ouj] {
    padding: 1.2rem 1.4rem 0;
}
.question-meta[b-012pok8ouj] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: .8rem;
    margin-bottom: .85rem;
}
.question-id[b-012pok8ouj] {
    margin: 0;
    font-size: 1rem;
    font-weight: 850;
    overflow-wrap: anywhere;
}
.question-id a[b-012pok8ouj] {
    color: #6d55b8;
    text-decoration: none;
}
.question-id a:hover[b-012pok8ouj] {
    color: #62418f;
    text-decoration: underline;
}
.question-id a:focus-visible[b-012pok8ouj], .analysis summary:focus-visible[b-012pok8ouj], .empty-review a:focus-visible[b-012pok8ouj] {
    outline: 2px solid #8564b2;
    outline-offset: 4px;
    border-radius: .25rem;
}
.accuracy-badge[b-012pok8ouj] {
    flex-shrink: 0;
    border: 1px solid rgba(220,95,119,.2);
    border-radius: 2rem;
    padding: .25rem .65rem;
    background: rgba(235,109,133,.08);
    color: #c24e68;
    font-size: .95rem;
    font-weight: 700;
}
.wrong-question-card h2[b-012pok8ouj] {
    margin: 0;
    color: #393346;
    font-size: 1.2rem;
    font-weight: 650;
    line-height: 1.85;
    overflow-wrap: anywhere;
}
.option-list[b-012pok8ouj] {
    display: grid;
    gap: .45rem;
    padding: 0;
    margin: 1rem 1.4rem 1.2rem;
    list-style: none;
}
.option-list li[b-012pok8ouj] {
    display: grid;
    grid-template-columns: 1.8rem minmax(0,1fr);
    align-items: baseline;
    gap: .5rem;
    border: 1px solid #ede9f1;
    border-radius: .65rem;
    padding: .65rem .8rem;
    color: #686071;
    background: #fbfafc;
    line-height: 1.8;
    font-size: 1.1rem;
}
.option-list li.correct-option[b-012pok8ouj] {
    color: #286c5c;
    background: #eff8f4;
    border-color: #cfe6dc;
}
.option-key[b-012pok8ouj] {
    color: #92869f;
    font-weight: 750;
}
.correct-option .option-key[b-012pok8ouj] {
    color: #286c5c;
}
.correct-label[b-012pok8ouj] {
    font-size: .9rem;
    font-weight: 700;
    color: #286c5c;
}
.option-content[b-012pok8ouj] {
    display: inline-grid;
    gap: .25rem;
    min-width: 0;
    overflow-wrap: anywhere;
}
.analysis[b-012pok8ouj] {
    border-top: 1px solid #ede8f2;
    background: #fdfcfe;
}
.analysis summary[b-012pok8ouj] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: .85rem 1.4rem;
    color: #77618f;
    font-size: 1rem;
    font-weight: 650;
    cursor: pointer;
    list-style: none;
}
.analysis summary[b-012pok8ouj]::-webkit-details-marker {
    display: none;
}
.analysis summary:hover[b-012pok8ouj] {
    background: #f6f2fa;
}
.analysis summary span[b-012pok8ouj] {
    font-size: 1.1rem;
    transition: transform .15s;
}
.analysis[open] summary span[b-012pok8ouj] {
    transform: rotate(45deg);
}
.analysis-body[b-012pok8ouj] {
    display: grid;
    gap: 1rem;
    padding: .4rem 1.4rem 1.25rem;
}
.analysis-summary[b-012pok8ouj] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .5rem 1rem;
}
.analysis-answer[b-012pok8ouj] {
    margin: 0;
    color: #286c5c;
    font-weight: 750;
}
.analysis-answer strong[b-012pok8ouj] {
    margin-right: .4rem;
    font-size: 1rem;
}
.answer-stats[b-012pok8ouj] {
    margin: 0;
    color: #8a8195;
    font-size: 1rem;
}
.wrong-questions-content[b-012pok8ouj]  .pagination-nav {
    margin-top: 0;
}
.empty-review[b-012pok8ouj] {
    margin: auto;
    padding: 1.5rem;
    display: grid;
    justify-items: center;
    text-align: center;
}

.empty-mark[b-012pok8ouj] {
    width: 3.2rem;
    height: 3.2rem;
    border: 1px solid #d9cdf2;
    border-radius: 1rem;
    display: grid;
    place-items: center;
    color: var(--review-purple);
    background: #f4efff;
    font-size: 1.2rem;
    font-weight: 900;
    transform: rotate(-4deg);
}

.empty-review h2[b-012pok8ouj] {
    margin: .75rem 0 .2rem;
    color: var(--review-ink);
    font-size: 1rem;
}
.empty-review p[b-012pok8ouj] {
    margin: 0;
    color: var(--review-muted);
    font-size: 1rem;
}

.empty-review a[b-012pok8ouj] {
    margin-top: .75rem;
    border-radius: .6rem;
    padding: .48rem .75rem;
    color: #fff;
    background: var(--button-primary-bg);
    box-shadow: var(--button-primary-shadow);
    font-size: 1rem;
    font-weight: 850;
    text-decoration: none;
}


/* Keep nested shared components at the same readable scale on this page. */
.wrong-questions-content[b-012pok8ouj]  .filter-search,
.wrong-questions-content[b-012pok8ouj]  .subject-filter,
.wrong-questions-content[b-012pok8ouj]  .filter-search-button,
.wrong-questions-content[b-012pok8ouj]  .explanation-tab,
.wrong-questions-content[b-012pok8ouj]  .pagination-nav {
    font-size: 1rem;
}

.wrong-question-card[b-012pok8ouj]  .question-situation,
.wrong-question-card[b-012pok8ouj]  .explanation-panel {
    font-size: 1.1rem;
    line-height: 1.8;
}

.wrong-question-card[b-012pok8ouj]  .explanation-panel h2 {
    font-size: 1.1rem;
}

.wrong-question-card[b-012pok8ouj]  .ai-explanation-warning {
    font-size: 1rem;
    line-height: 1.75;
}

@media (max-width: 780px) {
    .wrong-question-card > header[b-012pok8ouj] {
        padding: 1rem 1rem 0;
    }
    .option-list[b-012pok8ouj] {
        margin: .85rem 1rem 1rem;
    }
    .option-list li[b-012pok8ouj] {
        padding: .55rem .65rem;
        grid-template-columns: 1.3rem minmax(0,1fr);
    }
    .analysis summary[b-012pok8ouj] {
        padding: .8rem 1rem;
    }
    .analysis-body[b-012pok8ouj] {
        padding: .25rem 1rem 1rem;
    }
}
@media (max-width: 520px) {
    .filter-panel[b-012pok8ouj] {
        padding: .2rem;
    }
}
@media (prefers-reduced-motion: reduce) {
    .analysis summary span[b-012pok8ouj] {
        transition: none;
    }
}
