/* /Components/Chat/ChatContactRow.razor.rz.scp.css */
/* Scoped styles for ChatContactRow — mirrors ChatList.razor.css contact styles */

.chat-contact-row[b-1255wrzbm0] {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px var(--gap, 16px);
    cursor: pointer;
    border-bottom: 1px solid #f0f0f0;
    transition: background 0.15s;
    overflow: hidden;
    min-width: 0;
    width: 100%;
    box-sizing: border-box;
}

.chat-contact-row:hover[b-1255wrzbm0] {
    background: #f9f9f9;
}

.chat-contact-row--read[b-1255wrzbm0] {
    background: #f0faf4;
}

.chat-contact-row--read:hover[b-1255wrzbm0] {
    background: #e6f7ed;
}

.chat-avatar-wrap[b-1255wrzbm0] {
    position: relative;
    flex-shrink: 0;
}

.chat-avatar[b-1255wrzbm0] {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    object-fit: cover;
}

.chat-avatar--initials[b-1255wrzbm0],
.chat-avatar--group[b-1255wrzbm0] {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    font-weight: 700;
    color: #fff;
}

.chat-avatar--group[b-1255wrzbm0] {
    background: #222;
    font-size: 1.4rem;
}

.chat-status-dot[b-1255wrzbm0] {
    position: absolute;
    bottom: 1px;
    left: 1px;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    border: 2.5px solid #fff;
}

.chat-contact-info[b-1255wrzbm0] {
    flex: 1;
    min-width: 0;
}

.chat-contact-top[b-1255wrzbm0] {
    display: flex;
    align-items: center;
    gap: 4px;
    margin-bottom: 2px;
    min-width: 0;
    overflow: hidden;
}

.chat-contact-name[b-1255wrzbm0] {
    font-weight: 700;
    font-size: 1.05rem;
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #000;
    min-width: 0;
}

.chat-contact-time[b-1255wrzbm0] {
    font-size: 0.75rem;
    color: var(--muted, #848484);
    white-space: nowrap;
    flex-shrink: 0;
}

.chat-contact-bottom[b-1255wrzbm0] {
    display: flex;
    align-items: center;
    gap: 4px;
    min-width: 0;
    overflow: hidden;
}

.chat-contact-preview[b-1255wrzbm0] {
    flex: 1;
    font-size: 0.9rem;
    color: var(--muted, #848484);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    min-width: 0;
}

.chat-contact-preview--not-on-frega[b-1255wrzbm0] {
    font-style: italic;
    color: #aaa;
}

.chat-contact-badges[b-1255wrzbm0] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-shrink: 0;
}

.chat-muted-icon[b-1255wrzbm0] {
    color: var(--muted, #848484);
    font-size: 0.85rem;
}

.chat-unread-badge[b-1255wrzbm0] {
    background: #FF0000;
    color: #fff;
    border-radius: 12px;
    padding: 2px 6px;
    font-size: 0.72rem;
    font-weight: 700;
    min-width: 22px;
    height: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    flex-shrink: 0;
}

.chat-unread-badge--muted[b-1255wrzbm0] {
    background: #9e9e9e;
}

.chat-group-bubble[b-1255wrzbm0] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #111;
    color: #fff;
    font-size: 0.72rem;
    font-weight: 700;
    flex-shrink: 0;
    margin-right: 2px;
}
/* /Components/Chat/ChatMessageBubble.razor.rz.scp.css */
.chat-bubble-wrap[b-uzhx58n3qg] {
    display: flex;
    align-items: flex-end;
    gap: 8px;
    max-width: 80%;
    position: relative;
}

/* Elevate above fixed backdrop (z-index 59) when context menu or emoji picker is open */
.chat-bubble-wrap.bubble-wrap--elevated[b-uzhx58n3qg] {
    z-index: 61;
}

/* Twemoji images — inline, same line-height as surrounding text */
.chat-bubble-wrap img.emoji[b-uzhx58n3qg] {
    height: 1.15em;
    width: 1.15em;
    max-height: 20px;
    max-width: 20px;
    vertical-align: -0.15em;
    display: inline;
    object-fit: contain;
}

/* ── Full emoji picker overlay anchored to the bubble ── */

.bubble-full-picker-wrap[b-uzhx58n3qg] {
    align-self: flex-start;
    margin-bottom: 4px;
    z-index: 70;
}

.bubble-full-picker-wrap.picker-wrap--own[b-uzhx58n3qg] {
    align-self: flex-end;
}

.chat-bubble-wrap.own[b-uzhx58n3qg] {
    align-self: flex-end;
    flex-direction: row-reverse;
}

.chat-bubble-wrap.other[b-uzhx58n3qg] {
    align-self: flex-start;
}

.chat-bubble-avatar[b-uzhx58n3qg] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
}

.chat-bubble[b-uzhx58n3qg] {
    border-radius: 16px;
    padding: 10px 14px;
    max-width: 100%;
    word-break: break-word;
    cursor: pointer;
    user-select: none;
}

.chat-bubble--own[b-uzhx58n3qg] {
    background: #d9f7be;
    border-bottom-right-radius: 4px;
}

.chat-bubble--other[b-uzhx58n3qg] {
    background: #fff;
    border-bottom-left-radius: 4px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08);
}

.chat-reply-preview[b-uzhx58n3qg] {
    font-size: 0.8rem;
    color: var(--muted, #848484);
    border-left: 3px solid var(--brand, #4A8A68);
    padding-left: 8px;
    margin-bottom: 6px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 200px;
}

.chat-bubble-text[b-uzhx58n3qg] {
    font-size: 0.95rem;
    color: #000;
    line-height: 1.4;
    white-space: pre-wrap;
    word-break: break-word;
    /* Prevent native platform emoji from rendering oversized */
    font-variant-emoji: text;
}

.chat-bubble-meta[b-uzhx58n3qg] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 4px;
    margin-top: 4px;
}

.chat-edited-label[b-uzhx58n3qg] {
    font-size: 0.72rem;
    color: var(--muted, #848484);
    font-style: italic;
}

.chat-bubble-time[b-uzhx58n3qg] {
    font-size: 0.72rem;
    color: var(--muted, #848484);
}

.chat-read-receipt[b-uzhx58n3qg] {
    font-size: 0.72rem;
    color: var(--muted, #848484);
}

.chat-read-receipt.read[b-uzhx58n3qg] {
    color: #3DC518;
}

.chat-reactions[b-uzhx58n3qg] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    margin-top: 6px;
}

.chat-reaction[b-uzhx58n3qg] {
    background: #f0f0f0;
    border-radius: 12px;
    padding: 2px 7px;
    font-size: 0.82rem;
    line-height: 1.4;
    cursor: pointer;
    transition: background 0.15s;
    border: none;
    /* Keep emoji glyphs inline with the count number */
    font-variant-emoji: text;
}

.chat-reaction.reacted[b-uzhx58n3qg] {
    background: #d0e8ff;
}

/* ── Context menu ──────────────────────────────────────────────── */

.bubble-context-menu[b-uzhx58n3qg] {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    z-index: 65;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.15);
    min-width: 160px;
    overflow: hidden;
}

.bubble-context-menu.context-menu--own[b-uzhx58n3qg] {
    left: auto;
    right: 0;
}

.bubble-menu-item[b-uzhx58n3qg] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 13px 18px;
    background: none;
    border: none;
    width: 100%;
    text-align: left;
    font-size: 0.95rem;
    cursor: pointer;
    color: #000;
    border-bottom: 1px solid #f5f5f5;
}

.bubble-menu-item:last-child[b-uzhx58n3qg] {
    border-bottom: none;
}

.bubble-menu-item:hover[b-uzhx58n3qg] {
    background: #f8f8f8;
}

.bubble-menu-item--danger[b-uzhx58n3qg] {
    color: #e33;
}

.bubble-menu-item--danger i[b-uzhx58n3qg] {
    color: #e33;
}

.bubble-menu-item--forward[b-uzhx58n3qg] {
    color: var(--brand, #4A8A68);
}

.bubble-menu-item--forward i[b-uzhx58n3qg] {
    color: var(--brand, #4A8A68);
}

.bubble-menu-item--report[b-uzhx58n3qg] {
    color: #F57C00;
}

.bubble-menu-item--report i[b-uzhx58n3qg] {
    color: #F57C00;
}

.bubble-context-backdrop[b-uzhx58n3qg] {
    position: fixed;
    inset: 0;
    z-index: 59;
}

.bubble-menu-item--muted[b-uzhx58n3qg] {
    color: #666;
}

.bubble-menu-item--muted i[b-uzhx58n3qg] {
    color: #999;
}

/* Avatar spacer keeps alignment when avatar is hidden for grouped messages */
.chat-bubble-avatar--spacer[b-uzhx58n3qg] {
    width: 28px;
    height: 28px;
    flex-shrink: 0;
    visibility: hidden;
}

/* Tighten gap between grouped (same-sender) bubbles */
.chat-bubble-wrap.grouped[b-uzhx58n3qg] {
    margin-top: -4px;
}
/* /Components/Chat/EmojiPickerPanel.razor.rz.scp.css */
.emoji-panel[b-jg7sjdsjgq] {
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 16px;
    box-shadow: 0 6px 24px rgba(0,0,0,0.16);
    width: 300px;
    max-width: 94vw;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    z-index: 70;
}

/* ── Search bar ─────────────────────────────────────────────── */

.emoji-panel-search-row[b-jg7sjdsjgq] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 10px 6px;
    border-bottom: 1px solid #f0f0f0;
}

.emoji-panel-search-icon[b-jg7sjdsjgq] {
    font-size: 0.95rem;
    flex-shrink: 0;
    opacity: 0.5;
}

.emoji-panel-search[b-jg7sjdsjgq] {
    flex: 1;
    border: 1.5px solid #e0e0e0;
    border-radius: 20px;
    padding: 5px 10px;
    font-size: 0.88rem;
    outline: none;
    background: #f9f9f9;
    color: #000;
    min-width: 0;
}

.emoji-panel-search:focus[b-jg7sjdsjgq] {
    border-color: var(--brand, #4A8A68);
    background: #fff;
}

/* Hide the native clear button — we provide our own */
.emoji-panel-search[b-jg7sjdsjgq]::-webkit-search-cancel-button {
    display: none;
}

.emoji-panel-search-clear[b-jg7sjdsjgq] {
    background: none;
    border: none;
    font-size: 1.1rem;
    color: var(--muted, #848484);
    cursor: pointer;
    padding: 0 2px;
    line-height: 1;
    flex-shrink: 0;
}

.emoji-panel-search-clear:hover[b-jg7sjdsjgq] {
    color: #333;
}

/* ── No-results message ─────────────────────────────────────── */

.emoji-panel-no-results[b-jg7sjdsjgq] {
    grid-column: 1 / -1;
    padding: 18px 8px;
    text-align: center;
    font-size: 0.85rem;
    color: var(--muted, #848484);
}

/* ── Category tabs ──────────────────────────────────────────── */

.emoji-panel-tabs[b-jg7sjdsjgq] {
    display: flex;
    gap: 2px;
    padding: 6px 8px;
    border-bottom: 1px solid #f0f0f0;
    overflow-x: auto;
    scrollbar-width: none;
}

.emoji-panel-tabs[b-jg7sjdsjgq]::-webkit-scrollbar {
    display: none;
}

.emoji-panel-tab[b-jg7sjdsjgq] {
    background: none;
    border: none;
    font-size: clamp(1rem, 3.5vw, 1.3rem);
    cursor: pointer;
    padding: 4px 6px;
    border-radius: 8px;
    flex-shrink: 0;
    transition: background 0.12s;
    line-height: 1;
    opacity: 0.55;
}

.emoji-panel-tab:hover[b-jg7sjdsjgq] {
    background: #f5f5f5;
    opacity: 1;
}

.emoji-panel-tab.active[b-jg7sjdsjgq] {
    background: #e8f5e9;
    opacity: 1;
}

/* ── Emoji grid ─────────────────────────────────────────────── */

.emoji-panel-grid[b-jg7sjdsjgq] {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    gap: 2px;
    padding: 8px;
    max-height: 220px;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: #e0e0e0 transparent;
}

.emoji-panel-btn[b-jg7sjdsjgq] {
    background: none;
    border: none;
    font-size: clamp(1.1rem, 4vw, 1.35rem);
    cursor: pointer;
    padding: 4px;
    border-radius: 8px;
    line-height: 1;
    transition: background 0.1s;
    text-align: center;
}

.emoji-panel-btn:hover[b-jg7sjdsjgq] {
    background: #f0f0f0;
}
/* /Components/Chat/EmojiQuickBar.razor.rz.scp.css */
.emoji-quick-bar[b-cn5t3swipr] {
    display: flex;
    gap: 2px;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 24px;
    padding: 6px 10px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.14);
    z-index: 60;
    align-self: flex-start;
}

.emoji-quick-bar--right[b-cn5t3swipr] {
    align-self: flex-end;
}

.emoji-quick-btn[b-cn5t3swipr] {
    background: none;
    border: none;
    font-size: clamp(1rem, 3vw, 1.25rem);
    cursor: pointer;
    padding: 2px 4px;
    border-radius: 50%;
    transition: background 0.12s;
    line-height: 1;
}

.emoji-quick-btn:hover[b-cn5t3swipr] {
    background: #f0f0f0;
}

.emoji-quick-more[b-cn5t3swipr] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--muted, #848484);
    padding: 2px 6px;
}
/* /Components/Chat/ForwardPickerModal.razor.rz.scp.css */
/* ── Full-page overlay ─────────────────────────────────────────── */

.fwd-page[b-nnej235t9l] {
    position: fixed;
    inset: 0;
    background: #fff;
    z-index: 120;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

/* ── Header ────────────────────────────────────────────────────── */

.fwd-header[b-nnej235t9l] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 16px;
    border-bottom: 1px solid #f0f0f0;
    background: #fff;
    flex-shrink: 0;
}

.fwd-header-title[b-nnej235t9l] {
    flex: 1;
    font-size: 1rem;
    font-weight: 700;
    color: #000;
}

.fwd-header-actions[b-nnej235t9l] {
    display: flex;
    gap: 14px;
    align-items: center;
}

/* ── Search bar ────────────────────────────────────────────────── */

.fwd-search-bar[b-nnej235t9l] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 16px;
    background: #f5f5f5;
    border-bottom: 1px solid #e8e8e8;
    flex-shrink: 0;
}

.fwd-search-icon[b-nnej235t9l] {
    color: var(--muted, #848484);
    font-size: 0.9rem;
}

.fwd-search-input[b-nnej235t9l] {
    flex: 1;
    border: none;
    background: transparent;
    outline: none;
    font-size: 0.95rem;
    color: #000;
}

/* ── Contact list ──────────────────────────────────────────────── */

.fwd-contact-list[b-nnej235t9l] {
    flex: 1;
    overflow-y: auto;
}

.fwd-empty[b-nnej235t9l] {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 48px 20px;
    color: var(--muted, #848484);
    font-size: 0.9rem;
}

/* ── Contact row ───────────────────────────────────────────────── */

.fwd-contact-row[b-nnej235t9l] {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px 16px;
    cursor: pointer;
    border-bottom: 1px solid #f5f5f5;
    transition: background 0.12s;
    user-select: none;
}

.fwd-contact-row:hover[b-nnej235t9l] {
    background: #f9f9f9;
}

.fwd-contact-row--selected[b-nnej235t9l] {
    background: #f9f9f9;
}

/* ── Avatar ────────────────────────────────────────────────────── */

.fwd-avatar-wrap[b-nnej235t9l] {
    position: relative;
    flex-shrink: 0;
}

.fwd-avatar[b-nnej235t9l] {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    object-fit: cover;
    display: flex;
    align-items: center;
    justify-content: center;
}

.fwd-avatar--initials[b-nnej235t9l] {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: var(--accent, #FF700D);
    color: #fff;
    font-weight: 700;
    font-size: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.fwd-avatar--group[b-nnej235t9l] {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: #222;
    color: #fff;
    font-size: 1.2rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.fwd-group-badge[b-nnej235t9l] {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #222;
    color: #fff;
    font-size: 0.55rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #fff;
}

/* ── Name ──────────────────────────────────────────────────────── */

.fwd-contact-name[b-nnej235t9l] {
    flex: 1;
    font-size: 0.97rem;
    font-weight: 500;
    color: #000;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* ── Circle checkbox ───────────────────────────────────────────── */

.fwd-circle[b-nnej235t9l] {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    border: 2px solid #d0d0d0;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: border-color 0.15s, background 0.15s;
    background: #fff;
}

.fwd-circle--checked[b-nnej235t9l] {
    background: var(--brand, #4A8A68);
    border-color: var(--brand, #4A8A68);
}

.fwd-circle-check[b-nnej235t9l] {
    color: #fff;
    font-size: 0.7rem;
}

/* ── Skeleton loading rows ─────────────────────────────────────── */

.fwd-skeleton-row[b-nnej235t9l] {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px 16px;
    border-bottom: 1px solid #f5f5f5;
}

.fwd-skeleton-avatar[b-nnej235t9l] {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: fwd-shimmer-b-nnej235t9l 1.4s infinite;
    flex-shrink: 0;
}

.fwd-skeleton-name[b-nnej235t9l] {
    flex: 1;
    height: 16px;
    border-radius: 8px;
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: fwd-shimmer-b-nnej235t9l 1.4s infinite;
}

.fwd-skeleton-circle[b-nnej235t9l] {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: fwd-shimmer-b-nnej235t9l 1.4s infinite;
    flex-shrink: 0;
}

@keyframes fwd-shimmer-b-nnej235t9l {
    0%   { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

/* ── Footer: preview strip + send FAB ─────────────────────────── */

.fwd-footer[b-nnej235t9l] {
    flex-shrink: 0;
    background: #fff;
    border-top: 1px solid #f0f0f0;
}

.fwd-preview-strip[b-nnej235t9l] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 16px 6px;
    border-bottom: 1px solid #f5f5f5;
}

.fwd-preview-thumb[b-nnej235t9l] {
    width: 46px;
    height: 46px;
    border-radius: 6px;
    object-fit: cover;
    flex-shrink: 0;
    border: 1px solid #e0e0e0;
}

.fwd-caption-input[b-nnej235t9l] {
    flex: 1;
    border: none;
    background: transparent;
    outline: none;
    font-size: 0.9rem;
    color: #222;
}

.fwd-caption-input[b-nnej235t9l]::placeholder {
    color: #aaa;
}

.fwd-preview-text[b-nnej235t9l] {
    flex: 1;
    font-size: 0.9rem;
    color: #555;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.fwd-footer-row[b-nnej235t9l] {
    display: flex;
    align-items: center;
    padding: 10px 16px 14px;
    gap: 12px;
}

.fwd-selected-names[b-nnej235t9l] {
    flex: 1;
    font-size: 0.88rem;
    color: var(--muted, #848484);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.fwd-send-fab[b-nnej235t9l] {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: var(--brand, #4A8A68);
    border: none;
    color: #fff;
    font-size: 1.1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    flex-shrink: 0;
    transition: background 0.15s;
    box-shadow: 0 2px 10px rgba(74,138,104,0.35);
}

.fwd-send-fab:hover[b-nnej235t9l] {
    background: var(--brand-strong, #136242);
}

.fwd-send-fab:disabled[b-nnej235t9l] {
    background: #c0c0c0;
    box-shadow: none;
    cursor: not-allowed;
}
/* /Components/GpSelect.razor.rz.scp.css */
/* ===== GpSelect: custom dropdown that matches .gp-input-group styling ===== */

/* Root wrapper is positioning context for the absolutely-positioned list. */
.gp-select-wrapper[b-z16ve9vho2] {
    position: relative;
    cursor: pointer;
}

/* Trigger button styled to look identical to .gp-input. */
.gp-select-trigger[b-z16ve9vho2] {
    display: flex;
    align-items: center;
    flex: 1;
    min-width: 0;
    width: 100%;
    text-align: left;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    background: transparent;
    border: none;
    outline: none;
    /* Matches .gp-input padding; chevron sits in its own flex slot. */
    padding: 10px 16px 10px 4px;
    color: var(--text, #000);
    font-size: 16px;
    font-family: inherit;
    box-sizing: border-box;
}
.gp-select-trigger:disabled[b-z16ve9vho2] {
    cursor: not-allowed;
    opacity: 0.6;
}

.gp-select-value[b-z16ve9vho2] {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 100%;
}
.gp-select-placeholder[b-z16ve9vho2] {
    color: var(--muted, #848484);
}

/* Chevron: override the global .gp-select-chevron rules inside this component.
   - Enlarge the click target so tapping near the right edge opens/closes the list.
   - Use symmetric padding so rotating the icon does not shift it visually.
   - Rotate the inner <i> (not the padded span) around its own center. */
.gp-select-wrapper .gp-select-chevron[b-z16ve9vho2] {
    pointer-events: auto;
    cursor: pointer;
    padding: 8px 12px;
    /* Keep the outer span free of transforms so its box stays put. */
    transition: color 0.2s ease;
}
.gp-select-wrapper .gp-select-chevron-icon[b-z16ve9vho2] {
    display: inline-block;
    transform-origin: 50% 50%;
    transition: transform 0.2s ease;
    will-change: transform;
}
.gp-select-wrapper.is-open .gp-select-chevron[b-z16ve9vho2] {
    color: var(--brand, #4A8A68);
}
.gp-select-wrapper.is-open .gp-select-chevron-icon[b-z16ve9vho2] {
    transform: rotate(180deg);
}

/* Option list - floats below the trigger by default. */
.gp-select-list[b-z16ve9vho2] {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    right: 0;
    margin: 0;
    padding: 6px 0;
    list-style: none;
    background: #fff;
    border: 2px solid #86AF99;
    border-radius: 10px;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.12);
    max-height: 260px;
    overflow-y: auto;
    z-index: 50;
}

/* Auto-flip: when the component decides there is more room above, the list
   is repositioned to open upward instead of downward. */
.gp-select-wrapper.is-flipped .gp-select-list[b-z16ve9vho2] {
    top: auto;
    bottom: calc(100% + 6px);
    box-shadow: 0 -6px 20px rgba(0, 0, 0, 0.12);
}

.gp-select-option[b-z16ve9vho2] {
    padding: 12px 20px;
    font-size: 16px;
    color: var(--text, #000);
    cursor: pointer;
    user-select: none;
    line-height: 1.3;
}
.gp-select-option:hover[b-z16ve9vho2],
.gp-select-option.is-highlighted[b-z16ve9vho2] {
    background: #f0f5f2;
}
.gp-select-option.is-selected[b-z16ve9vho2] {
    background: #e6efe9;
    color: var(--brand, #4A8A68);
    font-weight: 600;
}
.gp-select-option.is-selected.is-highlighted[b-z16ve9vho2] {
    background: #d9e8df;
}

/* Responsive scaling mirrors .gp-input */
@media (min-width: 768px) {
    .gp-select-trigger[b-z16ve9vho2] { font-size: 18px; padding: 14px 18px 14px 6px; }
    .gp-select-option[b-z16ve9vho2] { font-size: 17px; padding: 12px 22px; }
}
@media (min-width: 1024px) {
    .gp-select-trigger[b-z16ve9vho2] { font-size: 20px; padding: 16px 20px 16px 8px; }
    .gp-select-option[b-z16ve9vho2] { font-size: 18px; padding: 14px 24px; }
}
/* /Components/LoadMoreList.razor.rz.scp.css */
.gp-load-more-wrap[b-umywkgp4x2] {
    display: flex;
    justify-content: center;
    margin: 16px 0 8px;
}

.gp-load-more[b-umywkgp4x2] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 700;
    font-size: 14px;
    color: var(--text, #000);
    background: var(--surface, #fff);
    border: 1px solid var(--muted, #848484);
    border-radius: 999px;
    padding: 10px 22px;
    cursor: pointer;
    transition: background-color 0.15s ease, color 0.15s ease;
}

.gp-load-more:hover[b-umywkgp4x2],
.gp-load-more:focus-visible[b-umywkgp4x2] {
    background: var(--text, #000);
    color: var(--surface, #fff);
    outline: none;
}

.gp-load-more:disabled[b-umywkgp4x2] {
    opacity: 0.5;
    cursor: default;
}
/* /Components/PasswordStrengthMeter.razor.rz.scp.css */
/* Password strength bar */
.upd-strength[b-rw3ksyy3st] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: -0.25rem 0 0.25rem;
}

.upd-strength-bar[b-rw3ksyy3st] {
    flex: 1;
    height: 6px;
    background: rgba(255,255,255,0.15);
    border-radius: 3px;
    overflow: hidden;
}

.upd-strength-fill[b-rw3ksyy3st] {
    height: 100%;
    border-radius: 3px;
    transition: width 0.3s ease, background-color 0.3s ease;
}

.upd-strength-fill.upd-strength-weak[b-rw3ksyy3st] {
    background-color: #e74c3c;
}

.upd-strength-fill.upd-strength-fair[b-rw3ksyy3st] {
    background-color: #f39c12;
}

.upd-strength-fill.upd-strength-good[b-rw3ksyy3st] {
    background-color: #3498db;
}

.upd-strength-fill.upd-strength-strong[b-rw3ksyy3st] {
    background-color: #2ecc71;
}

.upd-strength-label[b-rw3ksyy3st] {
    font-size: 0.75rem;
    font-weight: 600;
    min-width: 3rem;
}

.upd-strength-label.upd-strength-weak[b-rw3ksyy3st] {
    color: #e74c3c;
}

.upd-strength-label.upd-strength-fair[b-rw3ksyy3st] {
    color: #f39c12;
}

.upd-strength-label.upd-strength-good[b-rw3ksyy3st] {
    color: #3498db;
}

.upd-strength-label.upd-strength-strong[b-rw3ksyy3st] {
    color: #2ecc71;
}

/* Password rules checklist */
.upd-rules[b-rw3ksyy3st] {
    list-style: none;
    padding: 0;
    margin: 0 0 0.75rem;
    font-size: 0.8rem;
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

.upd-rules li[b-rw3ksyy3st] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
}

.upd-rule-pass[b-rw3ksyy3st] {
    color: #2ecc71;
}

/* Unmet criteria stand out in red until satisfied */
.upd-rule-fail[b-rw3ksyy3st] {
    color: #e74c3c;
    font-weight: 600;
}
/* /Layout/DeactivateConfirmDialog.razor.rz.scp.css */
.deactivate-page[b-ktzd5mfh6x] {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    background: #fff;
    padding: 16px 24px 32px;
}

.deactivate-back-btn[b-ktzd5mfh6x] {
    background: none;
    border: none;
    cursor: pointer;
    padding: 8px;
    margin: 0 0 16px -8px;
    color: #222;
    display: flex;
    align-items: center;
    align-self: flex-start;
}

.deactivate-content[b-ktzd5mfh6x] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    flex: 1;
    padding-top: 24px;
}

.deactivate-content .gp-input-group[b-ktzd5mfh6x] {
    width: 100%;
    margin: 24px 0;
}

.deactivate-content .auth-btn[b-ktzd5mfh6x] {
    width: 100%;
    margin-bottom: 12px;
}

.deactivate-content .gp-dialog-cancel-btn[b-ktzd5mfh6x] {
    width: 100%;
}
/* /Layout/DeleteConfirmDialog.razor.rz.scp.css */
.delete-page[b-cmf6apj1kf] {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    background: #fff;
    padding: 16px 24px 32px;
}

.delete-back-btn[b-cmf6apj1kf] {
    background: none;
    border: none;
    cursor: pointer;
    padding: 8px;
    margin: 0 0 16px -8px;
    color: #222;
    display: flex;
    align-items: center;
    align-self: flex-start;
}

.delete-content[b-cmf6apj1kf] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    flex: 1;
    padding-top: 24px;
}

.delete-content .gp-input-group[b-cmf6apj1kf] {
    width: 100%;
    margin: 24px 0;
}

.delete-content .auth-btn[b-cmf6apj1kf] {
    width: 100%;
    margin-bottom: 12px;
}

.delete-content .gp-dialog-cancel-btn[b-cmf6apj1kf] {
    width: 100%;
}
/* /Layout/MainLayout.razor.rz.scp.css */
.page[b-coykza3962] {
    position: relative;
    display: flex;
    flex-direction: column;
}

main[b-coykza3962] {
    flex: 1;
}

.sidebar[b-coykza3962] {
    background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%);
}

.top-row[b-coykza3962] {
    background-color: #f7f7f7;
    border-bottom: 1px solid #d6d5d5;
    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: center;
}

    .top-row[b-coykza3962]  a, .top-row[b-coykza3962]  .btn-link {
        white-space: nowrap;
        margin-left: 1.5rem;
        text-decoration: none;
    }

    .top-row[b-coykza3962]  a:hover, .top-row[b-coykza3962]  .btn-link:hover {
        text-decoration: underline;
    }

    .top-row[b-coykza3962]  a:first-child {
        overflow: hidden;
        text-overflow: ellipsis;
    }

@media (max-width: 767px) {
    .top-row[b-coykza3962] {
        justify-content: space-between;
    }

    .top-row[b-coykza3962]  a, .top-row[b-coykza3962]  .btn-link {
        margin-left: 0;
    }
}

@media (min-width: 768px) {
    .page[b-coykza3962] {
        flex-direction: row;
    }

    .sidebar[b-coykza3962] {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    .top-row[b-coykza3962] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .top-row.auth[b-coykza3962]  a:first-child {
        flex: 1;
        text-align: right;
        width: 0;
    }

    .top-row[b-coykza3962], article[b-coykza3962] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}
/* /Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-4xarhz4yia] {
    background-color: rgba(255, 255, 255, 0.1);
}

.top-row[b-4xarhz4yia] {
    min-height: 3.5rem;
    background-color: rgba(0,0,0,0.4);
}

.navbar-brand[b-4xarhz4yia] {
    font-size: 1.1rem;
}

.bi[b-4xarhz4yia] {
    display: inline-block;
    position: relative;
    width: 1.25rem;
    height: 1.25rem;
    margin-right: 0.75rem;
    top: -1px;
    background-size: cover;
}

.bi-house-door-fill-nav-menu[b-4xarhz4yia] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-house-door-fill' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5Z'/%3E%3C/svg%3E");
}

.bi-plus-square-fill-nav-menu[b-4xarhz4yia] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-plus-square-fill' viewBox='0 0 16 16'%3E%3Cpath d='M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm6.5 4.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3a.5.5 0 0 1 1 0z'/%3E%3C/svg%3E");
}

.bi-list-nested-nav-menu[b-4xarhz4yia] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-list-nested' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M4.5 11.5A.5.5 0 0 1 5 11h10a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 3 7h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 1 3h10a.5.5 0 0 1 0 1H1a.5.5 0 0 1-.5-.5z'/%3E%3C/svg%3E");
}

.nav-item[b-4xarhz4yia] {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
}

    .nav-item:first-of-type[b-4xarhz4yia] {
        padding-top: 1rem;
    }

    .nav-item:last-of-type[b-4xarhz4yia] {
        padding-bottom: 1rem;
    }

    .nav-item[b-4xarhz4yia]  a {
        color: #d7d7d7;
        border-radius: 4px;
        height: 3rem;
        display: flex;
        align-items: center;
        line-height: 3rem;
    }

.nav-item[b-4xarhz4yia]  a.active {
    background-color: rgba(255,255,255,0.37);
    color: white;
}

.nav-item[b-4xarhz4yia]  a:hover {
    background-color: rgba(255,255,255,0.1);
    color: white;
}

@media (min-width: 641px) {
    .navbar-toggler[b-4xarhz4yia] {
        display: none;
    }

    .collapse[b-4xarhz4yia] {
        /* Never collapse the sidebar for wide screens */
        display: block;
    }

    .nav-scrollable[b-4xarhz4yia] {
        /* Allow sidebar to scroll for tall menus */
        height: calc(100vh - 3.5rem);
        overflow-y: auto;
    }
}
/* /Pages/Auth/CheckEmail.razor.rz.scp.css */
/* ===== Check Email page ===== */
.ce-icon-wrap[b-2y0hgdpvio] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px 0 28px;
}
.ce-icon[b-2y0hgdpvio] {
    font-size: clamp(100px, 28vw, 140px);
    color: #b5cfc3;
}

.ce-text[b-2y0hgdpvio] {
    font-size: clamp(16px, 4vw, 18px);
    font-weight: 600;
    color: var(--text, #000);
    text-align: center;
    line-height: 1.5;
    margin: 0 0 24px;
}

.ce-actions[b-2y0hgdpvio] {
    width: 100%;
    max-width: 480px;
}

/* ---- Responsive: small phones ---- */
@media (max-width: 374px) {
    .ce-icon[b-2y0hgdpvio] { font-size: 80px; }
    .ce-icon-wrap[b-2y0hgdpvio] { padding: 16px 0 20px; }
    .ce-text[b-2y0hgdpvio] { font-size: 14px; }
}
/* /Pages/Auth/Register.razor.rz.scp.css */
/* Password strength + rules now live in PasswordStrengthMeter.razor.css */
/* /Pages/Auth/ResetPassword.razor.rz.scp.css */
/* Password strength + rules now live in PasswordStrengthMeter.razor.css */
/* /Pages/Auth/UpdatePasswordDialog.razor.rz.scp.css */
/* Password strength bar + rules checklist live in PasswordStrengthMeter.razor.css */

/* Intro requirements list (before typing) */
.upd-rules-intro[b-zfcsnhlpbr] {
    text-align: left;
    margin: 0.5rem 0 1rem;
    padding-left: 1.2rem;
    list-style: disc;
    color: rgba(255,255,255,0.75);
    font-size: 0.85rem;
}

.upd-rules-intro li[b-zfcsnhlpbr] {
    display: list-item;
    margin-bottom: 0.3rem;
}
.upd-rule-fail i[b-zfcsnhlpbr] {
    color: #e74c3c;
}

/* ===== Overflow fix: scrollable content on tall-form devices (ACCT-05) ===== */

/* Override the shared .gp-dialog rule that sets overflow:hidden on mud-dialog-content */
[b-zfcsnhlpbr] .mud-dialog-content {
    overflow-y: auto !important;
}

/* Constrain the content wrapper so it scrolls rather than overflowing the viewport */
.gp-dialog-content[b-zfcsnhlpbr] {
    max-height: min(80vh, calc(100dvh - 80px));
    overflow-y: auto;
    box-sizing: border-box;
    /* padding preserved from shared CSS: 32px 24px 28px */
}
/* /Pages/Dashboard/AccountManagement.razor.rz.scp.css */
/* ===== Account Management page ===== */

/* Constraint wrapper — matches pf-form / st-form pattern */
.am-form[b-m94shm5g1a] {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 480px;
    gap: 12px;
}

/* Section card */
.am-section[b-m94shm5g1a] {
    width: 100%;
    padding: 20px;
    background: #fff;
    border-radius: 12px;
    border: 1px solid #e8ece9;
}

/* Danger zone card */
.am-section-danger[b-m94shm5g1a] {
    border-color: #f5c6cb;
    background: #fff8f8;
}

/* Section headings */
.am-section-title[b-m94shm5g1a] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-size: 17px;
    font-weight: 700;
    color: var(--text, #000);
    margin: 0 0 6px;
}

.am-section-danger .am-section-title[b-m94shm5g1a] {
    color: #b00020;
}

/* Description text */
.am-section-desc[b-m94shm5g1a] {
    font-size: 14px;
    font-weight: 400;
    color: var(--muted, #848484);
    margin: 0 0 16px;
    line-height: 1.5;
}

/* Button overrides — same width as their containing section */
.am-btn-secondary[b-m94shm5g1a] {
    background: #6b6b6b;
    margin-top: 0;
}

.am-btn-secondary:hover:not(:disabled)[b-m94shm5g1a] {
    background: #555;
}

.am-danger-icon[b-m94shm5g1a] {
    font-size: 15px;
    color: #b00020;
    margin-right: 4px;
}

.am-btn-danger[b-m94shm5g1a] {
    background-color: #c0392b;
    border-color: #c0392b;
    color: #ffffff;
    margin-top: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.am-btn-danger-icon[b-m94shm5g1a] {
    font-size: 16px;
}

.am-btn-danger:hover:not(:disabled)[b-m94shm5g1a] {
    background-color: #a93226;
    border-color: #a93226;
}

.am-btn-secondary:disabled[b-m94shm5g1a],
.am-btn-danger:disabled[b-m94shm5g1a] {
    background: var(--btn-disabled, #c2d7cc);
    cursor: not-allowed;
}

/* ===== Responsive: small phones ===== */
@media (max-width: 374px) {
    .am-section[b-m94shm5g1a] { padding: 16px; }
    .am-section-title[b-m94shm5g1a] { font-size: 15px; }
    .am-section-desc[b-m94shm5g1a] { font-size: 13px; }
}

/* ===== Responsive: tablet ===== */
@media (min-width: 768px) {
    .am-form[b-m94shm5g1a] { max-width: 520px; }
}

/* ===== Responsive: desktop ===== */
@media (min-width: 1024px) {
    .am-form[b-m94shm5g1a] { max-width: 520px; }
}
/* /Pages/Dashboard/AddFunds.razor.rz.scp.css */
/* ===== Add Funds page ===== */
/* Layout: .gp-page */

.af-logo[b-s3hd1mo4sx] {
    width: 120px;
    height: 120px;
    margin-bottom: 16px;
}
.af-logo-img[b-s3hd1mo4sx] {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.af-title[b-s3hd1mo4sx] {
    color: var(--brand, #4A8A68);
    margin: 0 0 8px;
    line-height: 1.2;
}

.af-subtitle[b-s3hd1mo4sx] {
    font-size: clamp(14px, 3.5vw, 16px);
    color: var(--muted, #848484);
    text-align: center;
    margin: 0 0 24px;
    line-height: 1.4;
}

/* ---- Form ---- */
.af-form[b-s3hd1mo4sx] {
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 100%;
    max-width: 480px;
}

.af-field[b-s3hd1mo4sx] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.af-label[b-s3hd1mo4sx] {
    font-weight: 700;
    font-size: 15px;
    color: var(--text, #000);
}

/* ---- Select dropdown ---- */
.af-select-wrap[b-s3hd1mo4sx] {
    position: relative;
    width: 100%;
}
.af-select[b-s3hd1mo4sx] {
    width: 100%;
    appearance: none;
    -webkit-appearance: none;
    background: #fff;
    border: 2px solid #86AF99;
    border-radius: 10px;
    padding: 12px 40px 12px 16px;
    font-size: 16px;
    font-family: inherit;
    color: var(--text, #000);
    cursor: pointer;
    outline: none;
}
.af-select:focus[b-s3hd1mo4sx] {
    border-color: var(--brand, #4A8A68);
}
.af-select-icon[b-s3hd1mo4sx] {
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--muted, #848484);
    font-size: 14px;
    pointer-events: none;
}

/* ---- Amount stepper ---- */
.af-stepper[b-s3hd1mo4sx] {
    display: flex;
    align-items: center;
    background: #fff;
    border: 2px solid #86AF99;
    border-radius: 10px;
    overflow: hidden;
}

.af-stepper-btn[b-s3hd1mo4sx] {
    flex: 0 0 56px;
    height: 52px;
    border: none;
    background: #f0f7f3;
    color: var(--brand, #4A8A68);
    font-size: 18px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 100ms ease;
}

.af-stepper-btn:hover:not(:disabled)[b-s3hd1mo4sx] {
    background: #dff0e8;
}

.af-stepper-btn:active:not(:disabled)[b-s3hd1mo4sx] {
    background: #c8e6d4;
}

.af-stepper-btn:disabled[b-s3hd1mo4sx] {
    color: #ccc;
    cursor: not-allowed;
}

.af-stepper-value[b-s3hd1mo4sx] {
    flex: 1;
    text-align: center;
    font-size: clamp(20px, 5vw, 26px);
    font-weight: 700;
    color: var(--text, #000);
    padding: 0 8px;
    user-select: none;
}

.af-stepper-range[b-s3hd1mo4sx] {
    font-size: 12px;
    color: var(--muted, #848484);
    text-align: center;
    margin: 4px 0 0;
}

/* ---- Stripe Card Element container ---- */
.af-card-element-wrap[b-s3hd1mo4sx] {
    background: #fff;
    border: 2px solid #86AF99;
    border-radius: 10px;
    padding: 14px 16px;
    min-height: 44px;
}
.af-card-element[b-s3hd1mo4sx] {
    /* Stripe injects its iframe here */
}

/* ---- Trust badges ---- */
.af-trust[b-s3hd1mo4sx] {
    display: flex;
    justify-content: center;
    padding: 4px 0;
}
.af-trust-img[b-s3hd1mo4sx] {
    max-width: 100%;
    height: auto;
    object-fit: contain;
}

/* ---- Responsive: small phones ---- */
@media (max-width: 374px) {
    .af-logo[b-s3hd1mo4sx] { width: 90px; height: 90px; }
    .af-select[b-s3hd1mo4sx] { padding: 10px 36px 10px 12px; font-size: 14px; }
    .af-card-element-wrap[b-s3hd1mo4sx] { padding: 10px 12px; }
    .af-label[b-s3hd1mo4sx] { font-size: 14px; }
}

/* ---- Responsive: tablet ---- */
@media (min-width: 768px) {
    .af-logo[b-s3hd1mo4sx] { width: 120px; height: 120px; }
    .af-form[b-s3hd1mo4sx] { max-width: 520px; }
    .af-select[b-s3hd1mo4sx] { font-size: 16px; padding: 12px 40px 12px 16px; }
}

/* ---- Responsive: desktop ---- */
@media (min-width: 1024px) {
    .af-form[b-s3hd1mo4sx] { max-width: 520px; }
    .af-select[b-s3hd1mo4sx] { font-size: 15px; padding: 10px 36px 10px 14px; }
    .af-label[b-s3hd1mo4sx] { font-size: 14px; }
    .af-card-element-wrap[b-s3hd1mo4sx] { padding: 10px 14px; min-height: 38px; }
}
/* /Pages/Dashboard/Balance.razor.rz.scp.css */
/* ===== Balance (Your Share) page ===== */
/* Layout: .gp-page | Loading: .gp-loading | Title: .gp-page-title */
/* Table:  .gp-table-wrap .gp-table .gp-th .gp-row .gp-td            */

.bal-title[b-12xwk3ke2w] {
    font-size: clamp(22px, 5vw, 30px);
    margin-bottom: 0;
}

.bal-subtitle[b-12xwk3ke2w] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 700;
    font-size: clamp(18px, 4.5vw, 26px);
    color: var(--text, #000);
    text-align: center;
    margin: 4px 0 20px;
}

/* ---- Cells ---- */
.bal-td[b-12xwk3ke2w] {
    font-weight: 600;
}

/* ---- Date + ref stacked ---- */
.bal-td-date[b-12xwk3ke2w] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.bal-date[b-12xwk3ke2w] {
    font-weight: 600;
    white-space: nowrap;
}
.bal-ref[b-12xwk3ke2w] {
    font-size: 12px;
    font-weight: 500;
    color: var(--muted, #848484);
    white-space: nowrap;
}

/* ---- In/Out values ---- */
.bal-positive[b-12xwk3ke2w] {
    color: var(--text, #000);
}
.bal-negative[b-12xwk3ke2w] {
    color: #dc3545;
}
.bal-desc[b-12xwk3ke2w] {
    display: block;
    font-size: 12px;
    font-weight: 500;
    color: var(--muted, #848484);
    margin-top: 2px;
}

/* Keep numeric columns compact and aligned on narrow screens */
.bal-positive[b-12xwk3ke2w],
.bal-negative[b-12xwk3ke2w],
.gp-td-right[b-12xwk3ke2w] {
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

/* ---- Responsive: phones (default range covers most devices) ---- */
@media (max-width: 480px) {
    .gp-page[b-12xwk3ke2w] { padding: 12px 10px 100px; }
    .gp-table[b-12xwk3ke2w] { table-layout: fixed; width: 100%; }
    .gp-td[b-12xwk3ke2w], .gp-th[b-12xwk3ke2w] { padding-left: 6px; padding-right: 6px; }
    .bal-td[b-12xwk3ke2w] { font-size: 13px; }
    .bal-ref[b-12xwk3ke2w], .bal-desc[b-12xwk3ke2w] { font-size: 11px; }
    .bal-date[b-12xwk3ke2w] { white-space: normal; }
}

/* ---- Responsive: small phones ---- */
@media (max-width: 374px) {
    .gp-page[b-12xwk3ke2w] { padding: 12px 6px 100px; }
    .gp-td[b-12xwk3ke2w], .gp-th[b-12xwk3ke2w] { padding-left: 4px; padding-right: 4px; }
    .bal-td[b-12xwk3ke2w] { font-size: 11px; }
    .bal-ref[b-12xwk3ke2w] { font-size: 10px; }
    .bal-desc[b-12xwk3ke2w] { font-size: 10px; }
}

/* ---- Responsive: tablet ---- */
@media (min-width: 768px) {
    .bal-title[b-12xwk3ke2w] { font-size: 30px; }
    .bal-subtitle[b-12xwk3ke2w] { font-size: 26px; }
}
/* /Pages/Dashboard/BrandBusiness.razor.rz.scp.css */
/* ===== Brand & Describe Your Business page ===== */

.bb-title[b-lj11gl688h] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 700;
    font-size: clamp(22px, 5vw, 28px);
    color: var(--text, #000);
    text-align: center;
    margin: 0 0 20px;
    line-height: 1.3;
}

/* ---- Avatar / badge upload ---- */
.bb-avatar-section[b-lj11gl688h] {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: 12px;
    margin-bottom: 24px;
}

.bb-avatar-circle[b-lj11gl688h] {
    width: 140px;
    height: 140px;
    border-radius: 50%;
    border: 2px dashed #86AF99;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    overflow: hidden;
    background: #fff;
    flex-shrink: 0;
}

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

.bb-avatar-placeholder[b-lj11gl688h] {
    font-size: 14px;
    font-weight: 600;
    color: var(--muted, #848484);
    text-align: center;
    line-height: 1.3;
}

.bb-avatar-hint[b-lj11gl688h] {
    font-size: 12px;
    font-weight: 500;
    color: var(--muted, #848484);
    text-align: center;
    line-height: 1.3;
    margin-top: 4px;
}

.bb-avatar-delete[b-lj11gl688h] {
    background: none;
    border: none;
    cursor: pointer;
    padding: 8px;
    color: var(--muted, #848484);
    font-size: 22px;
    width: 40px;
    height: 40px;
    margin-top: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.bb-avatar-delete:hover[b-lj11gl688h] {
    color: #dc3545;
}

/* ---- Form ---- */
.bb-form[b-lj11gl688h] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: 100%;
    max-width: 480px;
}

/* ---- Field (label + input) ---- */
.bb-field[b-lj11gl688h] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.bb-label[b-lj11gl688h] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 700;
    font-size: clamp(16px, 3.8vw, 18px);
    color: var(--text, #000);
}

/* ---- Input wrapper ---- */
.bb-input-wrap[b-lj11gl688h] {
    display: flex;
    align-items: center;
    background: #fff;
    border: 2px solid #86AF99;
    border-radius: 10px;
    overflow: hidden;
    width: 100%;
}

.bb-input[b-lj11gl688h] {
    flex: 1;
    border: none;
    outline: none;
    background: transparent;
    padding: 12px 16px;
    font-size: 16px;
    color: var(--text, #000);
    font-family: inherit;
    width: 100%;
}

.bb-input[b-lj11gl688h]::placeholder {
    color: var(--muted, #848484);
}

/* ---- Textarea ---- */
.bb-textarea-wrap[b-lj11gl688h] {
    align-items: stretch;
}

.bb-textarea[b-lj11gl688h] {
    min-height: 140px;
    resize: vertical;
    line-height: 1.5;
}

/* ---- Select dropdown ---- */
.bb-select-wrap[b-lj11gl688h] {
    position: relative;
}

.bb-select[b-lj11gl688h] {
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
    padding-right: 44px;
}

.bb-select-chevron[b-lj11gl688h] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 14px 0 0;
    color: var(--muted, #848484);
    font-size: 14px;
    pointer-events: none;
    flex-shrink: 0;
}

/* ---- Action buttons ---- */
.bb-preview-btn[b-lj11gl688h] {
    width: 100%;
    margin-top: 8px;
}

.bb-cancel-btn[b-lj11gl688h] {
    width: 100%;
    max-width: 100%;
}

/* ---- Responsive: small phones ---- */
@media (max-width: 374px) {
    .bb-avatar-circle[b-lj11gl688h] { width: 110px; height: 110px; }
    .bb-avatar-placeholder[b-lj11gl688h] { font-size: 12px; }
    .bb-avatar-hint[b-lj11gl688h] { font-size: 11px; }
    .bb-form[b-lj11gl688h] { gap: 12px; }
    .bb-input[b-lj11gl688h] { font-size: 14px; padding: 10px 12px; }
    .bb-textarea[b-lj11gl688h] { min-height: 110px; }
}

/* ---- Responsive: tablet ---- */
@media (min-width: 768px) {
    .bb-avatar-circle[b-lj11gl688h] { width: 160px; height: 160px; }
    .bb-form[b-lj11gl688h] { max-width: 520px; }
    .bb-input[b-lj11gl688h] { font-size: 16px; padding: 12px 16px; }
    .bb-label[b-lj11gl688h] { font-size: 16px; }
}

/* ---- Responsive: desktop ---- */
@media (min-width: 1024px) {
    .bb-form[b-lj11gl688h] { max-width: 560px; }
    .bb-avatar-circle[b-lj11gl688h] { width: 160px; height: 160px; }
    .bb-input[b-lj11gl688h] { font-size: 15px; padding: 10px 14px; }
    .bb-label[b-lj11gl688h] { font-size: 15px; }
    .bb-textarea[b-lj11gl688h] { min-height: 120px; }
}
/* /Pages/Dashboard/BrandPreview.razor.rz.scp.css */
/* ===== Brand Preview page ===== */

.bp-title[b-xil7cao6ck] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 700;
    font-size: clamp(22px, 5vw, 28px);
    color: var(--text, #000);
    text-align: center;
    margin: 0 0 24px;
    line-height: 1.3;
}

/* ---- Badge ---- */
.bp-badge-wrap[b-xil7cao6ck] {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 32px;
}

.bp-badge-img[b-xil7cao6ck] {
    width: 220px;
    height: 220px;
    object-fit: contain;
}

/* ---- Actions ---- */
.bp-actions[b-xil7cao6ck] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: 100%;
    max-width: 480px;
}

.bp-accept-btn[b-xil7cao6ck] {
    width: 100%;
}

.bp-cancel-btn[b-xil7cao6ck] {
    width: 100%;
    max-width: 100%;
}

/* ---- Responsive: small phones ---- */
@media (max-width: 374px) {
    .bp-badge-img[b-xil7cao6ck] { width: 180px; height: 180px; }
    .bp-actions[b-xil7cao6ck] { gap: 12px; }
}

/* ---- Responsive: tablet ---- */
@media (min-width: 768px) {
    .bp-badge-img[b-xil7cao6ck] { width: 260px; height: 260px; }
    .bp-actions[b-xil7cao6ck] { max-width: 520px; }
}

/* ---- Responsive: desktop ---- */
@media (min-width: 1024px) {
    .bp-badge-img[b-xil7cao6ck] { width: 300px; height: 300px; }
    .bp-actions[b-xil7cao6ck] { max-width: 560px; }
}
/* /Pages/Dashboard/CashLimit24hDialog.razor.rz.scp.css */
/* ===== Cash Redemption Limit dialog (24h) ===== */

[b-d3jcw4xnkr] .crl-dialog-content {
    padding-top: 28px !important;
}

[b-d3jcw4xnkr] .crl-icon-wrap {
    display: flex;
    justify-content: center;
    margin-bottom: 16px;
}

[b-d3jcw4xnkr] .crl-icon {
    font-size: 42px;
    color: #dc3545;
}
/* /Pages/Dashboard/CashLimit30dDialog.razor.rz.scp.css */
/* ===== Cash Redemption Limit dialog (30d) ===== */

[b-bm7is75wzw] .crl-dialog-content {
    padding-top: 28px !important;
}

[b-bm7is75wzw] .crl-icon-wrap {
    display: flex;
    justify-content: center;
    margin-bottom: 16px;
}

[b-bm7is75wzw] .crl-icon {
    font-size: 42px;
    color: #dc3545;
}
/* /Pages/Dashboard/Chat/AddContact.razor.rz.scp.css */
.add-contact-page[b-ymtgry9jhg] {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    background: #F6F8F7;
}

/* ── Header ── */
.add-contact-header[b-ymtgry9jhg] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px var(--gap, 16px);
    background: #fff;
    border-bottom: 1px solid #f0f0f0;
    position: sticky;
    top: 0;
    z-index: 10;
}

.add-contact-header-actions[b-ymtgry9jhg] {
    display: flex;
    gap: 4px;
}

/* ── Title ── */
.add-contact-title[b-ymtgry9jhg] {
    font-size: 1.4rem;
    font-weight: 700;
    text-align: center;
    margin: 8px 0 20px;
    color: #111;
}

/* ── Form ── */
.add-contact-form[b-ymtgry9jhg] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 16px var(--gap, 16px) 0;
    background: #F6F8F7;
}

.add-contact-field[b-ymtgry9jhg] {
    position: relative;
    background: #fff;
    border: 1.5px solid #c8ddd4;
    border-radius: 10px;
    display: flex;
    align-items: flex-start;
    padding: 0 12px;
    transition: border-color 0.15s;
}

    .add-contact-field:focus-within[b-ymtgry9jhg] {
        border-color: var(--brand, #4A8A68);
    }

    .add-contact-field--error[b-ymtgry9jhg] {
        border-color: #e53935;
    }

    .add-contact-field--notes[b-ymtgry9jhg] {
        align-items: stretch;
        padding: 8px 12px;
    }

.add-contact-required[b-ymtgry9jhg] {
    color: #e53935;
    font-size: 0.85rem;
    padding-top: 14px;
    margin-right: 4px;
    line-height: 1;
    flex-shrink: 0;
}

.add-contact-input[b-ymtgry9jhg] {
    flex: 1;
    border: none;
    outline: none;
    background: transparent;
    font-size: 1rem;
    color: #222;
    padding: 14px 0;
    width: 100%;
}

    .add-contact-input[b-ymtgry9jhg]::placeholder {
        color: #aaa;
    }

.add-contact-notes[b-ymtgry9jhg] {
    resize: none;
    min-height: 110px;
    padding: 6px 0;
    line-height: 1.5;
}

/* ── Error / success ── */
.add-contact-error[b-ymtgry9jhg] {
    color: #c62828;
    font-size: 0.85rem;
    text-align: center;
    padding: 8px 16px 0;
}

.add-contact-success[b-ymtgry9jhg] {
    color: var(--brand-strong, #136242);
    font-size: 0.9rem;
    text-align: center;
    padding: 8px 16px 0;
    font-weight: 600;
}

/* ── CTA ── */
.add-contact-cta[b-ymtgry9jhg] {
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 20px 16px 32px;
}

.add-contact-btn[b-ymtgry9jhg] {
    width: 100%;
    padding: 16px;
    border: none;
    border-radius: 40px;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: opacity 0.15s;
}

    .add-contact-btn:disabled[b-ymtgry9jhg] {
        opacity: 0.6;
        cursor: not-allowed;
    }

.add-contact-btn--submit[b-ymtgry9jhg] {
    background: var(--brand, #4A8A68);
    color: #fff;
}

.add-contact-btn--cancel[b-ymtgry9jhg] {
    background: #555;
    color: #fff;
}
/* /Pages/Dashboard/Chat/BlockUser.razor.rz.scp.css */
.block-user-page[b-pc0kxd46qe] {
    display: flex;
    flex-direction: column;
    background: #fff;
    min-height: 100%;
    padding: 0;
}

.block-user-body[b-pc0kxd46qe] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 24px var(--gap, 16px) 32px;
    gap: 20px;
}

.block-user-title[b-pc0kxd46qe] {
    font-size: 1.4rem;
    font-weight: 700;
    color: #000;
    margin: 0;
    text-align: center;
}

.block-user-toggle-row[b-pc0kxd46qe] {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    max-width: 440px;
    font-size: 1rem;
    font-weight: 500;
    cursor: pointer;
}

.block-user-toggle-ban[b-pc0kxd46qe] {
    font-size: 1.3rem;
    color: #e33;
    flex-shrink: 0;
}

.block-user-toggle-check[b-pc0kxd46qe] {
    margin-left: auto;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    border: 2px solid #ccc;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #ccc;
    flex-shrink: 0;
    transition: background 0.2s, border-color 0.2s, color 0.2s;
}

.block-user-toggle-check--on[b-pc0kxd46qe] {
    background: var(--brand, #4A8A68);
    border-color: var(--brand, #4A8A68);
    color: #fff;
}

.block-user-reasons[b-pc0kxd46qe] {
    width: 100%;
    max-width: 440px;
}

.block-user-reasons-label[b-pc0kxd46qe] {
    font-size: 1rem;
    font-weight: 700;
    color: #000;
    margin: 0 0 10px;
    text-align: center;
}

.block-reason-row[b-pc0kxd46qe] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 0;
    font-size: 0.95rem;
    cursor: pointer;
}

.block-reason-row input[b-pc0kxd46qe] {
    accent-color: var(--brand);
    width: 20px;
    height: 20px;
    cursor: pointer;
    flex-shrink: 0;
}

.block-details-input[b-pc0kxd46qe] {
    width: 100%;
    max-width: 440px;
    min-height: 90px;
    border: 1.5px solid #e0e0e0;
    border-radius: 10px;
    padding: 12px;
    font-size: 0.9rem;
    resize: none;
    outline: none;
    color: #444;
    box-sizing: border-box;
}

.block-details-input:focus[b-pc0kxd46qe] {
    border-color: var(--brand);
}

.block-user-buttons[b-pc0kxd46qe] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    width: 100%;
    max-width: 440px;
}

.block-btn-cancel[b-pc0kxd46qe] {
    width: 100%;
    padding: 16px;
    border: none;
    border-radius: 40px;
    background: #555;
    color: #fff;
    cursor: pointer;
    font-size: 1rem;
    font-weight: 600;
}

.block-btn-cancel:hover[b-pc0kxd46qe] {
    background: #444;
}

.block-btn-confirm[b-pc0kxd46qe] {
    width: 100%;
    padding: 16px;
    border: none;
    border-radius: 40px;
    background: var(--brand, #4A8A68);
    color: #fff;
    cursor: pointer;
    font-size: 1rem;
    font-weight: 600;
}

.block-btn-confirm:hover[b-pc0kxd46qe] {
    background: var(--brand-strong, #136242);
}

.block-btn-confirm:disabled[b-pc0kxd46qe] {
    background: #ccc;
    cursor: not-allowed;
}
/* /Pages/Dashboard/Chat/ChatContactRequest.razor.rz.scp.css */
.chat-req-page[b-mvczlcm1et] {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    background: #F6F8F7;
    padding: 0;
}

/* ── Header ── */
.chat-req-header[b-mvczlcm1et] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px var(--gap, 16px);
    background: #fff;
    border-bottom: 1px solid #f0f0f0;
    position: sticky;
    top: 0;
    z-index: 10;
}

.chat-req-header-actions[b-mvczlcm1et] {
    display: flex;
    gap: 4px;
}

/* ── Profile card ── */
.chat-req-profile[b-mvczlcm1et] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 24px 16px 16px;
    gap: 12px;
}

.chat-req-avatar-wrap[b-mvczlcm1et] {
    position: relative;
    width: 110px;
    height: 110px;
}

.chat-req-avatar[b-mvczlcm1et] {
    width: 110px;
    height: 110px;
    border-radius: 50%;
    object-fit: cover;
}

.chat-req-avatar--initials[b-mvczlcm1et] {
    width: 110px;
    height: 110px;
    border-radius: 50%;
    background: var(--accent, #FF700D);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    font-weight: 700;
    color: #fff;
}

.chat-req-status-dot[b-mvczlcm1et] {
    position: absolute;
    bottom: 6px;
    left: 6px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    border: 3px solid #f0f0f0;
}

.chat-req-name[b-mvczlcm1et] {
    font-size: 1.4rem;
    font-weight: 700;
    margin: 0;
    color: #111;
}

/* ── Action row (Block / Mute) ── */
.chat-req-actions-row[b-mvczlcm1et] {
    display: flex;
    gap: 32px;
    margin-top: 4px;
}

.chat-req-action-btn[b-mvczlcm1et] {
    display: flex;
    align-items: center;
    gap: 6px;
    background: none;
    border: none;
    cursor: pointer;
    font-size: 0.9rem;
    color: #444;
    padding: 4px 8px;
}

.chat-req-action-icon--red[b-mvczlcm1et] {
    color: #e53935;
    font-size: 1.1rem;
}

.chat-req-action-icon--muted[b-mvczlcm1et] {
    color: #666;
    font-size: 1.1rem;
}

/* ── Message box ── */
.chat-req-message-box[b-mvczlcm1et] {
    margin: 16px;
    background: #fff;
    border-radius: 14px;
    border: 1.5px solid var(--brand, #4A8A68);
    padding: 20px 24px;
    text-align: center;
    font-size: 1rem;
    color: #222;
    line-height: 1.5;
}

/* ── CTA buttons ── */
.chat-req-cta[b-mvczlcm1et] {
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 8px 16px 24px;
}

/* .chat-req-btn, --grant, --decline → global CSS (growthpoints-custom.css) */

.chat-req-btn--close[b-mvczlcm1et] {
    background: #555;
    color: #fff;
}

/* ── Error ── */
.chat-req-error[b-mvczlcm1et] {
    color: #c62828;
    text-align: center;
    font-size: 0.85rem;
    padding: 0 16px 12px;
}

/* ── Spinner → global CSS */
/* ── Overlay, modal, buttons → global CSS (growthpoints-custom.css) */
/* /Pages/Dashboard/Chat/ChatConversation.razor.rz.scp.css */
.chat-conv-page[b-4pg62huj84] {
    display: flex;
    flex-direction: column;
    height: 100%;
    background: #fff;
    padding: 0;
    overflow: hidden;
}

/* -- Typing Indicator ------------------------------------------ */

.chat-typing-indicator[b-4pg62huj84] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 16px;
    background: #fff;
    flex-shrink: 0;
}

.chat-typing-label[b-4pg62huj84] {
    font-size: 0.8rem;
    color: var(--muted, #848484);
}

.chat-typing-dots[b-4pg62huj84] {
    display: flex;
    align-items: center;
    gap: 3px;
}

.chat-typing-dots span[b-4pg62huj84] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--brand, #4A8A68);
    animation: typing-bounce-b-4pg62huj84 1.2s infinite ease-in-out;
}

.chat-typing-dots span:nth-child(2)[b-4pg62huj84] { animation-delay: 0.2s; }
.chat-typing-dots span:nth-child(3)[b-4pg62huj84] { animation-delay: 0.4s; }

@keyframes typing-bounce-b-4pg62huj84 {
    0%, 80%, 100% { transform: scale(0.7); opacity: 0.5; }
    40%           { transform: scale(1);   opacity: 1;   }
}

/* ── Load More ───────────────────────────────────────────────── */

.chat-load-more-wrap[b-4pg62huj84] {
    display: flex;
    justify-content: center;
    padding: 8px 0 12px;
}

.chat-load-more-btn[b-4pg62huj84] {
    background: rgba(255,255,255,0.85);
    border: 1px solid #d0d0d0;
    border-radius: 20px;
    padding: 6px 20px;
    font-size: 0.85rem;
    color: var(--brand, #4A8A68);
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 8px;
    transition: background 0.15s;
}

.chat-load-more-btn:hover[b-4pg62huj84] {
    background: #fff;
}

.chat-load-more-btn:disabled[b-4pg62huj84] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* ── Empty conversation state ────────────────────────────────── */

.chat-empty-messages[b-4pg62huj84] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    color: var(--muted, #848484);
    flex: 1;
    padding: 60px 20px;
    font-size: 0.95rem;
}

.chat-empty-messages i[b-4pg62huj84] {
    font-size: 2.5rem;
}

.chat-conv-header[b-4pg62huj84] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px var(--gap);
    border-bottom: 1px solid #f0f0f0;
    background: #fff;
    flex-shrink: 0;
    z-index: 10;
}

.chat-conv-header-info[b-4pg62huj84] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 1;
    cursor: pointer;
    min-width: 0;
}

.chat-conv-avatar[b-4pg62huj84] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
}

.chat-conv-avatar--initials[b-4pg62huj84] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 0.9rem;
    color: #fff;
    background: var(--brand);
    flex-shrink: 0;
}

.chat-conv-header-text[b-4pg62huj84] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.chat-conv-name[b-4pg62huj84] {
    font-weight: 700;
    font-size: 0.95rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.chat-conv-status[b-4pg62huj84] {
    font-size: 0.78rem;
    color: var(--muted);
}

.chat-conv-status.online[b-4pg62huj84] {
    color: #17CD20;
}

.chat-conv-actions[b-4pg62huj84] {
    display: flex;
    gap: 16px;
    padding: 8px var(--gap);
    border-bottom: 1px solid #f0f0f0;
    background: #fafafa;
}

.chat-action-pill[b-4pg62huj84] {
    display: flex;
    align-items: center;
    gap: 6px;
    background: none;
    border: none;
    cursor: pointer;
    font-size: 0.88rem;
    color: #333;
    padding: 4px 0;
}

.chat-action-pill i[b-4pg62huj84] {
    color: var(--muted);
}

.chat-action-pill.active i[b-4pg62huj84] {
    color: var(--accent);
}

.chat-messages-area[b-4pg62huj84] {
	background-size: 400px;
	flex: 1 1 0%;
	min-height: 0;
	overflow-y: auto;
	overflow-x: hidden;
	padding: 16px var(--gap);
	background-color: #e8ede9;
	background-image: url("/images/chat/chatBackgrountPattern.png");
	background-repeat: repeat;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.chat-messages-area *[b-4pg62huj84] {
	max-width: 100%;
	overflow-wrap: anywhere;
}
	gap: 8px;[b-4pg62huj84]
}

.chat-loading[b-4pg62huj84] {
    display: flex;
    justify-content: center;
    padding: 40px;
}

.chat-bubble-wrap[b-4pg62huj84] {
    display: flex;
    align-items: flex-end;
    gap: 8px;
    max-width: 80%;
}

.chat-bubble-wrap.own[b-4pg62huj84] {
    align-self: flex-end;
    flex-direction: row-reverse;
}

.chat-bubble-wrap.other[b-4pg62huj84] {
    align-self: flex-start;
}

.chat-bubble-avatar[b-4pg62huj84] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
}

.chat-bubble[b-4pg62huj84] {
    border-radius: 16px;
    padding: 10px 14px;
    max-width: 100%;
    word-break: break-word;
}

.chat-bubble--own[b-4pg62huj84] {
    background: #d9f7be;
    border-bottom-right-radius: 4px;
}

.chat-bubble--other[b-4pg62huj84] {
    background: #fff;
    border-bottom-left-radius: 4px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08);
}

.chat-reply-preview[b-4pg62huj84] {
    font-size: 0.8rem;
    color: var(--muted);
    border-left: 3px solid var(--brand);
    padding-left: 8px;
    margin-bottom: 6px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 200px;
}

.chat-bubble-text[b-4pg62huj84] {
    font-size: 0.95rem;
    color: #000;
    line-height: 1.4;
}

.chat-bubble-meta[b-4pg62huj84] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 4px;
    margin-top: 4px;
}

.chat-bubble-time[b-4pg62huj84] {
    font-size: 0.72rem;
    color: var(--muted);
}

.chat-read-receipt[b-4pg62huj84] {
    font-size: 0.72rem;
    color: var(--muted);
}

.chat-read-receipt.read[b-4pg62huj84] {
    color: #3DC518;
}

.chat-reactions[b-4pg62huj84] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    margin-top: 6px;
}

.chat-reaction[b-4pg62huj84] {
    background: #f0f0f0;
    border-radius: 12px;
    padding: 2px 7px;
    font-size: 0.82rem;
    cursor: pointer;
    transition: background 0.15s;
}

.chat-reaction.reacted[b-4pg62huj84] {
    background: #d0e8ff;
}

.chat-input-bar[b-4pg62huj84] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px var(--gap);
    padding-bottom: calc(10px + env(safe-area-inset-bottom, 0px));
    background: #fff;
    border-top: 1px solid #f0f0f0;
    flex-shrink: 0;
}

/* Floating emoji quick-bar above the input row */
.chat-input-emoji-bar[b-4pg62huj84] {
    padding: 6px var(--gap);
    background: #fff;
    border-top: 1px solid #f0f0f0;
    display: flex;
    align-items: center;
}

/* Full emoji picker panel anchored above input bar */
.chat-input-emoji-panel[b-4pg62huj84] {
    padding: 8px var(--gap);
    background: #fff;
    border-top: 1px solid #f0f0f0;
    display: flex;
    justify-content: flex-start;
    z-index: 71;
    position: relative;
}

.chat-input-emoji-backdrop[b-4pg62huj84] {
    position: fixed;
    inset: 0;
    z-index: 70;
}

.chat-emoji-btn[b-4pg62huj84] {
    font-size: 1.3rem;
    color: var(--muted);
}

.chat-text-input[b-4pg62huj84] {
    flex: 1;
    border: 1.5px solid #e0e0e0;
    border-radius: 24px;
    padding: 10px 16px;
    font-size: 0.95rem;
    outline: none;
    color: #000;
    background: #f9f9f9;
}

.chat-text-input:focus[b-4pg62huj84] {
    border-color: var(--brand);
    background: #fff;
}

.chat-send-btn[b-4pg62huj84] {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: var(--brand);
    border: none;
    color: #fff;
    font-size: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    flex-shrink: 0;
    transition: background 0.15s;
}

.chat-send-btn:hover[b-4pg62huj84] {
    background: var(--brand-strong);
}

.chat-send-btn--cancel[b-4pg62huj84] {
    background: #848484;
}

.chat-send-btn--cancel:hover[b-4pg62huj84] {
    background: #555;
}

/* ── Toast notification ──────────────────────────────────────── */

.chat-toast[b-4pg62huj84] {
    position: fixed;
    bottom: 90px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    border-radius: 24px;
    font-size: 0.9rem;
    font-weight: 500;
    box-shadow: 0 4px 16px rgba(0,0,0,0.18);
    z-index: 200;
    white-space: nowrap;
    animation: toast-in-b-4pg62huj84 0.2s ease;
}

.chat-toast--success[b-4pg62huj84] {
    background: var(--brand, #4A8A68);
    color: #fff;
}

.chat-toast--error[b-4pg62huj84] {
    background: #e33;
    color: #fff;
}

@keyframes toast-in-b-4pg62huj84 {
    from { opacity: 0; transform: translateX(-50%) translateY(12px); }
    to   { opacity: 1; transform: translateX(-50%) translateY(0); }
}

/* ── Reply bar (above input) ─────────────────────────────────── */

.chat-reply-bar[b-4pg62huj84] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px var(--gap);
    background: #f0faf2;
    border-top: 1px solid #d8eed8;
    border-left: 4px solid var(--brand);
}

.chat-reply-bar-preview[b-4pg62huj84] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.chat-reply-bar-label[b-4pg62huj84] {
    font-size: 0.75rem;
    color: var(--brand);
    font-weight: 600;
}

.chat-reply-bar-text[b-4pg62huj84] {
    font-size: 0.88rem;
    color: #333;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.chat-send-btn:disabled[b-4pg62huj84] {
    background: #c0c0c0;
    cursor: not-allowed;
}

/* .chat-dropdown-*, .chat-icon-btn--active → global CSS */

/* ── Active paperclip ────────────────────────────────────────── */

/* ── Attach tray ─────────────────────────────────────────────── */

.chat-attach-backdrop[b-4pg62huj84] {
    position: fixed;
    inset: 0;
    z-index: 49;
}

.chat-attach-tray[b-4pg62huj84] {
    display: flex;
    gap: 0;
    padding: 16px var(--gap, 16px) 12px;
    background: #fff;
    border-top: 1px solid #f0f0f0;
    position: relative;
    z-index: 50;
}

.chat-attach-btn[b-4pg62huj84] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    flex: 1;
    cursor: pointer;
    font-size: 0.8rem;
    color: #333;
    -webkit-tap-highlight-color: transparent;
    user-select: none;
}

.chat-attach-icon-wrap[b-4pg62huj84] {
    width: 56px;
    height: 56px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
}

/* ── Attachment bubble styles ────────────────────────────────── */

.chat-bubble-image[b-4pg62huj84] {
    display: block;
    width: 100%;
    max-width: 240px;
    border-radius: 10px;
    margin-top: 6px;
    object-fit: cover;
    cursor: pointer;
}

.chat-bubble-file[b-4pg62huj84] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 6px;
    padding: 8px 12px;
    background: rgba(0,0,0,0.05);
    border-radius: 10px;
    text-decoration: none;
    color: #000;
    font-size: 0.88rem;
    max-width: 220px;
}

.chat-bubble-file-icon[b-4pg62huj84] {
    font-size: 1.2rem;
    flex-shrink: 0;
    color: var(--brand, #4A8A68);
}

.chat-bubble-dl-icon[b-4pg62huj84] {
    font-size: 0.8rem;
    color: var(--muted, #848484);
    margin-left: auto;
}

/* ── In-conversation search header ──────────────────────────── */

.chat-search-header-bar[b-4pg62huj84] {
    gap: 10px;
}

.chat-search-pill[b-4pg62huj84] {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 10px;
    background: #f2f2f7;
    border: 1.5px solid #e0e0e0;
    border-radius: 28px;
    padding: 10px 16px;
}

.chat-search-pill-icon[b-4pg62huj84] {
    font-size: 1rem;
    color: #aaa;
    flex-shrink: 0;
}

.chat-search-pill-input[b-4pg62huj84] {
    flex: 1;
    background: transparent;
    border: none;
    outline: none;
    font-size: 1rem;
    color: #000;
    min-width: 0;
}

.chat-search-pill-input[b-4pg62huj84]::placeholder {
    color: #aaa;
}

.chat-search-clear[b-4pg62huj84] {
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    color: #aaa;
    font-size: 1rem;
    flex-shrink: 0;
    line-height: 1;
}

.chat-search-clear:hover[b-4pg62huj84] {
    color: #555;
}

/* ── Floating nav chevrons ───────────────────────────────────── */

.chat-search-nav[b-4pg62huj84] {
    position: absolute;
    right: 14px;
    bottom: 70px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    z-index: 20;
}

.chat-search-nav-btn[b-4pg62huj84] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(255,255,255,0.92);
    border: 1px solid #ddd;
    box-shadow: 0 2px 8px rgba(0,0,0,0.12);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-size: 0.95rem;
    color: #333;
    transition: background 0.15s;
}

.chat-search-nav-btn:hover[b-4pg62huj84] {
    background: #fff;
}

/* ── Counter bar (replaces input bar during search) ──────────── */

.chat-search-counter-bar[b-4pg62huj84] {
    padding: 14px var(--gap);
    text-align: center;
    font-size: 0.88rem;
    color: var(--muted, #848484);
    background: #fff;
    border-top: 1px solid #f0f0f0;
}

/* ── Not on Frega header subtitle ────────────────────────────── */

/* ── Date separator ──────────────────────────────────────────── */

.chat-date-separator[b-4pg62huj84] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 6px 0;
}

.chat-date-sep-label[b-4pg62huj84] {
    background: rgba(255,255,255,0.75);
    border-radius: 12px;
    padding: 3px 12px;
    font-size: 0.75rem;
    color: #555;
    font-weight: 500;
}

/* ── Unread divider ──────────────────────────────────────────── */

.chat-unread-divider[b-4pg62huj84] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 6px 0;
}

.chat-unread-divider[b-4pg62huj84]::before,
.chat-unread-divider[b-4pg62huj84]::after {
    content: "";
    flex: 1;
    height: 1px;
    background: #43a047;
    opacity: 0.5;
}

.chat-unread-divider span[b-4pg62huj84] {
    font-size: 0.75rem;
    color: #43a047;
    font-weight: 600;
    white-space: nowrap;
}

/* ── Scroll-to-bottom button ─────────────────────────────────── */

.chat-scroll-to-bottom[b-4pg62huj84] {
    position: fixed;
    bottom: 90px;
    right: 20px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #fff;
    border: 1px solid #ddd;
    box-shadow: 0 2px 8px rgba(0,0,0,0.18);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 25;
    font-size: 1rem;
    color: #333;
    transition: background 0.15s;
}

.chat-scroll-to-bottom:hover[b-4pg62huj84] {
    background: #f5f5f5;
}

/* ── Character counter ───────────────────────────────────────── */

.chat-input-wrap[b-4pg62huj84] {
    flex: 1;
    position: relative;
    min-width: 0;
}

.chat-input-wrap .chat-text-input[b-4pg62huj84] {
    width: 100%;
    box-sizing: border-box;
}

.chat-char-count[b-4pg62huj84] {
    position: absolute;
    right: 12px;
    bottom: -17px;
    font-size: 0.68rem;
    color: #bbb;
    pointer-events: none;
    white-space: nowrap;
}

.chat-conv-status--not-on-frega[b-4pg62huj84] {
    font-size: 0.78rem;
    color: var(--muted, #848484);
    font-style: italic;
}

/* ── Not on Frega notice card ────────────────────────────────── */

.chat-not-on-frega-notice[b-4pg62huj84] {
    align-self: center;
    background: #fff;
    border-radius: 14px;
    padding: 28px 24px;
    margin: 24px auto;
    max-width: 320px;
    width: 90%;
    text-align: center;
    box-shadow: 0 2px 12px rgba(0,0,0,0.10);
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.chat-not-on-frega-icon[b-4pg62huj84] {
    font-size: 2.4rem;
    color: #c0392b;
}

.chat-not-on-frega-notice p[b-4pg62huj84] {
    margin: 0;
    font-size: 0.95rem;
    color: #333;
    line-height: 1.5;
}

/* /Pages/Dashboard/Chat/ChatDocuments.razor.rz.scp.css */
.chat-docs-page[b-up8pg54h12] {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    background: #f5f5f5;
    padding: 0;
}

/* ── Contact header ─────────────────────────────────────────── */

.cdocs-contact-avatar[b-up8pg54h12] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    object-fit: cover;
    margin-right: 10px;
    flex-shrink: 0;
}

.cdocs-contact-info[b-up8pg54h12] {
    display: flex;
    flex-direction: column;
    gap: 1px;
    min-width: 0;
}

.cdocs-contact-name[b-up8pg54h12] {
    font-size: 1rem;
    font-weight: 600;
    color: #111;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.cdocs-contact-status[b-up8pg54h12] {
    font-size: 0.75rem;
    color: var(--muted, #848484);
}

/* ── Tab bar ─────────────────────────────────────────────────── */

.cdocs-tab-bar[b-up8pg54h12] {
    display: flex;
    background: #fff;
    border-bottom: 1px solid #e8e8e8;
}

.cdocs-tab[b-up8pg54h12] {
    flex: 1;
    padding: 14px 0 12px;
    font-size: 1rem;
    font-weight: 600;
    color: #999;
    background: none;
    border: none;
    border-bottom: 3px solid transparent;
    cursor: pointer;
    transition: color 0.15s, border-color 0.15s;
}

.cdocs-tab--active[b-up8pg54h12] {
    color: #000;
    border-bottom-color: #000;
}

/* ── Documents list ──────────────────────────────────────────── */

.cdocs-list[b-up8pg54h12] {
    flex: 1;
    overflow-y: auto;
    padding: 12px 14px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.cdocs-card[b-up8pg54h12] {
    display: flex;
    align-items: center;
    gap: 12px;
    background: #fff;
    border-radius: 14px;
    padding: 14px 14px;
    box-shadow: 0 1px 4px rgba(0,0,0,0.06);
    cursor: pointer;
}

.cdocs-card-icon-wrap[b-up8pg54h12] {
    width: 44px;
    height: 44px;
    border-radius: 8px;
    background: #f5f5f5;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.cdocs-card-icon[b-up8pg54h12] {
    font-size: 1.5rem;
}

.icon-pdf[b-up8pg54h12]    { color: #e53935; }
.icon-word[b-up8pg54h12]   { color: #1565c0; }
.icon-excel[b-up8pg54h12]  { color: #2e7d32; }
.icon-ppt[b-up8pg54h12]    { color: #e65100; }
.icon-default[b-up8pg54h12] { color: var(--muted, #848484); }

.cdocs-card-info[b-up8pg54h12] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.cdocs-card-meta[b-up8pg54h12] {
    display: flex;
    gap: 8px;
    align-items: center;
}

.cdocs-card-date[b-up8pg54h12],
.cdocs-card-from[b-up8pg54h12] {
    font-size: 0.76rem;
    color: var(--muted, #848484);
}

.cdocs-card-name[b-up8pg54h12] {
    font-size: 0.93rem;
    font-weight: 600;
    color: var(--brand, #4A8A68);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.cdocs-card-delete-btn[b-up8pg54h12] {
    background: none;
    border: none;
    cursor: pointer;
    color: #888;
    font-size: 1.1rem;
    padding: 6px 4px;
    flex-shrink: 0;
    transition: color 0.15s;
}

.cdocs-card-delete-btn:hover[b-up8pg54h12] {
    color: #e53935;
}

.cdocs-card-action[b-up8pg54h12] {
    flex-shrink: 0;
    padding: 4px;
}

/* ── Images tab ──────────────────────────────────────────────── */

.cdocs-media-scroll[b-up8pg54h12] {
    flex: 1;
    overflow-y: auto;
    padding-bottom: 80px;
    background: #fff;
}

.cdocs-media-group[b-up8pg54h12] {
    margin-bottom: 4px;
}

.cdocs-media-date-row[b-up8pg54h12] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 16px 6px;
}

.cdocs-group-circle[b-up8pg54h12] {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    border: 2px solid #c0c0c0;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    flex-shrink: 0;
    transition: border-color 0.15s, background 0.15s;
}

.cdocs-group-circle--checked[b-up8pg54h12] {
    background: var(--brand, #4A8A68);
    border-color: var(--brand, #4A8A68);
}

.cdocs-circle-check[b-up8pg54h12] {
    color: #fff;
    font-size: 0.62rem;
}

.cdocs-media-date-label[b-up8pg54h12] {
    font-size: 0.85rem;
    color: var(--muted, #848484);
    font-weight: 500;
}

.cdocs-media-grid[b-up8pg54h12] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 3px;
    padding: 0 3px;
}

.cdocs-thumb-wrap[b-up8pg54h12] {
    position: relative;
    aspect-ratio: 1;
    overflow: hidden;
    cursor: pointer;
    border-radius: 8px;
}

.cdocs-thumb[b-up8pg54h12] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.cdocs-img-circle[b-up8pg54h12] {
    position: absolute;
    top: 6px;
    left: 6px;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    border: 2px solid rgba(255,255,255,0.85);
    background: rgba(255,255,255,0.25);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.15s, border-color 0.15s;
}

.cdocs-img-circle--checked[b-up8pg54h12] {
    background: var(--brand, #4A8A68);
    border-color: var(--brand, #4A8A68);
}

/* ── Images footer ───────────────────────────────────────────── */

.cdocs-img-footer[b-up8pg54h12] {
    position: sticky;
    bottom: 0;
    display: flex;
    justify-content: space-around;
    align-items: center;
    padding: 12px 32px 20px;
    background: #fff;
    border-top: 1px solid #f0f0f0;
}

.cdocs-footer-btn[b-up8pg54h12] {
    background: none;
    border: none;
    cursor: pointer;
    color: #444;
    font-size: 1.4rem;
    padding: 8px 16px;
    transition: color 0.15s;
}

.cdocs-footer-btn--delete[b-up8pg54h12] {
    color: #444;
}

.cdocs-footer-btn:hover[b-up8pg54h12] {
    color: var(--brand, #4A8A68);
}

.cdocs-footer-btn--delete:hover[b-up8pg54h12] {
    color: #e53935;
}

/* ── Delete confirmation modal ───────────────────────────────── */

.cdocs-modal-overlay[b-up8pg54h12] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.45);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    padding: 24px;
}

.cdocs-modal[b-up8pg54h12] {
    background: #fff;
    border-radius: 20px;
    padding: 32px 24px 24px;
    width: 100%;
    max-width: 340px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0;
}

.cdocs-modal-icon-wrap[b-up8pg54h12] {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 18px;
}

.cdocs-modal-check[b-up8pg54h12] {
    color: #fff;
    font-size: 1.3rem;
}

.cdocs-modal-text[b-up8pg54h12] {
    font-size: 1rem;
    color: #222;
    text-align: center;
    margin: 0 0 22px;
    font-weight: 400;
}

.cdocs-modal-btn[b-up8pg54h12] {
    width: 100%;
    border: none;
    border-radius: 30px;
    padding: 15px;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: opacity 0.15s;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.cdocs-modal-btn:last-child[b-up8pg54h12] {
    margin-bottom: 0;
}

.cdocs-modal-btn--confirm[b-up8pg54h12] {
    background: var(--brand, #4A8A68);
    color: #fff;
}

.cdocs-modal-btn--cancel[b-up8pg54h12] {
    background: #6b6b6b;
    color: #fff;
}

.cdocs-modal-btn:disabled[b-up8pg54h12] {
    opacity: 0.6;
    cursor: not-allowed;
}

.chat-docs-empty-icon[b-up8pg54h12] {
    font-size: 2.5rem;
    margin-bottom: 4px;
}

/* ── Full-screen image viewer ────────────────────────────────── */

.cdocs-viewer-overlay[b-up8pg54h12] {
    position: fixed;
    inset: 0;
    background: #fff;
    z-index: 1100;
    display: flex;
    flex-direction: column;
}

.cdocs-viewer-inner[b-up8pg54h12] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.cdocs-viewer-img[b-up8pg54h12] {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}

.cdocs-viewer-footer[b-up8pg54h12] {
    display: flex;
    justify-content: space-around;
    align-items: center;
    padding: 12px 32px 28px;
    background: #fff;
    border-top: 1px solid #f0f0f0;
}
/* /Pages/Dashboard/Chat/ChatList.razor.rz.scp.css */
.chat-list-page[b-4h3d0plluq] {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    background: #fff;
    padding: 0;
}

.chat-request-banner[b-4h3d0plluq] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 10px 16px 4px;
    padding: 12px 16px;
    background: rgba(74,138,104,0.1);
    border: 1.5px solid var(--brand, #4A8A68);
    border-radius: 12px;
    cursor: pointer;
    font-size: 0.9rem;
    color: var(--brand-strong, #136242);
    font-weight: 600;
    transition: background 0.15s;
}

    .chat-request-banner:hover[b-4h3d0plluq] {
        background: rgba(74,138,104,0.18);
    }

.chat-request-banner-icon[b-4h3d0plluq] {
    font-size: 1.1rem;
    flex-shrink: 0;
}

.chat-request-banner-chevron[b-4h3d0plluq] {
    margin-left: auto;
    font-size: 0.85rem;
    flex-shrink: 0;
}

.chat-list-header[b-4h3d0plluq] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px var(--gap);
    border-bottom: 1px solid #f0f0f0;
    background: #fff;
    position: sticky;
    top: 0;
    z-index: 10;
}

.chat-list-title[b-4h3d0plluq] {
    font-size: 1.4rem;
    font-weight: 700;
    margin: 0;
    color: #000;
}

/* .chat-list-header-actions, .chat-icon-btn, .chat-dropdown-* → global CSS */

.chat-search-bar[b-4h3d0plluq] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px var(--gap);
    background: #f5f5f5;
    border-bottom: 1px solid #e0e0e0;
}

.chat-search-icon[b-4h3d0plluq] {
    color: var(--muted);
    font-size: 0.9rem;
}

.chat-search-input[b-4h3d0plluq] {
    flex: 1;
    border: none;
    background: transparent;
    outline: none;
    font-size: 0.95rem;
    color: #000;
}

.chat-loading[b-4h3d0plluq] {
    display: flex;
    justify-content: center;
    padding: 40px;
}

.chat-empty[b-4h3d0plluq] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 20px;
    color: var(--muted);
    gap: 12px;
}

.chat-empty-icon[b-4h3d0plluq] {
    font-size: 3rem;
}

.chat-contact-list[b-4h3d0plluq] {
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
    width: 100%;
    box-sizing: border-box;
}

.chat-contact-row[b-4h3d0plluq] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px var(--gap);
    cursor: pointer;
    border-bottom: 1px solid #f0f0f0;
    transition: background 0.15s;
    overflow: hidden;
    min-width: 0;
    box-sizing: border-box;
    width: 100%;
}

.chat-contact-row:hover[b-4h3d0plluq] {
    background: #f9f9f9;
}

.chat-contact-row--unread[b-4h3d0plluq] {
    background: #EDFAEF;
}

.chat-contact-row--unread:hover[b-4h3d0plluq] {
    background: #dff5e3;
}

.chat-avatar-wrap[b-4h3d0plluq] {
    position: relative;
    flex-shrink: 0;
}

.chat-avatar[b-4h3d0plluq] {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    object-fit: cover;
}

.chat-avatar--initials[b-4h3d0plluq],
.chat-avatar--group[b-4h3d0plluq] {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    font-weight: 700;
    color: #fff;
}

.chat-avatar--group[b-4h3d0plluq] {
    background: #222;
    font-size: 1.3rem;
}

.chat-status-dot[b-4h3d0plluq] {
    position: absolute;
    bottom: 2px;
    left: 2px;
    width: 13px;
    height: 13px;
    border-radius: 50%;
    border: 2px solid #fff;
}

.chat-contact-info[b-4h3d0plluq] {
    flex: 1;
    min-width: 0;
}

.chat-contact-top[b-4h3d0plluq] {
    display: flex;
    align-items: center;
    gap: 4px;
    margin-bottom: 2px;
    min-width: 0;
    overflow: hidden;
}

.chat-contact-name[b-4h3d0plluq] {
    font-weight: 700;
    font-size: 0.98rem;
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #000;
}

.chat-contact-time[b-4h3d0plluq] {
    font-size: 0.75rem;
    color: var(--muted);
    white-space: nowrap;
    flex-shrink: 0;
}

.chat-contact-bottom[b-4h3d0plluq] {
    display: flex;
    align-items: center;
    gap: 4px;
    min-width: 0;
    overflow: hidden;
}

.chat-contact-preview[b-4h3d0plluq] {
    flex: 1;
    font-size: 0.88rem;
    color: var(--muted);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.chat-contact-badges[b-4h3d0plluq] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-shrink: 0;
}

.chat-muted-icon[b-4h3d0plluq] {
    color: var(--muted);
    font-size: 0.85rem;
}

.chat-unread-badge[b-4h3d0plluq] {
    background: #FF0000;
    color: #fff;
    border-radius: 10px;
    padding: 1px 6px;
    font-size: 0.75rem;
    font-weight: 600;
    min-width: 20px;
    text-align: center;
}

.chat-group-bubble[b-4h3d0plluq] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: #222;
    color: #fff;
    font-size: 0.7rem;
    flex-shrink: 0;
}
/* /Pages/Dashboard/Chat/ChatMediaGallery.razor.rz.scp.css */
.media-gallery-page[b-y1vfffpog3] {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    background: #fff;
    padding: 0;
}

.media-gallery-title[b-y1vfffpog3] {
    font-size: 1rem;
    font-weight: 700;
    color: #000;
    flex: 1;
    padding-left: 4px;
}

/* ── Scroll area ─────────────────────────────────────────────── */

.media-scroll-area[b-y1vfffpog3] {
    flex: 1;
    overflow-y: auto;
    padding-bottom: 80px;
}

/* ── Date group ──────────────────────────────────────────────── */

.media-date-group[b-y1vfffpog3] {
    margin-bottom: 4px;
}

.media-date-header[b-y1vfffpog3] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 16px 6px;
}

.media-group-circle[b-y1vfffpog3] {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    border: 2px solid #b0b0b0;
    background: rgba(255,255,255,0.7);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    flex-shrink: 0;
    transition: border-color 0.15s, background 0.15s;
}

.media-group-circle--checked[b-y1vfffpog3] {
    background: var(--brand, #4A8A68);
    border-color: var(--brand, #4A8A68);
}

.media-circle-check[b-y1vfffpog3] {
    color: #fff;
    font-size: 0.7rem;
}

.media-date-label[b-y1vfffpog3] {
    font-size: 0.85rem;
    color: var(--muted, #848484);
    font-weight: 500;
}

/* ── Image grid ──────────────────────────────────────────────── */

.media-grid[b-y1vfffpog3] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 3px;
    padding: 0 3px;
}

.media-thumb-wrap[b-y1vfffpog3] {
    position: relative;
    aspect-ratio: 1;
    overflow: hidden;
    cursor: pointer;
    border-radius: 4px;
}

.media-thumb[b-y1vfffpog3] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: opacity 0.15s;
}

.media-thumb--selected[b-y1vfffpog3] {
    opacity: 0.72;
}

/* Top-left circle selector on thumbnails */
.media-img-circle[b-y1vfffpog3] {
    position: absolute;
    top: 6px;
    left: 6px;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    border: 2px solid rgba(255,255,255,0.85);
    background: rgba(255,255,255,0.35);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: border-color 0.15s, background 0.15s;
}

.media-img-circle--checked[b-y1vfffpog3] {
    background: var(--brand, #4A8A68);
    border-color: var(--brand, #4A8A68);
}

/* ── Footer ──────────────────────────────────────────────────── */

.media-footer[b-y1vfffpog3] {
    position: sticky;
    bottom: 0;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 16px 14px;
    background: #fff;
    border-top: 1px solid #f0f0f0;
}

.media-caption-input[b-y1vfffpog3] {
    flex: 1;
    border: 1.5px solid #e0e0e0;
    border-radius: 24px;
    padding: 10px 16px;
    font-size: 0.95rem;
    outline: none;
    color: #000;
    background: #f9f9f9;
}

.media-caption-input:focus[b-y1vfffpog3] {
    border-color: var(--brand, #4A8A68);
    background: #fff;
}

/* ── Empty state ─────────────────────────────────────────────── */

.media-empty-icon[b-y1vfffpog3] {
    font-size: 2.5rem;
    margin-bottom: 4px;
}
/* /Pages/Dashboard/Chat/ChatReport.razor.rz.scp.css */
.chat-report-page[b-9jyyk37bd4] {
    display: flex;
    flex-direction: column;
    background: #fff;
    min-height: 100%;
    padding: 0;
}

.chat-report-body[b-9jyyk37bd4] {
    flex: 1;
    overflow-y: auto;
    padding: 20px 20px 32px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.chat-report-title[b-9jyyk37bd4] {
    font-size: 1.15rem;
    font-weight: 700;
    color: #111;
    text-align: center;
    margin: 0;
}

.chat-report-subtitle[b-9jyyk37bd4] {
    font-size: 0.95rem;
    font-weight: 600;
    color: #111;
    text-align: center;
    margin: 0;
}

.chat-report-reasons[b-9jyyk37bd4] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.chat-report-reason-row[b-9jyyk37bd4] {
    display: flex;
    align-items: center;
    gap: 12px;
    cursor: pointer;
}

.chat-report-radio[b-9jyyk37bd4] {
    cursor: pointer;
    flex-shrink: 0;
}

.chat-report-radio-icon[b-9jyyk37bd4] {
    font-size: 1.25rem;
    color: #ccc;
}

.chat-report-radio-icon.selected[b-9jyyk37bd4] {
    color: #4A8A68;
}

.chat-report-reason-label[b-9jyyk37bd4] {
    font-size: 0.95rem;
    color: #111;
    cursor: pointer;
}

.chat-report-details[b-9jyyk37bd4] {
    width: 100%;
    min-height: 90px;
    border: 1px solid #ddd;
    border-radius: 10px;
    padding: 12px;
    font-size: 0.9rem;
    color: #333;
    resize: none;
    outline: none;
    box-sizing: border-box;
}

.chat-report-details:focus[b-9jyyk37bd4] {
    border-color: #4A8A68;
}

.chat-report-also-block-row[b-9jyyk37bd4] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 4px 0;
}

.chat-report-also-block-icon[b-9jyyk37bd4] {
    font-size: 1.2rem;
    flex-shrink: 0;
}

.chat-report-also-block-label[b-9jyyk37bd4] {
    flex: 1;
    font-size: 0.95rem;
    color: #111;
}

.chat-report-checkbox[b-9jyyk37bd4] {
    cursor: pointer;
    flex-shrink: 0;
}

.chat-report-error[b-9jyyk37bd4] {
    color: #c62828;
    font-size: 0.85rem;
    margin: 0;
}

.chat-report-buttons[b-9jyyk37bd4] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: 8px;
}

.chat-report-btn[b-9jyyk37bd4] {
    width: 100%;
    padding: 16px;
    border-radius: 30px;
    border: none;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: opacity 0.15s;
}

.chat-report-btn:disabled[b-9jyyk37bd4] {
    opacity: 0.6;
    cursor: not-allowed;
}

.chat-report-btn--cancel[b-9jyyk37bd4] {
    background: #555;
    color: #fff;
}

.chat-report-btn--submit[b-9jyyk37bd4] {
    background: var(--brand, #4A8A68);
    color: #fff;
}
/* /Pages/Dashboard/Chat/ChatRequests.razor.rz.scp.css */
.chat-requests-page[b-cy5sjyig9w] {
    display: flex;
    flex-direction: column;
    min-height: 100%;
}

.chat-req-header[b-cy5sjyig9w] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px var(--gap);
    border-bottom: 1px solid #e8e8e8;
}

.chat-requests-title[b-cy5sjyig9w] {
    flex: 1;
    margin: 0;
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--brand-strong);
    text-align: center;
}

/* ── Tabs ─────────────────────────────────────────────────────── */

.chat-req-tabs[b-cy5sjyig9w] {
    display: flex;
    border-bottom: 2px solid #f0f0f0;
    flex-shrink: 0;
}

.chat-req-tab[b-cy5sjyig9w] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 12px 0;
    background: none;
    border: none;
    font-size: 0.92rem;
    font-weight: 500;
    color: var(--muted, #848484);
    cursor: pointer;
    border-bottom: 2px solid transparent;
    margin-bottom: -2px;
    transition: color 0.15s, border-color 0.15s;
}

.chat-req-tab--active[b-cy5sjyig9w] {
    color: var(--brand, #4A8A68);
    border-bottom-color: var(--brand, #4A8A68);
}

.chat-req-tab-badge[b-cy5sjyig9w] {
    background: var(--brand, #4A8A68);
    color: #fff;
    font-size: 0.7rem;
    font-weight: 700;
    border-radius: 10px;
    padding: 1px 6px;
    min-width: 18px;
    text-align: center;
}

/* ── Lists ────────────────────────────────────────────────────── */

.chat-requests-list[b-cy5sjyig9w] {
    flex: 1;
    overflow-y: auto;
    padding: 8px 0;
}

.chat-request-row[b-cy5sjyig9w] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px var(--gap);
    border-bottom: 1px solid #f0f0f0;
    transition: background 0.15s;
}

.chat-request-row:hover[b-cy5sjyig9w] {
    background: #f9fdf9;
}

.chat-request-row__avatar-wrap[b-cy5sjyig9w] {
    flex-shrink: 0;
}

.chat-request-row__avatar[b-cy5sjyig9w] {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    object-fit: cover;
}

.chat-request-row__avatar--initials[b-cy5sjyig9w] {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--brand);
    color: #fff;
    font-weight: 700;
    font-size: 1rem;
}

.chat-request-row__info[b-cy5sjyig9w] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.chat-request-row__name[b-cy5sjyig9w] {
    font-weight: 600;
    font-size: 0.95rem;
    color: #1a1a1a;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.chat-request-row__sub[b-cy5sjyig9w] {
    font-size: 0.8rem;
    color: var(--muted);
}

.chat-request-row__actions[b-cy5sjyig9w] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}

/* -- Sent request sub-label ------------------------------------- */

.chat-request-row__sub--pending[b-cy5sjyig9w] {
    color: var(--muted, #848484);
    font-style: italic;
}

.chat-request-row__sub--pending i[b-cy5sjyig9w] {
    margin-right: 3px;
}

/* ── Row action icon buttons (accept / decline) ──────────────── */

.chat-req-act-btn[b-cy5sjyig9w] {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: 2px solid transparent;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-size: 1rem;
    flex-shrink: 0;
    transition: background 0.15s, color 0.15s;
}

.chat-req-act-btn--accept[b-cy5sjyig9w] {
    border-color: var(--brand, #4A8A68);
    color: var(--brand, #4A8A68);
}

.chat-req-act-btn--accept:hover[b-cy5sjyig9w] {
    background: var(--brand, #4A8A68);
    color: #fff;
}

.chat-req-act-btn--decline[b-cy5sjyig9w] {
    border-color: #555;
    color: #555;
}

.chat-req-act-btn--decline:hover[b-cy5sjyig9w] {
    background: #555;
    color: #fff;
}

/* ── Cancel sent button ──────────────────────────────────────── */

.chat-req-btn--cancel-sent[b-cy5sjyig9w] {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: 2px solid #e53935;
    background: #fff;
    color: #e53935;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-size: 0.9rem;
    transition: background 0.15s, color 0.15s;
}

.chat-req-btn--cancel-sent:hover[b-cy5sjyig9w] {
    background: #e53935;
    color: #fff;
}
/* /Pages/Dashboard/Chat/ChatSearch.razor.rz.scp.css */
/* ── Page shell ──────────────────────────────────────────────── */

.chat-search-page[b-eabvdzb3ld] {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    background: #fff;
    padding: 0;
}

/* ── Header row: back arrow + pill ───────────────────────────── */

.chat-search-header[b-eabvdzb3ld] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px var(--gap, 16px);
    background: #fff;
}

.chat-search-back[b-eabvdzb3ld] {
    flex-shrink: 0;
    font-size: 1.1rem;
    color: #000;
    background: none;
    border: none;
    cursor: pointer;
    padding: 4px;
}

/* ── Pill ─────────────────────────────────────────────────────── */

.chat-search-pill[b-eabvdzb3ld] {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 10px;
    background: #f2f2f7;
    border: 1.5px solid #e0e0e0;
    border-radius: 28px;
    padding: 10px 16px;
}

.chat-search-pill-icon[b-eabvdzb3ld] {
    font-size: 1rem;
    color: #aaa;
    flex-shrink: 0;
}

.chat-search-pill-input[b-eabvdzb3ld] {
    flex: 1;
    background: transparent;
    border: none;
    outline: none;
    font-size: 1rem;
    color: #000;
    min-width: 0;
}

.chat-search-pill-input[b-eabvdzb3ld]::placeholder {
    color: #aaa;
}

.chat-search-clear[b-eabvdzb3ld] {
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    color: #aaa;
    font-size: 1rem;
    flex-shrink: 0;
    line-height: 1;
}

.chat-search-clear:hover[b-eabvdzb3ld] {
    color: #555;
}

/* ── Results body ─────────────────────────────────────────────── */

.chat-search-body[b-eabvdzb3ld] {
    flex: 1;
    overflow-y: auto;
}

/* ── Spinner ──────────────────────────────────────────────────── */

.chat-search-spinner[b-eabvdzb3ld] {
    display: flex;
    justify-content: center;
    padding: 48px 0;
}
/* /Pages/Dashboard/Chat/ContactInfo.razor.rz.scp.css */
.contact-info-page[b-dcj6ohyr66] {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    background: #F6F8F7;
    padding: 0;
}

.contact-info-body[b-dcj6ohyr66] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 32px var(--gap) 24px;
    gap: 16px;
}

.contact-info-avatar-wrap[b-dcj6ohyr66] {
    margin-bottom: 8px;
}

.contact-info-avatar[b-dcj6ohyr66] {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    object-fit: cover;
}

.contact-info-avatar--initials[b-dcj6ohyr66] {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2.5rem;
    font-weight: 700;
    color: #fff;
    background: var(--brand);
}

.contact-info-name[b-dcj6ohyr66] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #000;
    margin: 0;
    text-align: center;
}

.contact-info-actions[b-dcj6ohyr66] {
    display: flex;
    gap: 32px;
    justify-content: center;
    margin: 8px 0;
}

.contact-info-notes-wrap[b-dcj6ohyr66] {
    width: 100%;
    max-width: 500px;
    margin-top: 8px;
}

.contact-info-notes[b-dcj6ohyr66] {
    width: 100%;
    min-height: 240px;
    border: 1.5px solid var(--brand);
    border-radius: 12px;
    padding: 16px;
    font-size: 0.95rem;
    resize: none;
    outline: none;
    background: #fff;
    color: #000;
    box-sizing: border-box;
}

.contact-info-username[b-dcj6ohyr66] {
    color: var(--muted, #848484);
    font-size: 0.9rem;
    margin: -8px 0 0;
}

.contact-info-save-note[b-dcj6ohyr66] {
    margin-top: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: 100%;
    padding: 12px;
    border: none;
    border-radius: 30px;
    background: var(--brand, #4A8A68);
    color: #fff;
    font-size: 0.95rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.2s;
}

    .contact-info-save-note.saved[b-dcj6ohyr66] {
        background: var(--brand-strong, #136242);
    }

    .contact-info-save-note:disabled[b-dcj6ohyr66] {
        opacity: 0.6;
        cursor: not-allowed;
    }

.contact-info-edit-name-btn[b-dcj6ohyr66] {
    background: none;
    border: none;
    color: var(--brand);
    font-size: 0.82rem;
    cursor: pointer;
    padding: 2px 6px;
    border-radius: 4px;
    margin-top: -8px;
}

.contact-info-name-edit[b-dcj6ohyr66] {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: center;
}

.contact-info-name-input[b-dcj6ohyr66] {
    width: 100%;
    max-width: 280px;
    padding: 8px 12px;
    border: 1px solid #ccc;
    border-radius: 8px;
    font-size: 0.95rem;
}

.contact-info-name-edit-btns[b-dcj6ohyr66] {
    display: flex;
    gap: 8px;
}
/* /Pages/Dashboard/ComingSoonDialog.razor.rz.scp.css */
/* ===== Coming Soon dialog ===== */

[b-50aq05m1uf] .cs-content {
	padding-top: 0 !important;
}

[b-50aq05m1uf] .cs-rocket {
	width: 100%;
	display: flex;
	justify-content: center;
	margin-bottom: 8px;
}

[b-50aq05m1uf] .cs-rocket-img {
	width: 100%;
	max-width: 320px;
	height: auto;
	object-fit: contain;
}

[b-50aq05m1uf] .cs-title {
	font-size: 28px;
	margin: 0 0 24px;
}
/* /Pages/Dashboard/Contact.razor.rz.scp.css */
.contact-page[b-i64zmc1js6] {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    background: #fff;
    padding: 16px 24px 32px;
}

.contact-back-btn[b-i64zmc1js6] {
    background: none;
    border: none;
    cursor: pointer;
    padding: 8px;
    margin: 0 0 16px -8px;
    color: #222;
    display: flex;
    align-items: center;
    align-self: flex-start;
}

.contact-content[b-i64zmc1js6] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    flex: 1;
    padding-top: 24px;
}

.contact-title[b-i64zmc1js6] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 700;
    font-size: 26px;
    color: #222;
    margin: 0 0 32px;
}

.contact-text[b-i64zmc1js6] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-size: 16px;
    color: #444;
    line-height: 1.5;
    margin: 0 0 40px;
}

.contact-btn[b-i64zmc1js6] {
    width: 100%;
    margin-bottom: 40px;
}

.contact-address[b-i64zmc1js6] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-size: 16px;
    font-weight: 600;
    color: #222;
    line-height: 1.6;
    margin: 0;
}
/* /Pages/Dashboard/GrowthPointRewards.razor.rz.scp.css */
/* ===== Growth Point Rewards page — paginated merchant list ===== */
/* Layout: .gp-page | Loading: .gp-loading | Title: .gp-page-title */
/* Uses gph- prefix for all scoped classes */

/* ---- Merchant list container ---- */
.gph-list[b-ij0cbik9kw] {
    width: 100%;
    max-width: 560px;
}

/* ---- Merchant row (full-bleed clickable) ---- */
.gph-row[b-ij0cbik9kw] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 12px 24px;
    background: #fff;
    width: 100vw;
    margin-left: calc(-50vw + 50%);
    box-sizing: border-box;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
    min-height: 44px;
}
.gph-row:active[b-ij0cbik9kw] {
    opacity: 0.7;
}

/* ---- Badge circle ---- */
.gph-badge[b-ij0cbik9kw] {
    width: clamp(64px, 18vw, 84px);
    height: clamp(64px, 18vw, 84px);
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
    background: #f0f0f0;
}
.gph-badge-img[b-ij0cbik9kw] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* ---- Row info column ---- */
.gph-row-info[b-ij0cbik9kw] {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-width: 0;
}
.gph-row-name[b-ij0cbik9kw] {
    font-size: 14px;
    font-weight: 600;
    color: var(--text, #000);
}
.gph-row-points[b-ij0cbik9kw] {
    font-size: clamp(18px, 5vw, 24px);
    font-weight: 700;
    color: var(--text, #000);
}

/* ---- Chevron affordance ---- */
.gph-row-chevron[b-ij0cbik9kw] {
    color: var(--muted, #848484);
    font-size: 14px;
    flex-shrink: 0;
}

/* ---- Row divider ---- */
.gph-row-divider[b-ij0cbik9kw] {
    border: none;
    border-top: 1px solid #e8ece9;
    margin: 0;
}

/* ---- Responsive: small phones ---- */
@media (max-width: 374px) {
    .gph-row[b-ij0cbik9kw] { padding: 8px 16px; }
    .gph-badge[b-ij0cbik9kw] {
        width: 52px;
        height: 52px;
    }
}

/* ---- Responsive: tablet ---- */
@media (min-width: 768px) {
    .gph-list[b-ij0cbik9kw] { max-width: 640px; }
    .gph-row-name[b-ij0cbik9kw] { font-size: 16px; }
}

/* ---- Responsive: desktop ---- */
@media (min-width: 1024px) {
    .gph-list[b-ij0cbik9kw] { max-width: 720px; }
}
/* /Pages/Dashboard/Help.razor.rz.scp.css */
/* ===== Help page ===== */

.help-page[b-bskkcs42nn] {
    padding-top: 16px !important;
    padding-bottom: calc(60px + 70px + env(safe-area-inset-bottom, 0)) !important;
}

/* ---- Title ---- */
.help-title[b-bskkcs42nn] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 700;
    font-size: clamp(24px, 6vw, 32px);
    color: var(--text, #000);
    text-align: center;
    margin: 0 0 16px;
}

/* ---- Section heading ---- */
.help-section-title[b-bskkcs42nn] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 700;
    font-size: clamp(16px, 4vw, 20px);
    color: var(--text, #000);
    margin: 0 0 12px;
    padding-left: 4px;
}

/* ---- Video list ---- */
.help-video-list[b-bskkcs42nn] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: 100%;
    max-width: 560px;
    padding-bottom: 16px;
}

/* ---- Video item row ---- */
.help-video-item[b-bskkcs42nn] {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
}

.help-video-item:active[b-bskkcs42nn] {
    opacity: 0.8;
}

/* ---- Thumbnail wrapper ---- */
.help-thumb-wrap[b-bskkcs42nn] {
    position: relative;
    flex-shrink: 0;
    width: clamp(120px, 35vw, 180px);
    border-radius: 8px;
    overflow: hidden;
}

.help-thumb-img[b-bskkcs42nn] {
    width: 100%;
    display: block;
    object-fit: cover;
    aspect-ratio: 16 / 10;
}

.help-thumb-duration[b-bskkcs42nn] {
    position: absolute;
    bottom: 6px;
    right: 6px;
    background: rgba(0, 0, 0, 0.7);
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    padding: 2px 6px;
    border-radius: 4px;
    line-height: 1.3;
}

/* ---- Video description ---- */
.help-video-desc[b-bskkcs42nn] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-size: clamp(14px, 3.8vw, 17px);
    font-weight: 400;
    color: var(--text, #000);
    line-height: 1.45;
    margin: 0;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* ===== Secondary navigation (fixed above bottom bar) ===== */
.help-secondary-nav[b-bskkcs42nn] {
    position: fixed;
    bottom: calc(70px + env(safe-area-inset-bottom, 0));
    left: 0;
    width: 100%;
    display: flex;
    justify-content: space-around;
    align-items: center;
    padding: 10px 16px;
    background: #F6F8F7;
    border-top: 1px solid #E0E0E0;
    z-index: 999;
}

.help-secondary-btn[b-bskkcs42nn] {
    display: flex;
    align-items: center;
    gap: 10px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 8px 4px;
    -webkit-tap-highlight-color: transparent;
}

.help-secondary-btn:active[b-bskkcs42nn] {
    opacity: 0.7;
}

.help-secondary-icon[b-bskkcs42nn] {
    font-size: 28px;
    color: #2D765A;
    flex-shrink: 0;
}

.help-secondary-label[b-bskkcs42nn] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-size: 13px;
    font-weight: 600;
    color: var(--text, #000);
    text-align: left;
    line-height: 1.3;
}

/* ---- Responsive: small phones ---- */
@media (max-width: 374px) {
    .help-thumb-wrap[b-bskkcs42nn] { width: 100px; }
    .help-video-desc[b-bskkcs42nn] { font-size: 13px; }
    .help-video-list[b-bskkcs42nn] { gap: 12px; }
    .help-secondary-icon[b-bskkcs42nn] { font-size: 24px; }
    .help-secondary-label[b-bskkcs42nn] { font-size: 12px; }
}

/* ---- Responsive: tablet ---- */
@media (min-width: 768px) {
    .help-video-list[b-bskkcs42nn] { max-width: 640px; }
    .help-thumb-wrap[b-bskkcs42nn] { width: 200px; }
    .help-video-desc[b-bskkcs42nn] { font-size: 18px; }
    .help-secondary-icon[b-bskkcs42nn] { font-size: 32px; }
    .help-secondary-label[b-bskkcs42nn] { font-size: 14px; }
}

/* ---- Responsive: desktop ---- */
@media (min-width: 1024px) {
    .help-video-list[b-bskkcs42nn] { max-width: 720px; }
}
/* /Pages/Dashboard/HelpVideoPlayer.razor.rz.scp.css */
/* ===== Help Video Player page ===== */

.video-player-page[b-28nrs1a9om] {
    padding-top: 0 !important;
    padding-bottom: calc(70px + env(safe-area-inset-bottom, 0)) !important;
}

/* ---- Scrollable video list ---- */
.video-player-list[b-28nrs1a9om] {
	margin-top:20px;
    display: flex;
    flex-direction: column;
    gap: 24px;
    width: 100%;
    padding-bottom: 16px;
}

/* ---- Video card ---- */
.video-player-card[b-28nrs1a9om] {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 92%;
    margin: 0 auto;
}

/* ---- Flash highlight on selection ---- */
@keyframes video-card-flash-b-28nrs1a9om {
    0%   { box-shadow: 0 0 0 3px #F47B20; }
    60%  { box-shadow: 0 0 0 3px #F47B20; }
    100% { box-shadow: 0 2px 8px rgba(0, 0, 0, 0.30); }
}

.video-player-card--flash[b-28nrs1a9om] {
    animation: video-card-flash-b-28nrs1a9om 0.9s ease-out forwards;
}

/* ---- Featured / active card — full width, visually elevated ---- */
.video-player-card--active[b-28nrs1a9om] {
	width: 100%;
	background: #fff;
	border-radius: 0;
	margin: 0;
	margin-top:20px;
	box-shadow: 0 2px 8px rgb(0, 0, 0, 0.30);
}

/* ---- Embed wrapper (responsive 16:9) ---- */
.video-player-embed-wrap[b-28nrs1a9om] {
    position: relative;
    width: 100%;
    padding-top: 56.25%; /* 16:9 */
    overflow: hidden;
}

.video-player-iframe[b-28nrs1a9om] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

/* ---- Thumbnail wrapper (full-width) ---- */
.video-player-thumb-wrap[b-28nrs1a9om] {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.video-player-thumb-img[b-28nrs1a9om] {
    width: 100%;
    display: block;
    object-fit: cover;
    aspect-ratio: 16 / 10;
}

.video-player-duration[b-28nrs1a9om] {
    position: absolute;
    bottom: 18px;
    right: 10px;
    background: rgba(0, 0, 0, 0.7);
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    padding: 3px 8px;
    border-radius: 4px;
    line-height: 1.3;
}

.video-player-play-icon[b-28nrs1a9om] {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -60%);
    font-size: 48px;
    color: rgba(255, 255, 255, 0.9);
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.5);
    pointer-events: none;
}

/* ---- Video description ---- */
.video-player-desc[b-28nrs1a9om] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-size: clamp(15px, 4vw, 18px);
    font-weight: 400;
    color: var(--text, #000);
    line-height: 1.45;
    margin: 14px 16px 12px;
    text-align: left;
    width: 100%;
    padding: 0 16px;
    box-sizing: border-box;
}

/* ---- Share button ---- */
.video-player-share-btn[b-28nrs1a9om] {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: #F47B20;
    color: #fff;
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-size: clamp(14px, 3.8vw, 17px);
    font-weight: 600;
    border: none;
    border-radius: 28px;
    padding: 12px 28px;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
    margin-bottom: 8px;
}

.video-player-share-btn:active[b-28nrs1a9om] {
    opacity: 0.85;
}

.video-player-share-icon[b-28nrs1a9om] {
    font-size: 18px;
}

/* ---- Responsive: small phones ---- */
@media (max-width: 374px) {
    .video-player-desc[b-28nrs1a9om] {
        font-size: 14px;
        margin: 10px 12px 10px;
        padding: 0 12px;
    }

    .video-player-share-btn[b-28nrs1a9om] {
        font-size: 13px;
        padding: 10px 22px;
    }
}

/* ---- Responsive: tablet ---- */
@media (min-width: 768px) {
    .video-player-list[b-28nrs1a9om] {
        max-width: 720px;
        margin: 0 auto;
    }

    .video-player-desc[b-28nrs1a9om] {
        font-size: 19px;
    }

    .video-player-share-btn[b-28nrs1a9om] {
        font-size: 17px;
        padding: 14px 32px;
    }
}

/* ---- Responsive: desktop ---- */
@media (min-width: 1024px) {
    .video-player-list[b-28nrs1a9om] {
        max-width: 800px;
    }
}
/* /Pages/Dashboard/IssueAccepted.razor.rz.scp.css */
/* ===== Issue Accepted (Congratulations) page ===== */

.ia-badge-wrap[b-s6e9gy19l3] {
    display: flex;
    justify-content: center;
    padding: 16px 0 8px;
}

.ia-badge-img[b-s6e9gy19l3] {
    width: clamp(180px, 50vw, 260px);
    height: auto;
    object-fit: contain;
}

.ia-title[b-s6e9gy19l3] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 700;
    font-size: clamp(24px, 5.5vw, 32px);
    color: var(--text, #000);
    text-align: center;
    margin: 0 0 8px;
}

.ia-subtitle[b-s6e9gy19l3] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 600;
    font-size: clamp(18px, 4.2vw, 22px);
    color: var(--text, #000);
    text-align: center;
    margin: 0 0 24px;
}

/* ---- Steps ---- */
.ia-steps[b-s6e9gy19l3] {
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 100%;
    max-width: 560px;
    padding: 0 24px;
    box-sizing: border-box;
}

.ia-step[b-s6e9gy19l3] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.ia-step-label[b-s6e9gy19l3] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 500;
    font-size: clamp(14px, 3.5vw, 17px);
    color: var(--text, #000);
    line-height: 1.4;
}

.ia-step-row[b-s6e9gy19l3] {
    display: flex;
    align-items: center;
    gap: 4px;
}

/* Curved arrows */
.ia-arrow[b-s6e9gy19l3] {
    width: clamp(60px, 18vw, 90px);
    height: auto;
    flex-shrink: 0;
}

/* Field preview (read-only input appearance) */
.ia-field-preview[b-s6e9gy19l3] {
    flex: 1;
    padding: 14px 20px;
    border: 1.5px solid #c2d7cc;
    border-radius: 12px;
    background: #fff;
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-size: clamp(18px, 4.5vw, 22px);
    font-weight: 400;
    color: var(--text, #000);
    text-align: center;
}

/* QR preview icon */
.ia-qr-preview[b-s6e9gy19l3] {
    width: clamp(60px, 18vw, 90px);
    height: auto;
    object-fit: contain;
}

/* ---- Actions ---- */
.ia-actions[b-s6e9gy19l3] {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 560px;
    padding: 28px 24px 0;
    box-sizing: border-box;
}

.ia-start-btn[b-s6e9gy19l3] {
    width: 100%;
}

/* ---- Responsive: small phones ---- */
@media (max-width: 374px) {
    .ia-badge-img[b-s6e9gy19l3] { width: 160px; }
    .ia-steps[b-s6e9gy19l3] { padding: 0 16px; gap: 16px; }
    .ia-actions[b-s6e9gy19l3] { padding: 20px 16px 0; }
    .ia-arrow[b-s6e9gy19l3] { width: 50px; }
}

/* ---- Responsive: tablet ---- */
@media (min-width: 768px) {
    .ia-title[b-s6e9gy19l3] { font-size: 32px; }
    .ia-subtitle[b-s6e9gy19l3] { font-size: 22px; }
    .ia-step-label[b-s6e9gy19l3] { font-size: 17px; }
    .ia-field-preview[b-s6e9gy19l3] { font-size: 22px; }
}
/* /Pages/Dashboard/IssueApply.razor.rz.scp.css */
/* ===== Issue Apply page ===== */

.iss-badge-wrap[b-cslnhqcomy] {
    display: flex;
    justify-content: center;
    padding: 8px 0 8px;
}

.iss-badge-img[b-cslnhqcomy] {
    width: clamp(160px, 40vw, 200px);
    height: auto;
    object-fit: contain;
}

.iss-title[b-cslnhqcomy] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 700;
    font-size: clamp(22px, 5vw, 30px);
    color: var(--text, #000);
    text-align: center;
    margin: 8px 0 16px;
}

.iss-desc[b-cslnhqcomy] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-size: clamp(16px, 4.5vw, 22px);
    font-weight: 400;
    color: var(--text, #000);
    text-align: center;
    line-height: 1.5;
    margin: 0 0 24px;
}

.iss-video-wrap[b-cslnhqcomy] {
    position: relative;
    width: 100vw;
    margin-left: calc(-50vw + 50%);
    cursor: pointer;
    overflow: hidden;
}

.iss-video-img[b-cslnhqcomy] {
    width: 100%;
    display: block;
    object-fit: cover;
}

.iss-video[b-cslnhqcomy] {
    width: 100%;
    display: block;
    aspect-ratio: 16 / 9;
    background: #000;
}

.iss-play-btn[b-cslnhqcomy] {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 64px;
    height: 44px;
    background: #ff0000;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 22px;
    pointer-events: none;
}

.iss-cta-btn[b-cslnhqcomy] {
    width: 100%;
    max-width: 560px;
    margin-top: 0;
}

/* Extra bottom padding so the video is never hidden behind the sticky bar */
.iss-page[b-cslnhqcomy] {
    padding-bottom: calc(80px + env(safe-area-inset-bottom, 0px));
}

/* Sticky CTA bar — sits above the bottom nav bar */
.iss-cta-bar[b-cslnhqcomy] {
    position: sticky;
    bottom: calc(70px + env(safe-area-inset-bottom, 0px));
    z-index: 999;
    display: flex;
    justify-content: center;
    padding: 12px 16px;
    background: #f6f8f799;
    box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.06);
}


/* ---- Responsive: small phones ---- */
@media (max-width: 374px) {
    .iss-badge-img[b-cslnhqcomy] { width: 160px; }
    .iss-play-btn[b-cslnhqcomy] { width: 52px; height: 36px; font-size: 18px; border-radius: 10px; }
}

/* ---- Responsive relaxed: extra-small phones (≤360px) ---- */
@media (max-width: 360px) {
    /* Ensure clear gap below the video before the sticky CTA bar */
    .iss-page[b-cslnhqcomy] {
        padding-bottom: calc(90px + env(safe-area-inset-bottom, 0px));
    }

    .iss-badge-wrap[b-cslnhqcomy] {
        padding: 4px 0 6px;
    }

    .iss-badge-img[b-cslnhqcomy] {
        width: clamp(120px, 36vw, 160px);
    }

    .iss-title[b-cslnhqcomy] {
        font-size: clamp(18px, 5vw, 22px);
        margin: 4px 0 10px;
    }

    .iss-desc[b-cslnhqcomy] {
        font-size: clamp(14px, 4vw, 17px);
        margin: 0 0 16px;
    }

    /* Give the video some breathing room above the sticky bar */
    .iss-video-wrap[b-cslnhqcomy] {
        margin-bottom: 8px;
    }

    /* Pull the sticky bar slightly closer to screen bottom on very small screens */
    .iss-cta-bar[b-cslnhqcomy] {
        bottom: calc(60px + env(safe-area-inset-bottom, 0px));
        padding: 8px 14px;
    }
}

/* ---- Responsive: tablet ---- */
@media (min-width: 768px) {
    .iss-title[b-cslnhqcomy] { font-size: 30px; }
    .iss-desc[b-cslnhqcomy] { font-size: 22px; }
    .iss-play-btn[b-cslnhqcomy] { width: 72px; height: 50px; font-size: 26px; }

    /* Contain video within the centred app-main column — cancel full-bleed breakout */
    .iss-video-wrap[b-cslnhqcomy] {
        width: 100%;
        margin-left: 0;
        border-radius: 8px;
        overflow: hidden;
    }

    .iss-video[b-cslnhqcomy] {
        border-radius: 8px;
    }
}
/* /Pages/Dashboard/IssueDone.razor.rz.scp.css */
/* ===== Issue Done page ===== */

.id-badge-wrap[b-3r50wxp8hc] {
    display: flex;
    justify-content: center;
    padding: 16px 0 8px;
}

.id-badge-img[b-3r50wxp8hc] {
    width: clamp(180px, 50vw, 260px);
    height: auto;
    object-fit: contain;
}

/* ---- Done title row ---- */
.id-done-row[b-3r50wxp8hc] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-bottom: 20px;
}

.id-done-title[b-3r50wxp8hc] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 700;
    font-size: clamp(28px, 6vw, 36px);
    color: var(--text, #000);
    margin: 0;
}

.id-done-check[b-3r50wxp8hc] {
    font-size: clamp(28px, 6vw, 36px);
    color: #4A8A68;
}

/* ---- Summary card ---- */
.id-card[b-3r50wxp8hc] {
    width: 100%;
    max-width: 560px;
    background: #fff;
    border: 1.5px solid #d4ddd8;
    border-radius: 14px;
    overflow: hidden;
    margin: 0 auto;
    box-sizing: border-box;
}

.id-card-top[b-3r50wxp8hc] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 18px 24px 14px;
    border-bottom: 1px solid #e8ece9;
}

.id-original-amount[b-3r50wxp8hc] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-size: clamp(22px, 5vw, 28px);
    font-weight: 400;
    color: var(--muted, #848484);
}

.id-original-label[b-3r50wxp8hc] {
    font-size: clamp(13px, 3vw, 15px);
    color: var(--muted, #848484);
    margin-top: 2px;
}

/* Two-column split */
.id-card-split[b-3r50wxp8hc] {
    display: flex;
    align-items: stretch;
}

.id-card-col[b-3r50wxp8hc] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 14px 12px;
}

.id-card-divider[b-3r50wxp8hc] {
    width: 1px;
    background: #e8ece9;
    align-self: stretch;
}

.id-col-amount[b-3r50wxp8hc] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-size: clamp(18px, 4.5vw, 24px);
    font-weight: 400;
    color: var(--muted, #848484);
}

.id-col-label[b-3r50wxp8hc] {
    font-size: clamp(12px, 2.8vw, 14px);
    color: var(--muted, #848484);
    text-align: center;
    line-height: 1.3;
    margin-top: 4px;
}

/* ---- Part Paid & Collect Payment ---- */
.id-summary[b-3r50wxp8hc] {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 16px;
}

.id-part-paid-amount[b-3r50wxp8hc] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-size: clamp(28px, 7vw, 40px);
    font-weight: 700;
    color: var(--text, #000);
    line-height: 1.1;
}

.id-part-paid-label[b-3r50wxp8hc] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-size: clamp(16px, 3.5vw, 20px);
    font-weight: 600;
    color: var(--text, #000);
    margin-top: 2px;
}

.id-collect-amount[b-3r50wxp8hc] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-size: clamp(28px, 7vw, 40px);
    font-weight: 700;
    color: var(--brand, #4A8A68);
    line-height: 1.1;
}

.id-collect-label[b-3r50wxp8hc] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-size: clamp(16px, 3.5vw, 20px);
    font-weight: 700;
    color: var(--text, #000);
    margin-top: 2px;
}

/* ---- Action buttons ---- */
.id-actions[b-3r50wxp8hc] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    width: 100%;
    max-width: 560px;
    padding: 24px 24px 0;
    box-sizing: border-box;
    margin: 0 auto;
}

.id-process-btn[b-3r50wxp8hc] {
    width: 100%;
}

.id-cancel-btn[b-3r50wxp8hc] {
    display: block;
    width: 100%;
    padding: 16px;
    border-radius: 55px;
    background: #5a5a5a;
    color: #fff;
    font-weight: 700;
    font-size: 18px;
    border: none;
    cursor: pointer;
    font-family: inherit;
    text-align: center;
}
.id-cancel-btn:hover[b-3r50wxp8hc] {
    background: #444;
}
.id-cancel-btn:active[b-3r50wxp8hc] {
    opacity: 0.85;
}

/* ---- Responsive: small phones ---- */
@media (max-width: 374px) {
    .id-badge-img[b-3r50wxp8hc] { width: 160px; }
    .id-card-top[b-3r50wxp8hc] { padding: 14px 16px 10px; }
    .id-card-col[b-3r50wxp8hc] { padding: 10px 8px; }
    .id-actions[b-3r50wxp8hc] { padding: 20px 16px 0; }
    .id-cancel-btn[b-3r50wxp8hc] { font-size: 16px; padding: 14px; }
}

/* ---- Responsive: tablet ---- */
@media (min-width: 768px) {
    .id-done-title[b-3r50wxp8hc] { font-size: 36px; }
    .id-done-check[b-3r50wxp8hc] { font-size: 36px; }
    .id-original-amount[b-3r50wxp8hc] { font-size: 28px; }
    .id-col-amount[b-3r50wxp8hc] { font-size: 24px; }
    .id-part-paid-amount[b-3r50wxp8hc] { font-size: 40px; }
    .id-collect-amount[b-3r50wxp8hc] { font-size: 40px; }
}
/* /Pages/Dashboard/IssueGrowthPoints.razor.rz.scp.css */
/* ===== Issue Growth Points form page ===== */

.igp-badge-wrap[b-ptzppjzyj1] {
    display: flex;
    justify-content: center;
    padding: 16px 0 8px;
}

.igp-badge-img[b-ptzppjzyj1] {
	width: clamp(180px, 50vw, 260px);
	height: auto;
	object-fit: contain;
	border-radius: 50%;
}

.igp-title[b-ptzppjzyj1] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 700;
    font-size: clamp(22px, 5vw, 30px);
    color: var(--text, #000);
    text-align: center;
    margin: 0 0 24px;
}

/* ---- Form ---- */
.igp-form[b-ptzppjzyj1] {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 560px;
    padding: 0 24px;
    box-sizing: border-box;
}

.igp-label[b-ptzppjzyj1] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 500;
    font-size: clamp(16px, 3.8vw, 18px);
    color: var(--text, #000);
    text-align: center;
    margin-bottom: 8px;
}

.igp-input[b-ptzppjzyj1] {
    width: 100%;
    padding: 14px 20px;
    border: 1.5px solid #c2d7cc;
    border-radius: 12px;
    background: #fff;
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-size: clamp(20px, 5vw, 26px);
    font-weight: 400;
    color: var(--text, #000);
    text-align: center;
    outline: none;
    box-sizing: border-box;
    margin-bottom: 24px;
}

.igp-input:focus[b-ptzppjzyj1] {
    border-color: var(--brand, #4A8A68);
}

.igp-input[readonly][b-ptzppjzyj1] {
    background: #f9fcfa;
    color: var(--muted, #848484);
}

/* ---- Create button ---- */
.igp-create-btn[b-ptzppjzyj1] {
    width: 100%;
    margin-top: 8px;
}

/* ---- Responsive: small phones ---- */
@media (max-width: 374px) {
    .igp-badge-img[b-ptzppjzyj1] { width: 160px; }
    .igp-form[b-ptzppjzyj1] { padding: 0 16px; }
    .igp-input[b-ptzppjzyj1] { font-size: 20px; padding: 12px 16px; }
}

/* ---- Responsive: tablet ---- */
@media (min-width: 768px) {
    .igp-title[b-ptzppjzyj1] { font-size: 30px; }
    .igp-label[b-ptzppjzyj1] { font-size: 18px; }
    .igp-input[b-ptzppjzyj1] { font-size: 26px; }
}
/* /Pages/Dashboard/IssuePending.razor.rz.scp.css */
/* ===== Issue Pending (submission confirmation) page ===== */

.ip-title[b-20b1ue69qr] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 700;
    font-size: clamp(22px, 5vw, 28px);
    color: var(--text, #000);
    text-align: center;
    margin: 0 0 32px;
    line-height: 1.3;
}

/* ---- Document icon ---- */
.ip-icon-wrap[b-20b1ue69qr] {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 32px;
}

.ip-icon[b-20b1ue69qr] {
	font-size: clamp(80px, 20vw, 120px);
	color: var(--primary, #98BAA8);
}

/* ---- Message text ---- */
.ip-message[b-20b1ue69qr] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-size: clamp(16px, 3.8vw, 18px);
    color: var(--text, #000);
    text-align: center;
    line-height: 1.5;
    margin: 0 0 8px;
}

.ip-signature[b-20b1ue69qr] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-size: clamp(16px, 3.8vw, 18px);
    color: var(--text, #000);
    text-align: center;
    line-height: 1.5;
    margin: 0 0 32px;
}

/* ---- Actions ---- */
.ip-actions[b-20b1ue69qr] {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 480px;
}

.ip-ok-btn[b-20b1ue69qr] {
    width: 100%;
}

/* ---- Responsive: small phones ---- */
@media (max-width: 374px) {
    .ip-icon[b-20b1ue69qr] { font-size: 72px; }
    .ip-message[b-20b1ue69qr] { font-size: 14px; }
    .ip-signature[b-20b1ue69qr] { font-size: 14px; }
}

/* ---- Responsive: tablet ---- */
@media (min-width: 768px) {
    .ip-icon[b-20b1ue69qr] { font-size: 130px; }
    .ip-actions[b-20b1ue69qr] { max-width: 520px; }
}

/* ---- Responsive: desktop ---- */
@media (min-width: 1024px) {
    .ip-icon[b-20b1ue69qr] { font-size: 150px; }
    .ip-actions[b-20b1ue69qr] { max-width: 560px; }
}
/* /Pages/Dashboard/IssuePendingDialog.razor.rz.scp.css */
/* ===== Issue Pending (under review) dialog ===== */

[b-5sk4q4up0p] .ip-dialog-content {
    padding-top: 24px !important;
}

[b-5sk4q4up0p] .ip-dialog-icon-wrap {
    display: flex;
    justify-content: center;
    margin-bottom: 16px;
}

[b-5sk4q4up0p] .ip-dialog-icon {
	font-size: 80px;
	color: var(--primary, #98BAA8);
}

[b-5sk4q4up0p] .ip-dialog-title {
    font-size: 22px;
    margin: 0 0 24px;
    line-height: 1.3;
}
/* /Pages/Dashboard/IssueQrCode.razor.rz.scp.css */
/* ===== Issue QR Code display page ===== */

.iqr-page[b-e0j8rn4wti] {
    background: #F6F8F7;
    padding-bottom: 100px;
    min-height: 100vh;
    justify-content: flex-start;
}

.iqr-badge-wrap[b-e0j8rn4wti] {
    display: flex;
    justify-content: center;
    padding: 16px 0 16px;
}

.iqr-badge-img[b-e0j8rn4wti] {
	width: clamp(180px, 50vw, 260px);
	height: auto;
	object-fit: contain;
	border-radius: 50%;
}

/* ---- QR viewfinder ---- */
.iqr-viewfinder[b-e0j8rn4wti] {
    position: relative;
    width: 78%;
    max-width: 420px;
    aspect-ratio: 1 / 1;
    margin: 0 auto;
}

.iqr-preview[b-e0j8rn4wti] {
    position: absolute;
    inset: 0;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
}

.iqr-qrcode-img[b-e0j8rn4wti] {
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    display: block;
}

.iqr-code-img[b-e0j8rn4wti] {
    width: 80%;
    height: 80%;
    object-fit: contain;
}

/* Generated QR code container */
.iqr-qrcode-container[b-e0j8rn4wti] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.iqr-qrcode-container :deep(img)[b-e0j8rn4wti],
.iqr-qrcode-container :deep(canvas)[b-e0j8rn4wti] {
    max-width: 80%;
    max-height: 80%;
    width: auto;
    height: auto;
}

/* Corner brackets */
.iqr-corner[b-e0j8rn4wti] {
    position: absolute;
    width: clamp(50px, 14vw, 80px);
    height: clamp(50px, 14vw, 80px);
    border-color: #4A8A68;
    border-style: solid;
    border-width: 0;
    z-index: 1;
}
.iqr-corner-tl[b-e0j8rn4wti] {
    top: -4px;
    left: -4px;
    border-top-width: 4px;
    border-left-width: 4px;
    border-top-left-radius: 6px;
}
.iqr-corner-tr[b-e0j8rn4wti] {
    top: -4px;
    right: -4px;
    border-top-width: 4px;
    border-right-width: 4px;
    border-top-right-radius: 6px;
}
.iqr-corner-bl[b-e0j8rn4wti] {
    bottom: -4px;
    left: -4px;
    border-bottom-width: 4px;
    border-left-width: 4px;
    border-bottom-left-radius: 6px;
}
.iqr-corner-br[b-e0j8rn4wti] {
    bottom: -4px;
    right: -4px;
    border-bottom-width: 4px;
    border-right-width: 4px;
    border-bottom-right-radius: 6px;
}

/* ---- SCAN ME bubble ---- */
.iqr-scanme-wrap[b-e0j8rn4wti] {
    display: flex;
    justify-content: center;
    margin-top: 16px;
}

.iqr-scanme-bubble[b-e0j8rn4wti] {
    position: relative;
    background: #000;
    border-radius: 8px;
    padding: 10px 28px;
}

.iqr-scanme-text[b-e0j8rn4wti] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 700;
    font-size: clamp(16px, 4vw, 20px);
    color: #fff;
    letter-spacing: 1px;
}

.iqr-scanme-arrow[b-e0j8rn4wti] {
    position: absolute;
    top: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 10px solid #000;
}

/* ---- Instruction text ---- */
.iqr-instruction[b-e0j8rn4wti] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 500;
    font-size: clamp(18px, 4.2vw, 22px);
    color: var(--text, #000);
    text-align: center;
    line-height: 1.4;
    margin: 28px 0 24px;
}


/* ---- Scan action button ---- */
.iqr-action[b-e0j8rn4wti] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
}

.iqr-action-btn[b-e0j8rn4wti] {
    width: clamp(58px, 16vw, 72px);
    height: clamp(58px, 16vw, 72px);
    border-radius: clamp(12px, 3vw, 16px);
    background: linear-gradient(135deg, #5B9E84, #2D765A);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 1px 1px 20px #05401d36;
}
.iqr-action-btn:hover[b-e0j8rn4wti] {
    box-shadow: 1px 1px 10px #e5f3eb74;
}
.iqr-action-btn:active[b-e0j8rn4wti] {
    box-shadow: 1px 1px 5px #124b2b78;
    transform: translateY(1px);
    transition: box-shadow 120ms ease, transform 120ms ease;
}

.iqr-action-icon[b-e0j8rn4wti] {
    font-size: clamp(30px, 4vw, 32px);
    color: #fff;
}

.iqr-action-label[b-e0j8rn4wti] {
    font-size: clamp(16px, 3vw, 20px);
    font-weight: 400;
    color: var(--text, #000);
    text-align: center;
}

/* ---- Responsive: small phones ---- */
@media (max-width: 374px) {
    .iqr-badge-img[b-e0j8rn4wti] { width: 160px; }
    .iqr-viewfinder[b-e0j8rn4wti] { width: 88%; }
    .iqr-corner[b-e0j8rn4wti] { width: 40px; height: 40px; }
}

/* ---- Responsive: tablet ---- */
@media (min-width: 768px) {
    .iqr-viewfinder[b-e0j8rn4wti] { max-width: 460px; }
    .iqr-corner[b-e0j8rn4wti] { width: 80px; height: 80px; }
    .iqr-instruction[b-e0j8rn4wti] { font-size: 22px; }
}

/* ---- Responsive: desktop ---- */
@media (min-width: 1024px) {
    .iqr-viewfinder[b-e0j8rn4wti] { max-width: 500px; }
    .iqr-corner[b-e0j8rn4wti] { width: 90px; height: 90px; }
}
/* /Pages/Dashboard/IssueSetup.razor.rz.scp.css */
/* ===== Issue Setup page ===== */

.iss-setup-badge-wrap[b-5tlfmu9p29] {
    display: flex;
    justify-content: center;
    padding: 16px 0 8px;
}

.iss-setup-badge-img[b-5tlfmu9p29] {
    width: clamp(180px, 50vw, 260px);
    height: auto;
    object-fit: contain;
}

.iss-setup-title[b-5tlfmu9p29] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 700;
    font-size: clamp(22px, 5vw, 30px);
    color: var(--text, #000);
    text-align: center;
    margin: 8px 0 28px;
}

/* ---- Steps container ---- */
.iss-setup-steps[b-5tlfmu9p29] {
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 100%;
    max-width: 560px;
    padding: 0 24px;
    box-sizing: border-box;
}

/* ---- Individual step ---- */
.iss-setup-step[b-5tlfmu9p29] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.iss-setup-step-header[b-5tlfmu9p29] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.iss-setup-step-label[b-5tlfmu9p29] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 700;
    font-size: clamp(18px, 4vw, 22px);
    color: var(--text, #000);
}

.iss-setup-check[b-5tlfmu9p29] {
    font-size: clamp(18px, 4vw, 22px);
    color: var(--brand, #4A8A68);
}

/* ---- Step button (outline style) ---- */
.iss-setup-step-btn[b-5tlfmu9p29] {
    width: 100%;
    padding: 14px 20px;
    border: 2px solid var(--brand, #4A8A68);
    border-radius: 30px;
    background: transparent;
    color: var(--brand, #4A8A68);
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 600;
    font-size: clamp(16px, 3.8vw, 18px);
    cursor: pointer;
    text-align: center;
    transition: background 200ms ease, color 200ms ease;
}

.iss-setup-step-btn:active[b-5tlfmu9p29] {
    opacity: 0.7;
}

/* Completed step — light green fill */
.iss-setup-step-btn-done[b-5tlfmu9p29] {
    background: #e5f3eb;
    border-color: #c2d7cc;
    color: var(--brand, #4A8A68);
}

/* ---- Bottom actions ---- */
.iss-setup-actions[b-5tlfmu9p29] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    width: 100%;
    max-width: 560px;
    padding: 32px 24px 0;
    box-sizing: border-box;
}

.iss-setup-submit-btn[b-5tlfmu9p29] {
    width: 100%;
}

.iss-setup-cancel-btn[b-5tlfmu9p29] {
    width: 100%;
}

/* ---- Responsive: small phones ---- */
@media (max-width: 374px) {
    .iss-setup-badge-img[b-5tlfmu9p29] { width: 160px; }
    .iss-setup-steps[b-5tlfmu9p29] { padding: 0 16px; gap: 16px; }
    .iss-setup-actions[b-5tlfmu9p29] { padding: 24px 16px 0; }
}

/* ---- Responsive: tablet ---- */
@media (min-width: 768px) {
    .iss-setup-title[b-5tlfmu9p29] { font-size: 30px; }
    .iss-setup-step-label[b-5tlfmu9p29] { font-size: 22px; }
    .iss-setup-check[b-5tlfmu9p29] { font-size: 22px; }
    .iss-setup-step-btn[b-5tlfmu9p29] { font-size: 18px; }
}
/* /Pages/Dashboard/MainDashboard.razor.rz.scp.css */
/* ===== Member Summary page ===== */

.ms-page[b-0wplrwn9wd] {
    display: flex;
    flex-direction: column;
    align-items: center;
    background: #F6F8F7;
    min-height: 100vh;
    padding-bottom: 100px;
    position: relative;
}

/* ---- Full green curved background ---- */
.ms-green-bg[b-0wplrwn9wd] {
    position: absolute;
    top: -75px;
    left: 0;
    right: 0;
    height: 45%;
    z-index: 0;
    line-height: 0;
    overflow: hidden;
    pointer-events: none;
}
.ms-green-bg svg[b-0wplrwn9wd] {
    width: 100%;
    height: 100%;
    display: block;
}

/* ---- Header title ---- */
.ms-header[b-0wplrwn9wd] {
    position: relative;
    z-index: 1;
    width: 100%;
    text-align: center;
    padding: 16px 16px 12px;
}
.ms-header-title[b-0wplrwn9wd] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 700;
    font-size: clamp(20px, 5vw, 28px);
    color: #fff;
    margin: 0;
}

/* ---- Welcome section ---- */
.ms-welcome[b-0wplrwn9wd] {
    display: flex;
    align-items: center;
    gap: 16px;
    width: 100%;
    max-width: 560px;
    padding: 16px 24px;
    position: relative;
    z-index: 1;
}
.ms-badge[b-0wplrwn9wd] {
    width: clamp(70px, 26vw, 120px);
    height: clamp(70px, 26vw, 120px);
    flex-shrink: 0;
}
.ms-badge-img[b-0wplrwn9wd] {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.ms-welcome-title[b-0wplrwn9wd] {
	font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
	font-weight: 500;
	font-size: clamp(22px, 4.5vw, 25px);
	color: var(--text-white, #fff);
	margin: 0 0 4px;
	text-shadow: 1px 1px 3px #05401D57;
}
.ms-welcome-sub[b-0wplrwn9wd] {
	font-size: clamp(17px, 3.2vw, 20px);
	color: var(--text-white, #fff);
	margin: 0;
	text-shadow: 1px 1px 3px #05401D57;
}

/* ---- Info cards ---- */
.ms-cards[b-0wplrwn9wd] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    width: 100%;
    max-width: 560px;
    padding: 0 24px;
    box-sizing: border-box;
    position: relative;
    z-index: 1;
}
.ms-card[b-0wplrwn9wd] {
    display: flex;
    align-items: center;
    gap: 12px;
    background: #fff;
    border-radius: 14px;
    padding: 14px 18px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06);
    min-width: 0;
}
.ms-card-clickable[b-0wplrwn9wd] {
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
}
.ms-card-clickable:active[b-0wplrwn9wd] {
    opacity: 0.7;
}
.ms-card-icon[b-0wplrwn9wd] {
    width: 36px;
    height: 36px;
    object-fit: contain;
    flex-shrink: 0;
}
.ms-card-fa-icon[b-0wplrwn9wd] {
    font-size: 28px;
    color: #000;
    flex-shrink: 0;
    width: 36px;
    text-align: center;
}
.ms-card-text[b-0wplrwn9wd] {
    flex: 1;
    font-size: clamp(17px, 3.5vw, 18px);
    font-weight: 100;
    color: var(--text, #000);
    min-width: 0;
}
.ms-card-currency[b-0wplrwn9wd] {
    font-size: clamp(16px, 4vw, 18px);
    font-weight: 600;
    color: var(--text, #000);
    flex-shrink: 0;
}
.ms-card-amount[b-0wplrwn9wd] {
    font-size: clamp(20px, 5vw, 24px);
    font-weight: 700;
    color: var(--text, #000);
    flex-shrink: 0;
}

/* ---- Avatar ---- */
.ms-avatar-wrap[b-0wplrwn9wd] {
    padding: 30px 0 16px;
    position: relative;
    z-index: 1;
    pointer-events: none;
}
.ms-avatar[b-0wplrwn9wd] {
    width: clamp(160px, 48vw, 188px);
    height: clamp(160px, 48vw, 188px);
    cursor: pointer;
    pointer-events: auto;
    clip-path: circle(50%);
}

/* ---- Quick action buttons ---- */
.ms-actions[b-0wplrwn9wd] {
    display: flex;
    justify-content: space-between;
    gap: clamp(10px, 3vw, 16px);
    padding: 8px 24px;
    width: 100%;
    max-width: 560px;
    box-sizing: border-box;
    position: relative;
    z-index: 1;
}
.ms-action-item[b-0wplrwn9wd] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    position: relative;
    pointer-events: none;
}
.ms-action-btn[b-0wplrwn9wd] {
	width: clamp(58px, 16vw, 72px);
	height: clamp(58px, 16vw, 72px);
	border-radius: clamp(12px, 3vw, 16px);
	background: linear-gradient(135deg, #5B9E84, #2D765A);
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	box-shadow: 1px 1px 20px #05401d36;
	pointer-events: auto;
}
.ms-action-btn:hover[b-0wplrwn9wd] {	
	box-shadow: 1px 1px 10px #e5f3eb74;
}
.ms-action-btn:active[b-0wplrwn9wd],
.ms-action-btn:focus-visible[b-0wplrwn9wd] {
	box-shadow: 1px 1px 5px #124b2b78;
	transform: translateY(1px);
	transition: box-shadow 120ms ease, transform 120ms ease;
	outline: none;
}
.ms-action-fa-icon[b-0wplrwn9wd] {
    font-size: clamp(30px, 4vw, 32px);
    color: #fff;
}
.ms-action-label[b-0wplrwn9wd] {
    font-size: clamp(16px, 3vw, 20px);
    font-weight: 400;
    color: var(--text, #000);
    text-align: center;
}

/* ---- Disabled action (e.g. Offers — coming soon) ---- */
.ms-action-btn-disabled[b-0wplrwn9wd] {
    opacity: 0.35;
    pointer-events: none;
    cursor: default;
    filter: grayscale(1);
}
.ms-action-label-disabled[b-0wplrwn9wd] {
    opacity: 0.35;
    color: var(--text, #000);
}
.ms-action-item-disabled[b-0wplrwn9wd] {
    pointer-events: none;
    cursor: default;
}


/* Make inline SVG/icon images scale and align like the FontAwesome icons */
.ms-action-btn img[b-0wplrwn9wd] {
    width: clamp(35px, 4vw, 56px);
    height: clamp(35px, 4vw, 56px);
    object-fit: contain;
    display: block;
    flex-shrink: 0;
}

/* Match the larger FontAwesome sizes used at these breakpoints */
@media (min-width: 768px) {
    .ms-action-btn img[b-0wplrwn9wd] {
        width: 35px;
        height: 35px;
    }
}

@media (min-width: 1024px) {
    .ms-action-btn img[b-0wplrwn9wd] {
        width: 28px;
        height: 28px;
    }
}


.gp-header-lato-400[b-0wplrwn9wd] {
	font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
	font-weight: 400;
	/* Minimum 24px, scale with viewport, cap at 32px */
	font-size: clamp(24px, 2.2vw, 32px);
	line-height: 1.2;
	color: #fff; /* matches existing header contrast */
	margin: 0;
	letter-spacing: 0.2px;
	text-shadow: 1px 1px 3px #05401D57; 
}


/* ---- Responsive: small phones ---- */
@media (max-width: 374px) {
    .ms-green-bg[b-0wplrwn9wd] { height: 40%; }
    .ms-header[b-0wplrwn9wd] { padding: 12px 12px 8px; }
    .ms-welcome[b-0wplrwn9wd] { gap: 10px; padding: 12px 16px; }
    .ms-cards[b-0wplrwn9wd] { padding: 0 16px; gap: 8px; }
    .ms-card[b-0wplrwn9wd] { padding: 10px 12px; gap: 8px; }
    .ms-card-fa-icon[b-0wplrwn9wd] { font-size: 22px; width: 28px; }
    .ms-avatar-wrap[b-0wplrwn9wd] { padding: 16px 0 12px; }
    .ms-actions[b-0wplrwn9wd] { padding: 8px 16px; }
}

/* ---- Responsive: tablet ---- */
@media (min-width: 768px) {
    .ms-green-bg[b-0wplrwn9wd] { height: 42%; left: -24px; right: -24px; }
    .ms-header-title[b-0wplrwn9wd] { font-size: 28px; }
    .ms-badge[b-0wplrwn9wd] { width: 120px; height: 120px; }
    .ms-welcome-title[b-0wplrwn9wd] { font-size: 26px; }
    .ms-welcome-sub[b-0wplrwn9wd] { font-size: 16px; }
    .ms-card-text[b-0wplrwn9wd] { font-size: 16px; }
    .ms-card-fa-icon[b-0wplrwn9wd] { font-size: 32px; }
    .ms-avatar[b-0wplrwn9wd] { width: 220px; height: 220px; }
    .ms-action-btn[b-0wplrwn9wd] { width: 68px; height: 68px; }
    .ms-action-fa-icon[b-0wplrwn9wd] { font-size: 30px; }
    .ms-actions[b-0wplrwn9wd] { gap: 20px; }
    .ms-action-label[b-0wplrwn9wd] { font-size: 13px; }
}

/* ---- Responsive: desktop ---- */
@media (min-width: 1024px) {
    .ms-green-bg[b-0wplrwn9wd] { height: 40%; left: -40px; right: -40px; }
    .ms-header-title[b-0wplrwn9wd] { font-size: 28px; }
    .ms-welcome[b-0wplrwn9wd] { max-width: 640px; }
    .ms-welcome-title[b-0wplrwn9wd] { font-size: 22px; }
    .ms-welcome-sub[b-0wplrwn9wd] { font-size: 15px; }
    .ms-cards[b-0wplrwn9wd] { max-width: 640px; }
    .ms-card-text[b-0wplrwn9wd] { font-size: 16px; }
    .ms-card-amount[b-0wplrwn9wd] { font-size: 20px; }
    .ms-actions[b-0wplrwn9wd] { max-width: 640px; }
    .ms-action-btn[b-0wplrwn9wd] { width: 64px; height: 64px; border-radius: 14px; }
    .ms-action-fa-icon[b-0wplrwn9wd] { font-size: 28px; }
    .ms-action-label[b-0wplrwn9wd] { font-size: 13px; }
    .ms-avatar[b-0wplrwn9wd] { width: 180px; height: 180px; }
}

/* mobile rotated to landscape: increase green background height */
@media (max-width: 767px) and (orientation: landscape) {
    .ms-green-bg[b-0wplrwn9wd] {
        height: 89%;
    }
}



/* /Pages/Dashboard/MerchantTermsDialog.razor.rz.scp.css */
/* ===== Merchant Terms Dialog ===== */

.mt-page[b-xkei6j9lf1] {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    background: #fff;
    padding: 16px 24px 32px;
}

.mt-content[b-xkei6j9lf1] {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding-top: 8px;
}

.mt-title[b-xkei6j9lf1] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 700;
    font-size: clamp(24px, 5vw, 30px);
    color: var(--text, #000);
    text-align: center;
    margin: 0 0 20px;
}

.mt-intro[b-xkei6j9lf1] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-size: clamp(15px, 3.8vw, 17px);
    color: var(--text, #000);
    line-height: 1.6;
    margin: 0 0 16px;
}

.mt-list[b-xkei6j9lf1] {
    list-style: disc;
    padding-left: 24px;
    margin: 0 0 16px;
}

.mt-list-item[b-xkei6j9lf1] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-size: clamp(15px, 3.8vw, 17px);
    color: var(--text, #000);
    line-height: 1.6;
    margin-bottom: 14px;
}

.mt-footer[b-xkei6j9lf1] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-size: clamp(15px, 3.8vw, 17px);
    color: var(--text, #000);
    line-height: 1.6;
    margin: 0 0 28px;
}

.mt-actions[b-xkei6j9lf1] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: auto;
}

.mt-agree-btn[b-xkei6j9lf1] {
    width: 100%;
}

.mt-decline-btn[b-xkei6j9lf1] {
    width: 100%;
}

/* ---- Responsive: small phones ---- */
@media (max-width: 374px) {
    .mt-page[b-xkei6j9lf1] { padding: 12px 16px 24px; }
    .mt-list[b-xkei6j9lf1] { padding-left: 20px; }
}

/* ---- Responsive: tablet ---- */
@media (min-width: 768px) {
    .mt-title[b-xkei6j9lf1] { font-size: 30px; }
    .mt-intro[b-xkei6j9lf1],
    .mt-list-item[b-xkei6j9lf1],
    .mt-footer[b-xkei6j9lf1] { font-size: 17px; }
}
/* /Pages/Dashboard/Notifications.razor.rz.scp.css */
/* ===== Notifications page ===== */

.ntf-page[b-b7o0wbwl3y] {
    padding-top: 0 !important;
}

/* ---- Fixed top section ---- */
.ntf-top-section[b-b7o0wbwl3y] {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    padding: 16px 0 0;
    background: #F6F8F7;
    position: sticky;
    top: 0;
    z-index: 10;
}

/* ---- Icon row: Q&A / Avatar / Notif ---- */
.ntf-icon-row[b-b7o0wbwl3y] {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: clamp(24px, 8vw, 60px);
    width: 100%;
    max-width: 480px;
    margin-bottom: 12px;
}

.ntf-side-btn[b-b7o0wbwl3y] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 8px;
    -webkit-tap-highlight-color: transparent;
}

.ntf-side-icon[b-b7o0wbwl3y] {
    font-size: 28px;
    color: var(--muted, #848484);
}

.ntf-side-icon-active[b-b7o0wbwl3y] {
    color: #2D765A;
}

.ntf-side-label[b-b7o0wbwl3y] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-size: 13px;
    font-weight: 600;
    color: var(--text, #000);
}

/* ---- Avatar (center) ---- */
.ntf-avatar-wrap[b-b7o0wbwl3y] {
    display: flex;
    justify-content: center;
}

.ntf-avatar[b-b7o0wbwl3y] {
    width: clamp(140px, 40vw, 200px);
    height: clamp(140px, 40vw, 200px);
}

/* ---- Title ---- */
.ntf-title[b-b7o0wbwl3y] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 700;
    font-size: clamp(22px, 5.5vw, 30px);
    color: var(--text, #000);
    text-align: center;
    margin: 8px 0 16px;
}

/* ---- Notification list ---- */
.ntf-list[b-b7o0wbwl3y] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: 100%;
    max-width: 560px;
    padding-bottom: 24px;
}

/* ---- Notification card ---- */
.ntf-card[b-b7o0wbwl3y] {
    background: #fff;
    border: 1.5px solid #86AF99;
    border-radius: 12px;
    padding: 16px 18px;
    cursor: pointer;
    transition: box-shadow 0.2s;
    -webkit-tap-highlight-color: transparent;
}

.ntf-card:active[b-b7o0wbwl3y] {
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}

.ntf-card-expanded[b-b7o0wbwl3y] {
    box-shadow: 0 2px 12px rgba(0,0,0,0.06);
}

/* ---- Card header (date + chevron) ---- */
.ntf-card-header[b-b7o0wbwl3y] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
}

.ntf-card-date[b-b7o0wbwl3y] {
    font-size: 14px;
    color: var(--text, #000);
    font-weight: 400;
}

.ntf-card-chevron[b-b7o0wbwl3y] {
    font-size: 14px;
    color: var(--muted, #848484);
}

/* ---- Card body ---- */
.ntf-card-body[b-b7o0wbwl3y] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.ntf-card-title[b-b7o0wbwl3y] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 700;
    font-size: 16px;
    color: var(--text, #000);
    line-height: 1.4;
}

.ntf-card-summary[b-b7o0wbwl3y] {
    font-size: 15px;
    color: var(--text, #000);
    line-height: 1.4;
}

.ntf-card-full[b-b7o0wbwl3y] {
    font-size: 15px;
    color: var(--text, #000);
    line-height: 1.5;
    margin-top: 2px;
}

.ntf-card-link[b-b7o0wbwl3y] {
    color: #0066CC;
    font-size: 15px;
    font-weight: 600;
    text-decoration: underline;
    margin-top: 4px;
}

/* ---- Responsive: small phones ---- */
@media (max-width: 374px) {
    .ntf-icon-row[b-b7o0wbwl3y] { gap: 16px; }
    .ntf-side-icon[b-b7o0wbwl3y] { font-size: 24px; }
    .ntf-side-label[b-b7o0wbwl3y] { font-size: 12px; }
    .ntf-avatar[b-b7o0wbwl3y] { width: 120px; height: 120px; }
    .ntf-card[b-b7o0wbwl3y] { padding: 12px 14px; }
    .ntf-card-title[b-b7o0wbwl3y] { font-size: 14px; }
    .ntf-card-summary[b-b7o0wbwl3y], .ntf-card-full[b-b7o0wbwl3y] { font-size: 13px; }
    .ntf-list[b-b7o0wbwl3y] { gap: 12px; }
}

/* ---- Responsive: tablet ---- */
@media (min-width: 768px) {
    .ntf-avatar[b-b7o0wbwl3y] { width: 220px; height: 220px; }
    .ntf-list[b-b7o0wbwl3y] { max-width: 640px; }
    .ntf-card-title[b-b7o0wbwl3y] { font-size: 18px; }
    .ntf-card-summary[b-b7o0wbwl3y], .ntf-card-full[b-b7o0wbwl3y] { font-size: 16px; }
    .ntf-side-icon[b-b7o0wbwl3y] { font-size: 32px; }
}

/* ---- Responsive: desktop ---- */
@media (min-width: 1024px) {
    .ntf-list[b-b7o0wbwl3y] { max-width: 720px; }
    .ntf-avatar[b-b7o0wbwl3y] { width: 240px; height: 240px; }
}

/* ===== Q&A tab ===== */

/* ---- Search bar ---- */
.qa-search-wrap[b-b7o0wbwl3y] {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    max-width: 560px;
    background: #E8ECE9;
    border-radius: 12px;
    padding: 12px 16px;
    margin-bottom: 20px;
}

.qa-search-icon[b-b7o0wbwl3y] {
    font-size: 20px;
    color: var(--muted, #848484);
    flex-shrink: 0;
}

.qa-search-input[b-b7o0wbwl3y] {
    flex: 1;
    border: none;
    outline: none;
    background: transparent;
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-size: 16px;
    color: var(--text, #000);
}

.qa-search-input[b-b7o0wbwl3y]::placeholder {
    color: var(--muted, #848484);
}

/* ---- Q&A card header (question + chevron) ---- */
.qa-card-header[b-b7o0wbwl3y] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
}

.qa-card-header .ntf-card-chevron[b-b7o0wbwl3y] {
    flex-shrink: 0;
    margin-top: 4px;
}

/* ---- Q&A answer text ---- */
.qa-card-answer[b-b7o0wbwl3y] {
    font-size: 15px;
    color: #000;
    line-height: 1.5;
    margin-top: 8px;
}

/* ---- Q&A link ---- */
.qa-card-link[b-b7o0wbwl3y] {
    color: #0066CC;
    font-size: 15px;
    font-weight: 600;
    text-decoration: underline;
    margin-top: 8px;
}

/* ---- Q&A responsive: small phones ---- */
@media (max-width: 374px) {
    .qa-search-wrap[b-b7o0wbwl3y] { padding: 10px 12px; }
    .qa-search-input[b-b7o0wbwl3y] { font-size: 14px; }
    .qa-card-answer[b-b7o0wbwl3y] { font-size: 13px; }
}

/* ---- Q&A responsive: tablet ---- */
@media (min-width: 768px) {
    .qa-search-wrap[b-b7o0wbwl3y] { max-width: 640px; }
    .qa-card-answer[b-b7o0wbwl3y] { font-size: 16px; }
}

/* ---- Q&A responsive: desktop ---- */
@media (min-width: 1024px) {
    .qa-search-wrap[b-b7o0wbwl3y] { max-width: 720px; }
}
/* /Pages/Dashboard/Profile.razor.rz.scp.css */
/* ===== Profile page ===== */
/* Layout: .gp-page | Loading: .gp-loading */

.pf-title[b-fpd06oepza] {
    margin: 0 0 20px;
}

/* ---- Avatar section ---- */
.pf-avatar-section[b-fpd06oepza] {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 24px;
    position: relative;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
}

.pf-avatar-circle[b-fpd06oepza] {
    width: 140px;
    height: 140px;
    border-radius: 50%;
    border: 2px dashed #86AF99;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    overflow: hidden;
    background: #fff;
    flex-shrink: 0;
}

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

.pf-avatar-placeholder[b-fpd06oepza] {
    font-size: 14px;
    font-weight: 600;
    color: var(--muted, #848484);
    text-align: center;
    line-height: 1.3;
}

.pf-avatar-hint[b-fpd06oepza] {
    font-size: 12px;
    font-weight: 500;
    color: var(--muted, #848484);
    text-align: center;
    line-height: 1.3;
    margin-top: 4px;
}

.pf-avatar-delete[b-fpd06oepza] {
    position: absolute;
    top: 0;
    right: -17px;
    background: #fff;
    border: 1px solid #e8ece9;
    border-radius: 50%;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    padding: 0;
    color: var(--muted, #848484);
    font-size: 16px;
    box-shadow: 0 1px 4px rgba(0,0,0,0.1);
    z-index: 2;
}
.pf-avatar-delete:hover[b-fpd06oepza] {
    color: #dc3545;
}

/* ---- Upload / Change photo button ---- */
.pf-upload-btn[b-fpd06oepza] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    font-size: 14px;
    font-weight: 600;
    color: var(--brand, #4A8A68);
    padding: 8px 20px;
    border: 1.5px solid var(--brand, #4A8A68);
    border-radius: 999px;
    background: #fff;
    margin-bottom: 16px;
    user-select: none;
    transition: background 0.15s, color 0.15s;
}
.pf-upload-btn:hover[b-fpd06oepza] {
    background: var(--brand, #4A8A68);
    color: #fff;
}

/* ---- Avatar upload overlay ---- */
.pf-avatar-overlay[b-fpd06oepza] {
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.55);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    z-index: 1;
}

.pf-avatar-overlay-success[b-fpd06oepza] {
    background: rgba(74, 138, 104, 0.65);
    animation: pf-fade-in-b-fpd06oepza 0.3s ease;
}

.pf-avatar-spinner[b-fpd06oepza] {
    font-size: 28px;
    color: #fff;
}

.pf-avatar-overlay-text[b-fpd06oepza] {
    font-size: 12px;
    font-weight: 600;
    color: #fff;
}

.pf-avatar-success-icon[b-fpd06oepza] {
    font-size: 42px;
    color: #fff;
    animation: pf-pop-in-b-fpd06oepza 0.35s ease;
}

@keyframes pf-fade-in-b-fpd06oepza {
    from { opacity: 0; }
    to   { opacity: 1; }
}

@keyframes pf-pop-in-b-fpd06oepza {
    0%   { transform: scale(0); opacity: 0; }
    60%  { transform: scale(1.2); }
    100% { transform: scale(1); opacity: 1; }
}

/* Make the avatar circle a positioning context for the overlay */
.pf-avatar-circle[b-fpd06oepza] {
    position: relative;
}


/* ---- Question card (bank account) ---- */
.pf-question-card[b-fpd06oepza] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 16px;
    background: #fff;
    border-radius: 12px;
    border: 1px solid #e8ece9;
}
.pf-question-icon[b-fpd06oepza] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--brand, #4A8A68);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.pf-question-icon-inner[b-fpd06oepza] {
    font-size: 14px;
    color: #fff;
}
.pf-question-content[b-fpd06oepza] {
    flex: 1;
    min-width: 0;
}
.pf-question-text[b-fpd06oepza] {
    font-size: 15px;
    font-weight: 600;
    color: var(--text, #000);
    margin: 0 0 12px;
    line-height: 1.4;
}

/* ---- Radio buttons ---- */
.pf-radio-row[b-fpd06oepza] {
    display: flex;
    gap: 32px;
}
.pf-radio-label[b-fpd06oepza] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 15px;
    font-weight: 600;
    color: var(--text, #000);
    cursor: pointer;
}
.pf-radio[b-fpd06oepza] {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    border: 2px solid #86AF99;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    cursor: pointer;
}
.pf-radio.pf-radio-active[b-fpd06oepza] {
    border-color: var(--brand, #4A8A68);
    background: var(--brand, #4A8A68);
}
.pf-radio.pf-radio-active[b-fpd06oepza]::after {
    content: '';
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #fff;
}

/* ---- Make location public checkbox ---- */
.pf-public-check[b-fpd06oepza] {
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
}
.pf-public-text[b-fpd06oepza] {
    font-size: 14px;
    font-weight: 600;
    color: var(--brand, #4A8A68);
    font-style: italic;
}

/* ---- Map location row (clickable input-group) ---- */
.pf-map-row[b-fpd06oepza] {
    cursor: pointer;
}
.pf-map-display[b-fpd06oepza] {
    white-space: normal;
    word-break: break-word;
    line-height: 1.4;
    user-select: none;
    pointer-events: none;
}
.pf-map-placeholder[b-fpd06oepza] {
    color: var(--muted, #848484);
}

/* ---- Lat / Lng display row ---- */
.pf-latlng-row[b-fpd06oepza] {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin: -6px 0 -4px;
    padding-left: 4px;
}
.pf-latlng-label[b-fpd06oepza] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    font-weight: 500;
    color: var(--muted, #848484);
    opacity: 0.7;
}
.pf-latlng-label .fas[b-fpd06oepza],
.pf-latlng-label .fal[b-fpd06oepza] {
    font-size: 10px;
    color: var(--muted, #848484);
}

/* ---- Personal location hint ---- */
.pf-location-private[b-fpd06oepza] {
    font-size: 14px;
    font-weight: 600;
    color: var(--brand, #4A8A68);
    font-style: italic;
    margin: -6px 0 0;
}

/* ---- Contact number visibility toggle ---- */
.pf-contact-toggle[b-fpd06oepza] {
    background: none;
    border: none;
    padding: 0 10px;
    cursor: pointer;
    color: var(--brand, #4A8A68);
    font-size: 18px;
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

.pf-contact-toggle:focus-visible[b-fpd06oepza] {
    outline: 2px solid var(--brand, #4A8A68);
    border-radius: 4px;
}

/* ---- Manage Account link ---- */
.pf-manage-account[b-fpd06oepza] {
    margin-top: 16px;
    text-align: center;
    width: 100%;
    max-width: 480px;
}

/* ---- Form ---- */
.pf-form[b-fpd06oepza] {
    display: flex;
    flex-direction: column;
    gap: 14px;
    width: 100%;
    max-width: 480px;
}

/* ---- Responsive: small phones ---- */
@media (max-width: 374px) {
    .pf-avatar-circle[b-fpd06oepza] { width: 110px; height: 110px; }
    .pf-avatar-placeholder[b-fpd06oepza] { font-size: 12px; }
    .pf-avatar-hint[b-fpd06oepza] { font-size: 11px; }
    .pf-form[b-fpd06oepza] { gap: 10px; }
    .pf-question-card[b-fpd06oepza] { padding: 12px; }
    .pf-question-text[b-fpd06oepza] { font-size: 13px; }
    }

/* ---- Responsive: tablet ---- */
@media (min-width: 768px) {
    .pf-avatar-circle[b-fpd06oepza] { width: 160px; height: 160px; }
    .pf-form[b-fpd06oepza] { max-width: 520px; }
    .pf-manage-account[b-fpd06oepza] { max-width: 520px; }
}

/* ---- Responsive: desktop ---- */
@media (min-width: 1024px) {
    .pf-form[b-fpd06oepza] { max-width: 560px; }
    .pf-manage-account[b-fpd06oepza] { max-width: 560px; }
    .pf-avatar-circle[b-fpd06oepza] { width: 180px; height: 180px; }
}
/* /Pages/Dashboard/RewardDetail.razor.rz.scp.css */
/* ===== Reward Detail page — merchant transaction history ===== */
/* Layout: .gp-page | Loading: .gp-loading | Table: .gp-table-wrap .gp-table */
/* Back link: .auth-link (global) | Error: .auth-error (global) */
/* Uses gphd- prefix for all scoped classes */

/* ---- Back link ---- */
.gphd-back-link[b-0r07scgud4] {
    align-self: flex-start;
    margin-bottom: 16px;
}

/* ---- Merchant header ---- */
.gphd-header[b-0r07scgud4] {
    display: flex;
    align-items: center;
    gap: 16px;
    width: 100%;
    max-width: 640px;
    padding: 16px 0 8px;
}
.gphd-header-badge[b-0r07scgud4] {
    width: clamp(64px, 18vw, 84px);
    height: clamp(64px, 18vw, 84px);
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
    background: #f0f0f0;
}
.gphd-header-badge-img[b-0r07scgud4] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.gphd-header-info[b-0r07scgud4] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}
.gphd-header-name[b-0r07scgud4] {
    font-size: 14px;
    font-weight: 600;
    color: var(--text, #000);
}
.gphd-header-points[b-0r07scgud4] {
    font-size: clamp(18px, 5vw, 24px);
    font-weight: 700;
    color: var(--brand, #4A8A68);
}

/* ---- Section divider ---- */
.gphd-divider[b-0r07scgud4] {
    width: 100%;
    max-width: 640px;
    border: none;
    border-top: 2px solid #e8ece9;
    margin: 0 0 16px;
}

/* ---- Table cells ---- */
.gphd-td-date[b-0r07scgud4] {
    white-space: nowrap;
    font-weight: 600;
    font-size: 14px;
    font-variant-numeric: tabular-nums;
}
.gphd-td-ref[b-0r07scgud4] {
    color: var(--muted, #848484);
    font-size: 12px;
}

/* ---- Points delta ---- */
.gphd-pts-positive[b-0r07scgud4] {
    color: var(--accent, #FF700D);
    font-weight: 700;
    font-variant-numeric: tabular-nums;
}
.gphd-pts-negative[b-0r07scgud4] {
    color: #dc3545;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
}

/* ---- Running total ---- */
.gphd-td-total[b-0r07scgud4] {
    font-weight: 600;
    font-variant-numeric: tabular-nums;
}

/* ---- Responsive: small phones ---- */
@media (max-width: 374px) {
    .gp-td[b-0r07scgud4] { padding: 12px 8px; }
    .gphd-td-ref[b-0r07scgud4] { font-size: 11px; }
}

/* ---- Responsive: tablet ---- */
@media (min-width: 768px) {
    .gphd-header-name[b-0r07scgud4] { font-size: 16px; }
}
/* /Pages/Dashboard/RewardLevel.razor.rz.scp.css */
/* ===== Set Initial Reward Level page ===== */

.rl-title[b-fvpqyv24rw] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 700;
    font-size: clamp(22px, 5vw, 28px);
    color: var(--text, #000);
    text-align: center;
    margin: 0 0 32px;
    line-height: 1.3;
}

/* ---- Form ---- */
.rl-form[b-fvpqyv24rw] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: 100%;
    max-width: 480px;
}

/* ---- Field row ---- */
.rl-field[b-fvpqyv24rw] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 16px;
}

.rl-label[b-fvpqyv24rw] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 700;
    font-size: clamp(16px, 3.8vw, 18px);
    color: var(--text, #000);
    flex: 1;
}

/* ---- Select dropdown ---- */
.rl-select-wrap[b-fvpqyv24rw] {
    position: relative;
    display: flex;
    align-items: center;
    background: #fff;
    border: 2px solid #86AF99;
    border-radius: 10px;
    overflow: hidden;
    flex-shrink: 0;
    min-width: 100px;
}

.rl-select[b-fvpqyv24rw] {
    appearance: none;
    -webkit-appearance: none;
    border: none;
    outline: none;
    background: transparent;
    padding: 12px 40px 12px 16px;
    font-size: 16px;
    font-weight: 600;
    color: var(--text, #000);
    font-family: inherit;
    cursor: pointer;
    width: 100%;
}

.rl-select-chevron[b-fvpqyv24rw] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 14px 0 0;
    color: var(--muted, #848484);
    font-size: 14px;
    pointer-events: none;
    flex-shrink: 0;
    position: absolute;
    right: 0;
}

/* ---- Action buttons ---- */
.rl-update-btn[b-fvpqyv24rw] {
    width: 100%;
    margin-top: 8px;
}

.rl-cancel-btn[b-fvpqyv24rw] {
    width: 100%;
    max-width: 100%;
}

/* ---- Responsive: small phones ---- */
@media (max-width: 374px) {
    .rl-form[b-fvpqyv24rw] { gap: 12px; }
    .rl-label[b-fvpqyv24rw] { font-size: 14px; }
    .rl-select[b-fvpqyv24rw] { font-size: 14px; padding: 10px 36px 10px 12px; }
    .rl-field[b-fvpqyv24rw] { gap: 10px; }
}

/* ---- Responsive: tablet ---- */
@media (min-width: 768px) {
    .rl-form[b-fvpqyv24rw] { max-width: 520px; }
    .rl-label[b-fvpqyv24rw] { font-size: 18px; }
    .rl-select[b-fvpqyv24rw] { font-size: 18px; padding: 14px 44px 14px 18px; }
}

/* ---- Responsive: desktop ---- */
@media (min-width: 1024px) {
    .rl-form[b-fvpqyv24rw] { max-width: 560px; }
}
/* /Pages/Dashboard/Scan.razor.rz.scp.css */
/* ===== Scan page ===== */

.scan-page[b-gw3jntc9qd] {
    background: #F6F8F7;
    padding-bottom: 100px;
    min-height: 100vh;
    justify-content: flex-start;
}

.scan-title[b-gw3jntc9qd] {
    font-size: clamp(24px, 5.5vw, 32px);
    margin-bottom: clamp(24px, 5vh, 48px);
}

/* ---- QR viewfinder ---- */
.scan-viewfinder[b-gw3jntc9qd] {
    position: relative;
    width: 78%;
    max-width: 420px;
    aspect-ratio: 5 / 4;
    margin: 0 auto;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
}

.scan-preview[b-gw3jntc9qd] {
    position: absolute;
    inset: 0;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
}

.scan-status[b-gw3jntc9qd] {
    color: var(--muted, #848484);
    font-size: 16px;
}

.scan-tap-hint[b-gw3jntc9qd] {
    font-size: 18px;
    font-weight: 500;
    color: var(--brand, #4A8A68);
}

/* Camera feed fills the viewfinder */
.scan-camera-feed[b-gw3jntc9qd] {
    width: 100%;
    height: 100%;
}

/* Override html5-qrcode default styling to fit inside the viewfinder */
[b-gw3jntc9qd] #qr-reader {
    border: none !important;
    width: 100% !important;
    height: 100% !important;
}
[b-gw3jntc9qd] #qr-reader video {
    object-fit: cover;
    border-radius: 0;
}
[b-gw3jntc9qd] #qr-reader__dashboard {
    display: none !important;
}

/* Corner brackets */
.scan-corner[b-gw3jntc9qd] {
    position: absolute;
    width: clamp(50px, 14vw, 80px);
    height: clamp(50px, 14vw, 80px);
    border-color: #4A8A68;
    border-style: solid;
    border-width: 0;
    z-index: 1;
}
.scan-corner-tl[b-gw3jntc9qd] {
    top: -4px;
    left: -4px;
    border-top-width: 4px;
    border-left-width: 4px;
    border-top-left-radius: 6px;
}
.scan-corner-tr[b-gw3jntc9qd] {
    top: -4px;
    right: -4px;
    border-top-width: 4px;
    border-right-width: 4px;
    border-top-right-radius: 6px;
}
.scan-corner-bl[b-gw3jntc9qd] {
    bottom: -4px;
    left: -4px;
    border-bottom-width: 4px;
    border-left-width: 4px;
    border-bottom-left-radius: 6px;
}
.scan-corner-br[b-gw3jntc9qd] {
    bottom: -4px;
    right: -4px;
    border-bottom-width: 4px;
    border-right-width: 4px;
    border-bottom-right-radius: 6px;
}

/* ---- Badge ---- */
.scan-badge-wrap[b-gw3jntc9qd] {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    padding-top: clamp(48px, 12vh, 100px);
}
.scan-badge-img[b-gw3jntc9qd] {
    width: clamp(160px, 44vw, 210px);
    height: auto;
    object-fit: contain;
}

/* ---- Responsive ---- */
@media (max-width: 374px) {
    .scan-viewfinder[b-gw3jntc9qd] { width: 88%; }
    .scan-corner[b-gw3jntc9qd] { width: 40px; height: 40px; }
}

@media (min-width: 768px) {
    .scan-title[b-gw3jntc9qd] { font-size: 32px; }
    .scan-viewfinder[b-gw3jntc9qd] { max-width: 460px; }
    .scan-corner[b-gw3jntc9qd] { width: 80px; height: 80px; }
}

@media (min-width: 1024px) {
    .scan-viewfinder[b-gw3jntc9qd] { max-width: 500px; }
    .scan-corner[b-gw3jntc9qd] { width: 90px; height: 90px; }
}
/* /Pages/Dashboard/ScanPayment.razor.rz.scp.css */
/* ===== Scan Payment page ===== */

.sp-page[b-cm0yxxynsx] {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-height: 100vh;
    background: #F6F8F7;
    position: relative;
}

/* ---- Green curved background ---- */
.sp-green-bg[b-cm0yxxynsx] {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 60%;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;
    display: flex;
    flex-direction: column;
}
.sp-green-bg svg[b-cm0yxxynsx] {
    width: 100%;
    height: auto;
    display: block;
    flex-shrink: 0;
}
.sp-green-fill[b-cm0yxxynsx] {
    flex: 1;
    background: linear-gradient(135deg, #5B9E84, #2D765A);
    margin-top: -1px;
}

/* ---- Top section ---- */
.sp-top[b-cm0yxxynsx] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 24px 24px 0;
    position: relative;
    z-index: 1;
    gap: 0;
}

/* Shared card style */
.sp-card[b-cm0yxxynsx] {
    width: 100%;
    max-width: 560px;
    background: #fff;
    border: 1.5px solid #86AF99;
    padding: 18px 24px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.sp-card-pay[b-cm0yxxynsx] {
    border-radius: 14px;
}

/* Title heading */
.sp-title[b-cm0yxxynsx] {
    font-size: clamp(22px, 5vw, 28px);
    font-weight: 700;
    color: var(--text, #000);
    text-align: center;
    line-height: 1.3;
    margin: 0 0 16px;
}

/* Pay amount */
.sp-pay-label[b-cm0yxxynsx] {
    font-size: clamp(18px, 4vw, 22px);
    font-weight: 700;
    color: var(--text, #000);
    margin-bottom: 4px;
}
.sp-pay-amount[b-cm0yxxynsx] {
    font-size: clamp(32px, 8vw, 48px);
    font-weight: 700;
    color: var(--brand, #2D765A);
    line-height: 1.1;
}

/* Cancel link */
.sp-cancel-link[b-cm0yxxynsx] {
    background: none;
    border: none;
    color: var(--text, #000);
    font-size: clamp(16px, 3.5vw, 18px);
    font-weight: 500;
    text-decoration: underline;
    cursor: pointer;
    padding: 18px 0 12px;
    font-family: inherit;
}

/* ---- Badge (sits at green boundary) ---- */
.sp-badge-wrap[b-cm0yxxynsx] {
    position: relative;
    z-index: 1;
    margin-top: 8px;
    margin-bottom: 24px;
}
.sp-badge-img[b-cm0yxxynsx] {
    width: clamp(160px, 46vw, 240px);
    height: clamp(160px, 46vw, 240px);
    object-fit: contain;
}

/* ---- Bottom section ---- */
.sp-bottom[b-cm0yxxynsx] {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0 24px 40px;
}

/* Accept button */
.sp-accept-btn[b-cm0yxxynsx] {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    max-width: 560px;
    padding: 18px 16px;
    border-radius: 55px;
    background: var(--accent, #FF700D);
    color: #fff;
    font-weight: 700;
    font-size: clamp(18px, 4vw, 22px);
    border: none;
    cursor: pointer;
    font-family: inherit;
    text-align: center;
    margin-bottom: 16px;
}
.sp-accept-btn:hover[b-cm0yxxynsx] {
    background: #e56200;
}
.sp-accept-btn:active[b-cm0yxxynsx] {
    opacity: 0.85;
}
.sp-accept-btn:disabled[b-cm0yxxynsx] {
    background: var(--btn-disabled, #c2d7cc);
    cursor: not-allowed;
}

/* Footer text */
.sp-footer-text[b-cm0yxxynsx] {
    position: relative;
    z-index: 1;
    font-size: clamp(14px, 3vw, 16px);
    font-style: italic;
    color: #fff;
    text-align: center;
    line-height: 1.5;
    margin: 0;
}

/* ---- Responsive ---- */
@media (max-width: 374px) {
    .sp-green-bg[b-cm0yxxynsx] { height: 54%; }
    .sp-top[b-cm0yxxynsx] { padding: 16px 16px 0; }
    .sp-card[b-cm0yxxynsx] { padding: 14px 16px; }
    .sp-bottom[b-cm0yxxynsx] { padding: 0 16px 24px; }
    .sp-accept-btn[b-cm0yxxynsx] { padding: 14px 12px; }
}

@media (min-width: 768px) {
    .sp-green-bg[b-cm0yxxynsx] { height: 56%; }
    .sp-card[b-cm0yxxynsx] { max-width: 600px; }
    .sp-accept-btn[b-cm0yxxynsx] { max-width: 600px; }
}

@media (min-width: 1024px) {
    .sp-green-bg[b-cm0yxxynsx] { height: 54%; }
}

@media (max-width: 767px) and (orientation: landscape) {
    .sp-green-bg[b-cm0yxxynsx] { height: 78%; }
}
/* /Pages/Dashboard/ScanRedeem.razor.rz.scp.css */
/* ===== Scan Redeem page ===== */

.sr-page[b-7xd1n730c1] {
    background: #F6F8F7;
    padding: 24px 24px 100px;
    gap: 24px;
}

/* ---- Amount Due card ---- */
.sr-amount-card[b-7xd1n730c1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    max-width: 560px;
    background: #fff;
    border: 1.5px solid #86AF99;
    border-radius: 14px;
    padding: 18px 24px;
    box-sizing: border-box;
}
.sr-amount-label[b-7xd1n730c1] {
    font-size: clamp(18px, 4vw, 22px);
    font-weight: 600;
    color: #dc3545;
}
.sr-amount-value[b-7xd1n730c1] {
    font-size: clamp(26px, 6vw, 36px);
    font-weight: 700;
    color: var(--text, #000);
}

/* ---- Heading ---- */
.sr-heading[b-7xd1n730c1] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 700;
    font-size: clamp(22px, 5vw, 28px);
    color: var(--text, #000);
    text-align: center;
    margin: 0;
}

/* ---- Merchant badge + info ---- */
.sr-merchant[b-7xd1n730c1] {
    display: flex;
    align-items: center;
    gap: 20px;
    width: 100%;
    max-width: 560px;
    padding: 0 8px;
    box-sizing: border-box;
}
.sr-badge[b-7xd1n730c1] {
    width: clamp(100px, 30vw, 150px);
    height: clamp(100px, 30vw, 150px);
    flex-shrink: 0;
}
.sr-badge-img[b-7xd1n730c1] {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.sr-merchant-info[b-7xd1n730c1] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.sr-points[b-7xd1n730c1] {
    font-size: clamp(36px, 8vw, 52px);
    font-weight: 700;
    color: var(--text, #000);
    line-height: 1.1;
}
.sr-rewards-name[b-7xd1n730c1] {
    font-size: clamp(16px, 3.5vw, 20px);
    font-weight: 500;
    color: var(--text, #000);
    white-space: pre-line;
    line-height: 1.3;
}

/* ---- Action buttons ---- */
.sr-actions[b-7xd1n730c1] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: 100%;
    max-width: 560px;
    margin-top: 12px;
}
.sr-btn[b-7xd1n730c1] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 20px 16px;
    border-radius: 18px;
    border: none;
    cursor: pointer;
    font-family: inherit;
}
.sr-btn-main[b-7xd1n730c1] {
    font-size: clamp(24px, 5vw, 32px);
    font-weight: 700;
    line-height: 1.2;
}
.sr-btn-sub[b-7xd1n730c1] {
    font-size: clamp(16px, 3.5vw, 20px);
    font-weight: 400;
    line-height: 1.4;
}

.sr-btn-yes[b-7xd1n730c1] {
    background: linear-gradient(135deg, #5B9E84, #2D765A);
    color: #fff;
}
.sr-btn-yes:hover[b-7xd1n730c1] {
    background: linear-gradient(135deg, #4A8A68, #236048);
}
.sr-btn-yes:active[b-7xd1n730c1] {
    opacity: 0.85;
}

.sr-btn-no[b-7xd1n730c1] {
    background: #3d3d3d;
    color: #fff;
}
.sr-btn-no:hover[b-7xd1n730c1] {
    background: #2e2e2e;
}
.sr-btn-no:active[b-7xd1n730c1] {
    opacity: 0.85;
}

/* ---- Responsive ---- */
@media (max-width: 374px) {
    .sr-page[b-7xd1n730c1] { padding: 16px 16px 100px; }
    .sr-amount-card[b-7xd1n730c1] { padding: 14px 16px; }
    .sr-btn[b-7xd1n730c1] { padding: 16px 12px; border-radius: 14px; }
}

@media (min-width: 768px) {
    .sr-heading[b-7xd1n730c1] { font-size: 28px; }
    .sr-amount-card[b-7xd1n730c1] { max-width: 600px; }
    .sr-actions[b-7xd1n730c1] { max-width: 600px; }
}
/* /Pages/Dashboard/ScanThankYou.razor.rz.scp.css */
/* ===== Scan Thank You page ===== */

.st-page[b-uswybxwhz7] {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-height: 100vh;
    background: #F6F8F7;
    position: relative;
}

/* ---- Green curved background ---- */
.st-green-bg[b-uswybxwhz7] {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 65%;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;
    display: flex;
    flex-direction: column;
}
.st-green-bg svg[b-uswybxwhz7] {
    width: 100%;
    height: auto;
    display: block;
    flex-shrink: 0;
}
.st-green-fill[b-uswybxwhz7] {
    flex: 1;
    background: #2D765A;
    margin-top: -1px;
}

/* ---- Top section ---- */
.st-top[b-uswybxwhz7] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 24px 24px 0;
    position: relative;
    z-index: 1;
}

.st-title[b-uswybxwhz7] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 700;
    font-size: clamp(26px, 6vw, 34px);
    color: var(--text, #000);
    text-align: center;
    margin: 0 0 4px;
}

.st-subtitle[b-uswybxwhz7] {
    font-size: clamp(20px, 4.5vw, 26px);
    font-weight: 700;
    color: var(--text, #000);
    text-align: center;
    margin: 0 0 24px;
    line-height: 1.35;
}

/* ---- Badge (sits at green boundary) ---- */
.st-badge-wrap[b-uswybxwhz7] {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    z-index: 1;
    margin-bottom: 16px;
}
.st-badge-circle[b-uswybxwhz7] {
    width: clamp(120px, 36vw, 180px);
    height: clamp(120px, 36vw, 180px);
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    flex-shrink: 0;
}
.st-badge-img[b-uswybxwhz7] {
    width: 80%;
    height: 80%;
    object-fit: contain;
}
.st-merchant-name[b-uswybxwhz7] {
    font-size: clamp(15px, 3.5vw, 18px);
    font-weight: 700;
    color: var(--text, #000);
    text-align: center;
    margin: 10px 0 8px;
}

/* ---- Bottom section ---- */
.st-bottom[b-uswybxwhz7] {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0 24px 40px;
}

/* Accept button */
.st-accept-btn[b-uswybxwhz7] {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    max-width: 560px;
    padding: 18px 16px;
    border-radius: 55px;
    background: var(--accent, #FF700D);
    color: #fff;
    font-weight: 700;
    font-size: clamp(18px, 4vw, 22px);
    border: none;
    cursor: pointer;
    font-family: inherit;
    text-align: center;
    margin-bottom: 16px;
}
.st-accept-btn:hover[b-uswybxwhz7] {
    background: #e56200;
}
.st-accept-btn:active[b-uswybxwhz7] {
    opacity: 0.85;
}

/* Optional pay link */
.st-link[b-uswybxwhz7] {
    position: relative;
    z-index: 1;
    background: none;
    border: none;
    color: #fff;
    font-size: clamp(16px, 3.5vw, 18px);
    font-weight: 500;
    text-decoration: underline;
    cursor: pointer;
    padding: 10px 0;
    font-family: inherit;
    text-align: center;
    line-height: 1.4;
}
.st-link:hover[b-uswybxwhz7] {
    opacity: 0.85;
}

/* Footer text */
.st-footer-text[b-uswybxwhz7] {
    position: relative;
    z-index: 1;
    font-size: clamp(12px, 2.5vw, 14px);
    font-style: italic;
    color: #fff;
    text-align: center;
    line-height: 1.5;
    margin: 12px 0 0;
}

/* ---- Responsive ---- */
@media (max-width: 374px) {
    .st-green-bg[b-uswybxwhz7] { height: 62%; }
    .st-top[b-uswybxwhz7] { padding: 16px 16px 0; }
    .st-bottom[b-uswybxwhz7] { padding: 0 16px 24px; }
    .st-accept-btn[b-uswybxwhz7] { padding: 14px 12px; }
}

@media (min-width: 768px) {
    .st-green-bg[b-uswybxwhz7] { height: 63%; }
    .st-title[b-uswybxwhz7] { font-size: 34px; }
    .st-accept-btn[b-uswybxwhz7] { max-width: 600px; }
}

@media (min-width: 1024px) {
    .st-green-bg[b-uswybxwhz7] { height: 62%; }
}

@media (max-width: 767px) and (orientation: landscape) {
    .st-green-bg[b-uswybxwhz7] { height: 80%; }
}
/* /Pages/Dashboard/ServicesStatement.razor.rz.scp.css */
/* ===== Services Statement page ===== */
/* Layout: .gp-page | Loading: .gp-loading | Title: .gp-page-title */
/* Table:  .gp-table-wrap .gp-table .gp-th .gp-row .gp-td            */

.ss-title[b-ehp5uuk3zp] {
    font-size: clamp(20px, 5vw, 28px);
    margin-bottom: 0;
}

.ss-subtitle[b-ehp5uuk3zp] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 700;
    font-size: clamp(18px, 4.5vw, 26px);
    color: var(--text, #000);
    text-align: center;
    margin: 4px 0 20px;
}

/* ---- Cells ---- */
.ss-td[b-ehp5uuk3zp] {
    font-weight: 600;
}

/* ---- Date + ref stacked ---- */
.ss-td-date[b-ehp5uuk3zp] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.ss-date[b-ehp5uuk3zp] {
    font-weight: 600;
    white-space: nowrap;
}
.ss-ref[b-ehp5uuk3zp] {
    font-size: 12px;
    font-weight: 500;
    color: var(--muted, #848484);
    white-space: nowrap;
}

/* ---- In/Out values ---- */
.ss-positive[b-ehp5uuk3zp] {
    color: var(--text, #000);
}
.ss-negative[b-ehp5uuk3zp] {
    color: #dc3545;
}
.ss-desc[b-ehp5uuk3zp] {
    display: block;
    font-size: 12px;
    font-weight: 500;
    color: var(--muted, #848484);
    margin-top: 2px;
}

/* ---- Responsive: small phones ---- */
@media (max-width: 374px) {
    .gp-page[b-ehp5uuk3zp] { padding: 12px 8px 100px; }
    .ss-td[b-ehp5uuk3zp] { font-size: 12px; }
    .ss-ref[b-ehp5uuk3zp] { font-size: 11px; }
    .ss-desc[b-ehp5uuk3zp] { font-size: 11px; }
}

/* ---- Responsive: tablet ---- */
@media (min-width: 768px) {
    .ss-title[b-ehp5uuk3zp] { font-size: 28px; }
}
/* /Pages/Dashboard/SetLocation.razor.rz.scp.css */
/* ===== Set Location page ===== */

/* ---- Header with back button ---- */
.sl-header[b-3lwr1uv7do] {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    max-width: 560px;
}

.sl-back-btn[b-3lwr1uv7do] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    border: 2px solid #86AF99;
    background: #fff;
    color: var(--brand, #4A8A68);
    font-size: 16px;
    cursor: pointer;
    flex-shrink: 0;
    padding: 0;
}
.sl-back-btn:hover[b-3lwr1uv7do] {
    background: #f0f5f2;
}

.sl-title[b-3lwr1uv7do] {
    margin: 0;
}

/* ---- Search section ---- */
.sl-search-section[b-3lwr1uv7do] {
    width: 100%;
    max-width: 560px;
    position: relative;
    z-index: 10;
}

.sl-clear-btn[b-3lwr1uv7do] {
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: none;
    padding: 0 14px 0 0;
    cursor: pointer;
    color: var(--muted, #848484);
    font-size: 16px;
    flex-shrink: 0;
}
.sl-clear-btn:hover[b-3lwr1uv7do] {
    color: var(--text, #000);
}

/* ---- Search results dropdown ---- */
.sl-results[b-3lwr1uv7do] {
    display: flex;
    flex-direction: column;
    background: #fff;
    border: 1px solid #e8ece9;
    border-radius: 12px;
    box-shadow: 0 4px 16px rgba(0,0,0,0.1);
    margin-top: 6px;
    max-height: 260px;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}

.sl-result-item[b-3lwr1uv7do] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    background: none;
    border: none;
    border-bottom: 1px solid #f0f5f2;
    cursor: pointer;
    text-align: left;
    font-family: inherit;
    width: 100%;
}
.sl-result-item:last-child[b-3lwr1uv7do] {
    border-bottom: none;
}
.sl-result-item:hover[b-3lwr1uv7do] {
    background: #f0f5f2;
}

.sl-result-loading[b-3lwr1uv7do] {
    justify-content: center;
    gap: 10px;
    color: var(--muted, #848484);
    font-size: 14px;
    cursor: default;
}
.sl-result-loading:hover[b-3lwr1uv7do] {
    background: none;
}

.sl-result-icon[b-3lwr1uv7do] {
    color: var(--brand, #4A8A68);
    font-size: 18px;
    flex-shrink: 0;
}

.sl-result-text[b-3lwr1uv7do] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.sl-result-name[b-3lwr1uv7do] {
    font-size: 15px;
    font-weight: 600;
    color: var(--text, #000);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sl-result-address[b-3lwr1uv7do] {
    font-size: 13px;
    color: var(--muted, #848484);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ---- Map container ---- */
.sl-map-container[b-3lwr1uv7do] {
    width: 100%;
    max-width: 560px;
    height: 340px;
    border-radius: 14px;
    overflow: hidden;
    border: 2px solid #86AF99;
    margin-top: 16px;
}

/* ---- Selected location display ---- */
.sl-selected[b-3lwr1uv7do] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 12px 16px;
    background: #fff;
    border: 1px solid #e8ece9;
    border-radius: 10px;
    width: 100%;
    max-width: 560px;
    margin-top: 12px;
    box-sizing: border-box;
}

.sl-selected-icon[b-3lwr1uv7do] {
    color: var(--brand, #4A8A68);
    font-size: 20px;
    flex-shrink: 0;
    margin-top: 1px;
}

.sl-selected-text[b-3lwr1uv7do] {
    font-size: 14px;
    font-weight: 600;
    color: var(--text, #000);
    min-width: 0;
    word-wrap: break-word;
    overflow-wrap: break-word;
    line-height: 1.4;
}

/* ---- Action buttons ---- */
.sl-actions[b-3lwr1uv7do] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    width: 100%;
    max-width: 560px;
    margin-top: 16px;
}

.sl-place-btn[b-3lwr1uv7do] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    padding: 14px;
    border-radius: 55px;
    background: #fff;
    color: var(--brand, #4A8A68);
    font-weight: 700;
    font-size: 16px;
    border: 2px solid var(--brand, #4A8A68);
    cursor: pointer;
    transition: background 0.2s, color 0.2s;
}
.sl-place-btn:hover[b-3lwr1uv7do] {
    background: #f0f5f2;
}

.sl-place-btn-active[b-3lwr1uv7do] {
    background: var(--brand, #4A8A68);
    color: #fff;
}
.sl-place-btn-active:hover[b-3lwr1uv7do] {
    background: var(--brand-strong, #136242);
}

/* ---- Responsive: small phones ---- */
@media (max-width: 374px) {
    .sl-map-container[b-3lwr1uv7do] {
        height: 260px;
    }
    .sl-results[b-3lwr1uv7do] {
        max-height: 200px;
    }
    .sl-place-btn[b-3lwr1uv7do] {
        font-size: 14px;
        padding: 12px;
    }
}

/* ---- Responsive: tablet ---- */
@media (min-width: 768px) {
    .sl-map-container[b-3lwr1uv7do] {
        height: 420px;
        max-width: 640px;
    }
    .sl-search-section[b-3lwr1uv7do],
    .sl-selected[b-3lwr1uv7do],
    .sl-actions[b-3lwr1uv7do],
    .sl-header[b-3lwr1uv7do] {
        max-width: 640px;
    }
}

/* ---- Responsive: desktop ---- */
@media (min-width: 1024px) {
    .sl-map-container[b-3lwr1uv7do] {
        height: 500px;
        max-width: 720px;
    }
    .sl-search-section[b-3lwr1uv7do],
    .sl-selected[b-3lwr1uv7do],
    .sl-actions[b-3lwr1uv7do],
    .sl-header[b-3lwr1uv7do] {
        max-width: 720px;
    }
}
/* /Pages/Dashboard/Settings.razor.rz.scp.css */
/* ===== Settings page ===== */

.st-form[b-f4qawre7r4] {
	display: flex;
	flex-direction: column;
	width: 100%;
	max-width: 480px;
	gap: 8px;
}

.st-row[b-f4qawre7r4] {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 14px 0;
}

.st-label[b-f4qawre7r4] {
	display: flex;
	flex-direction: column;
	gap: 2px;
	flex: 1;
	min-width: 0;
}

.st-label-title[b-f4qawre7r4] {
	font-size: 16px;
	font-weight: 400;
	color: var(--text, #000);
}

.st-label-desc[b-f4qawre7r4] {
	font-size: 14px;
	font-weight: 400;
	color: var(--muted, #848484);
	line-height: 1.4;
}

/* ---- Pill toggle ---- */
.st-toggle[b-f4qawre7r4] {
	position: relative;
	display: inline-block;
	width: 56px;
	height: 32px;
	flex-shrink: 0;
	cursor: pointer;
}
.st-toggle input[b-f4qawre7r4] {
	opacity: 0;
	width: 0;
	height: 0;
	position: absolute;
}

/* Track (the pill) */
.st-track[b-f4qawre7r4] {
	position: absolute;
	inset: 0;
	border-radius: 16px;
	background: #BEBEBE;
	transition: background 0.25s;
}

/* Thumb (the white dot — smaller than the track) */
.st-thumb[b-f4qawre7r4] {
	position: absolute;
	top: 4px;
	left: 4px;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 1px 3px rgba(0,0,0,0.2);
	transition: transform 0.25s;
}

/* Checked state */
.st-toggle input:checked + .st-track[b-f4qawre7r4] {
	background: #4A8A68;
}
.st-toggle input:checked + .st-track .st-thumb[b-f4qawre7r4] {
	transform: translateX(24px);
}

/* Disabled / coming-soon toggle variant */
.st-toggle--disabled[b-f4qawre7r4] {
	opacity: 0.5;
	cursor: not-allowed;
}

/* Submit button spacing */
.st-form .auth-btn[b-f4qawre7r4] {
	margin-top: 24px;
}

/* ===== Responsive: small phones ===== */
@media (max-width: 374px) {
	.st-label-title[b-f4qawre7r4] { font-size: 14px; }
	.st-label-desc[b-f4qawre7r4] { font-size: 12px; }
	.st-row[b-f4qawre7r4] { padding: 10px 0; gap: 12px; }
}

/* ===== Responsive: tablet ===== */
@media (min-width: 768px) {
	.st-form[b-f4qawre7r4] { max-width: 520px; }
	.st-label-title[b-f4qawre7r4] { font-size: 16px; }
	.st-label-desc[b-f4qawre7r4] { font-size: 14px; }
}

/* ===== Responsive: desktop ===== */
@media (min-width: 1024px) {
	.st-form[b-f4qawre7r4] { max-width: 520px; }
	.st-label-title[b-f4qawre7r4] { font-size: 15px; }
	.st-label-desc[b-f4qawre7r4] { font-size: 13px; }
}

/* ---- iOS / unsupported browser tip row ---- */
.st-row--tip[b-f4qawre7r4] {
    align-items: flex-start;
}

.st-notif-tip[b-f4qawre7r4] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 2px 0;
}

.st-notif-tip-icon[b-f4qawre7r4] {
    font-size: 22px;
    color: var(--muted, #848484);
    flex-shrink: 0;
    margin-top: 2px;
}

.st-notif-tip-body[b-f4qawre7r4] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
/* /Pages/Dashboard/Share.razor.rz.scp.css */
/* ===== Share page ===== */

.sh-page[b-2xvxl5qz7h] {
    background: #F6F8F7;
    padding-bottom: 100px;
    min-height: 100vh;
    justify-content: flex-start;
}

/* ---- Copy share link button ---- */
.sh-link-wrap[b-2xvxl5qz7h] {
    display: flex;
    justify-content: center;
    padding: 32px 24px 0;
    width: 100%;
}

.sh-link-btn[b-2xvxl5qz7h] {
    width: 100%;
    max-width: 420px;
    padding: 18px 32px;
    border: none;
    border-radius: 50px;
    background: linear-gradient(135deg, #5B9E84, #2D765A);
    color: #fff;
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 600;
    font-size: clamp(18px, 4.5vw, 22px);
    cursor: pointer;
    box-shadow: 0 4px 16px rgba(45, 118, 90, 0.25);
    transition: box-shadow 120ms ease, transform 120ms ease;
}
.sh-link-btn:hover[b-2xvxl5qz7h] {
    box-shadow: 0 6px 20px rgba(45, 118, 90, 0.35);
}
.sh-link-btn:active[b-2xvxl5qz7h] {
    transform: translateY(1px);
    box-shadow: 0 2px 8px rgba(45, 118, 90, 0.3);
}

/* ---- Instruction text ---- */
.sh-instruction[b-2xvxl5qz7h] {
    font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    font-weight: 500;
    font-size: clamp(18px, 4.2vw, 22px);
    color: var(--text, #000);
    text-align: center;
    line-height: 1.4;
    margin: 36px 0 24px;
}

/* ---- QR viewfinder ---- */
.sh-viewfinder[b-2xvxl5qz7h] {
    position: relative;
    width: 78%;
    max-width: 420px;
    aspect-ratio: 1 / 1;
    margin: 0 auto;
}

.sh-preview[b-2xvxl5qz7h] {
    position: absolute;
    inset: 0;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
}

.sh-qrcode-container[b-2xvxl5qz7h] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.sh-qrcode-container :deep(img)[b-2xvxl5qz7h],
.sh-qrcode-container :deep(canvas)[b-2xvxl5qz7h] {
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    display: block;
}

/* Corner brackets */
.sh-corner[b-2xvxl5qz7h] {
    position: absolute;
    width: clamp(50px, 14vw, 80px);
    height: clamp(50px, 14vw, 80px);
    border-color: #4A8A68;
    border-style: solid;
    border-width: 0;
    z-index: 1;
}
.sh-corner-tl[b-2xvxl5qz7h] {
    top: -4px;
    left: -4px;
    border-top-width: 4px;
    border-left-width: 4px;
    border-top-left-radius: 6px;
}
.sh-corner-tr[b-2xvxl5qz7h] {
    top: -4px;
    right: -4px;
    border-top-width: 4px;
    border-right-width: 4px;
    border-top-right-radius: 6px;
}
.sh-corner-bl[b-2xvxl5qz7h] {
    bottom: -4px;
    left: -4px;
    border-bottom-width: 4px;
    border-left-width: 4px;
    border-bottom-left-radius: 6px;
}
.sh-corner-br[b-2xvxl5qz7h] {
    bottom: -4px;
    right: -4px;
    border-bottom-width: 4px;
    border-right-width: 4px;
    border-bottom-right-radius: 6px;
}

/* ---- Action buttons ---- */
.sh-actions[b-2xvxl5qz7h] {
    display: flex;
    justify-content: center;
    gap: clamp(40px, 12vw, 80px);
    margin-top: 48px;
    padding: 0 24px;
}

.sh-action-item[b-2xvxl5qz7h] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
}

.sh-action-btn[b-2xvxl5qz7h] {
    width: clamp(58px, 16vw, 72px);
    height: clamp(58px, 16vw, 72px);
    border-radius: clamp(12px, 3vw, 16px);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 1px 1px 20px #05401d36;
}
.sh-action-btn:hover[b-2xvxl5qz7h] {
    box-shadow: 1px 1px 10px #e5f3eb74;
}
.sh-action-btn:active[b-2xvxl5qz7h] {
    box-shadow: 1px 1px 5px #124b2b78;
    transform: translateY(1px);
    transition: box-shadow 120ms ease, transform 120ms ease;
}

.sh-action-btn-green[b-2xvxl5qz7h] {
    background: linear-gradient(135deg, #5B9E84, #2D765A);
}

.sh-action-btn-muted[b-2xvxl5qz7h] {
    background: #C5D6CC;
}

.sh-action-icon[b-2xvxl5qz7h] {
    font-size: clamp(30px, 4vw, 32px);
    color: #fff;
}

.sh-action-label[b-2xvxl5qz7h] {
    font-size: clamp(16px, 3vw, 20px);
    font-weight: 400;
    color: var(--text, #000);
    text-align: center;
}

/* ---- Unavailable empty state ---- */
.sh-unavailable[b-2xvxl5qz7h] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 48px 32px;
    text-align: center;
    gap: 12px;
}

.sh-unavailable-icon[b-2xvxl5qz7h] {
    font-size: 48px;
    color: #b0b0b0;
}

.sh-unavailable-title[b-2xvxl5qz7h] {
    font-size: clamp(18px, 4vw, 22px);
    font-weight: 700;
    color: var(--text, #000);
    margin: 0;
}

.sh-unavailable-desc[b-2xvxl5qz7h] {
    font-size: clamp(14px, 3.5vw, 16px);
    color: var(--muted, #848484);
    line-height: 1.5;
    margin: 0;
    max-width: 320px;
}

/* ---- Responsive: small phones ---- */
@media (max-width: 374px) {
    .sh-viewfinder[b-2xvxl5qz7h] { width: 88%; }
    .sh-corner[b-2xvxl5qz7h] { width: 40px; height: 40px; }
    .sh-link-btn[b-2xvxl5qz7h] { padding: 14px 24px; }
}

/* ---- Responsive: tablet ---- */
@media (min-width: 768px) {
    .sh-viewfinder[b-2xvxl5qz7h] { max-width: 460px; }
    .sh-corner[b-2xvxl5qz7h] { width: 80px; height: 80px; }
    .sh-instruction[b-2xvxl5qz7h] { font-size: 22px; }
}

/* ---- Responsive: desktop ---- */
@media (min-width: 1024px) {
    .sh-viewfinder[b-2xvxl5qz7h] { max-width: 500px; }
    .sh-corner[b-2xvxl5qz7h] { width: 90px; height: 90px; }
}
/* /Pages/Dashboard/ShareNumberDialog.razor.rz.scp.css */
.snd-share-btn[b-76tiv6dii1] {
    background-color: var(--brand, #4A8A68);
    margin-bottom: 12px;
}

.snd-hide-btn[b-76tiv6dii1] {
    background-color: var(--muted-dark, #6c757d);
}

.snd-btn-icon[b-76tiv6dii1] {
    margin-left: 8px;
    font-size: 16px;
}
/* /Pages/Home.razor.rz.scp.css */
.home-hero[b-dovi21efrd] {
  position: relative;
  min-height: calc(100vh - var(--mud-appbar-height, 64px) + var(--mud-appbar-height, 64px) / 8);
  background: linear-gradient(180deg, #FFFFFF 0%, #98BBB1 100%);
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 12px 16px;
  box-sizing: border-box;
}

.hero-bg[b-dovi21efrd]{
  position: absolute;
  left: 0; right: 0; top: 0; bottom: 0;
  background: linear-gradient(180deg, #FFFFFF 0%, #98BBB1 100%);
  z-index: 0;
}

.globe[b-dovi21efrd]{
  position: absolute;
  left: 5.4%; right: 5.8%;
  top: 19.6%; bottom: 29.47%;
  background-image: url('/images/globe.png');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  mix-blend-mode: normal;
  z-index: 1;
  opacity: 0.95;
}

.hero-content[b-dovi21efrd]{
  position: relative;
  z-index: 3;
  width: 100%;
  max-width: 920px;
  text-align: center;
  padding: 4px 16px 0 16px;
}

.brand-logo[b-dovi21efrd]{
  width: 84px;
  height: 84px;
  margin: 0 auto 12px;
  display:flex;
  align-items:center;
  justify-content:center;
  color: #fff;
}
.brand-logo-img[b-dovi21efrd]{
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.hero-title[b-dovi21efrd]{
  font-family: 'Lato', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
  font-weight:700;
  font-size: clamp(28px, 6vw, 84px);
  line-height: 1.1;
  margin: 8px 0 24px;
  color: var(--text, #000);
}

.continue-btn[b-dovi21efrd]{
  display: block;
  width: 100%;
  max-width: 560px;
  padding: 16px 56px;
  border-radius: 55px;
  background: var(--accent);
  color:#fff;
  font-weight:700;
  font-size:20px;
  border:none;
  cursor:pointer;
  box-sizing: border-box;
}

.continue-btn-secondary[b-dovi21efrd]{
  background: transparent;
  border: 2px solid #fff;
}

.hero-fallback[b-dovi21efrd]{
  width: 100%;
  max-width: 560px;
  margin-top: 12px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.hero-fallback-text[b-dovi21efrd]{
  margin: 0;
  color: #fff;
  font-size: 14px;
  text-align: center;
}

.hero-fallback-actions[b-dovi21efrd]{
  display: flex;
  gap: 10px;
}

.hero-fallback-actions .continue-btn[b-dovi21efrd]{
  flex: 1;
  padding: 12px 24px;
  font-size: 16px;
}

.register-btn[b-dovi21efrd]{
  display: block;
  width: 100%;
  max-width: 560px;
  padding: 16px 56px;
  border-radius: 55px;
  background: transparent;
  color: #fff;
  font-weight: 700;
  font-size: 20px;
  border: 2px solid #fff;
  cursor: pointer;
  box-sizing: border-box;
}

.hero-gradient-overlay[b-dovi21efrd]{
  position:absolute;
  left:0; right:0; top:82.47%; bottom:0;
  background: linear-gradient(0deg, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0) 100%);
  mix-blend-mode: normal;
  z-index:2;
}

/* bottom rounded green shape (SVG) */
.hero-bottom-shape[b-dovi21efrd]{
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: 28vh;
  z-index: 1;
  line-height: 0;
}
.hero-bottom-shape svg[b-dovi21efrd]{
  width: 100%;
  height: 100%;
  display: block;
}

/* place email and button above bottom shape */
.hero-actions[b-dovi21efrd]{
  position: absolute;
  left: 8.62%;
  right: 8.62%;
  bottom: 5vh;
  display: flex;
  flex-direction: column;
  gap: 18px;
  align-items: center;
  z-index: 4;
}

/* input box style container */
.email-box[b-dovi21efrd]{
  width: 100%;
  max-width: 560px;
}

.email-error[b-dovi21efrd]{
  display: flex;
  align-items: center;
  gap: 6px;
  background: rgba(220, 53, 69, 0.12);
  color: #fff;
  font-size: 13px;
  font-weight: 500;
  padding: 8px 14px;
  border-radius: 10px;
  margin-bottom: 8px;
}
.email-error-icon[b-dovi21efrd]{
  width: 18px !important;
  height: 18px !important;
  color: #fff !important;
  fill: #fff !important;
  flex-shrink: 0;
}

/* Highlight input border on error */
.gp-input-error[b-dovi21efrd]{
  border-color: #dc3545 !important;
}


/* Responsive: small screens */
@media (max-width: 374px){
  .brand-logo[b-dovi21efrd]{ width: 60px; height: 60px; margin-bottom: 8px; }
  .hero-title[b-dovi21efrd]{ font-size: 24px; margin: 4px 0 16px; }
  .hero-actions[b-dovi21efrd]{ gap: 10px; bottom: 3vh; left: 5%; right: 5%; }
  .continue-btn[b-dovi21efrd]{ font-size: 16px; padding: 12px 24px; }
  .register-btn[b-dovi21efrd]{ font-size: 16px; padding: 12px 24px; }
  .hero-bottom-shape[b-dovi21efrd]{ height: 24vh; }
  .email-error[b-dovi21efrd]{ font-size: 12px; padding: 6px 10px; }
}

/* Responsive: medium phones */
@media (min-width: 375px) and (max-width: 767px){
  .continue-btn[b-dovi21efrd]{ font-size: 18px; padding: 14px 32px; }
  .register-btn[b-dovi21efrd]{ font-size: 18px; padding: 14px 32px; }
  .hero-actions[b-dovi21efrd]{ gap: 12px; }
}

/* Responsive: tablet adjustments */
@media (min-width: 768px){
  .brand-logo[b-dovi21efrd]{ width: 96px; height: 96px; }
  .hero-title[b-dovi21efrd]{ font-size: clamp(36px, 5vw, 64px); }
  .continue-btn[b-dovi21efrd]{ font-size: 28px; padding: 20px 72px; }
  .register-btn[b-dovi21efrd]{ font-size: 28px; padding: 20px 72px; }
  .hero-actions[b-dovi21efrd]{
    left: 50%;
    right: auto;
    transform: translateX(-50%);
    width: 100%;
    max-width: 560px;
    bottom: 10vh;
  }
  .hero-bottom-shape[b-dovi21efrd]{ height: 32vh; }
}

/* Responsive: desktop adjustments */
@media (min-width: 1024px){
  .brand-logo[b-dovi21efrd]{ width: 120px; height: 120px; }
  .hero-title[b-dovi21efrd]{ font-size: clamp(48px, 4vw, 84px); }
  .hero-content[b-dovi21efrd]{ max-width: 720px; }
  .hero-actions[b-dovi21efrd]{
    left: 50%;
    right: auto;
    transform: translateX(-50%);
    width: 100%;
    max-width: 560px;
    bottom: 12vh;
  }
  .continue-btn[b-dovi21efrd]{ font-size: 32px; padding: 22px 80px; }
  .register-btn[b-dovi21efrd]{ font-size: 32px; padding: 22px 80px; }
  .hero-bottom-shape[b-dovi21efrd]{ height: 30vh; }
  .globe[b-dovi21efrd]{ left: 15%; right: 15%; top: 22%; bottom: 28%; }
}

/* Responsive: large desktop (1440px+) */
@media (min-width: 1440px){
  .hero-content[b-dovi21efrd]{ max-width: 900px; }
  .hero-actions[b-dovi21efrd]{ max-width: 620px; }
  .globe[b-dovi21efrd]{ left: 20%; right: 20%; }
}
