/* /Components/Account/Pages/Login.razor.rz.scp.css */
:host[b-dq6mn8a3jc] {
    display: block;
    min-height: 100%;
}

/* =========================================================
   Page
========================================================= */

.login-page[b-dq6mn8a3jc] {
    position: relative;
    isolation: isolate;
    min-height: 100dvh;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 48px 24px 30px;
    background: linear-gradient( 180deg, #f8fbff 0%, #f3f7fc 48%, #eef3f9 100% );
    color: #172033;
    box-sizing: border-box;
}

/* =========================================================
   Background decoration
========================================================= */

.login-background[b-dq6mn8a3jc] {
    position: absolute;
    z-index: -1;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

.login-background-grid[b-dq6mn8a3jc] {
    position: absolute;
    inset: 0;
    opacity: 0.48;
    background-image: linear-gradient( rgba(148, 163, 184, 0.07) 1px, transparent 1px ), linear-gradient( 90deg, rgba(148, 163, 184, 0.07) 1px, transparent 1px );
    background-size: 36px 36px;
    mask-image: linear-gradient( to bottom, rgba(0, 0, 0, 0.7), transparent 78% );
}

.login-background-glow[b-dq6mn8a3jc] {
    position: absolute;
    border-radius: 999px;
    filter: blur(2px);
}

.login-background-glow-left[b-dq6mn8a3jc] {
    top: -230px;
    left: -190px;
    width: 560px;
    height: 560px;
    background: radial-gradient( circle, rgba(59, 130, 246, 0.16) 0%, rgba(96, 165, 250, 0.08) 42%, rgba(96, 165, 250, 0) 72% );
}

.login-background-glow-right[b-dq6mn8a3jc] {
    right: -220px;
    bottom: -250px;
    width: 620px;
    height: 620px;
    background: radial-gradient( circle, rgba(99, 102, 241, 0.12) 0%, rgba(129, 140, 248, 0.06) 44%, rgba(129, 140, 248, 0) 72% );
}

/* =========================================================
   Container
========================================================= */

.login-container[b-dq6mn8a3jc] {
    width: 100%;
    max-width: 470px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* =========================================================
   Card
========================================================= */

.login-card[b-dq6mn8a3jc] {
    width: 100%;
    padding: 42px 42px 38px;
    border: 1px solid rgba(218, 226, 237, 0.9);
    border-radius: 28px;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 2px 4px rgba(15, 23, 42, 0.02), 0 14px 36px rgba(15, 23, 42, 0.07), 0 42px 90px rgba(15, 23, 42, 0.08);
    backdrop-filter: blur(22px);
    -webkit-backdrop-filter: blur(22px);
    box-sizing: border-box;
}

/* =========================================================
   Brand
========================================================= */

.login-brand[b-dq6mn8a3jc] {
    display: flex;
    align-items: center;
    gap: 13px;
}

.login-logo[b-dq6mn8a3jc] {
    width: 46px;
    height: 46px;
    flex: 0 0 46px;
    display: grid;
    place-items: center;
    border-radius: 15px;
    background: linear-gradient( 145deg, #172033 0%, #0f172a 100% );
    color: #ffffff;
    box-shadow: 0 7px 16px rgba(15, 23, 42, 0.17), inset 0 1px 0 rgba(255, 255, 255, 0.14);
}

    .login-logo svg[b-dq6mn8a3jc] {
        width: 24px;
        height: 24px;
    }

.login-brand-text[b-dq6mn8a3jc] {
    min-width: 0;
    display: flex;
    flex-direction: column;
}

    .login-brand-text strong[b-dq6mn8a3jc] {
        color: #111827;
        font-size: 19px;
        font-weight: 780;
        line-height: 1.2;
        letter-spacing: -0.035em;
    }

    .login-brand-text span[b-dq6mn8a3jc] {
        margin-top: 3px;
        color: #8690a0;
        font-size: 12px;
        font-weight: 570;
        line-height: 1.3;
        letter-spacing: -0.01em;
    }

/* =========================================================
   Heading
========================================================= */

.login-heading[b-dq6mn8a3jc] {
    margin: 34px 0 30px;
}

.login-eyebrow[b-dq6mn8a3jc] {
    display: inline-flex;
    align-items: center;
    min-height: 25px;
    padding: 0 10px;
    border: 1px solid #dbe6f5;
    border-radius: 999px;
    background: #f5f9ff;
    color: #4773b9;
    font-size: 10px;
    font-weight: 720;
    line-height: 1;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.login-heading h1[b-dq6mn8a3jc] {
    margin: 14px 0 0;
    color: #101828;
    font-size: 30px;
    font-weight: 790;
    line-height: 1.27;
    letter-spacing: -0.048em;
}

.login-heading p[b-dq6mn8a3jc] {
    margin: 11px 0 0;
    color: #748093;
    font-size: 14px;
    font-weight: 470;
    line-height: 1.65;
    letter-spacing: -0.015em;
}

/* =========================================================
   Form
========================================================= */

.login-form[b-dq6mn8a3jc] {
    display: flex;
    flex-direction: column;
}

.login-field[b-dq6mn8a3jc] {
    margin-bottom: 20px;
}

    .login-field > label[b-dq6mn8a3jc],
    .login-label-row label[b-dq6mn8a3jc] {
        color: #344054;
        font-size: 13px;
        font-weight: 670;
        line-height: 1.4;
        letter-spacing: -0.01em;
    }

    .login-field > label[b-dq6mn8a3jc] {
        display: block;
        margin-bottom: 8px;
    }

.login-label-row[b-dq6mn8a3jc] {
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.login-forgot[b-dq6mn8a3jc] {
    color: #65738a;
    font-size: 12px;
    font-weight: 620;
    line-height: 1.4;
    text-decoration: none;
    transition: color 150ms ease, opacity 150ms ease;
}

    .login-forgot:hover[b-dq6mn8a3jc] {
        color: #2563eb;
    }

    .login-forgot:focus-visible[b-dq6mn8a3jc] {
        border-radius: 5px;
        outline: 3px solid rgba(37, 99, 235, 0.14);
        outline-offset: 3px;
    }

/* =========================================================
   Inputs
========================================================= */

.login-input-shell[b-dq6mn8a3jc] {
    position: relative;
    display: block;
}

.login-input-icon[b-dq6mn8a3jc] {
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 16px;
    width: 19px;
    height: 19px;
    display: grid;
    place-items: center;
    color: #929cab;
    pointer-events: none;
    transform: translateY(-50%);
    transition: color 150ms ease;
}

    .login-input-icon svg[b-dq6mn8a3jc] {
        width: 19px;
        height: 19px;
    }

/*
   InputText는 별도 Blazor 컴포넌트이므로
   CSS Isolation 환경에서 ::deep을 사용합니다.
*/

.login-input-shell[b-dq6mn8a3jc]  input.login-input {
    width: 100%;
    height: 54px;
    min-height: 54px;
    margin: 0;
    padding: 0 17px 0 49px;
    border: 1px solid #d8e0eb;
    border-radius: 14px;
    outline: none;
    background: #f9fbfd;
    color: #172033;
    font-family: inherit;
    font-size: 14px;
    font-weight: 540;
    line-height: normal;
    letter-spacing: -0.01em;
    appearance: none;
    -webkit-appearance: none;
    box-shadow: none;
    box-sizing: border-box;
    caret-color: #2563eb;
    transition: border-color 150ms ease, background-color 150ms ease, box-shadow 150ms ease;
}

    .login-input-shell[b-dq6mn8a3jc]  input.login-input::placeholder {
        color: #a0a9b7;
        font-weight: 450;
        opacity: 1;
    }

    .login-input-shell[b-dq6mn8a3jc]  input.login-input:hover {
        border-color: #c5cfdd;
        background: #ffffff;
    }

    .login-input-shell[b-dq6mn8a3jc]  input.login-input:focus {
        border-color: #5b7fe5;
        background: #ffffff;
        box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.1), 0 2px 6px rgba(15, 23, 42, 0.04);
    }

.login-input-shell:focus-within .login-input-icon[b-dq6mn8a3jc] {
    color: #3d69cf;
}

/* Browser autofill */

.login-input-shell[b-dq6mn8a3jc]  input.login-input:-webkit-autofill,
.login-input-shell[b-dq6mn8a3jc]  input.login-input:-webkit-autofill:hover,
.login-input-shell[b-dq6mn8a3jc]  input.login-input:-webkit-autofill:focus {
    -webkit-text-fill-color: #172033;
    -webkit-box-shadow: 0 0 0 1000px #ffffff inset;
    box-shadow: 0 0 0 1000px #ffffff inset;
    caret-color: #172033;
    transition: background-color 9999s ease-out;
}

/* Invalid state */

.login-input-shell[b-dq6mn8a3jc]  input.login-input.invalid {
    border-color: #e59a94;
    background: #fffafa;
}

    .login-input-shell[b-dq6mn8a3jc]  input.login-input.invalid:focus {
        border-color: #d92d20;
        box-shadow: 0 0 0 4px rgba(217, 45, 32, 0.09);
    }

/* =========================================================
   Validation
========================================================= */

.login-validation[b-dq6mn8a3jc] {
    display: block;
    margin-top: 7px;
    color: #c43228;
    font-size: 12px;
    font-weight: 560;
    line-height: 1.45;
    letter-spacing: -0.01em;
}

.login-validation-summary[b-dq6mn8a3jc] {
    margin: 0 0 20px;
    padding: 13px 15px;
    border: 1px solid #f0c7c3;
    border-radius: 13px;
    background: #fff6f5;
    color: #b42318;
    font-size: 12px;
    font-weight: 540;
    line-height: 1.55;
}

    .login-validation-summary:empty[b-dq6mn8a3jc] {
        display: none;
    }

    .login-validation-summary[b-dq6mn8a3jc]  ul {
        margin: 0;
        padding-left: 18px;
    }

    .login-validation-summary[b-dq6mn8a3jc]  li + li {
        margin-top: 3px;
    }

/* =========================================================
   Remember checkbox
========================================================= */

.login-remember[b-dq6mn8a3jc] {
    width: fit-content;
    margin: -2px 0 23px;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #536075;
    font-size: 13px;
    font-weight: 550;
    line-height: 1.4;
    cursor: pointer;
    user-select: none;
}

    .login-remember[b-dq6mn8a3jc]  input.login-checkbox {
        width: 19px;
        height: 19px;
        flex: 0 0 19px;
        margin: 0;
        border: 1px solid #c7d0dc;
        border-radius: 6px;
        outline: none;
        background-color: #ffffff;
        appearance: none;
        -webkit-appearance: none;
        cursor: pointer;
        box-shadow: none;
        box-sizing: border-box;
        transition: border-color 140ms ease, background-color 140ms ease, box-shadow 140ms ease;
    }

        .login-remember[b-dq6mn8a3jc]  input.login-checkbox:hover {
            border-color: #8794a7;
        }

        .login-remember[b-dq6mn8a3jc]  input.login-checkbox:focus-visible {
            box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.11);
        }

        .login-remember[b-dq6mn8a3jc]  input.login-checkbox:checked {
            border-color: #1d4ed8;
            background-color: #2563eb;
            background-image: url( "data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m4 8 2.5 2.5L12 5'%3E%3C/path%3E%3C/svg%3E" );
            background-position: center;
            background-repeat: no-repeat;
            background-size: 13px;
        }

/* =========================================================
   Primary button
========================================================= */

.login-submit[b-dq6mn8a3jc] {
    width: 100%;
    height: 54px;
    min-height: 54px;
    margin: 0;
    padding: 0 20px;
    border: 0;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    background: linear-gradient( 135deg, #2563eb 0%, #3158d9 100% );
    color: #ffffff;
    font-family: inherit;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: -0.01em;
    cursor: pointer;
    box-shadow: 0 9px 20px rgba(37, 99, 235, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.18);
    box-sizing: border-box;
    transition: background-color 150ms ease, transform 150ms ease, box-shadow 150ms ease, filter 150ms ease;
}

    .login-submit svg[b-dq6mn8a3jc] {
        width: 18px;
        height: 18px;
        transition: transform 150ms ease;
    }

    .login-submit:hover[b-dq6mn8a3jc] {
        filter: brightness(1.035);
        box-shadow: 0 12px 25px rgba(37, 99, 235, 0.26), inset 0 1px 0 rgba(255, 255, 255, 0.18);
        transform: translateY(-1px);
    }

        .login-submit:hover svg[b-dq6mn8a3jc] {
            transform: translateX(2px);
        }

    .login-submit:active[b-dq6mn8a3jc] {
        filter: none;
        transform: translateY(0);
    }

    .login-submit:focus-visible[b-dq6mn8a3jc] {
        outline: none;
        box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.16), 0 9px 20px rgba(37, 99, 235, 0.2);
    }

/* =========================================================
   Divider
========================================================= */

.login-divider[b-dq6mn8a3jc] {
    margin: 25px 0;
    display: flex;
    align-items: center;
    gap: 14px;
    color: #9ba5b3;
    font-size: 11px;
    font-weight: 630;
    line-height: 1;
}

    .login-divider[b-dq6mn8a3jc]::before,
    .login-divider[b-dq6mn8a3jc]::after {
        height: 1px;
        flex: 1;
        content: "";
        background: linear-gradient( 90deg, transparent, #e2e7ee );
    }

    .login-divider[b-dq6mn8a3jc]::after {
        background: linear-gradient( 90deg, #e2e7ee, transparent );
    }

/* =========================================================
   Passkey button
========================================================= */

/*
   PasskeySubmit 역시 별도 Blazor 컴포넌트이므로
   CSS Isolation 환경에서 ::deep을 사용합니다.
*/

.login-form[b-dq6mn8a3jc]  .login-passkey-button {
    width: 100%;
    height: 54px;
    min-height: 54px;
    margin: 0;
    padding: 0 16px;
    border: 1px solid #d6dfeb;
    border-radius: 14px;
    outline: none;
    background: #ffffff;
    color: #344054;
    font-family: inherit;
    font-size: 14px;
    font-weight: 660;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
    box-sizing: border-box;
    transition: border-color 150ms ease, background-color 150ms ease, color 150ms ease, box-shadow 150ms ease, transform 150ms ease;
}

    .login-form[b-dq6mn8a3jc]  .login-passkey-button:hover {
        border-color: #9db7e9;
        background: #f7faff;
        color: #245ec7;
        box-shadow: 0 7px 18px rgba(37, 99, 235, 0.09);
        transform: translateY(-1px);
    }

    .login-form[b-dq6mn8a3jc]  .login-passkey-button:active {
        transform: translateY(0);
    }

    .login-form[b-dq6mn8a3jc]  .login-passkey-button:focus-visible {
        border-color: #5b7fe5;
        box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.11);
    }

.login-passkey-content[b-dq6mn8a3jc] {
    position: relative;
    width: 100%;
    display: grid;
    grid-template-columns: 24px 1fr 24px;
    align-items: center;
    gap: 10px;
}

.login-passkey-icon[b-dq6mn8a3jc] {
    width: 22px;
    height: 22px;
    display: grid;
    place-items: center;
    color: #64748b;
}

    .login-passkey-icon svg[b-dq6mn8a3jc] {
        width: 19px;
        height: 19px;
    }

.login-passkey-label[b-dq6mn8a3jc] {
    text-align: center;
}

.login-passkey-arrow[b-dq6mn8a3jc] {
    width: 17px;
    height: 17px;
    justify-self: end;
    color: #8b96a7;
    transition: transform 150ms ease;
}

.login-form[b-dq6mn8a3jc]  .login-passkey-button:hover
.login-passkey-arrow {
    transform: translateX(2px);
}

/* =========================================================
   Footer
========================================================= */

.login-footer[b-dq6mn8a3jc] {
    margin-top: 29px;
    padding-top: 24px;
    border-top: 1px solid #e7ecf2;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 13px;
    text-align: center;
}

.login-register[b-dq6mn8a3jc] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    color: #778397;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.5;
}

    .login-register a[b-dq6mn8a3jc] {
        color: #2563eb;
        font-weight: 700;
        text-decoration: none;
    }

        .login-register a:hover[b-dq6mn8a3jc] {
            color: #1d4ed8;
            text-decoration: underline;
            text-underline-offset: 3px;
        }

        .login-register a:focus-visible[b-dq6mn8a3jc],
        .login-secondary-link:focus-visible[b-dq6mn8a3jc] {
            border-radius: 5px;
            outline: 3px solid rgba(37, 99, 235, 0.14);
            outline-offset: 3px;
        }

.login-secondary-link[b-dq6mn8a3jc] {
    color: #8a94a4;
    font-size: 12px;
    font-weight: 560;
    line-height: 1.45;
    text-decoration: none;
    transition: color 150ms ease;
}

    .login-secondary-link:hover[b-dq6mn8a3jc] {
        color: #526075;
    }

/* =========================================================
   Copyright
========================================================= */

.login-copyright[b-dq6mn8a3jc] {
    margin: 21px 0 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    color: #98a2b1;
    font-size: 11px;
    font-weight: 520;
    line-height: 1.4;
    text-align: center;
}

.login-copyright-divider[b-dq6mn8a3jc] {
    color: #bbc2cc;
}

/* =========================================================
   Tablet
========================================================= */

@media (max-width: 720px) {
    .login-page[b-dq6mn8a3jc] {
        padding: 30px 20px 24px;
    }

    .login-card[b-dq6mn8a3jc] {
        padding: 38px 34px 35px;
        border-radius: 25px;
    }
}

/* =========================================================
   Mobile
========================================================= */

@media (max-width: 520px) {
    .login-page[b-dq6mn8a3jc] {
        min-height: 100dvh;
        overflow: visible;
        align-items: flex-start;
        padding: max(22px, env(safe-area-inset-top)) 14px max(20px, env(safe-area-inset-bottom));
        background: #ffffff;
    }

    .login-background[b-dq6mn8a3jc] {
        display: none;
    }

    .login-container[b-dq6mn8a3jc] {
        min-height: calc( 100dvh - max(22px, env(safe-area-inset-top)) - max(20px, env(safe-area-inset-bottom)) );
    }

    .login-card[b-dq6mn8a3jc] {
        width: 100%;
        padding: 18px 8px 26px;
        border: 0;
        border-radius: 0;
        background: #ffffff;
        box-shadow: none;
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
    }

    .login-logo[b-dq6mn8a3jc] {
        width: 44px;
        height: 44px;
        flex-basis: 44px;
        border-radius: 14px;
    }

        .login-logo svg[b-dq6mn8a3jc] {
            width: 23px;
            height: 23px;
        }

    .login-brand-text strong[b-dq6mn8a3jc] {
        font-size: 18px;
    }

    .login-heading[b-dq6mn8a3jc] {
        margin: 31px 0 27px;
    }

    .login-eyebrow[b-dq6mn8a3jc] {
        min-height: 24px;
        padding: 0 9px;
    }

    .login-heading h1[b-dq6mn8a3jc] {
        margin-top: 13px;
        font-size: 27px;
        line-height: 1.29;
    }

    .login-heading p[b-dq6mn8a3jc] {
        margin-top: 9px;
        font-size: 13px;
    }

    .login-input-shell[b-dq6mn8a3jc]  input.login-input,
    .login-submit[b-dq6mn8a3jc],
    .login-form[b-dq6mn8a3jc]  .login-passkey-button {
        height: 54px;
        min-height: 54px;
        border-radius: 14px;
    }

    .login-footer[b-dq6mn8a3jc] {
        margin-top: 27px;
    }

    .login-copyright[b-dq6mn8a3jc] {
        margin-top: auto;
        padding-top: 28px;
    }
}

/* =========================================================
   Small mobile
========================================================= */

@media (max-width: 370px) {
    .login-page[b-dq6mn8a3jc] {
        padding-right: 12px;
        padding-left: 12px;
    }

    .login-card[b-dq6mn8a3jc] {
        padding-right: 4px;
        padding-left: 4px;
    }

    .login-label-row[b-dq6mn8a3jc] {
        gap: 8px;
    }

    .login-heading h1[b-dq6mn8a3jc] {
        font-size: 25px;
    }

    .login-register[b-dq6mn8a3jc] {
        flex-wrap: wrap;
    }
}

/* =========================================================
   Reduced motion
========================================================= */

@media (prefers-reduced-motion: reduce) {
    .login-submit[b-dq6mn8a3jc],
    .login-submit svg[b-dq6mn8a3jc],
    .login-forgot[b-dq6mn8a3jc],
    .login-secondary-link[b-dq6mn8a3jc],
    .login-input-icon[b-dq6mn8a3jc],
    .login-passkey-arrow[b-dq6mn8a3jc],
    .login-form[b-dq6mn8a3jc]  .login-passkey-button,
    .login-input-shell[b-dq6mn8a3jc]  input.login-input,
    .login-remember[b-dq6mn8a3jc]  input.login-checkbox {
        transition: none;
    }
}
/* /Components/Account/Pages/Register.razor.rz.scp.css */
:host[b-oik1aaqiwr] {
    display: block;
    min-height: 100%;
}

.register-page[b-oik1aaqiwr] {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 56px 24px;
    background: radial-gradient( circle at 50% -10%, rgba(96, 165, 250, 0.18) 0%, rgba(96, 165, 250, 0) 42% ), linear-gradient( 180deg, #f8fbff 0%, #f1f5fb 100% );
}

.register-card[b-oik1aaqiwr] {
    width: 100%;
    max-width: 510px;
    padding: 46px;
    border: 1px solid #e3eaf4;
    border-radius: 28px;
    background: rgba(255, 255, 255, 0.97);
    box-shadow: 0 2px 4px rgba(15, 23, 42, 0.02), 0 18px 50px rgba(15, 23, 42, 0.09), 0 40px 90px rgba(15, 23, 42, 0.06);
    backdrop-filter: blur(16px);
}

.register-brand[b-oik1aaqiwr] {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 34px;
}

.register-logo[b-oik1aaqiwr] {
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    display: grid;
    place-items: center;
    border-radius: 15px;
    color: #ffffff;
    background: linear-gradient( 145deg, #2563eb 0%, #3b82f6 55%, #60a5fa 100% );
    box-shadow: 0 8px 18px rgba(37, 99, 235, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.28);
}

    .register-logo svg[b-oik1aaqiwr] {
        width: 27px;
        height: 27px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

.register-brand-text[b-oik1aaqiwr] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

    .register-brand-text strong[b-oik1aaqiwr] {
        color: #0f172a;
        font-size: 18px;
        font-weight: 750;
        line-height: 1.25;
        letter-spacing: -0.025em;
    }

    .register-brand-text span[b-oik1aaqiwr] {
        color: #8491a4;
        font-size: 12px;
        font-weight: 600;
        line-height: 1.4;
        letter-spacing: 0.015em;
    }

.register-heading[b-oik1aaqiwr] {
    margin-bottom: 30px;
}

.register-eyebrow[b-oik1aaqiwr] {
    display: block;
    margin-bottom: 10px;
    color: #2563eb;
    font-size: 11px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.13em;
}

.register-heading h1[b-oik1aaqiwr] {
    margin: 0;
    color: #101828;
    font-size: 31px;
    font-weight: 760;
    line-height: 1.22;
    letter-spacing: -0.045em;
}

.register-heading p[b-oik1aaqiwr] {
    margin: 11px 0 0;
    color: #697586;
    font-size: 14px;
    line-height: 1.7;
    word-break: keep-all;
}

.register-form[b-oik1aaqiwr] {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.register-field[b-oik1aaqiwr] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

    .register-field > label[b-oik1aaqiwr] {
        color: #344054;
        font-size: 13px;
        font-weight: 670;
        line-height: 1.4;
    }

.register-input-wrap[b-oik1aaqiwr] {
    display: flex;
    align-items: center;
    height: 52px;
    border: 1px solid #d8e0eb;
    border-radius: 14px;
    background: #fff;
    overflow: hidden;
}

.register-input-icon[b-oik1aaqiwr] {
    width: 48px;
    flex: 0 0 48px;
    display: flex;
    justify-content: center;
    align-items: center;
}

    .register-input-wrap:hover[b-oik1aaqiwr] {
        border-color: #bdc8d8;
    }

    .register-input-wrap:focus-within[b-oik1aaqiwr] {
        border-color: #3b82f6;
        box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.11), 0 1px 2px rgba(15, 23, 42, 0.03);
    }


    .register-input-icon svg[b-oik1aaqiwr] {
        width: 20px;
        height: 20px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

[b-oik1aaqiwr] .register-input {
    flex: 1;
    width: 100%;
    height: 52px;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    padding: 0 16px 0 0 !important;
    margin: 0 !important;
    color: #111827;
    font-size: 15px;
    font-family: inherit;
    box-shadow: none !important;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}

    [b-oik1aaqiwr] .register-input:focus,
    [b-oik1aaqiwr] .register-input:hover,
    [b-oik1aaqiwr] .register-input:active {
        border: 0 !important;
        outline: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    [b-oik1aaqiwr] .register-input::placeholder {
        color: #9ca3af;
    }

.register-field-help[b-oik1aaqiwr] {
    color: #98a2b3;
    font-size: 11px;
    font-weight: 500;
    line-height: 1.5;
}

.register-field-error[b-oik1aaqiwr] {
    display: block;
    color: #dc2626;
    font-size: 12px;
    font-weight: 560;
    line-height: 1.5;
}

.register-validation-summary[b-oik1aaqiwr] {
    margin: 0;
    padding: 13px 15px;
    border: 1px solid #fecaca;
    border-radius: 12px;
    color: #b42318;
    background: #fff5f5;
    font-size: 12px;
    line-height: 1.6;
}

    .register-validation-summary:empty[b-oik1aaqiwr] {
        display: none;
    }

    .register-validation-summary ul[b-oik1aaqiwr] {
        margin: 0;
        padding-left: 18px;
    }

    .register-validation-summary li + li[b-oik1aaqiwr] {
        margin-top: 3px;
    }

[b-oik1aaqiwr] .validation-message {
    color: #dc2626;
}

[b-oik1aaqiwr] input.invalid {
    color: #172033;
}

[b-oik1aaqiwr] input.valid {
    color: #172033;
}

.register-submit[b-oik1aaqiwr] {
    width: 100%;
    min-height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    margin-top: 4px;
    padding: 0 20px;
    border: 0;
    border-radius: 14px;
    color: #ffffff;
    background: linear-gradient( 135deg, #2563eb 0%, #3275ed 52%, #3b82f6 100% );
    box-shadow: 0 9px 20px rgba(37, 99, 235, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.18);
    cursor: pointer;
    font-family: inherit;
    font-size: 14px;
    font-weight: 720;
    transition: transform 150ms ease, box-shadow 150ms ease, filter 150ms ease;
}

    .register-submit:hover[b-oik1aaqiwr] {
        filter: brightness(1.025);
        transform: translateY(-1px);
        box-shadow: 0 12px 26px rgba(37, 99, 235, 0.27), inset 0 1px 0 rgba(255, 255, 255, 0.2);
    }

    .register-submit:active[b-oik1aaqiwr] {
        transform: translateY(0);
        box-shadow: 0 6px 14px rgba(37, 99, 235, 0.19), inset 0 1px 0 rgba(255, 255, 255, 0.14);
    }

    .register-submit:focus-visible[b-oik1aaqiwr] {
        outline: 3px solid rgba(59, 130, 246, 0.24);
        outline-offset: 3px;
    }

    .register-submit svg[b-oik1aaqiwr] {
        width: 18px;
        height: 18px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
        stroke-linecap: round;
        stroke-linejoin: round;
        transition: transform 150ms ease;
    }

    .register-submit:hover svg[b-oik1aaqiwr] {
        transform: translateX(2px);
    }

.register-divider[b-oik1aaqiwr] {
    display: flex;
    align-items: center;
    margin: 29px 0 23px;
}

    .register-divider span[b-oik1aaqiwr] {
        width: 100%;
        height: 1px;
        background: #ebeff5;
    }

.register-login[b-oik1aaqiwr] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    color: #697586;
    font-size: 13px;
}

    .register-login a[b-oik1aaqiwr] {
        color: #2563eb;
        font-weight: 720;
        text-decoration: none;
    }

        .register-login a:hover[b-oik1aaqiwr] {
            text-decoration: underline;
            text-underline-offset: 3px;
        }

.register-security[b-oik1aaqiwr] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    margin-top: 22px;
    color: #98a2b3;
    font-size: 11px;
    line-height: 1.5;
    text-align: center;
}

    .register-security svg[b-oik1aaqiwr] {
        width: 15px;
        height: 15px;
        flex: 0 0 15px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

@media (max-width: 640px) {
    .register-page[b-oik1aaqiwr] {
        min-height: 100dvh;
        align-items: flex-start;
        padding: 22px 14px;
        background: linear-gradient( 180deg, #f8fbff 0%, #f3f6fb 100% );
    }

    .register-card[b-oik1aaqiwr] {
        max-width: none;
        padding: 30px 22px 26px;
        border-radius: 22px;
        box-shadow: 0 12px 35px rgba(15, 23, 42, 0.08);
    }

    .register-brand[b-oik1aaqiwr] {
        margin-bottom: 29px;
    }

    .register-logo[b-oik1aaqiwr] {
        width: 44px;
        height: 44px;
        flex-basis: 44px;
        border-radius: 14px;
    }

        .register-logo svg[b-oik1aaqiwr] {
            width: 25px;
            height: 25px;
        }

    .register-heading[b-oik1aaqiwr] {
        margin-bottom: 26px;
    }

        .register-heading h1[b-oik1aaqiwr] {
            font-size: 27px;
        }

        .register-heading p[b-oik1aaqiwr] {
            font-size: 13px;
        }

    .register-form[b-oik1aaqiwr] {
        gap: 18px;
    }

    .register-input-wrap[b-oik1aaqiwr],
    .register-submit[b-oik1aaqiwr] {
        min-height: 50px;
    }

    .register-input[b-oik1aaqiwr] {
        height: 48px;
        font-size: 16px;
    }

    .register-divider[b-oik1aaqiwr] {
        margin: 26px 0 21px;
    }
}

@media (max-width: 380px) {
    .register-page[b-oik1aaqiwr] {
        padding: 12px 8px;
    }

    .register-card[b-oik1aaqiwr] {
        padding: 26px 18px 23px;
        border-radius: 20px;
    }

    .register-heading h1[b-oik1aaqiwr] {
        font-size: 25px;
    }

    .register-login[b-oik1aaqiwr] {
        flex-direction: column;
        gap: 4px;
    }

    .register-security[b-oik1aaqiwr] {
        align-items: flex-start;
        text-align: left;
    }
}

@media (prefers-reduced-motion: reduce) {
    .register-input-wrap[b-oik1aaqiwr],
    .register-submit[b-oik1aaqiwr],
    .register-submit svg[b-oik1aaqiwr] {
        transition: none;
    }
}
/* /Components/AI/AIChatPanel.razor.rz.scp.css */
.ai-panel[b-1vw1vbiq1h] {
    margin-top: 28px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid #edf2f7;
    border-radius: 20px;
    background: #ffffff;
    box-shadow: 0 12px 32px rgba(15, 23, 42, 0.05);
}

/* ==========================
   Header
========================== */

.ai-header[b-1vw1vbiq1h] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 66px;
    padding: 14px 20px;
    border-bottom: 1px solid #edf2f7;
    background: linear-gradient(180deg, #ffffff 0%, #fafbfd 100%);
}

.ai-header-left[b-1vw1vbiq1h] {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 11px;
}

.ai-header-icon[b-1vw1vbiq1h] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    border-radius: 11px;
    background: rgba(37, 99, 235, 0.1);
    color: #2563eb;
}

    .ai-header-icon i[b-1vw1vbiq1h] {
        font-size: 16px;
    }

.ai-header-text[b-1vw1vbiq1h] {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 2px;
}

    .ai-header-text strong[b-1vw1vbiq1h] {
        overflow: hidden;
        color: #111827;
        font-size: 14px;
        font-weight: 750;
        line-height: 1.3;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .ai-header-text span[b-1vw1vbiq1h] {
        overflow: hidden;
        color: #94a3b8;
        font-size: 11px;
        font-weight: 500;
        line-height: 1.3;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

.ai-status[b-1vw1vbiq1h] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    flex: 0 0 auto;
    color: #64748b;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.ai-status-dot[b-1vw1vbiq1h] {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #22c55e;
    box-shadow: 0 0 0 4px rgba(34, 197, 94, 0.1);
}

/* ==========================
   Body
========================== */

.ai-body[b-1vw1vbiq1h] {
    height: 150px;
    min-height: 150px;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 20px;
    background: #fafbfd;
    scroll-behavior: smooth;
    transition: height 0.28s ease, min-height 0.28s ease;
}

.ai-panel.expanded .ai-body[b-1vw1vbiq1h] {
    height: 420px;
    min-height: 420px;
}

/* ==========================
   Empty
========================== */

.ai-empty[b-1vw1vbiq1h] {
    display: flex;
    min-height: 110px;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    padding: 4px 16px;
    color: #94a3b8;
    text-align: center;
}

.ai-empty-icon[b-1vw1vbiq1h] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    margin-bottom: 10px;
    border-radius: 13px;
    background: rgba(37, 99, 235, 0.08);
    color: #2563eb;
}

    .ai-empty-icon i[b-1vw1vbiq1h] {
        font-size: 19px;
    }

.ai-empty strong[b-1vw1vbiq1h] {
    margin-bottom: 5px;
    color: #475569;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.4;
}

.ai-empty p[b-1vw1vbiq1h] {
    margin: 0;
    color: #94a3b8;
    font-size: 11px;
    font-weight: 450;
    line-height: 1.65;
}

/* ==========================
   Messages
========================== */

.ai-messages[b-1vw1vbiq1h] {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.message-row[b-1vw1vbiq1h] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    animation: messageFadeIn-b-1vw1vbiq1h 0.2s ease;
}

    .message-row.user-row[b-1vw1vbiq1h] {
        justify-content: flex-end;
    }

    .message-row.ai-row[b-1vw1vbiq1h] {
        justify-content: flex-start;
    }

.message-avatar[b-1vw1vbiq1h] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    flex: 0 0 30px;
    margin-top: 20px;
    border-radius: 10px;
    background: rgba(37, 99, 235, 0.1);
    color: #2563eb;
}

    .message-avatar i[b-1vw1vbiq1h] {
        font-size: 13px;
    }

.message-content[b-1vw1vbiq1h] {
    display: flex;
    max-width: 84%;
    min-width: 0;
    flex-direction: column;
}

.user-row .message-content[b-1vw1vbiq1h] {
    align-items: flex-end;
}

.ai-row .message-content[b-1vw1vbiq1h] {
    align-items: flex-start;
}

.message-label[b-1vw1vbiq1h] {
    margin-bottom: 6px;
    color: #94a3b8;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.msg[b-1vw1vbiq1h] {
    max-width: 100%;
    padding: 11px 15px;
    border-radius: 15px;
    font-size: 12px;
    font-weight: 450;
    line-height: 1.7;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}

    .msg.user[b-1vw1vbiq1h] {
        border-bottom-right-radius: 5px;
        background: #2563eb;
        color: #ffffff;
        box-shadow: 0 5px 14px rgba(37, 99, 235, 0.18);
    }

    .msg.ai[b-1vw1vbiq1h] {
        border: 1px solid #e5e7eb;
        border-bottom-left-radius: 5px;
        background: #ffffff;
        color: #334155;
        box-shadow: 0 4px 14px rgba(15, 23, 42, 0.04);
    }

/* ==========================
   Loading
========================== */

.loading[b-1vw1vbiq1h] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-height: 42px;
}

.loading-dot[b-1vw1vbiq1h] {
    display: inline-block;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #2563eb;
    animation: loadingPulse-b-1vw1vbiq1h 1.15s infinite ease-in-out;
}

    .loading-dot:nth-child(2)[b-1vw1vbiq1h] {
        animation-delay: 0.15s;
    }

    .loading-dot:nth-child(3)[b-1vw1vbiq1h] {
        animation-delay: 0.3s;
    }

.loading-text[b-1vw1vbiq1h] {
    margin-left: 6px;
    color: #64748b;
    font-size: 11px;
}

/* ==========================
   Input
========================== */

.ai-input[b-1vw1vbiq1h] {
    padding: 16px 18px 13px;
    border-top: 1px solid #edf2f7;
    background: #ffffff;
}

.ai-input-wrapper[b-1vw1vbiq1h] {
    position: relative;
    width: 100%;
}

.ai-textbox[b-1vw1vbiq1h] {
    width: 100%;
    height: 48px;
    padding: 0 54px 0 18px;
    border: 1px solid #dbe3f0;
    border-radius: 999px;
    outline: none;
    background: #ffffff;
    color: #111827;
    font-family: inherit;
    font-size: 13px;
    font-weight: 450;
    transition: border-color 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease;
}

    .ai-textbox[b-1vw1vbiq1h]::placeholder {
        color: #9ca3af;
    }

    .ai-textbox:hover:not(:disabled)[b-1vw1vbiq1h] {
        border-color: #cbd5e1;
    }

    .ai-textbox:focus[b-1vw1vbiq1h] {
        border-color: #2563eb;
        box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.1);
    }

    .ai-textbox:disabled[b-1vw1vbiq1h] {
        background: #f8fafc;
        color: #94a3b8;
        cursor: not-allowed;
    }

.ai-send-btn[b-1vw1vbiq1h] {
    position: absolute;
    top: 50%;
    right: 7px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    padding: 0;
    transform: translateY(-50%);
    border: 0;
    border-radius: 50%;
    background: #2563eb;
    color: #ffffff;
    cursor: pointer;
    box-shadow: 0 4px 10px rgba(37, 99, 235, 0.2);
    transition: background-color 0.16s ease, transform 0.16s ease, opacity 0.16s ease, box-shadow 0.16s ease;
}

    .ai-send-btn:hover:not(:disabled)[b-1vw1vbiq1h] {
        background: #1d4ed8;
        transform: translateY(-50%) scale(1.05);
        box-shadow: 0 6px 14px rgba(37, 99, 235, 0.25);
    }

    .ai-send-btn:active:not(:disabled)[b-1vw1vbiq1h] {
        transform: translateY(-50%) scale(0.96);
    }

    .ai-send-btn:focus-visible[b-1vw1vbiq1h] {
        outline: 3px solid rgba(37, 99, 235, 0.2);
        outline-offset: 2px;
    }

    .ai-send-btn:disabled[b-1vw1vbiq1h] {
        opacity: 0.4;
        cursor: not-allowed;
        box-shadow: none;
    }

.send-arrow[b-1vw1vbiq1h] {
    display: block;
    margin-top: -2px;
    color: #ffffff;
    font-family: Arial, sans-serif;
    font-size: 19px;
    font-weight: 700;
    line-height: 1;
}

.ai-send-btn .spinner-border[b-1vw1vbiq1h] {
    width: 14px;
    height: 14px;
    border-width: 2px;
}

.ai-input-footer[b-1vw1vbiq1h] {
    margin-top: 9px;
    color: #a1a1aa;
    font-size: 9px;
    font-weight: 450;
    line-height: 1.45;
    text-align: center;
}

/* ==========================
   Scroll
========================== */

.ai-body[b-1vw1vbiq1h] {
    scrollbar-width: thin;
    scrollbar-color: #cbd5e1 transparent;
}

    .ai-body[b-1vw1vbiq1h]::-webkit-scrollbar {
        width: 7px;
    }

    .ai-body[b-1vw1vbiq1h]::-webkit-scrollbar-track {
        background: transparent;
    }

    .ai-body[b-1vw1vbiq1h]::-webkit-scrollbar-thumb {
        border: 2px solid transparent;
        border-radius: 999px;
        background: #cbd5e1;
        background-clip: padding-box;
    }

        .ai-body[b-1vw1vbiq1h]::-webkit-scrollbar-thumb:hover {
            background: #94a3b8;
            background-clip: padding-box;
        }

/* ==========================
   Animations
========================== */

@keyframes messageFadeIn-b-1vw1vbiq1h {
    from {
        opacity: 0;
        transform: translateY(6px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes loadingPulse-b-1vw1vbiq1h {
    0%, 80%, 100% {
        opacity: 0.28;
        transform: scale(0.85);
    }

    40% {
        opacity: 1;
        transform: scale(1);
    }
}

/* ==========================
   Tablet
========================== */

@media (max-width: 900px) {
    .ai-panel.expanded .ai-body[b-1vw1vbiq1h] {
        height: 380px;
        min-height: 380px;
    }

    .message-content[b-1vw1vbiq1h] {
        max-width: 88%;
    }
}

/* ==========================
   Mobile
========================== */

@media (max-width: 768px) {
    .ai-panel[b-1vw1vbiq1h] {
        margin-top: 20px;
        border-radius: 16px;
    }

    .ai-header[b-1vw1vbiq1h] {
        min-height: 60px;
        padding: 12px 16px;
    }

    .ai-header-icon[b-1vw1vbiq1h] {
        width: 34px;
        height: 34px;
        flex-basis: 34px;
    }

    .ai-header-text strong[b-1vw1vbiq1h] {
        font-size: 13px;
    }

    .ai-header-text span[b-1vw1vbiq1h] {
        font-size: 10px;
    }

    .ai-status[b-1vw1vbiq1h] {
        display: none;
    }

    .ai-body[b-1vw1vbiq1h] {
        height: 140px;
        min-height: 140px;
        padding: 16px;
    }

    .ai-panel.expanded .ai-body[b-1vw1vbiq1h] {
        height: 340px;
        min-height: 340px;
    }

    .ai-empty[b-1vw1vbiq1h] {
        min-height: 100px;
        padding: 2px 8px;
    }

    .ai-empty-icon[b-1vw1vbiq1h] {
        width: 36px;
        height: 36px;
        margin-bottom: 8px;
    }

    .ai-empty strong[b-1vw1vbiq1h] {
        font-size: 12px;
    }

    .ai-empty p[b-1vw1vbiq1h] {
        font-size: 10px;
    }

    .message-content[b-1vw1vbiq1h] {
        max-width: 90%;
    }

    .message-avatar[b-1vw1vbiq1h] {
        width: 28px;
        height: 28px;
        flex-basis: 28px;
    }

    .msg[b-1vw1vbiq1h] {
        padding: 10px 13px;
        font-size: 11px;
        line-height: 1.65;
    }

    .ai-input[b-1vw1vbiq1h] {
        padding: 14px 14px 11px;
    }

    .ai-textbox[b-1vw1vbiq1h] {
        height: 46px;
        padding-right: 51px;
        padding-left: 16px;
        font-size: 12px;
    }

    .ai-send-btn[b-1vw1vbiq1h] {
        right: 6px;
        width: 34px;
        height: 34px;
    }

    .send-arrow[b-1vw1vbiq1h] {
        font-size: 18px;
    }

    .ai-input-footer[b-1vw1vbiq1h] {
        margin-top: 8px;
        font-size: 8px;
    }
}

/* ==========================
   Small Mobile
========================== */

@media (max-width: 480px) {
    .ai-header-text span[b-1vw1vbiq1h] {
        display: none;
    }

    .ai-body[b-1vw1vbiq1h] {
        height: 130px;
        min-height: 130px;
    }

    .ai-panel.expanded .ai-body[b-1vw1vbiq1h] {
        height: 310px;
        min-height: 310px;
    }

    .message-content[b-1vw1vbiq1h] {
        max-width: 92%;
    }

    .message-avatar[b-1vw1vbiq1h] {
        display: none;
    }

    .ai-empty p br[b-1vw1vbiq1h] {
        display: none;
    }
}

/* ==========================
   Reduced Motion
========================== */

@media (prefers-reduced-motion: reduce) {
    .ai-panel *[b-1vw1vbiq1h],
    .ai-panel *[b-1vw1vbiq1h]::before,
    .ai-panel *[b-1vw1vbiq1h]::after {
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
    }
}
/* /Components/Cases/CaseDetailPanel.razor.rz.scp.css */
:host[b-1vc7bmzf0j] {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 0;
}

.case-workspace[b-1vc7bmzf0j],
.case-workspace *[b-1vc7bmzf0j],
.case-workspace *[b-1vc7bmzf0j]::before,
.case-workspace *[b-1vc7bmzf0j]::after {
    box-sizing: border-box;
}

.case-workspace[b-1vc7bmzf0j] {
    --bg: #ffffff;
    --surface: #f8f8fa;
    --surface-hover: #f2f2f5;
    --surface-strong: #ececf0;
    --border: rgba(24, 24, 27, 0.08);
    --border-strong: rgba(24, 24, 27, 0.14);
    --text: #18181b;
    --text-secondary: #52525b;
    --text-muted: #8a8a93;
    --accent: #5e6ad2;
    --accent-soft: rgba(94, 106, 210, 0.09);
    --accent-border: rgba(94, 106, 210, 0.18);
    --danger: #c74b64;
    --danger-soft: rgba(199, 75, 100, 0.09);
    --warning: #b27828;
    --warning-soft: rgba(178, 120, 40, 0.1);
    --success: #27845a;
    --success-soft: rgba(39, 132, 90, 0.09);
    --shadow-soft: 0 1px 2px rgba(15, 23, 42, 0.03), 0 8px 28px rgba(15, 23, 42, 0.04);
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    min-height: 0;
    overflow: hidden;
    background: var(--bg);
    color: var(--text);
    font-family: Inter, Pretendard, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    letter-spacing: -0.016em;
}

.workspace-topbar[b-1vc7bmzf0j] {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    height: 54px;
    padding: 0 18px 0 22px;
    border-bottom: 1px solid var(--border);
    background: rgba(255, 255, 255, 0.92);
    backdrop-filter: blur(18px) saturate(150%);
    -webkit-backdrop-filter: blur(18px) saturate(150%);
}

/* =========================================
   Mobile Back Button
========================================= */

.workspace-back[b-1vc7bmzf0j] {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 1px solid #dbe3ee;
    border-radius: 14px;
    background: linear-gradient( 180deg, #ffffff 0%, #f8fafc 100%);
    color: #334155;
    cursor: pointer;
    box-shadow: 0 2px 6px rgba(15,23,42,.05), 0 8px 20px rgba(15,23,42,.06);
    transition: all .18s ease;
}

    .workspace-back svg[b-1vc7bmzf0j] {
        width: 20px;
        height: 20px;
    }

    .workspace-back:hover[b-1vc7bmzf0j] {
        background: #ffffff;
        color: #2563eb;
        border-color: #bfcee2;
        transform: translateY(-1px);
        box-shadow: 0 8px 22px rgba(15,23,42,.10);
    }

    .workspace-back:active[b-1vc7bmzf0j] {
        transform: scale(.94);
        background: #eff6ff;
        border-color: #93c5fd;
    }

.topbar-breadcrumb[b-1vc7bmzf0j] {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 7px;
    color: var(--text-muted);
    font-size: 10px;
    font-weight: 570;
}

    .topbar-breadcrumb i[b-1vc7bmzf0j] {
        color: #c1c1c7;
        font-size: 8px;
    }

    .topbar-breadcrumb strong[b-1vc7bmzf0j] {
        overflow: hidden;
        color: var(--text-secondary);
        font-weight: 620;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

.breadcrumb-product[b-1vc7bmzf0j] {
    color: var(--accent);
    font-weight: 700;
}

.topbar-actions[b-1vc7bmzf0j] {
    display: flex;
    align-items: center;
    gap: 4px;
}

.topbar-action[b-1vc7bmzf0j] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    padding: 0;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: var(--text-muted);
    text-decoration: none;
    cursor: pointer;
    transition: background-color 140ms ease, color 140ms ease, transform 140ms ease;
}

    .topbar-action:hover[b-1vc7bmzf0j] {
        background: var(--surface-hover);
        color: var(--text);
    }

    .topbar-action:active[b-1vc7bmzf0j] {
        transform: scale(0.94);
    }

    .topbar-action:focus-visible[b-1vc7bmzf0j] {
        outline: 2px solid rgba(94, 106, 210, 0.45);
        outline-offset: 1px;
    }

    .topbar-action i[b-1vc7bmzf0j] {
        font-size: 13px;
    }

.workspace-scroll[b-1vc7bmzf0j] {
    min-height: 0;
    flex: 1;
    overflow-x: hidden;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: #c7c7ce transparent;
    scroll-behavior: smooth;
}

    .workspace-scroll[b-1vc7bmzf0j]::-webkit-scrollbar {
        width: 8px;
    }

    .workspace-scroll[b-1vc7bmzf0j]::-webkit-scrollbar-track {
        background: transparent;
    }

    .workspace-scroll[b-1vc7bmzf0j]::-webkit-scrollbar-thumb {
        border: 2px solid transparent;
        border-radius: 999px;
        background: #c7c7ce;
        background-clip: padding-box;
    }

.workspace-layout[b-1vc7bmzf0j] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 238px;
    gap: 42px;
    width: min(100%, 1120px);
    margin: 0 auto;
    padding: 46px 38px 64px;
}

.workspace-main[b-1vc7bmzf0j] {
    min-width: 0;
}

.case-hero[b-1vc7bmzf0j] {
    padding: 0 0 42px;
}

.hero-kicker[b-1vc7bmzf0j] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 17px;
    color: var(--text-muted);
    font-size: 9px;
    font-weight: 730;
    line-height: 1;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.hero-status-dot[b-1vc7bmzf0j] {
    width: 7px;
    height: 7px;
    flex: 0 0 7px;
    border-radius: 50%;
    background: var(--accent);
    box-shadow: 0 0 0 4px var(--accent-soft);
}

.hero-case-number[b-1vc7bmzf0j] {
    display: inline-flex;
    align-items: center;
    min-height: 20px;
    padding: 0 7px;
    border: 1px solid var(--border);
    border-radius: 6px;
    background: var(--surface);
    color: var(--text-muted);
    font-size: 8px;
    font-weight: 650;
    letter-spacing: 0.03em;
    text-transform: none;
}

.case-hero h1[b-1vc7bmzf0j] {
    max-width: 760px;
    margin: 0;
    color: var(--text);
    font-size: clamp(32px, 4.2vw, 48px);
    font-weight: 740;
    line-height: 1.14;
    letter-spacing: -0.055em;
    overflow-wrap: anywhere;
}

.hero-summary[b-1vc7bmzf0j] {
    max-width: 720px;
    margin: 20px 0 0;
    color: var(--text-secondary);
    font-size: 14px;
    font-weight: 430;
    line-height: 1.75;
    letter-spacing: -0.012em;
}

.hero-actions[b-1vc7bmzf0j] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 15px;
    margin-top: 22px;
}

    .hero-actions > span[b-1vc7bmzf0j] {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        color: var(--text-muted);
        font-size: 10px;
        font-weight: 560;
    }

    .hero-actions i[b-1vc7bmzf0j] {
        font-size: 10px;
    }

.hero-favorite[b-1vc7bmzf0j] {
    color: var(--warning) !important;
}

.visual-section[b-1vc7bmzf0j],
.related-section[b-1vc7bmzf0j] {
    padding: 38px 0;
    border-top: 1px solid var(--border);
}

.section-toolbar[b-1vc7bmzf0j] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 18px;
}

.section-eyebrow[b-1vc7bmzf0j] {
    display: block;
    margin-bottom: 5px;
    color: var(--text-muted);
    font-size: 8px;
    font-weight: 740;
    line-height: 1.2;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.section-toolbar h2[b-1vc7bmzf0j] {
    margin: 0;
    color: var(--text);
    font-size: 18px;
    font-weight: 690;
    line-height: 1.35;
    letter-spacing: -0.035em;
}

.section-count[b-1vc7bmzf0j],
.sidebar-count[b-1vc7bmzf0j] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 25px;
    height: 25px;
    padding: 0 7px;
    border: 1px solid var(--border);
    border-radius: 7px;
    background: var(--surface);
    color: var(--text-muted);
    font-size: 9px;
    font-weight: 660;
}

.visual-gallery[b-1vc7bmzf0j] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 116px;
    gap: 9px;
}

.visual-gallery-single[b-1vc7bmzf0j] {
    grid-template-columns: minmax(0, 1fr);
}

.visual-primary[b-1vc7bmzf0j] {
    position: relative;
    display: block;
    min-height: 330px;
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: 15px;
    background: var(--surface);
    text-decoration: none;
}

    .visual-primary img[b-1vc7bmzf0j] {
        display: block;
        width: 100%;
        height: 100%;
        min-height: 330px;
        max-height: 520px;
        object-fit: cover;
        transition: transform 260ms ease;
    }

    .visual-primary:hover img[b-1vc7bmzf0j] {
        transform: scale(1.015);
    }

.visual-open[b-1vc7bmzf0j] {
    position: absolute;
    right: 12px;
    bottom: 12px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 30px;
    padding: 0 10px;
    border: 1px solid rgba(255, 255, 255, 0.32);
    border-radius: 8px;
    background: rgba(24, 24, 27, 0.65);
    color: #ffffff;
    font-size: 9px;
    font-weight: 620;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.visual-thumbnails[b-1vc7bmzf0j] {
    display: grid;
    grid-template-rows: repeat(4, minmax(0, 1fr));
    gap: 7px;
    min-height: 330px;
    max-height: 520px;
}

    .visual-thumbnails a[b-1vc7bmzf0j] {
        display: block;
        min-height: 0;
        overflow: hidden;
        border: 1px solid var(--border);
        border-radius: 10px;
        background: var(--surface);
    }

    .visual-thumbnails img[b-1vc7bmzf0j] {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: opacity 180ms ease, transform 180ms ease;
    }

    .visual-thumbnails a:hover img[b-1vc7bmzf0j] {
        opacity: 0.9;
        transform: scale(1.04);
    }

.case-narrative[b-1vc7bmzf0j] {
    position: relative;
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 23px;
    padding: 42px 0 12px;
    border-top: 1px solid var(--border);
}

.narrative-rail[b-1vc7bmzf0j] {
    position: relative;
    display: grid;
    grid-template-rows: repeat(3, 1fr);
    justify-items: center;
    min-height: 100%;
}

.rail-line[b-1vc7bmzf0j] {
    position: absolute;
    top: 17px;
    bottom: 17px;
    left: 50%;
    width: 1px;
    background: var(--border-strong);
    transform: translateX(-50%);
}

.rail-node[b-1vc7bmzf0j] {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: 4px solid var(--bg);
    border-radius: 10px;
    font-size: 8px;
    font-weight: 760;
    letter-spacing: 0.03em;
}

.rail-node-symptom[b-1vc7bmzf0j] {
    background: var(--danger-soft);
    color: var(--danger);
}

.rail-node-cause[b-1vc7bmzf0j] {
    background: var(--warning-soft);
    color: var(--warning);
}

.rail-node-solution[b-1vc7bmzf0j] {
    background: var(--success-soft);
    color: var(--success);
}

.narrative-content[b-1vc7bmzf0j] {
    min-width: 0;
}

.narrative-block[b-1vc7bmzf0j] {
    min-height: 215px;
    padding: 2px 0 38px;
}

    .narrative-block + .narrative-block[b-1vc7bmzf0j] {
        padding-top: 38px;
        border-top: 1px solid var(--border);
    }

    .narrative-block header[b-1vc7bmzf0j] {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 20px;
        margin-bottom: 19px;
    }

        .narrative-block header span[b-1vc7bmzf0j] {
            display: block;
            margin-bottom: 5px;
            color: var(--text-muted);
            font-size: 8px;
            font-weight: 740;
            line-height: 1.2;
            letter-spacing: 0.1em;
            text-transform: uppercase;
        }

    .narrative-block h2[b-1vc7bmzf0j] {
        margin: 0;
        color: var(--text);
        font-size: 18px;
        font-weight: 690;
        line-height: 1.35;
        letter-spacing: -0.035em;
    }

    .narrative-block header > i[b-1vc7bmzf0j] {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 34px;
        height: 34px;
        border-radius: 10px;
        background: var(--surface);
        color: var(--text-muted);
        font-size: 14px;
    }

.narrative-symptom header > i[b-1vc7bmzf0j] {
    background: var(--danger-soft);
    color: var(--danger);
}

.narrative-cause header > i[b-1vc7bmzf0j] {
    background: var(--warning-soft);
    color: var(--warning);
}

.narrative-solution header > i[b-1vc7bmzf0j] {
    background: var(--success-soft);
    color: var(--success);
}

.narrative-text[b-1vc7bmzf0j] {
    color: var(--text-secondary);
    font-size: 14px;
    font-weight: 430;
    line-height: 1.9;
    letter-spacing: -0.012em;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}

.narrative-text-solution[b-1vc7bmzf0j] {
    padding: 20px 22px;
    border: 1px solid rgba(39, 132, 90, 0.1);
    border-radius: 13px;
    background: rgba(39, 132, 90, 0.045);
    color: #34343a;
}

.related-grid[b-1vc7bmzf0j] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.related-card[b-1vc7bmzf0j] {
    display: flex;
    min-width: 0;
    min-height: 176px;
    padding: 16px;
    border: 1px solid var(--border);
    border-radius: 13px;
    background: var(--bg);
    color: inherit;
    font-family: inherit;
    text-align: left;
    cursor: pointer;
    flex-direction: column;
    transition: border-color 150ms ease, background-color 150ms ease, box-shadow 150ms ease, transform 150ms ease;
}

    .related-card:hover[b-1vc7bmzf0j] {
        border-color: var(--accent-border);
        background: rgba(94, 106, 210, 0.025);
        box-shadow: var(--shadow-soft);
        transform: translateY(-1px);
    }

    .related-card:focus-visible[b-1vc7bmzf0j] {
        outline: 2px solid rgba(94, 106, 210, 0.45);
        outline-offset: 2px;
    }

.related-card-top[b-1vc7bmzf0j] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 15px;
}

.related-document-icon[b-1vc7bmzf0j] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 9px;
    background: var(--accent-soft);
    color: var(--accent);
}

    .related-document-icon i[b-1vc7bmzf0j] {
        font-size: 13px;
    }

.related-open-icon[b-1vc7bmzf0j] {
    color: #c1c1c7;
    font-size: 11px;
}

.related-card strong[b-1vc7bmzf0j] {
    display: -webkit-box;
    overflow: hidden;
    margin-bottom: 8px;
    color: var(--text);
    font-size: 12px;
    font-weight: 660;
    line-height: 1.45;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.related-description[b-1vc7bmzf0j] {
    display: -webkit-box;
    overflow: hidden;
    margin-bottom: 15px;
    color: var(--text-muted);
    font-size: 10px;
    font-weight: 450;
    line-height: 1.55;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.related-card-meta[b-1vc7bmzf0j] {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-top: auto;
    color: var(--text-muted);
    font-size: 9px;
    font-weight: 520;
}

    .related-card-meta > span:first-child[b-1vc7bmzf0j] {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

.related-dot[b-1vc7bmzf0j] {
    width: 3px;
    height: 3px;
    flex: 0 0 3px;
    border-radius: 50%;
    background: #c6c6cc;
}

.assistant-section[b-1vc7bmzf0j] {
    margin-top: 42px;
    overflow: hidden;
    border: 1px solid var(--accent-border);
    border-radius: 16px;
    background: linear-gradient( 180deg, rgba(94, 106, 210, 0.055) 0%, rgba(255, 255, 255, 0) 180px );
}

.assistant-header[b-1vc7bmzf0j] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    padding: 20px 20px 16px;
}

.assistant-brand[b-1vc7bmzf0j] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.assistant-icon[b-1vc7bmzf0j] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    border-radius: 11px;
    background: var(--accent);
    color: #ffffff;
    box-shadow: 0 7px 18px rgba(94, 106, 210, 0.22);
}

    .assistant-icon i[b-1vc7bmzf0j] {
        font-size: 14px;
    }

.assistant-brand > div > span[b-1vc7bmzf0j] {
    display: block;
    margin-bottom: 3px;
    color: var(--accent);
    font-size: 8px;
    font-weight: 740;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.assistant-brand h2[b-1vc7bmzf0j] {
    margin: 0;
    color: var(--text);
    font-size: 16px;
    font-weight: 690;
    line-height: 1.35;
    letter-spacing: -0.03em;
}

.assistant-status[b-1vc7bmzf0j] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--text-muted);
    font-size: 8px;
    font-weight: 650;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

    .assistant-status > span[b-1vc7bmzf0j] {
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background: #3ca66f;
        box-shadow: 0 0 0 3px rgba(60, 166, 111, 0.11);
    }

.assistant-prompts[b-1vc7bmzf0j] {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    padding: 0 20px 15px;
}

    .assistant-prompts > span[b-1vc7bmzf0j] {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        min-height: 28px;
        padding: 0 9px;
        border: 1px solid var(--accent-border);
        border-radius: 7px;
        background: rgba(255, 255, 255, 0.7);
        color: #6267aa;
        font-size: 9px;
        font-weight: 570;
    }

    .assistant-prompts i[b-1vc7bmzf0j] {
        font-size: 10px;
    }

.assistant-panel[b-1vc7bmzf0j] {
    overflow: hidden;
    border-top: 1px solid var(--accent-border);
    background: var(--bg);
}

.workspace-sidebar[b-1vc7bmzf0j] {
    min-width: 0;
}

.sidebar-sticky[b-1vc7bmzf0j] {
    position: sticky;
    top: 20px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.sidebar-card[b-1vc7bmzf0j] {
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: 12px;
    background: var(--bg);
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.02);
}

.sidebar-card-header[b-1vc7bmzf0j] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 42px;
    padding: 0 13px;
    border-bottom: 1px solid var(--border);
    color: var(--text-secondary);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

    .sidebar-card-header i[b-1vc7bmzf0j] {
        color: var(--text-muted);
        font-size: 11px;
    }

.property-list[b-1vc7bmzf0j] {
    margin: 0;
}

.property-row[b-1vc7bmzf0j] {
    display: grid;
    grid-template-columns: 94px minmax(0, 1fr);
    gap: 10px;
    min-height: 45px;
    padding: 11px 13px;
    border-bottom: 1px solid var(--border);
}

    .property-row:last-child[b-1vc7bmzf0j] {
        border-bottom: 0;
    }

    .property-row dt[b-1vc7bmzf0j],
    .property-row dd[b-1vc7bmzf0j] {
        margin: 0;
    }

    .property-row dt[b-1vc7bmzf0j] {
        display: flex;
        align-items: flex-start;
        gap: 7px;
        color: var(--text-muted);
        font-size: 9px;
        font-weight: 540;
        line-height: 1.45;
    }

        .property-row dt i[b-1vc7bmzf0j] {
            width: 12px;
            color: #aaaab2;
            font-size: 10px;
            text-align: center;
        }

    .property-row dd[b-1vc7bmzf0j] {
        min-width: 0;
        color: var(--text-secondary);
        font-size: 9px;
        font-weight: 580;
        line-height: 1.45;
        text-align: right;
        overflow-wrap: anywhere;
    }

.property-value-primary[b-1vc7bmzf0j] {
    color: var(--accent) !important;
}

.sidebar-tag-list[b-1vc7bmzf0j] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    padding: 13px;
}

    .sidebar-tag-list button[b-1vc7bmzf0j] {
        display: inline-flex;
        align-items: center;
        min-height: 26px;
        padding: 0 8px;
        border: 1px solid var(--border);
        border-radius: 7px;
        background: var(--surface);
        color: var(--text-secondary);
        font-family: inherit;
        font-size: 8px;
        font-weight: 570;
        cursor: pointer;
        transition: border-color 140ms ease, background-color 140ms ease, color 140ms ease;
    }

        .sidebar-tag-list button span[b-1vc7bmzf0j] {
            margin-right: 1px;
            color: var(--text-muted);
        }

        .sidebar-tag-list button:hover[b-1vc7bmzf0j] {
            border-color: var(--accent-border);
            background: var(--accent-soft);
            color: var(--accent);
        }

.sidebar-empty[b-1vc7bmzf0j] {
    margin: 0;
    padding: 14px;
    color: var(--text-muted);
    font-size: 9px;
    line-height: 1.55;
}

.case-outline nav[b-1vc7bmzf0j] {
    display: flex;
    flex-direction: column;
    padding: 6px;
}

    .case-outline nav a[b-1vc7bmzf0j] {
        display: flex;
        align-items: center;
        justify-content: space-between;
        min-height: 34px;
        padding: 0 8px;
        border-radius: 7px;
        color: var(--text-secondary);
        font-size: 9px;
        font-weight: 540;
        text-decoration: none;
        transition: background-color 140ms ease, color 140ms ease;
    }

        .case-outline nav a:hover[b-1vc7bmzf0j] {
            background: var(--surface);
            color: var(--text);
        }

    .case-outline nav i[b-1vc7bmzf0j] {
        color: #bdbdc4;
        font-size: 8px;
    }

.sidebar-open-case[b-1vc7bmzf0j] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 18px;
    border-radius: 14px;
    background: linear-gradient(135deg,#5e6ad2,#4f5cc8);
    color: white;
    text-decoration: none;
    box-shadow: 0 10px 25px rgba(94,106,210,.25);
    transition: .2s;
}

    .sidebar-open-case:hover[b-1vc7bmzf0j] {
        color: white;
        transform: translateY(-2px);
        box-shadow: 0 18px 35px rgba(94,106,210,.35);
    }

.open-case-text[b-1vc7bmzf0j] {
    display: flex;
    flex-direction: column;
}

    .open-case-text small[b-1vc7bmzf0j] {
        font-size: 10px; 
        letter-spacing: .12em;
        opacity: .7;
    }

    .open-case-text strong[b-1vc7bmzf0j] {
        margin-top: 3px;
        font-size: 15px;
        font-weight: 700;
    }

.open-case-icon[b-1vc7bmzf0j] {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: rgba(255,255,255,.18);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
}

    .open-case-icon svg[b-1vc7bmzf0j] {
        width: 22px;
        height: 22px;
        color: #fff;
    }
@media (max-width: 980px) {

    .workspace-layout[b-1vc7bmzf0j] {
        grid-template-columns: minmax(0,1fr);
        gap: 34px;
        padding: 38px 30px 56px;
    }

    .workspace-sidebar[b-1vc7bmzf0j] {
        order: -1;
    }

    .sidebar-sticky[b-1vc7bmzf0j] {
        position: static;
        display: grid;
        grid-template-columns: repeat(2,minmax(0,1fr));
    }

    .property-card[b-1vc7bmzf0j] {
        grid-row: span 2;
    }

    .sidebar-full-page[b-1vc7bmzf0j] {
        grid-column: 1/-1;
    }
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width:720px) {

    /* ---------- Topbar ---------- */

    .workspace-topbar[b-1vc7bmzf0j] {
        position: sticky;
        top: 0;
        z-index: 500;
        height: 56px;
        padding: 0 16px;
        background: rgba(255,255,255,.95);
        backdrop-filter: blur(14px);
        border-bottom: 1px solid rgba(0,0,0,.06);
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: 14px;
    }

    .workspace-back[b-1vc7bmzf0j] {
        display: flex;
        width: 44px;
        height: 44px;
        flex: 0 0 44px;
        align-items: center;
        justify-content: center;
        border: 1px solid #e2e8f0;
        border-radius: 14px;
        background: #fff;
        color: #334155;
        box-shadow: 0 2px 8px rgba(15,23,42,.05), 0 8px 18px rgba(15,23,42,.06);
        transition: .18s;
    }

        .workspace-back svg[b-1vc7bmzf0j] {
            width: 20px;
            height: 20px;
        }

        .workspace-back:hover[b-1vc7bmzf0j] {
            color: #2563eb;
            transform: translateY(-1px);
            box-shadow: 0 8px 24px rgba(15,23,42,.10);
        }

        .workspace-back:active[b-1vc7bmzf0j] {
            transform: scale(.94);
            background: #eff6ff;
        }

    /* Breadcrumb 숨김 */

    .topbar-breadcrumb[b-1vc7bmzf0j] {
        display: none;
    }

    /* X버튼 숨김 */

    .topbar-close[b-1vc7bmzf0j] {
        display: none;
    }

    /* 전체보기 버튼도 필요없음 */

    .topbar-actions[b-1vc7bmzf0j] {
        margin-left: auto;
    }

    .topbar-action:not(.workspace-back)[b-1vc7bmzf0j] {
        display: none;
    }

    /* ---------- Layout ---------- */

    .workspace-layout[b-1vc7bmzf0j] {
        padding: 26px 18px 46px;
    }

    .case-hero[b-1vc7bmzf0j] {
        padding-bottom: 34px;
    }

        .case-hero h1[b-1vc7bmzf0j] {
            font-size: 34px;
        }

    .visual-gallery[b-1vc7bmzf0j] {
        grid-template-columns: minmax(0,1fr);
    }

    .visual-primary[b-1vc7bmzf0j],
    .visual-primary img[b-1vc7bmzf0j] {
        min-height: 250px;
    }

    .visual-thumbnails[b-1vc7bmzf0j] {
        grid-template-columns: repeat(4,minmax(0,1fr));
        grid-template-rows: 72px;
        min-height: 0;
        max-height: none;
    }

    .case-narrative[b-1vc7bmzf0j] {
        grid-template-columns: 34px minmax(0,1fr);
        gap: 16px;
    }

    .rail-node[b-1vc7bmzf0j] {
        width: 28px;
        height: 28px;
        border-radius: 8px;
    }

    .related-grid[b-1vc7bmzf0j] {
        grid-template-columns: minmax(0,1fr);
    }

    .related-card[b-1vc7bmzf0j] {
        min-height: 154px;
    }

    .sidebar-sticky[b-1vc7bmzf0j] {
        grid-template-columns: minmax(0,1fr);
    }

    .property-card[b-1vc7bmzf0j] {
        grid-row: auto;
    }

    .sidebar-full-page[b-1vc7bmzf0j] {
        grid-column: auto;
    }
}

.workspace-topbar-left[b-1vc7bmzf0j] {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 10px;
}

.workspace-back[b-1vc7bmzf0j] {
    display: none;
}

.workspace-mobile-title[b-1vc7bmzf0j] {
    display: none;
}

/* =========================================================
   TABLET / MOBILE HEADER
========================================================= */

@media (max-width:768px) {

    .workspace-topbar[b-1vc7bmzf0j] {
        position: sticky;
        top: 0;
        z-index: 500;
        height: 60px;
        padding: 0 16px;
        background: rgba(255,255,255,.96);
        backdrop-filter: blur(14px);
        border-bottom: 1px solid rgba(0,0,0,.06);
    }

    .workspace-back[b-1vc7bmzf0j] {
        display: flex;
        width: 42px;
        height: 42px;
        align-items: center;
        justify-content: center;
        border: 1px solid #dbe3ee;
        border-radius: 13px;
        background: #fff;
        color: #334155;
        flex: 0 0 42px;
    }

        .workspace-back svg[b-1vc7bmzf0j] {
            width: 20px;
            height: 20px;
        }

    .workspace-mobile-title[b-1vc7bmzf0j] {
        display: flex;
        flex-direction: column;
    }

    .topbar-breadcrumb[b-1vc7bmzf0j] {
        display: none;
    }

    .topbar-close[b-1vc7bmzf0j] {
        display: none;
    }
}

/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width:480px) {

    .workspace-layout[b-1vc7bmzf0j] {
        padding: 20px 14px 34px;
    }

    .case-hero h1[b-1vc7bmzf0j] {
        font-size: 28px;
        line-height: 1.18;
    }

    .hero-summary[b-1vc7bmzf0j] {
        margin-top: 16px;
        font-size: 13px;
        line-height: 1.7;
    }

    .visual-section[b-1vc7bmzf0j],
    .related-section[b-1vc7bmzf0j] {
        padding: 30px 0;
    }

    .visual-primary[b-1vc7bmzf0j],
    .visual-primary img[b-1vc7bmzf0j] {
        min-height: 220px;
    }

    .visual-thumbnails[b-1vc7bmzf0j] {
        grid-template-columns: repeat(2,minmax(0,1fr));
        grid-template-rows: repeat(2,84px);
    }

    .case-narrative[b-1vc7bmzf0j] {
        grid-template-columns: minmax(0,1fr);
        padding-top: 34px;
    }

    .narrative-rail[b-1vc7bmzf0j] {
        display: none;
    }

    .narrative-block[b-1vc7bmzf0j] {
        min-height: 0;
        padding-bottom: 30px;
    }

        .narrative-block + .narrative-block[b-1vc7bmzf0j] {
            padding-top: 30px;
        }

    .narrative-text[b-1vc7bmzf0j] {
        font-size: 13px;
        line-height: 1.82;
    }

    .narrative-text-solution[b-1vc7bmzf0j] {
        padding: 17px;
    }

    .assistant-header[b-1vc7bmzf0j] {
        padding: 17px 16px 14px;
    }

    .assistant-prompts[b-1vc7bmzf0j] {
        flex-wrap: nowrap;
        overflow-x: auto;
        padding: 0 16px 14px;
        scrollbar-width: none;
    }

        .assistant-prompts[b-1vc7bmzf0j]::-webkit-scrollbar {
            display: none;
        }

        .assistant-prompts > span[b-1vc7bmzf0j] {
            flex: 0 0 auto;
        }

    .assistant-status[b-1vc7bmzf0j] {
        display: none;
    }
}

/* ========================================================= */

.ai-summary-card .ai-summary-body[b-1vc7bmzf0j] {
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.summary-item[b-1vc7bmzf0j] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    color: #52525b;
    font-size: 12px;
    line-height: 1.6;
}

    .summary-item i[b-1vc7bmzf0j] {
        color: #5e6ad2;
        margin-top: 2px;
        flex: 0 0 14px;
    }

.inspection-card .inspection-flow[b-1vc7bmzf0j] {
    padding: 18px 16px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
}

.flow-item[b-1vc7bmzf0j] {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border: 1px solid rgba(24,24,27,.08);
    border-radius: 10px;
    background: #fafafa;
    font-size: 12px;
    font-weight: 600;
}

.flow-circle[b-1vc7bmzf0j] {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #5e6ad2;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 700;
}

.inspection-flow > .bi[b-1vc7bmzf0j] {
    color: #b5b5bc;
    font-size: 12px;
}

@media (prefers-reduced-motion:reduce) {

    .case-workspace *[b-1vc7bmzf0j],
    .case-workspace *[b-1vc7bmzf0j]::before,
    .case-workspace *[b-1vc7bmzf0j]::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
    }
}
/* /Components/Cases/CaseList.razor.rz.scp.css */
:host[b-jawee5eg4n] {
    display: block;
}

.knowledge-results[b-jawee5eg4n] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 12px;
}

/* ===========================
   Card
=========================== */

.result-card[b-jawee5eg4n] {
    position: relative;
    min-width: 0;
    min-height: 128px;
    padding: 16px 20px;
    border: 1px solid #e6ebf2;
    border-radius: 16px;
    background: #fff;
    cursor: pointer;
    outline: none;
    transition: all .18s ease;
}

    .result-card:hover[b-jawee5eg4n],
    .result-card:focus-visible[b-jawee5eg4n] {
        transform: translateY(-3px);
        border-color: #93c5fd;
        box-shadow: 0 18px 36px rgba(15,23,42,.08);
    }

    .result-card.selected[b-jawee5eg4n] {
        border-color: #2563eb;
        background: #f8fbff;
        box-shadow: inset 3px 0 0 #2563eb, 0 18px 36px rgba(15,23,42,.08);
    }

.result-main[b-jawee5eg4n] {
    min-width: 0;
}

/* ===========================
   Title
=========================== */

.result-title-row[b-jawee5eg4n] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
}

.result-title-wrap[b-jawee5eg4n] {
    display: flex;
    gap: 8px;
    min-width: 0;
}

    .result-title-wrap h2[b-jawee5eg4n] {
        margin: 0;
        color: #0f172a;
        font-size: 16px;
        font-weight: 900;
        line-height: 1.35;
        overflow: hidden;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
    }

.favorite[b-jawee5eg4n] {
    margin-top: 3px;
    color: #f59e0b;
    font-size: 13px;
}

.result-date[b-jawee5eg4n] {
    flex-shrink: 0;
    color: #94a3b8;
    font-size: 11px;
    font-weight: 700;
}

/* ===========================
   Equipment
=========================== */

.result-meta[b-jawee5eg4n] {
    margin-top: 10px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

    .result-meta span[b-jawee5eg4n] {
        display: inline-flex;
        align-items: center;
        gap: 5px;
        color: #64748b;
        font-size: 12px;
        font-weight: 700;
    }

    .result-meta .equipment[b-jawee5eg4n] {
        color: #2563eb;
        font-weight: 900;
    }

/* ===========================
   Excerpt
=========================== */

.result-excerpt[b-jawee5eg4n] {
    margin: 10px 0 0;
    color: #475569;
    font-size: 12px;
    line-height: 1.6;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

/* ===========================
   Tags
=========================== */

.result-tags[b-jawee5eg4n] {
    margin-top: 12px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
}

    .result-tags button[b-jawee5eg4n] {
        height: 24px;
        padding: 0 9px;
        border: none;
        border-radius: 999px;
        background: #f1f5f9;
        color: #64748b;
        font-size: 10px;
        font-weight: 800;
        cursor: pointer;
        transition: .15s;
    }

        .result-tags button:hover[b-jawee5eg4n] {
            background: #dbeafe;
            color: #1d4ed8;
        }

.tag-more[b-jawee5eg4n] {
    color: #94a3b8;
    font-size: 10px;
    font-weight: 800;
}

/* ===========================
   Arrow
=========================== */

.card-arrow[b-jawee5eg4n] {
    position: absolute;
    top: 18px;
    right: 18px;
    color: #cbd5e1;
    font-size: 15px;
    transition: .15s;
}

.result-card:hover .card-arrow[b-jawee5eg4n],
.result-card.selected .card-arrow[b-jawee5eg4n] {
    color: #2563eb;
}

/* ===========================
   Empty
=========================== */

.results-empty[b-jawee5eg4n] {
    min-height: 420px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.empty-icon[b-jawee5eg4n] {
    width: 64px;
    height: 64px;
    border-radius: 18px;
    background: #f1f5f9;
    color: #94a3b8;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 28px;
}

.results-empty h2[b-jawee5eg4n] {
    margin: 18px 0 6px;
    color: #334155;
    font-size: 20px;
    font-weight: 900;
}

.results-empty p[b-jawee5eg4n] {
    margin: 0;
    color: #94a3b8;
    font-size: 13px;
}

/* ===========================
   Highlight
=========================== */

[b-jawee5eg4n] mark {
    padding: 0 2px;
    border-radius: 3px;
    background: #fef08a;
}

/* ===========================
   Responsive
=========================== */

@media (max-width:1180px) {

    .knowledge-results[b-jawee5eg4n] {
        grid-template-columns: 1fr;
    }
}

@media (max-width:700px) {

    .result-card[b-jawee5eg4n] {
        padding: 16px;
    }

    .result-title-row[b-jawee5eg4n] {
        flex-direction: column;
        gap: 4px;
    }

    .card-arrow[b-jawee5eg4n] {
        display: none;
    }
}
/* /Components/Layout/LoginLayout.razor.rz.scp.css */
.login-page[b-7c8ldt9bo0] {
    min-height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #eef3fa;
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
:host[b-txgjnyb2ib] {
    display: block;
    min-height: 100%;
}

*[b-txgjnyb2ib] {
    box-sizing: border-box;
}

.fk-app-shell[b-txgjnyb2ib] {
    --topbar-height: 68px;
    min-height: 100vh;
    background: #f3f6fb;
}

/* =========================================================
   Main
========================================================= */

.fk-main[b-txgjnyb2ib] {
    width: 100%;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

/* =========================================================
   Topbar
========================================================= */

.fk-topbar[b-txgjnyb2ib] {
    position: sticky;
    top: 0;
    z-index: 1000;
    height: 68px;
    border-bottom: 1px solid #e5e7eb;
    background: rgba(255,255,255,.92);
    backdrop-filter: blur(18px);
}

.fk-brand[b-txgjnyb2ib] {
    flex: 0 0 auto;
}

    .fk-brand a[b-txgjnyb2ib] {
        color: #111827;
        font-size: 24px;
        font-weight: 800;
        text-decoration: none;
    }

.fk-main-nav[b-txgjnyb2ib] {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 26px;
    margin-left: 36px;
}

    .fk-main-nav a[b-txgjnyb2ib] {
        color: #475569;
        font-size: 15px;
        font-weight: 600;
        text-decoration: none;
        transition: .18s;
    }

        .fk-main-nav a.active[b-txgjnyb2ib] {
            color: #2563eb;
        }

        .fk-main-nav a:hover[b-txgjnyb2ib] {
            color: #111827;
        }

.fk-topbar-inner[b-txgjnyb2ib] {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 28px;
    gap: 32px;
}

.fk-topbar-left[b-txgjnyb2ib] {
    display: flex;
    align-items: center;
    gap: 0;
}

.fk-page-title[b-txgjnyb2ib] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.fk-page-title h2[b-txgjnyb2ib] {
    overflow: hidden;
    margin: 0;
    color: #0f172a;
    font-size: 22px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.035em;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.fk-page-title span[b-txgjnyb2ib] {
    overflow: hidden;
    color: #94a3b8;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* =========================================================
   Menu button
========================================================= */


.fk-menu-button svg[b-txgjnyb2ib] {
    width: 22px;
    height: 22px;
}

.fk-menu-button:hover[b-txgjnyb2ib] {
    border-color: #cbd5e1;
    background: #f8fafc;
    color: #0f172a;
}

.fk-menu-button:active[b-txgjnyb2ib] {
    transform: scale(0.96);
}

.fk-menu-button:focus-visible[b-txgjnyb2ib] {
    outline: 3px solid rgba(37, 99, 235, 0.18);
    outline-offset: 2px;
}

/* =========================================================
   Top actions
========================================================= */

.fk-top-actions[b-txgjnyb2ib] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    flex: 0 0 auto;
    min-width: 0;
    white-space: nowrap;
}

.fk-user-chip[b-txgjnyb2ib] {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    height: 42px;
    padding: 5px 12px 5px 6px;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    background: #ffffff;
    color: #334155;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04);
}

.fk-avatar[b-txgjnyb2ib] {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    border-radius: 10px;
    background: #2563eb;
    color: #ffffff;
    font-size: 14px;
    font-weight: 700;
}

.fk-user-name[b-txgjnyb2ib] {
    display: block;
    max-width: 190px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 14px;
    font-weight: 600;
}

.fk-logout-form[b-txgjnyb2ib] {
    display: flex;
    align-items: center;
    flex: 0 0 auto;
    margin: 0;
    padding: 0;
}

.fk-logout-button[b-txgjnyb2ib] {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    margin: 0;
    padding: 0;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    background: #ffffff;
    color: #64748b;
    cursor: pointer;
    transition: background-color 0.16s ease, border-color 0.16s ease, color 0.16s ease, transform 0.16s ease;
}

    .fk-logout-button:hover[b-txgjnyb2ib] {
        border-color: #fecaca;
        background: #fff1f2;
        color: #dc2626;
    }

    .fk-logout-button:active[b-txgjnyb2ib] {
        transform: scale(0.96);
    }

    .fk-logout-button svg[b-txgjnyb2ib] {
        width: 19px;
        height: 19px;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.9;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

.fk-avatar[b-txgjnyb2ib] {
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    background: #2563eb;
    color: #ffffff;
    font-size: 14px;
    font-weight: 800;
}

.fk-user-meta[b-txgjnyb2ib] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.fk-user-name[b-txgjnyb2ib] {
    max-width: 180px;
    overflow: hidden;
    color: #1e293b;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.3;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.fk-user-role[b-txgjnyb2ib] {
    color: #94a3b8;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.3;
}

.fk-login-link[b-txgjnyb2ib] {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 19px;
    border: 1px solid #1d4ed8;
    border-radius: 13px;
    background: #2563eb;
    color: #ffffff;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
    box-shadow: 0 7px 18px rgba(37, 99, 235, 0.18);
    transition:
        background-color 150ms ease,
        border-color 150ms ease,
        transform 150ms ease,
        box-shadow 150ms ease;
}

.fk-login-link svg[b-txgjnyb2ib] {
    width: 17px;
    height: 17px;
}

.fk-login-link:hover[b-txgjnyb2ib] {
    border-color: #1e40af;
    background: #1d4ed8;
    color: #ffffff;
    transform: translateY(-1px);
    box-shadow: 0 10px 23px rgba(37, 99, 235, 0.24);
}

.fk-login-link:focus-visible[b-txgjnyb2ib] {
    outline: 3px solid rgba(37, 99, 235, 0.18);
    outline-offset: 2px;
}

/* =========================================================
   Content
========================================================= */

.fk-content[b-txgjnyb2ib] {
    min-width: 0;
    flex: 1;
    padding: 8px;
    overflow: hidden;
}

/* =========================================================
   Blazor error UI
========================================================= */

#blazor-error-ui[b-txgjnyb2ib] {
    position: fixed;
    right: 16px;
    bottom: 16px;
    left: 16px;
    z-index: 5000;
    display: none;
    align-items: center;
    gap: 12px;
    min-height: 50px;
    padding: 12px 16px;
    border: 1px solid #fecaca;
    border-radius: 12px;
    background: #fff7f7;
    color: #991b1b;
    font-size: 13px;
    box-shadow: 0 16px 40px rgba(15, 23, 42, 0.16);
}

#blazor-error-ui .reload[b-txgjnyb2ib] {
    color: #b91c1c;
    font-weight: 700;
}

#blazor-error-ui .dismiss[b-txgjnyb2ib] {
    width: 28px;
    height: 28px;
    margin-left: auto;
    padding: 0;
    border: 0;
    border-radius: 7px;
    background: transparent;
    color: #991b1b;
    font-size: 20px;
    cursor: pointer;
}

/* =========================================================
   Tablet
========================================================= */

@media (max-width: 1100px) {
    .fk-app-shell[b-txgjnyb2ib] {
        --sidebar-width: 220px;
    }

    .fk-topbar-inner[b-txgjnyb2ib] {
        padding: 0 24px;
    }

    .fk-content[b-txgjnyb2ib] {
        padding: 24px;
    }
}

/* =========================================================
   Mobile
========================================================= */

@media (max-width: 768px) {
    .fk-app-shell[b-txgjnyb2ib] {
        --topbar-height: 64px;
        min-width: 0;
    }

    .fk-main[b-txgjnyb2ib] {
        width: 100%;
        margin-left: 0;
        min-height: 100dvh;
    }

    .fk-sidebar[b-txgjnyb2ib] {
        z-index: 3000;
        width: min(84vw, 290px);
        transform: translateX(-100%);
        box-shadow: none;
        transition:
            transform 220ms cubic-bezier(0.22, 1, 0.36, 1),
            box-shadow 220ms ease;
    }

    .fk-app-shell.sidebar-open .fk-sidebar[b-txgjnyb2ib] {
        transform: translateX(0);
        box-shadow: 18px 0 48px rgba(15, 23, 42, 0.24);
    }

    .fk-sidebar-overlay[b-txgjnyb2ib] {
        position: fixed;
        inset: 0;
        z-index: 2500;
        display: block;
        width: 100%;
        height: 100%;
        padding: 0;
        border: 0;
        background: rgba(15, 23, 42, 0.44);
        cursor: default;
        backdrop-filter: blur(2px);
        -webkit-backdrop-filter: blur(2px);
        animation: fk-overlay-enter-b-txgjnyb2ib 180ms ease both;
    }

    .fk-menu-button[b-txgjnyb2ib] {
        display: inline-flex;
    }

    .fk-topbar-inner[b-txgjnyb2ib] {
        padding: 0 14px;
        gap: 12px;
    }

    .fk-page-title h2[b-txgjnyb2ib] {
        font-size: 19px;
    }

    .fk-page-title span[b-txgjnyb2ib] {
        font-size: 10px;
    }

    .fk-user-chip[b-txgjnyb2ib] {
        min-height: 42px;
        padding: 3px;
        border: 0;
        background: transparent;
        box-shadow: none;
    }

    .fk-avatar[b-txgjnyb2ib] {
        width: 38px;
        height: 38px;
    }

    .fk-user-meta[b-txgjnyb2ib] {
        display: none;
    }

    .fk-login-link[b-txgjnyb2ib] {
        min-height: 42px;
        padding: 0 15px;
        border-radius: 11px;
        font-size: 13px;
        box-shadow: none;
    }

    .fk-login-link svg[b-txgjnyb2ib] {
        display: none;
    }

    .fk-content[b-txgjnyb2ib] {
        min-width: 0;
        flex: 1;
        padding: 16px 16px 110px;
        overflow-x: hidden;
    }

    .fk-main-nav[b-txgjnyb2ib] {
        overflow-x: auto;
        gap: 18px;
        margin-left: 18px;
        white-space: nowrap;
    }
}

/* =========================================================
   Small mobile
========================================================= */

@media (max-width: 420px) {
    .fk-topbar-inner[b-txgjnyb2ib] {
        padding: 0 12px;
    }

    .fk-menu-button[b-txgjnyb2ib] {
        width: 40px;
        height: 40px;
        flex-basis: 40px;
    }

    .fk-page-title h2[b-txgjnyb2ib] {
        font-size: 18px;
    }

    .fk-page-title span[b-txgjnyb2ib] {
        display: none;
    }

    .fk-login-link[b-txgjnyb2ib] {
        min-height: 40px;
        padding: 0 13px;
    }

    .fk-content[b-txgjnyb2ib] {
        padding: 16px 12px 100px;
    }
}

@keyframes fk-overlay-enter-b-txgjnyb2ib {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@media (prefers-reduced-motion: reduce) {
    .fk-sidebar[b-txgjnyb2ib],
    .fk-sidebar-overlay[b-txgjnyb2ib],
    .fk-menu-button[b-txgjnyb2ib],
    .fk-login-link[b-txgjnyb2ib] {
        animation: none !important;
        transition: none !important;
    }
}

.fk-logout-button[b-txgjnyb2ib] {
    margin-left: 12px;
    padding: 8px 14px;
    border: 1px solid #dbe2ea;
    border-radius: 10px;
    background: #fff;
    color: #374151;
    cursor: pointer;
    transition: .2s;
}

    .fk-logout-button:hover[b-txgjnyb2ib] {
        background: #f3f4f6;
    }
/* /Components/Layout/MobileBottomNav.razor.rz.scp.css */
.fk-bottom-nav[b-m22wkev7uy] {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1000;
    display: flex;
    min-height: 72px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    padding: 8px 14px calc(env(safe-area-inset-bottom) + 8px);
    background: rgba(255,255,255,.96);
    backdrop-filter: blur(16px);
    border-top: 1px solid #e7edf6;
    box-shadow: 0 -4px 20px rgba(15,23,42,.06);
}

.nav-item[b-m22wkev7uy] {
    flex: 1;
    max-width: 82px;
    min-width: 68px;
    min-height: 60px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 4px;
    border: 0;
    border-radius: 16px;
    background: transparent;
    color: #64748b;
    transition: all .18s ease;
}

    .nav-item .icon[b-m22wkev7uy] {
        font-size: 22px;
        line-height: 1;
    }

    .nav-item .label[b-m22wkev7uy] {
        font-size: 11px;
        font-weight: 600;
        line-height: 1;
    }

    .nav-item.active[b-m22wkev7uy] {
        color: #2563eb;
        background: #eff6ff;
    }

    .nav-item:active[b-m22wkev7uy] {
        transform: scale(.96);
    }

@media (min-width:769px) {

    .fk-bottom-nav[b-m22wkev7uy] {
        display: none;
    }
}

@media (max-width:768px) {

    .fk-bottom-nav[b-m22wkev7uy] {
        display: flex;
    }

    .fk-content[b-m22wkev7uy] {
        padding: 20px 18px 92px;
    }
}

@media (max-width:420px) {

    .fk-bottom-nav[b-m22wkev7uy] {
        gap: 4px;
        padding-left: 10px;
        padding-right: 10px;
    }

    .nav-item[b-m22wkev7uy] {
        min-width: 60px;
        min-height: 56px;
    }

        .nav-item .icon[b-m22wkev7uy] {
            font-size: 20px;
        }

        .nav-item .label[b-m22wkev7uy] {
            font-size: 10px;
        }
}
.fk-bottom-nav[b-m22wkev7uy] {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1000;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    padding: 8px 14px calc(env(safe-area-inset-bottom) + 8px);
    background: rgba(255,255,255,.96);
    backdrop-filter: blur(16px);
    border-top: 1px solid #e7edf6;
    box-shadow: 0 -4px 20px rgba(15,23,42,.06);
}

.nav-item[b-m22wkev7uy] {
    flex: 1;
    max-width: 82px;
    min-width: 68px;
    min-height: 60px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 4px;
    border: 0;
    border-radius: 16px;
    background: transparent;
    color: #64748b;
    transition: all .18s ease;
}

    .nav-item .icon[b-m22wkev7uy] {
        font-size: 22px;
        line-height: 1;
    }

    .nav-item .label[b-m22wkev7uy] {
        font-size: 11px;
        font-weight: 600;
        line-height: 1;
    }

    .nav-item.active[b-m22wkev7uy] {
        color: #2563eb;
        background: #eff6ff;
    }

    .nav-item:active[b-m22wkev7uy] {
        transform: scale(.96);
    }

@media (min-width:769px) {

    .fk-bottom-nav[b-m22wkev7uy] {
        display: none;
    }
}

@media (max-width:768px) {

    .fk-bottom-nav[b-m22wkev7uy] {
        display: flex;
    }

    .fk-content[b-m22wkev7uy] {
        padding: 20px 18px 92px;
    }
}

@media (max-width:420px) {

    .fk-bottom-nav[b-m22wkev7uy] {
        gap: 4px;
        padding-left: 10px;
        padding-right: 10px;
    }

    .nav-item[b-m22wkev7uy] {
        min-width: 60px;
        min-height: 56px;
    }

        .nav-item .icon[b-m22wkev7uy] {
            font-size: 20px;
        }

        .nav-item .label[b-m22wkev7uy] {
            font-size: 10px;
        }
}
/* /Components/Layout/NavMenu.razor.rz.scp.css */
:host[b-lkjb6csewg] {
    display: block;
    height: 100%;
}

/* =========================
   Logo
========================= */

.fk-logo[b-lkjb6csewg] {
    height: 154px;
    padding: 28px 22px 24px;
    display: flex;
    align-items: center;
    gap: 14px;
    border-bottom: 1px solid rgba(255,255,255,.07);
}

.fk-logo-icon[b-lkjb6csewg] {
    width: 56px;
    height: 56px;
    border-radius: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg,#2563eb,#1d4ed8);
    box-shadow: 0 18px 38px rgba(37,99,235,.35);
}

.fk-logo-title[b-lkjb6csewg] {
    color: #fff;
    font-size: 23px;
    font-weight: 900;
    letter-spacing: -0.5px;
    line-height: 1;
}

.fk-logo-sub[b-lkjb6csewg] {
    margin-top: 7px;
    color: #94a3b8;
    font-size: 12px;
    font-weight: 600;
}

/* =========================
   Navigation
========================= */

.fk-nav[b-lkjb6csewg] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 18px 14px;
}

    .fk-nav > .fk-nav-item[b-lkjb6csewg] {
        position: relative;
        width: 100%;
        height: 50px;
        display: flex !important;
        flex-flow: row nowrap !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 12px;
        padding: 0 12px;
        border-radius: 14px;
        color: #cbd5e1 !important;
        text-decoration: none !important;
        font-size: 15px;
        font-weight: 700;
        line-height: 1;
        transition: background 180ms ease, color 180ms ease, transform 180ms ease;
    }

        .fk-nav > .fk-nav-item > .fk-nav-icon[b-lkjb6csewg] {
            width: 34px;
            height: 34px;
            min-width: 34px;
            flex: 0 0 34px !important;
            display: inline-flex !important;
            align-items: center !important;
            justify-content: center !important;
            margin: 0;
            padding: 0;
            border-radius: 10px;
            background: rgba(255, 255, 255, 0.06);
            color: #9fb3d9;
            transition: background 180ms ease, color 180ms ease, transform 180ms ease;
        }

            .fk-nav > .fk-nav-item > .fk-nav-icon > svg[b-lkjb6csewg] {
                width: 18px;
                height: 18px;
                min-width: 18px;
                display: block;
                fill: none;
                stroke: currentColor;
                stroke-width: 1.9;
                stroke-linecap: round;
                stroke-linejoin: round;
            }

        .fk-nav > .fk-nav-item > .fk-nav-label[b-lkjb6csewg] {
            width: auto !important;
            min-width: 0;
            flex: 0 1 auto !important;
            display: inline-block !important;
            margin: 0;
            padding: 0;
            line-height: 1;
            white-space: nowrap;
        }

        .fk-nav > .fk-nav-item:hover[b-lkjb6csewg] {
            background: rgba(255, 255, 255, 0.07);
            color: #ffffff !important;
        }

            .fk-nav > .fk-nav-item:hover > .fk-nav-icon[b-lkjb6csewg] {
                background: rgba(37, 99, 235, 0.18);
                color: #60a5fa;
            }

        .fk-nav > .fk-nav-item.active[b-lkjb6csewg] {
            background: linear-gradient(135deg, #2563eb, #1d4ed8);
            color: #ffffff !important;
            box-shadow: 0 10px 24px rgba(37, 99, 235, 0.28);
        }

            .fk-nav > .fk-nav-item.active > .fk-nav-icon[b-lkjb6csewg] {
                background: rgba(255, 255, 255, 0.18);
                color: #ffffff;
            }

            .fk-nav > .fk-nav-item.active[b-lkjb6csewg]::before {
                content: "";
                position: absolute;
                top: 10px;
                bottom: 10px;
                left: -14px;
                width: 4px;
                border-radius: 999px;
                background: #ffffff;
            }

.fk-primary-link[b-lkjb6csewg] {
    margin-bottom: 4px;
}

.fk-nav-divider[b-lkjb6csewg] {
    height: 1px;
    margin: 14px 8px;
    background: rgba(255, 255, 255, 0.08);
}

/* =========================
   Footer
========================= */

.fk-nav-footer[b-lkjb6csewg] {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 18px;
    border-top: 1px solid rgba(255,255,255,.07);
    background: #0f172a;
}

.fk-user-card[b-lkjb6csewg] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 14px;
    padding: 10px;
    border-radius: 16px;
    background: rgba(255,255,255,.05);
}

.fk-user-avatar[b-lkjb6csewg] {
    width: 40px;
    height: 40px;
    border-radius: 13px;
    background: linear-gradient(135deg,#2563eb,#1d4ed8);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-weight: 900;
}

.fk-user-info[b-lkjb6csewg] {
    min-width: 0;
    flex: 1;
}

.fk-user-name[b-lkjb6csewg] {
    color: #fff;
    font-size: 13px;
    font-weight: 800;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.fk-user-role[b-lkjb6csewg] {
    margin-top: 3px;
    color: #94a3b8;
    font-size: 11px;
    font-weight: 600;
}

.fk-logout[b-lkjb6csewg] {
    width: 100%;
    height: 44px;
    border: none;
    border-radius: 14px;
    background: rgba(255,255,255,.08);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    font-weight: 800;
    cursor: pointer;
    transition: .18s ease;
}

    .fk-logout:hover[b-lkjb6csewg] {
        background: rgba(255,255,255,.14);
        transform: translateY(-1px);
    }

/* =========================
   Scroll
========================= */

[b-lkjb6csewg]::-webkit-scrollbar {
    width: 8px;
}

[b-lkjb6csewg]::-webkit-scrollbar-thumb {
    background: #334155;
    border-radius: 999px;
}

    [b-lkjb6csewg]::-webkit-scrollbar-thumb:hover {
        background: #475569;
    }

/* =========================
   Small height
========================= */

@media (max-height: 820px) {
    .fk-nav-footer[b-lkjb6csewg] {
        position: relative;
        margin-top: 24px;
    }

    .fk-logo[b-lkjb6csewg] {
        height: auto;
        padding-bottom: 20px;
    }
}

/* =========================
   Mobile
========================= */

@media (max-width: 768px) {
    .fk-logo[b-lkjb6csewg] {
        height: auto;
    }

    .fk-nav-footer[b-lkjb6csewg] {
        position: relative;
    }
}

.fk-nav-icon svg[b-lkjb6csewg],
.fk-logo-icon svg[b-lkjb6csewg],
.fk-logout svg[b-lkjb6csewg] {
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.fk-logo-icon[b-lkjb6csewg] {
    color: #fff;
}

.fk-nav-icon svg[b-lkjb6csewg] {
    vector-effect: non-scaling-stroke;
}

.fk-nav-icon > svg[b-lkjb6csewg] {
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    min-height: 18px !important;
    max-width: 18px !important;
    max-height: 18px !important;
    display: block !important;
    flex: none !important;
}

.fk-logo-icon > svg[b-lkjb6csewg] {
    width: 28px !important;
    height: 28px !important;
}

.fk-logout > svg[b-lkjb6csewg] {
    width: 18px !important;
    height: 18px !important;
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-bzktt4gbc1],
.components-reconnect-repeated-attempt-visible[b-bzktt4gbc1],
.components-reconnect-failed-visible[b-bzktt4gbc1],
.components-pause-visible[b-bzktt4gbc1],
.components-resume-failed-visible[b-bzktt4gbc1],
.components-rejoining-animation[b-bzktt4gbc1] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-bzktt4gbc1],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-bzktt4gbc1],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-bzktt4gbc1],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-bzktt4gbc1],
#components-reconnect-modal.components-reconnect-retrying[b-bzktt4gbc1],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-bzktt4gbc1],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-bzktt4gbc1],
#components-reconnect-modal.components-reconnect-failed[b-bzktt4gbc1],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-bzktt4gbc1] {
    display: block;
}


#components-reconnect-modal[b-bzktt4gbc1] {
    background-color: white;
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    border-radius: 0.5rem;
    box-shadow: 0 3px 6px 2px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-bzktt4gbc1 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-bzktt4gbc1 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-bzktt4gbc1 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-bzktt4gbc1]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-bzktt4gbc1 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-bzktt4gbc1 {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-bzktt4gbc1 {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-bzktt4gbc1 {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-bzktt4gbc1] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-bzktt4gbc1] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-bzktt4gbc1] {
    border: 0;
    background-color: #6b9ed2;
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-bzktt4gbc1] {
        background-color: #3b6ea2;
    }

    #components-reconnect-modal button:active[b-bzktt4gbc1] {
        background-color: #6b9ed2;
    }

.components-rejoining-animation[b-bzktt4gbc1] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-bzktt4gbc1] {
        position: absolute;
        border: 3px solid #0087ff;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-bzktt4gbc1 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-bzktt4gbc1] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-bzktt4gbc1 {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Pages/Admin/Admin.razor.rz.scp.css */
:host[b-uvh06jqusg] {
    display: block;
    min-width: 0;
}

.admin-dashboard[b-uvh06jqusg] {
    --admin-bg: #f5f7fb;
    --admin-surface: #ffffff;
    --admin-surface-muted: #f8fafc;
    --admin-line: #e7eaf0;
    --admin-line-strong: #d9dee8;
    --admin-text: #172033;
    --admin-muted: #6f7889;
    --admin-soft: #98a1b2;
    --admin-primary: #315efb;
    --admin-primary-hover: #254bd2;
    --admin-shadow: 0 1px 2px rgba(15, 23, 42, .03), 0 12px 34px rgba(15, 23, 42, .055);
    min-height: 100%;
    padding: 32px;
    background: var(--admin-bg);
    color: var(--admin-text);
}

.admin-header[b-uvh06jqusg] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 28px;
}

.admin-header-copy[b-uvh06jqusg] {
    min-width: 0;
}

.admin-eyebrow[b-uvh06jqusg] {
    display: block;
    margin-bottom: 9px;
    color: var(--admin-primary);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .14em;
}

.admin-header-copy h1[b-uvh06jqusg] {
    margin: 0;
    color: #111827;
    font-size: clamp(27px, 3vw, 38px);
    font-weight: 780;
    line-height: 1.15;
    letter-spacing: -.035em;
}

.admin-header-copy p[b-uvh06jqusg] {
    max-width: 720px;
    margin: 10px 0 0;
    color: var(--admin-muted);
    font-size: 14px;
    line-height: 1.65;
}

.refresh-button[b-uvh06jqusg] {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 16px;
    border: 1px solid var(--admin-line-strong);
    border-radius: 11px;
    background: var(--admin-surface);
    color: #394257;
    box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    transition: border-color .16s ease, background .16s ease, transform .16s ease;
}

    .refresh-button:hover:not(:disabled)[b-uvh06jqusg] {
        border-color: #bdc6d5;
        background: #fbfcfe;
        transform: translateY(-1px);
    }

    .refresh-button:disabled[b-uvh06jqusg] {
        opacity: .55;
        cursor: default;
    }

    .refresh-button svg[b-uvh06jqusg] {
        width: 17px;
        height: 17px;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.9;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

.admin-alert[b-uvh06jqusg] {
    margin-bottom: 20px;
    padding: 14px 16px;
    border: 1px solid #fecaca;
    border-radius: 12px;
    background: #fff7f7;
    color: #b42318;
    font-size: 13px;
    line-height: 1.55;
}

.dashboard-loading[b-uvh06jqusg] {
    display: grid;
    min-height: 320px;
    place-items: center;
    color: var(--admin-muted);
}

.loading-spinner[b-uvh06jqusg] {
    width: 32px;
    height: 32px;
    margin: 0 auto 14px;
    border: 3px solid #e5eaf3;
    border-top-color: var(--admin-primary);
    border-radius: 50%;
    animation: admin-spin-b-uvh06jqusg .75s linear infinite;
}

@keyframes admin-spin-b-uvh06jqusg {
    to {
        transform: rotate(360deg);
    }
}

.stats-grid[b-uvh06jqusg] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 18px;
}

.stat-card[b-uvh06jqusg] {
    min-width: 0;
    padding: 20px;
    border: 1px solid var(--admin-line);
    border-radius: 15px;
    background: var(--admin-surface);
    color: inherit;
    text-decoration: none;
    box-shadow: 0 1px 2px rgba(15, 23, 42, .025);
    transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}

    .stat-card:hover[b-uvh06jqusg] {
        border-color: #cfd6e2;
        box-shadow: var(--admin-shadow);
        transform: translateY(-2px);
    }

.stat-card-top[b-uvh06jqusg] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 18px;
}

.stat-icon[b-uvh06jqusg] {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 11px;
}

    .stat-icon svg[b-uvh06jqusg] {
        width: 20px;
        height: 20px;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.9;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

    .stat-icon.users[b-uvh06jqusg] {
        background: #eef3ff;
        color: #315efb;
    }

    .stat-icon.chats[b-uvh06jqusg] {
        background: #edf9f3;
        color: #18875d;
    }

    .stat-icon.documents[b-uvh06jqusg] {
        background: #fff5e9;
        color: #c56a16;
    }

    .stat-icon.activity[b-uvh06jqusg] {
        background: #f5efff;
        color: #7b4bc4;
    }

.stat-arrow[b-uvh06jqusg] {
    color: #a3aaba;
    font-size: 19px;
}

.stat-card strong[b-uvh06jqusg] {
    display: block;
    overflow: hidden;
    color: #151c2c;
    font-size: 30px;
    font-weight: 760;
    line-height: 1.05;
    letter-spacing: -.035em;
    text-overflow: ellipsis;
}

.stat-label[b-uvh06jqusg] {
    display: block;
    margin-top: 9px;
    color: #394257;
    font-size: 13px;
    font-weight: 720;
}

.stat-card small[b-uvh06jqusg] {
    display: block;
    margin-top: 5px;
    overflow: hidden;
    color: var(--admin-soft);
    font-size: 12px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.knowledge-summary[b-uvh06jqusg],
.dashboard-panel[b-uvh06jqusg] {
    border: 1px solid var(--admin-line);
    border-radius: 15px;
    background: var(--admin-surface);
    box-shadow: 0 1px 2px rgba(15, 23, 42, .025);
}

.knowledge-summary[b-uvh06jqusg] {
    margin-bottom: 18px;
    padding: 22px;
}

.dashboard-panel[b-uvh06jqusg] {
    min-width: 0;
    padding: 22px;
}

.section-heading[b-uvh06jqusg],
.panel-heading[b-uvh06jqusg] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 18px;
}

    .section-heading h2[b-uvh06jqusg],
    .panel-heading h2[b-uvh06jqusg] {
        margin: 0;
        color: #172033;
        font-size: 17px;
        font-weight: 750;
        letter-spacing: -.018em;
    }

    .section-heading p[b-uvh06jqusg],
    .panel-heading p[b-uvh06jqusg] {
        margin: 5px 0 0;
        color: var(--admin-muted);
        font-size: 12px;
        line-height: 1.55;
    }

.panel-link[b-uvh06jqusg] {
    flex: 0 0 auto;
    color: var(--admin-primary);
    font-size: 12px;
    font-weight: 750;
    text-decoration: none;
}

    .panel-link:hover[b-uvh06jqusg] {
        text-decoration: underline;
    }

.summary-grid[b-uvh06jqusg] {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    border: 1px solid var(--admin-line);
    border-radius: 12px;
    overflow: hidden;
}

.summary-item[b-uvh06jqusg] {
    min-width: 0;
    padding: 17px 18px;
    border-right: 1px solid var(--admin-line);
    background: #fbfcfe;
}

    .summary-item:last-child[b-uvh06jqusg] {
        border-right: 0;
    }

    .summary-item span[b-uvh06jqusg] {
        display: block;
        color: var(--admin-muted);
        font-size: 11px;
        font-weight: 650;
    }

    .summary-item strong[b-uvh06jqusg] {
        display: block;
        margin-top: 7px;
        color: #172033;
        font-size: 23px;
        font-weight: 760;
        letter-spacing: -.025em;
    }

.dashboard-columns[b-uvh06jqusg] {
    display: grid;
    grid-template-columns: minmax(0, 1.65fr) minmax(280px, .75fr);
    gap: 18px;
}

.dashboard-side[b-uvh06jqusg] {
    display: grid;
    align-content: start;
    gap: 18px;
}

.activity-list[b-uvh06jqusg],
.user-list[b-uvh06jqusg],
.status-list[b-uvh06jqusg] {
    display: grid;
    gap: 0;
}

.activity-row[b-uvh06jqusg],
.user-row[b-uvh06jqusg],
.status-row[b-uvh06jqusg] {
    border-bottom: 1px solid #edf0f4;
}

    .activity-row:last-child[b-uvh06jqusg],
    .user-row:last-child[b-uvh06jqusg],
    .status-row:last-child[b-uvh06jqusg] {
        border-bottom: 0;
    }

.activity-row[b-uvh06jqusg] {
    display: grid;
    grid-template-columns: 8px minmax(0, 1fr);
    gap: 13px;
    padding: 15px 0;
}

.activity-marker[b-uvh06jqusg] {
    width: 7px;
    height: 7px;
    margin-top: 6px;
    border-radius: 50%;
    background: #5575f6;
    box-shadow: 0 0 0 4px #edf1ff;
}

.activity-content[b-uvh06jqusg] {
    min-width: 0;
}

.activity-title-row[b-uvh06jqusg] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 16px;
}

    .activity-title-row strong[b-uvh06jqusg] {
        min-width: 0;
        overflow: hidden;
        color: #242c3d;
        font-size: 13px;
        font-weight: 700;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .activity-title-row time[b-uvh06jqusg] {
        flex: 0 0 auto;
        color: var(--admin-soft);
        font-size: 11px;
    }

.activity-content p[b-uvh06jqusg] {
    margin: 5px 0 8px;
    color: var(--admin-muted);
    font-size: 12px;
    line-height: 1.55;
}

.activity-meta[b-uvh06jqusg] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

    .activity-meta span[b-uvh06jqusg] {
        padding: 3px 7px;
        border: 1px solid #e6eaf1;
        border-radius: 6px;
        background: #fafbfc;
        color: #70798a;
        font-size: 10px;
    }

.user-row[b-uvh06jqusg],
.status-row[b-uvh06jqusg] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 13px 0;
}

.user-avatar[b-uvh06jqusg] {
    display: grid;
    width: 35px;
    height: 35px;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 10px;
    background: #eef2ff;
    color: #315efb;
    font-size: 12px;
    font-weight: 800;
}

.user-info[b-uvh06jqusg] {
    min-width: 0;
    flex: 1;
}

    .user-info strong[b-uvh06jqusg],
    .status-row strong[b-uvh06jqusg] {
        display: block;
        overflow: hidden;
        color: #252d3e;
        font-size: 12px;
        font-weight: 700;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .user-info span[b-uvh06jqusg],
    .status-row span[b-uvh06jqusg] {
        display: block;
        margin-top: 3px;
        overflow: hidden;
        color: var(--admin-soft);
        font-size: 11px;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

.role-badge[b-uvh06jqusg],
.status-badge[b-uvh06jqusg] {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 6px;
    padding: 5px 8px;
    border-radius: 7px;
    font-size: 10px;
    font-weight: 800;
}

    .role-badge.admin[b-uvh06jqusg] {
        background: #eef3ff;
        color: #315efb;
    }

    .role-badge.user[b-uvh06jqusg] {
        background: #f0f2f5;
        color: #667085;
    }

    .status-badge.online[b-uvh06jqusg] {
        background: #ecf9f2;
        color: #16815b;
    }

    .status-badge.offline[b-uvh06jqusg] {
        background: #f5f6f8;
        color: #7c8492;
    }

    .status-badge i[b-uvh06jqusg] {
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background: currentColor;
    }

.empty-state[b-uvh06jqusg] {
    display: grid;
    min-height: 170px;
    place-items: center;
    align-content: center;
    gap: 8px;
    padding: 26px;
    text-align: center;
}

    .empty-state.compact[b-uvh06jqusg] {
        min-height: 110px;
        padding: 18px;
    }

    .empty-state svg[b-uvh06jqusg] {
        width: 30px;
        height: 30px;
        fill: none;
        stroke: #a1a9b8;
        stroke-width: 1.8;
    }

    .empty-state strong[b-uvh06jqusg] {
        color: #3a4355;
        font-size: 13px;
    }

    .empty-state span[b-uvh06jqusg] {
        color: var(--admin-muted);
        font-size: 12px;
    }

/* 빠른 관리 섹션 제거 후 남은 레이아웃 안전 처리 */
.quick-section[b-uvh06jqusg],
.quick-grid[b-uvh06jqusg] {
    display: none !important;
}

@media (max-width: 1180px) {
    .stats-grid[b-uvh06jqusg] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .summary-grid[b-uvh06jqusg] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .summary-item:nth-child(3)[b-uvh06jqusg] {
        border-right: 0;
    }

    .summary-item:nth-child(n+4)[b-uvh06jqusg] {
        border-top: 1px solid var(--admin-line);
    }

    .dashboard-columns[b-uvh06jqusg] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 720px) {
    .admin-dashboard[b-uvh06jqusg] {
        padding: 20px 16px 28px;
    }

    .admin-header[b-uvh06jqusg] {
        align-items: stretch;
    }

    .admin-header[b-uvh06jqusg] {
        flex-direction: column;
    }

    .refresh-button[b-uvh06jqusg] {
        width: 100%;
    }

    .stats-grid[b-uvh06jqusg] {
        grid-template-columns: 1fr 1fr;
        gap: 10px;
    }

    .stat-card[b-uvh06jqusg] {
        padding: 16px;
    }

        .stat-card strong[b-uvh06jqusg] {
            font-size: 26px;
        }

    .summary-grid[b-uvh06jqusg] {
        grid-template-columns: 1fr 1fr;
    }

    .summary-item[b-uvh06jqusg],
    .summary-item:nth-child(3)[b-uvh06jqusg] {
        border-right: 1px solid var(--admin-line);
    }

        .summary-item:nth-child(even)[b-uvh06jqusg] {
            border-right: 0;
        }

        .summary-item:nth-child(n+3)[b-uvh06jqusg] {
            border-top: 1px solid var(--admin-line);
        }

    .knowledge-summary[b-uvh06jqusg],
    .dashboard-panel[b-uvh06jqusg] {
        padding: 18px;
    }
}

@media (max-width: 440px) {
    .stats-grid[b-uvh06jqusg] {
        grid-template-columns: 1fr;
    }

    .summary-grid[b-uvh06jqusg] {
        grid-template-columns: 1fr;
    }

    .summary-item[b-uvh06jqusg],
    .summary-item:nth-child(even)[b-uvh06jqusg],
    .summary-item:nth-child(3)[b-uvh06jqusg] {
        border-right: 0;
        border-top: 1px solid var(--admin-line);
    }

        .summary-item:first-child[b-uvh06jqusg] {
            border-top: 0;
        }

    .activity-title-row[b-uvh06jqusg] {
        align-items: flex-start;
        flex-direction: column;
        gap: 4px;
    }
}
/* /Components/Pages/Admin/AdminActivity.razor.rz.scp.css */
:host[b-b7viq6egd0] {
    display: block;
    min-width: 0;
}

.admin-list-page[b-b7viq6egd0],
.admin-chats-page[b-b7viq6egd0],
.admin-users-page[b-b7viq6egd0] {
    --page-bg: #f5f7fb;
    --surface: #ffffff;
    --surface-muted: #f8fafc;
    --line: #e6eaf0;
    --line-strong: #d8dee8;
    --text: #172033;
    --muted: #70798a;
    --soft: #9aa3b2;
    --primary: #315efb;
    --primary-hover: #244bd2;
    --danger: #c43d4b;
    --success: #16815b;
    min-height: 100%;
    padding: 30px 32px 44px;
    background: var(--page-bg);
    color: var(--text);
}

.page-header[b-b7viq6egd0] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 24px;
}

    .page-header > div[b-b7viq6egd0],
    .page-header-copy[b-b7viq6egd0] {
        min-width: 0;
    }

.back-link[b-b7viq6egd0] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 13px;
    color: #657083;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
}

    .back-link:hover[b-b7viq6egd0] {
        color: var(--primary);
    }

    .back-link svg[b-b7viq6egd0] {
        width: 16px;
        height: 16px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
    }

.eyebrow[b-b7viq6egd0],
.page-eyebrow[b-b7viq6egd0],
.drawer-eyebrow[b-b7viq6egd0] {
    display: block;
    margin-bottom: 7px;
    color: var(--primary);
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .15em;
}

.page-header h1[b-b7viq6egd0],
.page-header-copy h1[b-b7viq6egd0] {
    margin: 0;
    color: #111827;
    font-size: clamp(27px, 3vw, 36px);
    font-weight: 780;
    line-height: 1.15;
    letter-spacing: -.035em;
}

.page-header p[b-b7viq6egd0],
.page-header-copy p[b-b7viq6egd0] {
    max-width: 720px;
    margin: 9px 0 0;
    color: var(--muted);
    font-size: 13px;
    line-height: 1.65;
}

.refresh-button[b-b7viq6egd0] {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 16px;
    border: 1px solid var(--line-strong);
    border-radius: 11px;
    background: var(--surface);
    color: #394257;
    font-size: 13px;
    font-weight: 750;
    cursor: pointer;
}

    .refresh-button:hover:not(:disabled)[b-b7viq6egd0] {
        border-color: #bcc5d3;
        background: #fbfcfe;
    }

    .refresh-button:disabled[b-b7viq6egd0] {
        opacity: .55;
        cursor: default;
    }

    .refresh-button svg[b-b7viq6egd0] {
        width: 17px;
        height: 17px;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.9;
    }

.notice[b-b7viq6egd0],
.message[b-b7viq6egd0] {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 16px;
    padding: 12px 14px;
    border: 1px solid;
    border-radius: 10px;
    font-size: 12px;
}

    .notice.success[b-b7viq6egd0],
    .message.success[b-b7viq6egd0] {
        border-color: #bfe8d3;
        background: #f3fbf7;
        color: #116c4c;
    }

    .notice.error[b-b7viq6egd0],
    .message.error[b-b7viq6egd0] {
        border-color: #f1c5ca;
        background: #fff7f7;
        color: #b42335;
    }

    .message svg[b-b7viq6egd0] {
        width: 17px;
        height: 17px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
    }

.summary-grid[b-b7viq6egd0] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 16px;
}

.summary-card[b-b7viq6egd0] {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 13px;
    min-height: 88px;
    padding: 17px 18px;
    border: 1px solid var(--line);
    border-radius: 13px;
    background: var(--surface);
    box-shadow: 0 1px 2px rgba(15, 23, 42, .025);
}

    .summary-card > div:last-child[b-b7viq6egd0] {
        min-width: 0;
    }

    .summary-card span[b-b7viq6egd0] {
        display: block;
        color: var(--muted);
        font-size: 11px;
        font-weight: 650;
    }

    .summary-card strong[b-b7viq6egd0] {
        display: block;
        margin-top: 6px;
        color: #172033;
        font-size: 23px;
        font-weight: 760;
        letter-spacing: -.025em;
    }

.summary-icon[b-b7viq6egd0] {
    display: grid;
    width: 38px;
    height: 38px;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 10px;
    background: #f0f3f8;
    color: #667085;
}

    .summary-icon.active[b-b7viq6egd0],
    .summary-icon.users[b-b7viq6egd0] {
        background: #eef3ff;
        color: #315efb;
    }

    .summary-icon.deleted[b-b7viq6egd0] {
        background: #fff0f1;
        color: #c43d4b;
    }

    .summary-icon.messages[b-b7viq6egd0] {
        background: #edf9f3;
        color: #18815b;
    }

    .summary-icon svg[b-b7viq6egd0] {
        width: 18px;
        height: 18px;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.9;
    }

.management-panel[b-b7viq6egd0],
.chat-management-panel[b-b7viq6egd0],
.users-management-panel[b-b7viq6egd0] {
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: var(--surface);
    box-shadow: 0 1px 2px rgba(15, 23, 42, .025);
}

.toolbar[b-b7viq6egd0],
.panel-toolbar[b-b7viq6egd0] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px;
    border-bottom: 1px solid var(--line);
    background: #fbfcfe;
}

.search-box[b-b7viq6egd0] {
    position: relative;
    display: flex;
    min-width: 220px;
    max-width: 540px;
    flex: 1;
    align-items: center;
}

    .search-box > svg[b-b7viq6egd0] {
        position: absolute;
        left: 12px;
        width: 17px;
        height: 17px;
        pointer-events: none;
        fill: none;
        stroke: #99a2b2;
        stroke-width: 2;
    }

    .search-box input[b-b7viq6egd0] {
        width: 100%;
        min-height: 39px;
        padding: 0 40px 0 37px;
        border: 1px solid var(--line-strong);
        border-radius: 9px;
        outline: 0;
        background: var(--surface);
        color: var(--text);
        font-size: 12px;
        transition: border-color .15s ease, box-shadow .15s ease;
    }

        .search-box input:focus[b-b7viq6egd0] {
            border-color: #96aafb;
            box-shadow: 0 0 0 3px rgba(49, 94, 251, .09);
        }

    .search-box button[b-b7viq6egd0],
    .clear-search[b-b7viq6egd0] {
        position: absolute;
        right: 7px;
        display: grid;
        width: 27px;
        height: 27px;
        place-items: center;
        border: 0;
        border-radius: 7px;
        background: transparent;
        color: #8b94a4;
        font-size: 18px;
        cursor: pointer;
    }

        .search-box button:hover[b-b7viq6egd0],
        .clear-search:hover[b-b7viq6egd0] {
            background: #f0f2f6;
            color: #4f596b;
        }

        .search-box button svg[b-b7viq6egd0] {
            width: 15px;
            height: 15px;
            fill: none;
            stroke: currentColor;
            stroke-width: 2;
        }

.toolbar select[b-b7viq6egd0],
.sort-select[b-b7viq6egd0],
.panel-toolbar select[b-b7viq6egd0] {
    min-height: 39px;
    padding: 0 34px 0 12px;
    border: 1px solid var(--line-strong);
    border-radius: 9px;
    outline: 0;
    background: var(--surface);
    color: #414b5d;
    font-size: 12px;
    font-weight: 650;
}

.filter-group[b-b7viq6egd0] {
    display: inline-flex;
    padding: 3px;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: #f1f3f7;
}

.filter-button[b-b7viq6egd0] {
    min-height: 31px;
    padding: 0 12px;
    border: 0;
    border-radius: 7px;
    background: transparent;
    color: #727b8b;
    font-size: 11px;
    font-weight: 750;
    cursor: pointer;
}

    .filter-button.active[b-b7viq6egd0] {
        background: var(--surface);
        color: #263044;
        box-shadow: 0 1px 3px rgba(15, 23, 42, .08);
    }

.result-header[b-b7viq6egd0] {
    display: flex;
    min-height: 54px;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 0 16px;
    border-bottom: 1px solid var(--line);
}

    .result-header > div[b-b7viq6egd0] {
        min-width: 0;
    }

    .result-header strong[b-b7viq6egd0] {
        color: #293246;
        font-size: 12px;
        font-weight: 780;
    }

    .result-header span[b-b7viq6egd0] {
        margin-left: 8px;
        color: var(--soft);
        font-size: 11px;
    }

.desktop-table[b-b7viq6egd0] {
    overflow-x: auto;
}

    .desktop-table table[b-b7viq6egd0] {
        width: 100%;
        min-width: 880px;
        border-collapse: collapse;
    }

    .desktop-table th[b-b7viq6egd0] {
        padding: 11px 14px;
        border-bottom: 1px solid var(--line);
        background: #fafbfc;
        color: #818a9a;
        font-size: 10px;
        font-weight: 800;
        letter-spacing: .035em;
        text-align: left;
        white-space: nowrap;
    }

    .desktop-table td[b-b7viq6egd0] {
        padding: 13px 14px;
        border-bottom: 1px solid #edf0f4;
        color: #4b5567;
        font-size: 12px;
        vertical-align: middle;
    }

    .desktop-table tbody tr:last-child td[b-b7viq6egd0] {
        border-bottom: 0;
    }

    .desktop-table tbody tr:hover td[b-b7viq6egd0] {
        background: #fcfdff;
    }

.date-value[b-b7viq6egd0] {
    color: #7a8393;
    font-size: 11px;
    white-space: nowrap;
}

.status-badge[b-b7viq6egd0],
.type-badge[b-b7viq6egd0],
.role-badge[b-b7viq6egd0] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 8px;
    border-radius: 7px;
    font-size: 10px;
    font-weight: 800;
    white-space: nowrap;
}

    .status-badge i[b-b7viq6egd0] {
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background: currentColor;
    }

    .status-badge.active[b-b7viq6egd0],
    .status-badge.ready[b-b7viq6egd0] {
        background: #edf9f3;
        color: #16815b;
    }

    .status-badge.deleted[b-b7viq6egd0] {
        background: #fff0f1;
        color: #c43d4b;
    }

    .status-badge.pending[b-b7viq6egd0] {
        background: #fff5e8;
        color: #b56719;
    }

.type-badge[b-b7viq6egd0] {
    border: 1px solid #e2e6ed;
    background: #f8f9fb;
    color: #657083;
}

.loading-state[b-b7viq6egd0],
.empty-state[b-b7viq6egd0],
.state-panel[b-b7viq6egd0] {
    display: grid;
    min-height: 230px;
    place-items: center;
    align-content: center;
    gap: 10px;
    padding: 30px;
    color: var(--muted);
    font-size: 12px;
    text-align: center;
}

    .empty-state svg[b-b7viq6egd0] {
        width: 34px;
        height: 34px;
        fill: none;
        stroke: #a5adba;
        stroke-width: 1.8;
    }

    .empty-state strong[b-b7viq6egd0] {
        color: #3f4859;
        font-size: 13px;
    }

    .empty-state span[b-b7viq6egd0] {
        color: var(--muted);
        font-size: 11px;
    }

.spinner[b-b7viq6egd0],
.button-spinner[b-b7viq6egd0] {
    border: 2px solid #e3e7ee;
    border-top-color: var(--primary);
    border-radius: 50%;
    animation: shared-spin-b-b7viq6egd0 .72s linear infinite;
}

.spinner[b-b7viq6egd0] {
    width: 28px;
    height: 28px;
}

.button-spinner[b-b7viq6egd0] {
    width: 15px;
    height: 15px;
}

@keyframes shared-spin-b-b7viq6egd0 {
    to {
        transform: rotate(360deg);
    }
}

.mobile-list[b-b7viq6egd0],
.mobile-chat-list[b-b7viq6egd0],
.mobile-user-list[b-b7viq6egd0] {
    display: none;
}

.drawer-backdrop[b-b7viq6egd0] {
    position: fixed;
    inset: 0;
    z-index: 950;
    background: rgba(15, 23, 42, .24);
    backdrop-filter: blur(2px);
}

.detail-drawer[b-b7viq6egd0],
.chat-drawer[b-b7viq6egd0],
.user-drawer[b-b7viq6egd0] {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 951;
    display: flex;
    width: min(540px, 94vw);
    height: 100dvh;
    flex-direction: column;
    border-left: 1px solid var(--line);
    background: var(--surface);
    box-shadow: -20px 0 60px rgba(15, 23, 42, .12);
    animation: drawer-in-b-b7viq6egd0 .18s ease-out;
}

@keyframes drawer-in-b-b7viq6egd0 {
    from {
        transform: translateX(24px);
        opacity: .7;
    }

    to {
        transform: translateX(0);
        opacity: 1;
    }
}

.detail-drawer > header[b-b7viq6egd0],
.drawer-header[b-b7viq6egd0] {
    display: flex;
    flex: 0 0 auto;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding: 22px 24px 18px;
    border-bottom: 1px solid var(--line);
}

    .detail-drawer header span[b-b7viq6egd0],
    .drawer-header span[b-b7viq6egd0] {
        color: var(--primary);
        font-size: 10px;
        font-weight: 850;
        letter-spacing: .12em;
    }

    .detail-drawer h2[b-b7viq6egd0],
    .drawer-header h2[b-b7viq6egd0] {
        margin: 7px 0 0;
        color: #172033;
        font-size: 21px;
        font-weight: 760;
        letter-spacing: -.025em;
    }

    .detail-drawer header p[b-b7viq6egd0],
    .drawer-header p[b-b7viq6egd0] {
        margin: 5px 0 0;
        color: var(--muted);
        font-size: 12px;
    }

.detail-drawer header button[b-b7viq6egd0],
.drawer-close[b-b7viq6egd0] {
    display: grid;
    width: 34px;
    height: 34px;
    flex: 0 0 auto;
    place-items: center;
    border: 1px solid var(--line);
    border-radius: 9px;
    background: var(--surface);
    color: #737c8d;
    font-size: 22px;
    cursor: pointer;
}

    .drawer-close svg[b-b7viq6egd0] {
        width: 17px;
        height: 17px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
    }

.drawer-content[b-b7viq6egd0],
.drawer-body[b-b7viq6egd0] {
    min-height: 0;
    flex: 1;
    overflow-y: auto;
    padding: 22px 24px;
}

.detail-drawer footer[b-b7viq6egd0],
.drawer-footer[b-b7viq6egd0] {
    display: flex;
    flex: 0 0 auto;
    justify-content: flex-end;
    gap: 8px;
    padding: 14px 24px;
    border-top: 1px solid var(--line);
    background: #fbfcfe;
}

@media (max-width: 900px) {
    .summary-grid[b-b7viq6egd0] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .admin-list-page[b-b7viq6egd0],
    .admin-chats-page[b-b7viq6egd0],
    .admin-users-page[b-b7viq6egd0] {
        padding: 20px 14px 30px;
    }

    .page-header[b-b7viq6egd0] {
        align-items: stretch;
        flex-direction: column;
        margin-bottom: 18px;
    }

    .refresh-button[b-b7viq6egd0] {
        width: 100%;
    }

    .summary-grid[b-b7viq6egd0] {
        gap: 9px;
    }

    .summary-card[b-b7viq6egd0] {
        min-height: 78px;
        padding: 14px;
    }

        .summary-card strong[b-b7viq6egd0] {
            font-size: 20px;
        }

    .toolbar[b-b7viq6egd0],
    .panel-toolbar[b-b7viq6egd0] {
        align-items: stretch;
        flex-direction: column;
    }

    .search-box[b-b7viq6egd0] {
        width: 100%;
        max-width: none;
    }

    .filter-group[b-b7viq6egd0] {
        width: 100%;
    }

    .filter-button[b-b7viq6egd0] {
        flex: 1;
    }

    .toolbar select[b-b7viq6egd0],
    .sort-select[b-b7viq6egd0],
    .panel-toolbar select[b-b7viq6egd0] {
        width: 100%;
    }

    .result-header[b-b7viq6egd0] {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
        padding: 12px 14px;
    }

        .result-header span[b-b7viq6egd0] {
            display: block;
            margin: 3px 0 0;
        }

    .desktop-table[b-b7viq6egd0] {
        display: none;
    }

    .mobile-list[b-b7viq6egd0],
    .mobile-chat-list[b-b7viq6egd0],
    .mobile-user-list[b-b7viq6egd0] {
        display: grid;
        gap: 10px;
        padding: 10px;
        background: #f8fafc;
    }

    .detail-drawer[b-b7viq6egd0],
    .chat-drawer[b-b7viq6egd0],
    .user-drawer[b-b7viq6egd0] {
        width: 100%;
    }
}

@media (max-width: 430px) {
    .summary-grid[b-b7viq6egd0] {
        grid-template-columns: 1fr;
    }
}

.activity-toolbar[b-b7viq6egd0] {
    justify-content: flex-start;
}

    .activity-toolbar .search-box[b-b7viq6egd0] {
        max-width: none;
    }

    .activity-toolbar select[b-b7viq6egd0] {
        min-width: 135px;
    }

.activity-timeline[b-b7viq6egd0] {
    padding: 18px 20px 26px;
}

.activity-day + .activity-day[b-b7viq6egd0] {
    margin-top: 24px;
}

.activity-day > header[b-b7viq6egd0] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 8px;
    padding: 0 3px;
}

    .activity-day > header h2[b-b7viq6egd0] {
        margin: 0;
        color: #4b5567;
        font-size: 12px;
        font-weight: 800;
    }

    .activity-day > header span[b-b7viq6egd0] {
        color: #9aa3b2;
        font-size: 10px;
    }

.activity-items[b-b7viq6egd0] {
    border: 1px solid #e6eaf0;
    border-radius: 12px;
    overflow: hidden;
}

.activity-item[b-b7viq6egd0] {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 12px;
    padding: 14px;
    border-bottom: 1px solid #edf0f4;
    background: #fff;
}

    .activity-item:last-child[b-b7viq6egd0] {
        border-bottom: 0;
    }

    .activity-item:hover[b-b7viq6egd0] {
        background: #fcfdff;
    }

.activity-icon[b-b7viq6egd0] {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 9px;
    background: #f0f2f6;
    color: #697386;
    font-size: 10px;
    font-weight: 850;
}

    .activity-icon.ai[b-b7viq6egd0] {
        background: #eef3ff;
        color: #315efb;
    }

    .activity-icon.account[b-b7viq6egd0] {
        background: #edf9f3;
        color: #16815b;
    }

    .activity-icon.document[b-b7viq6egd0] {
        background: #fff5e8;
        color: #b56719;
    }

    .activity-icon.case[b-b7viq6egd0] {
        background: #f4efff;
        color: #7650b7;
    }

    .activity-icon.project[b-b7viq6egd0] {
        background: #eef8fb;
        color: #23768a;
    }

.activity-content[b-b7viq6egd0] {
    min-width: 0;
}

.activity-main[b-b7viq6egd0] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 14px;
}

    .activity-main strong[b-b7viq6egd0] {
        min-width: 0;
        overflow: hidden;
        color: #293246;
        font-size: 12px;
        font-weight: 760;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .activity-main time[b-b7viq6egd0] {
        flex: 0 0 auto;
        color: #9aa3b2;
        font-size: 10px;
    }

.activity-content p[b-b7viq6egd0] {
    margin: 5px 0 9px;
    color: #687284;
    font-size: 11px;
    line-height: 1.55;
}

.activity-meta[b-b7viq6egd0] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

    .activity-meta span[b-b7viq6egd0] {
        padding: 3px 7px;
        border: 1px solid #e6eaf0;
        border-radius: 6px;
        background: #fafbfc;
        color: #7b8494;
        font-size: 9px;
    }

@media (max-width: 720px) {
    .activity-toolbar select[b-b7viq6egd0] {
        width: 100%;
    }

    .activity-timeline[b-b7viq6egd0] {
        padding: 12px;
    }

    .activity-item[b-b7viq6egd0] {
        grid-template-columns: 30px minmax(0, 1fr);
        gap: 10px;
        padding: 12px;
    }

    .activity-icon[b-b7viq6egd0] {
        width: 30px;
        height: 30px;
    }
}
/* /Components/Pages/Admin/AdminChats.razor.rz.scp.css */
:host[b-b6j4yxvzdi] {
    display: block;
    min-width: 0;
}

.admin-list-page[b-b6j4yxvzdi],
.admin-chats-page[b-b6j4yxvzdi],
.admin-users-page[b-b6j4yxvzdi] {
    --page-bg: #f5f7fb;
    --surface: #ffffff;
    --surface-muted: #f8fafc;
    --line: #e6eaf0;
    --line-strong: #d8dee8;
    --text: #172033;
    --muted: #70798a;
    --soft: #9aa3b2;
    --primary: #315efb;
    --primary-hover: #244bd2;
    --danger: #c43d4b;
    --success: #16815b;
    min-height: 100%;
    padding: 30px 32px 44px;
    background: var(--page-bg);
    color: var(--text);
}

.page-header[b-b6j4yxvzdi] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 24px;
}

    .page-header > div[b-b6j4yxvzdi],
    .page-header-copy[b-b6j4yxvzdi] {
        min-width: 0;
    }

.back-link[b-b6j4yxvzdi] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 13px;
    color: #657083;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
}

    .back-link:hover[b-b6j4yxvzdi] {
        color: var(--primary);
    }

    .back-link svg[b-b6j4yxvzdi] {
        width: 16px;
        height: 16px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
    }

.eyebrow[b-b6j4yxvzdi],
.page-eyebrow[b-b6j4yxvzdi],
.drawer-eyebrow[b-b6j4yxvzdi] {
    display: block;
    margin-bottom: 7px;
    color: var(--primary);
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .15em;
}

.page-header h1[b-b6j4yxvzdi],
.page-header-copy h1[b-b6j4yxvzdi] {
    margin: 0;
    color: #111827;
    font-size: clamp(27px, 3vw, 36px);
    font-weight: 780;
    line-height: 1.15;
    letter-spacing: -.035em;
}

.page-header p[b-b6j4yxvzdi],
.page-header-copy p[b-b6j4yxvzdi] {
    max-width: 720px;
    margin: 9px 0 0;
    color: var(--muted);
    font-size: 13px;
    line-height: 1.65;
}

.refresh-button[b-b6j4yxvzdi] {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 16px;
    border: 1px solid var(--line-strong);
    border-radius: 11px;
    background: var(--surface);
    color: #394257;
    font-size: 13px;
    font-weight: 750;
    cursor: pointer;
}

    .refresh-button:hover:not(:disabled)[b-b6j4yxvzdi] {
        border-color: #bcc5d3;
        background: #fbfcfe;
    }

    .refresh-button:disabled[b-b6j4yxvzdi] {
        opacity: .55;
        cursor: default;
    }

    .refresh-button svg[b-b6j4yxvzdi] {
        width: 17px;
        height: 17px;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.9;
    }

.notice[b-b6j4yxvzdi],
.message[b-b6j4yxvzdi] {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 16px;
    padding: 12px 14px;
    border: 1px solid;
    border-radius: 10px;
    font-size: 12px;
}

    .notice.success[b-b6j4yxvzdi],
    .message.success[b-b6j4yxvzdi] {
        border-color: #bfe8d3;
        background: #f3fbf7;
        color: #116c4c;
    }

    .notice.error[b-b6j4yxvzdi],
    .message.error[b-b6j4yxvzdi] {
        border-color: #f1c5ca;
        background: #fff7f7;
        color: #b42335;
    }

    .message svg[b-b6j4yxvzdi] {
        width: 17px;
        height: 17px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
    }

.summary-grid[b-b6j4yxvzdi] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 16px;
}

.summary-card[b-b6j4yxvzdi] {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 13px;
    min-height: 88px;
    padding: 17px 18px;
    border: 1px solid var(--line);
    border-radius: 13px;
    background: var(--surface);
    box-shadow: 0 1px 2px rgba(15, 23, 42, .025);
}

    .summary-card > div:last-child[b-b6j4yxvzdi] {
        min-width: 0;
    }

    .summary-card span[b-b6j4yxvzdi] {
        display: block;
        color: var(--muted);
        font-size: 11px;
        font-weight: 650;
    }

    .summary-card strong[b-b6j4yxvzdi] {
        display: block;
        margin-top: 6px;
        color: #172033;
        font-size: 23px;
        font-weight: 760;
        letter-spacing: -.025em;
    }

.summary-icon[b-b6j4yxvzdi] {
    display: grid;
    width: 38px;
    height: 38px;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 10px;
    background: #f0f3f8;
    color: #667085;
}

    .summary-icon.active[b-b6j4yxvzdi],
    .summary-icon.users[b-b6j4yxvzdi] {
        background: #eef3ff;
        color: #315efb;
    }

    .summary-icon.deleted[b-b6j4yxvzdi] {
        background: #fff0f1;
        color: #c43d4b;
    }

    .summary-icon.messages[b-b6j4yxvzdi] {
        background: #edf9f3;
        color: #18815b;
    }

    .summary-icon svg[b-b6j4yxvzdi] {
        width: 18px;
        height: 18px;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.9;
    }

.management-panel[b-b6j4yxvzdi],
.chat-management-panel[b-b6j4yxvzdi],
.users-management-panel[b-b6j4yxvzdi] {
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: var(--surface);
    box-shadow: 0 1px 2px rgba(15, 23, 42, .025);
}

.toolbar[b-b6j4yxvzdi],
.panel-toolbar[b-b6j4yxvzdi] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px;
    border-bottom: 1px solid var(--line);
    background: #fbfcfe;
}

.search-box[b-b6j4yxvzdi] {
    position: relative;
    display: flex;
    min-width: 220px;
    max-width: 540px;
    flex: 1;
    align-items: center;
}

    .search-box > svg[b-b6j4yxvzdi] {
        position: absolute;
        left: 12px;
        width: 17px;
        height: 17px;
        pointer-events: none;
        fill: none;
        stroke: #99a2b2;
        stroke-width: 2;
    }

    .search-box input[b-b6j4yxvzdi] {
        width: 100%;
        min-height: 39px;
        padding: 0 40px 0 37px;
        border: 1px solid var(--line-strong);
        border-radius: 9px;
        outline: 0;
        background: var(--surface);
        color: var(--text);
        font-size: 12px;
        transition: border-color .15s ease, box-shadow .15s ease;
    }

        .search-box input:focus[b-b6j4yxvzdi] {
            border-color: #96aafb;
            box-shadow: 0 0 0 3px rgba(49, 94, 251, .09);
        }

    .search-box button[b-b6j4yxvzdi],
    .clear-search[b-b6j4yxvzdi] {
        position: absolute;
        right: 7px;
        display: grid;
        width: 27px;
        height: 27px;
        place-items: center;
        border: 0;
        border-radius: 7px;
        background: transparent;
        color: #8b94a4;
        font-size: 18px;
        cursor: pointer;
    }

        .search-box button:hover[b-b6j4yxvzdi],
        .clear-search:hover[b-b6j4yxvzdi] {
            background: #f0f2f6;
            color: #4f596b;
        }

        .search-box button svg[b-b6j4yxvzdi] {
            width: 15px;
            height: 15px;
            fill: none;
            stroke: currentColor;
            stroke-width: 2;
        }

.toolbar select[b-b6j4yxvzdi],
.sort-select[b-b6j4yxvzdi],
.panel-toolbar select[b-b6j4yxvzdi] {
    min-height: 39px;
    padding: 0 34px 0 12px;
    border: 1px solid var(--line-strong);
    border-radius: 9px;
    outline: 0;
    background: var(--surface);
    color: #414b5d;
    font-size: 12px;
    font-weight: 650;
}

.filter-group[b-b6j4yxvzdi] {
    display: inline-flex;
    padding: 3px;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: #f1f3f7;
}

.filter-button[b-b6j4yxvzdi] {
    min-height: 31px;
    padding: 0 12px;
    border: 0;
    border-radius: 7px;
    background: transparent;
    color: #727b8b;
    font-size: 11px;
    font-weight: 750;
    cursor: pointer;
}

    .filter-button.active[b-b6j4yxvzdi] {
        background: var(--surface);
        color: #263044;
        box-shadow: 0 1px 3px rgba(15, 23, 42, .08);
    }

.result-header[b-b6j4yxvzdi] {
    display: flex;
    min-height: 54px;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 0 16px;
    border-bottom: 1px solid var(--line);
}

    .result-header > div[b-b6j4yxvzdi] {
        min-width: 0;
    }

    .result-header strong[b-b6j4yxvzdi] {
        color: #293246;
        font-size: 12px;
        font-weight: 780;
    }

    .result-header span[b-b6j4yxvzdi] {
        margin-left: 8px;
        color: var(--soft);
        font-size: 11px;
    }

.desktop-table[b-b6j4yxvzdi] {
    overflow-x: auto;
}

    .desktop-table table[b-b6j4yxvzdi] {
        width: 100%;
        min-width: 880px;
        border-collapse: collapse;
    }

    .desktop-table th[b-b6j4yxvzdi] {
        padding: 11px 14px;
        border-bottom: 1px solid var(--line);
        background: #fafbfc;
        color: #818a9a;
        font-size: 10px;
        font-weight: 800;
        letter-spacing: .035em;
        text-align: left;
        white-space: nowrap;
    }

    .desktop-table td[b-b6j4yxvzdi] {
        padding: 13px 14px;
        border-bottom: 1px solid #edf0f4;
        color: #4b5567;
        font-size: 12px;
        vertical-align: middle;
    }

    .desktop-table tbody tr:last-child td[b-b6j4yxvzdi] {
        border-bottom: 0;
    }

    .desktop-table tbody tr:hover td[b-b6j4yxvzdi] {
        background: #fcfdff;
    }

.date-value[b-b6j4yxvzdi] {
    color: #7a8393;
    font-size: 11px;
    white-space: nowrap;
}

.status-badge[b-b6j4yxvzdi],
.type-badge[b-b6j4yxvzdi],
.role-badge[b-b6j4yxvzdi] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 8px;
    border-radius: 7px;
    font-size: 10px;
    font-weight: 800;
    white-space: nowrap;
}

    .status-badge i[b-b6j4yxvzdi] {
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background: currentColor;
    }

    .status-badge.active[b-b6j4yxvzdi],
    .status-badge.ready[b-b6j4yxvzdi] {
        background: #edf9f3;
        color: #16815b;
    }

    .status-badge.deleted[b-b6j4yxvzdi] {
        background: #fff0f1;
        color: #c43d4b;
    }

    .status-badge.pending[b-b6j4yxvzdi] {
        background: #fff5e8;
        color: #b56719;
    }

.type-badge[b-b6j4yxvzdi] {
    border: 1px solid #e2e6ed;
    background: #f8f9fb;
    color: #657083;
}

.loading-state[b-b6j4yxvzdi],
.empty-state[b-b6j4yxvzdi],
.state-panel[b-b6j4yxvzdi] {
    display: grid;
    min-height: 230px;
    place-items: center;
    align-content: center;
    gap: 10px;
    padding: 30px;
    color: var(--muted);
    font-size: 12px;
    text-align: center;
}

    .empty-state svg[b-b6j4yxvzdi] {
        width: 34px;
        height: 34px;
        fill: none;
        stroke: #a5adba;
        stroke-width: 1.8;
    }

    .empty-state strong[b-b6j4yxvzdi] {
        color: #3f4859;
        font-size: 13px;
    }

    .empty-state span[b-b6j4yxvzdi] {
        color: var(--muted);
        font-size: 11px;
    }

.spinner[b-b6j4yxvzdi],
.button-spinner[b-b6j4yxvzdi] {
    border: 2px solid #e3e7ee;
    border-top-color: var(--primary);
    border-radius: 50%;
    animation: shared-spin-b-b6j4yxvzdi .72s linear infinite;
}

.spinner[b-b6j4yxvzdi] {
    width: 28px;
    height: 28px;
}

.button-spinner[b-b6j4yxvzdi] {
    width: 15px;
    height: 15px;
}

@keyframes shared-spin-b-b6j4yxvzdi {
    to {
        transform: rotate(360deg);
    }
}

.mobile-list[b-b6j4yxvzdi],
.mobile-chat-list[b-b6j4yxvzdi],
.mobile-user-list[b-b6j4yxvzdi] {
    display: none;
}

.drawer-backdrop[b-b6j4yxvzdi] {
    position: fixed;
    inset: 0;
    z-index: 950;
    background: rgba(15, 23, 42, .24);
    backdrop-filter: blur(2px);
}

.detail-drawer[b-b6j4yxvzdi],
.chat-drawer[b-b6j4yxvzdi],
.user-drawer[b-b6j4yxvzdi] {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 951;
    display: flex;
    width: min(540px, 94vw);
    height: 100dvh;
    flex-direction: column;
    border-left: 1px solid var(--line);
    background: var(--surface);
    box-shadow: -20px 0 60px rgba(15, 23, 42, .12);
    animation: drawer-in-b-b6j4yxvzdi .18s ease-out;
}

@keyframes drawer-in-b-b6j4yxvzdi {
    from {
        transform: translateX(24px);
        opacity: .7;
    }

    to {
        transform: translateX(0);
        opacity: 1;
    }
}

.detail-drawer > header[b-b6j4yxvzdi],
.drawer-header[b-b6j4yxvzdi] {
    display: flex;
    flex: 0 0 auto;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding: 22px 24px 18px;
    border-bottom: 1px solid var(--line);
}

    .detail-drawer header span[b-b6j4yxvzdi],
    .drawer-header span[b-b6j4yxvzdi] {
        color: var(--primary);
        font-size: 10px;
        font-weight: 850;
        letter-spacing: .12em;
    }

    .detail-drawer h2[b-b6j4yxvzdi],
    .drawer-header h2[b-b6j4yxvzdi] {
        margin: 7px 0 0;
        color: #172033;
        font-size: 21px;
        font-weight: 760;
        letter-spacing: -.025em;
    }

    .detail-drawer header p[b-b6j4yxvzdi],
    .drawer-header p[b-b6j4yxvzdi] {
        margin: 5px 0 0;
        color: var(--muted);
        font-size: 12px;
    }

.detail-drawer header button[b-b6j4yxvzdi],
.drawer-close[b-b6j4yxvzdi] {
    display: grid;
    width: 34px;
    height: 34px;
    flex: 0 0 auto;
    place-items: center;
    border: 1px solid var(--line);
    border-radius: 9px;
    background: var(--surface);
    color: #737c8d;
    font-size: 22px;
    cursor: pointer;
}

    .drawer-close svg[b-b6j4yxvzdi] {
        width: 17px;
        height: 17px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
    }

.drawer-content[b-b6j4yxvzdi],
.drawer-body[b-b6j4yxvzdi] {
    min-height: 0;
    flex: 1;
    overflow-y: auto;
    padding: 22px 24px;
}

.detail-drawer footer[b-b6j4yxvzdi],
.drawer-footer[b-b6j4yxvzdi] {
    display: flex;
    flex: 0 0 auto;
    justify-content: flex-end;
    gap: 8px;
    padding: 14px 24px;
    border-top: 1px solid var(--line);
    background: #fbfcfe;
}

@media (max-width: 900px) {
    .summary-grid[b-b6j4yxvzdi] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .admin-list-page[b-b6j4yxvzdi],
    .admin-chats-page[b-b6j4yxvzdi],
    .admin-users-page[b-b6j4yxvzdi] {
        padding: 20px 14px 30px;
    }

    .page-header[b-b6j4yxvzdi] {
        align-items: stretch;
        flex-direction: column;
        margin-bottom: 18px;
    }

    .refresh-button[b-b6j4yxvzdi] {
        width: 100%;
    }

    .summary-grid[b-b6j4yxvzdi] {
        gap: 9px;
    }

    .summary-card[b-b6j4yxvzdi] {
        min-height: 78px;
        padding: 14px;
    }

        .summary-card strong[b-b6j4yxvzdi] {
            font-size: 20px;
        }

    .toolbar[b-b6j4yxvzdi],
    .panel-toolbar[b-b6j4yxvzdi] {
        align-items: stretch;
        flex-direction: column;
    }

    .search-box[b-b6j4yxvzdi] {
        width: 100%;
        max-width: none;
    }

    .filter-group[b-b6j4yxvzdi] {
        width: 100%;
    }

    .filter-button[b-b6j4yxvzdi] {
        flex: 1;
    }

    .toolbar select[b-b6j4yxvzdi],
    .sort-select[b-b6j4yxvzdi],
    .panel-toolbar select[b-b6j4yxvzdi] {
        width: 100%;
    }

    .result-header[b-b6j4yxvzdi] {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
        padding: 12px 14px;
    }

        .result-header span[b-b6j4yxvzdi] {
            display: block;
            margin: 3px 0 0;
        }

    .desktop-table[b-b6j4yxvzdi] {
        display: none;
    }

    .mobile-list[b-b6j4yxvzdi],
    .mobile-chat-list[b-b6j4yxvzdi],
    .mobile-user-list[b-b6j4yxvzdi] {
        display: grid;
        gap: 10px;
        padding: 10px;
        background: #f8fafc;
    }

    .detail-drawer[b-b6j4yxvzdi],
    .chat-drawer[b-b6j4yxvzdi],
    .user-drawer[b-b6j4yxvzdi] {
        width: 100%;
    }
}

@media (max-width: 430px) {
    .summary-grid[b-b6j4yxvzdi] {
        grid-template-columns: 1fr;
    }
}

.chat-title-button[b-b6j4yxvzdi] {
    display: flex;
    max-width: 330px;
    align-items: center;
    gap: 10px;
    padding: 0;
    border: 0;
    background: transparent;
    text-align: left;
    cursor: pointer;
}

.chat-title-icon[b-b6j4yxvzdi] {
    display: grid;
    width: 32px;
    height: 32px;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 9px;
    background: #eef3ff;
    color: #315efb;
}

    .chat-title-icon svg[b-b6j4yxvzdi] {
        width: 16px;
        height: 16px;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.9;
    }

.chat-title-copy[b-b6j4yxvzdi],
.user-cell > div:last-child[b-b6j4yxvzdi] {
    min-width: 0;
}

    .chat-title-copy strong[b-b6j4yxvzdi],
    .user-cell strong[b-b6j4yxvzdi] {
        display: block;
        overflow: hidden;
        color: #293246;
        font-size: 12px;
        font-weight: 750;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .chat-title-copy span[b-b6j4yxvzdi],
    .user-cell span[b-b6j4yxvzdi] {
        display: block;
        margin-top: 4px;
        overflow: hidden;
        color: #9aa3b2;
        font-size: 10px;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

.user-cell[b-b6j4yxvzdi] {
    display: flex;
    max-width: 280px;
    align-items: center;
    gap: 9px;
}

.user-avatar[b-b6j4yxvzdi] {
    display: grid;
    width: 30px;
    height: 30px;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 9px;
    background: #f1f3f7;
    color: #626d80;
    font-size: 10px;
    font-weight: 850;
}

.message-count[b-b6j4yxvzdi] {
    display: inline-grid;
    min-width: 30px;
    height: 25px;
    place-items: center;
    padding: 0 7px;
    border-radius: 7px;
    background: #f1f3f7;
    color: #596477;
    font-size: 10px;
    font-weight: 800;
}

.deleted-row[b-b6j4yxvzdi] {
    opacity: .72;
}

.row-actions[b-b6j4yxvzdi] {
    display: flex;
    justify-content: flex-end;
    gap: 6px;
}

.icon-action[b-b6j4yxvzdi] {
    display: grid;
    width: 31px;
    height: 31px;
    place-items: center;
    border: 1px solid #e0e5ec;
    border-radius: 8px;
    background: #fff;
    color: #667085;
    cursor: pointer;
}

    .icon-action:hover:not(:disabled)[b-b6j4yxvzdi] {
        background: #f8f9fb;
    }

    .icon-action.restore[b-b6j4yxvzdi] {
        color: #16815b;
    }

    .icon-action.delete[b-b6j4yxvzdi],
    .icon-action.permanent-delete[b-b6j4yxvzdi] {
        color: #bd3445;
    }

    .icon-action svg[b-b6j4yxvzdi] {
        width: 15px;
        height: 15px;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.9;
    }

    .icon-action:disabled[b-b6j4yxvzdi] {
        opacity: .5;
    }

.mobile-chat-card[b-b6j4yxvzdi] {
    overflow: hidden;
    border: 1px solid #e4e8ef;
    border-radius: 12px;
    background: #fff;
}

    .mobile-chat-card.deleted[b-b6j4yxvzdi] {
        opacity: .76;
    }

.mobile-chat-main[b-b6j4yxvzdi] {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px;
    border: 0;
    background: transparent;
    text-align: left;
}

.mobile-chat-title[b-b6j4yxvzdi] {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 10px;
}

    .mobile-chat-title > div:last-child[b-b6j4yxvzdi] {
        min-width: 0;
    }

    .mobile-chat-title strong[b-b6j4yxvzdi],
    .mobile-chat-title span[b-b6j4yxvzdi] {
        display: block;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .mobile-chat-title strong[b-b6j4yxvzdi] {
        color: #2b3447;
        font-size: 12px;
    }

    .mobile-chat-title span[b-b6j4yxvzdi] {
        margin-top: 4px;
        color: #8a93a3;
        font-size: 10px;
    }

.mobile-open-arrow[b-b6j4yxvzdi] {
    color: #9aa3b2;
    font-size: 20px;
}

.mobile-chat-meta[b-b6j4yxvzdi] {
    display: flex;
    flex-wrap: wrap;
    gap: 7px 12px;
    padding: 0 14px 12px;
    color: #7e8797;
    font-size: 10px;
}

.mobile-chat-actions[b-b6j4yxvzdi] {
    display: flex;
    gap: 7px;
    padding: 10px;
    border-top: 1px solid #edf0f4;
    background: #fafbfc;
}

.mobile-action-button[b-b6j4yxvzdi] {
    min-height: 34px;
    flex: 1;
    border: 1px solid #dfe4eb;
    border-radius: 8px;
    background: #fff;
    color: #566174;
    font-size: 10px;
    font-weight: 750;
}

    .mobile-action-button.restore[b-b6j4yxvzdi] {
        color: #16815b;
    }

    .mobile-action-button.delete[b-b6j4yxvzdi],
    .mobile-action-button.permanent-delete[b-b6j4yxvzdi] {
        color: #b72f40;
    }

.drawer-session-meta[b-b6j4yxvzdi] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    flex: 0 0 auto;
    border-bottom: 1px solid #e7eaf0;
    background: #fafbfc;
}

    .drawer-session-meta > div[b-b6j4yxvzdi] {
        padding: 13px 14px;
        border-right: 1px solid #e7eaf0;
    }

        .drawer-session-meta > div:last-child[b-b6j4yxvzdi] {
            border-right: 0;
        }

    .drawer-session-meta span[b-b6j4yxvzdi] {
        display: block;
        color: #919aaa;
        font-size: 9px;
    }

    .drawer-session-meta strong[b-b6j4yxvzdi] {
        display: block;
        margin-top: 4px;
        overflow: hidden;
        color: #414b5d;
        font-size: 10px;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

.message-list[b-b6j4yxvzdi] {
    display: grid;
    gap: 18px;
}

.chat-message[b-b6j4yxvzdi] {
    display: grid;
    grid-template-columns: 30px minmax(0, 1fr);
    gap: 10px;
}

.message-avatar[b-b6j4yxvzdi] {
    display: grid;
    width: 30px;
    height: 30px;
    place-items: center;
    border-radius: 9px;
    background: #eef3ff;
    color: #315efb;
    font-size: 9px;
    font-weight: 850;
}

.chat-message.user .message-avatar[b-b6j4yxvzdi] {
    background: #f0f2f5;
    color: #5f697b;
}

.message-content[b-b6j4yxvzdi] {
    min-width: 0;
}

.message-header[b-b6j4yxvzdi] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 6px;
}

    .message-header strong[b-b6j4yxvzdi] {
        color: #30394c;
        font-size: 11px;
    }

    .message-header time[b-b6j4yxvzdi] {
        color: #9aa3b2;
        font-size: 9px;
    }

.message-text[b-b6j4yxvzdi] {
    padding: 11px 12px;
    border: 1px solid #e5e9ef;
    border-radius: 10px;
    background: #fafbfc;
    color: #4b5567;
    font-size: 11px;
    line-height: 1.65;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}

.chat-message.user .message-text[b-b6j4yxvzdi] {
    border-color: #dce4ff;
    background: #f7f9ff;
}

.message-attachments[b-b6j4yxvzdi],
.message-confidence[b-b6j4yxvzdi] {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-top: 7px;
    color: #788293;
    font-size: 9px;
}

    .message-attachments svg[b-b6j4yxvzdi] {
        width: 13px;
        height: 13px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
    }

.drawer-action[b-b6j4yxvzdi] {
    min-height: 36px;
    padding: 0 12px;
    border: 1px solid #dfe4eb;
    border-radius: 8px;
    background: #fff;
    color: #566174;
    font-size: 10px;
    font-weight: 750;
}

    .drawer-action.restore[b-b6j4yxvzdi] {
        color: #16815b;
    }

    .drawer-action.delete[b-b6j4yxvzdi],
    .drawer-action.permanent-delete[b-b6j4yxvzdi] {
        color: #b72f40;
    }
/* /Components/Pages/Admin/AdminDocuments.razor.rz.scp.css */
:host[b-cnpu69xlwk] {
    display: block;
    min-width: 0;
}

.admin-list-page[b-cnpu69xlwk],
.admin-chats-page[b-cnpu69xlwk],
.admin-users-page[b-cnpu69xlwk] {
    --page-bg: #f5f7fb;
    --surface: #ffffff;
    --surface-muted: #f8fafc;
    --line: #e6eaf0;
    --line-strong: #d8dee8;
    --text: #172033;
    --muted: #70798a;
    --soft: #9aa3b2;
    --primary: #315efb;
    --primary-hover: #244bd2;
    --danger: #c43d4b;
    --success: #16815b;
    min-height: 100%;
    padding: 30px 32px 44px;
    background: var(--page-bg);
    color: var(--text);
}

.page-header[b-cnpu69xlwk] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 24px;
}

    .page-header > div[b-cnpu69xlwk],
    .page-header-copy[b-cnpu69xlwk] {
        min-width: 0;
    }

.back-link[b-cnpu69xlwk] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 13px;
    color: #657083;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
}

    .back-link:hover[b-cnpu69xlwk] {
        color: var(--primary);
    }

    .back-link svg[b-cnpu69xlwk] {
        width: 16px;
        height: 16px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
    }

.eyebrow[b-cnpu69xlwk],
.page-eyebrow[b-cnpu69xlwk],
.drawer-eyebrow[b-cnpu69xlwk] {
    display: block;
    margin-bottom: 7px;
    color: var(--primary);
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .15em;
}

.page-header h1[b-cnpu69xlwk],
.page-header-copy h1[b-cnpu69xlwk] {
    margin: 0;
    color: #111827;
    font-size: clamp(27px, 3vw, 36px);
    font-weight: 780;
    line-height: 1.15;
    letter-spacing: -.035em;
}

.page-header p[b-cnpu69xlwk],
.page-header-copy p[b-cnpu69xlwk] {
    max-width: 720px;
    margin: 9px 0 0;
    color: var(--muted);
    font-size: 13px;
    line-height: 1.65;
}

.refresh-button[b-cnpu69xlwk] {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 16px;
    border: 1px solid var(--line-strong);
    border-radius: 11px;
    background: var(--surface);
    color: #394257;
    font-size: 13px;
    font-weight: 750;
    cursor: pointer;
}

    .refresh-button:hover:not(:disabled)[b-cnpu69xlwk] {
        border-color: #bcc5d3;
        background: #fbfcfe;
    }

    .refresh-button:disabled[b-cnpu69xlwk] {
        opacity: .55;
        cursor: default;
    }

    .refresh-button svg[b-cnpu69xlwk] {
        width: 17px;
        height: 17px;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.9;
    }

.notice[b-cnpu69xlwk],
.message[b-cnpu69xlwk] {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 16px;
    padding: 12px 14px;
    border: 1px solid;
    border-radius: 10px;
    font-size: 12px;
}

    .notice.success[b-cnpu69xlwk],
    .message.success[b-cnpu69xlwk] {
        border-color: #bfe8d3;
        background: #f3fbf7;
        color: #116c4c;
    }

    .notice.error[b-cnpu69xlwk],
    .message.error[b-cnpu69xlwk] {
        border-color: #f1c5ca;
        background: #fff7f7;
        color: #b42335;
    }

    .message svg[b-cnpu69xlwk] {
        width: 17px;
        height: 17px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
    }

.summary-grid[b-cnpu69xlwk] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 16px;
}

.summary-card[b-cnpu69xlwk] {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 13px;
    min-height: 88px;
    padding: 17px 18px;
    border: 1px solid var(--line);
    border-radius: 13px;
    background: var(--surface);
    box-shadow: 0 1px 2px rgba(15, 23, 42, .025);
}

    .summary-card > div:last-child[b-cnpu69xlwk] {
        min-width: 0;
    }

    .summary-card span[b-cnpu69xlwk] {
        display: block;
        color: var(--muted);
        font-size: 11px;
        font-weight: 650;
    }

    .summary-card strong[b-cnpu69xlwk] {
        display: block;
        margin-top: 6px;
        color: #172033;
        font-size: 23px;
        font-weight: 760;
        letter-spacing: -.025em;
    }

.summary-icon[b-cnpu69xlwk] {
    display: grid;
    width: 38px;
    height: 38px;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 10px;
    background: #f0f3f8;
    color: #667085;
}

    .summary-icon.active[b-cnpu69xlwk],
    .summary-icon.users[b-cnpu69xlwk] {
        background: #eef3ff;
        color: #315efb;
    }

    .summary-icon.deleted[b-cnpu69xlwk] {
        background: #fff0f1;
        color: #c43d4b;
    }

    .summary-icon.messages[b-cnpu69xlwk] {
        background: #edf9f3;
        color: #18815b;
    }

    .summary-icon svg[b-cnpu69xlwk] {
        width: 18px;
        height: 18px;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.9;
    }

.management-panel[b-cnpu69xlwk],
.chat-management-panel[b-cnpu69xlwk],
.users-management-panel[b-cnpu69xlwk] {
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: var(--surface);
    box-shadow: 0 1px 2px rgba(15, 23, 42, .025);
}

.toolbar[b-cnpu69xlwk],
.panel-toolbar[b-cnpu69xlwk] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px;
    border-bottom: 1px solid var(--line);
    background: #fbfcfe;
}

.search-box[b-cnpu69xlwk] {
    position: relative;
    display: flex;
    min-width: 220px;
    max-width: 540px;
    flex: 1;
    align-items: center;
}

    .search-box > svg[b-cnpu69xlwk] {
        position: absolute;
        left: 12px;
        width: 17px;
        height: 17px;
        pointer-events: none;
        fill: none;
        stroke: #99a2b2;
        stroke-width: 2;
    }

    .search-box input[b-cnpu69xlwk] {
        width: 100%;
        min-height: 39px;
        padding: 0 40px 0 37px;
        border: 1px solid var(--line-strong);
        border-radius: 9px;
        outline: 0;
        background: var(--surface);
        color: var(--text);
        font-size: 12px;
        transition: border-color .15s ease, box-shadow .15s ease;
    }

        .search-box input:focus[b-cnpu69xlwk] {
            border-color: #96aafb;
            box-shadow: 0 0 0 3px rgba(49, 94, 251, .09);
        }

    .search-box button[b-cnpu69xlwk],
    .clear-search[b-cnpu69xlwk] {
        position: absolute;
        right: 7px;
        display: grid;
        width: 27px;
        height: 27px;
        place-items: center;
        border: 0;
        border-radius: 7px;
        background: transparent;
        color: #8b94a4;
        font-size: 18px;
        cursor: pointer;
    }

        .search-box button:hover[b-cnpu69xlwk],
        .clear-search:hover[b-cnpu69xlwk] {
            background: #f0f2f6;
            color: #4f596b;
        }

        .search-box button svg[b-cnpu69xlwk] {
            width: 15px;
            height: 15px;
            fill: none;
            stroke: currentColor;
            stroke-width: 2;
        }

.toolbar select[b-cnpu69xlwk],
.sort-select[b-cnpu69xlwk],
.panel-toolbar select[b-cnpu69xlwk] {
    min-height: 39px;
    padding: 0 34px 0 12px;
    border: 1px solid var(--line-strong);
    border-radius: 9px;
    outline: 0;
    background: var(--surface);
    color: #414b5d;
    font-size: 12px;
    font-weight: 650;
}

.filter-group[b-cnpu69xlwk] {
    display: inline-flex;
    padding: 3px;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: #f1f3f7;
}

.filter-button[b-cnpu69xlwk] {
    min-height: 31px;
    padding: 0 12px;
    border: 0;
    border-radius: 7px;
    background: transparent;
    color: #727b8b;
    font-size: 11px;
    font-weight: 750;
    cursor: pointer;
}

    .filter-button.active[b-cnpu69xlwk] {
        background: var(--surface);
        color: #263044;
        box-shadow: 0 1px 3px rgba(15, 23, 42, .08);
    }

.result-header[b-cnpu69xlwk] {
    display: flex;
    min-height: 54px;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 0 16px;
    border-bottom: 1px solid var(--line);
}

    .result-header > div[b-cnpu69xlwk] {
        min-width: 0;
    }

    .result-header strong[b-cnpu69xlwk] {
        color: #293246;
        font-size: 12px;
        font-weight: 780;
    }

    .result-header span[b-cnpu69xlwk] {
        margin-left: 8px;
        color: var(--soft);
        font-size: 11px;
    }

.desktop-table[b-cnpu69xlwk] {
    overflow-x: auto;
}

    .desktop-table table[b-cnpu69xlwk] {
        width: 100%;
        min-width: 880px;
        border-collapse: collapse;
    }

    .desktop-table th[b-cnpu69xlwk] {
        padding: 11px 14px;
        border-bottom: 1px solid var(--line);
        background: #fafbfc;
        color: #818a9a;
        font-size: 10px;
        font-weight: 800;
        letter-spacing: .035em;
        text-align: left;
        white-space: nowrap;
    }

    .desktop-table td[b-cnpu69xlwk] {
        padding: 13px 14px;
        border-bottom: 1px solid #edf0f4;
        color: #4b5567;
        font-size: 12px;
        vertical-align: middle;
    }

    .desktop-table tbody tr:last-child td[b-cnpu69xlwk] {
        border-bottom: 0;
    }

    .desktop-table tbody tr:hover td[b-cnpu69xlwk] {
        background: #fcfdff;
    }

.date-value[b-cnpu69xlwk] {
    color: #7a8393;
    font-size: 11px;
    white-space: nowrap;
}

.status-badge[b-cnpu69xlwk],
.type-badge[b-cnpu69xlwk],
.role-badge[b-cnpu69xlwk] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 8px;
    border-radius: 7px;
    font-size: 10px;
    font-weight: 800;
    white-space: nowrap;
}

    .status-badge i[b-cnpu69xlwk] {
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background: currentColor;
    }

    .status-badge.active[b-cnpu69xlwk],
    .status-badge.ready[b-cnpu69xlwk] {
        background: #edf9f3;
        color: #16815b;
    }

    .status-badge.deleted[b-cnpu69xlwk] {
        background: #fff0f1;
        color: #c43d4b;
    }

    .status-badge.pending[b-cnpu69xlwk] {
        background: #fff5e8;
        color: #b56719;
    }

.type-badge[b-cnpu69xlwk] {
    border: 1px solid #e2e6ed;
    background: #f8f9fb;
    color: #657083;
}

.loading-state[b-cnpu69xlwk],
.empty-state[b-cnpu69xlwk],
.state-panel[b-cnpu69xlwk] {
    display: grid;
    min-height: 230px;
    place-items: center;
    align-content: center;
    gap: 10px;
    padding: 30px;
    color: var(--muted);
    font-size: 12px;
    text-align: center;
}

    .empty-state svg[b-cnpu69xlwk] {
        width: 34px;
        height: 34px;
        fill: none;
        stroke: #a5adba;
        stroke-width: 1.8;
    }

    .empty-state strong[b-cnpu69xlwk] {
        color: #3f4859;
        font-size: 13px;
    }

    .empty-state span[b-cnpu69xlwk] {
        color: var(--muted);
        font-size: 11px;
    }

.spinner[b-cnpu69xlwk],
.button-spinner[b-cnpu69xlwk] {
    border: 2px solid #e3e7ee;
    border-top-color: var(--primary);
    border-radius: 50%;
    animation: shared-spin-b-cnpu69xlwk .72s linear infinite;
}

.spinner[b-cnpu69xlwk] {
    width: 28px;
    height: 28px;
}

.button-spinner[b-cnpu69xlwk] {
    width: 15px;
    height: 15px;
}

@keyframes shared-spin-b-cnpu69xlwk {
    to {
        transform: rotate(360deg);
    }
}

.mobile-list[b-cnpu69xlwk],
.mobile-chat-list[b-cnpu69xlwk],
.mobile-user-list[b-cnpu69xlwk] {
    display: none;
}

.drawer-backdrop[b-cnpu69xlwk] {
    position: fixed;
    inset: 0;
    z-index: 950;
    background: rgba(15, 23, 42, .24);
    backdrop-filter: blur(2px);
}

.detail-drawer[b-cnpu69xlwk],
.chat-drawer[b-cnpu69xlwk],
.user-drawer[b-cnpu69xlwk] {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 951;
    display: flex;
    width: min(540px, 94vw);
    height: 100dvh;
    flex-direction: column;
    border-left: 1px solid var(--line);
    background: var(--surface);
    box-shadow: -20px 0 60px rgba(15, 23, 42, .12);
    animation: drawer-in-b-cnpu69xlwk .18s ease-out;
}

@keyframes drawer-in-b-cnpu69xlwk {
    from {
        transform: translateX(24px);
        opacity: .7;
    }

    to {
        transform: translateX(0);
        opacity: 1;
    }
}

.detail-drawer > header[b-cnpu69xlwk],
.drawer-header[b-cnpu69xlwk] {
    display: flex;
    flex: 0 0 auto;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding: 22px 24px 18px;
    border-bottom: 1px solid var(--line);
}

    .detail-drawer header span[b-cnpu69xlwk],
    .drawer-header span[b-cnpu69xlwk] {
        color: var(--primary);
        font-size: 10px;
        font-weight: 850;
        letter-spacing: .12em;
    }

    .detail-drawer h2[b-cnpu69xlwk],
    .drawer-header h2[b-cnpu69xlwk] {
        margin: 7px 0 0;
        color: #172033;
        font-size: 21px;
        font-weight: 760;
        letter-spacing: -.025em;
    }

    .detail-drawer header p[b-cnpu69xlwk],
    .drawer-header p[b-cnpu69xlwk] {
        margin: 5px 0 0;
        color: var(--muted);
        font-size: 12px;
    }

.detail-drawer header button[b-cnpu69xlwk],
.drawer-close[b-cnpu69xlwk] {
    display: grid;
    width: 34px;
    height: 34px;
    flex: 0 0 auto;
    place-items: center;
    border: 1px solid var(--line);
    border-radius: 9px;
    background: var(--surface);
    color: #737c8d;
    font-size: 22px;
    cursor: pointer;
}

    .drawer-close svg[b-cnpu69xlwk] {
        width: 17px;
        height: 17px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
    }

.drawer-content[b-cnpu69xlwk],
.drawer-body[b-cnpu69xlwk] {
    min-height: 0;
    flex: 1;
    overflow-y: auto;
    padding: 22px 24px;
}

.detail-drawer footer[b-cnpu69xlwk],
.drawer-footer[b-cnpu69xlwk] {
    display: flex;
    flex: 0 0 auto;
    justify-content: flex-end;
    gap: 8px;
    padding: 14px 24px;
    border-top: 1px solid var(--line);
    background: #fbfcfe;
}

@media (max-width: 900px) {
    .summary-grid[b-cnpu69xlwk] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .admin-list-page[b-cnpu69xlwk],
    .admin-chats-page[b-cnpu69xlwk],
    .admin-users-page[b-cnpu69xlwk] {
        padding: 20px 14px 30px;
    }

    .page-header[b-cnpu69xlwk] {
        align-items: stretch;
        flex-direction: column;
        margin-bottom: 18px;
    }

    .refresh-button[b-cnpu69xlwk] {
        width: 100%;
    }

    .summary-grid[b-cnpu69xlwk] {
        gap: 9px;
    }

    .summary-card[b-cnpu69xlwk] {
        min-height: 78px;
        padding: 14px;
    }

        .summary-card strong[b-cnpu69xlwk] {
            font-size: 20px;
        }

    .toolbar[b-cnpu69xlwk],
    .panel-toolbar[b-cnpu69xlwk] {
        align-items: stretch;
        flex-direction: column;
    }

    .search-box[b-cnpu69xlwk] {
        width: 100%;
        max-width: none;
    }

    .filter-group[b-cnpu69xlwk] {
        width: 100%;
    }

    .filter-button[b-cnpu69xlwk] {
        flex: 1;
    }

    .toolbar select[b-cnpu69xlwk],
    .sort-select[b-cnpu69xlwk],
    .panel-toolbar select[b-cnpu69xlwk] {
        width: 100%;
    }

    .result-header[b-cnpu69xlwk] {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
        padding: 12px 14px;
    }

        .result-header span[b-cnpu69xlwk] {
            display: block;
            margin: 3px 0 0;
        }

    .desktop-table[b-cnpu69xlwk] {
        display: none;
    }

    .mobile-list[b-cnpu69xlwk],
    .mobile-chat-list[b-cnpu69xlwk],
    .mobile-user-list[b-cnpu69xlwk] {
        display: grid;
        gap: 10px;
        padding: 10px;
        background: #f8fafc;
    }

    .detail-drawer[b-cnpu69xlwk],
    .chat-drawer[b-cnpu69xlwk],
    .user-drawer[b-cnpu69xlwk] {
        width: 100%;
    }
}

@media (max-width: 430px) {
    .summary-grid[b-cnpu69xlwk] {
        grid-template-columns: 1fr;
    }
}

.title-button[b-cnpu69xlwk] {
    display: grid;
    max-width: 390px;
    gap: 4px;
    padding: 0;
    border: 0;
    background: transparent;
    color: inherit;
    text-align: left;
    cursor: pointer;
}

    .title-button strong[b-cnpu69xlwk] {
        overflow: hidden;
        color: #293246;
        font-size: 12px;
        font-weight: 750;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .title-button span[b-cnpu69xlwk] {
        overflow: hidden;
        color: #98a1b0;
        font-size: 10px;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

.delete-button[b-cnpu69xlwk],
.drawer-action[b-cnpu69xlwk] {
    min-height: 34px;
    padding: 0 11px;
    border: 1px solid #ecc9cd;
    border-radius: 8px;
    background: #fffafa;
    color: #b52f40;
    font-size: 11px;
    font-weight: 750;
    cursor: pointer;
}

    .delete-button:hover:not(:disabled)[b-cnpu69xlwk],
    .drawer-action:hover:not(:disabled)[b-cnpu69xlwk] {
        border-color: #df9da5;
        background: #fff3f4;
    }

    .delete-button:disabled[b-cnpu69xlwk],
    .drawer-action:disabled[b-cnpu69xlwk] {
        opacity: .5;
    }

.mobile-card[b-cnpu69xlwk] {
    padding: 14px;
    border: 1px solid #e4e8ef;
    border-radius: 12px;
    background: #fff;
}

.mobile-main[b-cnpu69xlwk] {
    display: grid;
    width: 100%;
    gap: 5px;
    padding: 0;
    border: 0;
    background: transparent;
    text-align: left;
}

    .mobile-main strong[b-cnpu69xlwk] {
        color: #273044;
        font-size: 13px;
    }

    .mobile-main span[b-cnpu69xlwk] {
        color: #838c9c;
        font-size: 11px;
    }

.mobile-meta[b-cnpu69xlwk] {
    display: flex;
    flex-wrap: wrap;
    gap: 7px 12px;
    margin: 11px 0 13px;
    color: #7d8695;
    font-size: 10px;
}

.mobile-card .delete-button[b-cnpu69xlwk] {
    width: 100%;
}

.drawer-content dl[b-cnpu69xlwk] {
    display: grid;
    grid-template-columns: 110px minmax(0, 1fr);
    gap: 0;
    margin: 0;
    border: 1px solid #e6eaf0;
    border-radius: 10px;
    overflow: hidden;
}

.drawer-content dt[b-cnpu69xlwk],
.drawer-content dd[b-cnpu69xlwk] {
    margin: 0;
    padding: 12px 13px;
    border-bottom: 1px solid #edf0f4;
    font-size: 11px;
}

.drawer-content dt[b-cnpu69xlwk] {
    background: #fafbfc;
    color: #778091;
    font-weight: 750;
}

.drawer-content dd[b-cnpu69xlwk] {
    min-width: 0;
    overflow-wrap: anywhere;
    color: #374154;
}

    .drawer-content dt:last-of-type[b-cnpu69xlwk],
    .drawer-content dd:last-of-type[b-cnpu69xlwk] {
        border-bottom: 0;
    }

.preview-section[b-cnpu69xlwk] {
    margin-top: 18px;
    padding: 16px;
    border: 1px solid #e6eaf0;
    border-radius: 10px;
    background: #fafbfc;
}

    .preview-section h3[b-cnpu69xlwk] {
        margin: 0 0 9px;
        color: #3b4557;
        font-size: 12px;
    }

    .preview-section p[b-cnpu69xlwk] {
        margin: 0;
        color: #667085;
        font-size: 11px;
        line-height: 1.7;
        white-space: pre-wrap;
    }
/* /Components/Pages/Admin/AdminUsers.razor.rz.scp.css */
:host[b-dh7wusfj27] {
    display: block;
    min-width: 0;
}

.admin-list-page[b-dh7wusfj27],
.admin-chats-page[b-dh7wusfj27],
.admin-users-page[b-dh7wusfj27] {
    --page-bg: #f5f7fb;
    --surface: #ffffff;
    --surface-muted: #f8fafc;
    --line: #e6eaf0;
    --line-strong: #d8dee8;
    --text: #172033;
    --muted: #70798a;
    --soft: #9aa3b2;
    --primary: #315efb;
    --primary-hover: #244bd2;
    --danger: #c43d4b;
    --success: #16815b;
    min-height: 100%;
    padding: 30px 32px 44px;
    background: var(--page-bg);
    color: var(--text);
}

.page-header[b-dh7wusfj27] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 24px;
}

    .page-header > div[b-dh7wusfj27],
    .page-header-copy[b-dh7wusfj27] {
        min-width: 0;
    }

.back-link[b-dh7wusfj27] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 13px;
    color: #657083;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
}

    .back-link:hover[b-dh7wusfj27] {
        color: var(--primary);
    }

    .back-link svg[b-dh7wusfj27] {
        width: 16px;
        height: 16px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
    }

.eyebrow[b-dh7wusfj27],
.page-eyebrow[b-dh7wusfj27],
.drawer-eyebrow[b-dh7wusfj27] {
    display: block;
    margin-bottom: 7px;
    color: var(--primary);
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .15em;
}

.page-header h1[b-dh7wusfj27],
.page-header-copy h1[b-dh7wusfj27] {
    margin: 0;
    color: #111827;
    font-size: clamp(27px, 3vw, 36px);
    font-weight: 780;
    line-height: 1.15;
    letter-spacing: -.035em;
}

.page-header p[b-dh7wusfj27],
.page-header-copy p[b-dh7wusfj27] {
    max-width: 720px;
    margin: 9px 0 0;
    color: var(--muted);
    font-size: 13px;
    line-height: 1.65;
}

.refresh-button[b-dh7wusfj27] {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 16px;
    border: 1px solid var(--line-strong);
    border-radius: 11px;
    background: var(--surface);
    color: #394257;
    font-size: 13px;
    font-weight: 750;
    cursor: pointer;
}

    .refresh-button:hover:not(:disabled)[b-dh7wusfj27] {
        border-color: #bcc5d3;
        background: #fbfcfe;
    }

    .refresh-button:disabled[b-dh7wusfj27] {
        opacity: .55;
        cursor: default;
    }

    .refresh-button svg[b-dh7wusfj27] {
        width: 17px;
        height: 17px;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.9;
    }

.notice[b-dh7wusfj27],
.message[b-dh7wusfj27] {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 16px;
    padding: 12px 14px;
    border: 1px solid;
    border-radius: 10px;
    font-size: 12px;
}

    .notice.success[b-dh7wusfj27],
    .message.success[b-dh7wusfj27] {
        border-color: #bfe8d3;
        background: #f3fbf7;
        color: #116c4c;
    }

    .notice.error[b-dh7wusfj27],
    .message.error[b-dh7wusfj27] {
        border-color: #f1c5ca;
        background: #fff7f7;
        color: #b42335;
    }

    .message svg[b-dh7wusfj27] {
        width: 17px;
        height: 17px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
    }

.summary-grid[b-dh7wusfj27] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 16px;
}

.summary-card[b-dh7wusfj27] {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 13px;
    min-height: 88px;
    padding: 17px 18px;
    border: 1px solid var(--line);
    border-radius: 13px;
    background: var(--surface);
    box-shadow: 0 1px 2px rgba(15, 23, 42, .025);
}

    .summary-card > div:last-child[b-dh7wusfj27] {
        min-width: 0;
    }

    .summary-card span[b-dh7wusfj27] {
        display: block;
        color: var(--muted);
        font-size: 11px;
        font-weight: 650;
    }

    .summary-card strong[b-dh7wusfj27] {
        display: block;
        margin-top: 6px;
        color: #172033;
        font-size: 23px;
        font-weight: 760;
        letter-spacing: -.025em;
    }

.summary-icon[b-dh7wusfj27] {
    display: grid;
    width: 38px;
    height: 38px;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 10px;
    background: #f0f3f8;
    color: #667085;
}

    .summary-icon.active[b-dh7wusfj27],
    .summary-icon.users[b-dh7wusfj27] {
        background: #eef3ff;
        color: #315efb;
    }

    .summary-icon.deleted[b-dh7wusfj27] {
        background: #fff0f1;
        color: #c43d4b;
    }

    .summary-icon.messages[b-dh7wusfj27] {
        background: #edf9f3;
        color: #18815b;
    }

    .summary-icon svg[b-dh7wusfj27] {
        width: 18px;
        height: 18px;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.9;
    }

.management-panel[b-dh7wusfj27],
.chat-management-panel[b-dh7wusfj27],
.users-management-panel[b-dh7wusfj27] {
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: var(--surface);
    box-shadow: 0 1px 2px rgba(15, 23, 42, .025);
}

.toolbar[b-dh7wusfj27],
.panel-toolbar[b-dh7wusfj27] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px;
    border-bottom: 1px solid var(--line);
    background: #fbfcfe;
}

.search-box[b-dh7wusfj27] {
    position: relative;
    display: flex;
    min-width: 220px;
    max-width: 540px;
    flex: 1;
    align-items: center;
}

    .search-box > svg[b-dh7wusfj27] {
        position: absolute;
        left: 12px;
        width: 17px;
        height: 17px;
        pointer-events: none;
        fill: none;
        stroke: #99a2b2;
        stroke-width: 2;
    }

    .search-box input[b-dh7wusfj27] {
        width: 100%;
        min-height: 39px;
        padding: 0 40px 0 37px;
        border: 1px solid var(--line-strong);
        border-radius: 9px;
        outline: 0;
        background: var(--surface);
        color: var(--text);
        font-size: 12px;
        transition: border-color .15s ease, box-shadow .15s ease;
    }

        .search-box input:focus[b-dh7wusfj27] {
            border-color: #96aafb;
            box-shadow: 0 0 0 3px rgba(49, 94, 251, .09);
        }

    .search-box button[b-dh7wusfj27],
    .clear-search[b-dh7wusfj27] {
        position: absolute;
        right: 7px;
        display: grid;
        width: 27px;
        height: 27px;
        place-items: center;
        border: 0;
        border-radius: 7px;
        background: transparent;
        color: #8b94a4;
        font-size: 18px;
        cursor: pointer;
    }

        .search-box button:hover[b-dh7wusfj27],
        .clear-search:hover[b-dh7wusfj27] {
            background: #f0f2f6;
            color: #4f596b;
        }

        .search-box button svg[b-dh7wusfj27] {
            width: 15px;
            height: 15px;
            fill: none;
            stroke: currentColor;
            stroke-width: 2;
        }

.toolbar select[b-dh7wusfj27],
.sort-select[b-dh7wusfj27],
.panel-toolbar select[b-dh7wusfj27] {
    min-height: 39px;
    padding: 0 34px 0 12px;
    border: 1px solid var(--line-strong);
    border-radius: 9px;
    outline: 0;
    background: var(--surface);
    color: #414b5d;
    font-size: 12px;
    font-weight: 650;
}

.filter-group[b-dh7wusfj27] {
    display: inline-flex;
    padding: 3px;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: #f1f3f7;
}

.filter-button[b-dh7wusfj27] {
    min-height: 31px;
    padding: 0 12px;
    border: 0;
    border-radius: 7px;
    background: transparent;
    color: #727b8b;
    font-size: 11px;
    font-weight: 750;
    cursor: pointer;
}

    .filter-button.active[b-dh7wusfj27] {
        background: var(--surface);
        color: #263044;
        box-shadow: 0 1px 3px rgba(15, 23, 42, .08);
    }

.result-header[b-dh7wusfj27] {
    display: flex;
    min-height: 54px;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 0 16px;
    border-bottom: 1px solid var(--line);
}

    .result-header > div[b-dh7wusfj27] {
        min-width: 0;
    }

    .result-header strong[b-dh7wusfj27] {
        color: #293246;
        font-size: 12px;
        font-weight: 780;
    }

    .result-header span[b-dh7wusfj27] {
        margin-left: 8px;
        color: var(--soft);
        font-size: 11px;
    }

.desktop-table[b-dh7wusfj27] {
    overflow-x: auto;
}

    .desktop-table table[b-dh7wusfj27] {
        width: 100%;
        min-width: 880px;
        border-collapse: collapse;
    }

    .desktop-table th[b-dh7wusfj27] {
        padding: 11px 14px;
        border-bottom: 1px solid var(--line);
        background: #fafbfc;
        color: #818a9a;
        font-size: 10px;
        font-weight: 800;
        letter-spacing: .035em;
        text-align: left;
        white-space: nowrap;
    }

    .desktop-table td[b-dh7wusfj27] {
        padding: 13px 14px;
        border-bottom: 1px solid #edf0f4;
        color: #4b5567;
        font-size: 12px;
        vertical-align: middle;
    }

    .desktop-table tbody tr:last-child td[b-dh7wusfj27] {
        border-bottom: 0;
    }

    .desktop-table tbody tr:hover td[b-dh7wusfj27] {
        background: #fcfdff;
    }

.date-value[b-dh7wusfj27] {
    color: #7a8393;
    font-size: 11px;
    white-space: nowrap;
}

.status-badge[b-dh7wusfj27],
.type-badge[b-dh7wusfj27],
.role-badge[b-dh7wusfj27] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 8px;
    border-radius: 7px;
    font-size: 10px;
    font-weight: 800;
    white-space: nowrap;
}

    .status-badge i[b-dh7wusfj27] {
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background: currentColor;
    }

    .status-badge.active[b-dh7wusfj27],
    .status-badge.ready[b-dh7wusfj27] {
        background: #edf9f3;
        color: #16815b;
    }

    .status-badge.deleted[b-dh7wusfj27] {
        background: #fff0f1;
        color: #c43d4b;
    }

    .status-badge.pending[b-dh7wusfj27] {
        background: #fff5e8;
        color: #b56719;
    }

.type-badge[b-dh7wusfj27] {
    border: 1px solid #e2e6ed;
    background: #f8f9fb;
    color: #657083;
}

.loading-state[b-dh7wusfj27],
.empty-state[b-dh7wusfj27],
.state-panel[b-dh7wusfj27] {
    display: grid;
    min-height: 230px;
    place-items: center;
    align-content: center;
    gap: 10px;
    padding: 30px;
    color: var(--muted);
    font-size: 12px;
    text-align: center;
}

    .empty-state svg[b-dh7wusfj27] {
        width: 34px;
        height: 34px;
        fill: none;
        stroke: #a5adba;
        stroke-width: 1.8;
    }

    .empty-state strong[b-dh7wusfj27] {
        color: #3f4859;
        font-size: 13px;
    }

    .empty-state span[b-dh7wusfj27] {
        color: var(--muted);
        font-size: 11px;
    }

.spinner[b-dh7wusfj27],
.button-spinner[b-dh7wusfj27] {
    border: 2px solid #e3e7ee;
    border-top-color: var(--primary);
    border-radius: 50%;
    animation: shared-spin-b-dh7wusfj27 .72s linear infinite;
}

.spinner[b-dh7wusfj27] {
    width: 28px;
    height: 28px;
}

.button-spinner[b-dh7wusfj27] {
    width: 15px;
    height: 15px;
}

@keyframes shared-spin-b-dh7wusfj27 {
    to {
        transform: rotate(360deg);
    }
}

.mobile-list[b-dh7wusfj27],
.mobile-chat-list[b-dh7wusfj27],
.mobile-user-list[b-dh7wusfj27] {
    display: none;
}

.drawer-backdrop[b-dh7wusfj27] {
    position: fixed;
    inset: 0;
    z-index: 950;
    background: rgba(15, 23, 42, .24);
    backdrop-filter: blur(2px);
}

.detail-drawer[b-dh7wusfj27],
.chat-drawer[b-dh7wusfj27],
.user-drawer[b-dh7wusfj27] {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 951;
    display: flex;
    width: min(540px, 94vw);
    height: 100dvh;
    flex-direction: column;
    border-left: 1px solid var(--line);
    background: var(--surface);
    box-shadow: -20px 0 60px rgba(15, 23, 42, .12);
    animation: drawer-in-b-dh7wusfj27 .18s ease-out;
}

@keyframes drawer-in-b-dh7wusfj27 {
    from {
        transform: translateX(24px);
        opacity: .7;
    }

    to {
        transform: translateX(0);
        opacity: 1;
    }
}

.detail-drawer > header[b-dh7wusfj27],
.drawer-header[b-dh7wusfj27] {
    display: flex;
    flex: 0 0 auto;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding: 22px 24px 18px;
    border-bottom: 1px solid var(--line);
}

    .detail-drawer header span[b-dh7wusfj27],
    .drawer-header span[b-dh7wusfj27] {
        color: var(--primary);
        font-size: 10px;
        font-weight: 850;
        letter-spacing: .12em;
    }

    .detail-drawer h2[b-dh7wusfj27],
    .drawer-header h2[b-dh7wusfj27] {
        margin: 7px 0 0;
        color: #172033;
        font-size: 21px;
        font-weight: 760;
        letter-spacing: -.025em;
    }

    .detail-drawer header p[b-dh7wusfj27],
    .drawer-header p[b-dh7wusfj27] {
        margin: 5px 0 0;
        color: var(--muted);
        font-size: 12px;
    }

.detail-drawer header button[b-dh7wusfj27],
.drawer-close[b-dh7wusfj27] {
    display: grid;
    width: 34px;
    height: 34px;
    flex: 0 0 auto;
    place-items: center;
    border: 1px solid var(--line);
    border-radius: 9px;
    background: var(--surface);
    color: #737c8d;
    font-size: 22px;
    cursor: pointer;
}

    .drawer-close svg[b-dh7wusfj27] {
        width: 17px;
        height: 17px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
    }

.drawer-content[b-dh7wusfj27],
.drawer-body[b-dh7wusfj27] {
    min-height: 0;
    flex: 1;
    overflow-y: auto;
    padding: 22px 24px;
}

.detail-drawer footer[b-dh7wusfj27],
.drawer-footer[b-dh7wusfj27] {
    display: flex;
    flex: 0 0 auto;
    justify-content: flex-end;
    gap: 8px;
    padding: 14px 24px;
    border-top: 1px solid var(--line);
    background: #fbfcfe;
}

@media (max-width: 900px) {
    .summary-grid[b-dh7wusfj27] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .admin-list-page[b-dh7wusfj27],
    .admin-chats-page[b-dh7wusfj27],
    .admin-users-page[b-dh7wusfj27] {
        padding: 20px 14px 30px;
    }

    .page-header[b-dh7wusfj27] {
        align-items: stretch;
        flex-direction: column;
        margin-bottom: 18px;
    }

    .refresh-button[b-dh7wusfj27] {
        width: 100%;
    }

    .summary-grid[b-dh7wusfj27] {
        gap: 9px;
    }

    .summary-card[b-dh7wusfj27] {
        min-height: 78px;
        padding: 14px;
    }

        .summary-card strong[b-dh7wusfj27] {
            font-size: 20px;
        }

    .toolbar[b-dh7wusfj27],
    .panel-toolbar[b-dh7wusfj27] {
        align-items: stretch;
        flex-direction: column;
    }

    .search-box[b-dh7wusfj27] {
        width: 100%;
        max-width: none;
    }

    .filter-group[b-dh7wusfj27] {
        width: 100%;
    }

    .filter-button[b-dh7wusfj27] {
        flex: 1;
    }

    .toolbar select[b-dh7wusfj27],
    .sort-select[b-dh7wusfj27],
    .panel-toolbar select[b-dh7wusfj27] {
        width: 100%;
    }

    .result-header[b-dh7wusfj27] {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
        padding: 12px 14px;
    }

        .result-header span[b-dh7wusfj27] {
            display: block;
            margin: 3px 0 0;
        }

    .desktop-table[b-dh7wusfj27] {
        display: none;
    }

    .mobile-list[b-dh7wusfj27],
    .mobile-chat-list[b-dh7wusfj27],
    .mobile-user-list[b-dh7wusfj27] {
        display: grid;
        gap: 10px;
        padding: 10px;
        background: #f8fafc;
    }

    .detail-drawer[b-dh7wusfj27],
    .chat-drawer[b-dh7wusfj27],
    .user-drawer[b-dh7wusfj27] {
        width: 100%;
    }
}

@media (max-width: 430px) {
    .summary-grid[b-dh7wusfj27] {
        grid-template-columns: 1fr;
    }
}

.user-name-button[b-dh7wusfj27],
.user-title-button[b-dh7wusfj27] {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 10px;
    padding: 0;
    border: 0;
    background: transparent;
    text-align: left;
    cursor: pointer;
}

.user-avatar[b-dh7wusfj27],
.user-initial[b-dh7wusfj27] {
    display: grid;
    width: 34px;
    height: 34px;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 10px;
    background: #eef3ff;
    color: #315efb;
    font-size: 11px;
    font-weight: 850;
}

.user-name-copy[b-dh7wusfj27],
.user-copy[b-dh7wusfj27] {
    min-width: 0;
}

    .user-name-copy strong[b-dh7wusfj27],
    .user-copy strong[b-dh7wusfj27] {
        display: block;
        overflow: hidden;
        color: #293246;
        font-size: 12px;
        font-weight: 760;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .user-name-copy span[b-dh7wusfj27],
    .user-copy span[b-dh7wusfj27] {
        display: block;
        margin-top: 4px;
        overflow: hidden;
        color: #98a1b0;
        font-size: 10px;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

.role-badge.admin[b-dh7wusfj27] {
    background: #eef3ff;
    color: #315efb;
}

.role-badge.user[b-dh7wusfj27] {
    background: #f0f2f5;
    color: #687284;
}

.status-badge.active[b-dh7wusfj27],
.status-badge.enabled[b-dh7wusfj27] {
    background: #edf9f3;
    color: #16815b;
}

.status-badge.inactive[b-dh7wusfj27],
.status-badge.disabled[b-dh7wusfj27],
.status-badge.locked[b-dh7wusfj27] {
    background: #fff0f1;
    color: #c43d4b;
}

.row-actions[b-dh7wusfj27],
.user-actions[b-dh7wusfj27] {
    display: flex;
    justify-content: flex-end;
    gap: 6px;
}

.icon-action[b-dh7wusfj27],
.user-action-button[b-dh7wusfj27] {
    display: grid;
    min-width: 31px;
    height: 31px;
    place-items: center;
    padding: 0 9px;
    border: 1px solid #e0e5ec;
    border-radius: 8px;
    background: #fff;
    color: #667085;
    font-size: 10px;
    font-weight: 750;
}

    .icon-action:hover:not(:disabled)[b-dh7wusfj27],
    .user-action-button:hover:not(:disabled)[b-dh7wusfj27] {
        background: #f8f9fb;
    }

    .icon-action.danger[b-dh7wusfj27],
    .user-action-button.danger[b-dh7wusfj27] {
        color: #bd3445;
    }

.mobile-user-card[b-dh7wusfj27] {
    padding: 14px;
    border: 1px solid #e4e8ef;
    border-radius: 12px;
    background: #fff;
}

.mobile-user-main[b-dh7wusfj27] {
    display: flex;
    width: 100%;
    align-items: center;
    gap: 10px;
    padding: 0;
    border: 0;
    background: transparent;
    text-align: left;
}

.mobile-user-meta[b-dh7wusfj27] {
    display: flex;
    flex-wrap: wrap;
    gap: 7px 12px;
    margin-top: 12px;
    color: #7e8797;
    font-size: 10px;
}

.mobile-user-actions[b-dh7wusfj27] {
    display: flex;
    gap: 7px;
    margin-top: 12px;
    padding-top: 10px;
    border-top: 1px solid #edf0f4;
}

    .mobile-user-actions button[b-dh7wusfj27] {
        min-height: 34px;
        flex: 1;
        border: 1px solid #dfe4eb;
        border-radius: 8px;
        background: #fff;
        color: #566174;
        font-size: 10px;
        font-weight: 750;
    }
/* /Components/Pages/AIChat.razor.rz.scp.css */
:host[b-7qhbboh0f1] {
    display: block;
    height: 100%;
    min-height: 0;
}

*[b-7qhbboh0f1] {
    box-sizing: border-box;
}

button[b-7qhbboh0f1],
textarea[b-7qhbboh0f1] {
    font: inherit;
}

.ai-chat-layout[b-7qhbboh0f1] {
    height: calc(100vh - var(--fk-topbar-height, 64px));
    min-height: 620px;
    display: grid;
    grid-template-columns: 278px minmax(0, 1fr);
    overflow: hidden;
    background: #ffffff;
    color: #172033;
}

/* =========================
   History sidebar
========================= */

.history-sidebar[b-7qhbboh0f1] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    border-right: 1px solid #e7ebf2;
    background: #f8fafc;
}

.history-sidebar-head[b-7qhbboh0f1] {
    flex: 0 0 auto;
    padding: 16px 14px 12px;
}

.new-chat-button[b-7qhbboh0f1] {
    width: 100%;
    min-height: 44px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    padding: 0 14px;
    border: 1px solid #dfe5ee;
    border-radius: 13px;
    background: #ffffff;
    color: #182234;
    font-weight: 700;
    cursor: pointer;
    box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
    transition: border-color .16s ease, background .16s ease, transform .16s ease, box-shadow .16s ease;
}

    .new-chat-button:hover:not(:disabled)[b-7qhbboh0f1] {
        border-color: #c7d2e3;
        background: #fbfdff;
        box-shadow: 0 6px 18px rgba(15, 23, 42, .07);
        transform: translateY(-1px);
    }

    .new-chat-button:disabled[b-7qhbboh0f1] {
        opacity: .55;
        cursor: default;
    }

    .new-chat-button svg[b-7qhbboh0f1] {
        width: 18px;
        height: 18px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
        stroke-linecap: round;
    }

.history-sidebar-body[b-7qhbboh0f1] {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    padding: 4px 10px 18px;
    scrollbar-width: thin;
    scrollbar-color: #cbd5e1 transparent;
}

.history-group[b-7qhbboh0f1] {
    margin-top: 16px;
}

    .history-group:first-child[b-7qhbboh0f1] {
        margin-top: 8px;
    }

.history-group-title[b-7qhbboh0f1] {
    padding: 0 10px 7px;
    color: #8a94a6;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .05em;
}

.history-list[b-7qhbboh0f1] {
    display: grid;
    gap: 3px;
}

.history-item[b-7qhbboh0f1] {
    width: 100%;
    min-width: 0;
    min-height: 38px;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 7px 10px;
    border: 0;
    border-radius: 10px;
    background: transparent;
    color: #465166;
    text-align: left;
    cursor: pointer;
    transition: background .14s ease, color .14s ease;
}

    .history-item:hover:not(:disabled)[b-7qhbboh0f1] {
        background: #eef2f7;
        color: #182234;
    }

    .history-item.active[b-7qhbboh0f1] {
        background: #e7edf7;
        color: #111827;
        font-weight: 700;
    }

    .history-item:disabled[b-7qhbboh0f1] {
        cursor: default;
    }

    .history-item svg[b-7qhbboh0f1] {
        flex: 0 0 auto;
        width: 16px;
        height: 16px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

    .history-item span[b-7qhbboh0f1] {
        min-width: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        font-size: 13px;
    }

.history-empty[b-7qhbboh0f1] {
    padding: 28px 16px;
    color: #97a1b2;
    font-size: 13px;
    line-height: 1.65;
    text-align: center;
}

.history-loading[b-7qhbboh0f1],
.conversation-loading[b-7qhbboh0f1] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}

.history-loading[b-7qhbboh0f1] {
    min-height: 90px;
}

    .history-loading span[b-7qhbboh0f1],
    .conversation-loading span[b-7qhbboh0f1],
    .thinking span[b-7qhbboh0f1] {
        width: 7px;
        height: 7px;
        border-radius: 999px;
        background: #94a3b8;
        animation: chat-dot-b-7qhbboh0f1 1.1s infinite ease-in-out;
    }

        .history-loading span:nth-child(2)[b-7qhbboh0f1],
        .conversation-loading span:nth-child(2)[b-7qhbboh0f1],
        .thinking span:nth-child(2)[b-7qhbboh0f1] {
            animation-delay: .14s;
        }

        .history-loading span:nth-child(3)[b-7qhbboh0f1],
        .conversation-loading span:nth-child(3)[b-7qhbboh0f1],
        .thinking span:nth-child(3)[b-7qhbboh0f1] {
            animation-delay: .28s;
        }

.history-sidebar-foot[b-7qhbboh0f1] {
    flex: 0 0 auto;
    padding: 10px 12px 14px;
    border-top: 1px solid #e7ebf2;
}

.history-refresh-button[b-7qhbboh0f1] {
    width: 100%;
    min-height: 36px;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 0 10px;
    border: 0;
    border-radius: 9px;
    background: transparent;
    color: #6b7588;
    font-size: 12px;
    cursor: pointer;
}

    .history-refresh-button:hover:not(:disabled)[b-7qhbboh0f1] {
        background: #eef2f7;
        color: #263247;
    }

    .history-refresh-button svg[b-7qhbboh0f1] {
        width: 15px;
        height: 15px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

/* =========================
   Main chat
========================= */

.chat-page[b-7qhbboh0f1] {
    position: relative; /* 추가 */

    min-width: 0;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: radial-gradient(circle at 50% -25%, rgba(65, 105, 225, .07), transparent 34%), #ffffff;
}

.chat-header[b-7qhbboh0f1] {
    flex: 0 0 auto;
    min-height: 67px;
    display: flex;
    align-items: center;
    padding: 11px 28px;
    border-bottom: 1px solid #edf0f5;
    background: rgba(255, 255, 255, .88);
    backdrop-filter: blur(14px);
    z-index: 4;
}

.chat-header-eyebrow[b-7qhbboh0f1] {
    margin-bottom: 2px;
    color: #8792a5;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.chat-header h1[b-7qhbboh0f1] {
    max-width: 720px;
    margin: 0;
    overflow: hidden;
    color: #182234;
    font-size: 16px;
    font-weight: 800;
    line-height: 1.3;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.chat-shell[b-7qhbboh0f1] {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: #d3dae5 transparent;
}

.conversation-loading[b-7qhbboh0f1] {
    height: 100%;
}

/* =========================
   Empty state
========================= */

.empty-state[b-7qhbboh0f1] {
    width: min(760px, calc(100% - 40px));
    min-height: 100%;
    margin: 0 auto;
    padding: 72px 0 170px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.empty-mark[b-7qhbboh0f1] {
    width: 58px;
    height: 58px;
    display: grid;
    place-items: center;
    margin-bottom: 22px;
    border: 1px solid #e1e7f0;
    border-radius: 18px;
    background: #ffffff;
    color: #355dcc;
    box-shadow: 0 18px 44px rgba(42, 62, 100, .12);
}

    .empty-mark svg[b-7qhbboh0f1] {
        width: 30px;
        height: 30px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

.empty-state h2[b-7qhbboh0f1] {
    margin: 0;
    color: #172033;
    font-size: clamp(26px, 3vw, 36px);
    font-weight: 800;
    letter-spacing: -.035em;
}

.empty-state p[b-7qhbboh0f1] {
    max-width: 560px;
    margin: 14px 0 0;
    color: #738096;
    font-size: 15px;
    line-height: 1.75;
}

.starter-list[b-7qhbboh0f1] {
    width: 100%;
    max-width: 720px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 34px;
}

.starter-chip[b-7qhbboh0f1] {
    min-height: 52px;
    padding: 12px 15px;
    border: 1px solid #e2e7ef;
    border-radius: 15px;
    background: rgba(255, 255, 255, .9);
    color: #49566b;
    text-align: left;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(15, 23, 42, .03);
    transition: border-color .15s ease, background .15s ease, transform .15s ease, box-shadow .15s ease;
}

    .starter-chip:hover:not(:disabled)[b-7qhbboh0f1] {
        border-color: #c8d4e8;
        background: #ffffff;
        color: #1e2b41;
        transform: translateY(-1px);
        box-shadow: 0 10px 24px rgba(15, 23, 42, .07);
    }

/* =========================
   Messages
========================= */

.conversation[b-7qhbboh0f1] {
    width: min(900px, calc(100% - 44px));
    margin: 0 auto;
    padding: 34px 0 190px;
}

.message-row[b-7qhbboh0f1] {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 13px;
    margin: 0 0 30px;
}

.message-avatar[b-7qhbboh0f1] {
    width: 32px;
    height: 32px;
    display: grid;
    place-items: center;
    border: 1px solid #dfe5ee;
    border-radius: 10px;
    background: #ffffff;
    color: #3f4c61;
    font-size: 11px;
    font-weight: 800;
    box-shadow: 0 2px 8px rgba(15, 23, 42, .04);
}

.message-row.assistant .message-avatar[b-7qhbboh0f1] {
    background: #eef4ff;
    border-color: #dce7fb;
    color: #315dcc;
}

.message-avatar svg[b-7qhbboh0f1] {
    width: 19px;
    height: 19px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.message-body[b-7qhbboh0f1] {
    min-width: 0;
}

.message-label[b-7qhbboh0f1] {
    margin: 3px 0 7px;
    color: #69758a;
    font-size: 12px;
    font-weight: 800;
}

.message-content[b-7qhbboh0f1] {
    min-width: 0;
}

.message-row.user .message-content[b-7qhbboh0f1] {
    display: inline-block;
    max-width: min(720px, 100%);
    padding: 12px 15px;
    border: 1px solid #e2e7ef;
    border-radius: 6px 16px 16px 16px;
    background: #f7f9fc;
}

.message-row.assistant .message-content[b-7qhbboh0f1] {
    max-width: 820px;
}

.message-text[b-7qhbboh0f1] {
    color: #202a3a;
    font-size: 14px;
    line-height: 1.75;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}

.message-row.assistant .message-text[b-7qhbboh0f1] {
    font-size: 14.5px;
}

.message-attachments[b-7qhbboh0f1] {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-bottom: 11px;
}

.message-image[b-7qhbboh0f1] {
    width: 112px;
    height: 84px;
    padding: 0;
    overflow: hidden;
    border: 1px solid #dde4ee;
    border-radius: 11px;
    background: #eef2f7;
    cursor: pointer;
}

    .message-image img[b-7qhbboh0f1] {
        width: 100%;
        height: 100%;
        display: block;
        object-fit: cover;
    }

.message-file[b-7qhbboh0f1] {
    min-width: 0;
    max-width: 280px;
    min-height: 42px;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 8px 10px;
    border: 1px solid #dde4ee;
    border-radius: 10px;
    background: #ffffff;
    color: #4e5a6e;
    font-size: 12px;
}

    .message-file svg[b-7qhbboh0f1] {
        flex: 0 0 auto;
        width: 17px;
        height: 17px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

    .message-file span[b-7qhbboh0f1] {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

.answer-meta[b-7qhbboh0f1] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-top: 14px;
}

.confidence-badge[b-7qhbboh0f1] {
    min-height: 27px;
    display: inline-flex;
    align-items: center;
    padding: 0 9px;
    border: 1px solid #dce5f5;
    border-radius: 999px;
    background: #f4f7fc;
    color: #52637e;
    font-size: 11px;
    font-weight: 700;
}

.reference-toggle[b-7qhbboh0f1] {
    min-height: 27px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 0 8px;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: #66738a;
    font-size: 11px;
    font-weight: 700;
    cursor: pointer;
}

    .reference-toggle:hover[b-7qhbboh0f1] {
        background: #f2f5f9;
        color: #263247;
    }

    .reference-toggle svg[b-7qhbboh0f1] {
        width: 14px;
        height: 14px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
        stroke-linecap: round;
        stroke-linejoin: round;
        transition: transform .18s ease;
    }

        .reference-toggle svg.open[b-7qhbboh0f1] {
            transform: rotate(180deg);
        }

.reference-list[b-7qhbboh0f1] {
    display: grid;
    gap: 9px;
    margin-top: 12px;
}

.reference-card[b-7qhbboh0f1] {
    padding: 12px 13px;
    border: 1px solid #e4e9f0;
    border-radius: 12px;
    background: #fafbfd;
}

.reference-card-head[b-7qhbboh0f1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    color: #68758a;
    font-size: 11px;
}

    .reference-card-head span[b-7qhbboh0f1] {
        font-weight: 800;
    }

    .reference-card-head b[b-7qhbboh0f1] {
        color: #345dcc;
    }

.reference-card p[b-7qhbboh0f1] {
    margin: 7px 0 0;
    color: #556176;
    font-size: 12px;
    line-height: 1.6;
}

.thinking[b-7qhbboh0f1] {
    min-height: 38px;
    display: flex;
    align-items: center;
    gap: 6px;
}

    .thinking span[b-7qhbboh0f1] {
        width: 6px;
        height: 6px;
    }

/* =========================
   Composer
========================= */

.composer-area[b-7qhbboh0f1] {
    position: absolute;
    left: 0; /* 278px → 0 */
    right: 0;
    bottom: 0;
    z-index: 10;
    padding: 18px 24px 14px;
    background: linear-gradient( to bottom, rgba(255,255,255,0), rgba(255,255,255,.94) 20%, #ffffff 52% );
}

.composer-error[b-7qhbboh0f1] {
    width: min(820px, 100%);
    margin: 0 auto 8px;
    padding: 9px 12px;
    border: 1px solid #fecaca;
    border-radius: 10px;
    background: #fff7f7;
    color: #b42318;
    font-size: 12px;
}

.pending-attachments[b-7qhbboh0f1] {
    width: min(820px, 100%);
    display: flex;
    gap: 8px;
    margin: 0 auto 8px;
    overflow-x: auto;
    padding-bottom: 2px;
}

.pending-attachment[b-7qhbboh0f1] {
    flex: 0 0 auto;
    min-width: 0;
    max-width: 240px;
    height: 48px;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 5px 7px;
    border: 1px solid #dfe5ee;
    border-radius: 11px;
    background: #ffffff;
    box-shadow: 0 4px 14px rgba(15, 23, 42, .05);
}

    .pending-attachment > img[b-7qhbboh0f1],
    .file-placeholder[b-7qhbboh0f1] {
        width: 36px;
        height: 36px;
        flex: 0 0 auto;
        border-radius: 7px;
    }

    .pending-attachment > img[b-7qhbboh0f1] {
        object-fit: cover;
    }

.file-placeholder[b-7qhbboh0f1] {
    display: grid;
    place-items: center;
    background: #f1f4f8;
    color: #66738a;
}

    .file-placeholder svg[b-7qhbboh0f1] {
        width: 17px;
        height: 17px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

.pending-attachment > span[b-7qhbboh0f1] {
    min-width: 0;
    overflow: hidden;
    color: #4e5a6e;
    font-size: 11px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.pending-attachment > button[b-7qhbboh0f1] {
    width: 26px;
    height: 26px;
    flex: 0 0 auto;
    display: grid;
    place-items: center;
    padding: 0;
    border: 0;
    border-radius: 7px;
    background: transparent;
    color: #7f8a9e;
    cursor: pointer;
}

    .pending-attachment > button:hover[b-7qhbboh0f1] {
        background: #eef2f7;
        color: #263247;
    }

    .pending-attachment > button svg[b-7qhbboh0f1] {
        width: 14px;
        height: 14px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
        stroke-linecap: round;
    }

.composer[b-7qhbboh0f1] {
    position: relative;
    width: min(820px, 100%);
    min-height: 112px;
    margin: 0 auto;
    overflow: hidden;
    border: 1px solid #d8dee9;
    border-radius: 22px;
    background: #ffffff;
    box-shadow: 0 4px 12px rgba(15, 23, 42, .06), 0 18px 42px rgba(15, 23, 42, .10);
    transition: border-color .16s ease, box-shadow .16s ease;
}

    .composer:focus-within[b-7qhbboh0f1] {
        border-color: #aebfe3;
        box-shadow: 0 4px 12px rgba(15, 23, 42, .06), 0 20px 48px rgba(40, 68, 130, .14);
    }

.composer-input[b-7qhbboh0f1] {
    width: 100%;
    min-height: 65px;
    max-height: 180px;
    display: block;
    resize: none;
    padding: 17px 18px 8px;
    border: 0;
    outline: 0;
    background: transparent;
    color: #1d2738;
    font-size: 14px;
    line-height: 1.55;
}

    .composer-input[b-7qhbboh0f1]::placeholder {
        color: #98a2b3;
    }

.composer-toolbar[b-7qhbboh0f1] {
    min-height: 43px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 4px 7px 7px 10px;
}

.composer-tools[b-7qhbboh0f1] {
    display: flex;
    align-items: center;
}

.attach-button[b-7qhbboh0f1] {
    position: relative;
    width: 34px;
    height: 34px;
}

.attach-icon[b-7qhbboh0f1] {
    position: absolute;
    inset: 0;
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    padding: 0;
    border: 0;
    border-radius: 10px;
    background: transparent;
    color: #5f6c80;
    pointer-events: none;
}

    .attach-icon svg[b-7qhbboh0f1] {
        width: 19px;
        height: 19px;
    }

.attach-input[b-7qhbboh0f1] {
    position: absolute;
    inset: 0;
    width: 34px;
    height: 34px;
    opacity: 0;
    cursor: pointer;
}

.send-button[b-7qhbboh0f1] {
    width: 36px;
    height: 36px;
    display: grid;
    place-items: center;
    padding: 0;
    border: 0;
    border-radius: 11px;
    background: #1f2937;
    color: #ffffff;
    cursor: pointer;
    transition: transform .14s ease, background .14s ease, opacity .14s ease;
}

    .send-button:hover:not(:disabled)[b-7qhbboh0f1] {
        background: #111827;
        transform: translateY(-1px);
    }

    .send-button:disabled[b-7qhbboh0f1] {
        background: #d6dbe3;
        color: #ffffff;
        cursor: default;
    }

    .send-button svg[b-7qhbboh0f1] {
        width: 18px;
        height: 18px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

.send-spinner[b-7qhbboh0f1] {
    width: 16px;
    height: 16px;
    border: 2px solid rgba(255,255,255,.45);
    border-top-color: #ffffff;
    border-radius: 999px;
    animation: chat-spin-b-7qhbboh0f1 .8s linear infinite;
}

.composer-note[b-7qhbboh0f1] {
    width: min(820px, 100%);
    margin: 7px auto 0;
    color: #9aa3b1;
    font-size: 10px;
    line-height: 1.45;
    text-align: center;
}

.drop-overlay[b-7qhbboh0f1] {
    position: absolute;
    inset: 0;
    z-index: 8;
    display: none;
    place-items: center;
    border: 2px dashed #86a3e3;
    border-radius: 20px;
    background: rgba(244, 248, 255, .96);
    color: #315dcc;
}

    .drop-overlay.active[b-7qhbboh0f1] {
        display: grid;
    }

.drop-overlay-content[b-7qhbboh0f1] {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 13px;
    font-weight: 800;
}

    .drop-overlay-content svg[b-7qhbboh0f1] {
        width: 22px;
        height: 22px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

/* =========================
   Animations
========================= */

@keyframes chat-dot-b-7qhbboh0f1 {
    0%, 60%, 100% {
        opacity: .35;
        transform: translateY(0);
    }

    30% {
        opacity: 1;
        transform: translateY(-4px);
    }
}

@keyframes chat-spin-b-7qhbboh0f1 {
    to {
        transform: rotate(360deg);
    }
}

/* =========================
   Responsive
========================= */

@media (max-width: 900px) {
    .ai-chat-layout[b-7qhbboh0f1] {
        grid-template-columns: 230px minmax(0, 1fr);
    }

    .composer-area[b-7qhbboh0f1] {
        left: 230px;
    }

    .conversation[b-7qhbboh0f1] {
        width: min(100% - 30px, 900px);
    }
}

@media (max-width: 720px) {
    .ai-chat-layout[b-7qhbboh0f1] {
        height: calc(100dvh - var(--fk-topbar-height, 56px));
        min-height: 0;
        grid-template-columns: 1fr;
    }

    .history-sidebar[b-7qhbboh0f1] {
        display: none;
    }

    .chat-header[b-7qhbboh0f1] {
        min-height: 58px;
        padding: 9px 16px;
    }

        .chat-header h1[b-7qhbboh0f1] {
            font-size: 15px;
        }

    .empty-state[b-7qhbboh0f1] {
        width: calc(100% - 28px);
        padding: 48px 0 175px;
        justify-content: flex-start;
    }

    .empty-mark[b-7qhbboh0f1] {
        margin-top: 30px;
    }

    .starter-list[b-7qhbboh0f1] {
        grid-template-columns: 1fr;
        margin-top: 26px;
    }

    .conversation[b-7qhbboh0f1] {
        width: calc(100% - 26px);
        padding: 24px 0 178px;
    }

    .message-row[b-7qhbboh0f1] {
        grid-template-columns: 30px minmax(0, 1fr);
        gap: 10px;
        margin-bottom: 25px;
    }

    .message-avatar[b-7qhbboh0f1] {
        width: 29px;
        height: 29px;
        border-radius: 9px;
    }

    .message-row.user .message-content[b-7qhbboh0f1] {
        max-width: 100%;
    }

    .composer-area[b-7qhbboh0f1] {
        left: 0;
        padding: 14px 12px 10px;
    }

    .composer[b-7qhbboh0f1] {
        min-height: 104px;
        border-radius: 19px;
    }

    .composer-note[b-7qhbboh0f1] {
        font-size: 9px;
    }
}

@media (max-width: 430px) {
    .chat-header[b-7qhbboh0f1] {
        padding-inline: 13px;
    }

    .empty-state h2[b-7qhbboh0f1] {
        font-size: 27px;
    }

    .empty-state p[b-7qhbboh0f1] {
        font-size: 13px;
    }

    .starter-chip[b-7qhbboh0f1] {
        min-height: 48px;
        font-size: 13px;
    }

    .conversation[b-7qhbboh0f1] {
        width: calc(100% - 20px);
    }

    .message-row[b-7qhbboh0f1] {
        grid-template-columns: 28px minmax(0, 1fr);
        gap: 8px;
    }

    .message-avatar[b-7qhbboh0f1] {
        width: 27px;
        height: 27px;
    }

    .message-text[b-7qhbboh0f1] {
        font-size: 13.5px;
    }

    .composer-area[b-7qhbboh0f1] {
        padding-inline: 8px;
    }

    .composer[b-7qhbboh0f1] {
        border-radius: 17px;
    }
}

/* =========================
   History Delete Button
========================= */

.history-item-row[b-7qhbboh0f1] {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    min-width: 0;
}

    .history-item-row .history-item[b-7qhbboh0f1] {
        flex: 1 1 auto;
        min-width: 0;
        padding-right: 42px;
    }

.history-delete-button[b-7qhbboh0f1] {
    position: absolute;
    top: 50%;
    right: 8px;
    width: 28px;
    height: 28px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: #94a3b8;
    cursor: pointer;
    opacity: 0;
    pointer-events: none;
    transform: translateY(-50%);
    transition: opacity 0.16s ease, background-color 0.16s ease, color 0.16s ease;
}

    .history-delete-button svg[b-7qhbboh0f1] {
        width: 16px;
        height: 16px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

.history-item-row:hover .history-delete-button[b-7qhbboh0f1],
.history-item-row:focus-within .history-delete-button[b-7qhbboh0f1] {
    opacity: 1;
    pointer-events: auto;
}

.history-delete-button:disabled[b-7qhbboh0f1] {
    cursor: default;
    opacity: 0;
    pointer-events: none;
}

@media (hover: none) {
    .history-delete-button[b-7qhbboh0f1] {
        opacity: 1;
        pointer-events: auto;
    }
}

.history-delete-button:hover[b-7qhbboh0f1] {
    background: #fee2e2;
    color: #dc2626;
    transform: translateY(-50%) scale(1.08);
}

.history-delete-button:active[b-7qhbboh0f1] {
    transform: translateY(-50%) scale(0.96);
}
/* /Components/Pages/Case.razor.rz.scp.css */
.knowledge-page[b-a6hj48hehq] {
    min-height: calc(100dvh - 112px);
    display: flex;
    flex-direction: column;
    gap: 10px;
    outline: none;
}

/* ========================================
   Search header
======================================== */

.search-header[b-a6hj48hehq] {
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.header-search[b-a6hj48hehq] {
    width: 100%;
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 10px;
}

.global-search[b-a6hj48hehq] {
    min-width: 0;
    max-width: 100%;
    width: 100%;
    box-sizing: border-box;
    height: 54px;
    flex: 1;
    padding: 0 15px 0 18px;
    border: 1px solid #cfd9e8;
    border-radius: 16px;
    background: #fff;
    display: flex;
    align-items: center;
    gap: 11px;
    box-shadow: 0 7px 22px rgba(15, 23, 42, .045);
    transition: border-color .16s ease, box-shadow .16s ease;
}

    .global-search:focus-within[b-a6hj48hehq] {
        border-color: #2563eb;
        box-shadow: 0 0 0 4px rgba(37, 99, 235, .09), 0 7px 22px rgba(15, 23, 42, .045);
    }

    .global-search > i[b-a6hj48hehq] {
        flex: 0 0 auto;
        color: #2563eb;
        font-size: 18px;
    }

    .global-search input[b-a6hj48hehq] {
        min-width: 0;
        width: 100%;
        flex: 1;
        border: 0;
        outline: 0;
        background: transparent;
        color: #0f172a;
        font-size: 14px;
        font-weight: 650;
    }

        .global-search input[b-a6hj48hehq]::placeholder {
            color: #94a3b8;
            font-weight: 500;
        }

.search-clear[b-a6hj48hehq] {
    width: 30px;
    height: 30px;
    flex: 0 0 auto;
    padding: 0;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: #94a3b8;
    display: grid;
    place-items: center;
    cursor: pointer;
}

    .search-clear:hover[b-a6hj48hehq] {
        background: #f1f5f9;
        color: #475569;
    }

/* ========================================
   Create
======================================== */

.create-button[b-a6hj48hehq] {
    position: static;
    height: 54px;
    flex: 0 0 auto;
    padding: 0 18px;
    border: 0;
    border-radius: 15px;
    background: #2563eb;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    white-space: nowrap;
    font-size: 12px;
    font-weight: 900;
    cursor: pointer;
    box-shadow: 0 8px 20px rgba(37, 99, 235, .17);
    transition: background .15s ease, transform .15s ease, box-shadow .15s ease;
}

    .create-button:hover[b-a6hj48hehq] {
        background: #1d4ed8;
        transform: translateY(-1px);
        box-shadow: 0 11px 25px rgba(37, 99, 235, .22);
    }

/* ========================================
   Popular tags
======================================== */

.popular-tags[b-a6hj48hehq] {
    min-height: 32px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
}

.tag-chip[b-a6hj48hehq] {
    height: 28px;
    padding: 0 10px;
    border: 1px solid #dbe4f0;
    border-radius: 999px;
    background: #fff;
    color: #475569;
    display: inline-flex;
    align-items: center;
    font-size: 9px;
    font-weight: 850;
    cursor: pointer;
    transition: border-color .14s ease, background .14s ease, color .14s ease;
}

    .tag-chip:hover[b-a6hj48hehq],
    .tag-chip.active[b-a6hj48hehq] {
        border-color: #93c5fd;
        background: #eff6ff;
        color: #1d4ed8;
    }

/* ========================================
   Search toolbar
======================================== */

.search-toolbar[b-a6hj48hehq] {
    min-height: 56px;
    padding: 8px 10px 8px 16px;
    border: 1px solid #e2e8f0;
    border-radius: 15px;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    box-shadow: 0 5px 18px rgba(15, 23, 42, .025);
}

.result-summary[b-a6hj48hehq] {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 9px;
}

    .result-summary h2[b-a6hj48hehq] {
        margin: 0;
        color: #0f172a;
        font-size: 14px;
        font-weight: 900;
        white-space: nowrap;
    }

        .result-summary h2 span[b-a6hj48hehq] {
            margin-left: 3px;
            color: #2563eb;
            font-size: 13px;
        }

.query-summary[b-a6hj48hehq] {
    min-width: 0;
    overflow: hidden;
    padding: 4px 8px;
    border-radius: 7px;
    background: #eff6ff;
    color: #2563eb;
    font-size: 9px;
    font-weight: 850;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.toolbar-controls[b-a6hj48hehq] {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    gap: 7px;
}

.toolbar-select[b-a6hj48hehq] {
    height: 36px;
    padding: 0 30px 0 10px;
    border: 1px solid #dbe3ee;
    border-radius: 9px;
    background: #fff;
    color: #475569;
    font-size: 10px;
    font-weight: 800;
    outline: none;
    cursor: pointer;
}

    .toolbar-select:focus[b-a6hj48hehq] {
        border-color: #2563eb;
    }

.favorite-toggle[b-a6hj48hehq] {
    height: 36px;
    cursor: pointer;
    user-select: none;
}

    .favorite-toggle input[b-a6hj48hehq] {
        position: absolute;
        opacity: 0;
        pointer-events: none;
    }

    .favorite-toggle span[b-a6hj48hehq] {
        height: 36px;
        padding: 0 10px;
        border: 1px solid #dbe3ee;
        border-radius: 9px;
        background: #fff;
        color: #64748b;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 6px;
        white-space: nowrap;
        font-size: 10px;
        font-weight: 850;
    }
    .favorite-toggle span[b-a6hj48hehq] {
        width: 100%;
        box-sizing: border-box;
    }

    .favorite-toggle input:checked + span[b-a6hj48hehq] {
        border-color: #fbbf24;
        background: #fffbeb;
        color: #b45309;
    }

.reset-button[b-a6hj48hehq] {
    height: 36px;
    padding: 0 10px;
    border: 0;
    border-radius: 9px;
    background: #f1f5f9;
    color: #64748b;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    font-size: 10px;
    font-weight: 850;
    cursor: pointer;
}

    .reset-button:hover[b-a6hj48hehq] {
        background: #e2e8f0;
        color: #334155;
    }

/* ========================================
   Result surface
======================================== */

.results-surface[b-a6hj48hehq] {
    min-height: 420px;
    padding: 9px;
    border: 1px solid #e2e8f0;
    border-radius: 17px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(15, 23, 42, .035);
}

.loading-state[b-a6hj48hehq] {
    min-height: 320px;
    color: #94a3b8;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    font-size: 11px;
    font-weight: 700;
}

    .loading-state p[b-a6hj48hehq] {
        margin: 0;
    }

.spinner[b-a6hj48hehq] {
    width: 28px;
    height: 28px;
    border: 3px solid #dbeafe;
    border-top-color: #2563eb;
    border-radius: 50%;
    animation: spin-b-a6hj48hehq .7s linear infinite;
}

/* ========================================
   Drawer
======================================== */

.drawer-backdrop[b-a6hj48hehq] {
    position: fixed;
    inset: 0;
    z-index: 1040;
    background: rgba(15, 23, 42, .34);
    backdrop-filter: blur(2px);
    animation: backdrop-in-b-a6hj48hehq .18s ease-out;
}

.case-drawer[b-a6hj48hehq] {
    position: fixed;
    inset: 0 0 0 auto;
    z-index: 1050;
    width: min(760px, calc(100vw - 280px));
    min-width: 560px;
    overflow: hidden;
    border-left: 1px solid #dbe3ee;
    background: #fff;
    box-shadow: -22px 0 55px rgba(15, 23, 42, .18);
    animation: drawer-in-b-a6hj48hehq .22s cubic-bezier(.2, .8, .2, 1);
}

@keyframes spin-b-a6hj48hehq {
    to {
        transform: rotate(360deg);
    }
}

@keyframes backdrop-in-b-a6hj48hehq {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes drawer-in-b-a6hj48hehq {
    from {
        transform: translateX(100%);
    }

    to {
        transform: translateX(0);
    }
}

/* ========================================
   Responsive
======================================== */

@media (max-width: 1050px) {
    .case-drawer[b-a6hj48hehq] {
        width: min(720px, 86vw);
        min-width: 0;
    }
}

@media (max-width: 700px) {
    .knowledge-page[b-a6hj48hehq] {
        gap: 9px;
    }

    .header-search[b-a6hj48hehq] {
        align-items: stretch;
        flex-direction: column;
    }

    .global-search[b-a6hj48hehq] {
        width: 100%;
        flex: none;
    }

    .create-button[b-a6hj48hehq] {
        width: 100%;
    }

    .search-toolbar[b-a6hj48hehq] {
        align-items: stretch;
        flex-direction: column;
    }

    .result-summary[b-a6hj48hehq] {
        min-height: 30px;
    }

    .toolbar-controls[b-a6hj48hehq] {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .toolbar-select[b-a6hj48hehq],
    .favorite-toggle[b-a6hj48hehq],
    .favorite-toggle span[b-a6hj48hehq],
    .reset-button[b-a6hj48hehq] {
        width: 100%;
    }

    .case-drawer[b-a6hj48hehq] {
        width: 100vw;
        min-width: 0;
        border-left: 0;
    }
}

@media (max-width: 480px) {
    .toolbar-controls[b-a6hj48hehq] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/CaseCreate.razor.rz.scp.css */
.case-create-page[b-99y6tr3zc2] {
    max-width: 1500px;
    margin: 0 auto;
    animation: pageIn-b-99y6tr3zc2 .22s ease;
}

.case-create-head[b-99y6tr3zc2] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 24px;
    margin-bottom: 28px;
}

    .case-create-head h1[b-99y6tr3zc2] {
        margin: 0;
        color: #0f172a;
        font-size: 38px;
        font-weight: 900;
        letter-spacing: -1px;
    }

    .case-create-head p[b-99y6tr3zc2] {
        margin: 10px 0 0;
        color: #64748b;
        font-size: 15px;
        font-weight: 600;
    }

.ghost-btn[b-99y6tr3zc2] {
    height: 44px;
    padding: 0 18px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border-radius: 14px;
    background: #ffffff;
    border: 1px solid #e5eaf2;
    color: #334155;
    text-decoration: none;
    font-weight: 800;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .05);
}

    .ghost-btn:hover[b-99y6tr3zc2] {
        color: #2563eb;
        border-color: #bfdbfe;
    }

.notice[b-99y6tr3zc2] {
    margin-bottom: 22px;
    padding: 16px 20px;
    border-radius: 18px;
    white-space: pre-wrap;
    font-weight: 700;
    line-height: 1.6;
}

.notice-info[b-99y6tr3zc2] {
    background: #eff6ff;
    color: #1d4ed8;
    border: 1px solid #bfdbfe;
}

.notice-warn[b-99y6tr3zc2] {
    background: #fffbeb;
    color: #b45309;
    border: 1px solid #fde68a;
}

.create-grid[b-99y6tr3zc2] {
    display: grid;
    grid-template-columns: minmax(360px, .82fr) minmax(0, 1.18fr);
    gap: 24px;
    align-items: start;
}

.left-col[b-99y6tr3zc2],
.right-col[b-99y6tr3zc2] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.panel[b-99y6tr3zc2] {
    background: rgba(255, 255, 255, .96);
    border: 1px solid #e5eaf2;
    border-radius: 28px;
    box-shadow: 0 18px 44px rgba(15, 23, 42, .07);
    overflow: hidden;
}

.panel-head[b-99y6tr3zc2] {
    padding: 24px 28px;
    border-bottom: 1px solid #eef2f7;
}

    .panel-head h2[b-99y6tr3zc2] {
        margin: 0;
        color: #0f172a;
        font-size: 20px;
        font-weight: 900;
    }

    .panel-head p[b-99y6tr3zc2] {
        margin: 8px 0 0;
        color: #94a3b8;
        font-size: 13px;
        font-weight: 700;
    }

.upload-box[b-99y6tr3zc2] {
    margin: 24px 28px;
    min-height: 230px;
    padding: 30px 24px;
    box-sizing: border-box;
    border: 2px dashed #cbd5e1;
    border-radius: 24px;
    background: #f8fafc;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    text-align: center;
    transition: .18s ease;
    position: relative;
}

    .upload-box:hover[b-99y6tr3zc2] {
        background: #eff6ff;
        border-color: #2563eb;
    }

/* 화면에서는 숨기되 DOM에는 유지 */
.native-file-input[b-99y6tr3zc2] {
    position: fixed !important;
    left: -10000px !important;
    top: -10000px !important;
    width: 1px !important;
    height: 1px !important;
    opacity: .01 !important;
    overflow: hidden !important;
}

.upload-actions[b-99y6tr3zc2] {
    width: 100%;
    max-width: 360px;
    margin-top: 22px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.upload-action-btn[b-99y6tr3zc2] {
    min-width: 0;
    height: 48px;
    padding: 0 15px;
    border-radius: 15px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 900;
    cursor: pointer;
    transition: .18s ease;
    -webkit-appearance: none;
    appearance: none;
    touch-action: manipulation;
}

.camera-btn[b-99y6tr3zc2] {
    border: none;
    background: linear-gradient(135deg, #2563eb, #1d4ed8);
    color: #ffffff;
    box-shadow: 0 12px 26px rgba(37, 99, 235, .20);
}

.library-btn[b-99y6tr3zc2] {
    border: 1px solid #dbe3ee;
    background: #ffffff;
    color: #334155;
}

.upload-action-btn:active:not(:disabled)[b-99y6tr3zc2] {
    transform: scale(.97);
}

.upload-action-btn:disabled[b-99y6tr3zc2] {
    cursor: not-allowed;
    opacity: .5;
}

.upload-icon[b-99y6tr3zc2] {
    width: 62px;
    height: 62px;
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #e8f0ff;
    color: #2563eb;
    font-size: 28px;
    margin-bottom: 16px;
}

.upload-title[b-99y6tr3zc2] {
    color: #0f172a;
    font-size: 17px;
    font-weight: 900;
}

.upload-sub[b-99y6tr3zc2] {
    margin-top: 6px;
    color: #94a3b8;
    font-size: 13px;
    font-weight: 700;
}

.photo-grid[b-99y6tr3zc2] {
    padding: 0 28px 28px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.photo-card[b-99y6tr3zc2] {
    border-radius: 20px;
    overflow: hidden;
    background: #ffffff;
    border: 1px solid #e5eaf2;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .05);
}

    .photo-card img[b-99y6tr3zc2] {
        width: 100%;
        height: 160px;
        object-fit: cover;
        display: block;
    }

.photo-meta[b-99y6tr3zc2] {
    padding: 10px 12px;
    color: #64748b;
    font-size: 12px;
    font-weight: 700;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ai-panel[b-99y6tr3zc2] {
    padding-bottom: 28px;
}

.ai-action-btn[b-99y6tr3zc2] {
    margin: 24px 28px 0;
    width: calc(100% - 56px);
    height: 56px;
    border: none;
    border-radius: 18px;
    background: linear-gradient(135deg, #2563eb, #1d4ed8);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    font-size: 15px;
    font-weight: 900;
    cursor: pointer;
    box-shadow: 0 16px 34px rgba(37, 99, 235, .22);
    transition: .18s ease;
}

    .ai-action-btn:hover:not(:disabled)[b-99y6tr3zc2] {
        transform: translateY(-2px);
        box-shadow: 0 22px 44px rgba(37, 99, 235, .30);
    }

    .ai-action-btn:disabled[b-99y6tr3zc2] {
        cursor: not-allowed;
        opacity: .55;
    }

.hint[b-99y6tr3zc2] {
    margin: 14px 28px 0;
    color: #94a3b8;
    font-size: 13px;
    font-weight: 700;
}

.spinner[b-99y6tr3zc2] {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    border: 3px solid rgba(255,255,255,.35);
    border-top-color: #fff;
    animation: spin-b-99y6tr3zc2 .8s linear infinite;
}

.form-panel[b-99y6tr3zc2] {
    padding-bottom: 28px;
}

.form-group[b-99y6tr3zc2] {
    padding: 0 28px;
    margin-top: 22px;
}

    .form-group label[b-99y6tr3zc2] {
        display: block;
        margin-bottom: 9px;
        color: #334155;
        font-size: 13px;
        font-weight: 900;
    }

.fk-input[b-99y6tr3zc2],
.fk-textarea[b-99y6tr3zc2] {
    width: 100%;
    box-sizing: border-box;
    border: 1px solid #dbe3ee;
    border-radius: 16px;
    background: #f8fafc;
    color: #0f172a;
    font-size: 14px;
    font-weight: 600;
    outline: none;
    transition: .18s ease;
}

.fk-input[b-99y6tr3zc2] {
    height: 48px;
    padding: 0 16px;
}

.fk-textarea[b-99y6tr3zc2] {
    padding: 15px 16px;
    resize: vertical;
    line-height: 1.7;
}

    .fk-input:focus[b-99y6tr3zc2],
    .fk-textarea:focus[b-99y6tr3zc2] {
        background: #fff;
        border-color: #2563eb;
        box-shadow: 0 0 0 4px rgba(37, 99, 235, .12);
    }

.save-bar[b-99y6tr3zc2] {
    margin: 28px 28px 0;
    padding-top: 24px;
    border-top: 1px solid #eef2f7;
    display: flex;
    justify-content: flex-end;
    gap: 12px;
}

.cancel-btn[b-99y6tr3zc2],
.save-btn[b-99y6tr3zc2] {
    height: 48px;
    padding: 0 22px;
    border-radius: 15px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-weight: 900;
    text-decoration: none;
    cursor: pointer;
}

.cancel-btn[b-99y6tr3zc2] {
    background: #f1f5f9;
    color: #475569;
    border: 1px solid #e2e8f0;
}

.save-btn[b-99y6tr3zc2] {
    border: none;
    background: linear-gradient(135deg, #2563eb, #1d4ed8);
    color: #fff;
    box-shadow: 0 14px 30px rgba(37, 99, 235, .20);
}

    .save-btn:hover[b-99y6tr3zc2] {
        transform: translateY(-1px);
    }

@keyframes spin-b-99y6tr3zc2 {
    to {
        transform: rotate(360deg);
    }
}

@keyframes pageIn-b-99y6tr3zc2 {
    from {
        opacity: 0;
        transform: translateY(8px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 1100px) {
    .create-grid[b-99y6tr3zc2] {
        grid-template-columns: 1fr;
    }

    .photo-grid[b-99y6tr3zc2] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .case-create-head[b-99y6tr3zc2] {
        flex-direction: column;
    }

        .case-create-head h1[b-99y6tr3zc2] {
            font-size: 32px;
        }

    .photo-grid[b-99y6tr3zc2] {
        grid-template-columns: 1fr;
    }

    .save-bar[b-99y6tr3zc2] {
        flex-direction: column;
    }

    .cancel-btn[b-99y6tr3zc2],
    .save-btn[b-99y6tr3zc2] {
        width: 100%;
    }
}

@media (max-width: 720px) {
    .upload-box[b-99y6tr3zc2] {
        margin: 18px;
        min-height: 240px;
        padding: 26px 18px;
    }

    .upload-actions[b-99y6tr3zc2] {
        grid-template-columns: 1fr;
    }

    .upload-action-btn[b-99y6tr3zc2] {
        width: 100%;
        height: 52px;
    }
}
/* /Components/Pages/CaseDetail.razor.rz.scp.css */
:host[b-qz0okz676o] {
    --page-bg: #f4f6fa;
    --surface: rgba(255, 255, 255, 0.96);
    --surface-solid: #ffffff;
    --surface-muted: #f8fafc;
    --surface-hover: #f3f6fb;
    --text-primary: #111827;
    --text-secondary: #475569;
    --text-tertiary: #7c8799;
    --text-disabled: #a8b0bf;
    --line: #e5e9f0;
    --line-strong: #d7dde7;
    --blue: #2563eb;
    --blue-dark: #1d4ed8;
    --blue-soft: #eff6ff;
    --green: #16a34a;
    --green-soft: #ecfdf3;
    --amber: #d97706;
    --amber-soft: #fff7ed;
    --red: #dc2626;
    --red-dark: #b91c1c;
    --red-soft: #fef2f2;
    --violet: #7c3aed;
    --violet-soft: #f5f3ff;
    --shadow-xs: 0 1px 2px rgba(15, 23, 42, 0.04);
    --shadow-sm: 0 6px 18px rgba(15, 23, 42, 0.05);
    --shadow-md: 0 14px 36px rgba(15, 23, 42, 0.08);
    --shadow-lg: 0 24px 60px rgba(15, 23, 42, 0.12);
    display: block;
    min-height: 100%;
    color: var(--text-primary);
}

*[b-qz0okz676o] {
    box-sizing: border-box;
}

button[b-qz0okz676o],
a[b-qz0okz676o],
input[b-qz0okz676o],
label[b-qz0okz676o] {
    -webkit-tap-highlight-color: transparent;
}

button[b-qz0okz676o],
a[b-qz0okz676o] {
    transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease, opacity 0.18s ease;
}

    button:focus-visible[b-qz0okz676o],
    a:focus-visible[b-qz0okz676o],
    label:focus-visible[b-qz0okz676o] {
        outline: 3px solid rgba(37, 99, 235, 0.18);
        outline-offset: 2px;
    }

/* =========================================================
   PAGE
   ========================================================= */

.case-detail-page[b-qz0okz676o] {
    position: relative;
    min-height: calc(100vh - 70px);
    padding: 28px 30px 54px;
    background: radial-gradient( circle at 82% 4%, rgba(37, 99, 235, 0.07), transparent 28% ), linear-gradient( 180deg, #f8fafc 0%, var(--page-bg) 40%, #f3f5f9 100% );
    overflow-x: hidden;
}

    .case-detail-page[b-qz0okz676o]::before {
        content: "";
        position: fixed;
        inset: 0;
        pointer-events: none;
        background-image: linear-gradient( rgba(15, 23, 42, 0.018) 1px, transparent 1px ), linear-gradient( 90deg, rgba(15, 23, 42, 0.018) 1px, transparent 1px );
        background-size: 32px 32px;
        mask-image: linear-gradient( 180deg, rgba(0, 0, 0, 0.18), transparent 55% );
    }

/* =========================================================
   HEADER
   ========================================================= */

.case-header[b-qz0okz676o] {
    position: relative;
    z-index: 1;
    max-width: 1500px;
    margin: 0 auto 22px;
    padding: 24px 26px 28px;
    background: var(--surface);
    border: 1px solid rgba(215, 221, 231, 0.88);
    border-radius: 22px;
    box-shadow: var(--shadow-sm);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    overflow: hidden;
}

    .case-header[b-qz0okz676o]::after {
        content: "";
        position: absolute;
        inset: 0 auto 0 0;
        width: 4px;
        background: linear-gradient( 180deg, var(--blue), #60a5fa );
    }

.case-header-top[b-qz0okz676o] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--line);
}

.header-actions[b-qz0okz676o] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.case-heading[b-qz0okz676o] {
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding-top: 24px;
}

.case-heading-main[b-qz0okz676o] {
    min-width: 0;
}

.case-eyebrow[b-qz0okz676o] {
    display: flex;
    align-items: center;
    gap: 9px;
    flex-wrap: wrap;
    margin-bottom: 11px;
}

.case-type-badge[b-qz0okz676o] {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: 0 10px;
    border: 1px solid rgba(37, 99, 235, 0.16);
    border-radius: 999px;
    background: var(--blue-soft);
    color: var(--blue-dark);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.12em;
}

.equipment-name[b-qz0okz676o] {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: 0 10px;
    border: 1px solid var(--line);
    border-radius: 999px;
    background: #f8fafc;
    color: var(--text-secondary);
    font-size: 12px;
    font-weight: 700;
}

.case-id[b-qz0okz676o] {
    color: var(--text-tertiary);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.02em;
}

.case-heading h1[b-qz0okz676o] {
    margin: 0;
    color: #0f172a;
    font-size: clamp(28px, 3vw, 42px);
    font-weight: 780;
    line-height: 1.16;
    letter-spacing: -0.035em;
    word-break: keep-all;
    overflow-wrap: anywhere;
}

.case-meta[b-qz0okz676o] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 13px;
    color: var(--text-tertiary);
    font-size: 13px;
    font-weight: 550;
}

.meta-divider[b-qz0okz676o] {
    display: inline-block;
    width: 4px;
    height: 4px;
    border-radius: 999px;
    background: #c4ccd7;
}

.tag-list[b-qz0okz676o] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 7px;
}

.tag-chip[b-qz0okz676o] {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 10px;
    border: 1px solid #dce7fb;
    border-radius: 999px;
    background: #f6f9ff;
    color: #315b9e;
    font-size: 12px;
    font-weight: 700;
}
/* =========================================================
   BUTTONS
   ========================================================= */

.back-button[b-qz0okz676o],
.secondary-button[b-qz0okz676o],
.danger-button[b-qz0okz676o],
.ai-button[b-qz0okz676o] {
    border: 0;
    font-family: inherit;
    cursor: pointer;
}

/* ===========================
   Back Button
=========================== */

.back-button[b-qz0okz676o] {
    width: 46px;
    height: 46px;
    flex-shrink: 0;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #dbe3ee;
    border-radius: 14px;
    background: linear-gradient(180deg,#ffffff 0%,#f8fafc 100%);
    color: #334155;
    box-shadow: 0 2px 6px rgba(15,23,42,.05), 0 8px 20px rgba(15,23,42,.06);
    transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease;
}

    /* ← 아이콘만 표시 */

    .back-button span:first-child[b-qz0okz676o] {
        font-size: 22px;
        font-weight: 700;
        line-height: 1;
    }

    .back-button span:last-child[b-qz0okz676o] {
        display: none;
    }

    .back-button:hover[b-qz0okz676o] {
        border-color: #bfcee2;
        background: #ffffff;
        color: #2563eb;
        transform: translateY(-1px);
        box-shadow: 0 4px 12px rgba(15,23,42,.08), 0 10px 24px rgba(15,23,42,.10);
    }

    .back-button:active[b-qz0okz676o] {
        transform: scale(.94);
        border-color: #93c5fd;
        background: #eff6ff;
        color: #2563eb;
        box-shadow: 0 2px 6px rgba(15,23,42,.08);
    }

    .back-button:focus-visible[b-qz0okz676o] {
        outline: 3px solid rgba(37,99,235,.18);
        outline-offset: 2px;
    }

/* ===========================
   Secondary
=========================== */

.secondary-button[b-qz0okz676o] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 0 14px;
    border: 1px solid var(--line);
    border-radius: 11px;
    background: #ffffff;
    color: var(--text-secondary);
    font-size: 13px;
    font-weight: 750;
    text-decoration: none;
    box-shadow: var(--shadow-xs);
}

    .secondary-button:hover[b-qz0okz676o] {
        border-color: #bfc9d6;
        background: #f8fafc;
        color: #0f172a;
        transform: translateY(-1px);
    }

/* ===========================
   Danger
=========================== */

.danger-button[b-qz0okz676o] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 0 14px;
    border: 1px solid #fecaca;
    border-radius: 11px;
    background: var(--red-soft);
    color: var(--red);
    font-size: 13px;
    font-weight: 750;
}

    .danger-button:hover[b-qz0okz676o] {
        border-color: #fca5a5;
        background: #fee2e2;
        color: var(--red-dark);
        transform: translateY(-1px);
    }

.icon-action[b-qz0okz676o] {
    display: inline-grid;
    place-items: center;
    width: 38px;
    height: 38px;
    padding: 0;
    border: 1px solid var(--line);
    border-radius: 11px;
    background: #ffffff;
    color: #8490a2;
    font-size: 20px;
    line-height: 1;
    cursor: pointer;
    box-shadow: var(--shadow-xs);
}

    .icon-action:hover[b-qz0okz676o] {
        border-color: #d3dae4;
        background: #f8fafc;
        color: #475569;
        transform: translateY(-1px);
    }

.favorite-action.active[b-qz0okz676o] {
    border-color: #fde68a;
    background: #fffbeb;
    color: #f59e0b;
}

    .favorite-action.active:hover[b-qz0okz676o] {
        background: #fef3c7;
    }

/* =========================================================
   MAIN GRID
   ========================================================= */

.case-content[b-qz0okz676o] {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 350px;
    align-items: start;
    gap: 22px;
    max-width: 1500px;
    margin: 0 auto;
}

.case-main-column[b-qz0okz676o],
.case-side-column[b-qz0okz676o] {
    min-width: 0;
}

.case-main-column[b-qz0okz676o] {
    display: flex;
    flex-direction: column;
    gap: 22px;
}

.case-side-column[b-qz0okz676o] {
    position: sticky;
    top: 22px;
    display: flex;
    flex-direction: column;
    gap: 18px;
}

/* =========================================================
   CARDS
   ========================================================= */

.content-card[b-qz0okz676o],
.side-card[b-qz0okz676o] {
    position: relative;
    border: 1px solid rgba(215, 221, 231, 0.88);
    background: var(--surface);
    box-shadow: var(--shadow-sm);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}

.content-card[b-qz0okz676o] {
    padding: 26px;
    border-radius: 20px;
}

.side-card[b-qz0okz676o] {
    padding: 20px;
    border-radius: 18px;
}

    .content-card:hover[b-qz0okz676o],
    .side-card:hover[b-qz0okz676o] {
        border-color: #d1d8e3;
    }

.section-header[b-qz0okz676o],
.side-card-heading[b-qz0okz676o] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 22px;
}

.section-kicker[b-qz0okz676o],
.side-card-kicker[b-qz0okz676o] {
    display: block;
    margin-bottom: 5px;
    color: var(--text-tertiary);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.16em;
    line-height: 1;
}

.section-header h2[b-qz0okz676o],
.side-card-heading h2[b-qz0okz676o],
.ai-card-header h2[b-qz0okz676o] {
    margin: 0;
    color: #162033;
    font-weight: 760;
    letter-spacing: -0.025em;
}

.section-header h2[b-qz0okz676o] {
    font-size: 22px;
}

.side-card-heading h2[b-qz0okz676o],
.ai-card-header h2[b-qz0okz676o] {
    font-size: 17px;
}

.section-count[b-qz0okz676o] {
    display: inline-grid;
    place-items: center;
    min-width: 29px;
    height: 29px;
    padding: 0 9px;
    border: 1px solid #dbe5f3;
    border-radius: 999px;
    background: #f3f7fc;
    color: #4d6584;
    font-size: 12px;
    font-weight: 800;
}

/* =========================================================
   CASE DETAILS
   ========================================================= */

.case-summary-card[b-qz0okz676o] {
    overflow: hidden;
}

.case-detail-sections[b-qz0okz676o] {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.detail-section[b-qz0okz676o] {
    position: relative;
    padding: 22px 22px 22px 24px;
    border: 1px solid var(--line);
    border-radius: 17px;
    background: linear-gradient( 180deg, #ffffff 0%, #fbfcfe 100% );
    overflow: hidden;
}

    .detail-section[b-qz0okz676o]::before {
        content: "";
        position: absolute;
        inset: 0 auto 0 0;
        width: 3px;
        border-radius: 3px;
        opacity: 0.9;
    }

.symptom-section[b-qz0okz676o]::before {
    background: var(--blue);
}

.cause-section[b-qz0okz676o]::before {
    background: var(--amber);
}

.solution-section[b-qz0okz676o]::before {
    background: var(--green);
}

.detail-section:hover[b-qz0okz676o] {
    border-color: #d3dae5;
    background: #ffffff;
    box-shadow: var(--shadow-xs);
}

.detail-section-header[b-qz0okz676o] {
    display: flex;
    align-items: center;
    gap: 13px;
    margin-bottom: 16px;
}

.detail-number[b-qz0okz676o] {
    display: inline-grid;
    place-items: center;
    width: 36px;
    height: 36px;
    flex: 0 0 auto;
    border-radius: 11px;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: 0.03em;
}

.symptom-section .detail-number[b-qz0okz676o] {
    background: var(--blue-soft);
    color: var(--blue-dark);
}

.cause-section .detail-number[b-qz0okz676o] {
    background: var(--amber-soft);
    color: var(--amber);
}

.solution-section .detail-number[b-qz0okz676o] {
    background: var(--green-soft);
    color: var(--green);
}

.detail-label[b-qz0okz676o] {
    display: block;
    margin-bottom: 3px;
    color: var(--text-tertiary);
    font-size: 9px;
    font-weight: 850;
    letter-spacing: 0.15em;
}

.detail-section h3[b-qz0okz676o] {
    margin: 0;
    color: #182235;
    font-size: 18px;
    font-weight: 760;
    letter-spacing: -0.02em;
}

.detail-body[b-qz0okz676o] {
    padding-left: 49px;
    color: #364152;
    font-size: 14px;
    font-weight: 480;
    line-height: 1.82;
    white-space: pre-wrap;
    word-break: keep-all;
    overflow-wrap: anywhere;
}

/* =========================================================
   UPLOAD
   ========================================================= */

.upload-area[b-qz0okz676o] {
    margin-bottom: 16px;
}

.photo-input[b-qz0okz676o] {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.upload-label[b-qz0okz676o] {
    display: flex;
    align-items: center;
    gap: 14px;
    min-height: 82px;
    padding: 16px 18px;
    border: 1.5px dashed #c9d3df;
    border-radius: 16px;
    background: linear-gradient( 135deg, #fafcff 0%, #f7f9fc 100% );
    cursor: pointer;
}

    .upload-label:hover[b-qz0okz676o] {
        border-color: #8eb1ee;
        background: linear-gradient( 135deg, #f8fbff 0%, #eff6ff 100% );
        box-shadow: inset 0 0 0 1px rgba(37, 99, 235, 0.05);
    }

.upload-icon[b-qz0okz676o] {
    display: inline-grid;
    place-items: center;
    width: 44px;
    height: 44px;
    flex: 0 0 auto;
    border: 1px solid #d7e2f5;
    border-radius: 13px;
    background: #ffffff;
    color: var(--blue);
    font-size: 24px;
    font-weight: 400;
    box-shadow: var(--shadow-xs);
}

.upload-copy[b-qz0okz676o] {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 4px;
}

    .upload-copy strong[b-qz0okz676o] {
        color: #253046;
        font-size: 14px;
        font-weight: 760;
    }

    .upload-copy small[b-qz0okz676o] {
        color: var(--text-tertiary);
        font-size: 12px;
        font-weight: 500;
    }

.upload-area.uploading[b-qz0okz676o] {
    pointer-events: none;
    opacity: 0.72;
}

.status-message[b-qz0okz676o] {
    display: flex;
    align-items: center;
    min-height: 38px;
    margin-bottom: 16px;
    padding: 9px 12px;
    border: 1px solid;
    border-radius: 11px;
    font-size: 12px;
    font-weight: 700;
}

    .status-message.success[b-qz0okz676o] {
        border-color: #bbf7d0;
        background: var(--green-soft);
        color: #15803d;
    }

    .status-message.error[b-qz0okz676o] {
        border-color: #fecaca;
        background: var(--red-soft);
        color: var(--red);
    }

/* =========================================================
   PHOTO GALLERY
   ========================================================= */

.photo-grid[b-qz0okz676o] {
    display: grid;
    grid-template-columns: repeat( auto-fill, minmax(210px, 1fr) );
    gap: 14px;
}

.photo-item[b-qz0okz676o] {
    display: block;
    min-width: 0;
    padding: 0;
    border: 1px solid var(--line);
    border-radius: 15px;
    background: #ffffff;
    color: inherit;
    text-align: left;
    overflow: hidden;
    cursor: pointer;
}

    .photo-item:hover[b-qz0okz676o] {
        border-color: #cbd5e1;
        box-shadow: var(--shadow-md);
        transform: translateY(-3px);
    }

.photo-image-wrap[b-qz0okz676o] {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    background: #eef2f7;
    overflow: hidden;
}

    .photo-image-wrap img[b-qz0okz676o] {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: transform 0.28s ease;
    }

.photo-item:hover .photo-image-wrap img[b-qz0okz676o] {
    transform: scale(1.04);
}

.photo-overlay[b-qz0okz676o] {
    position: absolute;
    inset: auto 10px 10px auto;
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 9px;
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 999px;
    background: rgba(15, 23, 42, 0.72);
    color: #ffffff;
    font-size: 10px;
    font-weight: 750;
    opacity: 0;
    transform: translateY(5px);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    transition: opacity 0.18s ease, transform 0.18s ease;
}

.photo-item:hover .photo-overlay[b-qz0okz676o] {
    opacity: 1;
    transform: translateY(0);
}

.photo-info[b-qz0okz676o] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 11px 12px;
}

.photo-name[b-qz0okz676o] {
    min-width: 0;
    color: #405069;
    font-size: 12px;
    font-weight: 650;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.photo-open-icon[b-qz0okz676o] {
    flex: 0 0 auto;
    color: #8a96a8;
    font-size: 13px;
}

/* =========================================================
   EMPTY STATES
   ========================================================= */

.empty-state[b-qz0okz676o] {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: 18px;
    max-width: 720px;
    margin: 80px auto 0;
    padding: 28px;
    border: 1px solid var(--line);
    border-radius: 20px;
    background: #ffffff;
    box-shadow: var(--shadow-md);
}

.empty-state-icon[b-qz0okz676o] {
    display: grid;
    place-items: center;
    width: 52px;
    height: 52px;
    flex: 0 0 auto;
    border-radius: 15px;
    background: var(--red-soft);
    color: var(--red);
    font-size: 22px;
    font-weight: 800;
}

.empty-state-content h1[b-qz0okz676o] {
    margin: 0 0 6px;
    font-size: 21px;
    font-weight: 780;
}

.empty-state-content p[b-qz0okz676o] {
    margin: 0 0 16px;
    color: var(--text-tertiary);
    font-size: 13px;
}

.section-empty-state[b-qz0okz676o] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 180px;
    padding: 28px;
    border: 1px dashed #d5dce6;
    border-radius: 16px;
    background: #fafbfd;
    text-align: center;
}

.section-empty-icon[b-qz0okz676o] {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    margin-bottom: 12px;
    border-radius: 12px;
    background: #eef2f7;
    color: #738095;
    font-size: 18px;
}

.section-empty-state strong[b-qz0okz676o] {
    margin-bottom: 5px;
    color: #354156;
    font-size: 13px;
}

.section-empty-state p[b-qz0okz676o] {
    margin: 0;
    color: var(--text-tertiary);
    font-size: 12px;
}

.compact-empty-state[b-qz0okz676o] {
    padding: 18px 14px;
    border: 1px dashed #d8dee7;
    border-radius: 13px;
    background: #fafbfd;
    color: var(--text-tertiary);
    font-size: 12px;
    text-align: center;
}

/* =========================================================
   AI CARD
   ========================================================= */

.ai-card[b-qz0okz676o] {
    overflow: hidden;
    background: radial-gradient( circle at 100% 0%, rgba(124, 58, 237, 0.12), transparent 40% ), linear-gradient( 180deg, #ffffff 0%, #fbfaff 100% );
}

    .ai-card[b-qz0okz676o]::before {
        content: "";
        position: absolute;
        inset: 0 0 auto 0;
        height: 3px;
        background: linear-gradient( 90deg, #7c3aed, #4f46e5, #2563eb );
    }

.ai-card-header[b-qz0okz676o] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 14px;
}

.ai-icon[b-qz0okz676o] {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    flex: 0 0 auto;
    border-radius: 13px;
    background: linear-gradient( 135deg, #7c3aed, #4f46e5 );
    color: #ffffff;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: 0.04em;
    box-shadow: 0 8px 18px rgba(79, 70, 229, 0.23);
}

.ai-description[b-qz0okz676o] {
    margin: 0 0 16px;
    color: #657087;
    font-size: 12px;
    line-height: 1.65;
    word-break: keep-all;
}

.ai-button[b-qz0okz676o] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    min-height: 42px;
    padding: 0 14px;
    border-radius: 12px;
    background: linear-gradient( 135deg, #6d28d9, #4f46e5 );
    color: #ffffff;
    font-size: 13px;
    font-weight: 760;
    box-shadow: 0 10px 22px rgba(79, 70, 229, 0.2);
}

    .ai-button:hover:not(:disabled)[b-qz0okz676o] {
        background: linear-gradient( 135deg, #5b21b6, #4338ca );
        transform: translateY(-1px);
        box-shadow: 0 14px 26px rgba(79, 70, 229, 0.25);
    }

    .ai-button:disabled[b-qz0okz676o] {
        cursor: wait;
        opacity: 0.7;
    }

.button-spinner[b-qz0okz676o] {
    display: inline-block;
    width: 15px;
    height: 15px;
    border: 2px solid rgba(255, 255, 255, 0.35);
    border-top-color: #ffffff;
    border-radius: 50%;
    animation: spin-b-qz0okz676o 0.75s linear infinite;
}

.ai-result[b-qz0okz676o] {
    margin-top: 16px;
    border: 1px solid #ddd6fe;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.86);
    overflow: hidden;
}

.ai-result-header[b-qz0okz676o] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 11px 12px;
    border-bottom: 1px solid #e7e1f8;
    color: #55427b;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.04em;
}

.result-close-button[b-qz0okz676o] {
    display: grid;
    place-items: center;
    width: 24px;
    height: 24px;
    padding: 0;
    border: 0;
    border-radius: 7px;
    background: transparent;
    color: #82749d;
    font-size: 18px;
    cursor: pointer;
}

    .result-close-button:hover[b-qz0okz676o] {
        background: #f3f0fb;
        color: #5b4b7a;
    }

.ai-result-body[b-qz0okz676o] {
    max-height: 420px;
    padding: 13px;
    color: #475569;
    font-size: 12px;
    line-height: 1.7;
    white-space: pre-wrap;
    overflow-y: auto;
}

/* =========================================================
   RELATED CASES
   ========================================================= */

.related-case-list[b-qz0okz676o] {
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.related-case-item[b-qz0okz676o] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-width: 0;
    padding: 12px 11px;
    border: 1px solid transparent;
    border-radius: 12px;
    color: inherit;
    text-decoration: none;
}

    .related-case-item:hover[b-qz0okz676o] {
        border-color: var(--line);
        background: var(--surface-hover);
    }

.related-case-content[b-qz0okz676o] {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 5px;
}

    .related-case-content strong[b-qz0okz676o] {
        min-width: 0;
        color: #2d394d;
        font-size: 12px;
        font-weight: 720;
        line-height: 1.45;
        word-break: keep-all;
        overflow-wrap: anywhere;
    }

    .related-case-content small[b-qz0okz676o] {
        color: var(--text-tertiary);
        font-size: 11px;
        font-weight: 520;
    }

.related-case-arrow[b-qz0okz676o] {
    flex: 0 0 auto;
    color: #9aa4b2;
    font-size: 14px;
}

.related-case-item:hover .related-case-arrow[b-qz0okz676o] {
    color: var(--blue);
    transform: translateX(2px);
}

/* =========================================================
   INFORMATION
   ========================================================= */

.information-card[b-qz0okz676o] {
    background: linear-gradient( 180deg, #ffffff 0%, #fbfcfd 100% );
}

.information-list[b-qz0okz676o] {
    display: flex;
    flex-direction: column;
    margin: 0;
}

.information-row[b-qz0okz676o] {
    display: grid;
    grid-template-columns: 92px minmax(0, 1fr);
    align-items: center;
    gap: 12px;
    min-height: 41px;
    padding: 9px 0;
    border-bottom: 1px solid #edf0f4;
}

    .information-row:first-child[b-qz0okz676o] {
        padding-top: 0;
    }

    .information-row:last-child[b-qz0okz676o] {
        padding-bottom: 0;
        border-bottom: 0;
    }

    .information-row dt[b-qz0okz676o] {
        color: var(--text-tertiary);
        font-size: 11px;
        font-weight: 650;
    }

    .information-row dd[b-qz0okz676o] {
        min-width: 0;
        margin: 0;
        color: #334155;
        font-size: 12px;
        font-weight: 720;
        text-align: right;
        word-break: keep-all;
        overflow-wrap: anywhere;
    }

/* =========================================================
   HISTORY
   ========================================================= */

.history-timeline[b-qz0okz676o] {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

    .history-timeline[b-qz0okz676o]::before {
        content: "";
        position: absolute;
        top: 18px;
        bottom: 18px;
        left: 7px;
        width: 1px;
        background: #dde3eb;
    }

.history-item[b-qz0okz676o] {
    position: relative;
    display: grid;
    grid-template-columns: 16px minmax(0, 1fr);
    gap: 13px;
}

.history-marker[b-qz0okz676o] {
    position: relative;
    z-index: 1;
    width: 15px;
    height: 15px;
    margin-top: 16px;
    border: 4px solid #ffffff;
    border-radius: 50%;
    background: var(--blue);
    box-shadow: 0 0 0 1px #bcd0f3, var(--shadow-xs);
}

.history-card[b-qz0okz676o] {
    min-width: 0;
    padding: 16px;
    border: 1px solid var(--line);
    border-radius: 15px;
    background: #fbfcfe;
}

    .history-card:hover[b-qz0okz676o] {
        border-color: #d3dae4;
        background: #ffffff;
        box-shadow: var(--shadow-xs);
    }

.history-header[b-qz0okz676o] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 14px;
}

.history-author[b-qz0okz676o] {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

.author-avatar[b-qz0okz676o] {
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    flex: 0 0 auto;
    border-radius: 10px;
    background: #eaf1fb;
    color: #456b9f;
    font-size: 12px;
    font-weight: 850;
}

.history-author > div[b-qz0okz676o] {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 2px;
}

.history-author strong[b-qz0okz676o] {
    color: #334155;
    font-size: 12px;
    font-weight: 760;
}

.history-action[b-qz0okz676o] {
    color: var(--text-tertiary);
    font-size: 11px;
    font-weight: 570;
}

.history-header time[b-qz0okz676o] {
    flex: 0 0 auto;
    color: #929bab;
    font-size: 10px;
    font-weight: 600;
}

.history-comparison[b-qz0okz676o] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 28px minmax(0, 1fr);
    align-items: stretch;
    gap: 8px;
}

.history-value[b-qz0okz676o] {
    min-width: 0;
    padding: 12px;
    border: 1px solid;
    border-radius: 12px;
    font-size: 11px;
    line-height: 1.62;
    white-space: pre-wrap;
    word-break: keep-all;
    overflow-wrap: anywhere;
}

.before-value[b-qz0okz676o] {
    border-color: #e4e8ee;
    background: #f8fafc;
    color: #657087;
}

.after-value[b-qz0okz676o] {
    border-color: #d8e6fc;
    background: #f7faff;
    color: #3e526f;
}

.history-value-label[b-qz0okz676o] {
    display: block;
    margin-bottom: 6px;
    font-size: 9px;
    font-weight: 850;
    letter-spacing: 0.08em;
}

.before-value .history-value-label[b-qz0okz676o] {
    color: #8a95a5;
}

.after-value .history-value-label[b-qz0okz676o] {
    color: var(--blue);
}

.history-arrow[b-qz0okz676o] {
    display: grid;
    place-items: center;
    color: #9aa4b2;
    font-size: 14px;
}

/* =========================================================
   SCROLLBAR
   ========================================================= */

.ai-result-body[b-qz0okz676o] {
    scrollbar-width: thin;
    scrollbar-color: #c8d0dc transparent;
}

    .ai-result-body[b-qz0okz676o]::-webkit-scrollbar {
        width: 7px;
    }

    .ai-result-body[b-qz0okz676o]::-webkit-scrollbar-track {
        background: transparent;
    }

    .ai-result-body[b-qz0okz676o]::-webkit-scrollbar-thumb {
        border: 2px solid transparent;
        border-radius: 999px;
        background: #c8d0dc;
        background-clip: padding-box;
    }

/* =========================================================
   ANIMATIONS
   ========================================================= */

.case-header[b-qz0okz676o],
.content-card[b-qz0okz676o],
.side-card[b-qz0okz676o] {
    animation: enter-up-b-qz0okz676o 0.34s ease both;
}

.case-main-column .content-card:nth-child(2)[b-qz0okz676o] {
    animation-delay: 0.04s;
}

.case-main-column .content-card:nth-child(3)[b-qz0okz676o] {
    animation-delay: 0.08s;
}

.case-side-column .side-card:nth-child(1)[b-qz0okz676o] {
    animation-delay: 0.05s;
}

.case-side-column .side-card:nth-child(2)[b-qz0okz676o] {
    animation-delay: 0.09s;
}

.case-side-column .side-card:nth-child(3)[b-qz0okz676o] {
    animation-delay: 0.13s;
}

@keyframes enter-up-b-qz0okz676o {
    from {
        opacity: 0;
        transform: translateY(8px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes spin-b-qz0okz676o {
    to {
        transform: rotate(360deg);
    }
}

@media (prefers-reduced-motion: reduce) {
    *[b-qz0okz676o],
    *[b-qz0okz676o]::before,
    *[b-qz0okz676o]::after {
        scroll-behavior: auto !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1180px) {
    .case-content[b-qz0okz676o] {
        grid-template-columns: minmax(0, 1fr) 310px;
    }

    .case-detail-page[b-qz0okz676o] {
        padding-right: 22px;
        padding-left: 22px;
    }
}

@media (max-width: 980px) {
    .case-content[b-qz0okz676o] {
        grid-template-columns: minmax(0, 1fr);
    }

    .case-side-column[b-qz0okz676o] {
        position: static;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ai-card[b-qz0okz676o] {
        grid-column: 1 / -1;
    }
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 720px) {
    .case-detail-page[b-qz0okz676o] {
        min-height: 100vh;
        padding: 12px 12px 32px;
        background: #f5f7fa;
    }

        .case-detail-page[b-qz0okz676o]::before {
            display: none;
        }

    .case-header[b-qz0okz676o] {
        margin-bottom: 12px;
        padding: 16px;
        border-radius: 17px;
    }

        .case-header[b-qz0okz676o]::after {
            width: 3px;
        }

    .case-header-top[b-qz0okz676o] {
        align-items: stretch;
        flex-direction: column;
        gap: 12px;
        padding-bottom: 15px;
    }

    .back-button[b-qz0okz676o] {
        align-self: flex-start;
    }

    .header-actions[b-qz0okz676o] {
        display: grid;
        grid-template-columns: 38px 1fr 1fr;
        width: 100%;
    }

    .secondary-button[b-qz0okz676o],
    .danger-button[b-qz0okz676o] {
        width: 100%;
    }

    .case-heading[b-qz0okz676o] {
        padding-top: 18px;
    }

        .case-heading h1[b-qz0okz676o] {
            font-size: 27px;
            line-height: 1.23;
        }

    .case-meta[b-qz0okz676o] {
        gap: 7px;
        font-size: 11px;
    }

    .case-content[b-qz0okz676o] {
        gap: 12px;
    }

    .case-main-column[b-qz0okz676o],
    .case-side-column[b-qz0okz676o] {
        gap: 12px;
    }

    .case-side-column[b-qz0okz676o] {
        display: flex;
    }

    .content-card[b-qz0okz676o],
    .side-card[b-qz0okz676o] {
        border-radius: 17px;
    }

    .content-card[b-qz0okz676o] {
        padding: 17px;
    }

    .side-card[b-qz0okz676o] {
        padding: 17px;
    }

    .section-header[b-qz0okz676o],
    .side-card-heading[b-qz0okz676o] {
        margin-bottom: 17px;
    }

        .section-header h2[b-qz0okz676o] {
            font-size: 19px;
        }

    .detail-section[b-qz0okz676o] {
        padding: 17px;
        border-radius: 14px;
    }

    .detail-section-header[b-qz0okz676o] {
        gap: 10px;
        margin-bottom: 13px;
    }

    .detail-number[b-qz0okz676o] {
        width: 33px;
        height: 33px;
    }

    .detail-section h3[b-qz0okz676o] {
        font-size: 17px;
    }

    .detail-body[b-qz0okz676o] {
        padding-left: 0;
        font-size: 13px;
        line-height: 1.75;
    }

    .photo-grid[b-qz0okz676o] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .photo-info[b-qz0okz676o] {
        padding: 9px 10px;
    }

    .photo-name[b-qz0okz676o] {
        font-size: 11px;
    }

    .photo-overlay[b-qz0okz676o] {
        display: none;
    }

    .upload-label[b-qz0okz676o] {
        min-height: 74px;
        padding: 13px;
    }

    .upload-icon[b-qz0okz676o] {
        width: 40px;
        height: 40px;
    }

    .upload-copy small[b-qz0okz676o] {
        font-size: 10px;
    }

    .history-header[b-qz0okz676o] {
        flex-direction: column;
        gap: 9px;
    }

        .history-header time[b-qz0okz676o] {
            padding-left: 44px;
        }

    .history-comparison[b-qz0okz676o] {
        grid-template-columns: minmax(0, 1fr);
    }

    .history-arrow[b-qz0okz676o] {
        height: 22px;
        transform: rotate(90deg);
    }

    .information-row[b-qz0okz676o] {
        grid-template-columns: 84px minmax(0, 1fr);
    }
}

@media (max-width: 460px) {
    .case-header[b-qz0okz676o] {
        padding: 14px;
    }

    .header-actions[b-qz0okz676o] {
        grid-template-columns: 38px 1fr;
    }

    .danger-button[b-qz0okz676o] {
        grid-column: 1 / -1;
    }

    .case-eyebrow[b-qz0okz676o] {
        gap: 6px;
    }

    .equipment-name[b-qz0okz676o] {
        max-width: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .case-heading h1[b-qz0okz676o] {
        font-size: 24px;
    }

    .tag-list[b-qz0okz676o] {
        gap: 6px;
    }

    .tag-chip[b-qz0okz676o] {
        min-height: 26px;
        padding: 0 9px;
        font-size: 11px;
    }

    .photo-grid[b-qz0okz676o] {
        grid-template-columns: minmax(0, 1fr);
    }

    .photo-image-wrap[b-qz0okz676o] {
        aspect-ratio: 16 / 10;
    }

    .section-empty-state[b-qz0okz676o] {
        min-height: 150px;
        padding: 22px 15px;
    }

    .history-item[b-qz0okz676o] {
        grid-template-columns: 13px minmax(0, 1fr);
        gap: 9px;
    }

    .history-timeline[b-qz0okz676o]::before {
        left: 6px;
    }

    .history-marker[b-qz0okz676o] {
        width: 13px;
        height: 13px;
        border-width: 3px;
    }

    .history-card[b-qz0okz676o] {
        padding: 13px;
    }

    .information-row[b-qz0okz676o] {
        grid-template-columns: 75px minmax(0, 1fr);
    }
}
/* /Components/Pages/EquipmentCreate.razor.rz.scp.css */
.create-page[b-b64izzhpcf] {
    display: flex;
    justify-content: center;
    padding: 40px;
}

.create-card[b-b64izzhpcf] {
    width: 700px;
    background: white;
    border-radius: 28px;
    padding: 40px;
    box-shadow: 0 20px 50px rgba(15,23,42,.08);
}

.page-title[b-b64izzhpcf] {
    display: flex;
    gap: 20px;
    align-items: center;
    margin-bottom: 35px;
}

.page-icon[b-b64izzhpcf] {
    width: 70px;
    height: 70px;
    border-radius: 20px;
    background: #0891b2;
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 34px;
}

.page-title h1[b-b64izzhpcf] {
    margin: 0;
    font-size: 36px;
    font-weight: 800;
}

.page-title p[b-b64izzhpcf] {
    margin-top: 8px;
    color: #64748b;
}

.form-group[b-b64izzhpcf] {
    margin-bottom: 24px;
}

    .form-group label[b-b64izzhpcf] {
        display: block;
        margin-bottom: 8px;
        font-weight: 700;
        color: #334155;
    }

.form-control[b-b64izzhpcf] {
    width: 100%;
    border-radius: 14px;
    border: 1px solid #dbe3ee;
    padding: 14px 18px;
    font-size: 16px;
}

    .form-control:focus[b-b64izzhpcf] {
        outline: none;
        border-color: #0891b2;
        box-shadow: 0 0 0 4px rgba(8,145,178,.15);
    }

textarea[b-b64izzhpcf] {
    resize: vertical;
}

.button-group[b-b64izzhpcf] {
    display: flex;
    gap: 14px;
    margin-top: 35px;
}

.save-btn[b-b64izzhpcf] {
    flex: 1;
    height: 52px;
    border: none;
    border-radius: 14px;
    background: #0891b2;
    color: white;
    font-weight: 700;
    transition: .2s;
    cursor: pointer;
}

    .save-btn:hover[b-b64izzhpcf] {
        background: #0e7490;
    }

.cancel-btn[b-b64izzhpcf] {
    width: 140px;
    border: none;
    border-radius: 14px;
    background: #e5e7eb;
    font-weight: 700;
    cursor: pointer;
}

    .cancel-btn:hover[b-b64izzhpcf] {
        background: #cbd5e1;
    }

.message[b-b64izzhpcf] {
    margin-top: 20px;
    color: #ef4444;
    font-weight: 600;
}
/* /Components/Pages/EquipmentPage.razor.rz.scp.css */
:host[b-v2sq9n3rtb] {
    display: block;
    min-height: 100%;
}

.equipment-page[b-v2sq9n3rtb] {
    min-height: 100%;
    padding: 52px 48px 72px;
    background: #f7f8fa;
    color: #172033;
}

.equipment-container[b-v2sq9n3rtb] {
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
}

/* Header */

.page-header[b-v2sq9n3rtb] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 32px;
    margin-bottom: 30px;
}

.page-heading[b-v2sq9n3rtb] {
    min-width: 0;
}

.page-kicker[b-v2sq9n3rtb] {
    display: block;
    margin-bottom: 8px;
    color: #64748b;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.page-heading h1[b-v2sq9n3rtb] {
    margin: 0;
    color: #111827;
    font-size: 30px;
    font-weight: 750;
    line-height: 1.25;
    letter-spacing: -0.035em;
}

.page-heading p[b-v2sq9n3rtb] {
    margin: 9px 0 0;
    color: #667085;
    font-size: 14px;
    line-height: 1.6;
}

.create-button[b-v2sq9n3rtb] {
    flex: 0 0 auto;
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 16px;
    border: 1px solid #1d4ed8;
    border-radius: 10px;
    background: #2563eb;
    color: #ffffff;
    font-family: inherit;
    font-size: 14px;
    font-weight: 650;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 1px 2px rgba(16, 24, 40, 0.08);
    transition: background-color 150ms ease, border-color 150ms ease, box-shadow 150ms ease, transform 150ms ease;
}

    .create-button svg[b-v2sq9n3rtb] {
        width: 17px;
        height: 17px;
    }

    .create-button:hover[b-v2sq9n3rtb] {
        border-color: #1e40af;
        background: #1d4ed8;
        box-shadow: 0 5px 14px rgba(37, 99, 235, 0.2);
        transform: translateY(-1px);
    }

    .create-button:active[b-v2sq9n3rtb] {
        transform: translateY(0);
    }

    .create-button:focus-visible[b-v2sq9n3rtb] {
        outline: 3px solid rgba(37, 99, 235, 0.2);
        outline-offset: 2px;
    }

/* Toolbar */

.equipment-toolbar[b-v2sq9n3rtb] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 16px;
}

.search-box[b-v2sq9n3rtb] {
    position: relative;
    width: min(100%, 520px);
}

    .search-box input[b-v2sq9n3rtb] {
        width: 100%;
        height: 44px;
        padding: 0 44px 0 42px;
        border: 1px solid #d9e0e8;
        border-radius: 10px;
        background: #ffffff;
        color: #172033;
        font-family: inherit;
        font-size: 14px;
        outline: none;
        box-shadow: 0 1px 2px rgba(16, 24, 40, 0.02);
        transition: border-color 150ms ease, box-shadow 150ms ease, background-color 150ms ease;
    }

        .search-box input[b-v2sq9n3rtb]::placeholder {
            color: #98a2b3;
        }

        .search-box input:hover[b-v2sq9n3rtb] {
            border-color: #c6ced9;
        }

        .search-box input:focus[b-v2sq9n3rtb] {
            border-color: #85a8f8;
            box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
        }

        .search-box input[b-v2sq9n3rtb]::-webkit-search-cancel-button {
            display: none;
        }

.search-icon[b-v2sq9n3rtb] {
    position: absolute;
    top: 50%;
    left: 15px;
    width: 17px;
    height: 17px;
    color: #98a2b3;
    pointer-events: none;
    transform: translateY(-50%);
}

.clear-button[b-v2sq9n3rtb] {
    position: absolute;
    top: 50%;
    right: 10px;
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 0;
    border-radius: 7px;
    background: transparent;
    color: #98a2b3;
    cursor: pointer;
    transform: translateY(-50%);
    transition: color 150ms ease, background-color 150ms ease;
}

    .clear-button svg[b-v2sq9n3rtb] {
        width: 15px;
        height: 15px;
    }

    .clear-button:hover[b-v2sq9n3rtb] {
        background: #f2f4f7;
        color: #344054;
    }

    .clear-button:focus-visible[b-v2sq9n3rtb] {
        outline: 2px solid rgba(37, 99, 235, 0.25);
    }

.equipment-count[b-v2sq9n3rtb] {
    flex: 0 0 auto;
    display: flex;
    align-items: baseline;
    gap: 5px;
    color: #667085;
    white-space: nowrap;
    font-size: 13px;
}

    .equipment-count strong[b-v2sq9n3rtb] {
        color: #172033;
        font-size: 18px;
        font-weight: 700;
    }

/* Equipment list */

.equipment-list[b-v2sq9n3rtb] {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid #e1e6ed;
    border-radius: 14px;
    background: #ffffff;
    box-shadow: 0 1px 3px rgba(16, 24, 40, 0.03);
}

.equipment-item[b-v2sq9n3rtb] {
    position: relative;
    min-height: 118px;
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr) auto;
    align-items: center;
    gap: 18px;
    padding: 19px 22px;
    background: #ffffff;
    cursor: pointer;
    outline: none;
    transition: background-color 140ms ease, box-shadow 140ms ease;
}

    .equipment-item:not(:last-child)[b-v2sq9n3rtb] {
        border-bottom: 1px solid #edf0f4;
    }

    .equipment-item:hover[b-v2sq9n3rtb] {
        z-index: 1;
        background: #fafbfc;
    }

    .equipment-item:focus-visible[b-v2sq9n3rtb] {
        z-index: 2;
        box-shadow: inset 0 0 0 2px #80a6ff;
    }

.equipment-icon[b-v2sq9n3rtb] {
    width: 46px;
    height: 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #dbe5f4;
    border-radius: 12px;
    background: #f2f6fc;
    color: #31547f;
}

    .equipment-icon svg[b-v2sq9n3rtb] {
        width: 22px;
        height: 22px;
    }

.equipment-main[b-v2sq9n3rtb] {
    min-width: 0;
}

.equipment-project[b-v2sq9n3rtb] {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 5px;
    color: #667085;
    font-size: 12px;
    font-weight: 550;
    line-height: 1.3;
}

    .equipment-project span:last-child[b-v2sq9n3rtb] {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

.project-dot[b-v2sq9n3rtb] {
    flex: 0 0 auto;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #5986da;
}

.equipment-title-row[b-v2sq9n3rtb] {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 10px;
}

    .equipment-title-row h2[b-v2sq9n3rtb] {
        min-width: 0;
        overflow: hidden;
        margin: 0;
        color: #172033;
        font-size: 16px;
        font-weight: 700;
        line-height: 1.4;
        letter-spacing: -0.015em;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

.equipment-type[b-v2sq9n3rtb] {
    flex: 0 0 auto;
    max-width: 180px;
    overflow: hidden;
    padding: 3px 8px;
    border: 1px solid #dde6f3;
    border-radius: 6px;
    background: #f5f8fc;
    color: #49627f;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.equipment-description[b-v2sq9n3rtb] {
    overflow: hidden;
    margin: 6px 0 0;
    color: #667085;
    font-size: 13px;
    line-height: 1.45;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.empty-description[b-v2sq9n3rtb] {
    color: #a0a8b5;
}

.equipment-meta[b-v2sq9n3rtb] {
    display: grid;
    grid-template-columns: 66px 104px 22px;
    align-items: center;
    gap: 18px;
    padding-left: 22px;
    border-left: 1px solid #edf0f4;
}

.meta-item[b-v2sq9n3rtb] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    color: #344054;
    font-size: 13px;
    line-height: 1.3;
    white-space: nowrap;
}

.meta-label[b-v2sq9n3rtb] {
    color: #98a2b3;
    font-size: 11px;
    font-weight: 500;
}

.meta-item strong[b-v2sq9n3rtb] {
    color: #172033;
    font-size: 15px;
    font-weight: 700;
}

.equipment-arrow[b-v2sq9n3rtb] {
    width: 18px;
    height: 18px;
    color: #a7b0bd;
    transition: color 150ms ease, transform 150ms ease;
}

.equipment-item:hover .equipment-arrow[b-v2sq9n3rtb] {
    color: #5274a5;
    transform: translateX(2px);
}

/* Empty and error state */

.empty-state[b-v2sq9n3rtb] {
    min-height: 340px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 48px 24px;
    border: 1px solid #e1e6ed;
    border-radius: 14px;
    background: #ffffff;
    text-align: center;
    box-shadow: 0 1px 3px rgba(16, 24, 40, 0.03);
}

.empty-icon[b-v2sq9n3rtb] {
    width: 54px;
    height: 54px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 17px;
    border: 1px solid #dce5f1;
    border-radius: 15px;
    background: #f4f7fb;
    color: #5274a5;
}

    .empty-icon.error[b-v2sq9n3rtb] {
        border-color: #f2d7d7;
        background: #fdf5f5;
        color: #c95757;
    }

    .empty-icon svg[b-v2sq9n3rtb] {
        width: 27px;
        height: 27px;
    }

.empty-state h2[b-v2sq9n3rtb] {
    margin: 0;
    color: #172033;
    font-size: 17px;
    font-weight: 700;
    letter-spacing: -0.015em;
}

.empty-state p[b-v2sq9n3rtb] {
    margin: 8px 0 0;
    color: #667085;
    font-size: 13px;
    line-height: 1.5;
}

.primary-button[b-v2sq9n3rtb],
.secondary-button[b-v2sq9n3rtb] {
    min-height: 39px;
    margin-top: 20px;
    padding: 0 15px;
    border-radius: 9px;
    font-family: inherit;
    font-size: 13px;
    font-weight: 650;
    cursor: pointer;
    transition: background-color 150ms ease, border-color 150ms ease, box-shadow 150ms ease;
}

.primary-button[b-v2sq9n3rtb] {
    border: 1px solid #1d4ed8;
    background: #2563eb;
    color: #ffffff;
}

    .primary-button:hover[b-v2sq9n3rtb] {
        border-color: #1e40af;
        background: #1d4ed8;
    }

.secondary-button[b-v2sq9n3rtb] {
    border: 1px solid #d4dae3;
    background: #ffffff;
    color: #344054;
}

    .secondary-button:hover[b-v2sq9n3rtb] {
        border-color: #bdc6d2;
        background: #f8fafc;
    }

    .primary-button:focus-visible[b-v2sq9n3rtb],
    .secondary-button:focus-visible[b-v2sq9n3rtb] {
        outline: 3px solid rgba(37, 99, 235, 0.16);
        outline-offset: 2px;
    }

/* Skeleton */

.equipment-skeleton[b-v2sq9n3rtb] {
    min-height: 118px;
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr) 210px;
    align-items: center;
    gap: 18px;
    padding: 19px 22px;
}

    .equipment-skeleton:not(:last-child)[b-v2sq9n3rtb] {
        border-bottom: 1px solid #edf0f4;
    }

.skeleton-icon[b-v2sq9n3rtb] {
    width: 46px;
    height: 46px;
    border-radius: 12px;
    background: #edf1f5;
    animation: skeleton-pulse-b-v2sq9n3rtb 1.4s ease-in-out infinite;
}

.skeleton-content[b-v2sq9n3rtb] {
    min-width: 0;
}

.skeleton-line[b-v2sq9n3rtb],
.skeleton-meta[b-v2sq9n3rtb] {
    border-radius: 6px;
    background: #edf1f5;
    animation: skeleton-pulse-b-v2sq9n3rtb 1.4s ease-in-out infinite;
}

.skeleton-project[b-v2sq9n3rtb] {
    width: 105px;
    height: 9px;
    margin-bottom: 9px;
}

.skeleton-title[b-v2sq9n3rtb] {
    width: 220px;
    max-width: 65%;
    height: 15px;
    margin-bottom: 9px;
}

.skeleton-description[b-v2sq9n3rtb] {
    width: 360px;
    max-width: 88%;
    height: 10px;
}

.skeleton-meta[b-v2sq9n3rtb] {
    width: 190px;
    height: 38px;
}

@keyframes skeleton-pulse-b-v2sq9n3rtb {
    0%, 100% {
        opacity: 0.65;
    }

    50% {
        opacity: 1;
    }
}

/* Responsive */

@media (max-width: 900px) {
    .equipment-page[b-v2sq9n3rtb] {
        padding: 36px 26px 56px;
    }

    .equipment-item[b-v2sq9n3rtb] {
        grid-template-columns: 44px minmax(0, 1fr) auto;
        gap: 15px;
        padding: 18px;
    }

    .equipment-meta[b-v2sq9n3rtb] {
        grid-template-columns: 58px 20px;
        gap: 12px;
        padding-left: 16px;
    }

    .date-meta[b-v2sq9n3rtb] {
        display: none;
    }

    .equipment-skeleton[b-v2sq9n3rtb] {
        grid-template-columns: 44px minmax(0, 1fr) 70px;
        padding: 18px;
    }

    .skeleton-meta[b-v2sq9n3rtb] {
        width: 60px;
    }
}

@media (max-width: 640px) {
    .equipment-page[b-v2sq9n3rtb] {
        padding: 24px 16px 42px;
    }

    .page-header[b-v2sq9n3rtb] {
        align-items: center;
        gap: 16px;
        margin-bottom: 24px;
    }

    .page-heading h1[b-v2sq9n3rtb] {
        font-size: 25px;
    }

    .page-heading p[b-v2sq9n3rtb] {
        display: none;
    }

    .create-button[b-v2sq9n3rtb] {
        min-height: 40px;
        padding: 0 13px;
    }

    .equipment-toolbar[b-v2sq9n3rtb] {
        align-items: stretch;
        flex-direction: column;
        gap: 11px;
    }

    .search-box[b-v2sq9n3rtb] {
        width: 100%;
    }

    .equipment-count[b-v2sq9n3rtb] {
        justify-content: flex-end;
        padding-right: 2px;
    }

    .equipment-list[b-v2sq9n3rtb] {
        border-radius: 12px;
    }

    .equipment-item[b-v2sq9n3rtb] {
        min-height: 108px;
        grid-template-columns: 42px minmax(0, 1fr) 18px;
        gap: 13px;
        padding: 16px 15px;
    }

    .equipment-icon[b-v2sq9n3rtb] {
        width: 42px;
        height: 42px;
        border-radius: 11px;
    }

        .equipment-icon svg[b-v2sq9n3rtb] {
            width: 20px;
            height: 20px;
        }

    .equipment-title-row[b-v2sq9n3rtb] {
        align-items: flex-start;
        flex-direction: column;
        gap: 5px;
    }

        .equipment-title-row h2[b-v2sq9n3rtb] {
            width: 100%;
            font-size: 15px;
        }

    .equipment-type[b-v2sq9n3rtb] {
        max-width: 150px;
    }

    .equipment-description[b-v2sq9n3rtb] {
        margin-top: 5px;
        font-size: 12px;
    }

    .equipment-meta[b-v2sq9n3rtb] {
        display: block;
        padding: 0;
        border: 0;
    }

    .meta-item[b-v2sq9n3rtb] {
        display: none;
    }

    .equipment-arrow[b-v2sq9n3rtb] {
        width: 17px;
        height: 17px;
    }

    .equipment-skeleton[b-v2sq9n3rtb] {
        min-height: 108px;
        grid-template-columns: 42px minmax(0, 1fr);
        padding: 16px 15px;
    }

    .skeleton-icon[b-v2sq9n3rtb] {
        width: 42px;
        height: 42px;
    }

    .skeleton-meta[b-v2sq9n3rtb] {
        display: none;
    }

    .empty-state[b-v2sq9n3rtb] {
        min-height: 300px;
    }
}

@media (max-width: 420px) {
    .page-kicker[b-v2sq9n3rtb] {
        display: none;
    }

    .page-header[b-v2sq9n3rtb] {
        align-items: flex-start;
        flex-direction: column;
    }

    .create-button[b-v2sq9n3rtb] {
        width: 100%;
    }

    .equipment-project[b-v2sq9n3rtb] {
        max-width: 100%;
    }
}
/* /Components/Pages/Equipments.razor.rz.scp.css */
.equipment-detail[b-qfpdxb7myn] {
    display: flex;
    flex-direction: column;
    gap: 26px;
}

.detail-header[b-qfpdxb7myn] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.detail-title[b-qfpdxb7myn] {
    display: flex;
    gap: 20px;
    align-items: center;
}

.icon[b-qfpdxb7myn] {
    width: 72px;
    height: 72px;
    border-radius: 20px;
    background: #eff6ff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 34px;
}

.detail-title h1[b-qfpdxb7myn] {
    margin: 0;
    font-size: 36px;
    font-weight: 900;
}

.detail-title span[b-qfpdxb7myn] {
    color: #64748b;
}

.detail-meta[b-qfpdxb7myn] {
    margin-top: 15px;
    display: flex;
    gap: 18px;
    color: #64748b;
}

.new-case-btn[b-qfpdxb7myn] {
    display: flex;
    gap: 8px;
    align-items: center;
    text-decoration: none;
    padding: 14px 24px;
    background: #2563eb;
    color: white;
    border-radius: 14px;
    font-weight: 700;
    transition: .2s;
}

    .new-case-btn:hover[b-qfpdxb7myn] {
        color: white;
        background: #1d4ed8;
        transform: translateY(-2px);
    }

.info-card[b-qfpdxb7myn] {
    background: white;
    border-radius: 22px;
    padding: 26px;
    border: 1px solid #e5e7eb;
    box-shadow: 0 12px 28px rgba(0,0,0,.05);
}

.info-title[b-qfpdxb7myn] {
    font-size: 18px;
    font-weight: 800;
    margin-bottom: 16px;
}

.info-body[b-qfpdxb7myn] {
    white-space: pre-wrap;
    line-height: 1.8;
    color: #475569;
}

.case-section[b-qfpdxb7myn] {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.section-title[b-qfpdxb7myn] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 24px;
    font-weight: 800;
}

    .section-title span[b-qfpdxb7myn] {
        font-size: 14px;
        color: #64748b;
    }

.case-grid[b-qfpdxb7myn] {
    display: grid;
    grid-template-columns: repeat(auto-fill,minmax(330px,1fr));
    gap: 20px;
}

.case-card[b-qfpdxb7myn] {
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 20px;
    padding: 22px;
    cursor: pointer;
    transition: .2s;
    box-shadow: 0 8px 22px rgba(0,0,0,.05);
}

    .case-card:hover[b-qfpdxb7myn] {
        transform: translateY(-4px);
        box-shadow: 0 16px 32px rgba(0,0,0,.08);
    }

.case-top[b-qfpdxb7myn] {
    display: flex;
    justify-content: space-between;
    gap: 10px;
}

    .case-top h4[b-qfpdxb7myn] {
        margin: 0;
        font-size: 20px;
        font-weight: 800;
    }

.case-date[b-qfpdxb7myn] {
    margin-top: 12px;
    color: #94a3b8;
    font-size: 13px;
}

.case-card p[b-qfpdxb7myn] {
    margin: 18px 0;
    color: #475569;
    line-height: 1.6;
}

.tags[b-qfpdxb7myn] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

    .tags span[b-qfpdxb7myn] {
        background: #eff6ff;
        color: #2563eb;
        border-radius: 999px;
        padding: 5px 10px;
        font-size: 12px;
        font-weight: 700;
    }

.empty-box[b-qfpdxb7myn] {
    background: white;
    border-radius: 20px;
    padding: 80px;
    text-align: center;
    color: #94a3b8;
}

.detail-empty[b-qfpdxb7myn] {
    min-height: 500px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: #94a3b8;
}
/* /Components/Pages/Home.razor.rz.scp.css */
/* =========================================================
   FabKnow Dashboard v4
========================================================= */

.dash[b-k4ie88ce3d] {
    display: flex;
    flex-direction: column;
    gap: 28px;
    animation: pageIn-b-k4ie88ce3d .22s ease;
}

/* Header */

.dash-head[b-k4ie88ce3d] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
}

    .dash-head h1[b-k4ie88ce3d] {
        margin: 0;
        font-size: 42px;
        font-weight: 900;
        letter-spacing: -1.4px;
        color: #0f172a;
    }

    .dash-head p[b-k4ie88ce3d] {
        margin: 10px 0 0;
        color: #64748b;
        font-size: 15px;
        font-weight: 600;
    }

.dash-status[b-k4ie88ce3d] {
    height: 44px;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 0 18px;
    border-radius: 999px;
    background: #ffffff;
    border: 1px solid #e5eaf2;
    color: #0f172a;
    font-size: 14px;
    font-weight: 800;
    box-shadow: 0 10px 28px rgba(15, 23, 42, .06);
}

    .dash-status span[b-k4ie88ce3d] {
        width: 10px;
        height: 10px;
        border-radius: 50%;
        background: #10b981;
        box-shadow: 0 0 12px rgba(16,185,129,.75);
    }

/* KPI */

.kpi-grid[b-k4ie88ce3d] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
}

.kpi-card[b-k4ie88ce3d] {
    position: relative;
    min-height: 158px;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 28px;
    padding: 28px;
    overflow: hidden;
    color: white;
    cursor: pointer;
    box-shadow: 0 22px 50px rgba(15, 23, 42, .13);
    transition: transform .2s ease, box-shadow .2s ease;
}

    .kpi-card:hover[b-k4ie88ce3d] {
        transform: translateY(-6px);
        box-shadow: 0 30px 70px rgba(15, 23, 42, .20);
    }

    .kpi-card[b-k4ie88ce3d]::after {
        content: "";
        position: absolute;
        right: -36px;
        top: -36px;
        width: 130px;
        height: 130px;
        border-radius: 50%;
        background: rgba(255,255,255,.13);
    }

.kpi-blue[b-k4ie88ce3d] {
    background: linear-gradient(135deg, #2563eb, #1d4ed8);
}

.kpi-slate[b-k4ie88ce3d] {
    background: linear-gradient(135deg, #475569, #273449);
}

.kpi-cyan[b-k4ie88ce3d] {
    background: linear-gradient(135deg, #0891b2, #0e7490);
}

.kpi-indigo[b-k4ie88ce3d] {
    background: linear-gradient(135deg, #4f46e5, #4338ca);
}

.kpi-value[b-k4ie88ce3d] {
    position: relative;
    z-index: 1;
    font-size: 58px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: -1.5px;
}

.kpi-label[b-k4ie88ce3d] {
    position: relative;
    z-index: 1;
    margin-top: 18px;
    font-size: 13px;
    letter-spacing: 2px;
    font-weight: 900;
}

.kpi-sub[b-k4ie88ce3d] {
    position: relative;
    z-index: 1;
    margin-top: 6px;
    font-size: 13px;
    opacity: .78;
    font-weight: 600;
}

.kpi-icon[b-k4ie88ce3d] {
    position: absolute;
    right: 26px;
    bottom: 20px;
    z-index: 1;
}

    .kpi-icon i[b-k4ie88ce3d] {
        font-size: 54px;
        opacity: .22;
    }

/* Main Grid */

.dash-grid[b-k4ie88ce3d] {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(320px, .9fr);
    gap: 24px;
    align-items: start;
}

/* Panels */

.panel[b-k4ie88ce3d] {
    background: rgba(255,255,255,.92);
    border: 1px solid #e5eaf2;
    border-radius: 28px;
    overflow: hidden;
    box-shadow: 0 18px 44px rgba(15, 23, 42, .07);
}

.panel-head[b-k4ie88ce3d] {
    height: 74px;
    padding: 0 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #eef2f7;
}

    .panel-head h2[b-k4ie88ce3d] {
        margin: 0;
        display: flex;
        align-items: center;
        gap: 10px;
        color: #0f172a;
        font-size: 20px;
        font-weight: 900;
        letter-spacing: -.4px;
    }

    .panel-head a[b-k4ie88ce3d] {
        color: #2563eb;
        text-decoration: none;
        font-size: 13px;
        font-weight: 900;
    }

        .panel-head a:hover[b-k4ie88ce3d] {
            color: #1d4ed8;
        }

.recent-panel[b-k4ie88ce3d],
.today-panel[b-k4ie88ce3d] {
    min-height: 430px;
}

.project-panel[b-k4ie88ce3d],
.quick-panel[b-k4ie88ce3d] {
    margin-top: 24px;
}

/* Empty */

.empty[b-k4ie88ce3d] {
    height: 230px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 14px;
    color: #94a3b8;
}

    .empty i[b-k4ie88ce3d] {
        font-size: 52px;
    }

/* Recent Cases */

.case-list[b-k4ie88ce3d] {
    display: flex;
    flex-direction: column;
}

.case-row[b-k4ie88ce3d] {
    display: grid;
    grid-template-columns: 14px minmax(0, 1fr) 130px;
    gap: 18px;
    align-items: center;
    min-height: 90px;
    padding: 18px 26px;
    color: #111827;
    text-decoration: none;
    border-bottom: 1px solid #eef2f7;
    transition: .18s ease;
}

    .case-row:hover[b-k4ie88ce3d] {
        background: #f8fafc;
    }

.case-dot[b-k4ie88ce3d] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #2563eb;
    box-shadow: 0 0 0 6px rgba(37,99,235,.10);
}

.case-main[b-k4ie88ce3d] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 9px;
}

.case-title[b-k4ie88ce3d] {
    color: #0f172a;
    font-size: 15px;
    font-weight: 900;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.case-tags[b-k4ie88ce3d] {
    display: flex;
    gap: 7px;
    flex-wrap: wrap;
}

    .case-tags span[b-k4ie88ce3d] {
        padding: 4px 10px;
        border-radius: 999px;
        background: #eff6ff;
        color: #2563eb;
        font-size: 11px;
        font-weight: 800;
    }

.case-date[b-k4ie88ce3d] {
    text-align: right;
    color: #94a3b8;
    font-size: 13px;
    font-weight: 800;
}

/* Today */

.today-list[b-k4ie88ce3d] {
    padding: 18px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.today-row[b-k4ie88ce3d] {
    min-height: 70px;
    padding: 14px 16px;
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    transition: .18s ease;
}

    .today-row:hover[b-k4ie88ce3d] {
        background: #f8fafc;
    }

.today-left[b-k4ie88ce3d] {
    display: flex;
    align-items: center;
    gap: 14px;
    color: #0f172a;
    font-size: 14px;
    font-weight: 800;
}

.today-row b[b-k4ie88ce3d] {
    color: #0f172a;
    font-size: 22px;
    font-weight: 900;
}

.today-icon[b-k4ie88ce3d] {
    width: 46px;
    height: 46px;
    border-radius: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
}

    .today-icon i[b-k4ie88ce3d] {
        font-size: 19px;
    }

.blue-soft[b-k4ie88ce3d] {
    background: #e8f0ff;
    color: #2563eb;
}

.green-soft[b-k4ie88ce3d] {
    background: #ecfdf5;
    color: #10b981;
}

.yellow-soft[b-k4ie88ce3d] {
    background: #fef3c7;
    color: #d97706;
}

.purple-soft[b-k4ie88ce3d] {
    background: #f3e8ff;
    color: #7c3aed;
}

.cyan-soft[b-k4ie88ce3d] {
    background: #ecfeff;
    color: #0891b2;
}

/* Projects */

.project-list[b-k4ie88ce3d] {
    display: flex;
    flex-direction: column;
}

.project-row[b-k4ie88ce3d] {
    padding: 20px 26px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    text-decoration: none;
    color: inherit;
    border-bottom: 1px solid #eef2f7;
    transition: .18s ease;
}

    .project-row:hover[b-k4ie88ce3d] {
        background: #f8fafc;
    }

.project-main[b-k4ie88ce3d] {
    min-width: 190px;
}

.project-name[b-k4ie88ce3d] {
    color: #0f172a;
    font-size: 15px;
    font-weight: 900;
}

.project-customer[b-k4ie88ce3d] {
    margin-top: 6px;
    color: #94a3b8;
    font-size: 13px;
    font-weight: 700;
}

.project-progress[b-k4ie88ce3d] {
    flex: 1;
}

.progress-top[b-k4ie88ce3d] {
    display: flex;
    justify-content: space-between;
    margin-bottom: 8px;
    color: #64748b;
    font-size: 12px;
    font-weight: 800;
}

.progress-track[b-k4ie88ce3d] {
    height: 9px;
    border-radius: 999px;
    background: #e5e7eb;
    overflow: hidden;
}

.progress-fill[b-k4ie88ce3d] {
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #2563eb, #1d4ed8);
}

/* Quick */

.quick-list[b-k4ie88ce3d] {
    padding: 18px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.quick-row[b-k4ie88ce3d] {
    min-height: 74px;
    padding: 14px 16px;
    display: flex;
    align-items: center;
    gap: 16px;
    border-radius: 20px;
    text-decoration: none;
    color: #111827;
    transition: .18s ease;
}

    .quick-row:hover[b-k4ie88ce3d] {
        background: #f8fafc;
        transform: translateX(4px);
    }

.quick-icon[b-k4ie88ce3d] {
    width: 48px;
    height: 48px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
}

    .quick-icon i[b-k4ie88ce3d] {
        font-size: 20px;
    }

.quick-title[b-k4ie88ce3d] {
    font-size: 14px;
    font-weight: 900;
}

.quick-sub[b-k4ie88ce3d] {
    margin-top: 4px;
    color: #94a3b8;
    font-size: 12px;
    font-weight: 700;
}

.quick-arrow[b-k4ie88ce3d] {
    margin-left: auto;
    color: #94a3b8;
}

/* Animations */

@keyframes pageIn-b-k4ie88ce3d {
    from {
        opacity: 0;
        transform: translateY(8px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Responsive */

@media (max-width: 1200px) {
    .kpi-grid[b-k4ie88ce3d] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .dash-grid[b-k4ie88ce3d] {
        grid-template-columns: 1fr;
    }

    .project-panel[b-k4ie88ce3d],
    .quick-panel[b-k4ie88ce3d] {
        margin-top: 0;
    }
}

@media (max-width: 768px) {
    .dash[b-k4ie88ce3d] {
        gap: 20px;
    }

    .dash-head[b-k4ie88ce3d] {
        align-items: flex-start;
        flex-direction: column;
    }

        .dash-head h1[b-k4ie88ce3d] {
            font-size: 34px;
        }

    .kpi-grid[b-k4ie88ce3d] {
        grid-template-columns: 1fr;
    }

    .case-row[b-k4ie88ce3d] {
        grid-template-columns: 12px 1fr;
    }

    .case-date[b-k4ie88ce3d] {
        display: none;
    }

    .project-row[b-k4ie88ce3d] {
        align-items: flex-start;
        flex-direction: column;
    }

    .dash[b-k4ie88ce3d] {
        max-width: 1700px;
        margin: 0 auto;
    }
}
/* /Components/Pages/OpProjectDetail.razor.rz.scp.css */
:host[b-nim9m8ftof] {
    display: block;
    min-height: 100%;
}

.op-detail-page[b-nim9m8ftof] {
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
    padding: 30px 32px 60px;
    box-sizing: border-box;
    overflow-x: hidden;
}

.page-toolbar[b-nim9m8ftof] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 18px;
}

.back-button[b-nim9m8ftof],
.refresh-button[b-nim9m8ftof],
.primary-button[b-nim9m8ftof],
.secondary-button[b-nim9m8ftof] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 40px;
    padding: 0 14px;
    border-radius: 11px;
    font-size: 13px;
    font-weight: 750;
    cursor: pointer;
    transition: border-color .15s ease, background .15s ease, color .15s ease, transform .15s ease;
}

.back-button[b-nim9m8ftof],
.refresh-button[b-nim9m8ftof],
.secondary-button[b-nim9m8ftof] {
    border: 1px solid #dce3ec;
    background: #fff;
    color: #536077;
}

    .back-button:hover[b-nim9m8ftof],
    .refresh-button:hover[b-nim9m8ftof],
    .secondary-button:hover[b-nim9m8ftof] {
        border-color: #b9c5d4;
        background: #f8fafc;
        color: #1f2a40;
    }

.primary-button[b-nim9m8ftof] {
    border: 1px solid #1c2940;
    background: #1c2940;
    color: #fff;
}

    .primary-button:hover[b-nim9m8ftof] {
        background: #101b2f;
        transform: translateY(-1px);
    }

.refresh-button:disabled[b-nim9m8ftof] {
    cursor: default;
    opacity: .55;
}

.project-hero[b-nim9m8ftof] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 28px;
    padding: 30px;
    border: 1px solid #e0e6ef;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 10px 36px rgba(28, 43, 70, .055);
}

.project-hero-main[b-nim9m8ftof] {
    display: flex;
    align-items: flex-start;
    min-width: 0;
    gap: 22px;
}

.project-icon[b-nim9m8ftof] {
    display: grid;
    flex: 0 0 auto;
    width: 68px;
    height: 68px;
    place-items: center;
    border-radius: 18px;
    background: #f0f4fa;
    color: #30425f;
    font-size: 31px;
    font-weight: 800;
}

.project-heading[b-nim9m8ftof] {
    min-width: 0;
}

.project-meta-line[b-nim9m8ftof] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 10px;
}

.project-type[b-nim9m8ftof] {
    color: #5d6d86;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .1em;
}

.project-status[b-nim9m8ftof] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 26px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 800;
}

    .project-status.active[b-nim9m8ftof] {
        background: #e8f7ef;
        color: #207249;
    }

    .project-status.inactive[b-nim9m8ftof] {
        background: #eef1f5;
        color: #6e798c;
    }

.status-dot[b-nim9m8ftof] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: currentColor;
}

.project-heading h1[b-nim9m8ftof] {
    margin: 0;
    color: #111b30;
    font-size: clamp(27px, 3vw, 38px);
    font-weight: 830;
    line-height: 1.2;
    letter-spacing: -.04em;
    overflow-wrap: anywhere;
}

.project-heading p[b-nim9m8ftof] {
    max-width: 820px;
    margin: 13px 0 0;
    color: #69778e;
    font-size: 14px;
    line-height: 1.7;
    white-space: pre-line;
}

.project-identity[b-nim9m8ftof] {
    flex: 0 0 auto;
    min-width: 130px;
    padding: 14px 16px;
    border: 1px solid #e3e8ef;
    border-radius: 13px;
    background: #fafbfd;
}

    .project-identity span[b-nim9m8ftof] {
        display: block;
        color: #8792a4;
        font-size: 11px;
        font-weight: 700;
    }

    .project-identity strong[b-nim9m8ftof] {
        display: block;
        margin-top: 4px;
        color: #27334a;
        font-size: 18px;
    }

.summary-grid[b-nim9m8ftof] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: 18px;
}

.summary-card[b-nim9m8ftof] {
    display: flex;
    align-items: center;
    gap: 14px;
    min-height: 94px;
    padding: 18px;
    border: 1px solid #e2e7ef;
    border-radius: 16px;
    background: #fff;
}

.summary-icon[b-nim9m8ftof] {
    display: grid;
    flex: 0 0 auto;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 12px;
    background: #f1f4f8;
    color: #455672;
    font-size: 17px;
    font-weight: 850;
}

.summary-card span[b-nim9m8ftof] {
    display: block;
    color: #8490a3;
    font-size: 11px;
    font-weight: 700;
}

.summary-card strong[b-nim9m8ftof] {
    display: block;
    margin-top: 4px;
    color: #1f2a40;
    font-size: 22px;
    font-weight: 820;
}

.project-information[b-nim9m8ftof],
.work-package-section[b-nim9m8ftof] {
    margin-top: 20px;
    padding: 24px;
    border: 1px solid #e1e7ef;
    border-radius: 18px;
    background: #fff;
}

.section-heading[b-nim9m8ftof] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
}

.section-eyebrow[b-nim9m8ftof] {
    display: block;
    margin-bottom: 5px;
    color: #8290a5;
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .12em;
}

.section-heading h2[b-nim9m8ftof] {
    margin: 0;
    color: #182238;
    font-size: 20px;
    font-weight: 820;
    letter-spacing: -.025em;
}

.section-heading p[b-nim9m8ftof] {
    margin: 6px 0 0;
    color: #818da0;
    font-size: 13px;
}

.information-grid[b-nim9m8ftof] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-top: 18px;
}

.information-item[b-nim9m8ftof] {
    min-width: 0;
    padding: 16px;
    border: 1px solid #e8ecf2;
    border-radius: 13px;
    background: #fafbfd;
}

    .information-item span[b-nim9m8ftof] {
        display: block;
        color: #8a95a6;
        font-size: 11px;
        font-weight: 700;
    }

    .information-item strong[b-nim9m8ftof] {
        display: block;
        margin-top: 7px;
        overflow: hidden;
        color: #2a354a;
        font-size: 13px;
        font-weight: 760;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

.work-package-heading[b-nim9m8ftof] {
    align-items: flex-end;
}

.work-package-tools[b-nim9m8ftof] {
    display: flex;
    align-items: center;
    gap: 9px;
}

.search-box[b-nim9m8ftof] {
    display: flex;
    align-items: center;
    width: min(390px, 36vw);
    min-height: 42px;
    padding: 0 11px;
    border: 1px solid #dce3ec;
    border-radius: 11px;
    background: #f9fafc;
}

    .search-box:focus-within[b-nim9m8ftof] {
        border-color: #869fcf;
        background: #fff;
        box-shadow: 0 0 0 4px rgba(74, 112, 183, .09);
    }

.search-icon[b-nim9m8ftof] {
    flex: 0 0 auto;
    margin-right: 8px;
    color: #8793a7;
    font-size: 18px;
}

.search-box input[b-nim9m8ftof] {
    width: 100%;
    min-width: 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: #253047;
    font-size: 13px;
}

.clear-button[b-nim9m8ftof] {
    display: grid;
    flex: 0 0 auto;
    width: 27px;
    height: 27px;
    place-items: center;
    border: 0;
    border-radius: 7px;
    background: transparent;
    color: #8a95a7;
    font-size: 18px;
    cursor: pointer;
}

    .clear-button:hover[b-nim9m8ftof] {
        background: #e9edf3;
        color: #2e394e;
    }

.status-filter[b-nim9m8ftof] {
    min-height: 42px;
    padding: 0 32px 0 12px;
    border: 1px solid #dce3ec;
    border-radius: 11px;
    outline: 0;
    background: #fff;
    color: #526077;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
}

    .status-filter:focus[b-nim9m8ftof] {
        border-color: #869fcf;
        box-shadow: 0 0 0 4px rgba(74, 112, 183, .09);
    }

.result-line[b-nim9m8ftof] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 22px 2px 11px;
    color: #8a95a7;
    font-size: 12px;
}

    .result-line div[b-nim9m8ftof] {
        display: flex;
        align-items: baseline;
        gap: 5px;
    }

    .result-line strong[b-nim9m8ftof] {
        color: #263249;
        font-size: 17px;
    }

.work-package-list[b-nim9m8ftof] {
    display: grid;
    gap: 10px;
}

.work-package-card[b-nim9m8ftof] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 230px;
    gap: 24px;
    padding: 19px;
    border: 1px solid #e4e9f0;
    border-radius: 15px;
    background: #fff;
    cursor: pointer;
    transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

    .work-package-card:hover[b-nim9m8ftof] {
        transform: translateY(-2px);
        border-color: #bec9d8;
        box-shadow: 0 10px 28px rgba(31, 45, 70, .075);
    }

    .work-package-card:focus-visible[b-nim9m8ftof] {
        outline: 3px solid rgba(71, 111, 190, .22);
        outline-offset: 2px;
    }

.work-package-main[b-nim9m8ftof] {
    display: flex;
    min-width: 0;
    gap: 15px;
}

.work-package-number[b-nim9m8ftof] {
    display: grid;
    flex: 0 0 auto;
    width: 53px;
    height: 36px;
    place-items: center;
    border-radius: 10px;
    background: #f0f3f8;
    color: #60708a;
    font-size: 11px;
    font-weight: 800;
}

.work-package-content[b-nim9m8ftof] {
    min-width: 0;
    flex: 1;
}

.work-package-title-line[b-nim9m8ftof] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

    .work-package-title-line h3[b-nim9m8ftof] {
        min-width: 0;
        margin: 0;
        color: #1e293f;
        font-size: 16px;
        font-weight: 790;
        line-height: 1.4;
        letter-spacing: -.015em;
        overflow-wrap: anywhere;
    }

.work-status[b-nim9m8ftof] {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    min-height: 25px;
    padding: 0 9px;
    border-radius: 999px;
    font-size: 10px;
    font-weight: 850;
    white-space: nowrap;
}

    .work-status.in-progress[b-nim9m8ftof] {
        background: #edf3ff;
        color: #4265a4;
    }

    .work-status.completed[b-nim9m8ftof] {
        background: #e7f7ee;
        color: #27734d;
    }

    .work-status.delayed[b-nim9m8ftof] {
        background: #fff0ec;
        color: #b44b36;
    }

.work-package-content > p[b-nim9m8ftof] {
    display: -webkit-box;
    margin: 8px 0 0;
    overflow: hidden;
    color: #768298;
    font-size: 12px;
    line-height: 1.6;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.work-package-metadata[b-nim9m8ftof] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 18px;
    margin-top: 14px;
}

    .work-package-metadata span[b-nim9m8ftof] {
        display: flex;
        align-items: baseline;
        gap: 6px;
    }

    .work-package-metadata small[b-nim9m8ftof] {
        color: #929cac;
        font-size: 10px;
        font-weight: 700;
    }

    .work-package-metadata strong[b-nim9m8ftof] {
        color: #536178;
        font-size: 11px;
        font-weight: 760;
    }

    .work-package-metadata .delay-metadata strong[b-nim9m8ftof] {
        color: #b24d39;
    }

.work-package-progress-area[b-nim9m8ftof] {
    display: flex;
    min-width: 0;
    flex-direction: column;
    justify-content: center;
    padding-left: 20px;
    border-left: 1px solid #edf0f4;
}

.progress-header[b-nim9m8ftof] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: #8290a4;
    font-size: 11px;
}

    .progress-header strong[b-nim9m8ftof] {
        color: #354158;
        font-size: 13px;
    }

.progress-track[b-nim9m8ftof] {
    height: 6px;
    margin-top: 9px;
    overflow: hidden;
    border-radius: 999px;
    background: #e9edf2;
}

.progress-value[b-nim9m8ftof] {
    height: 100%;
    border-radius: inherit;
    background: #385a94;
    transition: width .2s ease;
}

.open-arrow[b-nim9m8ftof] {
    align-self: flex-end;
    margin-top: 14px;
    color: #8591a3;
    font-size: 20px;
    transition: transform .15s ease, color .15s ease;
}

.work-package-card:hover .open-arrow[b-nim9m8ftof] {
    transform: translateX(4px);
    color: #263249;
}

.empty-panel[b-nim9m8ftof],
.state-panel[b-nim9m8ftof] {
    display: grid;
    min-height: 260px;
    padding: 32px;
    place-items: center;
    align-content: center;
    border: 1px dashed #d7dfe9;
    border-radius: 16px;
    background: #fafbfd;
    text-align: center;
}

.state-panel[b-nim9m8ftof] {
    min-height: 420px;
}

.empty-icon[b-nim9m8ftof],
.state-icon[b-nim9m8ftof] {
    display: grid;
    width: 46px;
    height: 46px;
    margin-bottom: 14px;
    place-items: center;
    border-radius: 13px;
    background: #edf1f6;
    color: #62718a;
    font-size: 20px;
    font-weight: 850;
}

.empty-panel strong[b-nim9m8ftof],
.state-panel strong[b-nim9m8ftof] {
    color: #2a354a;
    font-size: 15px;
}

.empty-panel span[b-nim9m8ftof],
.state-panel span[b-nim9m8ftof] {
    max-width: 540px;
    margin-top: 7px;
    color: #818da1;
    font-size: 13px;
    line-height: 1.6;
}

.empty-panel button[b-nim9m8ftof],
.state-panel > button[b-nim9m8ftof] {
    margin-top: 18px;
}

.state-panel.error[b-nim9m8ftof] {
    border-color: #efcfc9;
    background: #fffafa;
}

    .state-panel.error .state-icon[b-nim9m8ftof] {
        background: #ffebe7;
        color: #b84b38;
    }

.state-actions[b-nim9m8ftof] {
    display: flex;
    gap: 9px;
    margin-top: 20px;
}

.loader[b-nim9m8ftof] {
    width: 32px;
    height: 32px;
    margin-bottom: 16px;
    border: 3px solid #e1e6ed;
    border-top-color: #3f506d;
    border-radius: 50%;
    animation: spin-b-nim9m8ftof .7s linear infinite;
}

@keyframes spin-b-nim9m8ftof {
    to {
        transform: rotate(360deg);
    }
}

@media (max-width: 1050px) {
    .summary-grid[b-nim9m8ftof],
    .information-grid[b-nim9m8ftof] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .work-package-heading[b-nim9m8ftof] {
        align-items: stretch;
        flex-direction: column;
    }

    .work-package-tools[b-nim9m8ftof] {
        width: 100%;
    }

    .search-box[b-nim9m8ftof] {
        width: 100%;
    }
}

@media (max-width:760px) {

    .op-detail-page[b-nim9m8ftof] {
        width: 100%;
        max-width: 100%;
        margin: 0;
        padding: 0 0 36px;
        box-sizing: border-box;
        overflow-x: hidden;
    }

    .page-toolbar[b-nim9m8ftof] {
        margin-bottom: 12px;
    }

    .back-button[b-nim9m8ftof],
    .refresh-button[b-nim9m8ftof] {
        min-height: 38px;
    }

    .project-hero[b-nim9m8ftof] {
        width: 100%;
        max-width: 100%;
        overflow: hidden;
        padding: 20px;
        flex-direction: column;
        border-radius: 16px;
    }

    .project-hero-main[b-nim9m8ftof] {
        gap: 14px;
    }

    .project-icon[b-nim9m8ftof] {
        width: 52px;
        height: 52px;
        border-radius: 14px;
        font-size: 24px;
    }

    .project-heading h1[b-nim9m8ftof] {
        font-size: 24px;
    }

    .project-identity[b-nim9m8ftof] {
        width: 100%;
        min-width: 0;
    }

    .summary-grid[b-nim9m8ftof] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 9px;
    }

    .summary-card[b-nim9m8ftof] {
        min-height: 82px;
        padding: 13px;
    }

    .summary-icon[b-nim9m8ftof] {
        width: 36px;
        height: 36px;
    }

    .project-information[b-nim9m8ftof],
    .work-package-section[b-nim9m8ftof] {
        width: 100%;
        max-width: 100%;
        overflow: hidden;
        padding: 17px;
        border-radius: 15px;
    }

    .information-grid[b-nim9m8ftof] {
        grid-template-columns: 1fr;
    }

    .work-package-tools[b-nim9m8ftof] {
        align-items: stretch;
        flex-direction: column;
    }

    .status-filter[b-nim9m8ftof] {
        width: 100%;
    }

    .work-package-card[b-nim9m8ftof] {
        grid-template-columns: 1fr;
        gap: 15px;
        padding: 15px;
    }

    .work-package-main[b-nim9m8ftof] {
        align-items: flex-start;
        gap: 10px;
    }

    .work-package-number[b-nim9m8ftof] {
        width: 46px;
    }

    .work-package-title-line[b-nim9m8ftof] {
        align-items: flex-start;
        flex-direction: column;
        gap: 7px;
    }

    .work-package-metadata[b-nim9m8ftof] {
        gap: 10px 14px;
    }

    .work-package-progress-area[b-nim9m8ftof] {
        padding: 14px 0 0;
        border-top: 1px solid #edf0f4;
        border-left: 0;
    }

    .open-arrow[b-nim9m8ftof] {
        margin-top: 10px;
    }
}

@media (max-width:760px) {

    .project-hero[b-nim9m8ftof],
    .project-information[b-nim9m8ftof],
    .work-package-section[b-nim9m8ftof] {
        width: 100%;
        max-width: 100%;
        overflow: hidden;
    }
}

.equipment-dashboard[b-nim9m8ftof] {
    display: grid;
    grid-template-columns: 1.2fr .8fr .8fr;
    gap: 18px;
    margin: 24px 0 32px;
}

.dashboard-card[b-nim9m8ftof] {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 180px;
    padding: 24px;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 6px 20px rgba(15,23,42,.04);
}

    .dashboard-card.ai[b-nim9m8ftof] {
        background: #0f172a;
        color: white;
    }

.dashboard-title[b-nim9m8ftof] {
    font-size: 13px;
    color: #6b7280;
    margin-bottom: 10px;
}

.dashboard-value[b-nim9m8ftof] {
    font-size: 34px;
    font-weight: 700;
    margin-bottom: 8px;
}

.dashboard-card.ai[b-nim9m8ftof] {
    background: #0f172a;
    color: white;
}

.case-section[b-nim9m8ftof] {
    margin-top: 36px;
}

@media (max-width:768px) {

    .equipment-dashboard[b-nim9m8ftof] {
        grid-template-columns: 1fr;
    }

    .dashboard-card.ai[b-nim9m8ftof] {
        order: 1;
    }

    .dashboard-card:nth-child(2)[b-nim9m8ftof] {
        order: 2;
    }

    .dashboard-card:nth-child(3)[b-nim9m8ftof] {
        order: 3;
    }

    .dashboard-card[b-nim9m8ftof] {
        min-height: auto;
        padding: 20px;
    }

    .dashboard-value[b-nim9m8ftof] {
        font-size: 42px;
    }
}

@media (max-width: 430px) {
    .summary-grid[b-nim9m8ftof] {
        grid-template-columns: 1fr 1fr;
    }

    .summary-card[b-nim9m8ftof] {
        gap: 9px;
    }

        .summary-card strong[b-nim9m8ftof] {
            font-size: 18px;
        }

    .project-hero-main[b-nim9m8ftof] {
        flex-direction: column;
    }

    .result-line > span[b-nim9m8ftof] {
        display: none;
    }
}

.ai-report[b-nim9m8ftof] {
    font-family: "Pretendard Variable","Pretendard",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    font-size: 16px;
    line-height: 1.9;
    color: #334155;
}

    .ai-report[b-nim9m8ftof]  h1 {
        font-size: 34px;
        font-weight: 700;
        letter-spacing: -0.03em;
        margin: 42px 0 24px;
        color: #0f172a;
    }

    .ai-report[b-nim9m8ftof]  h2 {
        font-size: 24px;
        font-weight: 700;
        margin: 34px 0 18px;
        padding-bottom: 10px;
        border-bottom: 1px solid #e5e7eb;
    }

    .ai-report[b-nim9m8ftof]  h3 {
        font-size: 20px;
        margin: 24px 0 12px;
        font-weight: 600;
    }

    .ai-report[b-nim9m8ftof]  p {
        margin: 14px 0;
    }

    .ai-report[b-nim9m8ftof]  ul {
        padding-left: 24px;
    }

    .ai-report[b-nim9m8ftof]  ol {
        padding-left: 24px;
    }

    .ai-report[b-nim9m8ftof]  li {
        margin: 8px 0;
    }

    .ai-report[b-nim9m8ftof]  strong {
        font-weight: 700;
        color: #111827;
    }

    .ai-report[b-nim9m8ftof]  table {
        width: 100%;
        border-collapse: collapse;
        margin: 18px 0;
    }

    .ai-report[b-nim9m8ftof]  th,
    .ai-report[b-nim9m8ftof]  td {
        border: 1px solid #e5e7eb;
        padding: 10px;
    }

    .ai-report[b-nim9m8ftof]  blockquote {
        padding: 14px 18px;
        margin: 18px 0;
        border-left: 4px solid #2563eb;
        background: #f8fafc;
    }

@media(max-width:768px) {

    .ai-report[b-nim9m8ftof] {
        font-size: 15px;
        line-height: 1.75;
    }

        .ai-report[b-nim9m8ftof]  h1 {
            font-size: 28px;
        }

        .ai-report[b-nim9m8ftof]  h2 {
            font-size: 22px;
        }

        .ai-report[b-nim9m8ftof]  h3 {
            font-size: 18px;
        }

    .ai-report[b-nim9m8ftof] {
        padding: 0 2px;
    }
}
/* /Components/Pages/OpProjects.razor.rz.scp.css */
:host[b-rg70x1ft3z] {
    display: block;
    min-height: 100%;
}

.op-page[b-rg70x1ft3z] {
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
    padding: 32px;
    color: #172033;
}

.op-header[b-rg70x1ft3z] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 28px;
}

.op-eyebrow[b-rg70x1ft3z] {
    display: block;
    margin-bottom: 8px;
    color: #68758c;
    font-size: 12px;
    font-weight: 750;
    letter-spacing: .12em;
}

.op-header h1[b-rg70x1ft3z] {
    margin: 0;
    font-size: clamp(28px, 3vw, 40px);
    font-weight: 800;
    letter-spacing: -.04em;
}

.op-header p[b-rg70x1ft3z] {
    max-width: 640px;
    margin: 10px 0 0;
    color: #69758a;
    font-size: 15px;
    line-height: 1.65;
}

.refresh-button[b-rg70x1ft3z] {
    min-height: 42px;
    padding: 0 16px;
    border: 1px solid #dfe5ee;
    border-radius: 12px;
    background: #fff;
    color: #273247;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
}

    .refresh-button:hover[b-rg70x1ft3z] {
        border-color: #bac5d4;
        background: #f8fafc;
    }

    .refresh-button:disabled[b-rg70x1ft3z] {
        cursor: default;
        opacity: .55;
    }

.search-panel[b-rg70x1ft3z] {
    padding: 18px;
    border: 1px solid #e3e8f0;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 8px 30px rgba(31, 43, 67, .05);
}

.search-box[b-rg70x1ft3z] {
    display: flex;
    align-items: center;
    min-height: 50px;
    padding: 0 14px;
    border: 1px solid #dce3ed;
    border-radius: 13px;
    background: #f8fafc;
}

    .search-box:focus-within[b-rg70x1ft3z] {
        border-color: #7796d8;
        background: #fff;
        box-shadow: 0 0 0 4px rgba(70, 110, 190, .1);
    }

.search-icon[b-rg70x1ft3z] {
    flex: 0 0 auto;
    margin-right: 10px;
    color: #76839a;
    font-size: 22px;
}

.search-box input[b-rg70x1ft3z] {
    width: 100%;
    min-width: 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: #172033;
    font-size: 15px;
}

.clear-button[b-rg70x1ft3z] {
    flex: 0 0 auto;
    width: 30px;
    height: 30px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: #8792a5;
    font-size: 22px;
    cursor: pointer;
}

    .clear-button:hover[b-rg70x1ft3z] {
        background: #e9eef5;
        color: #273247;
    }

.type-tabs[b-rg70x1ft3z] {
    display: flex;
    gap: 8px;
    margin-top: 14px;
    overflow-x: auto;
    scrollbar-width: none;
}

    .type-tabs[b-rg70x1ft3z]::-webkit-scrollbar {
        display: none;
    }

.type-tab[b-rg70x1ft3z] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 38px;
    padding: 0 14px;
    border: 1px solid #dfe5ee;
    border-radius: 11px;
    background: #fff;
    color: #5f6c81;
    font-size: 13px;
    font-weight: 700;
    white-space: nowrap;
    cursor: pointer;
}

    .type-tab strong[b-rg70x1ft3z] {
        display: inline-grid;
        min-width: 22px;
        height: 22px;
        padding: 0 6px;
        place-items: center;
        border-radius: 999px;
        background: #edf1f6;
        color: #596579;
        font-size: 11px;
    }

    .type-tab:hover[b-rg70x1ft3z] {
        border-color: #bdc8d7;
        color: #253047;
    }

    .type-tab.active[b-rg70x1ft3z] {
        border-color: #172033;
        background: #172033;
        color: #fff;
    }

        .type-tab.active strong[b-rg70x1ft3z] {
            background: rgba(255, 255, 255, .16);
            color: #fff;
        }

.result-header[b-rg70x1ft3z] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 28px 2px 14px;
    color: #8490a3;
    font-size: 13px;
}

    .result-header div[b-rg70x1ft3z] {
        display: flex;
        align-items: baseline;
        gap: 5px;
        color: #5e6b80;
    }

    .result-header strong[b-rg70x1ft3z] {
        color: #172033;
        font-size: 19px;
    }

.project-grid[b-rg70x1ft3z] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(290px, 1fr));
    gap: 16px;
}

.project-card[b-rg70x1ft3z] {
    display: flex;
    min-height: 260px;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid #e1e6ee;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 7px 26px rgba(26, 38, 61, .045);
    cursor: pointer;
    transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}

    .project-card:hover[b-rg70x1ft3z] {
        transform: translateY(-3px);
        border-color: #bdc8d7;
        box-shadow: 0 16px 40px rgba(26, 38, 61, .1);
    }

    .project-card:focus-visible[b-rg70x1ft3z] {
        outline: 3px solid rgba(73, 115, 204, .25);
        outline-offset: 3px;
    }

.card-top[b-rg70x1ft3z] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 20px 0;
}

.project-icon[b-rg70x1ft3z] {
    display: grid;
    width: 44px;
    height: 44px;
    place-items: center;
    border-radius: 13px;
    background: #f0f3f8;
    color: #37445b;
    font-size: 21px;
    font-weight: 800;
}

.active-badge[b-rg70x1ft3z],
.inactive-badge[b-rg70x1ft3z] {
    display: inline-flex;
    align-items: center;
    min-height: 27px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 800;
}

.active-badge[b-rg70x1ft3z] {
    background: #e8f7ef;
    color: #24734a;
}

.inactive-badge[b-rg70x1ft3z] {
    background: #f0f2f5;
    color: #778194;
}

.card-body[b-rg70x1ft3z] {
    flex: 1;
    padding: 22px 20px 20px;
}

.project-type[b-rg70x1ft3z] {
    margin-bottom: 8px;
    color: #69768c;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .08em;
}

.card-body h2[b-rg70x1ft3z] {
    display: -webkit-box;
    margin: 0;
    overflow: hidden;
    color: #182135;
    font-size: 19px;
    font-weight: 780;
    line-height: 1.35;
    letter-spacing: -.025em;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.card-body p[b-rg70x1ft3z] {
    display: -webkit-box;
    margin: 12px 0 0;
    overflow: hidden;
    color: #748096;
    font-size: 13px;
    line-height: 1.65;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.card-footer[b-rg70x1ft3z] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 62px;
    padding: 0 20px;
    border-top: 1px solid #edf0f4;
    background: #fbfcfd;
}

    .card-footer > div:first-child[b-rg70x1ft3z] {
        display: flex;
        align-items: baseline;
        gap: 7px;
    }

    .card-footer span[b-rg70x1ft3z] {
        color: #818da1;
        font-size: 12px;
    }

    .card-footer strong[b-rg70x1ft3z] {
        color: #263249;
        font-size: 15px;
    }

.open-arrow[b-rg70x1ft3z] {
    color: #8490a3;
    font-size: 21px;
    transition: transform .16s ease;
}

.project-card:hover .open-arrow[b-rg70x1ft3z] {
    transform: translateX(4px);
    color: #29364d;
}

.state-panel[b-rg70x1ft3z] {
    display: grid;
    min-height: 260px;
    margin-top: 24px;
    padding: 32px;
    place-items: center;
    align-content: center;
    border: 1px dashed #d8e0ea;
    border-radius: 18px;
    background: #fbfcfd;
    text-align: center;
}

    .state-panel strong[b-rg70x1ft3z] {
        color: #28344a;
        font-size: 16px;
    }

    .state-panel p[b-rg70x1ft3z] {
        margin: 8px 0 0;
        color: #778398;
        font-size: 14px;
    }

    .state-panel button[b-rg70x1ft3z] {
        min-height: 40px;
        margin-top: 18px;
        padding: 0 16px;
        border: 0;
        border-radius: 10px;
        background: #192337;
        color: #fff;
        font-weight: 700;
        cursor: pointer;
    }

    .state-panel.error[b-rg70x1ft3z] {
        border-color: #efcaca;
        background: #fffafa;
    }

.loader[b-rg70x1ft3z] {
    width: 30px;
    height: 30px;
    margin-bottom: 14px;
    border: 3px solid #e1e6ed;
    border-top-color: #34435e;
    border-radius: 50%;
    animation: spin-b-rg70x1ft3z .7s linear infinite;
}

@keyframes spin-b-rg70x1ft3z {
    to {
        transform: rotate(360deg);
    }
}

@media (max-width: 720px) {
    .op-page[b-rg70x1ft3z] {
        width: 100%;
        max-width: 100%;
        margin: 0;
        padding: 18px 0 32px;
        box-sizing: border-box;
    }

    .op-header[b-rg70x1ft3z] {
        align-items: stretch;
        flex-direction: column;
        margin-bottom: 20px;
    }

        .op-header h1[b-rg70x1ft3z] {
            font-size: 29px;
        }

    .refresh-button[b-rg70x1ft3z] {
        align-self: flex-start;
    }

    .search-panel[b-rg70x1ft3z] {
        padding: 13px;
        border-radius: 15px;
    }

    .result-header[b-rg70x1ft3z] {
        margin-top: 22px;
    }

        .result-header > span[b-rg70x1ft3z] {
            display: none;
        }

    .project-grid[b-rg70x1ft3z] {
        grid-template-columns: minmax(0, 1fr);
        gap: 12px;
    }

    .project-card[b-rg70x1ft3z] {
        width: 100%;
        min-width: 0;
        min-height: 235px;
        border-radius: 15px;
    }
}
/* /Components/Pages/ProjectCreate.razor.rz.scp.css */
.create-page[b-wcudf92uiw] {
    display: flex;
    justify-content: center;
    padding: 40px;
}

.create-card[b-wcudf92uiw] {
    width: 700px;
    background: white;
    border-radius: 28px;
    padding: 40px;
    box-shadow: 0 20px 50px rgba(15,23,42,.08);
}

.page-title[b-wcudf92uiw] {
    display: flex;
    gap: 20px;
    align-items: center;
    margin-bottom: 35px;
}

.page-icon[b-wcudf92uiw] {
    width: 70px;
    height: 70px;
    border-radius: 20px;
    background: #2563eb;
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 34px;
}

.page-title h1[b-wcudf92uiw] {
    margin: 0;
    font-size: 36px;
    font-weight: 800;
}

.page-title p[b-wcudf92uiw] {
    margin-top: 8px;
    color: #64748b;
}

.form-group[b-wcudf92uiw] {
    margin-bottom: 24px;
}

    .form-group label[b-wcudf92uiw] {
        display: block;
        margin-bottom: 8px;
        font-weight: 700;
        color: #334155;
    }

.form-control[b-wcudf92uiw] {
    width: 100%;
    border-radius: 14px;
    border: 1px solid #dbe3ee;
    padding: 14px 18px;
    font-size: 16px;
}

    .form-control:focus[b-wcudf92uiw] {
        outline: none;
        border-color: #2563eb;
        box-shadow: 0 0 0 4px rgba(37,99,235,.12);
    }

textarea[b-wcudf92uiw] {
    resize: vertical;
}

.button-group[b-wcudf92uiw] {
    display: flex;
    gap: 14px;
    margin-top: 35px;
}

.save-btn[b-wcudf92uiw] {
    flex: 1;
    height: 52px;
    border: none;
    border-radius: 14px;
    background: #2563eb;
    color: white;
    font-weight: 700;
    transition: .2s;
}

    .save-btn:hover[b-wcudf92uiw] {
        background: #1d4ed8;
    }

.cancel-btn[b-wcudf92uiw] {
    width: 140px;
    border: none;
    border-radius: 14px;
    background: #e5e7eb;
    font-weight: 700;
}

    .cancel-btn:hover[b-wcudf92uiw] {
        background: #cbd5e1;
    }

.message[b-wcudf92uiw] {
    margin-top: 20px;
    color: #ef4444;
}
