/* /Components/Common/AuditDetailModal.razor.rz.scp.css */
/* AuditDetailModal.razor.css — CSS variable 기반
   이 모달은 라이트/다크 무관하게 항상 흰 배경을 유지합니다.
   다크 오버레이 위에 명함처럼 떠있는 카드 컨셉. */

/* ════════════════════════════════
   Overlay
════════════════════════════════ */
.ah-overlay[b-v4j0jc0n0p] {
    position: fixed; inset: 0;
    background: rgba(15,23,42,0.6);
    backdrop-filter: blur(4px);
    z-index: 99999;
    display: flex; align-items: center; justify-content: center;
}

/* ════════════════════════════════
   Modal card — 항상 흰 배경 (의도적)
════════════════════════════════ */
.ah-a4[b-v4j0jc0n0p] {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    width: 580px; max-height: 96vh;
    overflow-y: auto;
    box-shadow: 0 8px 32px rgba(0,0,0,0.08);
    display: flex; flex-direction: column;
}
.ah-a4[b-v4j0jc0n0p]::-webkit-scrollbar       { width: 4px; }
.ah-a4[b-v4j0jc0n0p]::-webkit-scrollbar-track  { background: transparent; }
.ah-a4[b-v4j0jc0n0p]::-webkit-scrollbar-thumb  { background: #e2e8f0; border-radius: 2px; }

/* ════════════════════════════════
   Header
════════════════════════════════ */
.ah-a4-header[b-v4j0jc0n0p] {
    padding: 1.75rem 2rem 1.25rem;
    background: transparent;
    border-bottom: 1px solid #f1f5f9;
}
.ah-a4-header-top[b-v4j0jc0n0p] {
    display: flex; justify-content: space-between;
    align-items: flex-start; margin-bottom: 1.1rem; gap: 1rem;
}

.ah-a4-logo[b-v4j0jc0n0p]     { font-size: 1.4rem; font-weight: 900; color: #0f172a; letter-spacing: -0.8px; line-height: 1; }
.ah-a4-logo-sub[b-v4j0jc0n0p] { font-size: 0.56rem; font-weight: 700; color: #94a3b8; letter-spacing: 2.5px; margin-top: 3px; }

.ah-a4-live-clock[b-v4j0jc0n0p] { flex: 1; text-align: right; margin-right: 0.5rem; }
.ah-clock-label[b-v4j0jc0n0p]   { font-size: 0.54rem; font-weight: 700; letter-spacing: 1.2px; color: #94a3b8; text-transform: uppercase; margin-bottom: 1px; }
.ah-clock-value[b-v4j0jc0n0p]   { font-family: 'JetBrains Mono', monospace; font-size: 0.88rem; font-weight: 700; color: #0f172a; letter-spacing: 0.5px; }
.ah-clock-tz[b-v4j0jc0n0p]      { font-size: 0.58rem; color: #94a3b8; margin-top: 1px; }

.ah-a4-close[b-v4j0jc0n0p] {
    background: transparent; border: none; color: #94a3b8;
    cursor: pointer; border-radius: 4px; padding: 0.2rem 0.4rem;
    font-size: 0.85rem; transition: all 0.15s; flex-shrink: 0;
}
.ah-a4-close:hover[b-v4j0jc0n0p] { color: #0f172a; background: #f1f5f9; }

.ah-a4-notice-text[b-v4j0jc0n0p] {
    font-size: 0.7rem; color: #383e46; line-height: 1.7; margin-bottom: 1rem;
}

/* ════════════════════════════════
   Dividers
════════════════════════════════ */
.ah-a4-divider[b-v4j0jc0n0p]         { height: 1px; background: #f1f5f9; }
.ah-a4-section-divider[b-v4j0jc0n0p] { height: 1px; background: #f1f5f9; margin: 0 2rem; }

/* ════════════════════════════════
   Body
════════════════════════════════ */
.ah-a4-body[b-v4j0jc0n0p]    { flex: 1; }
.ah-a4-section[b-v4j0jc0n0p] { padding: 1rem 2rem; }

.ah-a4-row[b-v4j0jc0n0p]    { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.ah-a4-row-mb[b-v4j0jc0n0p] { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin-bottom: 1.2rem; }

.ah-a4-cell[b-v4j0jc0n0p]      { display: flex; flex-direction: column; gap: 0.2rem; }
.ah-a4-cell.full[b-v4j0jc0n0p] { grid-column: 1 / -1; }

.ah-a4-event-name[b-v4j0jc0n0p] {
    font-size: 1rem; font-weight: 800; color: #0f172a;
    letter-spacing: -0.2px; line-height: 1.3;
}

/* ════════════════════════════════
   Cell labels & values
════════════════════════════════ */
.ah-a4-cell-label[b-v4j0jc0n0p] {
    font-size: 0.6rem; font-weight: 700; color: #64748b;
    text-transform: uppercase; letter-spacing: 0.8px;
}
.ah-a4-cell-value[b-v4j0jc0n0p] { font-size: 0.82rem; color: #334155; line-height: 1.5; }
.ah-a4-cell-value.strong[b-v4j0jc0n0p] { font-weight: 700; color: #0f172a; }
.ah-a4-cell-value.mono[b-v4j0jc0n0p]   { font-family: 'JetBrains Mono', monospace; font-size: 0.75rem; color: #1e40af; }
.ah-a4-cell-value.mono.logid[b-v4j0jc0n0p] { font-size: 0.7rem; color: #1e40af; word-break: break-all; }
.ah-a4-cell-value.ua[b-v4j0jc0n0p] { font-size: 0.7rem; color: #64748b; word-break: break-all; line-height: 1.6; }
.ah-a4-cell-sub[b-v4j0jc0n0p]  { font-size: 0.64rem; font-weight: 400; color: #94a3b8; margin-left: 0.4rem; }

/* ════════════════════════════════
   Footer
════════════════════════════════ */
.ah-a4-footer[b-v4j0jc0n0p] {
    padding: 1rem 2rem; background: transparent;
    display: flex; justify-content: space-between;
    align-items: center; min-height: 56px;
}
.ah-a4-footer-left[b-v4j0jc0n0p]    { flex: 1; min-width: 0; }
.ah-a4-footer-actions[b-v4j0jc0n0p] { flex-shrink: 0; }

.ah-a4-copied-notice[b-v4j0jc0n0p] {
    font-size: 0.65rem; color: #16a34a; font-weight: 600;
    display: flex; align-items: center;
}
.ah-elapsed[b-v4j0jc0n0p] { color: #94a3b8; font-weight: 400; margin-left: 0.35rem; }

.ah-a4-btn-copy[b-v4j0jc0n0p] {
    display: inline-flex; align-items: center; gap: 0.3rem;
    background: #0f172a; border: none; color: #f8fafc;
    font-size: 0.72rem; font-weight: 700;
    padding: 0.5rem 1.1rem; border-radius: 5px;
    cursor: pointer; letter-spacing: 0.5px; transition: all 0.15s;
}
.ah-a4-btn-copy:hover[b-v4j0jc0n0p]   { background: #1e293b; }
.ah-a4-btn-copy.copied[b-v4j0jc0n0p]  { background: #16a34a; }
/* /Components/Common/MetricCard.razor.rz.scp.css */
/* 경로: Components/Common/MetricCard.razor.css */

.metric-card[b-x2talyyddk] {
    background: #ffffff;
    border: 1px solid #f1f5f9;
    border-radius: 12px;
    padding: 24px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
    height: 100%;
}

.metric-card:hover[b-x2talyyddk] {
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
}

.label[b-x2talyyddk] {
    font-size: 0.75rem;
    letter-spacing: 0.02em;
    color: #64748b;
    font-weight: 500;
}
/* /Components/Common/NotificationMenu.razor.rz.scp.css */
/* 종 아이콘 */
.aws-bell-icon[b-ritpm7dyqb] {
    font-size: 1.15rem !important;
    color: #545b64 !important;
    -webkit-text-stroke: 0.4px;
    cursor: pointer;
    vertical-align: middle;
}

/* 알림 배지 */
.notification-badge[b-ritpm7dyqb] {
    position: absolute;
    top: -4px;
    right: -4px;
    background: #d13212;
    color: white;
    border-radius: 10px;
    padding: 0 4px;
    font-size: 0.65rem;
    font-weight: 800;
    min-width: 16px;
    height: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid white;
    z-index: 10;
}

/* 패널 */
.notification-panel[b-ritpm7dyqb] {
    position: absolute;
    right: 0;
    top: calc(100% + 12px);
    width: 380px;
    max-width: calc(100vw - 40px);
    background: white;
    border: 1px solid #eaeded;
    border-radius: 2px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    z-index: 1000;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

/* 헤더 */
.notification-panel-header[b-ritpm7dyqb] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 14px 16px;
    background: #ffffff;
    border-bottom: 1px solid #eaeded;
}

.notification-panel-header span[b-ritpm7dyqb] {
    font-weight: 700;
    font-size: 0.95rem;
    color: #16191f;
}

.panel-link-small[b-ritpm7dyqb] {
    font-size: 0.8rem;
    color: #0073bb;
    text-decoration: none;
    font-weight: 500;
}

.panel-link-small:hover[b-ritpm7dyqb] { text-decoration: underline; }

/* 🚀 탭 컨테이너: 중앙 정렬 */
.aws-tabs-container[b-ritpm7dyqb] {
    display: flex;
    justify-content: center; /* 🚀 탭 중앙 정렬 */
    gap: 15px; /* 탭 사이 간격 */
    background: #fafafa;
    border-bottom: 1px solid #eaeded;
    padding: 0 8px;
}

.aws-tab[b-ritpm7dyqb] {
    background: transparent;
    border: none;
    padding: 10px 10px;
    font-size: 0.82rem;
    font-weight: 700;
    color: #545b64;
    cursor: pointer;
    border-bottom: 3px solid transparent;
    transition: all 0.1s;
}

.aws-tab.active[b-ritpm7dyqb] {
    color: #0073bb;
    border-bottom: 3px solid #0073bb;
}

.aws-tab:hover:not(.active)[b-ritpm7dyqb] { color: #16191f; }

/* 리스트 영역 */
.notification-panel-body[b-ritpm7dyqb] {
    overflow-y: auto;
    overflow-x: hidden;
    max-height: 420px;
    background: white;
}

/* 아이템 */
.notification-item[b-ritpm7dyqb] {
    padding: 16px;
    border-bottom: 1px solid #eaeded;
    cursor: pointer;
    display: flex;
    width: 100%;
}

.notification-item.unread[b-ritpm7dyqb] {
    background: #f1faff; /* 배경색으로만 안읽음 표시 */
}

.notification-item:hover[b-ritpm7dyqb] { background: #f8f9f9; }

/* 텍스트 영역 */
.notification-title[b-ritpm7dyqb] {
    font-size: 0.85rem;
    font-weight: 700;
    color: #16191f;
    line-height: 1.3;
    word-break: break-word;
}

/* 🚀 메시지와 시간이 한 줄에 나오도록 처리 */
.notification-message[b-ritpm7dyqb] {
    font-size: 0.85rem;
    color: #545b64;
    margin-top: 4px;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    white-space: normal;
    word-break: break-word;
}

/* 🚀 시간 텍스트 (이제 인라인 요소) */
.notification-time[b-ritpm7dyqb] {
    color: #879196;
    font-weight: 400;
}

/* Empty State */
.aws-empty-state[b-ritpm7dyqb] {
    padding: 40px 20px;
    text-align: center;
    color: #545b64;
}

.empty-title[b-ritpm7dyqb] {
    font-weight: 700;
    font-size: 0.9rem;
    margin-bottom: 6px;
}

.empty-desc[b-ritpm7dyqb] {
    font-size: 0.82rem;
    line-height: 1.5;
}

/* 배경 */
.panel-backdrop[b-ritpm7dyqb] {
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    z-index: 998;
    background: transparent;
}
/* /Components/Layout/AuthLayout.razor.rz.scp.css */

.auth-main-content:has(.invite-split-wrapper)[b-whn91e4vcl] {
    align-items: stretch;
    padding-bottom: 0;
}

.auth-wrapper[b-whn91e4vcl] {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    background-color: #ffffff;
}

.auth-top-bar[b-whn91e4vcl] {
    height: 0px;
    display: flex;
    align-items: center;
    /* 경계선 없음: 로그인 페이지는 더 깔끔하게 */
}

.auth-main-content[b-whn91e4vcl] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-bottom: 70px; /* 시각적 중앙 정렬 보정 */
}

.avatar-circle[b-whn91e4vcl] {
    width: 32px;
    height: 32px;
    background: #e2e8f0;
    color: #64748b;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
}
/* /Components/Layout/LandingFooter.razor.rz.scp.css */
/* =========================================
   LandingFooter — light grey, full width
========================================= */

.lf-root[b-8qw8qve0di] {
    background:  #f9fafb;
    border-top:  1px solid #e5e7eb;
    width:       100%;
    box-sizing:  border-box;
    padding:     5rem 2rem 3rem;
}

.lf-inner[b-8qw8qve0di] {
    max-width: 1200px;
    margin:    0 auto;
}

/* ── Top grid ── */
.lf-top[b-8qw8qve0di] {
    display:               grid;
    grid-template-columns: 2fr 1fr 1fr 1fr 1fr;
    gap:                   3rem;
    margin-bottom:         4rem;
}

/* ── Brand ── */
.lf-brand-col[b-8qw8qve0di] { padding-right: 2rem; }

.lf-brand-name[b-8qw8qve0di] {
    font-size:      1.5rem;
    font-weight:    800;
    color:          #111827;
    letter-spacing: -0.5px;
    margin-bottom:  1rem;
}

.lf-brand-desc[b-8qw8qve0di] {
    font-size:   0.85rem;
    color:       #6b7280;
    line-height: 1.75;
    max-width:   260px;
    margin:      0 0 1.75rem;
}

.lf-socials[b-8qw8qve0di] {
    display: flex;
    gap:     0.6rem;
}

.lf-social-btn[b-8qw8qve0di] {
    width:           36px;
    height:          36px;
    border-radius:   8px;
    border:          1px solid #e5e7eb;
    background:      #ffffff;
    display:         flex;
    align-items:     center;
    justify-content: center;
    color:           #6b7280;
    font-size:       0.88rem;
    text-decoration: none;
    transition:      all 0.15s;
}
.lf-social-btn:hover[b-8qw8qve0di] {
    border-color: var(--ah-link);
    color:        #6366f1;
    background:   #eef2ff;
}

/* ── Columns ── */
.lf-col-title[b-8qw8qve0di] {
    font-size:      0.7rem;
    font-weight:    700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color:          #9ca3af;
    margin-bottom:  1.25rem;
}

.lf-col-links[b-8qw8qve0di] {
    display:        flex;
    flex-direction: column;
    gap:            0.75rem;
}

.lf-link[b-8qw8qve0di] {
    font-size:       0.85rem;
    color:           #374151;
    text-decoration: none;
    transition:      color 0.15s;
    display:         flex;
    align-items:     center;
    gap:             0.4rem;
}
.lf-link:hover[b-8qw8qve0di] { color: var(--ah-link); }

.lf-badge[b-8qw8qve0di] {
    font-size:     0.6rem;
    font-weight:   700;
    background:    var(--ah-accent);
    color:         #fff;
    padding:       0.1rem 0.45rem;
    border-radius: 3px;
}

/* ── Bottom ── */
.lf-bottom[b-8qw8qve0di] {
    display:         flex;
    justify-content: space-between;
    align-items:     center;
    padding-top:     2rem;
    border-top:      1px solid #e5e7eb;
    flex-wrap:       wrap;
    gap:             1rem;
}

.lf-copy[b-8qw8qve0di] {
    font-size: 0.78rem;
    color:     #9ca3af;
}

.lf-bottom-links[b-8qw8qve0di] {
    display: flex;
    gap:     1.75rem;
}

.lf-bottom-link[b-8qw8qve0di] {
    font-size:       0.78rem;
    color:           #9ca3af;
    text-decoration: none;
    transition:      color 0.15s;
}
.lf-bottom-link:hover[b-8qw8qve0di] { color: #374151; }

/* ── Responsive ── */
@media (max-width: 1024px) {
    .lf-top[b-8qw8qve0di] { grid-template-columns: 2fr 1fr 1fr 1fr; }
}

@media (max-width: 768px) {
    .lf-top[b-8qw8qve0di] {
        grid-template-columns: 1fr 1fr;
        gap:                   2rem;
    }
    .lf-brand-col[b-8qw8qve0di] { grid-column: 1 / -1; padding-right: 0; }
}

@media (max-width: 480px) {
    .lf-root[b-8qw8qve0di] { padding: 3.5rem 1.25rem 2rem; }
    .lf-top[b-8qw8qve0di]  { grid-template-columns: 1fr 1fr; }
}
/* /Components/Layout/LandingLayout.razor.rz.scp.css */
/* =========================================
   1. 기본 레이아웃 및 헤더
========================================= */
.landing-wrapper[b-w0yscmwb0p] {
    display:        flex;
    flex-direction: column;
    min-height:     100vh;
    background-color: #09090b;
    font-family:    'Inter', Pretendard, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

.landing-header[b-w0yscmwb0p] {
    height:           72px;
    display:          flex;
    align-items:      center;
    padding:          0 40px;
    background-color: #000000;
    position:         relative;
    z-index:          9999;
}

/* 브랜드명 */
.landing-header .brand-text[b-w0yscmwb0p] {
    color: #ffffff !important;
}

.landing-content[b-w0yscmwb0p] {
    flex:             1;
    display:          flex;
    flex-direction:   column;
    align-items:      center;
    width:            100%;
    background-color: #09090b;
    padding-top:      0;
    padding-bottom:   0;
}
/* =========================================
   2. 상단 GNB 메뉴
========================================= */
.landing-nav[b-w0yscmwb0p]  .dropdown {
    position: static;
}

.landing-nav[b-w0yscmwb0p]  .nav-link {
    color:            #d1d5db;
    font-weight:      500;
    font-size:        1.05rem;
    padding:          10px 18px;
    border-radius:    6px;
    background-color: transparent;
    border:           none;
    text-decoration:  none;
    cursor:           pointer;
    transition:       background-color 0.2s, color 0.2s;
}

.landing-nav[b-w0yscmwb0p]  .nav-link:hover,
.landing-nav[b-w0yscmwb0p]  .dropdown:hover .nav-link {
    background-color: rgba(255, 255, 255, 0.08);
    color:            #ffffff;
}

/* =========================================
   3. 메가 메뉴 패널
========================================= */
[b-w0yscmwb0p] .mega-menu-panel {
    display:          none;
    position:         absolute;
    top:              72px;
    left:             0;
    width:            100%;
    background-color: #ffffff !important;
    border:           none !important;
    border-radius:    0 0 16px 16px !important;
    box-shadow:       0 24px 40px -12px rgba(0, 0, 0, 0.18) !important;
    padding:          60px 40px 70px 40px;
    z-index:          9999;
}

[b-w0yscmwb0p] .mega-menu-panel.show {
    display: block;
}

[b-w0yscmwb0p] .menu-heading {
    font-size:      0.75rem;
    color:          #9ca3af;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight:    600;
    margin-bottom:  16px;
    margin-top:     8px;
}

/* =========================================
   4. Solutions 메뉴 아이템
========================================= */
[b-w0yscmwb0p] .industry-link-item {
    display:         block;
    color:           #111111;
    font-weight:     500;
    font-size:       1.05rem;
    text-decoration: none;
    padding:         8px 12px;
    margin-left:     -12px;
    border-radius:   6px;
    transition:      all 0.2s;
    margin-bottom:   8px;
}

[b-w0yscmwb0p] .industry-link-item:hover,
[b-w0yscmwb0p] .industry-link-item.active-hover {
    background-color: #f4f4f5;
    color:            #000000;
    font-weight:      600;
}

[b-w0yscmwb0p] .solution-highlight-card {
    padding-left: 50px;
    height:       100%;
    min-height:   450px;
    display:      flex;
    flex-direction: column;
    animation:    fadeIn-b-w0yscmwb0p 0.2s ease-in-out;
}

@keyframes fadeIn-b-w0yscmwb0p {
    from { opacity: 0; transform: translateY(3px); }
    to   { opacity: 1; transform: translateY(0); }
}

[b-w0yscmwb0p] .solution-highlight-img {
    width:         100%;
    max-width:     380px;
    aspect-ratio:  4 / 3;
    object-fit:    cover;
    border-radius: 10px;
    margin-bottom: 24px;
    box-shadow:    0 10px 15px -3px rgba(0, 0, 0, 0.1);
    filter:        grayscale(100%);
}

[b-w0yscmwb0p] .solution-highlight-title {
    font-size:      1.25rem;
    font-weight:    700;
    color:          #111827;
    margin-bottom:  12px;
    letter-spacing: -0.02em;
}

[b-w0yscmwb0p] .solution-highlight-desc {
    font-size:   0.95rem;
    color:       #4b5563;
    line-height: 1.6;
    margin-bottom: 20px;
    max-width:   380px;
    min-height:  120px;
}

[b-w0yscmwb0p] .solution-learn-more {
    font-size:       0.95rem;
    font-weight:     600;
    color:           #111111;
    text-decoration: none;
    display:         inline-flex;
    align-items:     center;
    transition:      color 0.2s;
}

[b-w0yscmwb0p] .solution-learn-more:hover {
    color:           #4b5563;
    text-decoration: underline;
    text-underline-offset: 4px;
}

[b-w0yscmwb0p] .hlt-tech,
[b-w0yscmwb0p] .hlt-finance,
[b-w0yscmwb0p] .hlt-biz {
    color:            #4f46e5;
    font-weight:      700;
    background-color: #eef2ff;
    padding:          0 4px;
    border-radius:    4px;
}

/* =========================================
   5. Product 메뉴 링크
========================================= */
[b-w0yscmwb0p] .product-link-item {
    display:         block;
    text-decoration: none;
    margin-bottom:   24px;
    padding:         8px 12px;
    margin-left:     -12px;
    border-radius:   8px;
    transition:      background-color 0.2s, transform 0.2s;
}

[b-w0yscmwb0p] .product-link-item:hover {
    background-color: #f8f9fa;
    transform:        translateX(4px);
}

[b-w0yscmwb0p] .product-link-title {
    display:     block;
    font-size:   1.05rem;
    font-weight: 600;
    color:       #111111;
    margin-bottom: 4px;
    transition:  color 0.2s;
}

[b-w0yscmwb0p] .product-link-item:hover .product-link-title {
    color: #2563eb;
}

[b-w0yscmwb0p] .product-link-desc {
    display:      block;
    font-size:    0.85rem;
    color:        #6b7280;
    line-height:  1.5;
    letter-spacing: -0.01em;
}

[b-w0yscmwb0p] .partner-badge:hover {
    background-color: #f8f9fa !important;
    border-color:     #4f46e5 !important;
    transform:        translateY(-1px);
    box-shadow:       0 2px 4px rgba(0, 0, 0, 0.05);
}

/* =========================================
   6. 우측 버튼
========================================= */
.btn-kinde-primary[b-w0yscmwb0p] {
    background-color: #ffffff;
    color:            #000000;
    border-radius:    999px;
    padding:          10px 24px;
    font-weight:      600;
    font-size:        1.05rem;
    text-decoration:  none;
    transition:       background-color 0.2s, color 0.2s;
}

.btn-kinde-primary:hover[b-w0yscmwb0p] {
    background-color: #e2e8f0;
    color:            #000000;
}

.btn-kinde-secondary[b-w0yscmwb0p] {
    color:           #d1d5db;
    font-weight:     500;
    font-size:       1.05rem;
    text-decoration: none;
    margin-right:    24px;
    transition:      color 0.2s;
}

.btn-kinde-secondary:hover[b-w0yscmwb0p] {
    color: #ffffff;
}

/* =========================================
   7. 헤더 유틸리티
========================================= */
.aws-divider[b-w0yscmwb0p] {
    width:            1px;
    height:           14px;
    background-color: rgba(255, 255, 255, 0.2);
    margin:           0 8px;
    display:          inline-block;
}

.badge-light-gray[b-w0yscmwb0p] {
    background-color: rgba(255, 255, 255, 0.08);
    color:            #d1d5db;
    border:           1px solid rgba(255, 255, 255, 0.15);
}

/* 알림 아이콘 */
[b-w0yscmwb0p] .aws-bell-icon {
    font-size:  1.2rem;
    color:      #94a3b8;
    transition: color 0.2s;
}

[b-w0yscmwb0p] .btn-link:hover .aws-bell-icon {
    color: #cbd5e1;
}

[b-w0yscmwb0p] .notification-badge {
    position:     absolute;
    top:          -2px;
    right:        -2px;
    background:   #d13212;
    color:        white;
    border-radius: 10px;
    padding:      0 4px;
    font-size:    0.65rem;
    font-weight:  800;
    min-width:    16px;
    height:       16px;
    display:      flex;
    align-items:  center;
    justify-content: center;
    border:       2px solid #000000;
    z-index:      10;
}

/* =========================================
   8. 프로필 메뉴 팝업
========================================= */
[b-w0yscmwb0p] .profile-backdrop {
    position:   fixed;
    top:        0;
    left:       0;
    width:      100vw;
    height:     100vh;
    z-index:    999;
    background: transparent;
    cursor:     default;
}

[b-w0yscmwb0p] .dropdown-menu-container {
    display:       none;
    position:      absolute;
    right:         0;
    top:           100%;
    width:         260px;
    background:    white;
    border-radius: 12px;
    box-shadow:    0 10px 25px rgba(0, 0, 0, 0.15);
    padding:       12px;
    z-index:       1000;
    margin-top:    10px;
    overflow:      hidden;
}

[b-w0yscmwb0p] .dropdown-menu-container.show {
    display: block;
}

[b-w0yscmwb0p] .menu-slider {
    display:    flex;
    width:      200%;
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

[b-w0yscmwb0p] .menu-slider.slide-active {
    transform: translateX(-50%);
}

[b-w0yscmwb0p] .menu-page {
    width:          50%;
    flex-shrink:    0;
    display:        flex;
    flex-direction: column;
    min-height:     280px;
}

[b-w0yscmwb0p] .dropdown-item-custom {
    display:         flex;
    align-items:     center;
    justify-content: flex-start;
    padding:         0.7rem 1rem;
    font-size:       1rem;
    font-weight:     500;
    color:           #475569;
    cursor:          pointer;
    border:          none;
    background:      none;
    width:           100%;
    text-align:      left;
    border-radius:   8px;
    margin-bottom:   4px;
}

[b-w0yscmwb0p] .dropdown-item-custom:hover {
    background-color: #f1f5f9;
    color:            #0f172a;
}

[b-w0yscmwb0p] .dropdown-item-custom.selected-lang {
    font-weight: 700 !important;
    color:       #0f172a !important;
}

[b-w0yscmwb0p] .dropdown-item-custom.sign-out-btn { color: #0f172a; }
[b-w0yscmwb0p] .dropdown-item-custom.sign-out-btn:hover { background-color: #f1f5f9; }

[b-w0yscmwb0p] .dropdown-header-custom {
    font-size:      0.8rem;
    font-weight:    700;
    color:          #94a3b8;
    text-transform: uppercase;
    padding:        8px 12px;
    letter-spacing: 0.05em;
    margin-top:     8px;
}

[b-w0yscmwb0p] .back-btn-container {
    margin-top:   auto;
    padding-top:  12px;
    padding-left: 12px;
}

[b-w0yscmwb0p] .back-btn {
    color:       #94a3b8;
    font-size:   0.8rem;
    font-weight: 500;
    cursor:      pointer;
    display:     flex;
    align-items: center;
    border:      none;
    background:  none;
}
[b-w0yscmwb0p] .back-btn:hover { color: #64748b; }

[b-w0yscmwb0p] .avatar-circle {
    width:           36px;
    height:          36px;
    background:      #0f172a;
    color:           white;
    border-radius:   50%;
    display:         flex;
    align-items:     center;
    justify-content: center;
    font-weight:     bold;
    font-size:       1rem;
    overflow:        hidden;
}

[b-w0yscmwb0p] .avatar-img {
    width:      100%;
    height:     100%;
    object-fit: cover;
}

/* =========================================
   9. 스켈레톤 로딩
========================================= */
.skeleton-box[b-w0yscmwb0p] {
    background:      linear-gradient(90deg, #1e293b 25%, #334155 50%, #1e293b 75%);
    background-size: 200% 100%;
    animation:       loading-skeleton-b-w0yscmwb0p 1.5s infinite;
    border-radius:   4px;
}

@keyframes loading-skeleton-b-w0yscmwb0p {
    0%   { background-position:  200% 0; }
    100% { background-position: -200% 0; }
}
/* /Components/Layout/ProfileMenu.razor.rz.scp.css */
/* ProfileMenu — CSS variable 기반 (dark mode 지원) */

.dropdown-menu-container[b-5edsrztbl8] {
    display:       none;
    position:      absolute;
    right:         0;
    top:           100%;
    width:         260px;
    background: var(--ah-bg, #ffffff);
    border-radius: 12px;
    box-shadow:    var(--ah-shadow-lg);
    border:        1px solid var(--ah-border-soft);
    padding:       12px;
    z-index:       1000;
    margin-top:    10px;
    overflow:      hidden;
}

.dropdown-menu-container.show[b-5edsrztbl8] { display: block; }

.menu-slider[b-5edsrztbl8] {
    display:    flex;
    width:      200%;
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.menu-slider.slide-active[b-5edsrztbl8] { transform: translateX(-50%); }

.menu-page[b-5edsrztbl8] {
    width:          50%;
    flex-shrink:    0;
    display:        flex;
    flex-direction: column;
    min-height:     280px;
}

/* ── Menu items ── */
.dropdown-item-custom[b-5edsrztbl8] {
    display:         flex;
    align-items:     center;
    justify-content: flex-start;
    padding:         0.7rem 1rem;
    font-size:       0.88rem;
    font-weight:     500;
    color:           var(--ah-text-sub);
    cursor:          pointer;
    border:          none;
    background:      none;
    width:           100%;
    text-align:      left;
    border-radius:   8px;
    margin-bottom:   2px;
    transition:      background 0.12s, color 0.12s;
}

.dropdown-item-custom:hover[b-5edsrztbl8] {
    background: var(--ah-bg-surface);
    color:      var(--ah-text);
}

.dropdown-item-custom.selected-lang[b-5edsrztbl8] {
    font-weight: 700;
    color:       var(--ah-text);
    background:  var(--ah-bg-subtle);
}

.dropdown-item-custom.sign-out-btn[b-5edsrztbl8]        { color: var(--ah-text); }
.dropdown-item-custom.sign-out-btn:hover[b-5edsrztbl8]  { background: var(--ah-bg-surface); }

/* ── Header ── */
.dropdown-header-custom[b-5edsrztbl8] {
    font-size:      0.72rem;
    font-weight:    700;
    color:          var(--ah-text-muted);
    text-transform: uppercase;
    padding:        8px 12px 4px;
    letter-spacing: 0.05em;
    margin-top:     4px;
}

/* ── Back button ── */
.back-btn-container[b-5edsrztbl8] { margin-top: auto; padding-top: 12px; padding-left: 12px; }

.back-btn[b-5edsrztbl8] {
    color:       var(--ah-text-muted);
    font-size:   0.8rem;
    font-weight: 500;
    cursor:      pointer;
    display:     flex;
    align-items: center;
    border:      none;
    background:  none;
    transition:  color 0.12s;
}
.back-btn:hover[b-5edsrztbl8] { color: var(--ah-text-sub); }

/* ── Avatar ── */
.avatar-circle[b-5edsrztbl8] {
    width:           32px;
    height:          32px;
    background:      var(--ah-accent);
    color:           var(--ah-accent-text);
    border-radius:   50%;
    display:         flex;
    align-items:     center;
    justify-content: center;
    font-weight:     bold;
    font-size:       0.9rem;
    overflow:        hidden;
    flex-shrink:     0;
}

.avatar-img[b-5edsrztbl8] { width: 100%; height: 100%; object-fit: cover; }

/* ── Backdrop ── */
.profile-backdrop[b-5edsrztbl8] {
    position:   fixed;
    top:        0;
    left:       0;
    width:      100vw;
    height:     100vh;
    z-index:    999;
    background: transparent;
    cursor:     default;
}

/* ── Dark mode toggle row ── */
.theme-toggle-row[b-5edsrztbl8] {
    display:         flex;
    align-items:     center;
    justify-content: space-between;
    padding:         0.7rem 1rem;
    border-radius:   8px;
    margin-bottom:   2px;
    cursor:          pointer;
    transition:      background 0.12s;
}
.theme-toggle-row:hover[b-5edsrztbl8] { background: var(--ah-bg-surface); }

.theme-toggle-label[b-5edsrztbl8] {
    display:     flex;
    align-items: center;
    font-size:   0.88rem;
    font-weight: 500;
    color:       var(--ah-text-sub);
    gap:         0.5rem;
    user-select: none;
}

.theme-switch[b-5edsrztbl8] {
    width:         36px;
    height:        20px;
    border-radius: 10px;
    background:    #cbd5e1;
    position:      relative;
    transition:    background 0.2s;
    flex-shrink:   0;
}

.theme-switch.dark[b-5edsrztbl8] { background: #eac4ff; }

.theme-knob[b-5edsrztbl8] {
    position:      absolute;
    top:           2px;
    left:          2px;
    width:         16px;
    height:        16px;
    border-radius: 50%;
    background:    #ffffff;
    box-shadow:    0 1px 3px rgba(0, 0, 0, 0.2);
    transition:    transform 0.2s;
}

.theme-switch.dark .theme-knob[b-5edsrztbl8] { transform: translateX(16px); }
/* /Features/Applications/AppGroupBranding.razor.rz.scp.css */
/* AppGroupBranding.razor.css — CSS variable 기반 */

/* ── App Icon preview ── */
.icon-preview[b-d7m4c46404] {
    width:           80px;
    height:          80px;
    border-radius:   18px;
    display:         flex;
    align-items:     center;
    justify-content: center;
    flex-shrink:     0;
    overflow:        hidden;
    border:          1px solid var(--ah-border);
}

/* ── Upload / Remove buttons ── */
.btn-upload[b-d7m4c46404] {
    display:       inline-flex;
    align-items:   center;
    font-size:     0.78rem;
    font-weight:   600;
    color:         var(--ah-text-sub);
    background:    var(--ah-bg);
    border:        1px solid var(--ah-border);
    padding:       0.45rem 1rem;
    border-radius: var(--ah-radius);
    cursor:        pointer;
    transition:    all 0.15s;
}
.btn-upload:hover[b-d7m4c46404] { background: var(--ah-bg-subtle); }

.btn-remove-icon[b-d7m4c46404] {
    display:       inline-flex;
    align-items:   center;
    font-size:     0.72rem;
    font-weight:   600;
    color:         var(--ah-danger);
    background:    none;
    border:        1px solid var(--ah-danger-border);
    padding:       0.35rem 0.75rem;
    border-radius: var(--ah-radius);
    cursor:        pointer;
    transition:    all 0.15s;
}
.btn-remove-icon:hover[b-d7m4c46404]    { background: var(--ah-danger-bg); }
.btn-remove-icon:disabled[b-d7m4c46404] { opacity: 0.4; cursor: not-allowed; }

/* ── Color swatches ── */
.color-swatch[b-d7m4c46404] {
    width:         28px;
    height:        28px;
    border-radius: var(--ah-radius);
    cursor:        pointer;
    border:        2px solid transparent;
    transition:    all 0.12s;
    flex-shrink:   0;
}
.color-swatch:hover[b-d7m4c46404] { transform: scale(1.1); }
.color-swatch.selected[b-d7m4c46404] {
    border-color: var(--ah-text);
    box-shadow:   0 0 0 2px var(--ah-bg), 0 0 0 4px var(--ah-text);
}

/* ── Brand Color preview box ── */
.brand-preview-box[b-d7m4c46404] {
    margin-top:    1.25rem;
    padding:       1rem;
    background:    var(--ah-bg-subtle);
    border:        1px solid var(--ah-border);
    border-radius: 8px;
}
.brand-preview-label[b-d7m4c46404] {
    font-size:      0.7rem;
    font-weight:    700;
    color:          var(--ah-text-muted);
    text-transform: uppercase;
    margin-bottom:  0.75rem;
}
.brand-preview-icon[b-d7m4c46404] {
    width:           40px;
    height:          40px;
    border-radius:   10px;
    border:          1px solid var(--ah-border);
    display:         flex;
    align-items:     center;
    justify-content: center;
    flex-shrink:     0;
    overflow:        hidden;
}

/* ── Login page preview frame ── */
.login-preview-frame[b-d7m4c46404] {
    max-width:     320px;
    margin:        0 auto;
    border:        1px solid var(--ah-border);
    border-radius: 12px;
    overflow:      hidden;
    box-shadow:    var(--ah-shadow-md);
}

/* 로그인 미리보기는 항상 흰 배경 (실제 로그인 페이지 시뮬레이션) */
.login-preview-header[b-d7m4c46404] {
    padding:         1.5rem 1.25rem 0;
    background:      #ffffff;
    display:         flex;
    flex-direction:  column;
    align-items:     center;
    gap:             0.5rem;
}
.login-preview-icon[b-d7m4c46404] {
    width:           36px;
    height:          36px;
    border-radius:   8px;
    display:         flex;
    align-items:     center;
    justify-content: center;
    overflow:        hidden;
}
.login-preview-app-name[b-d7m4c46404] {
    font-size:   0.85rem;
    font-weight: 700;
    color:       #0f172a;
    text-align:  center;
}
.login-preview-powered[b-d7m4c46404] {
    font-size:  0.7rem;
    color:      #64748b;
    text-align: center;
}

.login-preview-body[b-d7m4c46404]    { padding: 1rem 1.25rem 1.25rem; background: #ffffff; }
.login-preview-field[b-d7m4c46404]   { height: 32px; background: #f1f5f9; border-radius: 6px; margin-bottom: 0.5rem; }
.login-preview-cta[b-d7m4c46404]     { height: 34px; border-radius: 6px; margin-bottom: 0.75rem; }
.login-preview-divider[b-d7m4c46404] {
    display:       flex;
    align-items:   center;
    gap:           0.5rem;
    margin-bottom: 0.5rem;
}
.login-preview-line[b-d7m4c46404]   { flex: 1; height: 1px; background: #e2e8f0; }
.login-preview-or[b-d7m4c46404]     { font-size: 0.62rem; color: #94a3b8; }
.login-preview-social[b-d7m4c46404] {
    height:        32px;
    background:    #f8fafc;
    border:        1px solid #e2e8f0;
    border-radius: 6px;
}
/* /Features/Applications/AppGroupDetail.razor.rz.scp.css */
/* AppGroupDetail — page-specific only.
   Common classes are in ah-components.css */

/* ── Page header ── */
.page-title[b-l9pajw8sim] { font-weight: 800; font-size: 1.3rem; color: var(--ah-text); letter-spacing: -0.5px; }
.page-desc[b-l9pajw8sim]  { font-size: 0.8rem; color: var(--ah-text-muted); margin-top: 0.2rem; }

.group-icon[b-l9pajw8sim] {
    width: 52px; height: 52px; border-radius: 14px;
    display: flex; align-items: center; justify-content: center;
    font-size: 1.4rem; font-weight: 800; color: #ffffff; flex-shrink: 0;
}

/* ── Info box ── */
.info-box[b-l9pajw8sim] {
    background: var(--ah-bg-subtle); border: 1px solid var(--ah-border);
    border-radius: 10px; padding: 1.25rem 1.4rem; margin-bottom: 1.5rem;
}
.info-box-title[b-l9pajw8sim] { font-size: 0.75rem; font-weight: 700; color: var(--ah-text); margin-bottom: 0.5rem; }
.info-box-body[b-l9pajw8sim]  { font-size: 0.78rem; color: var(--ah-text-muted); line-height: 1.65; }

/* ── Stats ── */
.stats-row[b-l9pajw8sim] { display: flex; gap: 1rem; margin-bottom: 1.5rem; }
.stat-card[b-l9pajw8sim] {
    flex: 1; background: var(--ah-bg); border: 1px solid var(--ah-border-soft);
    border-radius: 10px; padding: 1.1rem 1.25rem; box-shadow: var(--ah-shadow-sm);
}
.stat-label[b-l9pajw8sim] { font-size: 0.6rem; font-weight: 700; color: var(--ah-text-muted); text-transform: uppercase; letter-spacing: 0.04em; }
.stat-value[b-l9pajw8sim] { font-size: 1.4rem; font-weight: 800; color: var(--ah-text); letter-spacing: -0.5px; margin-top: 0.15rem; }
.stat-sub[b-l9pajw8sim]   { font-size: 0.65rem; color: var(--ah-text-muted); margin-top: 0.1rem; }

/* ── Section header ── */
.groups-header[b-l9pajw8sim] { display: flex; justify-content: space-between; align-items: center; margin-bottom: 1rem; }
.table-title[b-l9pajw8sim]   { font-size: 0.85rem; font-weight: 700; color: var(--ah-text); }

/* ── App cards ── */
.app-card[b-l9pajw8sim] {
    background: var(--ah-bg); border: 1px solid var(--ah-border-soft);
    border-radius: var(--ah-radius-lg); padding: 1.5rem;
    box-shadow: var(--ah-shadow-sm); cursor: pointer;
    height: 100%; display: flex; flex-direction: column;
    transition: box-shadow 0.15s, border-color 0.15s, transform 0.12s;
}
.app-card:hover[b-l9pajw8sim] { box-shadow: var(--ah-shadow-md); border-color: var(--ah-border); transform: translateY(-1px); }

.app-name[b-l9pajw8sim]       { font-weight: 700; color: var(--ah-text); font-size: 0.95rem; }
.client-app-key[b-l9pajw8sim] { font-family: 'JetBrains Mono', monospace; font-size: 0.65rem; color: var(--ah-text-muted); margin-top: 0.15rem; }

.client-footer[b-l9pajw8sim] {
    display: flex; justify-content: space-between; align-items: center;
    font-size: 0.75rem; color: var(--ah-text-muted);
    margin-top: auto; padding-top: 0.85rem; border-top: 1px solid var(--ah-bg-subtle);
}
.client-footer strong[b-l9pajw8sim] { color: var(--ah-text-sub); font-weight: 700; }
.client-arrow[b-l9pajw8sim] { color: var(--ah-text-muted); font-size: 0.75rem; transition: color 0.15s; }
.app-card:hover .client-arrow[b-l9pajw8sim] { color: var(--ah-text-sub); }

/* ── Type icons ── */
.client-type-icon[b-l9pajw8sim] {
    width: 40px; height: 40px; border-radius: 10px;
    display: flex; align-items: center; justify-content: center;
    font-size: 1.15rem; flex-shrink: 0;
}
.type-web[b-l9pajw8sim]     { background: #eff6ff; }
.type-android[b-l9pajw8sim] { background: #ecfdf5; }
.type-ios[b-l9pajw8sim]     { background: #f5f3ff; }
.type-desktop[b-l9pajw8sim] { background: #f0f9ff; }
.type-m2m[b-l9pajw8sim]     { background: var(--ah-bg-subtle); border: 1px solid var(--ah-border); }
.type-api[b-l9pajw8sim]     { background: #f5f3ff; }
.type-micro[b-l9pajw8sim]   { background: #fff7ed; }

/* ── Environment badges ── */
.env-badge[b-l9pajw8sim]    { font-size: 0.58rem; font-weight: 800; padding: 0.12rem 0.4rem; border-radius: 3px; letter-spacing: 0.03em; }
.env-prod[b-l9pajw8sim]     { background: #f0fdf4; color: #166534; }
.env-staging[b-l9pajw8sim]  { background: #fff7ed; color: #9a3412; }
.env-testing[b-l9pajw8sim]  { background: #f0f9ff; color: #075985; }
.env-dev[b-l9pajw8sim]      { background: #f5f3ff; color: #5b21b6; }

/* ── Status ── */
.status-inline[b-l9pajw8sim]          { font-size: 0.68rem; font-weight: 600; color: var(--ah-text-muted); }
.status-inline.s-active[b-l9pajw8sim] { color: var(--ah-success); }

/* ── Add card ── */
.add-app-card[b-l9pajw8sim] {
    background: var(--ah-bg); border: 2px dashed var(--ah-border);
    border-radius: var(--ah-radius-lg); padding: 1.5rem;
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    cursor: pointer; height: 100%; min-height: 170px;
    transition: border-color 0.15s, background-color 0.15s;
}
.add-app-card:hover[b-l9pajw8sim] { border-color: var(--ah-link); background-color: #fafafe; }
.add-app-icon[b-l9pajw8sim] {
    width: 40px; height: 40px; border-radius: 50%;
    background: var(--ah-bg-surface); color: var(--ah-text-sub);
    display: flex; align-items: center; justify-content: center;
    font-size: 1.25rem; transition: background-color 0.15s, color 0.15s;
}
.add-app-card:hover .add-app-icon[b-l9pajw8sim] { background-color: #eef2ff; color: var(--ah-link); }

/* ── Buttons ── */
.btn-create[b-l9pajw8sim] {
    font-size: 0.75rem; font-weight: 700; color: var(--ah-accent-text);
    background: var(--ah-accent); border: 1px solid var(--ah-accent);
    padding: 0.4rem 1.1rem; border-radius: var(--ah-radius);
    cursor: pointer; transition: opacity 0.15s;
    display: inline-flex; align-items: center; gap: 0.3rem;
}
.btn-create:hover[b-l9pajw8sim] { opacity: 0.85; }

/* ── Error bar ── */
.error-bar[b-l9pajw8sim] {
    background: var(--ah-danger-bg); border: 1px solid var(--ah-danger-border);
    border-radius: var(--ah-radius-md); padding: 0.6rem 0.9rem;
    font-size: 0.78rem; color: #991b1b; margin-bottom: 1rem;
}
/* /Features/Applications/AppGroupLoginMethods.razor.rz.scp.css */
/* AppGroupLoginMethods.razor.css
   Common classes (card-panel, btn-primary, back-link, toggle-switch 등)은
   ah-components.css에 있으며, 이 파일은 페이지 전용 클래스만 포함합니다. */

/* ── Method rows ── */
.method-row[b-8krrmxfchw] {
    display:         flex;
    justify-content: space-between;
    align-items:     center;
    padding:         0.85rem 0;
    border-bottom:   1px solid var(--ah-border-soft);
}

.method-info[b-8krrmxfchw] { flex: 1; }
.method-name[b-8krrmxfchw] { font-size: 0.82rem; font-weight: 700; color: var(--ah-text); }
.method-desc[b-8krrmxfchw] { font-size: 0.7rem; color: var(--ah-text-muted); margin-top: 0.1rem; }

/* ── Provider icon badge ── */
.provider-badge[b-8krrmxfchw] {
    width:           28px;
    height:          28px;
    border-radius:   var(--ah-radius);
    display:         flex;
    align-items:     center;
    justify-content: center;
    flex-shrink:     0;
    overflow:        hidden;
    background:      var(--ah-bg-subtle);
    border:          1px solid var(--ah-border);
}

/* ── Federation ── */
.fed-enterprise-badge[b-8krrmxfchw] {
    font-size:     0.62rem;
    font-weight:   700;
    color:         #4f46e5;
    background:    var(--ah-info-bg);
    border:        1px solid var(--ah-info-border);
    padding:       0.1rem 0.4rem;
    border-radius: 3px;
    margin-left:   0.5rem;
}

.fed-provider-row[b-8krrmxfchw] {
    border-bottom: none;
    background:    var(--ah-bg-subtle);
    border-radius: 6px;
    padding:       0.6rem 0.85rem;
}

.fed-active-badge[b-8krrmxfchw] {
    font-size:     0.65rem;
    font-weight:   700;
    color:         var(--ah-success);
    background:    var(--ah-success-bg);
    border:        1px solid var(--ah-success-border);
    padding:       0.1rem 0.4rem;
    border-radius: 3px;
}

.fed-empty[b-8krrmxfchw] {
    margin-top: 0.75rem;
    font-size:  0.75rem;
    color:      var(--ah-text-muted);
}

/* ── Toggle ON 색상 고정 ──
   ah-components.css의 .toggle-switch.on이 var(--ah-accent)인데
   다크에서 --ah-accent = #e2e8f0(밝은 회색)이라 OFF와 구분 불가.
   이 페이지 scoped CSS에서 override. */
.toggle-switch.on[b-8krrmxfchw]  { background: var(--ah-accent) !important; }
.toggle-switch.off[b-8krrmxfchw] { background: var(--ah-bg-surface) !important; }
/* /Features/Audit/Pages/AuditIntegrityDashboard.razor.rz.scp.css */
/* AuditIntegrityDashboard.razor.css — CSS variable 기반 (통합본) */

/* ════════════════════════════════
   기존 유틸 클래스 (유지)
════════════════════════════════ */
.light-dashboard[b-xp0uxdmnbz] { width: 100%; margin: 0 auto; padding-bottom: 80px; }

.x-small[b-xp0uxdmnbz] { font-size: 0.75rem; letter-spacing: 0.02em; color: var(--ah-text-muted); font-weight: 500; }

.dot[b-xp0uxdmnbz]       { height: 10px; width: 10px; border-radius: 50%; display: inline-block; margin-right: 6px; }
.dot-green[b-xp0uxdmnbz] { background-color: #10b981; box-shadow: 0 0 0 2px rgba(16,185,129,0.2); }
.dot-red[b-xp0uxdmnbz]   { background-color: #ef4444; box-shadow: 0 0 0 2px rgba(239,68,68,0.2); }
.anim-pulse[b-xp0uxdmnbz] { animation: pulse-op-b-xp0uxdmnbz 2s cubic-bezier(0.4,0,0.6,1) infinite; }
@keyframes pulse-op-b-xp0uxdmnbz { 0%, 100% { opacity: 1; } 50% { opacity: 0.6; } }

/* ════════════════════════════════
   Header
════════════════════════════════ */
.ai-slug-mono[b-xp0uxdmnbz] {
    font-family: 'JetBrains Mono', monospace;
    font-size: 0.7rem; color: var(--ah-text-muted); letter-spacing: -0.3px;
}

.ai-tier-badge[b-xp0uxdmnbz] {
    font-size: 0.7rem; font-weight: 600;
    padding: 0.25rem 0.6rem; border-radius: 4px;
    background: var(--ah-bg-surface); color: var(--ah-text-sub);
    border: 1px solid var(--ah-border);
}
.ai-tier-badge.threat[b-xp0uxdmnbz] {
    background: var(--ah-warning-bg); color: #92400e; border-color: var(--ah-warning-border);
}

.ai-refresh-btn[b-xp0uxdmnbz] {
    font-size: 0.8rem; font-weight: 600;
    color: var(--ah-text-sub); background: var(--ah-bg);
    border: 1px solid var(--ah-border);
    padding: 0.4rem 1rem; border-radius: 6px;
    cursor: pointer; transition: all 0.15s;
    display: inline-flex; align-items: center;
}
.ai-refresh-btn:hover[b-xp0uxdmnbz] { background: var(--ah-bg-subtle); }
.ai-refresh-btn:disabled[b-xp0uxdmnbz] { opacity: 0.5; cursor: not-allowed; }

/* ════════════════════════════════
   Summary Cards
════════════════════════════════ */
.ai-summary-card[b-xp0uxdmnbz] {
    background: var(--ah-bg); border: 1px solid var(--ah-border);
    border-radius: 8px; padding: 1.25rem 1.5rem; box-shadow: var(--ah-shadow-sm);
}
.ai-summary-value[b-xp0uxdmnbz] {
    font-size: 1.75rem; font-weight: 800;
    color: var(--ah-text); letter-spacing: -1px; line-height: 1;
}
.ai-summary-value.muted[b-xp0uxdmnbz] { color: var(--ah-text-muted); }
.ai-summary-label[b-xp0uxdmnbz] {
    font-size: 0.7rem; font-weight: 700; color: var(--ah-text-muted);
    text-transform: uppercase; letter-spacing: 0.03em; margin-top: 0.35rem;
}
.ai-score-value[b-xp0uxdmnbz] { font-size: 1.75rem; font-weight: 800; letter-spacing: -1px; line-height: 1; }
.ai-score-value.healthy[b-xp0uxdmnbz] { color: var(--ah-text); }
.ai-score-value.critical[b-xp0uxdmnbz] { color: var(--ah-text-sub); }
.ai-score-percent[b-xp0uxdmnbz] { font-size: 1rem; font-weight: 400; color: var(--ah-text-muted); margin-left: 1px; }

/* ════════════════════════════════
   Search bar
════════════════════════════════ */
.ai-search-bar[b-xp0uxdmnbz] { display: flex; gap: 0.5rem; align-items: center; }

.ai-date-input[b-xp0uxdmnbz], .ai-keyword-input[b-xp0uxdmnbz] {
    height: 36px; font-size: 0.8rem;
    border: 1px solid var(--ah-border); border-radius: 6px;
    padding: 0 0.75rem; color: var(--ah-text); background: var(--ah-bg);
    outline: none; transition: border-color 0.15s;
}
.ai-date-input[b-xp0uxdmnbz] { width: 145px; }
.ai-keyword-input[b-xp0uxdmnbz] { width: 220px; }
.ai-date-input:focus[b-xp0uxdmnbz], .ai-keyword-input:focus[b-xp0uxdmnbz] {
    border-color: var(--ah-focus-color); box-shadow: var(--ah-focus-ring);
}
.ai-date-input.warn-border[b-xp0uxdmnbz] { border-color: var(--ah-warning); }

.ai-date-sep[b-xp0uxdmnbz] { font-size: 0.75rem; color: var(--ah-text-muted); padding: 0 0.15rem; }

.ai-search-btn[b-xp0uxdmnbz] {
    height: 36px; padding: 0 1rem;
    font-size: 0.75rem; font-weight: 700;
    background: var(--ah-text); color: var(--ah-bg);
    border: none; border-radius: 6px; cursor: pointer;
    display: inline-flex; align-items: center; gap: 0.4rem;
    transition: opacity 0.15s;
}
.ai-search-btn:hover[b-xp0uxdmnbz] { opacity: 0.85; }
.ai-search-btn:disabled[b-xp0uxdmnbz] { opacity: 0.5; cursor: not-allowed; }

.ai-search-hint[b-xp0uxdmnbz] { font-size: 0.65rem; color: var(--ah-text-muted); margin-top: 0.35rem; }
.ai-search-hint.warn[b-xp0uxdmnbz] { color: var(--ah-warning); font-weight: 600; }

.ai-log-count[b-xp0uxdmnbz] { font-size: 0.7rem; color: var(--ah-text-muted); padding-top: 0.5rem; }
.ai-log-count strong[b-xp0uxdmnbz] { color: var(--ah-text-sub); }
.ai-max-warn[b-xp0uxdmnbz] { color: var(--ah-warning); font-weight: 700; }

/* ════════════════════════════════
   Table
════════════════════════════════ */
.ai-table-container[b-xp0uxdmnbz] {
    background: var(--ah-bg); border: 1px solid var(--ah-border);
    border-radius: 12px; box-shadow: var(--ah-shadow-sm); overflow: hidden;
}

.ai-table[b-xp0uxdmnbz] { width: 100%; border-collapse: separate; border-spacing: 0; }

.ai-table th[b-xp0uxdmnbz] {
    font-size: 0.7rem; font-weight: 700; text-transform: uppercase;
    letter-spacing: 0.03em; color: var(--ah-text-muted); background: var(--ah-bg);
    border-bottom: 1px solid var(--ah-border);
    padding: 0.75rem 1.25rem; text-align: left; white-space: nowrap;
}
.ai-th-sub[b-xp0uxdmnbz] { font-weight: 400; font-size: 0.6rem; color: var(--ah-text-muted); }

.ai-table td[b-xp0uxdmnbz] {
    padding: 0.85rem 1.25rem; border-bottom: 1px solid var(--ah-bg-subtle);
    font-size: 0.85rem; color: var(--ah-text-sub); vertical-align: middle; white-space: nowrap;
}
.ai-table tbody tr[b-xp0uxdmnbz] { transition: background 0.1s; }
.ai-table tbody tr:hover[b-xp0uxdmnbz] { background: var(--ah-bg-subtle); }
.ai-table tbody tr:last-child td[b-xp0uxdmnbz] { border-bottom: none; }

.ai-empty-cell[b-xp0uxdmnbz] {
    text-align: center; padding: 3rem 0;
    color: var(--ah-text-muted); font-size: 0.8rem;
}

/* ════════════════════════════════
   Row elements
════════════════════════════════ */
.ai-time-main[b-xp0uxdmnbz] {
    font-family: 'JetBrains Mono', monospace;
    font-size: 0.8rem; font-weight: 600;
    color: var(--ah-text-sub); letter-spacing: -0.3px;
}
.ai-time-tz[b-xp0uxdmnbz] {
    font-family: 'JetBrains Mono', monospace;
    font-size: 0.6rem; color: var(--ah-text-muted);
}

.ai-category-badge[b-xp0uxdmnbz] {
    font-size: 0.65rem; font-weight: 700;
    padding: 0.2rem 0.6rem; border-radius: 4px;
    background: var(--ah-bg-surface); color: var(--ah-text-sub);
    border: 1px solid var(--ah-border);
    text-transform: uppercase; letter-spacing: 0.03em;
}
/* VS Code terminal neon palette (dark mode) */
[data-theme="dark"] .ai-cat-user[b-xp0uxdmnbz]         { background: rgba(78,201,176,0.15); color: #4ec9b0; border-color: rgba(78,201,176,0.3); }
[data-theme="dark"] .ai-cat-organization[b-xp0uxdmnbz] { background: rgba(206,145,252,0.15); color: #ce91fc; border-color: rgba(206,145,252,0.3); }
[data-theme="dark"] .ai-cat-auth[b-xp0uxdmnbz]         { background: rgba(86,182,255,0.15); color: #56b6ff; border-color: rgba(86,182,255,0.3); }
[data-theme="dark"] .ai-cat-system[b-xp0uxdmnbz]       { background: rgba(255,214,102,0.15); color: #ffd666; border-color: rgba(255,214,102,0.3); }
[data-theme="dark"] .ai-cat-security[b-xp0uxdmnbz]     { background: rgba(255,107,129,0.15); color: #ff6b81; border-color: rgba(255,107,129,0.3); }
[data-theme="dark"] .ai-cat-application[b-xp0uxdmnbz]  { background: rgba(99,179,237,0.15); color: #63b3ed; border-color: rgba(99,179,237,0.3); }

.ai-event-type[b-xp0uxdmnbz] {
    font-family: 'JetBrains Mono', monospace;
    font-weight: 700; color: var(--ah-text); font-size: 0.8rem; text-transform: lowercase;
}

.ai-actor-text[b-xp0uxdmnbz] {
    font-family: 'JetBrains Mono', monospace;
    font-size: 0.75rem; color: var(--ah-text-muted);
}

.ai-detail-btn[b-xp0uxdmnbz] {
    background: var(--ah-bg); border: 1px solid var(--ah-border);
    color: var(--ah-text-sub); font-weight: 600; font-size: 0.7rem;
    padding: 0.3rem 0.75rem; border-radius: 6px;
    cursor: pointer; transition: all 0.15s;
}
.ai-detail-btn:hover[b-xp0uxdmnbz] {
    background: var(--ah-bg-subtle); border-color: var(--ah-text-muted); color: var(--ah-text);
}
[data-theme="dark"] .ai-detail-btn[b-xp0uxdmnbz] {
    background: transparent; border-color: #eac4ff; color: #eac4ff;
}
[data-theme="dark"] .ai-detail-btn:hover[b-xp0uxdmnbz] {
    background: rgba(234,196,255,0.1); color: #ffffff;
}
.ai-detail-btn:disabled[b-xp0uxdmnbz] { opacity: 0.4; cursor: not-allowed; }
/* /Features/Auth/Pages/InvitationLanding.razor.rz.scp.css */
/* ── 전체 래퍼 ── */
.invite-split-wrapper[b-erjovc3et9] {
    display: flex;
    width: 100%;
    min-height: 100vh;
    align-items: stretch;
}

/* ── 왼쪽 패널 ── */
.invite-left-panel[b-erjovc3et9] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem 2.5rem;
    background-color: #f8fafc;
    border-right: 1px solid #e2e8f0;
    text-align: center;
}

.invite-org-logo[b-erjovc3et9] {
    width: 88px;
    height: 88px;
    background-color: #0f172a;
    color: #ffffff;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: -0.03em;
    margin-bottom: 1.5rem;
    box-shadow: 0 4px 14px rgba(15, 23, 42, 0.18);
}

/* 스켈레톤 */
.invite-org-logo.skeleton-box[b-erjovc3et9],
.invite-skeleton-line[b-erjovc3et9] {
    background: linear-gradient(90deg, #e2e8f0 25%, #f1f5f9 50%, #e2e8f0 75%);
    background-size: 200% 100%;
    animation: skeleton-shimmer-b-erjovc3et9 1.2s infinite;
    border-radius: 8px;
}

.invite-skeleton-line[b-erjovc3et9] {
    display: block;
}

@keyframes skeleton-shimmer-b-erjovc3et9 {
    0%   { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.invite-org-name[b-erjovc3et9] {
    font-size: 1.6rem;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 0.5rem;
    letter-spacing: -0.02em;
}

.invite-tagline[b-erjovc3et9] {
    font-size: 0.9rem;
    color: #64748b;
    margin-bottom: 2rem;
    line-height: 1.6;
}

.invite-meta[b-erjovc3et9] {
    width: 100%;
    max-width: 280px;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    padding: 1rem 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
}

.invite-meta-row[b-erjovc3et9] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 0.8rem;
}

.invite-meta-label[b-erjovc3et9] { color: #94a3b8; font-weight: 500; }
.invite-meta-value[b-erjovc3et9] {
    color: #334155;
    font-weight: 600;
    max-width: 160px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* ── 오른쪽 패널 ── */
.invite-right-panel[b-erjovc3et9] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 3rem 2rem;
    background-color: #ffffff;
}

/* ── 카드 ── */
.invite-card[b-erjovc3et9] {
    width: 100%;
    max-width: 400px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

/* ── 아이콘 원형 배지 ── */
.invite-icon-wrap[b-erjovc3et9] {
    width: 72px;
    height: 72px;
    background: #eef2ff;
    color: var(--ah-link);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.75rem;
    margin-bottom: 1.5rem;
}

/* ── 타이틀 & 서브 ── */
.invite-card-title[b-erjovc3et9] {
    font-size: 1.75rem;
    font-weight: 700;
    color: #0f172a;
    letter-spacing: -0.02em;
    margin-bottom: 0.6rem;
}

.invite-card-sub[b-erjovc3et9] {
    font-size: 0.9rem;
    color: #64748b;
    line-height: 1.7;
    margin-bottom: 1.75rem;
}

.invite-email-pill[b-erjovc3et9] {
    display: inline-block;
    margin-top: 0.25rem;
    background: #f1f5f9;
    color: #1e293b;
    border-radius: 6px;
    padding: 0.15rem 0.6rem;
    font-size: 0.88rem;
    font-weight: 600;
}

/* ── Accept 버튼 ── */
.invite-accept-btn[b-erjovc3et9] {
    width: 100%;
    padding: 0.85rem 1.25rem;
    background-color: #0f172a;
    color: #ffffff;
    font-weight: 600;
    font-size: 0.95rem;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    transition: background-color 0.2s, transform 0.15s;
    margin-bottom: 1rem;
}

.invite-accept-btn:hover:not(:disabled)[b-erjovc3et9] {
    background-color: #1e293b;
    transform: translateY(-1px);
}

.invite-accept-btn:disabled[b-erjovc3et9] {
    background-color: #94a3b8;
    cursor: not-allowed;
    transform: none;
}

/* ── 약관 텍스트 ── */
.invite-terms[b-erjovc3et9] {
    font-size: 0.78rem;
    color: #94a3b8;
    line-height: 1.6;
    margin-bottom: 1.5rem;
}

.invite-terms a[b-erjovc3et9] {
    color: var(--ah-link);
    font-weight: 600;
    text-decoration: none;
}

.invite-terms a:hover[b-erjovc3et9] { text-decoration: underline; }

/* ── 하단 Axowl 배지 ── */
.invite-footer-badge[b-erjovc3et9] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 0.75rem;
    color: #94a3b8;
    padding-top: 1.25rem;
    border-top: 1px solid #f1f5f9;
    width: 100%;
    justify-content: center;
}

.invite-footer-badge i[b-erjovc3et9] { color: var(--ah-link); }
.invite-footer-badge strong[b-erjovc3et9] { color: #475569; }

/* ── 상태(로딩/성공/에러) 공통 ── */
.invite-state-center[b-erjovc3et9] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 1rem 0;
}

.invite-spinner[b-erjovc3et9] {
    color: var(--ah-link);
    width: 2rem;
    height: 2rem;
    margin-bottom: 1rem;
}

.invite-state-title[b-erjovc3et9] {
    font-size: 1.6rem;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 0.5rem;
    letter-spacing: -0.02em;
}

.invite-state-sub[b-erjovc3et9] {
    font-size: 0.9rem;
    color: #64748b;
    line-height: 1.6;
    margin-bottom: 1rem;
}

.invite-secondary-link[b-erjovc3et9] {
    font-size: 0.85rem;
    color: var(--ah-link);
    font-weight: 600;
    text-decoration: none;
    margin-top: 0.5rem;
}

.invite-secondary-link:hover[b-erjovc3et9] { text-decoration: underline; }

/* ── 모바일 ── */
@media (max-width: 768px) {
    .invite-split-wrapper[b-erjovc3et9] { flex-direction: column; }
    .invite-left-panel[b-erjovc3et9] {
        border-right: none;
        border-bottom: 1px solid #e2e8f0;
        padding: 2rem 1.5rem;
    }
    .invite-org-logo[b-erjovc3et9] { width: 64px; height: 64px; font-size: 1.5rem; }
    .invite-org-name[b-erjovc3et9] { font-size: 1.3rem; }
    .invite-right-panel[b-erjovc3et9] { padding: 2rem 1.5rem; }
}
/* /Features/Auth/Pages/Login.razor.rz.scp.css */
/* Login 컨테이너: 카드 형태 디자인 */
/* Login 컨테이너: 흔들림 방지 패치 적용 */
/* Login 컨테이너 */
.login-container[b-erhi5glaxw] {
    width: 100%;
    max-width: 400px;
    background: #ffffff;
    padding: 2.5rem;
    border-radius: 16px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05);
    border: 1px solid #f1f5f9;
    min-height: 640px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    /* transition 제거 */
}

.login-header[b-erhi5glaxw] {
    text-align: center;
    margin-bottom: 2rem;
}

.login-header h1[b-erhi5glaxw] {
    font-size: 1.75rem;
    color: #1e293b;
    margin-bottom: 0.5rem;
}

/* 폼 요소 스타일링 */
.form-label[b-erhi5glaxw] {
    font-weight: 600;
    font-size: 0.875rem;
    color: #475569;
}

.form-control[b-erhi5glaxw] {
    padding: 0.75rem 1rem;
    border-radius: 8px;
    border: 1px solid #cbd5e1;
    background-color: #f8fafc;
}

.form-control:focus[b-erhi5glaxw] {
    border-color: var(--ah-link);
    box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.1);
}

/* 메인 로그인 버튼 */
.btn-login-action[b-erhi5glaxw] {
    width: 100%;
    padding: 0.85rem;
    background-color: #0f172a;
    color: white;
    font-weight: 600;
    border: none;
    border-radius: 8px;
    margin-top: 1rem;
    transition: all 0.2s;
}

.btn-login-action:hover[b-erhi5glaxw] {
    background-color: #1e293b;
    transform: translateY(-1px);
}

/* 구분선 */
.divider[b-erhi5glaxw] {
    text-align: center;
    margin: 1.5rem 0;
    position: relative;
}

.divider[b-erhi5glaxw]::before {
    content: "";
    position: absolute;
    left: 0; top: 50%;
    width: 100%;
    height: 1px;
    background: #e2e8f0;
}

.divider span[b-erhi5glaxw] {
    background: #fff;
    padding: 0 10px;
    color: #94a3b8;
    font-size: 0.8rem;
    position: relative;
}

/* 👇 [업데이트] 소셜 버튼 공통 스타일 (Google + LINE) 
   두 버튼 모두 같은 스타일을 공유하도록 콤마(,)로 묶었습니다.
*/
.social-btn[b-erhi5glaxw] {
    /* 1. 버튼 뼈대 */
    position: relative;          /* 👈 [필수] 아이콘의 기준점이 됩니다 */
    width: 100%;                 /* 가로 꽉 채움 */
    height: 48px;                /* 높이 고정 (선택사항이지만 추천) */
    
    /* 2. 글자 정렬 (정가운데) */
    display: flex;
    justify-content: center;     /* 글자를 가로 중앙으로 */
    align-items: center;         /* 글자를 세로 중앙으로 */
    
    /* 3. 디자인 */
    background-color: #ffffff;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    color: #475569;
    font-weight: 500;
    margin-bottom: 0.6rem;
    cursor: pointer;
    transition: background-color 0.2s;
}
.social-btn-content[b-erhi5glaxw] {
    display: flex;
    align-items: center;
    justify-content: flex-start; /* 내부에서는 왼쪽 정렬 */
    width: 220px;               /* 👈 [조절] 이 숫자로 전체 뭉텅이의 위치를 잡으세요 */
    gap: 12px;                  /* 아이콘과 글자 사이 간격 */
}
.social-btn:hover[b-erhi5glaxw] {
    background-color: #f8fafc;
}
.social-btn .icon-mono[b-erhi5glaxw] {
    display: block !important;
}
.social-btn .icon-color[b-erhi5glaxw] {
    display: none !important;
}

/* [호버] 흑백은 숨기고, 컬러는 보임(!important) */
.social-btn:hover .icon-mono[b-erhi5glaxw] {
    display: none !important;
}
.social-btn:hover .icon-color[b-erhi5glaxw] {
    display: block !important;
}
.login-footer[b-erhi5glaxw] {
    text-align: center;
    margin-top: 2rem;
}

/* 👇 아이콘 교체 로직 (Google, LINE 공통) */

/* 기본: 컬러 아이콘 숨김 */
.icon-color[b-erhi5glaxw] {
    display: none !important;
}

/* 호버 시: 모노 아이콘 숨김, 컬러 아이콘 표시 */
.btn-social-google:hover .icon-mono[b-erhi5glaxw],
.btn-social-line:hover .icon-mono[b-erhi5glaxw] {
    display: none !important;
}

.btn-social-google:hover .icon-color[b-erhi5glaxw],
.btn-social-line:hover .icon-color[b-erhi5glaxw] {
    display: inline-flex !important;
}

/* 패스키 버튼 호버 효과 (Mono 숨기고 Color 보이기) */
.social-btn:hover .icon-mono[b-erhi5glaxw],
.btn-social-passkey:hover .icon-mono[b-erhi5glaxw] {
    display: none !important;
}

.social-btn:hover .icon-color[b-erhi5glaxw],
.btn-social-passkey:hover .icon-color[b-erhi5glaxw] {
    display: inline-flex !important;
}

.success-state-container[b-erhi5glaxw] {
    text-align: center;
    padding: 1rem 0;
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* 1. 아이콘: 404 페이지처럼 은은한 배경 원형 추가 */
.success-icon-wrapper[b-erhi5glaxw] {
    width: 80px;
    height: 80px;
    background-color: rgba(99,91,255,0.15);
    color: var(--primary-color); /* #635bff */
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2.5rem; /* 아이콘 크기 */
    margin: 0 auto;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05); /* 살짝 띄운 느낌 */
}

/* 2. 타이틀: 굵고 진하게 */
.success-title[b-erhi5glaxw] {
    font-size: 1.8rem; /* 13px 기준 약 24px */
    font-weight: 700;
    color: #f1f5f9;
    margin-bottom: 0.75rem;
    letter-spacing: -0.02em;
}

/* 3. 설명 텍스트 */
.success-desc[b-erhi5glaxw] {
    font-size: 1.05rem;
    color: #94a3b8;
    line-height: 1.6;
    margin-bottom: 2rem;
}

/* 4. 이메일 강조 */
.email-highlight[b-erhi5glaxw] {
    color: #f1f5f9;
    font-weight: 600;
    position: relative;
    display: inline-block;
    padding: 0 4px;
}
/* 이메일 밑줄 형광펜 효과 */
.email-highlight[b-erhi5glaxw]::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 30%;
    background-color: rgba(99, 91, 255, 0.1); /* Primary color 연하게 */
    z-index: -1;
}

/* 5. 되돌아가기 버튼 (404 버튼과 동일한 룩앤필) */
.btn-back-home[b-erhi5glaxw] {
    height: 3.5rem; /* 살짝 높게 */
    background-color: #ffffff;
    border: 1px solid #cbd5e1; /* Slate-300 */
    color: var(--text-main);
    font-weight: 600;
    font-size: 0.95rem;
    border-radius: var(--border-radius);
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.btn-back-home:hover[b-erhi5glaxw] {
    background-color: #f8fafc; /* Slate-50 */
    border-color: #94a3b8; /* Slate-400 */
    color: var(--primary-color); /* 호버 시 브랜드 컬러 포인트 */
    transform: translateY(-1px); /* 살짝 떠오르는 효과 */
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}

.btn-back-home:active[b-erhi5glaxw] {
    transform: translateY(0);
}
.social-btn .bi-fingerprint[b-erhi5glaxw] { color: #5F6368; }
.social-btn:hover .bi-fingerprint[b-erhi5glaxw] { color: var(--ah-link); }
@media (max-width: 576px) {
    .login-container[b-erhi5glaxw] {
        box-shadow: none !important;
        border: none !important;
        width: 100% !important;
        max-width: 100% !important;
        border-radius: 0 !important;
        background-color: transparent !important;
        padding: 1rem 1.2rem !important;
    }
    
    .form-control[b-erhi5glaxw] {
        font-size: 16px !important;
    }
}
/* /Features/Auth/Pages/MyDevices.razor.rz.scp.css */
/* MyDevices.razor.css — CSS variable 기반 */
.light-dashboard[b-spl2kum9ij] { width: 100%; margin: 0 auto; padding-bottom: 80px; }

.x-small[b-spl2kum9ij] { font-size: 0.75rem; letter-spacing: 0.02em; color: var(--ah-text-muted); font-weight: 500; }

.metric-card[b-spl2kum9ij] {
    background:    var(--ah-bg);
    border:        1px solid var(--ah-border);
    border-radius: 12px;
    padding:       24px;
    box-shadow:    var(--ah-shadow-sm);
    height:        100%;
}

.summary-value[b-spl2kum9ij] { font-size: 1.75rem; font-weight: 800; color: var(--ah-text); letter-spacing: -1px; line-height: 1; }
.summary-label[b-spl2kum9ij] { font-size: 0.7rem; font-weight: 700; color: var(--ah-text-muted); text-transform: uppercase; letter-spacing: 0.03em; margin-top: 0.35rem; }

.org-header[b-spl2kum9ij] {
    display:          flex;
    align-items:      center;
    justify-content:  space-between;
    padding:          1rem 1.5rem;
    border-bottom:    1px solid var(--ah-border);
    background:       var(--ah-bg-subtle);
    border-radius:    12px 12px 0 0;
}

.org-avatar[b-spl2kum9ij] {
    width:           34px;
    height:          34px;
    border-radius:   8px;
    background:      var(--ah-text);
    color:           var(--ah-bg);
    display:         flex;
    align-items:     center;
    justify-content: center;
    font-size:       0.9rem;
    font-weight:     800;
    flex-shrink:     0;
}

.org-name[b-spl2kum9ij]  { font-weight: 700; color: var(--ah-text); font-size: 0.875rem; }
.seal-id[b-spl2kum9ij]   { font-family: 'JetBrains Mono', monospace; font-size: 0.65rem; color: var(--ah-text-muted); }

.membership-badge[b-spl2kum9ij] { font-size: 0.65rem; font-weight: 700; padding: 0.2rem 0.6rem; border-radius: 4px; letter-spacing: 0.02em; }
.role-owner[b-spl2kum9ij]   { background: var(--ah-text);  color: var(--ah-bg); }
.role-admin[b-spl2kum9ij]   { background: var(--ah-accent); color: #fff; }
.role-manager[b-spl2kum9ij] { background: #e0e7ff; color: #4338ca; border: 1px solid #c7d2fe; }
.role-member[b-spl2kum9ij]  { background: var(--ah-bg-surface); color: var(--ah-text-sub); border: 1px solid var(--ah-border); }

.audit-table[b-spl2kum9ij] { width: 100%; border-collapse: separate; border-spacing: 0; margin-bottom: 0; }

.audit-table th[b-spl2kum9ij] {
    font-size:        0.75rem;
    font-weight:      700;
    text-transform:   uppercase;
    letter-spacing:   0.05em;
    color:            var(--ah-text-muted);
    background-color: var(--ah-bg);
    border-bottom:    1px solid var(--ah-border);
    padding:          0.85rem 1.5rem;
    text-align:       left;
    white-space:      nowrap;
    vertical-align:   middle;
}

.audit-table td[b-spl2kum9ij] {
    padding:        0.9rem 1.5rem;
    border-bottom:  1px solid var(--ah-bg-subtle);
    font-size:      0.875rem;
    color:          var(--ah-text-sub);
    vertical-align: middle;
    white-space:    nowrap;
}

.audit-table tbody tr:hover[b-spl2kum9ij]        { background-color: var(--ah-bg-subtle); }
.audit-table tbody tr:last-child td[b-spl2kum9ij] { border-bottom: none; }
.current-device-row[b-spl2kum9ij]                { background: var(--ah-success-bg); }
.current-device-row:hover[b-spl2kum9ij]          { background: var(--ah-success-bg) !important; opacity: 0.85; }

.device-name-text[b-spl2kum9ij] { font-weight: 700; color: var(--ah-text); font-size: 0.8rem; display: flex; align-items: center; gap: 0.4rem; }
.current-badge[b-spl2kum9ij]    { font-size: 0.55rem; font-weight: 800; padding: 0.15rem 0.45rem; border-radius: 3px; background: #10b981; color: #fff; }

.hw-badge[b-spl2kum9ij], .hw-pending-badge[b-spl2kum9ij], .ownership-badge[b-spl2kum9ij] {
    font-size:     0.65rem;
    font-weight:   600;
    padding:       0.2rem 0.5rem;
    border-radius: 4px;
    background:    var(--ah-bg-surface);
    color:         var(--ah-text-sub);
    border:        1px solid var(--ah-border);
}

.sw-badge[b-spl2kum9ij] {
    font-size:     0.65rem;
    font-weight:   600;
    padding:       0.2rem 0.55rem;
    border-radius: 4px;
    background:    var(--ah-bg-subtle);
    color:         var(--ah-text-muted);
    border:        1px solid var(--ah-border);
}

.status-badge[b-spl2kum9ij]    { font-size: 0.65rem; font-weight: 600; padding: 0.2rem 0.5rem; border-radius: 4px; }
.status-active[b-spl2kum9ij]   { background: var(--ah-success-bg); color: var(--ah-success); border: 1px solid var(--ah-success-border); }
.status-pending[b-spl2kum9ij]  { background: var(--ah-warning-bg); color: var(--ah-warning); border: 1px solid var(--ah-warning-border); }
.status-preset[b-spl2kum9ij]   { background: #f5f3ff; color: #7c3aed; border: 1px solid #ddd6fe; }
.status-blocked[b-spl2kum9ij]  { background: var(--ah-danger-bg);  color: var(--ah-danger);  border: 1px solid var(--ah-danger-border); }
.status-revoked[b-spl2kum9ij]  { background: var(--ah-bg-surface); color: var(--ah-text-muted); border: 1px solid var(--ah-border); }

.device-time[b-spl2kum9ij] { font-family: 'JetBrains Mono', monospace; font-size: 0.78rem; font-weight: 600; color: var(--ah-text); }
.geo-ip[b-spl2kum9ij]      { font-family: 'JetBrains Mono', monospace; font-size: 0.7rem; color: var(--ah-text-sub); }
.geo-label[b-spl2kum9ij]   { font-size: 0.65rem; color: var(--ah-text-muted); }

.page-count[b-spl2kum9ij] { font-size: 0.7rem; color: var(--ah-text-muted); padding: 0.75rem 1.5rem; text-align: right; border-top: 1px solid var(--ah-bg-subtle); }
.page-count strong[b-spl2kum9ij] { color: var(--ah-text-sub); }

.btn-detail-outline[b-spl2kum9ij] {
    background:    var(--ah-bg);
    border:        1px solid var(--ah-border);
    color:         var(--ah-text-sub);
    font-weight:   600;
    font-size:     0.8rem;
    padding:       0.45rem 0.9rem;
    border-radius: 6px;
    cursor:        pointer;
    transition:    all 0.15s;
    height:        auto;
}
.btn-detail-outline:hover[b-spl2kum9ij]    { background: var(--ah-bg-subtle); border-color: var(--ah-text-muted); color: var(--ah-text); }
.btn-detail-outline:disabled[b-spl2kum9ij] { opacity: 0.5; cursor: not-allowed; }

.action-icon-btn[b-spl2kum9ij] {
    background:      none;
    border:          1px solid var(--ah-border);
    width:           28px;
    height:          28px;
    border-radius:   6px;
    font-size:       0.8rem;
    color:           var(--ah-text-muted);
    cursor:          pointer;
    display:         inline-flex;
    align-items:     center;
    justify-content: center;
    transition:      all 0.12s;
    padding:         0;
}
.action-icon-btn:hover[b-spl2kum9ij]        { background: var(--ah-bg-surface); border-color: var(--ah-text-muted); color: var(--ah-text); }
.action-icon-btn.danger[b-spl2kum9ij]       { color: var(--ah-danger); border-color: var(--ah-danger-border); }
.action-icon-btn.danger:hover[b-spl2kum9ij] { background: var(--ah-danger-bg); }

.kebab-wrapper[b-spl2kum9ij] { position: relative; display: inline-block; }
.kebab-btn[b-spl2kum9ij] {
    background: none; border: 1px solid transparent;
    font-size: 1.2rem; letter-spacing: 2px;
    color: var(--ah-text-muted); cursor: pointer;
    padding: 0.2rem 0.5rem; border-radius: 6px; transition: all 0.15s; line-height: 1;
}
.kebab-btn:hover[b-spl2kum9ij] { background: var(--ah-bg-surface); color: var(--ah-text-sub); border-color: var(--ah-border); }

.kebab-menu[b-spl2kum9ij] {
    position: absolute; right: 0; top: 100%; margin-top: 4px;
    background: var(--ah-bg); border: 1px solid var(--ah-border);
    border-radius: 8px; box-shadow: var(--ah-shadow-md);
    min-width: 150px; z-index: 50; padding: 4px;
}
.kebab-item[b-spl2kum9ij] { display: block; width: 100%; text-align: left; padding: 0.5rem 0.75rem; font-size: 0.8rem; font-weight: 600; color: var(--ah-text); background: none; border: none; border-radius: 6px; cursor: pointer; transition: background 0.1s; }
.kebab-item:hover[b-spl2kum9ij]        { background: var(--ah-bg-subtle); }
.kebab-item.danger[b-spl2kum9ij]       { color: var(--ah-danger); }
.kebab-item.danger:hover[b-spl2kum9ij] { background: var(--ah-danger-bg); }

.modal-backdrop[b-spl2kum9ij] {
    position: fixed; inset: 0;
    background: rgba(0,0,0,0.45); z-index: 1000;
    display: flex; align-items: center; justify-content: center;
}
.modal-panel[b-spl2kum9ij] {
    background: var(--ah-bg); border-radius: 12px;
    box-shadow: var(--ah-shadow-lg); padding: 2rem;
    width: 100%; max-width: 440px;
}
.modal-title[b-spl2kum9ij] { font-size: 1.05rem; font-weight: 700; color: var(--ah-text); margin-bottom: 0.25rem; }
.modal-desc[b-spl2kum9ij]  { font-size: 0.82rem; color: var(--ah-text-sub); margin-bottom: 1.5rem; line-height: 1.5; }
.modal-actions[b-spl2kum9ij] { display: flex; justify-content: flex-end; gap: 0.5rem; margin-top: 1.5rem; }

.modal-field[b-spl2kum9ij] { margin-bottom: 1rem; }
.modal-label[b-spl2kum9ij] { font-size: 0.78rem; font-weight: 600; color: var(--ah-text-sub); display: block; margin-bottom: 0.3rem; }

.modal-input[b-spl2kum9ij], .modal-select[b-spl2kum9ij] {
    width: 100%; padding: 0.6rem 0.75rem; height: 38px;
    font-size: 0.82rem; border: 1px solid var(--ah-border);
    border-radius: 6px; outline: none;
    background: var(--ah-bg); color: var(--ah-text);
    box-sizing: border-box; transition: border-color 0.15s;
}
.modal-input:focus[b-spl2kum9ij], .modal-select:focus[b-spl2kum9ij] { border-color: var(--ah-text-muted); }

.btn-modal-primary[b-spl2kum9ij] {
    padding: 0.45rem 1rem; font-size: 0.82rem; font-weight: 600;
    border: none; background: var(--ah-text); color: var(--ah-bg);
    border-radius: 6px; cursor: pointer; transition: opacity 0.15s;
}
.btn-modal-primary:hover[b-spl2kum9ij]    { opacity: 0.85; }
.btn-modal-primary:disabled[b-spl2kum9ij] { opacity: 0.5; cursor: not-allowed; }

.btn-modal-danger[b-spl2kum9ij] {
    padding: 0.45rem 1rem; font-size: 0.82rem; font-weight: 600;
    border: none; background: var(--ah-danger); color: #fff;
    border-radius: 6px; cursor: pointer; transition: opacity 0.15s;
}
.btn-modal-danger:hover[b-spl2kum9ij]    { opacity: 0.85; }
.btn-modal-danger:disabled[b-spl2kum9ij] { opacity: 0.5; cursor: not-allowed; }
/* /Features/Auth/Pages/Profile.razor.rz.scp.css */
/* Profile.razor.css */

.profile-card[b-f3cxloer4n] {
    max-width: 800px;
    margin: 0 auto;
}

.card-header-custom[b-f3cxloer4n] {
    background-color: white;
    padding-top: 1rem;
    padding-bottom: 1rem;
}

.profile-img[b-f3cxloer4n] {
    width: 150px;
    height: 150px;
    object-fit: cover;
}

.profile-placeholder[b-f3cxloer4n] {
    width: 150px;
    height: 150px;
    font-size: 3rem;
    color: #cbd5e1;
    background-color: #f8fafc; /* bg-light 대체 */
}

.detail-label[b-f3cxloer4n] {
    font-weight: 700;
    color: #64748b; /* text-secondary 대체 */
}

.section-title[b-f3cxloer4n] {
    color: #6c757d;
    text-transform: uppercase;
    font-size: 0.85rem; /* small */
    font-weight: 700;
    margin-bottom: 1rem;
}
/* /Features/Auth/Pages/Verify.razor.rz.scp.css */

/* 1. 화면 전체 컨테이너 */
.verify-page[b-2gl2485zk9] {
    height: 100vh;
    width: 100%;
    background-color: #0a0a0a;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
}

/* 2. 공통 텍스트 스타일 */
.verify-title[b-2gl2485zk9] {
    font-size: 1.5rem;
    font-weight: 700;
    margin-top: 1.5rem;
    margin-bottom: 0.5rem;
    color: #f1f5f9;
    letter-spacing: -0.02em;
}

.verify-desc[b-2gl2485zk9] {
    font-size: 0.95rem;
    color: #94a3b8;
    margin-bottom: 0;
}

/* 3. 로딩 스피너 (브랜드 컬러 적용) */
.custom-spinner[b-2gl2485zk9] {
    width: 3.5rem;
    height: 3.5rem;
    border-width: 3px;
    color: var(--primary-color, #635bff); /* 브랜드 컬러 */
}

/* 4. 실패 화면 버튼 */
.btn-retry[b-2gl2485zk9] {
    margin-top: 2rem;
    background: transparent;
    border: 1px solid #334155;
    padding: 0.8rem 2rem;
    border-radius: 50px;
    color: #94a3b8;
    font-size: 0.9rem;
    font-weight: 500;
    transition: all 0.2s ease;
    cursor: pointer;
}

.btn-retry:hover[b-2gl2485zk9] {
    border-color: var(--ah-link);
    color: #f1f5f9;
    background-color: rgba(99,91,255,0.1);
}

/* 5. 아이콘 크기 */
.status-icon[b-2gl2485zk9] {
    font-size: 3.5rem;
    line-height: 1;
}

/* Login.razor.css */

/* 1. 컨테이너: 카드/그림자 제거 및 배경 투명화 */
.success-state-container[b-2gl2485zk9] {
    background-color: transparent !important; /* 배경 날리기 */
    box-shadow: none !important;              /* 그림자 날리기 */
    border: none !important;                  /* 테두리 날리기 */
    
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 1rem;
    max-width: 400px;
    margin: 0 auto;
}

/* 2. 아이콘 (Verify 페이지처럼 깔끔하게, 원형 포인트는 유지) */
.success-icon-wrapper[b-2gl2485zk9] {
    width: 5rem;
    height: 5rem;
    font-size: 2.5rem;
    
    /* 은은한 브랜드 컬러 배경 */
    background-color: #f1f5f9; /* Slate-100 (아주 연한 회색) */
    color: var(--primary-color, #635bff);
    
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
}

/* 3. 텍스트 스타일 (Simple is Best) */
.success-title[b-2gl2485zk9] {
    font-size: 1.6rem;
    font-weight: 700;
    color: var(--text-main, #1e293b);
    margin-bottom: 0.5rem;
    letter-spacing: -0.02em;
}

.success-desc[b-2gl2485zk9] {
    font-size: 1rem;
    color: var(--text-sub, #64748b);
    line-height: 1.6;
    margin-bottom: 1.5rem;
}

.email-highlight[b-2gl2485zk9] {
    color: var(--text-main, #1e293b);
    font-weight: 600;
}

/* 4. 알약 모양 버튼 (Verify 페이지와 통일) */
.btn-back-pill[b-2gl2485zk9] {
    background: transparent;
    border: 1px solid #e2e8f0;
    padding: 0.8rem 1.5rem;
    border-radius: 50px; /* 둥근 알약 모양 */
    color: var(--text-sub, #64748b);
    font-size: 0.9rem;
    font-weight: 500;
    transition: all 0.2s ease;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: auto; /* 꽉 차지 않게 */
}

.btn-back-pill:hover[b-2gl2485zk9] {
    border-color: var(--text-main, #1e293b);
    color: var(--text-main, #1e293b);
    background-color: #f8fafc;
    transform: translateY(-1px);
}
/* /Features/Dashboard/Pages/AppDashboard.razor.rz.scp.css */
/* AppDashboard — page-specific only.
   Common classes are in ah-components.css */

/* ── Page header ── */
.page-title[b-tjl58yzeaz] { font-weight: 800; font-size: 1.3rem; color: var(--ah-text); letter-spacing: -0.5px; }
.page-desc[b-tjl58yzeaz]  { font-size: 0.8rem; color: var(--ah-text-muted); margin-top: 0.2rem; }

/* ── Info box ── */
.info-box[b-tjl58yzeaz] {
    background: var(--ah-bg-subtle); border: 1px solid var(--ah-border);
    border-radius: 10px; padding: 1.25rem 1.4rem; margin-bottom: 1.5rem;
}
.info-box-title[b-tjl58yzeaz] { font-size: 0.75rem; font-weight: 700; color: var(--ah-text); margin-bottom: 0.5rem; }
.info-box-body[b-tjl58yzeaz]  { font-size: 0.78rem; color: var(--ah-text-muted); line-height: 1.65; }

/* ── Stats ── */
.stats-row[b-tjl58yzeaz] { display: flex; gap: 1rem; margin-bottom: 1.5rem; }
.stat-card[b-tjl58yzeaz] {
    flex: 1; background: var(--ah-bg); border: 1px solid var(--ah-border-soft);
    border-radius: 10px; padding: 1.1rem 1.25rem; box-shadow: var(--ah-shadow-sm);
}
.stat-label[b-tjl58yzeaz] { font-size: 0.6rem; font-weight: 700; color: var(--ah-text-muted); text-transform: uppercase; letter-spacing: 0.04em; }
.stat-value[b-tjl58yzeaz] { font-size: 1.4rem; font-weight: 800; color: var(--ah-text); letter-spacing: -0.5px; margin-top: 0.15rem; }
.stat-sub[b-tjl58yzeaz]   { font-size: 0.65rem; color: var(--ah-text-muted); margin-top: 0.1rem; }

/* ── Groups header ── */
.groups-header[b-tjl58yzeaz] { display: flex; justify-content: space-between; align-items: center; margin-bottom: 1rem; }
.table-title[b-tjl58yzeaz]   { font-size: 0.85rem; font-weight: 700; color: var(--ah-text); }

/* ── App cards ── */
.app-card[b-tjl58yzeaz] {
    background: var(--ah-bg); border: 1px solid var(--ah-border-soft);
    border-radius: var(--ah-radius-lg); padding: 1.5rem;
    box-shadow: var(--ah-shadow-sm); transition: box-shadow 0.15s, border-color 0.15s;
    cursor: pointer; height: 100%; display: flex; flex-direction: column;
}
.app-card:hover[b-tjl58yzeaz] { box-shadow: var(--ah-shadow-md); border-color: var(--ah-border); }

.app-icon[b-tjl58yzeaz] {
    width: 40px; height: 40px; border-radius: 10px;
    display: flex; align-items: center; justify-content: center;
    font-size: 1.1rem; font-weight: 700; color: #ffffff; flex-shrink: 0;
}
.app-name[b-tjl58yzeaz]       { font-weight: 700; color: var(--ah-text); font-size: 0.95rem; }
.app-desc[b-tjl58yzeaz]       { font-size: 0.7rem; color: var(--ah-text-muted); margin-top: 0.1rem; }
.app-stat[b-tjl58yzeaz]       { font-size: 0.75rem; color: var(--ah-text-muted); }
.app-stat-value[b-tjl58yzeaz] { font-weight: 700; color: var(--ah-text-sub); }

/* ── Type badges ── */
.type-badge[b-tjl58yzeaz]   { font-size: 0.6rem; font-weight: 700; padding: 0.12rem 0.4rem; border-radius: 3px; }
.type-web[b-tjl58yzeaz]     { background: #eff6ff; color: #1d4ed8; }
.type-mobile[b-tjl58yzeaz]  { background: #ecfdf5; color: #065f46; }
.type-m2m[b-tjl58yzeaz]     { background: var(--ah-bg-subtle); color: var(--ah-text-sub); border: 1px solid var(--ah-border); }
.type-api[b-tjl58yzeaz]     { background: #f5f3ff; color: #5b21b6; }
.type-micro[b-tjl58yzeaz]   { background: #fff7ed; color: #9a3412; }
.type-more[b-tjl58yzeaz]    { background: var(--ah-bg-surface); color: var(--ah-text-muted); }

/* ── Environment badges ── */
.env-badge[b-tjl58yzeaz]   { font-size: 0.6rem; font-weight: 700; padding: 0.12rem 0.45rem; border-radius: 3px; }
.env-prod[b-tjl58yzeaz]    { background: #f0fdf4; color: #166534; }
.env-staging[b-tjl58yzeaz] { background: #fff7ed; color: #9a3412; }
.env-testing[b-tjl58yzeaz] { background: #f0f9ff; color: #075985; }
.env-dev[b-tjl58yzeaz]     { background: #f5f3ff; color: #5b21b6; }

/* ── Add card ── */
.add-app-card[b-tjl58yzeaz] {
    background: var(--ah-bg); border: 2px dashed var(--ah-border);
    border-radius: var(--ah-radius-lg); padding: 1.5rem;
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    cursor: pointer; height: 100%; min-height: 160px;
    transition: border-color 0.15s, background-color 0.15s;
}
.add-app-card:hover[b-tjl58yzeaz] { border-color: var(--ah-link); background-color: #fafafe; }
.add-app-icon[b-tjl58yzeaz] {
    width: 40px; height: 40px; border-radius: 50%;
    background: var(--ah-bg-surface); color: var(--ah-text-sub);
    display: flex; align-items: center; justify-content: center;
    font-size: 1.25rem; transition: background-color 0.15s, color 0.15s;
}
.add-app-card:hover .add-app-icon[b-tjl58yzeaz] { background-color: #eef2ff; color: var(--ah-link); }

/* ── Buttons ── */
.btn-create[b-tjl58yzeaz] {
    font-size: 0.75rem; font-weight: 700; color: var(--ah-accent-text);
    background: var(--ah-accent); border: 1px solid var(--ah-accent);
    padding: 0.4rem 1.1rem; border-radius: var(--ah-radius);
    cursor: pointer; transition: opacity 0.15s;
    display: inline-flex; align-items: center; gap: 0.3rem;
}
.btn-create:hover[b-tjl58yzeaz] { opacity: 0.85; }

.btn-refresh[b-tjl58yzeaz] {
    font-size: 0.75rem; font-weight: 600; color: var(--ah-text-sub);
    background: var(--ah-bg); border: 1px solid var(--ah-border);
    padding: 0.4rem 1rem; border-radius: var(--ah-radius);
    cursor: pointer; transition: all 0.15s;
    display: inline-flex; align-items: center; gap: 0.3rem;
}
.btn-refresh:hover[b-tjl58yzeaz] { background: var(--ah-bg-subtle); border-color: var(--ah-text-muted); }

/* ── Error bar ── */
.error-bar[b-tjl58yzeaz] {
    background: var(--ah-danger-bg); border: 1px solid var(--ah-danger-border);
    border-radius: var(--ah-radius-md); padding: 0.6rem 0.9rem;
    font-size: 0.78rem; color: #991b1b; margin-bottom: 1rem;
}

/* ── Client list ── */
.client-list[b-tjl58yzeaz]      { display: flex; flex-direction: column; gap: 0.25rem; }
.client-list-item[b-tjl58yzeaz] { display: flex; align-items: center; gap: 0.35rem; font-size: 0.75rem; }
.client-list-type[b-tjl58yzeaz] { font-weight: 600; color: var(--ah-text-sub); }
.client-list-sep[b-tjl58yzeaz]  { color: var(--ah-text-muted); }

/* ── Radio group ── */
.radio-group[b-tjl58yzeaz] { display: flex; flex-direction: column; gap: 0.5rem; margin-bottom: 1rem; }
.radio-option[b-tjl58yzeaz] {
    display: flex; align-items: center; gap: 0.6rem;
    font-size: 0.82rem; font-weight: 500; color: var(--ah-text-sub);
    padding: 0.6rem 0.85rem; border-radius: var(--ah-radius-md);
    border: 1px solid var(--ah-border); cursor: pointer; transition: all 0.15s;
}
.radio-option.selected[b-tjl58yzeaz] { border-color: var(--ah-link); background: #f5f3ff; color: #3730a3; }

.radio-dot[b-tjl58yzeaz] {
    width: 14px; height: 14px; border-radius: 50%;
    border: 2px solid var(--ah-text-muted); flex-shrink: 0; transition: all 0.15s;
}
.radio-dot.on[b-tjl58yzeaz] { border-color: var(--ah-link); background: var(--ah-accent); box-shadow: inset 0 0 0 3px var(--ah-bg); }
/* /Features/Dashboard/Pages/Dashboard.razor.rz.scp.css */
/* ==========================================================================
   Axowl Dashboard — Dashboard.razor.css
   Scoped to .ah-dashboard, dark mode via [data-theme="dark"]
   ========================================================================== */

   .ah-dashboard[b-x1r61cmrpl] {
    width: 100%;
    font-family: 'Inter', system-ui, sans-serif;
}

/* ── Header ───────────────────────────────────────────────────────────── */
.ah-db-header[b-x1r61cmrpl] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 1.25rem;
}

.ah-db-title[b-x1r61cmrpl] {
    margin: 0;
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--ah-text);
    letter-spacing: -0.3px;
}

.ah-db-subtitle[b-x1r61cmrpl] {
    margin: 3px 0 0;
    font-size: 0.72rem;
    color: var(--ah-text-muted);
}

.ah-db-header-actions[b-x1r61cmrpl] {
    display: flex;
    gap: 8px;
    align-items: center;
}

/* Live badge */
.ah-live-badge[b-x1r61cmrpl] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 0.68rem;
    font-weight: 600;
    padding: 4px 10px;
    border-radius: 20px;
    background: var(--ah-bg-subtle);
    color: var(--ah-text-muted);
    border: 1px solid var(--ah-border);
}

.ah-live-badge.live[b-x1r61cmrpl] {
    background: var(--ah-success-bg);
    color: var(--ah-success);
    border-color: var(--ah-success-border);
}

.ah-live-dot[b-x1r61cmrpl] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: currentColor;
}

.ah-live-badge.live .ah-live-dot[b-x1r61cmrpl] {
    animation: ah-pulse-b-x1r61cmrpl 2s infinite;
}

@keyframes ah-pulse-b-x1r61cmrpl {
    0%, 100% { opacity: 1; }
    50%       { opacity: 0.4; }
}

.ah-db-range-select[b-x1r61cmrpl] {
    font-size: 0.72rem;
    padding: 5px 10px;
    border: 1px solid var(--ah-border);
    border-radius: var(--ah-radius);
    background: var(--ah-bg);
    color: var(--ah-text-sub);
    cursor: pointer;
    outline: none;
}

/* ── Tabs ─────────────────────────────────────────────────────────────── */
.ah-db-tabs[b-x1r61cmrpl] {
    display: flex;
    gap: 0;
    border-bottom: 1px solid var(--ah-border);
    margin-bottom: 1.25rem;
    overflow-x: auto;
    scrollbar-width: none;
}
.ah-db-tabs[b-x1r61cmrpl]::-webkit-scrollbar { display: none; }

.ah-db-tab[b-x1r61cmrpl] {
    padding: 8px 16px;
    font-size: 0.78rem;
    font-weight: 600;
    border: none;
    background: none;
    cursor: pointer;
    color: var(--ah-text-muted);
    border-bottom: 2px solid transparent;
    margin-bottom: -1px;
    transition: color 0.15s, border-color 0.15s;
    white-space: nowrap;
    display: flex;
    align-items: center;
    gap: 6px;
}

.ah-db-tab:hover[b-x1r61cmrpl]  { color: var(--ah-text-sub); }
.ah-db-tab.active[b-x1r61cmrpl] { color: var(--ah-link); border-bottom-color: var(--ah-link); }

.ah-db-tab-badge[b-x1r61cmrpl] {
    font-size: 0.6rem;
    font-weight: 700;
    background: var(--ah-link);
    color: #fff;
    padding: 1px 6px;
    border-radius: 10px;
}
[data-theme="dark"] .ah-db-tab-badge[b-x1r61cmrpl] {
    background: #eac4ff;
    color: #1a1a1a;
}

/* ── Metric Cards ─────────────────────────────────────────────────────── */
.ah-db-metrics[b-x1r61cmrpl] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 1.25rem;
}

@media (max-width: 768px) {
    .ah-db-metrics[b-x1r61cmrpl] { grid-template-columns: repeat(2, 1fr); }
}

.ah-metric-card[b-x1r61cmrpl] {
    background: var(--ah-bg);
    border: 1px solid var(--ah-border);
    border-radius: var(--ah-radius-lg);
    padding: 1rem;
}

.ah-metric-label[b-x1r61cmrpl] {
    margin: 0 0 5px;
    font-size: 0.68rem;
    font-weight: 700;
    color: var(--ah-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.ah-metric-value[b-x1r61cmrpl] {
    margin: 0;
    font-size: 1.6rem;
    font-weight: 600;
    color: var(--ah-text);
    letter-spacing: -0.5px;
    line-height: 1.1;
}

.ah-metric-sub[b-x1r61cmrpl] {
    margin: 4px 0 0;
    font-size: 0.68rem;
    color: var(--ah-text-muted);
}

.ah-metric-sub.ah-sub-up[b-x1r61cmrpl]    { color: var(--ah-success); }
.ah-metric-sub.ah-sub-danger[b-x1r61cmrpl] { color: var(--ah-danger); }

.ah-value-danger[b-x1r61cmrpl] { color: var(--ah-danger) !important; }
.ah-value-info[b-x1r61cmrpl]   { color: #3b82f6 !important; }

/* ── Card ─────────────────────────────────────────────────────────────── */
.ah-db-card[b-x1r61cmrpl] {
    background: var(--ah-bg);
    border: 1px solid var(--ah-border);
    border-radius: var(--ah-radius-lg);
    padding: 1rem;
    margin-bottom: 12px;
}

.ah-db-card-header[b-x1r61cmrpl] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
    flex-wrap: wrap;
    gap: 8px;
}

.ah-db-card-title[b-x1r61cmrpl] {
    margin: 0;
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--ah-text);
    display: flex;
    align-items: center;
    gap: 6px;
}

.ah-db-card-desc[b-x1r61cmrpl] {
    margin: 3px 0 0;
    font-size: 0.68rem;
    color: var(--ah-text-muted);
}

/* ── Grids ────────────────────────────────────────────────────────────── */
.ah-db-grid-2-1[b-x1r61cmrpl] {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 12px;
    margin-bottom: 12px;
}

.ah-db-grid-3-2[b-x1r61cmrpl] {
    display: grid;
    grid-template-columns: 3fr 2fr;
    gap: 12px;
    margin-bottom: 12px;
}

@media (max-width: 768px) {
    .ah-db-grid-2-1[b-x1r61cmrpl],
    .ah-db-grid-3-2[b-x1r61cmrpl] { grid-template-columns: 1fr; }
}

/* ── Chart ────────────────────────────────────────────────────────────── */
.ah-chart-wrap[b-x1r61cmrpl] {
    position: relative;
    width: 100%;
}

.ah-chart-legend[b-x1r61cmrpl] {
    display: flex;
    gap: 12px;
    font-size: 0.68rem;
    color: var(--ah-text-muted);
}

.ah-legend-dot[b-x1r61cmrpl] {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 2px;
    margin-right: 4px;
}

/* ── Alerts ───────────────────────────────────────────────────────────── */
.ah-alert-badge[b-x1r61cmrpl] {
    font-size: 0.6rem;
    font-weight: 700;
    background: var(--ah-danger-bg);
    color: var(--ah-danger);
    padding: 2px 7px;
    border-radius: 10px;
    border: 1px solid var(--ah-danger-border);
}

.ah-alerts-list[b-x1r61cmrpl] { display: flex; flex-direction: column; gap: 7px; }

.ah-alert-item[b-x1r61cmrpl] {
    padding: 9px;
    border-radius: var(--ah-radius-md);
}

.ah-alert-item.ah-alert-danger[b-x1r61cmrpl]  { background: var(--ah-danger-bg);  border: 1px solid var(--ah-danger-border); }
.ah-alert-item.ah-alert-warning[b-x1r61cmrpl] { background: var(--ah-warning-bg); border: 1px solid var(--ah-warning-border); }
.ah-alert-item.ah-alert-success[b-x1r61cmrpl] { background: var(--ah-success-bg); border: 1px solid var(--ah-success-border); }

.ah-alert-title[b-x1r61cmrpl] {
    margin: 0 0 2px;
    font-size: 0.72rem;
    font-weight: 600;
}

.ah-alert-item.ah-alert-danger  .ah-alert-title[b-x1r61cmrpl] { color: var(--ah-danger); }
.ah-alert-item.ah-alert-warning .ah-alert-title[b-x1r61cmrpl] { color: var(--ah-warning); }
.ah-alert-item.ah-alert-success .ah-alert-title[b-x1r61cmrpl] { color: var(--ah-success); }

.ah-alert-desc[b-x1r61cmrpl] {
    margin: 0;
    font-size: 0.68rem;
    color: var(--ah-text-muted);
}

/* ── Event Table (Identity) ───────────────────────────────────────────── */
.ah-db-filters[b-x1r61cmrpl] {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    align-items: center;
}

.ah-filter-select[b-x1r61cmrpl] {
    font-size: 0.68rem;
    padding: 4px 8px;
    border: 1px solid var(--ah-border);
    border-radius: var(--ah-radius);
    background: var(--ah-bg-subtle);
    color: var(--ah-text-sub);
    outline: none;
}

.ah-filter-input[b-x1r61cmrpl] {
    font-size: 0.68rem;
    padding: 4px 10px;
    border: 1px solid var(--ah-border);
    border-radius: var(--ah-radius);
    background: var(--ah-bg);
    color: var(--ah-text);
    width: 160px;
    outline: none;
}

.ah-filter-input[b-x1r61cmrpl]::placeholder { color: var(--ah-text-placeholder); }
.ah-filter-input:focus[b-x1r61cmrpl] { border-color: var(--ah-focus-color); }

.ah-event-table[b-x1r61cmrpl] { overflow-x: auto; }

.ah-event-table-head[b-x1r61cmrpl],
.ah-custom-table-head[b-x1r61cmrpl] {
    display: grid;
    padding: 6px 8px;
    font-size: 0.62rem;
    font-weight: 700;
    color: var(--ah-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    border-bottom: 1px solid var(--ah-border-soft);
}

.ah-event-table-head[b-x1r61cmrpl] { grid-template-columns: 80px 1fr 120px 110px 100px 70px; gap: 8px; }
.ah-custom-table-head[b-x1r61cmrpl] { grid-template-columns: 200px 1fr 90px 80px; gap: 8px; }
.ah-session-table-head[b-x1r61cmrpl] { grid-template-columns: 1fr 1fr 90px 110px 80px 70px; gap: 8px; display: grid; padding: 6px 8px; font-size: 0.62rem; font-weight: 700; color: var(--ah-text-muted); text-transform: uppercase; letter-spacing: 0.04em; border-bottom: 1px solid var(--ah-border-soft); }

.ah-event-table-row[b-x1r61cmrpl],
.ah-custom-table-row[b-x1r61cmrpl] {
    display: grid;
    padding: 7px 8px;
    border-bottom: 1px solid var(--ah-border-soft);
    font-size: 0.72rem;
    align-items: center;
}

.ah-event-table-row[b-x1r61cmrpl]  { grid-template-columns: 80px 1fr 120px 110px 100px 70px; gap: 8px; }
.ah-custom-table-row[b-x1r61cmrpl] { grid-template-columns: 200px 1fr 90px 80px; gap: 8px; }

.ah-event-table-row:last-child[b-x1r61cmrpl],
.ah-custom-table-row:last-child[b-x1r61cmrpl] { border-bottom: none; }

.ah-event-type[b-x1r61cmrpl] {
    display: flex;
    align-items: center;
    gap: 6px;
    color: var(--ah-text);
    font-size: 0.72rem;
}

.ah-event-dot[b-x1r61cmrpl] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    flex-shrink: 0;
}

.ah-cell-sub[b-x1r61cmrpl]   { color: var(--ah-text-sub);   font-size: 0.72rem; }
.ah-cell-muted[b-x1r61cmrpl] { color: var(--ah-text-muted); font-size: 0.68rem; }
.ah-cell-mono[b-x1r61cmrpl]  { color: var(--ah-text-muted); font-size: 0.68rem; font-family: 'JetBrains Mono', monospace; }

.ah-table-footer[b-x1r61cmrpl] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 0 0;
    border-top: 1px solid var(--ah-border-soft);
    margin-top: 4px;
    font-size: 0.68rem;
    color: var(--ah-text-muted);
}

.ah-pagination[b-x1r61cmrpl] { display: flex; gap: 4px; }

/* ── User Table ───────────────────────────────────────────────────────── */
.ah-user-table[b-x1r61cmrpl] { overflow-x: auto; }

.ah-user-table-head[b-x1r61cmrpl] {
    display: grid;
    grid-template-columns: 1fr 90px 100px 90px 80px 80px;
    gap: 8px;
    padding: 6px 8px;
    font-size: 0.62rem;
    font-weight: 700;
    color: var(--ah-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    border-bottom: 1px solid var(--ah-border-soft);
}

.ah-user-table-row[b-x1r61cmrpl] {
    display: grid;
    grid-template-columns: 1fr 90px 100px 90px 80px 80px;
    gap: 8px;
    padding: 7px 8px;
    border-bottom: 1px solid var(--ah-border-soft);
    font-size: 0.72rem;
    align-items: center;
}

.ah-user-table-row:last-child[b-x1r61cmrpl] { border-bottom: none; }

/* ── App bars ─────────────────────────────────────────────────────────── */
.ah-app-bars[b-x1r61cmrpl] { display: flex; flex-direction: column; gap: 10px; }

.ah-app-bar-row[b-x1r61cmrpl] { display: flex; flex-direction: column; gap: 4px; }

.ah-app-bar-header[b-x1r61cmrpl] {
    display: flex;
    justify-content: space-between;
    font-size: 0.7rem;
    color: var(--ah-text-sub);
    font-weight: 500;
}

.ah-app-bar-track[b-x1r61cmrpl] {
    height: 5px;
    background: var(--ah-bg-subtle);
    border-radius: 3px;
    overflow: hidden;
}

.ah-app-bar-fill[b-x1r61cmrpl] {
    height: 100%;
    border-radius: 3px;
    transition: width 0.4s ease;
}

.ah-provider-badges[b-x1r61cmrpl] {
    display: flex;
    gap: 5px;
    flex-wrap: wrap;
    margin-top: 12px;
    padding-top: 10px;
    border-top: 1px solid var(--ah-border-soft);
}

.ah-provider-badge[b-x1r61cmrpl] {
    font-size: 0.68rem;
    background: var(--ah-bg-subtle);
    padding: 3px 8px;
    border-radius: var(--ah-radius);
    color: var(--ah-text-sub);
    border: 1px solid var(--ah-border);
}

/* ── Badges ───────────────────────────────────────────────────────────── */
.ah-badge-success[b-x1r61cmrpl] {
    font-size: 0.62rem;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 10px;
    background: var(--ah-success-bg);
    color: var(--ah-success);
    border: 1px solid var(--ah-success-border);
    white-space: nowrap;
}

.ah-badge-danger[b-x1r61cmrpl] {
    font-size: 0.62rem;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 10px;
    background: var(--ah-danger-bg);
    color: var(--ah-danger);
    border: 1px solid var(--ah-danger-border);
    white-space: nowrap;
}

.ah-badge-info[b-x1r61cmrpl] {
    font-size: 0.62rem;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 10px;
    background: var(--ah-info-bg);
    color: var(--ah-info);
    border: 1px solid var(--ah-info-border);
    white-space: nowrap;
}

/* ── Custom Event Types ───────────────────────────────────────────────── */
.ah-event-types-list[b-x1r61cmrpl] { display: flex; flex-direction: column; gap: 8px; }

.ah-event-type-row[b-x1r61cmrpl] {
    display: grid;
    grid-template-columns: 1fr auto auto auto;
    gap: 12px;
    align-items: center;
    padding: 12px;
    border: 1px solid var(--ah-border);
    border-radius: var(--ah-radius-md);
    transition: background 0.15s;
}

.ah-event-type-row:hover[b-x1r61cmrpl] { background: var(--ah-bg-subtle); }

.ah-event-type-name[b-x1r61cmrpl] {
    margin: 0 0 3px;
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--ah-text);
}

.ah-event-type-desc[b-x1r61cmrpl] {
    margin: 0;
    font-size: 0.68rem;
    color: var(--ah-text-muted);
}

.ah-mode-badge[b-x1r61cmrpl] {
    font-size: 0.68rem;
    font-weight: 600;
    padding: 3px 10px;
    border-radius: 10px;
    white-space: nowrap;
}

.ah-mode-iron[b-x1r61cmrpl] {
    background: var(--ah-info-bg);
    color: #1d4ed8;
    border: 1px solid var(--ah-info-border);
}

.ah-mode-standard[b-x1r61cmrpl] {
    background: var(--ah-warning-bg);
    color: #a16207;
    border: 1px solid var(--ah-warning-border);
}

/* ── Source legend ────────────────────────────────────────────────────── */
.ah-source-legend[b-x1r61cmrpl] { display: flex; flex-direction: column; gap: 5px; }

.ah-source-row[b-x1r61cmrpl] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.7rem;
    color: var(--ah-text-sub);
}

/* ── 1:1 grid ────────────────────────────────────────────────────────── */
.ah-db-grid-1-1[b-x1r61cmrpl] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-bottom: 12px;
}

/* ── Section header ──────────────────────────────────────────────────── */
.ah-db-section-header[b-x1r61cmrpl] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 20px 0 12px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--ah-border-soft);
}

.ah-db-section-title[b-x1r61cmrpl] {
    margin: 0;
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--ah-text);
    letter-spacing: -0.2px;
}

/* ── Campaign table ──────────────────────────────────────────────────── */
.ah-campaign-table-head[b-x1r61cmrpl] {
    display: grid;
    grid-template-columns: 1fr 120px 60px 60px;
    gap: 8px;
    padding: 6px 8px;
    font-size: 0.62rem;
    font-weight: 700;
    color: var(--ah-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    border-bottom: 1px solid var(--ah-border-soft);
}

.ah-campaign-table-row[b-x1r61cmrpl] {
    display: grid;
    grid-template-columns: 1fr 120px 60px 60px;
    gap: 8px;
    padding: 8px;
    border-bottom: 1px solid var(--ah-border-soft);
    font-size: 0.72rem;
    align-items: center;
}

.ah-campaign-table-row:last-child[b-x1r61cmrpl] { border-bottom: none; }

/* ── 3-column grid ───────────────────────────────────────────────────── */
.ah-db-grid-3[b-x1r61cmrpl] {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 12px;
    margin-bottom: 12px;
}

/* ── Recent events table (5 col) ─────────────────────────────────────── */
.ah-recent-table-head[b-x1r61cmrpl] {
    display: grid;
    grid-template-columns: 80px 1fr 1.5fr 110px 70px;
    gap: 8px;
    padding: 6px 8px;
    font-size: 0.62rem;
    font-weight: 700;
    color: var(--ah-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    border-bottom: 1px solid var(--ah-border-soft);
}

.ah-recent-table-row[b-x1r61cmrpl] {
    display: grid;
    grid-template-columns: 80px 1fr 1.5fr 110px 70px;
    gap: 8px;
    padding: 7px 8px;
    border-bottom: 1px solid var(--ah-border-soft);
    font-size: 0.72rem;
    align-items: center;
}

.ah-recent-table-row:last-child[b-x1r61cmrpl] { border-bottom: none; }

/* ── Session forensics ───────────────────────────────────────────────── */
.ah-forensic-search[b-x1r61cmrpl] {
    width: 100%;
    padding: 10px 14px;
    font-size: 0.85rem;
    border: 1px solid var(--ah-border);
    border-radius: var(--ah-radius-md);
    background: var(--ah-bg);
    color: var(--ah-text);
    outline: none;
}

.ah-forensic-search:focus[b-x1r61cmrpl] { border-color: var(--ah-focus-color); box-shadow: 0 0 0 2px rgba(99,102,241,0.12); }
.ah-forensic-search[b-x1r61cmrpl]::placeholder { color: var(--ah-text-placeholder); }

.ah-forensic-avatar[b-x1r61cmrpl] {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--ah-bg-subtle);
    border: 1px solid var(--ah-border);
}

.ah-session-table-row[b-x1r61cmrpl] {
    display: grid;
    grid-template-columns: 1fr 1fr 90px 110px 80px 70px;
    gap: 8px;
    padding: 7px 8px;
    border-bottom: 1px solid var(--ah-border-soft);
    font-size: 0.72rem;
    align-items: center;
}

.ah-session-table-row:last-child[b-x1r61cmrpl] { border-bottom: none; }

/* ── Referrer list ────────────────────────────────────────────────────── */
.ah-referrer-list[b-x1r61cmrpl] { display: flex; flex-direction: column; gap: 8px; }

.ah-referrer-row[b-x1r61cmrpl] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.72rem;
}

.ah-referrer-source[b-x1r61cmrpl] {
    min-width: 110px;
    color: var(--ah-text);
    font-weight: 500;
    font-size: 0.7rem;
}

.ah-referrer-bar-track[b-x1r61cmrpl] {
    flex: 1;
    height: 6px;
    background: var(--ah-bg-subtle);
    border-radius: 3px;
    overflow: hidden;
}

.ah-referrer-bar-fill[b-x1r61cmrpl] {
    height: 100%;
    border-radius: 3px;
    transition: width 0.4s ease;
}

/* ── Category Badges ──────────────────────────────────────────────────── */
.ah-category-badge[b-x1r61cmrpl] {
    font-size: 0.6rem;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 10px;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    white-space: nowrap;
}

.ah-cat-auth[b-x1r61cmrpl]       { background: #eef2ff; color: #4338ca; border: 1px solid #c7d2fe; }
.ah-cat-org[b-x1r61cmrpl]        { background: #ecfdf5; color: #047857; border: 1px solid #a7f3d0; }
.ah-cat-permission[b-x1r61cmrpl] { background: #fffbeb; color: #a16207; border: 1px solid #fde68a; }
.ah-cat-device[b-x1r61cmrpl]     { background: #f0f9ff; color: #0369a1; border: 1px solid #bae6fd; }
.ah-cat-security[b-x1r61cmrpl]   { background: #fef2f2; color: #b91c1c; border: 1px solid #fecaca; }
.ah-cat-seal[b-x1r61cmrpl]       { background: #f5f3ff; color: #6d28d9; border: 1px solid #ddd6fe; }

[data-theme="dark"] .ah-cat-auth[b-x1r61cmrpl]       { background: #1e1b4b; color: #a5b4fc; border-color: #312e81; }
[data-theme="dark"] .ah-cat-org[b-x1r61cmrpl]        { background: #052e16; color: #86efac; border-color: #14532d; }
[data-theme="dark"] .ah-cat-permission[b-x1r61cmrpl] { background: #2d1b00; color: #fdba74; border-color: #78350f; }
[data-theme="dark"] .ah-cat-device[b-x1r61cmrpl]     { background: #0c1a3a; color: #7dd3fc; border-color: #0c4a6e; }
[data-theme="dark"] .ah-cat-security[b-x1r61cmrpl]   { background: #2d1111; color: #fca5a5; border-color: #7f1d1d; }
[data-theme="dark"] .ah-cat-seal[b-x1r61cmrpl]       { background: #1e1033; color: #c4b5fd; border-color: #4c1d95; }

/* ── Session Forensics table ─────────────────────────────────────────── */
.ah-session-table-head + .ah-event-table-row[b-x1r61cmrpl] {
    grid-template-columns: 1fr 120px 120px 90px 70px 80px 70px;
}

/* ── Setup Guide ─────────────────────────────────────────────────────── */
.ah-setup-guide[b-x1r61cmrpl] {
    padding: 2rem;
    text-align: center;
}

.ah-setup-icon[b-x1r61cmrpl] {
    width: 56px;
    height: 56px;
    margin: 0 auto 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--ah-bg-subtle);
    border: 1px solid var(--ah-border);
    font-size: 1.4rem;
    color: var(--ah-accent, #6366f1);
}

.ah-setup-title[b-x1r61cmrpl] {
    margin: 0 0 8px;
    font-size: 1rem;
    font-weight: 700;
    color: var(--ah-text);
}

.ah-setup-desc[b-x1r61cmrpl] {
    margin: 0 auto 20px;
    max-width: 520px;
    font-size: 0.78rem;
    color: var(--ah-text-muted);
    line-height: 1.5;
}

.ah-setup-example[b-x1r61cmrpl] {
    background: var(--ah-bg-subtle);
    border: 1px solid var(--ah-border);
    border-radius: var(--ah-radius-md);
    padding: 12px 16px;
    margin: 0 auto 20px;
    max-width: 600px;
    text-align: left;
}

.ah-setup-example-label[b-x1r61cmrpl] {
    margin: 0 0 6px;
    font-size: 0.68rem;
    font-weight: 600;
    color: var(--ah-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.ah-setup-code[b-x1r61cmrpl] {
    font-size: 0.72rem;
    color: var(--ah-text);
    word-break: break-all;
    line-height: 1.6;
}

.ah-setup-code strong[b-x1r61cmrpl] {
    color: var(--ah-accent, #6366f1);
}

.ah-setup-steps[b-x1r61cmrpl] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    max-width: 480px;
    margin: 0 auto 20px;
    text-align: left;
}

.ah-setup-step[b-x1r61cmrpl] {
    display: flex;
    gap: 12px;
    align-items: flex-start;
}

.ah-setup-step-num[b-x1r61cmrpl] {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: var(--ah-accent, #6366f1);
    color: #fff;
    font-size: 0.7rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.ah-setup-step-title[b-x1r61cmrpl] {
    margin: 0;
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--ah-text);
}

.ah-setup-step-desc[b-x1r61cmrpl] {
    margin: 2px 0 0;
    font-size: 0.7rem;
    color: var(--ah-text-muted);
}

.ah-setup-step-desc code[b-x1r61cmrpl] {
    font-size: 0.68rem;
    background: var(--ah-bg-subtle);
    padding: 1px 4px;
    border-radius: 3px;
}

.ah-setup-link[b-x1r61cmrpl] {
    display: inline-flex;
    align-items: center;
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--ah-accent, #6366f1);
    text-decoration: none;
}

.ah-setup-link:hover[b-x1r61cmrpl] {
    text-decoration: underline;
}

/* ── Empty state ──────────────────────────────────────────────────────── */
.ah-empty-state[b-x1r61cmrpl] {
    text-align: center;
    padding: 2rem 1rem;
    color: var(--ah-text-muted);
}
/* /Features/Dashboard/Pages/Systemhome.razor.rz.scp.css */
/* Systemhome.razor.css — CSS variable 기반 */
.summary-card[b-u1ackoj9fm] {
    background:    var(--ah-bg);
    border:        1px solid var(--ah-border);
    border-radius: 8px;
    padding:       1.25rem 1.5rem;
    box-shadow:    var(--ah-shadow-sm);
}

.summary-value[b-u1ackoj9fm] {
    font-size:      1.75rem;
    font-weight:    800;
    color:          var(--ah-text);
    letter-spacing: -1px;
    line-height:    1;
}

.summary-label[b-u1ackoj9fm] {
    font-size:      0.78rem;
    font-weight:    700;
    color:          var(--ah-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    margin-top:     0.35rem;
}

.org-table[b-u1ackoj9fm] { width: 100%; border-collapse: separate; border-spacing: 0; }

.org-table th[b-u1ackoj9fm] {
    font-size:        0.78rem;
    font-weight:      700;
    text-transform:   uppercase;
    letter-spacing:   0.05em;
    color:            var(--ah-text-muted);
    background-color: var(--ah-bg);
    border-bottom:    1px solid var(--ah-border);
    padding:          0.85rem 1.25rem;
    text-align:       left;
    white-space:      nowrap;
}

.org-table td[b-u1ackoj9fm] {
    padding:        0.85rem 1.25rem;
    border-bottom:  1px solid var(--ah-bg-subtle);
    font-size:      0.9rem;
    color:          var(--ah-text-sub);
    vertical-align: middle;
}

.org-table tbody tr:hover[b-u1ackoj9fm]          { background-color: var(--ah-bg-subtle); }
.org-table tbody tr:last-child td[b-u1ackoj9fm]  { border-bottom: none; }

.org-name-link[b-u1ackoj9fm] {
    font-weight:     600;
    color:           var(--ah-text-sub);
    text-decoration: none;
    transition:      color 0.15s;
}
.org-name-link:hover[b-u1ackoj9fm] { color: var(--ah-link); }

.org-type-badge[b-u1ackoj9fm] {
    font-size:      0.65rem;
    font-weight:    700;
    color:          var(--ah-text-muted);
    background:     var(--ah-bg-surface);
    border:         1px solid var(--ah-border);
    padding:        0.1rem 0.4rem;
    border-radius:  3px;
}

.slug-badge[b-u1ackoj9fm] {
    font-family:   'JetBrains Mono', monospace;
    font-size:     0.7rem;
    color:         var(--ah-text-muted);
    background:    var(--ah-bg-subtle);
    padding:       0.15rem 0.4rem;
    border-radius: 4px;
    border:        1px solid var(--ah-border);
}

.status-badge[b-u1ackoj9fm] {
    font-size:     0.65rem;
    font-weight:   600;
    padding:       0.2rem 0.5rem;
    border-radius: 4px;
    background:    var(--ah-bg-surface);
    border:        1px solid var(--ah-border);
}
.status-badge.active[b-u1ackoj9fm]  { color: var(--ah-success); }
.status-badge.pending[b-u1ackoj9fm] { color: var(--ah-warning); }
.status-badge.inactive[b-u1ackoj9fm] { color: var(--ah-text-muted); }

.kyb-badge[b-u1ackoj9fm] {
    font-size:     0.65rem;
    font-weight:   600;
    padding:       0.2rem 0.5rem;
    border-radius: 4px;
    background:    var(--ah-bg-surface);
    border:        1px solid var(--ah-border);
}
.kyb-badge.verified[b-u1ackoj9fm]    { color: var(--ah-success); }
.kyb-badge.unverified[b-u1ackoj9fm]  { color: var(--ah-danger); }
.kyb-badge.in-progress[b-u1ackoj9fm] { color: var(--ah-info); }

.add-org-btn[b-u1ackoj9fm] {
    background:    #0f172a;
    color:         #ffffff;
    border:        none;
    font-weight:   600;
    font-size:     0.85rem;
    padding:       0.6rem 1.5rem;
    border-radius: 8px;
    cursor:        pointer;
    transition:    opacity 0.15s;
}
.add-org-btn:hover[b-u1ackoj9fm] { opacity: 0.85; background: #1e293b; }

.search-input[b-u1ackoj9fm] {
    border-radius:    8px;
    font-size:        0.85rem;
    height:           36px;
    border:           1px solid var(--ah-border);
    padding-left:     2.25rem;
    background-color: var(--ah-bg);
    color:            var(--ah-text);
}
.search-input:focus[b-u1ackoj9fm] {
    border-color: var(--ah-link);
    box-shadow:   0 0 0 3px rgba(79,70,229,0.08);
    outline:      none;
}

.rep-info[b-u1ackoj9fm]  { font-size: 0.8rem; color: var(--ah-text-sub); font-weight: 600; }
.rep-email[b-u1ackoj9fm] { font-size: 0.7rem; color: var(--ah-text-muted); }
.count-cell[b-u1ackoj9fm] { font-weight: 700; color: var(--ah-text); font-size: 0.85rem; }
.action-link-text[b-u1ackoj9fm] { font-size: 0.75rem; color: var(--ah-link); }
[data-theme="dark"] .action-link-text[b-u1ackoj9fm] { color: #eac4ff; }

.empty-state[b-u1ackoj9fm] { text-align: center; padding: 4rem 2rem; color: var(--ah-text-muted); }

.modal-overlay[b-u1ackoj9fm] {
    position:        fixed;
    inset:           0;
    background:      rgba(0,0,0,0.6);
    backdrop-filter: blur(4px);
    z-index:         1000;
    display:         flex;
    align-items:     center;
    justify-content: center;
}

.modal-card[b-u1ackoj9fm] {
    background:    var(--ah-bg);
    border-radius: 12px;
    padding:       2rem;
    width:         100%;
    max-width:     460px;
    box-shadow:    var(--ah-shadow-lg);
}

.modal-card .form-control[b-u1ackoj9fm],
.modal-card .form-select[b-u1ackoj9fm] {
    height:           42px;
    font-size:        0.85rem;
    background-color: var(--ah-bg);
    color:            var(--ah-text);
    border-color:     var(--ah-border);
}

.clickable-badge[b-u1ackoj9fm] { display: inline-block; cursor: pointer; transition: all 0.2s; }
.clickable-badge:hover[b-u1ackoj9fm] { box-shadow: 0 0 0 2px rgba(79,70,229,0.2); transform: translateY(-1px); }

.setup-action-link[b-u1ackoj9fm] { cursor: pointer; transition: opacity 0.2s; }
.setup-action-link:hover[b-u1ackoj9fm] { opacity: 0.7; }

.table-container[b-u1ackoj9fm] {
    background:    #ffffff;
    border:        1px solid #f1f5f9;
    border-radius: 12px;
    overflow:      hidden;
    box-shadow:    0 1px 3px rgba(0,0,0,0.05);
}
/* /Features/Home/Pages/Contact.razor.rz.scp.css */
/* =========================================
   Contact page — fixed dark landing theme
   (independent of data-theme system)
========================================= */

.contact-root[b-dj3lziqmlh] {
    background:  #000;
    min-height:  calc(100vh - 72px);
    padding:     5rem 2rem 6rem;
}

.contact-inner[b-dj3lziqmlh] {
    max-width: 860px;
    margin:    0 auto;
}

/* ── Header ── */
.contact-header[b-dj3lziqmlh] {
    text-align:    center;
    margin-bottom: 4rem;
}

.section-eyebrow[b-dj3lziqmlh] {
    font-size:      0.72rem;
    font-weight:    700;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color:          #6366f1;
    margin-bottom:  0.75rem;
}

.contact-title[b-dj3lziqmlh] {
    font-size:      3rem;
    font-weight:    900;
    color:          #fff;
    letter-spacing: -0.04em;
    margin:         0 0 1rem;
}

.contact-subtitle[b-dj3lziqmlh] {
    font-size:   0.95rem;
    color:       rgba(255, 255, 255, 0.45);
    line-height: 1.7;
    max-width:   480px;
    margin:      0 auto;
}

/* ── Category ── */
.category-section[b-dj3lziqmlh]  { margin-bottom: 2.5rem; }

.category-label[b-dj3lziqmlh] {
    font-size:      0.7rem;
    font-weight:    700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color:          rgba(255, 255, 255, 0.3);
    margin-bottom:  1rem;
}

.category-grid[b-dj3lziqmlh] {
    display:               grid;
    grid-template-columns: repeat(3, 1fr);
    gap:                   0.75rem;
}

.category-card[b-dj3lziqmlh] {
    border:        1px solid rgba(255, 255, 255, 0.1);
    border-radius: 10px;
    padding:       1.1rem 1.25rem;
    cursor:        pointer;
    background:    rgba(255, 255, 255, 0.02);
    transition:    border-color 0.15s, background 0.15s;
}

.category-card:hover[b-dj3lziqmlh] {
    border-color: rgba(255, 255, 255, 0.2);
    background:   rgba(255, 255, 255, 0.04);
}

.category-card.selected[b-dj3lziqmlh] {
    border-color: var(--ah-link);
    background:   rgba(99, 102, 241, 0.08);
}

.category-icon[b-dj3lziqmlh] {
    font-size:     1.2rem;
    margin-bottom: 0.5rem;
}

.category-name[b-dj3lziqmlh] {
    font-size:     0.88rem;
    font-weight:   700;
    color:         #fff;
    margin-bottom: 0.25rem;
}

.category-card.selected .category-name[b-dj3lziqmlh] { color: #a5b4fc; }

.category-desc[b-dj3lziqmlh] {
    font-size:   0.72rem;
    color:       rgba(255, 255, 255, 0.35);
    line-height: 1.5;
}

/* ── Form panel ── */
.contact-form-panel[b-dj3lziqmlh] {
    border:        1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    padding:       2rem;
    background:    rgba(255, 255, 255, 0.02);
}

.form-row-two[b-dj3lziqmlh] {
    display:               grid;
    grid-template-columns: 1fr 1fr;
    gap:                   1rem;
    margin-bottom:         1rem;
}

.form-group[b-dj3lziqmlh] { margin-bottom: 1rem; }
.form-group:last-of-type[b-dj3lziqmlh] { margin-bottom: 1.5rem; }

.form-lbl[b-dj3lziqmlh] {
    display:        block;
    font-size:      0.7rem;
    font-weight:    700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color:          rgba(255, 255, 255, 0.35);
    margin-bottom:  0.4rem;
}

.form-optional[b-dj3lziqmlh] {
    font-weight:    400;
    text-transform: none;
    letter-spacing: 0;
    color:          rgba(255, 255, 255, 0.2);
}

.landing-input[b-dj3lziqmlh],
.landing-textarea[b-dj3lziqmlh] {
    width:         100%;
    background:    rgba(255, 255, 255, 0.05);
    border:        1px solid rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    padding:       0.75rem 1rem;
    color:         #fff;
    font-size:     0.88rem;
    font-family:   inherit;
    outline:       none;
    box-sizing:    border-box;
    transition:    border-color 0.15s;
}

.landing-input:focus[b-dj3lziqmlh],
.landing-textarea:focus[b-dj3lziqmlh] {
    border-color: rgba(99, 102, 241, 0.6);
    background:   rgba(255, 255, 255, 0.07);
}

.landing-input[b-dj3lziqmlh]::placeholder,
.landing-textarea[b-dj3lziqmlh]::placeholder { color: rgba(255, 255, 255, 0.2); }

.landing-textarea[b-dj3lziqmlh] {
    resize:      vertical;
    line-height: 1.6;
}

.form-error[b-dj3lziqmlh] {
    font-size:     0.78rem;
    color:         #fca5a5;
    margin-bottom: 1rem;
}

.btn-submit[b-dj3lziqmlh] {
    padding:       0.85rem 2.5rem;
    background:    var(--ah-accent);
    color:         #fff;
    border:        none;
    border-radius: 8px;
    font-size:     0.9rem;
    font-weight:   700;
    cursor:        pointer;
    transition:    opacity 0.15s, transform 0.15s;
}

.btn-submit:hover[b-dj3lziqmlh]    { opacity: 0.9; transform: translateY(-1px); }
.btn-submit:disabled[b-dj3lziqmlh] { opacity: 0.5; cursor: not-allowed; transform: none; }

/* ── Success ── */
.success-panel[b-dj3lziqmlh] {
    text-align:    center;
    padding:       5rem 2rem;
    border:        1px solid rgba(99, 102, 241, 0.3);
    border-radius: 16px;
    background:    rgba(99, 102, 241, 0.04);
}

.success-icon[b-dj3lziqmlh]  { font-size: 3rem; margin-bottom: 1rem; }

.success-title[b-dj3lziqmlh] {
    font-size:      1.8rem;
    font-weight:    800;
    color:          #fff;
    margin:         0 0 0.75rem;
}

.success-desc[b-dj3lziqmlh] {
    font-size:     0.9rem;
    color:         rgba(255, 255, 255, 0.45);
    line-height:   1.7;
    margin:        0 0 2rem;
}

.success-email[b-dj3lziqmlh] { color: rgba(255, 255, 255, 0.7); }

.back-link-landing[b-dj3lziqmlh] {
    font-size:       0.85rem;
    font-weight:     600;
    color:           #6366f1;
    text-decoration: none;
    display:         inline-flex;
    align-items:     center;
    gap:             0.4rem;
    transition:      color 0.15s;
}
.back-link-landing:hover[b-dj3lziqmlh] { color: #a5b4fc; }

/* ── Responsive ── */
@media (max-width: 640px) {
    .contact-title[b-dj3lziqmlh]       { font-size: 2.2rem; }
    .category-grid[b-dj3lziqmlh]       { grid-template-columns: 1fr 1fr; }
    .form-row-two[b-dj3lziqmlh]        { grid-template-columns: 1fr; }
    .contact-form-panel[b-dj3lziqmlh]  { padding: 1.25rem; }
}

@media (max-width: 420px) {
    .category-grid[b-dj3lziqmlh] { grid-template-columns: 1fr; }
}
/* /Features/Home/Pages/Faq.razor.rz.scp.css */
/* =========================================
   FAQ page — fixed dark landing theme
========================================= */

.faq-root[b-yuppkm3rvj] {
    background: #000;
    min-height: calc(100vh - 72px);
    padding:    5rem 2rem 6rem;
}

.faq-inner[b-yuppkm3rvj] {
    max-width: 760px;
    margin:    0 auto;
}

/* ── Header ── */
.faq-header[b-yuppkm3rvj] {
    text-align:    center;
    margin-bottom: 3rem;
}

/* reuse .section-eyebrow from Contact.razor.css 
   — since Blazor scopes CSS per component, redeclare here */
.section-eyebrow[b-yuppkm3rvj] {
    font-size:      0.72rem;
    font-weight:    700;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color:          #6366f1;
    margin-bottom:  0.75rem;
}

.faq-title[b-yuppkm3rvj] {
    font-size:      3rem;
    font-weight:    900;
    color:          #fff;
    letter-spacing: -0.04em;
    margin:         0 0 1rem;
}

.faq-subtitle[b-yuppkm3rvj] {
    font-size:   0.95rem;
    color:       rgba(255, 255, 255, 0.45);
    line-height: 1.7;
}

.faq-contact-link[b-yuppkm3rvj] {
    color:           #6366f1;
    font-weight:     600;
    text-decoration: none;
    transition:      color 0.15s;
}
.faq-contact-link:hover[b-yuppkm3rvj] { color: #a5b4fc; }

/* ── Category filter ── */
.faq-filters[b-yuppkm3rvj] {
    display:         flex;
    gap:             0.5rem;
    flex-wrap:       wrap;
    justify-content: center;
    margin-bottom:   2.5rem;
}

.faq-filter-btn[b-yuppkm3rvj] {
    padding:       0.45rem 1.1rem;
    border-radius: 20px;
    font-size:     0.78rem;
    font-weight:   600;
    cursor:        pointer;
    transition:    all 0.15s;
    background:    rgba(255, 255, 255, 0.04);
    border:        1px solid rgba(255, 255, 255, 0.1);
    color:         rgba(255, 255, 255, 0.5);
}

.faq-filter-btn:hover[b-yuppkm3rvj] {
    background:   rgba(255, 255, 255, 0.08);
    border-color: rgba(255, 255, 255, 0.2);
    color:        rgba(255, 255, 255, 0.8);
}

.faq-filter-btn.active[b-yuppkm3rvj] {
    background:   var(--ah-accent);
    border-color: var(--ah-link);
    color:        #fff;
}

/* ── Group ── */
.faq-list[b-yuppkm3rvj]  { margin-bottom: 4rem; }
.faq-group[b-yuppkm3rvj] { margin-bottom: 2.5rem; }

.faq-group-title[b-yuppkm3rvj] {
    font-size:      0.7rem;
    font-weight:    700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color:          rgba(255, 255, 255, 0.25);
    padding-bottom: 0.75rem;
    margin-bottom:  0.5rem;
    border-bottom:  1px solid rgba(255, 255, 255, 0.06);
}

/* ── Item ── */
.faq-item[b-yuppkm3rvj] {
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.faq-question[b-yuppkm3rvj] {
    width:           100%;
    text-align:      left;
    background:      none;
    border:          none;
    padding:         1.25rem 0;
    cursor:          pointer;
    display:         flex;
    justify-content: space-between;
    align-items:     center;
    gap:             1rem;
    color:           #fff;
    font-size:       0.92rem;
    font-weight:     600;
    line-height:     1.4;
    font-family:     inherit;
    transition:      color 0.15s;
}

.faq-question:hover[b-yuppkm3rvj] { color: #a5b4fc; }
.faq-item.open .faq-question[b-yuppkm3rvj] { color: #a5b4fc; }

.faq-icon[b-yuppkm3rvj] {
    color:      rgba(255, 255, 255, 0.3);
    flex-shrink: 0;
    font-size:  1rem;
    transition: transform 0.2s, color 0.15s;
}
.faq-item.open .faq-icon[b-yuppkm3rvj] { color: var(--ah-link); }

.faq-answer[b-yuppkm3rvj] {
    padding:     0 0 1.25rem;
    font-size:   0.85rem;
    color:       rgba(255, 255, 255, 0.5);
    line-height: 1.8;
    animation:   faqFadeIn-b-yuppkm3rvj 0.2s ease;
}

.faq-answer strong[b-yuppkm3rvj] { color: rgba(255, 255, 255, 0.75); }

.faq-inline-link[b-yuppkm3rvj] {
    color:           #6366f1;
    font-weight:     600;
    text-decoration: none;
}
.faq-inline-link:hover[b-yuppkm3rvj] { color: #a5b4fc; }

@keyframes faqFadeIn-b-yuppkm3rvj {
    from { opacity: 0; transform: translateY(-6px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* ── CTA ── */
.faq-cta[b-yuppkm3rvj] {
    text-align:    center;
    padding:       3rem 2rem;
    border:        1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    background:    rgba(255, 255, 255, 0.02);
}

.faq-cta-title[b-yuppkm3rvj] {
    font-size:     1.1rem;
    font-weight:   700;
    color:         #fff;
    margin-bottom: 0.5rem;
}

.faq-cta-desc[b-yuppkm3rvj] {
    font-size:     0.82rem;
    color:         rgba(255, 255, 255, 0.4);
    margin-bottom: 1.5rem;
}

.btn-submit[b-yuppkm3rvj] {
    display:       inline-flex;
    align-items:   center;
    gap:           0.4rem;
    padding:       0.8rem 2.2rem;
    background:    var(--ah-accent);
    color:         #fff;
    border:        none;
    border-radius: 8px;
    font-size:     0.9rem;
    font-weight:   700;
    cursor:        pointer;
    text-decoration: none;
    transition:    opacity 0.15s, transform 0.15s;
}
.btn-submit:hover[b-yuppkm3rvj]    { opacity: 0.9; transform: translateY(-1px); color: #fff; }
.btn-submit:disabled[b-yuppkm3rvj] { opacity: 0.5; cursor: not-allowed; transform: none; }

/* ── Responsive ── */
@media (max-width: 640px) {
    .faq-title[b-yuppkm3rvj]    { font-size: 2.2rem; }
    .faq-filters[b-yuppkm3rvj]  { justify-content: flex-start; }
}
/* /Features/Home/Pages/Home.razor.rz.scp.css */
/* =========================================
   Home — Hero (dark, 기존 그대로)
========================================= */

.home-hero[b-c0nek19kh7] {
    position:   relative;
    width:      100%;
    min-height: calc(100vh - 72px);
    display:    flex;
    align-items: center;
    overflow:   hidden;
    background: linear-gradient(135deg, #012d42 0%, #014a6b 40%, #015f87 100%);
}

.hero-bg[b-c0nek19kh7] {
    position:          absolute;
    inset:             0;
    background-size:   cover;
    background-repeat: no-repeat;
    opacity:           0;
    transition:        opacity 3s ease-in-out;
}
.hero-bg.active[b-c0nek19kh7] { opacity: 1; }
.hero-bg-1[b-c0nek19kh7] {
    background-image:    url('/images/axowlhome2_nobg.webp');
    background-position: right bottom;
    background-size:     contain;
}

.hero-bg-2[b-c0nek19kh7] {
    background-image:    url('/images/axowlhome1_nobg.webp');
    background-position: right bottom;
    background-size:     contain;
}

@keyframes heroZoom-b-c0nek19kh7 {
    from { transform: scale(1.05); }
    to   { transform: scale(1.0); }
}

.hero-overlay[b-c0nek19kh7] {
    position:   absolute;
    inset:      0;
    background: linear-gradient(
        90deg,
        rgba(0,0,0,0.88) 0%,
        rgba(0,0,0,0.75) 35%,
        rgba(0,0,0,0.30) 60%,
        rgba(0,0,0,0.00) 80%
    );
    z-index: 1;
}

.hero-corner-mask[b-c0nek19kh7] {
    position:       absolute;
    bottom:         0;
    right:          0;
    width:          300px;
    height:         300px;
    background:     radial-gradient(ellipse at bottom right, rgba(0,0,0,0.45) 0%, transparent 70%);
    z-index:        2;
    pointer-events: none;
}

.hero-inner[b-c0nek19kh7] {
    position:   relative;
    z-index:    3;
    width:      100%;
    max-width:  1200px;
    margin:     0 auto;
    padding:    5rem 2rem 4rem;
    text-align: left;
}

.hero-title-wrap[b-c0nek19kh7] {
    position:      relative;
    padding-top:   1.8rem;
    margin-bottom: 2rem;
}
.hero-title-wrap[b-c0nek19kh7]::before {
    content:       '';
    position:      absolute;
    top:           0; left: 0;
    width:         40px;
    height:        2px;
    background:    rgba(255,255,255,0.55);
    border-radius: 2px;
}

.hero-title[b-c0nek19kh7] {
    font-size:      6rem;
    font-weight:    900;
    line-height:    1.06;
    letter-spacing: -0.04em;
    color:          #ffffff;
    margin:         0;
}

.tl-1[b-c0nek19kh7], .tl-2[b-c0nek19kh7] {
    display:   block;
    opacity:   0;
    transform: translateY(28px);
    animation: fadeUp-b-c0nek19kh7 0.6s cubic-bezier(0.22,0.61,0.36,1) forwards;
}
.tl-1[b-c0nek19kh7] { animation-delay: 0.05s; }
.tl-2[b-c0nek19kh7] { animation-delay: 0.32s; }

@keyframes fadeUp-b-c0nek19kh7 {
    to { opacity: 1; transform: translateY(0); }
}

.tl-cycle[b-c0nek19kh7] {
    display:                 inline-block;
    background:              linear-gradient(90deg, #6366f1, #a78bfa, #38bdf8, #34d399, #6366f1);
    background-size:         300% 100%;
    -webkit-background-clip: text;
    background-clip:         text;
    -webkit-text-fill-color: transparent;
    animation:               gradShift-b-c0nek19kh7 6s linear 2s infinite;
    min-width:               6.5ch;
    text-align:              left;
}
@keyframes gradShift-b-c0nek19kh7 {
    0%   { background-position: 0%   50%; }
    50%  { background-position: 100% 50%; }
    100% { background-position: 0%   50%; }
}
.tl-cycle.fade-in[b-c0nek19kh7]  { opacity: 1; transition: opacity 0.7s ease; }
.tl-cycle.fade-out[b-c0nek19kh7] { opacity: 0; transition: opacity 0.7s ease; }

.hero-subtitle[b-c0nek19kh7] {
    font-size:       1rem;
    line-height:     1.75;
    color:           rgba(255,255,255,0.62);
    margin:          2rem 0 2.5rem;
    max-width:       520px;
    opacity:         0;
    animation:       fadeUp-b-c0nek19kh7 0.5s ease forwards;
    animation-delay: 0.62s;
    word-break:      keep-all;
}
.hero-subtitle strong[b-c0nek19kh7] { color: rgba(255,255,255,0.95); font-weight: 600; }

.hero-actions[b-c0nek19kh7] {
    display:         flex;
    gap:             1rem;
    align-items:     center;
    opacity:         0;
    animation:       fadeUp-b-c0nek19kh7 0.5s ease forwards;
    animation-delay: 0.88s;
}

.btn-hero[b-c0nek19kh7] {
    padding:         0.9rem 2.2rem;
    border-radius:   8px;
    font-size:       1rem;
    font-weight:     600;
    text-decoration: none;
    transition:      all 0.2s ease;
    display:         inline-flex;
    align-items:     center;
    justify-content: center;
}
.btn-hero-primary[b-c0nek19kh7] {
    background: #ffffff;
    color:      #000000;
    border:     1px solid rgba(255,255,255,0.9);
}
.btn-hero-primary:hover[b-c0nek19kh7] {
    background: #f1f5f9;
    transform:  translateY(-2px);
    box-shadow: 0 8px 24px rgba(0,0,0,0.3);
    color:      #000000;
}
.btn-hero-secondary[b-c0nek19kh7] {
    background:      transparent;
    color:           rgba(255,255,255,0.82);
    border:          1px solid rgba(255,255,255,0.3);
    backdrop-filter: blur(4px);
}
.btn-hero-secondary:hover[b-c0nek19kh7] {
    background:   rgba(255,255,255,0.1);
    border-color: rgba(255,255,255,0.55);
    transform:    translateY(-2px);
    color:        #ffffff;
}

/* =========================================
   Mid sections — Light Grey Theme
========================================= */

.hs-section[b-c0nek19kh7] {
    background: #ffffff;
    padding:    6rem 2rem;
    width:      100%;
    box-sizing: border-box;
}

.hs-section--alt[b-c0nek19kh7] {
    background: #f3f4f6;
    border-top:    1px solid #e5e7eb;
    border-bottom: 1px solid #e5e7eb;
    width:      100%;
    box-sizing: border-box;
}

/* ── Logos — Hero 바로 아래, 구분감 있게 ── */
.hs-section--logos[b-c0nek19kh7] {
    background:  #18181b;
    padding:     3rem 2rem;
    border-top:  none;
    width:       100%;
    box-sizing:  border-box;
}

/* ── CTA 섹션 ── */
.hs-section--cta[b-c0nek19kh7] {
    background: #111827;
    padding:    7rem 2rem;
    width:      100%;
    box-sizing: border-box;
}

.hs-container[b-c0nek19kh7] {
    max-width: 1200px;
    margin:    0 auto;
}

/* ── Text atoms ── */
.hs-eyebrow[b-c0nek19kh7] {
    font-size:      0.72rem;
    font-weight:    700;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color:          #6366f1;
    margin-bottom:  0.75rem;
}

.hs-title[b-c0nek19kh7] {
    font-size:      2.8rem;
    font-weight:    800;
    color:          #111827;
    letter-spacing: -0.04em;
    line-height:    1.15;
    margin:         0;
}
.hs-title--left[b-c0nek19kh7] { text-align: left; }

.hs-subtitle[b-c0nek19kh7] {
    font-size:   1rem;
    color:       #6b7280;
    line-height: 1.7;
    margin:      1rem auto 0;
    max-width:   520px;
}

.hs-body[b-c0nek19kh7] {
    font-size:   0.9rem;
    color:       #6b7280;
    line-height: 1.75;
    margin:      1rem 0 2rem;
}

.hs-link-arrow[b-c0nek19kh7] {
    display:         inline-flex;
    align-items:     center;
    gap:             0.4rem;
    font-size:       0.88rem;
    font-weight:     700;
    color:           #6366f1;
    text-decoration: none;
    transition:      color 0.15s, gap 0.15s;
}
.hs-link-arrow:hover[b-c0nek19kh7] { color: var(--ah-link); gap: 0.7rem; }

.hs-head[b-c0nek19kh7]         { margin-bottom: 4rem; }
.hs-head--center[b-c0nek19kh7] { text-align: center; }

/* ── Pillar grid ── */
.hs-pillar-grid[b-c0nek19kh7] {
    display:               grid;
    grid-template-columns: repeat(3, 1fr);
    gap:                   1.5rem;
}

.hs-pillar-card[b-c0nek19kh7] {
    border:        1px solid #e5e7eb;
    border-radius: 16px;
    padding:       2rem;
    background:    #ffffff;
    transition:    border-color 0.2s, box-shadow 0.2s;
    cursor:        default;
}
.hs-pillar-card:hover[b-c0nek19kh7] {
    border-color: #c7d2fe;
    box-shadow:   0 4px 20px rgba(99,102,241,0.08);
}

.hs-pillar-icon[b-c0nek19kh7] {
    width:           44px;
    height:          44px;
    border-radius:   10px;
    display:         flex;
    align-items:     center;
    justify-content: center;
    font-size:       1.1rem;
    margin-bottom:   1.25rem;
}

.hs-pillar-title[b-c0nek19kh7] {
    font-size:     1.1rem;
    font-weight:   700;
    color:         #111827;
    margin-bottom: 0.5rem;
}

.hs-pillar-desc[b-c0nek19kh7] {
    font-size:   0.82rem;
    color:       #6b7280;
    line-height: 1.7;
}

.hs-tag-row[b-c0nek19kh7] {
    display:    flex;
    flex-wrap:  wrap;
    gap:        0.4rem;
    margin-top: 1.25rem;
}

.hs-tag[b-c0nek19kh7] {
    font-size:     0.65rem;
    font-weight:   600;
    color:         #6b7280;
    border:        1px solid #e5e7eb;
    border-radius: 4px;
    padding:       0.2rem 0.55rem;
    font-family:   'JetBrains Mono', monospace;
    background:    #f9fafb;
}

/* ── Steps ── */
.hs-steps[b-c0nek19kh7] {
    display:               grid;
    grid-template-columns: repeat(4, 1fr);
    gap:                   0;
    position:              relative;
}

.hs-steps-line[b-c0nek19kh7] {
    position:   absolute;
    top:        28px;
    left:       12.5%;
    right:      12.5%;
    height:     1px;
    background: linear-gradient(90deg, transparent, #c7d2fe, transparent);
}

.hs-step[b-c0nek19kh7] { text-align: center; padding: 0 1rem; position: relative; }

.hs-step-icon[b-c0nek19kh7] {
    width:           56px;
    height:          56px;
    border-radius:   50%;
    border:          1px solid #c7d2fe;
    background:      #eef2ff;
    display:         flex;
    align-items:     center;
    justify-content: center;
    font-size:       1.1rem;
    margin:          0 auto 1.25rem;
    position:        relative;
    z-index:         1;
}

.hs-step-num[b-c0nek19kh7] {
    font-size:      0.65rem;
    font-weight:    700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color:          #6366f1;
    margin-bottom:  0.4rem;
}

.hs-step-title[b-c0nek19kh7] {
    font-size:     0.95rem;
    font-weight:   700;
    color:         #111827;
    margin-bottom: 0.5rem;
}

.hs-step-desc[b-c0nek19kh7] {
    font-size:   0.78rem;
    color:       #6b7280;
    line-height: 1.6;
}

/* ── Tier layout ── */
.hs-tier-layout[b-c0nek19kh7] {
    display:               grid;
    grid-template-columns: 1fr 1fr;
    gap:                   5rem;
    align-items:           center;
}

.hs-tier-right[b-c0nek19kh7] {
    display:        flex;
    flex-direction: column;
    gap:            0.75rem;
}

.hs-tier-row[b-c0nek19kh7] {
    border:        1px solid;
    border-radius: 10px;
    padding:       1rem 1.25rem;
    display:       flex;
    align-items:   center;
    gap:           1rem;
}

.hs-tier-badge[b-c0nek19kh7] {
    width:           36px;
    height:          36px;
    border-radius:   8px;
    display:         flex;
    align-items:     center;
    justify-content: center;
    font-size:       0.8rem;
    font-weight:     800;
    flex-shrink:     0;
    font-family:     'JetBrains Mono', monospace;
}

.hs-tier-info[b-c0nek19kh7]  { flex: 1; }
.hs-tier-name[b-c0nek19kh7]  { font-size: 0.88rem; font-weight: 700; color: #111827; }
.hs-tier-desc[b-c0nek19kh7]  { font-size: 0.72rem; color: #6b7280; margin-top: 0.15rem; }

.hs-tier-target[b-c0nek19kh7] {
    font-size:     0.65rem;
    font-weight:   700;
    border:        1px solid;
    padding:       0.2rem 0.55rem;
    border-radius: 4px;
    white-space:   nowrap;
}

/* ── Logos ── */
.hs-logos-label[b-c0nek19kh7] {
    font-size:      0.7rem;
    font-weight:    700;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color:          rgba(255,255,255,0.35);
    text-align:     center;
    margin-bottom:  1.75rem;
}

.hs-logos-row[b-c0nek19kh7] {
    display:         flex;
    justify-content: center;
    align-items:     center;
    gap:             3.5rem;
    flex-wrap:       wrap;
}

.hs-logo-item[b-c0nek19kh7] {
    font-size:      1rem;
    font-weight:    800;
    color:          rgba(255,255,255,0.3);
    letter-spacing: -0.03em;
}

/* ── CTA ── */
.hs-cta-wrap[b-c0nek19kh7] {
    max-width:  640px;
    margin:     0 auto;
    text-align: center;
    padding:    0 2rem;
}

.hs-cta-title[b-c0nek19kh7] {
    font-size:      3rem;
    font-weight:    900;
    color:          #ffffff;
    letter-spacing: -0.04em;
    margin:         0 0 1.25rem;
}

.hs-cta-sub[b-c0nek19kh7] {
    font-size:   0.95rem;
    color:       rgba(255,255,255,0.5);
    line-height: 1.7;
    margin:      0 0 2.5rem;
}

.hs-cta-actions[b-c0nek19kh7] {
    display:         flex;
    gap:             1rem;
    justify-content: center;
    flex-wrap:       wrap;
}

/* CTA 섹션 버튼 override */
.hs-section--cta .btn-hero-primary[b-c0nek19kh7] {
    background:   #ffffff;
    color:        #111827;
    border-color: #ffffff;
}
.hs-section--cta .btn-hero-primary:hover[b-c0nek19kh7] {
    background: #f1f5f9;
    color:      #111827;
}

/* =========================================
   반응형
========================================= */
@media (max-width: 1200px) { .hero-title[b-c0nek19kh7] { font-size: 5rem; } }

@media (max-width: 1024px) {
    .hero-bg-1[b-c0nek19kh7]      { background-position: 65% 15%; }
    .hero-bg-2[b-c0nek19kh7]      { background-position: 65% 20%; }
    .hs-tier-layout[b-c0nek19kh7] { gap: 3rem; }
    .hs-steps[b-c0nek19kh7]       { grid-template-columns: repeat(2,1fr); gap: 2.5rem; }
    .hs-steps-line[b-c0nek19kh7]  { display: none; }
}

@media (max-width: 992px) {
    .hero-inner[b-c0nek19kh7]    { padding: 3.5rem 2rem; }
    .hero-title[b-c0nek19kh7]    { font-size: 4.8rem; }
    .hero-subtitle[b-c0nek19kh7] { max-width: 100%; font-size: 1.05rem; }
    .hero-bg-1[b-c0nek19kh7]     { background-position: 70% 15%; }
    .hero-bg-2[b-c0nek19kh7]     { background-position: 70% 20%; }
    .hero-overlay[b-c0nek19kh7]  { background: linear-gradient(90deg,rgba(0,0,0,0.92) 0%,rgba(0,0,0,0.80) 50%,rgba(0,0,0,0.50) 100%); }
    .btn-hero[b-c0nek19kh7]      { padding: 1rem 2.5rem; font-size: 1.05rem; }
}

@media (max-width: 768px) {
    .hero-title[b-c0nek19kh7]     { font-size: 3.2rem; }
    .hero-bg-1[b-c0nek19kh7]      { background-position: 75% top; }
    .hero-bg-2[b-c0nek19kh7]      { background-position: 75% top; }
    .hero-overlay[b-c0nek19kh7]   { background: linear-gradient(90deg,rgba(0,0,0,0.94) 0%,rgba(0,0,0,0.85) 55%,rgba(0,0,0,0.60) 100%); }
    .hs-title[b-c0nek19kh7]       { font-size: 2.2rem; }
    .hs-pillar-grid[b-c0nek19kh7] { grid-template-columns: 1fr; }
    .hs-tier-layout[b-c0nek19kh7] { grid-template-columns: 1fr; gap: 2.5rem; }
    .hs-cta-title[b-c0nek19kh7]   { font-size: 2.2rem; }
    .hs-logos-row[b-c0nek19kh7]   { gap: 2rem; }
}

@media (max-width: 480px) {
    .hero-inner[b-c0nek19kh7]      { padding: 5rem 1.25rem 3rem; }
    .hero-title[b-c0nek19kh7]      { font-size: 3rem; }
    .hero-subtitle[b-c0nek19kh7]   { font-size: 0.9rem; }
    .hero-title-wrap[b-c0nek19kh7] { margin-bottom: 1.25rem; }
    .hero-bg-1[b-c0nek19kh7]       { background-position: 50% 5%; }
    .hero-bg-2[b-c0nek19kh7]       { background-position: 50% 5%; }
    .hero-overlay[b-c0nek19kh7]    { background: linear-gradient(180deg,rgba(0,0,0,0.15) 0%,rgba(0,0,0,0.55) 45%,rgba(0,0,0,0.90) 70%,rgba(0,0,0,0.95) 100%); }
    .tl-cycle[b-c0nek19kh7]        { min-width: 8ch; }
    .hs-section[b-c0nek19kh7]      { padding: 4rem 1.25rem; }
    .hs-steps[b-c0nek19kh7]        { grid-template-columns: 1fr; }
    .hs-cta-title[b-c0nek19kh7]    { font-size: 1.8rem; }
}

@media (max-width: 390px) {
    .hero-title[b-c0nek19kh7] { font-size: 2.6rem; }
    .hero-bg-1[b-c0nek19kh7]  { background-position: 85% top; }
    .hero-bg-2[b-c0nek19kh7]  { background-position: 85% top; }
}
/* /Features/Home/Pages/KycStart.razor.rz.scp.css */
/* 1. 컨테이너 설정 */
.kyc-container[b-pisuoxbze1] {
    max-width: 600px;
    margin: 0 auto;
    font-family: 'Inter', -apple-system, sans-serif;
    color: #1e293b;
}

/* 2. 🚀 상단 통합 설명 (강조색 적용) */
.merged-description[b-pisuoxbze1] {
    font-size: 0.825rem;
    color: #64748b;
    line-height: 1.5;
    margin-bottom: 0;
}

.merged-description strong[b-pisuoxbze1] {
    color: var(--ah-link); /* 🚀 브랜드 인디고 컬러 적용 */
    font-weight: 700;
}

/* 3. 슬림 리스트 카드 */
.option-card-slim[b-pisuoxbze1] {
    display: flex;
    align-items: center;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    padding: 1rem 1.25rem; 
    margin-bottom: 0.75rem;
    cursor: pointer;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
}

.option-card-slim:hover[b-pisuoxbze1],
.option-card-slim.selected[b-pisuoxbze1] {
    background-color: #f8fafc;
    border-color: #94a3b8;
}

.option-card-slim[b-pisuoxbze1]::before {
    content: '';
    position: absolute;
    left: 0; top: 0; bottom: 0;
    width: 4px;
    background-color: var(--ah-link);
    opacity: 0;
    transition: opacity 0.2s;
}

.option-card-slim:hover[b-pisuoxbze1]::before,
.option-card-slim.selected[b-pisuoxbze1]::before {
    opacity: 1;
}

/* 4. 아이콘 박스 */
.icon-box[b-pisuoxbze1] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38px; height: 38px;
    background-color: #f1f5f9;
    border-radius: 8px;
    font-size: 1.1rem;
    color: #64748b;
    margin-right: 1rem;
    flex-shrink: 0;
    transition: all 0.2s;
}

.option-card-slim:hover .icon-box[b-pisuoxbze1],
.option-card-slim.selected .icon-box[b-pisuoxbze1] {
    color: var(--ah-link);
    background-color: #eef2ff;
}

/* 5. 텍스트 영역 */
.text-group[b-pisuoxbze1] {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-right: 1rem;
    overflow: hidden;
}

.slim-title[b-pisuoxbze1] {
    font-size: 0.95rem;
    font-weight: 600;
    color: #0f172a;
    margin-bottom: 2px;
}

.slim-desc[b-pisuoxbze1] {
    font-size: 0.8rem;
    color: #64748b;
    margin: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* 6. 뱃지 및 화살표 */
.mini-badge[b-pisuoxbze1] {
    font-size: 0.65rem;
    font-weight: 700;
    color: #64748b;
    background-color: #f1f5f9;
    padding: 1px 6px;
    border-radius: 4px;
    margin-left: 8px;
    border: 1px solid #e2e8f0;
}

.arrow-icon[b-pisuoxbze1] {
    font-size: 1rem;
    color: #cbd5e1;
    transition: transform 0.2s, color 0.2s;
}

.option-card-slim:hover .arrow-icon[b-pisuoxbze1],
.option-card-slim.selected .arrow-icon[b-pisuoxbze1] {
    color: var(--ah-link);
    transform: translateX(3px);
}

/* 7. 하단 링크 */
.footer-link[b-pisuoxbze1] {
    font-size: 0.85rem;
    color: #64748b;
    text-decoration: none;
}

.footer-link:hover[b-pisuoxbze1] {
    color: #0f172a;
    text-decoration: underline;
}

/* =========================================
   추가된 커스텀 상태 스타일 (Verified & Disabled & Email)
   ========================================= */

/* 회색 이메일 경고 배너 */
.email-alert-gray[b-pisuoxbze1] {
    background-color: #f8fafc; /* 연한 그레이 */
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 1rem 1.25rem;
}

/* 레드 배지 (이메일 인증 필요) */
.badge-error[b-pisuoxbze1] {
    font-size: 0.7rem;
    background-color: #fee2e2;
    color: #ef4444; 
    padding: 2px 8px;
    border-radius: 20px;
    font-weight: 700;
    border: 1px solid #fecaca;
}

/* 그린 배지 (인증 완료) */
.badge-verified[b-pisuoxbze1] {
    font-size: 0.75rem;
    color: #22c55e;
    font-weight: 700;
}

/* 인증 완료된 카드 (그린 테마) */
.option-card-slim.verified[b-pisuoxbze1] {
    border-color: #bcf0da;
    background-color: #f6fdf9;
}

.option-card-slim.verified[b-pisuoxbze1]::before {
    background-color: #22c55e; /* 맨 왼쪽 컬러 그린 */
    opacity: 1;
}

.option-card-slim.verified .icon-box[b-pisuoxbze1] {
    background-color: #dcfce7;
    color: #22c55e;
}

.option-card-slim.verified .arrow-icon[b-pisuoxbze1],
.option-card-slim.verified:hover .arrow-icon[b-pisuoxbze1] {
    color: #22c55e; /* 오른쪽 컬러 그린 */
}

/* 비활성화 상태 (클릭 방지) */
.option-card-slim.disabled[b-pisuoxbze1] {
    cursor: not-allowed !important;
    pointer-events: none; /* 클릭 막기 */
}

/* hover해도 verified 카드는 배경색과 선만 살짝 강조 */
.option-card-slim.verified:hover[b-pisuoxbze1] {
    background-color: #f0fdf4;
    border-color: #22c55e;
}
/* /Features/Identity/Applications/Pages/ApplicationDetail.razor.rz.scp.css */
/* ApplicationDetail — page-specific only.
   Common classes are in ah-components.css */

/* ── App header ── */
.app-icon-lg[b-hkeaap0nsr] {
    width:         48px;
    height:        48px;
    border-radius: var(--ah-radius-lg);
    display:       flex;
    align-items:   center;
    justify-content: center;
    font-size:     1.3rem;
    font-weight:   800;
    color:         #ffffff;
    flex-shrink:   0;
}

.app-type-badge-lg[b-hkeaap0nsr] {
    font-size:     0.68rem;
    font-weight:   700;
    padding:       0.2rem 0.55rem;
    border-radius: var(--ah-radius-sm);
    background:    var(--ah-bg-surface);
    color:         var(--ah-text-sub);
    border:        1px solid var(--ah-border);
}

.app-env-badge[b-hkeaap0nsr] { font-size: 0.62rem; font-weight: 700; padding: 0.15rem 0.45rem; border-radius: var(--ah-radius-sm); }
.env-prod[b-hkeaap0nsr]    { background: #f0fdf4; color: #166534; }
.env-staging[b-hkeaap0nsr] { background: #fff7ed; color: #9a3412; }
.env-testing[b-hkeaap0nsr] { background: #f0f9ff; color: #075985; }
.env-dev[b-hkeaap0nsr]     { background: #f5f3ff; color: #5b21b6; }

/* ── Checklist ── */
.checklist[b-hkeaap0nsr] { display: flex; flex-direction: column; gap: 0.75rem; }

.checklist-item[b-hkeaap0nsr] {
    display:       flex;
    align-items:   center;
    gap:           0.85rem;
    padding:       0.85rem 1rem;
    border:        1px solid var(--ah-border);
    border-radius: var(--ah-radius-md);
    transition:    border-color 0.15s;
}
.checklist-item.done[b-hkeaap0nsr] { border-color: var(--ah-success-border); background: var(--ah-success-bg); }

.checklist-icon[b-hkeaap0nsr] {
    width:           28px;
    height:          28px;
    border-radius:   50%;
    background:      var(--ah-bg-surface);
    color:           var(--ah-text-muted);
    display:         flex;
    align-items:     center;
    justify-content: center;
    font-size:       0.75rem;
    font-weight:     700;
    flex-shrink:     0;
}
.checklist-item.done .checklist-icon[b-hkeaap0nsr] { background: var(--ah-success); color: #ffffff; }

.checklist-title[b-hkeaap0nsr] { font-size: 0.82rem; font-weight: 700; color: var(--ah-text); }
.checklist-desc[b-hkeaap0nsr]  { font-size: 0.72rem; color: var(--ah-text-muted); }

/* ── Key display ── */
.key-display-row[b-hkeaap0nsr] {
    display:     flex;
    align-items: center;
    gap:         0.75rem;
    padding:     0.75rem 1rem;
    background:  var(--ah-bg-subtle);
    border:      1px solid var(--ah-border);
    border-radius: var(--ah-radius-md);
    margin-bottom: 0.5rem;
}
.key-display-label[b-hkeaap0nsr] {
    font-size:      0.68rem;
    font-weight:    700;
    color:          var(--ah-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    min-width:      90px;
    flex-shrink:    0;
}
.key-display-value[b-hkeaap0nsr] {
    font-family: 'JetBrains Mono', monospace;
    font-size:   0.82rem;
    font-weight: 600;
    color:       var(--ah-text);
    flex:        1;
    word-break:  break-all;
}

/* ── Code snippet ── */
.snippet-tabs[b-hkeaap0nsr] {
    display:       flex;
    border-bottom: 1px solid #1e293b;
    background:    #0f172a;
}
.snippet-tab[b-hkeaap0nsr] {
    padding:       0.5rem 1rem;
    font-size:     0.72rem;
    font-weight:   600;
    color:         #475569;
    cursor:        pointer;
    border:        none;
    background:    none;
    border-bottom: 2px solid transparent;
    transition:    all 0.15s;
}
.snippet-tab:hover[b-hkeaap0nsr]  { color: #94a3b8; }
.snippet-tab.active[b-hkeaap0nsr] { color: #e2e8f0; border-bottom-color: var(--ah-link); }

.snippet-code[b-hkeaap0nsr] {
    background:    #0f172a;
    border-radius: 0 0 var(--ah-radius-lg) var(--ah-radius-lg);
    padding:       1.25rem 1.5rem;
    overflow-x:    auto;
    position:      relative;
}
.snippet-code pre[b-hkeaap0nsr] {
    margin:      0;
    font-family: 'JetBrains Mono', monospace;
    font-size:   0.75rem;
    line-height: 1.7;
    color:       #94a3b8;
    white-space: pre;
}
.btn-copy[b-hkeaap0nsr] {
    position:      absolute;
    top:           0.75rem;
    right:         0.75rem;
    font-size:     0.65rem;
    font-weight:   700;
    color:         #475569;
    background:    none;
    border:        1px solid #334155;
    padding:       0.2rem 0.55rem;
    border-radius: var(--ah-radius-sm);
    cursor:        pointer;
    transition:    all 0.12s;
}
.btn-copy:hover[b-hkeaap0nsr] { color: #e2e8f0; border-color: #475569; }

/* ── Social provider ── */
.provider-list[b-hkeaap0nsr] { display: flex; flex-direction: column; gap: 0; }

.provider-row[b-hkeaap0nsr] {
    display:     flex;
    align-items: center;
    gap:         0.85rem;
    padding:     0.85rem 0;
    border-bottom: 1px solid var(--ah-border-soft);
}
.provider-row:last-child[b-hkeaap0nsr] { border-bottom: none; }

.provider-icon[b-hkeaap0nsr] {
    width:           32px;
    height:          32px;
    border-radius:   var(--ah-radius-md);
    display:         flex;
    align-items:     center;
    justify-content: center;
    font-size:       0.75rem;
    font-weight:     800;
    color:           #ffffff;
    flex-shrink:     0;
}
.provider-icon.google[b-hkeaap0nsr] { background: #4285F4; }
.provider-icon.line[b-hkeaap0nsr]   { background: #06C755; }

.provider-name[b-hkeaap0nsr] { font-size: 0.82rem; font-weight: 600; color: var(--ah-text); }
.provider-desc[b-hkeaap0nsr] { font-size: 0.7rem; color: var(--ah-text-muted); }

/* ── Users table ── */
.table-container[b-hkeaap0nsr] {
    background:    var(--ah-bg);
    border:        1px solid var(--ah-border-soft);
    border-radius: var(--ah-radius-lg);
    box-shadow:    var(--ah-shadow-sm);
    overflow:      hidden;
}
.table-header[b-hkeaap0nsr] {
    display:         flex;
    align-items:     center;
    justify-content: space-between;
    padding:         1rem 1.5rem;
    border-bottom:   1px solid var(--ah-border-soft);
}
.table-title[b-hkeaap0nsr] { font-size: 0.85rem; font-weight: 700; color: var(--ah-text); }

.filter-select[b-hkeaap0nsr], .search-input[b-hkeaap0nsr] {
    font-size:     0.82rem;
    padding:       0.45rem 0.75rem;
    border:        1px solid var(--ah-border);
    border-radius: var(--ah-radius);
    outline:       none;
    color:         var(--ah-text-sub);
    background:    var(--ah-bg);
}
.filter-select:focus[b-hkeaap0nsr], .search-input:focus[b-hkeaap0nsr] {
    border-color: var(--ah-focus-color);
    box-shadow:   var(--ah-focus-ring);
}
.search-input[b-hkeaap0nsr] { width: 200px; }
.search-input[b-hkeaap0nsr]::placeholder { color: var(--ah-text-placeholder); }

.role-table[b-hkeaap0nsr] { width: 100%; border-collapse: separate; border-spacing: 0; }
.role-table th[b-hkeaap0nsr] {
    font-size:      0.7rem;
    font-weight:    700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color:          var(--ah-text-muted);
    background:     var(--ah-bg);
    border-bottom:  1px solid var(--ah-border-soft);
    padding:        0.7rem 1.25rem;
    text-align:     left;
    white-space:    nowrap;
}
.role-table td[b-hkeaap0nsr] {
    padding:        0.8rem 1.25rem;
    border-bottom:  1px solid var(--ah-bg-subtle);
    font-size:      0.85rem;
    color:          var(--ah-text-sub);
    vertical-align: middle;
}
.role-table tbody tr[b-hkeaap0nsr] { transition: background 0.1s; }
.role-table tbody tr:hover[b-hkeaap0nsr] { background: var(--ah-bg-subtle); }
.role-table tbody tr:last-child td[b-hkeaap0nsr] { border-bottom: none; }

.user-avatar[b-hkeaap0nsr] {
    width:           28px;
    height:          28px;
    border-radius:   50%;
    background:      var(--ah-bg-surface);
    color:           var(--ah-text-sub);
    display:         flex;
    align-items:     center;
    justify-content: center;
    font-size:       0.72rem;
    font-weight:     700;
    flex-shrink:     0;
}

.provider-badge[b-hkeaap0nsr] { font-size: 0.62rem; font-weight: 700; padding: 0.12rem 0.45rem; border-radius: var(--ah-radius-sm); }
.provider-badge.google[b-hkeaap0nsr] { background: #eff6ff; color: #1d4ed8; }
.provider-badge.line[b-hkeaap0nsr]   { background: var(--ah-success-bg); color: #166534; }

.status-dot[b-hkeaap0nsr] { width: 6px; height: 6px; border-radius: 50%; display: inline-block; margin-right: 0.4rem; }
.status-dot.active[b-hkeaap0nsr]   { background: var(--ah-success); }
.status-dot.inactive[b-hkeaap0nsr] { background: var(--ah-text-muted); }
.status-text[b-hkeaap0nsr] { font-size: 0.8rem; font-weight: 600; color: var(--ah-text-sub); }

.date-mono[b-hkeaap0nsr]   { font-family: 'JetBrains Mono', monospace; font-size: 0.75rem; color: var(--ah-text-muted); }

.btn-row-action[b-hkeaap0nsr] {
    font-size:  0.78rem;
    color:      var(--ah-text-muted);
    background: none;
    border:     none;
    cursor:     pointer;
    padding:    0.25rem;
    transition: color 0.12s;
}
.btn-row-action:hover[b-hkeaap0nsr] { color: var(--ah-text-sub); }

.pagination-bar[b-hkeaap0nsr] {
    display:         flex;
    align-items:     center;
    justify-content: space-between;
    padding:         0.75rem 1.5rem;
    border-top:      1px solid var(--ah-border-soft);
}
.pagination-info[b-hkeaap0nsr] { font-size: 0.72rem; color: var(--ah-text-muted); font-weight: 600; }

/* ── Coming soon ── */
.coming-soon-badge[b-hkeaap0nsr] {
    font-size:     0.55rem;
    font-weight:   700;
    background:    var(--ah-bg-surface);
    color:         var(--ah-text-muted);
    border:        1px solid var(--ah-border);
    padding:       0.1rem 0.35rem;
    border-radius: var(--ah-radius-sm);
}
/* /Features/Identity/EndUsers/Pages/EndUserDirectory.razor.rz.scp.css */
/* EndUserDirectory.razor.css — CSS variable 기반 (통합본) */

/* ════════════════════════════════
   Buttons
════════════════════════════════ */
.eu-btn-primary[b-hud6lzeig8] {
    font-size: 0.8rem; font-weight: 700;
    color: var(--ah-bg); background: var(--ah-text);
    border: 1px solid var(--ah-text);
    padding: 0.5rem 1.25rem; border-radius: 6px;
    cursor: pointer; display: inline-flex; align-items: center; gap: 0.3rem;
    transition: opacity 0.15s; text-decoration: none;
}
.eu-btn-primary:hover[b-hud6lzeig8] { opacity: 0.85; }

.eu-btn-secondary[b-hud6lzeig8] {
    font-size: 0.8rem; font-weight: 600;
    color: var(--ah-text-sub); background: var(--ah-bg);
    border: 1px solid var(--ah-border);
    padding: 0.5rem 1.25rem; border-radius: 6px;
    cursor: pointer; display: inline-flex; align-items: center; gap: 0.3rem;
    transition: all 0.15s;
}
.eu-btn-secondary:hover[b-hud6lzeig8] { background: var(--ah-bg-subtle); }

/* ════════════════════════════════
   Info box
════════════════════════════════ */
.eu-info-box[b-hud6lzeig8] {
    background: var(--ah-bg-subtle); border: 1px solid var(--ah-border);
    border-radius: 10px; padding: 0.85rem 1rem; margin-bottom: 1.25rem;
    display: flex; align-items: flex-start; gap: 0.6rem;
}

/* ════════════════════════════════
   Stat cards
════════════════════════════════ */
.eu-stat-card[b-hud6lzeig8] {
    background: var(--ah-bg); border: 1px solid var(--ah-border);
    border-radius: 12px; box-shadow: var(--ah-shadow-sm);
    padding: 1.25rem 1.5rem;
}
.eu-stat-label[b-hud6lzeig8] {
    font-size: 0.68rem; font-weight: 700; color: var(--ah-text-muted);
    text-transform: uppercase; letter-spacing: 0.05em; margin-bottom: 0.4rem;
}
.eu-stat-value[b-hud6lzeig8] { font-size: 1.8rem; font-weight: 800; color: var(--ah-text); line-height: 1; }

/* ════════════════════════════════
   Table container
════════════════════════════════ */
.eu-table-container[b-hud6lzeig8] {
    background: var(--ah-bg); border: 1px solid var(--ah-border);
    border-radius: 12px; box-shadow: var(--ah-shadow-sm); overflow: hidden;
}
.eu-table-header[b-hud6lzeig8] {
    display: flex; align-items: center; justify-content: space-between;
    padding: 1rem 1.5rem; border-bottom: 1px solid var(--ah-border);
}
.eu-table-title[b-hud6lzeig8] { font-size: 0.85rem; font-weight: 700; color: var(--ah-text); }

.eu-select[b-hud6lzeig8] {
    font-size: 0.82rem; padding: 0.45rem 0.75rem;
    border: 1px solid var(--ah-border); border-radius: 6px;
    outline: none; color: var(--ah-text); background: var(--ah-bg);
}
.eu-search[b-hud6lzeig8] {
    font-size: 0.82rem; padding: 0.45rem 0.75rem;
    border: 1px solid var(--ah-border); border-radius: 6px;
    outline: none; width: 200px; color: var(--ah-text); background: var(--ah-bg);
}
.eu-search:focus[b-hud6lzeig8] { border-color: var(--ah-link); box-shadow: 0 0 0 2px rgba(129,140,248,0.2); }

/* ════════════════════════════════
   Table
════════════════════════════════ */
.eu-table[b-hud6lzeig8] { width: 100%; border-collapse: separate; border-spacing: 0; }

.eu-table th[b-hud6lzeig8] {
    font-size: 0.7rem; font-weight: 700; text-transform: uppercase;
    letter-spacing: 0.03em; color: var(--ah-text-muted); background: var(--ah-bg);
    border-bottom: 1px solid var(--ah-border);
    padding: 0.7rem 1.25rem; text-align: left; white-space: nowrap;
}
.eu-table td[b-hud6lzeig8] {
    padding: 0.8rem 1.25rem;
    border-bottom: 1px solid var(--ah-bg-subtle);
    vertical-align: middle;
}
.eu-table tbody tr[b-hud6lzeig8] { transition: background 0.1s; }
.eu-table tbody tr:hover[b-hud6lzeig8] { background: var(--ah-bg-subtle); }
.eu-table tbody tr:last-child td[b-hud6lzeig8] { border-bottom: none; }

/* ════════════════════════════════
   Row elements
════════════════════════════════ */
.eu-avatar[b-hud6lzeig8] {
    width: 28px; height: 28px; border-radius: 50%;
    background: var(--ah-bg-surface); color: var(--ah-text-sub);
    display: flex; align-items: center; justify-content: center;
    font-size: 0.72rem; font-weight: 700; flex-shrink: 0;
}
.eu-user-name[b-hud6lzeig8]  { font-size: 0.82rem; font-weight: 600; color: var(--ah-text); }
.eu-user-email[b-hud6lzeig8] { font-size: 0.7rem; color: var(--ah-text-muted); }

.eu-provider-badge[b-hud6lzeig8] {
    font-size: 0.62rem; font-weight: 700;
    padding: 0.12rem 0.45rem; border-radius: 4px;
    background: var(--ah-info-bg); color: var(--ah-info);
    border: 1px solid var(--ah-info-border);
}

.eu-mono[b-hud6lzeig8] { font-family: 'JetBrains Mono', monospace; font-size: 0.75rem; color: var(--ah-text-muted); }

.eu-status-dot[b-hud6lzeig8] {
    width: 6px; height: 6px; border-radius: 50%;
    display: inline-block; margin-right: 0.4rem;
}
.eu-status-dot.active[b-hud6lzeig8]   { background: var(--ah-success); }
.eu-status-dot.inactive[b-hud6lzeig8] { background: var(--ah-text-muted); }
.eu-status-text[b-hud6lzeig8] { font-size: 0.8rem; font-weight: 600; color: var(--ah-text-sub); }

.eu-action-btn[b-hud6lzeig8] {
    font-size: 0.75rem; font-weight: 600;
    padding: 0.35rem 0.85rem; border-radius: 6px;
    cursor: pointer; min-width: 90px; transition: opacity 0.15s;
    border: 1px solid; display: inline-flex;
    align-items: center; justify-content: center; gap: 0.4rem;
}
.eu-action-btn.danger[b-hud6lzeig8]  { color: var(--ah-danger);  background: var(--ah-danger-bg);  border-color: var(--ah-danger-border); }
.eu-action-btn.success[b-hud6lzeig8] { color: var(--ah-success); background: var(--ah-success-bg); border-color: var(--ah-success-border); }
.eu-action-btn:disabled[b-hud6lzeig8] { color: var(--ah-text-muted); background: var(--ah-bg-subtle); border-color: var(--ah-border); cursor: default; }
.eu-action-btn:hover:not(:disabled)[b-hud6lzeig8] { opacity: 0.85; }

/* ════════════════════════════════
   Pagination
════════════════════════════════ */
.eu-pagination[b-hud6lzeig8] {
    display: flex; align-items: center; justify-content: space-between;
    padding: 0.75rem 1.5rem; border-top: 1px solid var(--ah-border);
}
.eu-pagination-info[b-hud6lzeig8] { font-size: 0.72rem; color: var(--ah-text-muted); font-weight: 600; }
.eu-page-btn[b-hud6lzeig8] {
    font-size: 0.75rem; font-weight: 600; color: var(--ah-text-sub);
    background: var(--ah-bg); border: 1px solid var(--ah-border);
    padding: 0.3rem 0.75rem; border-radius: 5px; cursor: pointer; transition: all 0.15s;
}
.eu-page-btn:hover[b-hud6lzeig8]    { background: var(--ah-bg-subtle); }
.eu-page-btn.active[b-hud6lzeig8]   { background: var(--ah-text); color: var(--ah-bg); border-color: var(--ah-text); }
.eu-page-btn:disabled[b-hud6lzeig8] { opacity: 0.4; cursor: default; }

/* ════════════════════════════════
   Modal
════════════════════════════════ */
.eu-modal-backdrop[b-hud6lzeig8] {
    position: fixed; inset: 0; background: rgba(15,23,42,0.5);
    z-index: 1000; display: flex; align-items: center; justify-content: center; padding: 1rem;
}
.eu-modal[b-hud6lzeig8] {
    background: var(--ah-bg); border-radius: 12px; padding: 2rem;
    width: 100%; max-width: 440px;
    box-shadow: var(--ah-shadow-lg); border: 1px solid var(--ah-border);
}
.eu-modal-title[b-hud6lzeig8] { font-size: 1rem; font-weight: 700; color: var(--ah-text); }
.eu-modal-desc[b-hud6lzeig8]  { font-size: 0.83rem; color: var(--ah-text-muted); margin-bottom: 1.5rem; line-height: 1.6; }
.eu-modal-actions[b-hud6lzeig8] {
    display: flex; gap: 0.5rem; justify-content: flex-end;
    padding-top: 1rem; border-top: 1px solid var(--ah-border); margin-top: 0.5rem;
}

/* ════════════════════════════════
   Form
════════════════════════════════ */
.eu-field[b-hud6lzeig8] { margin-bottom: 1rem; }
.eu-field-label[b-hud6lzeig8] {
    font-size: 0.7rem; font-weight: 700; color: var(--ah-text-sub);
    text-transform: uppercase; letter-spacing: 0.03em;
    margin-bottom: 0.35rem; display: block;
}
.eu-input[b-hud6lzeig8] {
    width: 100%; font-size: 0.88rem; padding: 0.6rem 0.85rem;
    border: 1px solid var(--ah-border); border-radius: 6px; outline: none;
    color: var(--ah-text); background: var(--ah-bg); box-sizing: border-box;
    transition: border-color 0.15s;
}
.eu-input:focus[b-hud6lzeig8] { border-color: var(--ah-focus-color); box-shadow: var(--ah-focus-ring); }

/* ════════════════════════════════
   Spinner
════════════════════════════════ */
.eu-spin[b-hud6lzeig8] {
    width: 11px; height: 11px;
    border: 2px solid rgba(128,128,128,0.3);
    border-top-color: currentColor;
    border-radius: 50%;
    animation: eu-spin-b-hud6lzeig8 0.7s linear infinite;
    display: inline-block;
}
@keyframes eu-spin-b-hud6lzeig8 { to { transform: rotate(360deg); } }
/* /Features/Identity/Pages/PermissionStudio.razor.rz.scp.css */
/* PermissionStudio — page-specific only.
   Common classes are in ah-components.css */

/* ── Layout ── */
.studio-layout[b-m8rjnz6m5n] {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 1.5rem;
    align-items: start;
}
@media (max-width: 960px) { .studio-layout[b-m8rjnz6m5n] { grid-template-columns: 1fr; } }

/* ── Risk selector ── */
.risk-selector[b-m8rjnz6m5n] { display: flex; gap: 0.5rem; flex-wrap: wrap; margin-bottom: 0.5rem; }
.risk-option[b-m8rjnz6m5n] {
    flex: 1; min-width: 100px; border: 1px solid var(--ah-border);
    border-radius: var(--ah-radius-md); padding: 0.6rem 0.75rem;
    cursor: pointer; transition: all 0.15s; background: var(--ah-bg);
}
.risk-option:hover[b-m8rjnz6m5n]   { border-color: var(--ah-text-muted); background: var(--ah-bg-subtle); }
.risk-option.selected[b-m8rjnz6m5n] { border-color: var(--ah-text); background: var(--ah-bg-subtle); }

.risk-option-level[b-m8rjnz6m5n]  { font-size: 0.6rem; font-weight: 700; color: var(--ah-text-muted); text-transform: uppercase; letter-spacing: 0.04em; }
.risk-option-name[b-m8rjnz6m5n]   { font-size: 0.78rem; font-weight: 700; color: var(--ah-text); margin: 0.15rem 0; }
.risk-option-policy[b-m8rjnz6m5n] { font-size: 0.65rem; color: var(--ah-text-muted); font-family: 'JetBrains Mono', monospace; }

/* ── Grammar box ── */
.grammar-box[b-m8rjnz6m5n] {
    background: var(--ah-bg); border: 1px solid var(--ah-border);
    border-radius: var(--ah-radius-lg); padding: 0; margin-bottom: 1.5rem;
    box-shadow: var(--ah-shadow-sm); overflow: hidden;
}
.grammar-header[b-m8rjnz6m5n] {
    display: flex; align-items: center; justify-content: space-between;
    padding: 0.85rem 1.5rem; cursor: pointer; transition: background 0.15s;
}
.grammar-header:hover[b-m8rjnz6m5n] { background: var(--ah-bg-subtle); }
.grammar-title[b-m8rjnz6m5n]        { font-size: 0.72rem; font-weight: 700; color: var(--ah-text); margin: 0; }
.grammar-toggle[b-m8rjnz6m5n]       { display: flex; align-items: center; gap: 0.3rem; }
.grammar-toggle-text[b-m8rjnz6m5n]  { font-size: 0.65rem; font-weight: 600; color: var(--ah-text-muted); }
.grammar-chevron[b-m8rjnz6m5n]      { font-size: 0.6rem; color: var(--ah-text-muted); transition: transform 0.3s ease; }
.grammar-chevron.open[b-m8rjnz6m5n] { transform: rotate(180deg); }

.grammar-body[b-m8rjnz6m5n]       { max-height: 0; overflow: hidden; transition: max-height 0.35s ease, padding 0.35s ease; padding: 0 1.5rem; }
.grammar-body.open[b-m8rjnz6m5n]  { max-height: 500px; padding: 0 1.5rem 1.25rem; }

.grammar-formula[b-m8rjnz6m5n] {
    font-family: 'JetBrains Mono', monospace; font-size: 0.85rem; font-weight: 600;
    color: var(--ah-text); background: var(--ah-bg-subtle); border: 1px solid var(--ah-border-soft);
    border-radius: var(--ah-radius); padding: 0.6rem 1rem; margin-bottom: 0.75rem;
    display: flex; align-items: center; flex-wrap: wrap; gap: 0;
}
.gf-part[b-m8rjnz6m5n]     { padding: 0.1rem 0.35rem; border-radius: 3px; background: var(--ah-bg-surface); color: var(--ah-text-sub); font-size: 0.78rem; }
.gf-dot[b-m8rjnz6m5n]      { color: var(--ah-text-muted); font-weight: 800; padding: 0 0.1rem; }
.gf-colon[b-m8rjnz6m5n]    { color: var(--ah-text-muted); font-weight: 800; padding: 0 0.2rem; }

.grammar-section-label[b-m8rjnz6m5n] {
    font-size: 0.65rem; font-weight: 700; color: var(--ah-text-sub);
    text-transform: uppercase; letter-spacing: 0.05em; margin: 0.75rem 0 0.35rem;
}
.grammar-examples[b-m8rjnz6m5n] { margin-bottom: 0.75rem; }
.ge-row[b-m8rjnz6m5n] {
    display: flex; align-items: center; gap: 0.75rem;
    padding: 0.3rem 0; border-bottom: 1px solid var(--ah-bg-subtle);
}
.ge-row:last-child[b-m8rjnz6m5n] { border-bottom: none; }
.ge-scope[b-m8rjnz6m5n] {
    font-family: 'JetBrains Mono', monospace; font-size: 0.72rem; font-weight: 600;
    color: var(--ah-text); background: var(--ah-bg-subtle);
    padding: 0.15rem 0.5rem; border-radius: var(--ah-radius-sm);
    border: 1px solid var(--ah-border-soft); white-space: nowrap; min-width: 280px;
}
.ge-desc[b-m8rjnz6m5n]  { font-size: 0.7rem; color: var(--ah-text-muted); }
.ge-allow[b-m8rjnz6m5n] {
    font-size: 0.55rem; font-weight: 800; color: var(--ah-text-muted);
    background: var(--ah-bg-subtle); border: 1px solid var(--ah-border);
    padding: 0.05rem 0.3rem; border-radius: 3px;
}
.ge-deny[b-m8rjnz6m5n] {
    font-size: 0.55rem; font-weight: 800; color: var(--ah-danger);
    background: var(--ah-danger-bg); border: 1px solid var(--ah-danger-border);
    padding: 0.05rem 0.3rem; border-radius: 3px;
}
.grammar-note[b-m8rjnz6m5n] { font-size: 0.68rem; color: var(--ah-text-muted); line-height: 1.5; }
.grammar-note code[b-m8rjnz6m5n] {
    font-family: 'JetBrains Mono', monospace; font-size: 0.65rem; font-weight: 700;
    background: var(--ah-bg-surface); padding: 0.1rem 0.3rem; border-radius: 3px; color: var(--ah-text);
}

/* ── Sidebar ── */
.sidebar-panel[b-m8rjnz6m5n] {
    background: var(--ah-bg); border: 1px solid var(--ah-border-soft);
    border-radius: var(--ah-radius-lg); box-shadow: var(--ah-shadow-sm); overflow: hidden;
}
.sidebar-section[b-m8rjnz6m5n] { padding: 1rem 1.25rem; border-bottom: 1px solid var(--ah-border-soft); }
.sidebar-section:last-child[b-m8rjnz6m5n] { border-bottom: none; }
.sidebar-title[b-m8rjnz6m5n] { font-size: 0.65rem; font-weight: 700; color: var(--ah-text-muted); text-transform: uppercase; letter-spacing: 0.04em; margin-bottom: 0.6rem; }

.integration-item[b-m8rjnz6m5n] {
    display: flex; align-items: center; gap: 0.5rem;
    padding: 0.4rem 0.5rem; border-radius: var(--ah-radius);
    cursor: pointer; transition: background 0.12s; margin-bottom: 0.15rem;
}
.integration-item:hover[b-m8rjnz6m5n]  { background: var(--ah-bg-subtle); }
.integration-item.active[b-m8rjnz6m5n] { background: var(--ah-bg-surface); }

.integration-icon[b-m8rjnz6m5n] {
    width: 28px; height: 28px; border-radius: var(--ah-radius);
    background: var(--ah-bg-surface); display: flex; align-items: center; justify-content: center;
    font-size: 0.7rem; font-weight: 800; color: var(--ah-text-sub); flex-shrink: 0;
}
.integration-name[b-m8rjnz6m5n]   { font-size: 0.8rem; font-weight: 600; color: var(--ah-text); }
.integration-status[b-m8rjnz6m5n] { font-size: 0.6rem; color: var(--ah-text-muted); }

/* ── Standard variables ── */
.standard-var-row[b-m8rjnz6m5n] { display: flex; align-items: baseline; gap: 0.3rem; padding: 0.3rem 0; }
.sv-key[b-m8rjnz6m5n]     { font-family: 'JetBrains Mono', monospace; font-size: 0.72rem; font-weight: 600; color: var(--ah-text); }
.sv-type[b-m8rjnz6m5n]    { font-size: 0.55rem; color: var(--ah-text-muted); font-weight: 600; }
.sv-example[b-m8rjnz6m5n] {
    font-family: 'JetBrains Mono', monospace; font-size: 0.6rem; color: var(--ah-text-muted);
    background: var(--ah-bg-subtle); padding: 0.05rem 0.25rem; border-radius: 2px; margin-left: auto;
}
.sv-desc[b-m8rjnz6m5n] { font-size: 0.6rem; color: var(--ah-text-muted); padding-bottom: 0.35rem; border-bottom: 1px solid var(--ah-bg-subtle); }

/* ── Main panel ── */
.main-panel[b-m8rjnz6m5n] { display: flex; flex-direction: column; gap: 1.5rem; }

/* ── Scope entry rows ── */
.scope-entry-row[b-m8rjnz6m5n] { display: flex; gap: 0.5rem; align-items: center; margin-bottom: 0.5rem; }
.scope-entry-row input[b-m8rjnz6m5n] {
    flex: 1; font-size: 0.82rem; padding: 0.5rem 0.7rem;
    border: 1px solid var(--ah-border); border-radius: var(--ah-radius);
    outline: none; font-family: 'JetBrains Mono', monospace; box-sizing: border-box;
    background: var(--ah-bg); color: var(--ah-text);
    transition: border-color 0.15s, box-shadow 0.15s;
}
.scope-entry-row input:focus[b-m8rjnz6m5n] { border-color: var(--ah-focus-color); box-shadow: var(--ah-focus-ring); }
.scope-entry-row input[b-m8rjnz6m5n]::placeholder { color: var(--ah-text-placeholder); }

.btn-row-remove[b-m8rjnz6m5n] { font-size: 0.7rem; color: var(--ah-text-muted); background: none; border: none; cursor: pointer; padding: 0.2rem; transition: color 0.12s; }
.btn-row-remove:hover[b-m8rjnz6m5n] { color: var(--ah-danger); }
.btn-row-add[b-m8rjnz6m5n]    { font-size: 0.72rem; font-weight: 600; color: var(--ah-text-sub); background: none; border: none; cursor: pointer; padding: 0.3rem 0; transition: color 0.12s; }
.btn-row-add:hover[b-m8rjnz6m5n] { color: var(--ah-text); }

/* ── Variable rows ── */
.var-entry-row[b-m8rjnz6m5n] { display: flex; gap: 0.35rem; align-items: center; margin-bottom: 0.5rem; }
.var-entry-row input[b-m8rjnz6m5n] {
    font-size: 0.82rem; padding: 0.5rem 0.7rem;
    border: 1px solid var(--ah-border); border-radius: var(--ah-radius);
    outline: none; font-family: 'JetBrains Mono', monospace; box-sizing: border-box;
    background: var(--ah-bg); color: var(--ah-text);
    transition: border-color 0.15s, box-shadow 0.15s;
}
.var-entry-row input:focus[b-m8rjnz6m5n] { border-color: var(--ah-focus-color); box-shadow: var(--ah-focus-ring); }
.var-entry-row input[b-m8rjnz6m5n]::placeholder { color: var(--ah-text-placeholder); }
.var-key-input[b-m8rjnz6m5n] { flex: 0.35; }
.var-val-input[b-m8rjnz6m5n] { flex: 0.5; }

.var-mode-toggle[b-m8rjnz6m5n] {
    flex-shrink: 0; width: 32px; height: 32px; border-radius: var(--ah-radius);
    border: 1px solid var(--ah-border); font-family: 'JetBrains Mono', monospace;
    font-size: 0.72rem; font-weight: 800; cursor: pointer;
    display: flex; align-items: center; justify-content: center; transition: all 0.15s;
}
.var-mode-toggle.allow[b-m8rjnz6m5n] { background: var(--ah-bg-subtle); color: var(--ah-text-sub); border-color: var(--ah-border); }
.var-mode-toggle.allow:hover[b-m8rjnz6m5n] { background: var(--ah-bg-surface); }
.var-mode-toggle.deny[b-m8rjnz6m5n]  { background: var(--ah-danger-bg); color: var(--ah-danger); border-color: var(--ah-danger-border); }
.var-mode-toggle.deny:hover[b-m8rjnz6m5n]  { background: #fee2e2; }

/* ── Bulk input ── */
.bulk-textarea[b-m8rjnz6m5n] {
    width: 100%; font-size: 0.82rem; font-family: 'JetBrains Mono', monospace;
    padding: 0.75rem 0.85rem; border: 1px solid var(--ah-border); border-radius: var(--ah-radius);
    outline: none; color: var(--ah-text); background: var(--ah-bg);
    resize: vertical; min-height: 120px; line-height: 1.6;
    transition: border-color 0.15s, box-shadow 0.15s; box-sizing: border-box;
}
.bulk-textarea:focus[b-m8rjnz6m5n]       { border-color: var(--ah-focus-color); box-shadow: var(--ah-focus-ring); }
.bulk-textarea[b-m8rjnz6m5n]::placeholder { color: var(--ah-text-placeholder); }

.btn-parse[b-m8rjnz6m5n] {
    font-size: 0.72rem; font-weight: 700; color: var(--ah-text-sub);
    background: var(--ah-bg-subtle); border: 1px solid var(--ah-border);
    padding: 0.35rem 0.9rem; border-radius: var(--ah-radius); cursor: pointer; transition: all 0.15s;
}
.btn-parse:hover[b-m8rjnz6m5n] { border-color: var(--ah-text-muted); background: var(--ah-bg-surface); }

/* ── Preview ── */
.preview-box[b-m8rjnz6m5n] {
    background: var(--ah-bg-subtle); border: 1px solid var(--ah-border);
    border-radius: var(--ah-radius-md); padding: 1rem 1.25rem;
}
.preview-title[b-m8rjnz6m5n] { font-size: 0.65rem; font-weight: 700; color: var(--ah-text-muted); text-transform: uppercase; letter-spacing: 0.04em; margin-bottom: 0.5rem; }
.preview-scope[b-m8rjnz6m5n] {
    font-family: 'JetBrains Mono', monospace; font-size: 0.78rem; font-weight: 600;
    color: var(--ah-text); padding: 0.3rem 0; border-bottom: 1px solid var(--ah-border);
    display: flex; align-items: center; gap: 0.5rem;
}
.preview-scope:last-child[b-m8rjnz6m5n] { border-bottom: none; }
.preview-scope.deny[b-m8rjnz6m5n] { color: #991b1b; }
.preview-deny-badge[b-m8rjnz6m5n] {
    font-size: 0.5rem; font-weight: 800; color: var(--ah-danger);
    background: var(--ah-danger-bg); border: 1px solid var(--ah-danger-border);
    padding: 0.05rem 0.3rem; border-radius: 3px; flex-shrink: 0;
}
.preview-empty[b-m8rjnz6m5n] { font-size: 0.75rem; color: var(--ah-text-muted); font-style: italic; }

/* ── Notice bar override (warning color for PermissionStudio) ── */
.notice-bar[b-m8rjnz6m5n] {
    background: var(--ah-warning-bg);
    border-color: var(--ah-warning-border);
    color: #92400e;
}
.notice-bar a[b-m8rjnz6m5n] { color: #92400e; font-weight: 700; text-decoration: underline; }

/* ── Risk badges ── */
.risk-badge[b-m8rjnz6m5n] { font-size: 0.62rem; font-weight: 700; padding: 0.12rem 0.45rem; border-radius: var(--ah-radius-sm); display: inline-block; }
.risk-0[b-m8rjnz6m5n] { background: var(--ah-success-bg); color: #166534; }
.risk-1[b-m8rjnz6m5n] { background: #f0f9ff; color: #075985; }
.risk-2[b-m8rjnz6m5n] { background: #fff7ed; color: #9a3412; }
.risk-3[b-m8rjnz6m5n] { background: var(--ah-danger-bg); color: #991b1b; }
.risk-4[b-m8rjnz6m5n] { background: #f5f3ff; color: #5b21b6; }

/* ── Trigger status ── */
.trigger-status[b-m8rjnz6m5n] { font-size: 0.68rem; font-weight: 700; padding: 0.12rem 0.45rem; border-radius: var(--ah-radius-sm); display: inline-block; }
.trigger-status.pending[b-m8rjnz6m5n]   { background: #fff7ed; color: #9a3412; }
.trigger-status.approved[b-m8rjnz6m5n]  { background: #f0f9ff; color: #075985; }
.trigger-status.rejected[b-m8rjnz6m5n]  { background: var(--ah-danger-bg); color: #991b1b; }
.trigger-status.executed[b-m8rjnz6m5n]  { background: var(--ah-success-bg); color: #166534; }
.trigger-status.escalated[b-m8rjnz6m5n] { background: var(--ah-danger-bg); color: #991b1b; border: 1px solid #ef4444; }
.trigger-status.failed[b-m8rjnz6m5n]    { background: var(--ah-danger-bg); color: #991b1b; }

/* ── Approval cards ── */
.apr-card[b-m8rjnz6m5n] { border: 1px solid var(--ah-border); border-radius: 10px; padding: 1rem 1.1rem; margin-bottom: 0.65rem; }
.escalated-card[b-m8rjnz6m5n] { border: 2px solid #ef4444; background: var(--ah-danger-bg); }

.btn-approve[b-m8rjnz6m5n] {
    font-size: 0.72rem; font-weight: 700; padding: 0.35rem 0.8rem;
    border-radius: var(--ah-radius-sm); cursor: pointer;
    border: 1px solid var(--ah-success); background: var(--ah-success-bg); color: #166534;
}
.btn-approve:hover[b-m8rjnz6m5n]    { background: #dcfce7; }
.btn-approve:disabled[b-m8rjnz6m5n] { opacity: 0.5; cursor: default; }

.btn-reject[b-m8rjnz6m5n] {
    font-size: 0.72rem; font-weight: 700; padding: 0.35rem 0.8rem;
    border-radius: var(--ah-radius-sm); cursor: pointer;
    border: 1px solid var(--ah-danger-border); background: var(--ah-danger-bg); color: #991b1b;
}
.btn-reject:hover[b-m8rjnz6m5n]    { background: #fee2e2; }
.btn-reject:disabled[b-m8rjnz6m5n] { opacity: 0.5; cursor: default; }
/* /Features/Identity/Pages/RolesDetail.razor.rz.scp.css */
/* RolesDetail — page-specific only.
   Common classes are in ah-components.css */

/* ── Role card header ── */
.role-card[b-ob7tw1lqy2] {
    background:    var(--ah-bg);
    border:        1px solid var(--ah-border-soft);
    border-radius: var(--ah-radius-lg);
    padding:       1.5rem 1.75rem;
    margin:        1rem 0 1.25rem;
    box-shadow:    var(--ah-shadow-sm);
}
.role-title[b-ob7tw1lqy2] { font-size: 1.2rem; font-weight: 800; color: var(--ah-text); letter-spacing: -0.5px; }
.role-desc[b-ob7tw1lqy2]  { font-size: 0.8rem; color: var(--ah-text-muted); margin-bottom: 0.5rem; }
.role-meta[b-ob7tw1lqy2]  { font-size: 0.7rem; color: var(--ah-text-muted); font-weight: 600; }

/* ── Kebab menu ── */
.kebab-btn[b-ob7tw1lqy2] {
    display:         flex;
    align-items:     center;
    justify-content: center;
    width:           32px;
    height:          32px;
    border-radius:   var(--ah-radius-md);
    border:          1px solid transparent;
    background:      transparent;
    cursor:          pointer;
    transition:      all 0.12s;
}
.kebab-btn:hover[b-ob7tw1lqy2] { background: var(--ah-bg-surface); border-color: var(--ah-border); }

.kebab-dot[b-ob7tw1lqy2] {
    width:         3px;
    height:        3px;
    background:    var(--ah-text-muted);
    border-radius: 50%;
    margin:        1.2px 0;
}

.kebab-dropdown[b-ob7tw1lqy2] {
    position:      absolute;
    top:           calc(100% + 4px);
    right:         0;
    background:    var(--ah-bg);
    border:        1px solid var(--ah-border);
    border-radius: var(--ah-radius-md);
    box-shadow:    var(--ah-shadow-md);
    min-width:     170px;
    z-index:       100;
    overflow:      hidden;
}
.kd-item[b-ob7tw1lqy2] {
    display:     flex;
    align-items: center;
    width:       100%;
    padding:     0.55rem 0.9rem;
    font-size:   0.78rem;
    font-weight: 600;
    color:       var(--ah-text-sub);
    cursor:      pointer;
    transition:  background 0.12s;
    border:      none;
    background:  none;
    text-align:  left;
}
.kd-icon[b-ob7tw1lqy2]    { width: 18px; font-size: 0.7rem; text-align: center; flex-shrink: 0; margin-right: 0.45rem; }
.kd-item:hover[b-ob7tw1lqy2]  { background: var(--ah-bg-subtle); }
.kd-item.danger[b-ob7tw1lqy2] { color: var(--ah-danger); }
.kd-item.danger:hover[b-ob7tw1lqy2] { background: var(--ah-danger-bg); }
.kd-divider[b-ob7tw1lqy2] { height: 1px; background: var(--ah-border-soft); }

.menu-backdrop[b-ob7tw1lqy2] { position: fixed; top: 0; left: 0; right: 0; bottom: 0; z-index: 99; }

/* ── Section tabs ── */
.section-tabs[b-ob7tw1lqy2] {
    display:       flex;
    gap:           0;
    border-bottom: 1px solid var(--ah-border);
    margin-bottom: 1.25rem;
}
.section-tab[b-ob7tw1lqy2] {
    padding:       0.65rem 1.2rem;
    font-size:     0.78rem;
    font-weight:   700;
    color:         var(--ah-text-muted);
    border:        none;
    background:    none;
    cursor:        pointer;
    border-bottom: 2px solid transparent;
    transition:    all 0.15s;
}
.section-tab:hover[b-ob7tw1lqy2]  { color: var(--ah-text-sub); }
.section-tab.active[b-ob7tw1lqy2] { color: var(--ah-text); border-bottom-color: var(--ah-text); }

.tab-content-area[b-ob7tw1lqy2] {
    background:    var(--ah-bg);
    border:        1px solid var(--ah-border-soft);
    border-radius: var(--ah-radius-lg);
    padding:       1.25rem 1.5rem;
    box-shadow:    var(--ah-shadow-sm);
}

/* ── Add buttons ── */
.btn-add[b-ob7tw1lqy2] {
    font-size:     0.72rem;
    font-weight:   700;
    color:         var(--ah-accent-text);
    background:    var(--ah-accent);
    border:        1px solid var(--ah-accent);
    padding:       0.35rem 0.9rem;
    border-radius: var(--ah-radius);
    cursor:        pointer;
    transition:    opacity 0.15s;
    white-space:   nowrap;
}
.btn-add:hover[b-ob7tw1lqy2] { opacity: 0.85; }

.btn-add-outline[b-ob7tw1lqy2] {
    font-size:     0.72rem;
    font-weight:   700;
    color:         var(--ah-text-sub);
    background:    var(--ah-bg);
    border:        1px solid var(--ah-border);
    padding:       0.35rem 0.9rem;
    border-radius: var(--ah-radius);
    cursor:        pointer;
    transition:    all 0.15s;
    white-space:   nowrap;
    text-decoration: none;
}
.btn-add-outline:hover[b-ob7tw1lqy2] { background: var(--ah-bg-subtle); border-color: var(--ah-text-muted); }

/* ── Detail table ── */
.detail-table[b-ob7tw1lqy2] { width: 100%; border-collapse: separate; border-spacing: 0; }
.detail-table th[b-ob7tw1lqy2] {
    font-size:      0.65rem;
    font-weight:    700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color:          var(--ah-text-muted);
    border-bottom:  1px solid var(--ah-border-soft);
    padding:        0.6rem 1rem;
    text-align:     left;
}
.detail-table td[b-ob7tw1lqy2] {
    padding:        0.7rem 1rem;
    border-bottom:  1px solid var(--ah-bg-subtle);
    font-size:      0.82rem;
    color:          var(--ah-text-sub);
    vertical-align: middle;
}
.detail-table tbody tr:hover[b-ob7tw1lqy2]          { background: var(--ah-bg-subtle); }
.detail-table tbody tr:last-child td[b-ob7tw1lqy2]  { border-bottom: none; }

/* ── Badges ── */
.perm-text[b-ob7tw1lqy2] {
    font-family:   'JetBrains Mono', monospace;
    font-size:     0.75rem;
    font-weight:   600;
    color:         var(--ah-text);
    background:    var(--ah-bg-subtle);
    padding:       0.15rem 0.5rem;
    border-radius: var(--ah-radius-sm);
    border:        1px solid var(--ah-border-soft);
}

.source-badge[b-ob7tw1lqy2] {
    font-size:      0.6rem;
    font-weight:    700;
    padding:        0.12rem 0.4rem;
    border-radius:  var(--ah-radius-sm);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}
.source-badge.internal[b-ob7tw1lqy2] { background: var(--ah-success-bg);  color: var(--ah-success); border: 1px solid var(--ah-success-border); }
.source-badge.external[b-ob7tw1lqy2] { background: var(--ah-info-bg);     color: #3b82f6;            border: 1px solid var(--ah-info-border); }

.var-chip[b-ob7tw1lqy2] {
    font-family:   'JetBrains Mono', monospace;
    font-size:     0.65rem;
    font-weight:   600;
    color:         var(--ah-text-sub);
    background:    var(--ah-bg-surface);
    padding:       0.1rem 0.4rem;
    border-radius: var(--ah-radius-sm);
    border:        1px solid var(--ah-border);
}

.sync-pill[b-ob7tw1lqy2] {
    font-size:      0.6rem;
    font-weight:    700;
    padding:        0.12rem 0.45rem;
    border-radius:  var(--ah-radius-sm);
    text-transform: uppercase;
}
.sync-pill.synced[b-ob7tw1lqy2]  { background: var(--ah-success-bg); color: var(--ah-success); border: 1px solid var(--ah-success-border); }
.sync-pill.pending[b-ob7tw1lqy2] { background: var(--ah-warning-bg); color: var(--ah-warning); border: 1px solid var(--ah-warning-border); }
.sync-pill.failed[b-ob7tw1lqy2]  { background: var(--ah-danger-bg);  color: var(--ah-danger);  border: 1px solid var(--ah-danger-border); }

.date-mono[b-ob7tw1lqy2] { font-family: 'JetBrains Mono', monospace; font-size: 0.75rem; color: var(--ah-text-muted); }

.remove-btn[b-ob7tw1lqy2] {
    display:         flex;
    align-items:     center;
    justify-content: center;
    width:           26px;
    height:          26px;
    border:          1px solid transparent;
    border-radius:   var(--ah-radius);
    background:      none;
    color:           var(--ah-text-muted);
    font-size:       0.65rem;
    cursor:          pointer;
    transition:      all 0.12s;
}
.remove-btn:hover[b-ob7tw1lqy2] { background: var(--ah-danger-bg); color: var(--ah-danger); border-color: var(--ah-danger-border); }

/* ── Modal context ── */
.modal-context[b-ob7tw1lqy2] {
    background:    var(--ah-bg-subtle);
    border:        1px solid var(--ah-border-soft);
    border-radius: var(--ah-radius);
    padding:       0.6rem 0.85rem;
    margin-bottom: 1.25rem;
    display:       flex;
    align-items:   center;
    gap:           0.5rem;
}
.modal-context-label[b-ob7tw1lqy2] { font-size: 0.7rem; font-weight: 700; color: var(--ah-text-muted); text-transform: uppercase; }
.modal-context-value[b-ob7tw1lqy2] { font-size: 0.82rem; font-weight: 700; color: var(--ah-text); }

.scope-preview[b-ob7tw1lqy2] {
    background:    var(--ah-bg-subtle);
    border:        1px solid var(--ah-border-soft);
    border-radius: var(--ah-radius);
    padding:       0.6rem 0.85rem;
    margin-bottom: 1rem;
    font-family:   'JetBrains Mono', monospace;
    font-size:     0.8rem;
    font-weight:   600;
    color:         var(--ah-text);
}
.scope-label[b-ob7tw1lqy2] {
    display:        block;
    font-family:    inherit;
    font-size:      0.6rem;
    font-weight:    700;
    color:          var(--ah-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin-bottom:  0.2rem;
}

.advanced-link-bar[b-ob7tw1lqy2] {
    display:       flex;
    align-items:   flex-start;
    gap:           0.6rem;
    background:    var(--ah-info-bg);
    border:        1px solid var(--ah-info-border);
    border-radius: var(--ah-radius-md);
    padding:       0.75rem 1rem;
    margin-bottom: 0.5rem;
}
.al-icon[b-ob7tw1lqy2] { font-size: 0.85rem; color: #3b82f6; margin-top: 0.1rem; }
.advanced-link-bar a[b-ob7tw1lqy2] { font-size: 0.78rem; font-weight: 700; color: var(--ah-info); text-decoration: none; }
.advanced-link-bar a:hover[b-ob7tw1lqy2] { text-decoration: underline; }
.al-desc[b-ob7tw1lqy2] { font-size: 0.68rem; color: var(--ah-text-muted); margin-top: 0.15rem; }

.no-members-hint[b-ob7tw1lqy2] {
    font-size:     0.78rem;
    color:         var(--ah-text-muted);
    background:    var(--ah-bg-subtle);
    border:        1px solid var(--ah-border-soft);
    border-radius: var(--ah-radius);
    padding:       0.7rem 0.85rem;
}

.var-info-box[b-ob7tw1lqy2] {
    background:    var(--ah-warning-bg);
    border:        1px solid var(--ah-warning-border);
    border-radius: var(--ah-radius-md);
    padding:       0.8rem 1rem;
    margin-bottom: 0.5rem;
}
.var-info-title[b-ob7tw1lqy2] { font-size: 0.72rem; font-weight: 700; color: #92400e; margin-bottom: 0.3rem; }
.var-info-desc[b-ob7tw1lqy2]  { font-size: 0.72rem; color: #78716c; line-height: 1.5; }
.var-info-desc a[b-ob7tw1lqy2] { color: var(--ah-info); font-weight: 600; text-decoration: none; }
.var-info-desc a:hover[b-ob7tw1lqy2] { text-decoration: underline; }
/* /Features/Identity/Pages/RolesPermissions.razor.rz.scp.css */
/* RolesPermissions — page-specific only.
   Common classes are in ah-components.css */

/* ── Page header ── */
.page-title[b-6v94e014fu] { font-weight: 800; font-size: 1.3rem; color: var(--ah-text); letter-spacing: -0.5px; }
.page-desc[b-6v94e014fu]  { font-size: 0.8rem; color: var(--ah-text-muted); margin-top: 0.2rem; }

/* ── Stats ── */
.stats-row[b-6v94e014fu] { display: flex; gap: 1rem; margin-bottom: 1.5rem; }
.stat-card[b-6v94e014fu] {
    flex: 1; background: var(--ah-bg); border: 1px solid var(--ah-border-soft);
    border-radius: 10px; padding: 1.1rem 1.25rem; box-shadow: var(--ah-shadow-sm);
}
.stat-label[b-6v94e014fu] { font-size: 0.6rem; font-weight: 700; color: var(--ah-text-muted); text-transform: uppercase; letter-spacing: 0.04em; }
.stat-value[b-6v94e014fu] { font-size: 1.4rem; font-weight: 800; color: var(--ah-text); letter-spacing: -0.5px; margin-top: 0.15rem; }
.stat-sub[b-6v94e014fu]   { font-size: 0.65rem; color: var(--ah-text-muted); margin-top: 0.1rem; }

/* ── Table container ── */
.table-container[b-6v94e014fu] {
    background: var(--ah-bg); border: 1px solid var(--ah-border-soft);
    border-radius: var(--ah-radius-lg); box-shadow: var(--ah-shadow-sm);
    overflow: hidden; margin-bottom: 3rem;
}
.table-header[b-6v94e014fu] {
    display: flex; align-items: center; justify-content: space-between;
    padding: 1rem 1.5rem; border-bottom: 1px solid var(--ah-border-soft);
}
.table-title[b-6v94e014fu] { font-size: 0.85rem; font-weight: 700; color: var(--ah-text); }

.filter-select[b-6v94e014fu], .search-input[b-6v94e014fu] {
    font-size: 0.82rem; padding: 0.5rem 0.85rem;
    border: 1px solid var(--ah-border); border-radius: var(--ah-radius);
    outline: none; color: var(--ah-text-sub); background: var(--ah-bg);
    transition: border-color 0.15s, box-shadow 0.15s;
}
.filter-select:focus[b-6v94e014fu], .search-input:focus[b-6v94e014fu] {
    border-color: var(--ah-focus-color); box-shadow: var(--ah-focus-ring);
}
.filter-select[b-6v94e014fu]       { margin-right: 0.5rem; }
.search-input[b-6v94e014fu]        { width: 220px; }
.search-input[b-6v94e014fu]::placeholder { color: var(--ah-text-placeholder); }

/* ── Role table ── */
.role-table[b-6v94e014fu] { width: 100%; border-collapse: separate; border-spacing: 0; }
.role-table th[b-6v94e014fu] {
    font-size: 0.7rem; font-weight: 700; text-transform: uppercase;
    letter-spacing: 0.03em; color: var(--ah-text-muted); background: var(--ah-bg);
    border-bottom: 1px solid var(--ah-border-soft);
    padding: 0.7rem 1.25rem; text-align: left; white-space: nowrap;
}
.role-table td[b-6v94e014fu] {
    padding: 0.8rem 1.25rem; border-bottom: 1px solid var(--ah-bg-subtle);
    font-size: 0.85rem; color: var(--ah-text-sub); vertical-align: middle;
}
.role-table tbody tr[b-6v94e014fu]          { cursor: pointer; transition: background 0.1s; }
.role-table tbody tr:hover[b-6v94e014fu]    { background: var(--ah-bg-subtle); }
.role-table tbody tr:last-child td[b-6v94e014fu] { border-bottom: none; }

.role-name[b-6v94e014fu]   { font-weight: 700; color: var(--ah-text); font-size: 0.85rem; }
.role-desc[b-6v94e014fu]   { font-size: 0.7rem; color: var(--ah-text-muted); margin-top: 0.1rem; }
.count-badge[b-6v94e014fu] { font-family: 'JetBrains Mono', monospace; font-size: 0.75rem; font-weight: 700; color: var(--ah-text-sub); }

.status-dot[b-6v94e014fu]          { width: 6px; height: 6px; border-radius: 50%; display: inline-block; margin-right: 0.4rem; }
.status-dot.active[b-6v94e014fu]   { background: var(--ah-success); }
.status-dot.archived[b-6v94e014fu] { background: var(--ah-text-muted); }
.status-text[b-6v94e014fu]         { font-size: 0.8rem; font-weight: 600; color: var(--ah-text-sub); }
.date-mono[b-6v94e014fu]           { font-family: 'JetBrains Mono', monospace; font-size: 0.75rem; color: var(--ah-text-muted); }

.system-lock[b-6v94e014fu] {
    font-size: 0.6rem; font-weight: 700; color: var(--ah-text-muted);
    display: inline-flex; align-items: center; gap: 0.2rem;
}
.preset-badge[b-6v94e014fu] {
    font-size: 0.55rem; font-weight: 700; color: var(--ah-text-sub);
    background: var(--ah-bg-surface); border: 1px solid var(--ah-border);
    padding: 0.1rem 0.35rem; border-radius: 3px;
    letter-spacing: 0.02em;
}

/* ── Buttons ── */
.btn-create[b-6v94e014fu] {
    font-size: 0.75rem; font-weight: 700; color: var(--ah-accent-text);
    background: var(--ah-accent); border: 1px solid var(--ah-accent);
    padding: 0.4rem 1.1rem; border-radius: var(--ah-radius);
    cursor: pointer; transition: opacity 0.15s; white-space: nowrap;
}
.btn-create:hover[b-6v94e014fu] { opacity: 0.85; }

.btn-advanced[b-6v94e014fu] {
    font-size: 0.75rem; font-weight: 700; color: var(--ah-text-sub);
    background: var(--ah-bg); border: 1px solid var(--ah-border);
    padding: 0.4rem 1.1rem; border-radius: var(--ah-radius);
    cursor: pointer; transition: background 0.15s; white-space: nowrap;
    text-decoration: none; display: inline-flex; align-items: center;
}
.btn-advanced:hover[b-6v94e014fu] { background: var(--ah-bg-subtle); }

/* ── Row kebab menu ── */
.row-kebab[b-6v94e014fu] { position: relative; }
.row-kebab-btn[b-6v94e014fu] {
    display: flex; align-items: center; justify-content: center;
    width: 28px; height: 28px; border-radius: var(--ah-radius);
    border: 1px solid transparent; background: transparent;
    cursor: pointer; transition: all 0.12s;
}
.row-kebab-btn:hover[b-6v94e014fu] { background: var(--ah-bg-surface); border-color: var(--ah-border); }

.row-kebab-dot[b-6v94e014fu] { width: 2.5px; height: 2.5px; background: var(--ah-text-muted); border-radius: 50%; margin: 1.2px 0; }

.row-kebab-dropdown[b-6v94e014fu] {
    position: absolute; bottom: calc(100% + 4px); right: 0;
    background: var(--ah-bg); border: 1px solid var(--ah-border);
    border-radius: var(--ah-radius-md); box-shadow: var(--ah-shadow-md);
    min-width: 160px; z-index: 100; overflow: hidden;
}
.rk-item[b-6v94e014fu] {
    display: flex; align-items: center; width: 100%;
    padding: 0.55rem 0.9rem; font-size: 0.78rem; font-weight: 600;
    color: var(--ah-text-sub); cursor: pointer; transition: background 0.12s;
    border: none; background: none; text-align: left;
}
.rk-item .rk-icon[b-6v94e014fu] { width: 18px; font-size: 0.7rem; text-align: center; flex-shrink: 0; margin-right: 0.45rem; }
.rk-item:hover[b-6v94e014fu]        { background: var(--ah-bg-subtle); }
.rk-item.danger[b-6v94e014fu]       { color: var(--ah-danger); }
.rk-item.danger:hover[b-6v94e014fu] { background: var(--ah-danger-bg); }
.rk-divider[b-6v94e014fu] { height: 1px; background: var(--ah-border-soft); }

.menu-backdrop[b-6v94e014fu] { position: fixed; top: 0; left: 0; right: 0; bottom: 0; z-index: 99; }

/* ── Modal (scroll variant) ── */
.modal-overlay[b-6v94e014fu] {
    position: fixed; top: 0; left: 0; right: 0; bottom: 0;
    background: var(--ah-bg-overlay); backdrop-filter: blur(4px);
    z-index: 1000; display: flex; align-items: flex-start;
    justify-content: center; padding: 2rem 0; overflow-y: auto;
}
.modal-panel[b-6v94e014fu] {
    background: var(--ah-bg); border-radius: var(--ah-radius-xl);
    box-shadow: var(--ah-shadow-lg); padding: 2rem;
    max-width: 480px; width: 92%;
}

/* ── Pagination ── */
.pagination-bar[b-6v94e014fu] {
    display: flex; align-items: center; justify-content: space-between;
    padding: 0.75rem 1.5rem; border-top: 1px solid var(--ah-border-soft);
}
.pagination-info[b-6v94e014fu] { font-size: 0.72rem; color: var(--ah-text-muted); font-weight: 600; }

.pagination-btns[b-6v94e014fu] { display: flex; gap: 0.25rem; }
.pg-btn[b-6v94e014fu] {
    padding: 0.3rem 0.6rem; font-size: 0.72rem; font-weight: 600;
    border: 1px solid var(--ah-border); background: var(--ah-bg);
    color: var(--ah-text-sub); border-radius: var(--ah-radius-sm);
    cursor: pointer; transition: all 0.12s;
}
.pg-btn:hover[b-6v94e014fu]    { background: var(--ah-bg-subtle); }
.pg-btn:disabled[b-6v94e014fu] { color: var(--ah-text-muted); cursor: default; }
.pg-btn.active[b-6v94e014fu]   { font-weight: 700; border-color: var(--ah-accent); background: var(--ah-accent); color: var(--ah-accent-text); }
/* /Features/Notification/Pages/NotificationPage.razor.rz.scp.css */
/* NotificationPage.razor.css — CSS variable 기반 */
.summary-card[b-nqboh4zjux] {
    background:    var(--ah-bg);
    border:        1px solid var(--ah-border);
    border-radius: 8px;
    padding:       1.25rem 1.5rem;
    box-shadow:    var(--ah-shadow-sm);
}
.summary-value[b-nqboh4zjux] { font-size: 1.75rem; font-weight: 800; color: var(--ah-text); letter-spacing: -1px; line-height: 1; }
.summary-label[b-nqboh4zjux] { font-size: 0.7rem; font-weight: 700; color: var(--ah-text-muted); text-transform: uppercase; letter-spacing: 0.03em; margin-top: 0.35rem; }

.filter-tab[b-nqboh4zjux] {
    background:    none;
    border:        1px solid var(--ah-border);
    border-radius: 6px;
    padding:       0.35rem 0.85rem;
    font-size:     0.8rem;
    font-weight:   500;
    color:         var(--ah-text-muted);
    cursor:        pointer;
    transition:    all 0.15s;
}
.filter-tab:hover[b-nqboh4zjux]  { background: var(--ah-bg-subtle); color: var(--ah-text-sub); }
.filter-tab.active[b-nqboh4zjux] { background: var(--ah-text); color: var(--ah-bg); border-color: var(--ah-text); }

.mark-all-btn[b-nqboh4zjux] {
    background:    var(--ah-bg);
    color:         var(--ah-text-sub);
    border:        1px solid var(--ah-border);
    font-weight:   600;
    font-size:     0.8rem;
    padding:       0.5rem 1.25rem;
    border-radius: 8px;
    cursor:        pointer;
    transition:    all 0.15s;
}
.mark-all-btn:hover[b-nqboh4zjux] { background: var(--ah-bg-subtle); border-color: var(--ah-text-muted); }

.notif-table[b-nqboh4zjux] { width: 100%; border-collapse: separate; border-spacing: 0; }

.notif-table th[b-nqboh4zjux] {
    font-size:        0.7rem;
    font-weight:      700;
    text-transform:   uppercase;
    letter-spacing:   0.05em;
    color:            var(--ah-text-muted);
    background-color: var(--ah-bg);
    border-bottom:    1px solid var(--ah-border);
    padding:          0.85rem 1.25rem;
    text-align:       left;
    white-space:      nowrap;
}

.notif-table td[b-nqboh4zjux] {
    padding:        0.85rem 1.25rem;
    border-bottom:  1px solid var(--ah-bg-subtle);
    font-size:      0.85rem;
    color:          var(--ah-text-sub);
    vertical-align: middle;
}

.notif-table tbody tr:hover[b-nqboh4zjux]          { background-color: var(--ah-bg-subtle); }
.notif-table tbody tr:last-child td[b-nqboh4zjux]  { border-bottom: none; }
.notif-table tbody tr.row-unread[b-nqboh4zjux]     { background-color: var(--ah-bg-subtle); }
.notif-table tbody tr.row-unread:hover[b-nqboh4zjux] { background-color: var(--ah-bg-surface); }

.notif-title-text[b-nqboh4zjux] {
    font-size:   0.85rem;
    color:       var(--ah-text);
    line-height: 1.3;
}
.notif-message-text[b-nqboh4zjux] {
    font-size:              0.75rem;
    color:                  var(--ah-text-muted);
    margin-top:             2px;
    line-height:            1.3;
    display:                -webkit-box;
    -webkit-line-clamp:     1;
    line-clamp:             1;
    -webkit-box-orient:     vertical;
    overflow:               hidden;
}

.category-badge[b-nqboh4zjux] {
    font-family:   'JetBrains Mono', monospace;
    font-size:     0.7rem;
    color:         var(--ah-text-muted);
    background:    var(--ah-bg-subtle);
    padding:       0.15rem 0.4rem;
    border-radius: 4px;
    border:        1px solid var(--ah-border);
}
.type-text[b-nqboh4zjux] { font-size: 0.75rem; color: var(--ah-text-muted); }

.status-badge[b-nqboh4zjux] { font-size: 0.65rem; font-weight: 600; padding: 0.2rem 0.5rem; border-radius: 4px; border: 1px solid; }
.status-badge.read[b-nqboh4zjux]   { background: var(--ah-bg-surface); color: var(--ah-text-muted); border-color: var(--ah-border); }
.status-badge.unread[b-nqboh4zjux] { background: var(--ah-info-bg);    color: var(--ah-info);       border-color: var(--ah-info-border); }

.search-input[b-nqboh4zjux] {
    border-radius:    8px;
    font-size:        0.85rem;
    height:           36px;
    border:           1px solid var(--ah-border);
    padding-left:     2.25rem;
    background-color: var(--ah-bg);
    color:            var(--ah-text);
}
.search-input:focus[b-nqboh4zjux] { border-color: var(--ah-link); box-shadow: 0 0 0 3px rgba(79,70,229,0.08); outline: none; }

.empty-state[b-nqboh4zjux] { text-align: center; padding: 4rem 2rem; color: var(--ah-text-muted); }

.table-container[b-nqboh4zjux] {
    background:    var(--ah-bg);
    border:        1px solid var(--ah-border);
    border-radius: 12px;
    overflow:      hidden;
    box-shadow:    var(--ah-shadow-sm);
}
/* /Features/Org/Pages/CreateOrg.razor.rz.scp.css */
/* =================================================================
   CreateOrg.razor.css
   (Scoped CSS for Create Organization Page)
   ================================================================= */

/* -----------------------------------------------------------------
   1. Entity Type 옵션 카드 버튼 (Individual, Corp, SPC)
   ----------------------------------------------------------------- */
   .btn-option-card[b-z8j80h7dbk] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 86px;
    background-color: #ffffff;
    border: 1px solid #d1d5db; /* Gray-300 */
    border-radius: 8px;
    color: #4b5563; /* Gray-600 */
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
    padding: 0.5rem;
}

/* Hover Effect */
.btn-option-card:hover:not(:disabled)[b-z8j80h7dbk] {
    background-color: #f9fafb; /* Gray-50 */
    border-color: #9ca3af;     /* Gray-400 */
    color: #111827;            /* Gray-900 */
}

/* Selected State (Indigo Brand Color) */
.btn-option-card.selected[b-z8j80h7dbk] {
    background-color: #eef2ff; /* Indigo-50 */
    border-color: var(--ah-link);     /* Indigo-500 */
    color: var(--ah-link);            /* Indigo-600 */
    box-shadow: 0 0 0 1px #6366f1;
    z-index: 1;
}

/* Disabled State */
.btn-option-card:disabled[b-z8j80h7dbk] {
    background-color: #f3f4f6; /* Gray-100 */
    color: #9ca3af;            /* Gray-400 */
    border-color: #e5e7eb;     /* Gray-200 */
    cursor: not-allowed;
    box-shadow: none;
}

/* Icon Style */
.btn-option-card i[b-z8j80h7dbk] {
    font-size: 1.25rem;
    margin-bottom: 4px;
}

/* -----------------------------------------------------------------
   2. 입력창 및 버튼 공통 스타일
   ----------------------------------------------------------------- */
.auth-input[b-z8j80h7dbk], 
.btn-verify[b-z8j80h7dbk] {
    height: 48px;
    font-size: 0.95rem;
    border-radius: 8px;
}

/* 드롭다운 마우스 커서 손가락 모양 */
select.auth-input[b-z8j80h7dbk] {
    cursor: pointer;
}

/* 라벨 색상 */
.form-label[b-z8j80h7dbk] {
    color: #475569; /* Slate-600 */
    font-size: 0.85rem;
}

/* 메인 버튼(Create & Continue) 호버 */
.btn-primary:hover:not(:disabled)[b-z8j80h7dbk] {
    background-color: var(--ah-link) !important;
}

/* -----------------------------------------------------------------
   3. 기타 링크 및 박스 스타일
   ----------------------------------------------------------------- */
.footer-link[b-z8j80h7dbk] {
    font-size: 0.85rem;
    color: #64748b;
    text-decoration: none;
    transition: color 0.2s;
}

.footer-link:hover[b-z8j80h7dbk] {
    color: #0f172a;
    text-decoration: underline;
}

/* 폼 내부 BOD 설정 박스 */
.bod-box[b-z8j80h7dbk] {
    background-color: #f8fafc;
    border-color: #e2e8f0;
}

/* -----------------------------------------------------------------
   4. BOD Modal Styles (Light Theme - 팝업창)
   ----------------------------------------------------------------- */

/* 오버레이 (배경) */
.bod-modal-overlay[b-z8j80h7dbk] {
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    background-color: rgba(0, 0, 0, 0.4); /* 반투명 검정 */
    backdrop-filter: blur(4px); /* 블러 효과 */
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* 모달 컨테이너 (흰색 박스) */
.bod-modal-container[b-z8j80h7dbk] {
    background-color: #ffffff;
    width: 90%;
    max-width: 480px;
    border-radius: 12px;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
    overflow: hidden;
    border: 1px solid #e2e8f0;
    display: flex;
    flex-direction: column;
}

/* 모달 헤더 */
.bod-modal-header[b-z8j80h7dbk] {
    padding: 1.25rem 1.5rem;
    border-bottom: 1px solid #f1f5f9;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* 모달 닫기 버튼 커스텀 */
.btn-close-custom[b-z8j80h7dbk] {
    background: transparent;
    border: none;
    color: #94a3b8;
    cursor: pointer;
    padding: 4px;
    border-radius: 4px;
    transition: all 0.2s;
    display: flex;
    align-items: center;
    justify-content: center;
}
.btn-close-custom:hover[b-z8j80h7dbk] {
    background-color: #f1f5f9;
    color: #0f172a;
}

/* 모달 본문 */
.bod-modal-body[b-z8j80h7dbk] {
    padding: 1.5rem;
}

/* 멤버 추가 플레이스홀더 (점선 박스) */
.member-placeholder[b-z8j80h7dbk] {
    background-color: #f8fafc;
    border: 2px dashed #cbd5e1;
    border-radius: 8px;
    transition: all 0.2s;
    cursor: pointer;
}
.member-placeholder:hover[b-z8j80h7dbk] {
    border-color: #94a3b8;
    background-color: #f1f5f9;
}

.xs-text[b-z8j80h7dbk] {
    font-size: 0.75rem;
}

/* 모달 푸터 */
.bod-modal-footer[b-z8j80h7dbk] {
    padding: 1rem 1.5rem;
    background-color: #f8fafc;
    border-top: 1px solid #f1f5f9;
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
}

.bod-modal-footer .btn[b-z8j80h7dbk] {
    height: 40px; /* 모달 버튼은 조금 작게 */
    padding: 0 1.25rem;
    border-radius: 6px;
}

/* -----------------------------------------------------------------
   5. 이메일 초대 리스트 스타일 (추가됨)
   ----------------------------------------------------------------- */

/* 이메일 담는 박스 */
.email-list-container[b-z8j80h7dbk] {
    background-color: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    transition: all 0.2s;
}

/* 이메일 뱃지 (Badge) */
.badge[b-z8j80h7dbk] {
    font-size: 0.8rem;
    font-weight: 500;
    color: #475569;      /* Slate-600 */
    background-color: #ffffff;
    border: 1px solid #cbd5e1;
    border-radius: 6px;
    padding: 0.35rem 0.6rem;
    box-shadow: 0 1px 2px rgba(0,0,0,0.05);
}

/* 뱃지 내부 아이콘 */
.badge i.bi-envelope[b-z8j80h7dbk] {
    color: #94a3b8;
}

/* 뱃지 삭제 버튼(X) */
.badge i.bi-x[b-z8j80h7dbk] {
    color: #cbd5e1;
    transition: color 0.2s;
    font-size: 1.1em;
}

.badge i.bi-x:hover[b-z8j80h7dbk] {
    color: #ef4444; /* Red-500 */
}

/* -----------------------------------------------------------------
   6. 애니메이션 (Animate.css 오버라이드 또는 보정)
   ----------------------------------------------------------------- */
.animate__faster[b-z8j80h7dbk] {
    --animate-duration: 0.3s;
}
/* /Features/Org/Pages/Members.razor.rz.scp.css */
/* Members.razor.css — CSS variable 기반 */
.summary-card[b-5olu85pshl] {
    background:    var(--ah-bg);
    border:        1px solid var(--ah-border);
    border-radius: 8px;
    padding:       1.25rem 1.5rem;
    box-shadow:    var(--ah-shadow-sm);
}

.summary-value[b-5olu85pshl] { font-size: 1.75rem; font-weight: 800; color: var(--ah-text); letter-spacing: -1px; line-height: 1; }
.summary-label[b-5olu85pshl] { font-size: 0.7rem; font-weight: 700; color: var(--ah-text-muted); text-transform: uppercase; letter-spacing: 0.03em; margin-top: 0.35rem; }

.slug-mono[b-5olu85pshl] { font-family: 'JetBrains Mono', monospace; font-size: 0.7rem; color: var(--ah-text-muted); }

.tier-badge[b-5olu85pshl] {
    font-size:     0.7rem;
    font-weight:   600;
    padding:       0.25rem 0.6rem;
    border-radius: 4px;
    background:    var(--ah-bg-surface);
    color:         var(--ah-text-sub);
    border:        1px solid var(--ah-border);
}

.section-title[b-5olu85pshl] { font-size: 0.7rem; font-weight: 800; color: var(--ah-text-sub); text-transform: uppercase; letter-spacing: 0.03em; }

.table-container[b-5olu85pshl] {
    background:    var(--ah-bg);
    border:        1px solid var(--ah-border);
    border-radius: 12px;
    box-shadow:    var(--ah-shadow-sm);
    overflow:      hidden;
}

.tab-header-bar[b-5olu85pshl] {
    display:         flex;
    justify-content: space-between;
    align-items:     center;
    padding:         0 1.25rem;
    border-bottom:   1px solid var(--ah-border);
}

.member-tab[b-5olu85pshl] { padding: 0.75rem 1.25rem; font-size: 0.8rem; font-weight: 600; color: var(--ah-text-muted); cursor: pointer; border-bottom: 2px solid transparent; transition: color 0.15s, border-color 0.15s; }
.member-tab:hover[b-5olu85pshl]  { color: var(--ah-text-sub); }
.member-tab.active[b-5olu85pshl] { color: var(--ah-text); font-weight: 700; border-bottom-color: var(--ah-text); }

.member-table[b-5olu85pshl] { width: 100%; border-collapse: separate; border-spacing: 0; }

.member-table th[b-5olu85pshl] {
    font-size:        0.7rem;
    font-weight:      700;
    text-transform:   uppercase;
    letter-spacing:   0.03em;
    color:            var(--ah-text-muted);
    background-color: var(--ah-bg);
    border-bottom:    1px solid var(--ah-border);
    padding:          0.75rem 1.25rem;
    text-align:       left;
    white-space:      nowrap;
}

.member-table td[b-5olu85pshl] {
    padding:        1rem 1.25rem;
    border-bottom:  1px solid var(--ah-bg-subtle);
    font-size:      0.85rem;
    color:          var(--ah-text-sub);
    vertical-align: middle;
}

.member-table tbody tr[b-5olu85pshl]           { cursor: pointer; transition: background 0.1s; }
.member-table tbody tr:hover[b-5olu85pshl]     { background-color: var(--ah-bg-subtle); }
.member-table tbody tr:last-child td[b-5olu85pshl] { border-bottom: none; }

.member-avatar[b-5olu85pshl] {
    width:           36px;
    height:          36px;
    border-radius:   50%;
    background:      var(--ah-bg-surface);
    color:           var(--ah-text-sub);
    display:         flex;
    align-items:     center;
    justify-content: center;
    font-weight:     700;
    font-size:       0.8rem;
    flex-shrink:     0;
}

.member-name[b-5olu85pshl] { font-weight: 700; color: var(--ah-text); font-size: 0.85rem; }
.member-sub[b-5olu85pshl]  { font-size: 0.65rem; color: var(--ah-text-muted); }
.member-mono[b-5olu85pshl] { font-family: 'JetBrains Mono', monospace; font-size: 0.65rem; color: var(--ah-text-muted); }

.role-badge[b-5olu85pshl] {
    font-size:     0.65rem;
    font-weight:   600;
    padding:       0.2rem 0.5rem;
    border-radius: 4px;
    background:    var(--ah-bg-surface);
    color:         var(--ah-text-sub);
    border:        1px solid var(--ah-border);
}
.role-badge.owner[b-5olu85pshl] { background: var(--ah-text); color: var(--ah-bg); border-color: var(--ah-text); }

.kyc-badge[b-5olu85pshl] { font-size: 0.65rem; font-weight: 600; padding: 0.2rem 0.5rem; border-radius: 4px; border: 1px solid var(--ah-border); }
.kyc-badge.verified[b-5olu85pshl]  { background: var(--ah-success-bg); color: #166534; border-color: var(--ah-success-border); }
.kyc-badge.pending[b-5olu85pshl]   { background: var(--ah-warning-bg); color: #92400e; border-color: var(--ah-warning-border); }
.kyc-badge.rejected[b-5olu85pshl]  { background: var(--ah-danger-bg);  color: #991b1b; border-color: var(--ah-danger-border); }

.last-active-text[b-5olu85pshl] { font-family: 'JetBrains Mono', monospace; font-size: 0.75rem; color: var(--ah-text-muted); }
.supervisor-text[b-5olu85pshl]  { font-size: 0.8rem; color: var(--ah-text); font-weight: 600; }
.supervisor-none[b-5olu85pshl]  { font-size: 0.75rem; color: var(--ah-text-placeholder); }

.invite-btn[b-5olu85pshl] {
    background:    var(--ah-text);
    color:         var(--ah-bg);
    border:        none;
    font-weight:   600;
    font-size:     0.8rem;
    padding:       0.6rem 1.5rem;
    border-radius: 6px;
    cursor:        pointer;
    transition:    opacity 0.15s;
}
.invite-btn:hover[b-5olu85pshl] { opacity: 0.85; }

.page-count[b-5olu85pshl] { font-size: 0.7rem; color: var(--ah-text-muted); padding: 0.75rem 1.25rem; text-align: right; border-top: 1px solid var(--ah-bg-subtle); }
.page-count strong[b-5olu85pshl] { color: var(--ah-text-sub); }

.filter-select[b-5olu85pshl] { font-size: 0.75rem; font-weight: 600; color: var(--ah-text-muted); border: none; background: transparent; cursor: pointer; appearance: none; padding-right: 1rem; }
.filter-select:focus[b-5olu85pshl] { outline: none; }

.modal-backdrop[b-5olu85pshl] {
    position:        fixed;
    inset:           0;
    background:      rgba(0,0,0,0.45);
    z-index:         1000;
    display:         flex;
    align-items:     center;
    justify-content: center;
}

.modal-panel[b-5olu85pshl] {
    background:    var(--ah-bg);
    border-radius: 12px;
    box-shadow:    var(--ah-shadow-lg);
    width:         440px;
    max-width:     90vw;
    padding:       2rem;
}

.modal-title[b-5olu85pshl]  { font-weight: 800; font-size: 1.1rem; color: var(--ah-text); letter-spacing: -0.3px; margin-bottom: 1.5rem; }
.modal-label[b-5olu85pshl]  { font-size: 0.7rem; font-weight: 700; color: var(--ah-text-sub); text-transform: uppercase; letter-spacing: 0.03em; margin-bottom: 0.4rem; }

.modal-input[b-5olu85pshl] {
    width:         100%;
    height:        40px;
    border:        1px solid var(--ah-border);
    border-radius: 6px;
    padding:       0 0.75rem;
    font-size:     0.85rem;
    color:         var(--ah-text);
    background:    var(--ah-bg);
    margin-bottom: 1.25rem;
    box-sizing:    border-box;
}
.modal-input:focus[b-5olu85pshl] { outline: none; border-color: var(--ah-text-muted); box-shadow: 0 0 0 2px rgba(148,163,184,0.15); }

.modal-select[b-5olu85pshl] {
    width:         100%;
    height:        40px;
    border:        1px solid var(--ah-border);
    border-radius: 6px;
    padding:       0 0.75rem;
    font-size:     0.85rem;
    color:         var(--ah-text);
    background:    var(--ah-bg);
    margin-bottom: 1.25rem;
    box-sizing:    border-box;
}
.modal-select:focus[b-5olu85pshl] { outline: none; border-color: var(--ah-text-muted); }

.modal-actions[b-5olu85pshl] { display: flex; justify-content: flex-end; gap: 0.5rem; margin-top: 0.5rem; }

.modal-cancel[b-5olu85pshl] {
    background:    var(--ah-bg);
    border:        1px solid var(--ah-border);
    color:         var(--ah-text-sub);
    font-weight:   600;
    font-size:     0.8rem;
    padding:       0.45rem 1rem;
    border-radius: 6px;
    cursor:        pointer;
}
.modal-cancel:hover[b-5olu85pshl] { background: var(--ah-bg-subtle); }

.status-pending-badge[b-5olu85pshl] {
    font-size:     0.65rem;
    font-weight:   600;
    padding:       0.2rem 0.5rem;
    border-radius: 4px;
    background:    var(--ah-warning-bg);
    color:         #92400e;
    border:        1px solid var(--ah-warning-border);
}

.resend-btn[b-5olu85pshl] {
    font-size:     0.72rem;
    font-weight:   600;
    color:         var(--ah-text-sub);
    background:    var(--ah-bg);
    border:        1px solid var(--ah-border);
    border-radius: 5px;
    padding:       0.25rem 0.65rem;
    cursor:        pointer;
}
.resend-btn:hover[b-5olu85pshl] { background: var(--ah-bg-subtle); border-color: var(--ah-text-muted); }

.cancel-invite-btn[b-5olu85pshl] {
    padding:       0.3rem 0.75rem;
    font-size:     0.78rem;
    font-weight:   600;
    border:        1px solid var(--ah-danger-border);
    background:    var(--ah-bg);
    color:         var(--ah-danger);
    border-radius: 6px;
    cursor:        pointer;
    transition:    background 0.15s;
}
.cancel-invite-btn:hover[b-5olu85pshl]    { background: var(--ah-danger-bg); }
.cancel-invite-btn:disabled[b-5olu85pshl] { opacity: 0.5; cursor: not-allowed; }
/* /Features/Org/Pages/OrganizationSettings.razor.rz.scp.css */
/* OrganizationSettings — page-specific only.
   All common classes (card-panel, field-*, btn-*, modal-*, etc.)
   are now in wwwroot/css/ah-components.css */

/* ── SCIM Token ─────────────────────────────────────────────────────── */
.scim-token-row[b-tx2u0yikcb] {
    cursor: pointer;
    transition: background 0.1s;
}
.scim-token-row:hover[b-tx2u0yikcb] { background: var(--ah-bg-subtle); }
/* /Features/Org/Pages/Seals.razor.rz.scp.css */
/* Seals.razor.css — CSS variable 기반 */
.light-dashboard[b-pl3y5ra7yw] {
    width: 100%;
    margin: 0 auto;
    padding-bottom: 80px;
}

.x-small[b-pl3y5ra7yw] {
    font-size: 0.75rem;
    letter-spacing: 0.02em;
    color: var(--ah-text-muted);
    font-weight: 500;
}

.custom-time-font[b-pl3y5ra7yw] {
    font-size: 0.8rem;
    font-family: 'JetBrains Mono', monospace;
    color: var(--ah-text-muted);
    background-color: var(--ah-bg-surface);
    padding: 2px 6px;
    border-radius: 4px;
    display: inline-block;
}

.text-silver[b-pl3y5ra7yw] { color: var(--ah-text-placeholder); }

.dot[b-pl3y5ra7yw] { height: 10px; width: 10px; border-radius: 50%; display: inline-block; margin-right: 6px; }
.dot-green[b-pl3y5ra7yw] { background-color: #10b981; box-shadow: 0 0 0 2px rgba(16,185,129,0.2); }
.dot-red[b-pl3y5ra7yw]   { background-color: #ef4444; box-shadow: 0 0 0 2px rgba(239,68,68,0.2); }

.shadow-xs[b-pl3y5ra7yw] { box-shadow: 0 1px 2px rgba(0,0,0,0.05); }

.metric-card[b-pl3y5ra7yw] {
    background:    var(--ah-bg);
    border:        1px solid var(--ah-border);
    border-radius: 12px;
    padding:       24px;
    box-shadow:    var(--ah-shadow-sm);
    height:        100%;
}

.label[b-pl3y5ra7yw] {
    font-weight:    600;
    letter-spacing: 0.05em;
    color:          var(--ah-text-muted);
    text-transform: uppercase;
}

.notify-tpm-btn[b-pl3y5ra7yw] {
    margin-top:    0.3rem;
    display:       block;
    padding:       0.15rem 0.5rem;
    font-size:     0.62rem;
    font-weight:   600;
    border:        1px solid var(--ah-warning-border);
    background:    var(--ah-warning-bg);
    color:         var(--ah-warning);
    border-radius: 4px;
    cursor:        pointer;
    transition:    background 0.15s;
}
.notify-tpm-btn:hover[b-pl3y5ra7yw]    { opacity: 0.85; }
.notify-tpm-btn:disabled[b-pl3y5ra7yw] { opacity: 0.5; cursor: not-allowed; }

.audit-table[b-pl3y5ra7yw] {
    width:           100%;
    border-collapse: separate;
    border-spacing:  0;
    margin-bottom:   0;
}

.audit-table th[b-pl3y5ra7yw] {
    font-size:       0.75rem;
    font-weight:     700;
    text-transform:  uppercase;
    letter-spacing:  0.05em;
    color:           var(--ah-text-muted);
    background-color: var(--ah-bg);
    border-bottom:   1px solid var(--ah-border);
    padding:         1rem 1.5rem;
    text-align:      left;
    white-space:     nowrap;
    vertical-align:  middle;
}

.audit-table td[b-pl3y5ra7yw] {
    padding:        1rem 1.5rem;
    border-bottom:  1px solid var(--ah-bg-subtle);
    font-size:      0.9rem;
    color:          var(--ah-text-sub);
    vertical-align: middle;
    white-space:    nowrap;
}

.audit-table tbody tr:hover[b-pl3y5ra7yw]          { background-color: var(--ah-bg-subtle); }
.audit-table tbody tr:last-child td[b-pl3y5ra7yw]  { border-bottom: none; }

.avatar-circle[b-pl3y5ra7yw] {
    width:           36px;
    height:          36px;
    border-radius:   50%;
    display:         flex;
    align-items:     center;
    justify-content: center;
    font-weight:     700;
    font-size:       0.85rem;
}

.btn-detail-outline[b-pl3y5ra7yw] {
    background-color: var(--ah-bg);
    border:           1px solid var(--ah-border);
    color:            var(--ah-text-sub);
    font-weight:      600;
    font-size:        0.85rem;
    padding:          0.5rem 1rem;
    border-radius:    6px;
    cursor:           pointer;
    transition:       all 0.2s;
    height:           auto;
    min-height:       auto;
    min-width:        80px;
}
.btn-detail-outline:hover[b-pl3y5ra7yw]    { background-color: var(--ah-bg-subtle); color: var(--ah-text); }
.btn-detail-outline:disabled[b-pl3y5ra7yw] { opacity: 0.4; cursor: not-allowed; }

.summary-value[b-pl3y5ra7yw] {
    font-size:      1.75rem;
    font-weight:    800;
    color:          var(--ah-text);
    letter-spacing: -1px;
    line-height:    1;
}

.summary-label[b-pl3y5ra7yw] {
    font-size:      0.7rem;
    font-weight:    700;
    color:          var(--ah-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    margin-top:     0.35rem;
}

.slug-mono[b-pl3y5ra7yw] {
    font-family:    'JetBrains Mono', monospace;
    font-size:      0.7rem;
    color:          var(--ah-text-muted);
    letter-spacing: -0.3px;
}

.tier-badge[b-pl3y5ra7yw] {
    font-size:     0.7rem;
    font-weight:   600;
    padding:       0.25rem 0.6rem;
    border-radius: 4px;
    background:    var(--ah-bg-surface);
    color:         var(--ah-text-sub);
    border:        1px solid var(--ah-border);
}

.tab-header-bar[b-pl3y5ra7yw] {
    display:         flex;
    justify-content: space-between;
    align-items:     center;
    padding:         0 1.5rem;
    border-bottom:   1px solid var(--ah-border);
}

.seal-tab[b-pl3y5ra7yw] {
    padding:       0.75rem 1.25rem;
    font-size:     0.8rem;
    font-weight:   600;
    color:         var(--ah-text-muted);
    cursor:        pointer;
    border-bottom: 2px solid transparent;
    transition:    color 0.15s, border-color 0.15s;
}
.seal-tab:hover[b-pl3y5ra7yw]  { color: var(--ah-text-sub); }
.seal-tab.active[b-pl3y5ra7yw] { color: var(--ah-text); font-weight: 700; border-bottom-color: var(--ah-text); }

.tab-action-link[b-pl3y5ra7yw] {
    font-size:   0.75rem;
    font-weight: 600;
    color:       var(--ah-text-muted);
    cursor:      pointer;
    border:      none;
    background:  none;
    transition:  color 0.15s;
}
.tab-action-link:hover[b-pl3y5ra7yw] { color: var(--ah-text); }

.seal-name[b-pl3y5ra7yw]  { font-weight: 700; color: var(--ah-text);       font-size: 0.85rem; }
.seal-id[b-pl3y5ra7yw]    { font-family: 'JetBrains Mono', monospace; font-size: 0.65rem; color: var(--ah-text-muted); }

.type-badge[b-pl3y5ra7yw] {
    font-size:     0.65rem;
    font-weight:   600;
    padding:       0.2rem 0.5rem;
    border-radius: 4px;
    background:    var(--ah-bg-surface);
    color:         var(--ah-text-sub);
    border:        1px solid var(--ah-border);
}
.type-badge.master[b-pl3y5ra7yw] { background: var(--ah-text); color: var(--ah-bg); border-color: var(--ah-text); }

.holder-name[b-pl3y5ra7yw] { font-weight: 700; color: var(--ah-text); font-size: 0.8rem; }
.holder-sub[b-pl3y5ra7yw]  { font-family: 'JetBrains Mono', monospace; font-size: 0.65rem; color: var(--ah-text-muted); }

.scope-text[b-pl3y5ra7yw] { font-family: 'JetBrains Mono', monospace; font-size: 0.75rem; color: var(--ah-text-sub); }

.ownership-badge[b-pl3y5ra7yw] {
    font-size:     0.65rem;
    font-weight:   600;
    padding:       0.2rem 0.5rem;
    border-radius: 4px;
    background:    var(--ah-bg-surface);
    color:         var(--ah-text-sub);
    border:        1px solid var(--ah-border);
}

.geo-ip[b-pl3y5ra7yw]    { font-family: 'JetBrains Mono', monospace; font-size: 0.75rem; color: var(--ah-text); }
.geo-label[b-pl3y5ra7yw] { font-size: 0.65rem; color: var(--ah-text-muted); }

.device-time[b-pl3y5ra7yw] { font-family: 'JetBrains Mono', monospace; font-size: 0.8rem; font-weight: 600; color: var(--ah-text); }
.device-tz[b-pl3y5ra7yw]   { font-family: 'JetBrains Mono', monospace; font-size: 0.6rem; color: var(--ah-text-muted); }

.page-count[b-pl3y5ra7yw] { font-size: 0.7rem; color: var(--ah-text-muted); padding: 0.75rem 1.5rem; text-align: right; border-top: 1px solid var(--ah-bg-subtle); }
.page-count strong[b-pl3y5ra7yw] { color: var(--ah-text-sub); }

.status-badge[b-pl3y5ra7yw]    { font-size: 0.65rem; font-weight: 600; padding: 0.2rem 0.5rem; border-radius: 4px; }
.status-active[b-pl3y5ra7yw]   { background: var(--ah-success-bg); color: var(--ah-success); border: 1px solid var(--ah-success-border); }
.status-pending[b-pl3y5ra7yw]  { background: var(--ah-warning-bg); color: var(--ah-warning); border: 1px solid var(--ah-warning-border); }
.status-blocked[b-pl3y5ra7yw]  { background: var(--ah-danger-bg);  color: var(--ah-danger);  border: 1px solid var(--ah-danger-border); }
.status-revoked[b-pl3y5ra7yw]  { background: var(--ah-bg-surface);  color: var(--ah-text-muted); border: 1px solid var(--ah-border); }

.kebab-wrapper[b-pl3y5ra7yw] { position: relative; display: inline-block; }
.kebab-btn[b-pl3y5ra7yw] {
    background:    none;
    border:        1px solid transparent;
    font-size:     1.2rem;
    letter-spacing: 2px;
    color:         var(--ah-text-muted);
    cursor:        pointer;
    padding:       0.2rem 0.5rem;
    border-radius: 6px;
    transition:    all 0.15s;
    line-height:   1;
}
.kebab-btn:hover[b-pl3y5ra7yw] { background: var(--ah-bg-surface); color: var(--ah-text-sub); border-color: var(--ah-border); }

.kebab-menu[b-pl3y5ra7yw] {
    position:      absolute;
    right:         0;
    top:           100%;
    margin-top:    4px;
    background:    var(--ah-bg);
    border:        1px solid var(--ah-border);
    border-radius: 8px;
    box-shadow:    var(--ah-shadow-md);
    min-width:     160px;
    z-index:       50;
    padding:       4px;
}

.kebab-item[b-pl3y5ra7yw] {
    display:       block;
    width:         100%;
    text-align:    left;
    padding:       0.5rem 0.75rem;
    font-size:     0.8rem;
    font-weight:   600;
    color:         var(--ah-text);
    background:    none;
    border:        none;
    border-radius: 6px;
    cursor:        pointer;
    transition:    background 0.1s;
}
.kebab-item:hover[b-pl3y5ra7yw]        { background: var(--ah-bg-subtle); }
.kebab-item.danger[b-pl3y5ra7yw]       { color: var(--ah-danger); }
.kebab-item.danger:hover[b-pl3y5ra7yw] { background: var(--ah-danger-bg); }

.member-select-row[b-pl3y5ra7yw] {
    display:       flex;
    align-items:   center;
    gap:           0.75rem;
    padding:       0.65rem 0.85rem;
    border:        1px solid var(--ah-border);
    border-radius: 8px;
    cursor:        pointer;
    transition:    all 0.15s;
}
.member-select-row:hover:not(.disabled)[b-pl3y5ra7yw] { border-color: var(--ah-link); background: #f5f3ff; }
.member-select-row.selected[b-pl3y5ra7yw]             { border-color: var(--ah-link); background: #eef2ff; }
.member-select-row.disabled[b-pl3y5ra7yw]             { opacity: 0.5; cursor: not-allowed; background: var(--ah-bg-subtle); }

.seal-notice[b-pl3y5ra7yw] {
    border-radius: 10px;
    padding:       1rem 1.25rem;
    margin-bottom: 1.5rem;
    font-size:     0.78rem;
    line-height:   1.65;
    display:       flex;
    align-items:   center;
    justify-content: space-between;
    gap:           1.5rem;
}
.seal-notice-content[b-pl3y5ra7yw] { flex: 1; }
.seal-notice-title[b-pl3y5ra7yw]   { display: block; font-weight: 700; font-size: 0.8rem; margin-bottom: 0.2rem; }

.seal-notice-btn[b-pl3y5ra7yw] {
    flex-shrink:   0;
    padding:       0.45rem 1.1rem;
    font-size:     0.75rem;
    font-weight:   700;
    border-radius: 6px;
    cursor:        pointer;
    border:        none;
    white-space:   nowrap;
    transition:    opacity 0.15s;
    background:    var(--ah-text);
    color:         var(--ah-bg);
}
.seal-notice-btn:hover[b-pl3y5ra7yw] { opacity: 0.8; }

.seal-notice-btn-outline[b-pl3y5ra7yw] {
    flex-shrink:   0;
    padding:       0.45rem 1.1rem;
    font-size:     0.75rem;
    font-weight:   600;
    border-radius: 6px;
    cursor:        pointer;
    white-space:   nowrap;
    transition:    opacity 0.15s;
    background:    transparent;
    border:        1px solid var(--ah-text);
    color:         var(--ah-text);
}
.seal-notice-btn-outline:hover[b-pl3y5ra7yw] { opacity: 0.7; }

.seal-notice.warning[b-pl3y5ra7yw] { background: var(--ah-warning-bg); border: 1px solid var(--ah-warning-border); color: #9a3412; }
.seal-notice.info[b-pl3y5ra7yw]    { background: var(--ah-info-bg);    border: 1px solid var(--ah-info-border);    color: #1e40af; }
.seal-notice.danger[b-pl3y5ra7yw]  { background: var(--ah-danger-bg);  border: 1px solid var(--ah-danger-border);  color: #991b1b; }
.seal-notice.success[b-pl3y5ra7yw] { background: var(--ah-success-bg); border: 1px solid var(--ah-success-border); color: #14532d; }
