:root {
    --pdm-brand: #1E88E5 !important;
    --pdm-bg: #F3F4F6 !important;
    --pdm-sidebar: #FFF !important;
    --pdm-text: #111827 !important;
    --pdm-text-light: #6B7280 !important;
    --pdm-border: #E5E7EB !important;
    --pdm-success: #10b981 !important;
    --pdm-error: #ef4444 !important;
}

/* Layout & Typography */
.pdm-app-container {
    display: flex !important;
    background: var(--pdm-bg) !important;
    font-family: "Inter", system-ui, sans-serif !important;
    color: var(--pdm-text) !important;
    /* border: 1px solid var(--pdm-border) !important; */
    overflow: hidden !important;
    height: 100vh !important;
    overflow: hidden !important;
}

/* Sidebar */
.pdm-sidebar {
    width: 260px !important;
    background: var(--pdm-sidebar) !important;
    border-right: 1px solid var(--pdm-border) !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 24px !important;
    flex-shrink: 0 !important;
}

.pdm-brand {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    margin-bottom: 32px !important;
}

.pdm-logo-square {
    width: 32px !important;
    height: 32px !important;
    background: var(--pdm-brand) !important;
    border-radius: 6px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.pdm-nav {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    flex: 1 !important;
}

.pdm-nav li {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 10px 12px !important;
    border-radius: 6px !important;
    margin-bottom: 4px !important;
    color: var(--pdm-text-light) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    transition: 0.2s !important;
}

.pdm-nav li.active {
    background: #EFF6FF !important;
    color: var(--pdm-brand) !important;
}

.pdm-nav li:hover:not(.active) {
    background: #F9FAFB !important;
    color: var(--pdm-text) !important;
}

.nav-icon {
    opacity: 0.8 !important;
}

/* User Profile */
.pdm-user-profile {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding-top: 20px !important;
    border-top: 1px solid var(--pdm-border) !important;
}

.pdm-user-profile img {
    border-radius: 50% !important;
}

.pdm-user-info .name {
    font-size: 13px !important;
    line-height: 1.4 !important;
    font-weight: 600 !important;
}

.pdm-user-info .email {
    font-size: 11px !important;
    line-height: 1.4 !important;
    color: var(--pdm-text-light) !important;
}

/* Main Content */
.pdm-main {
    flex: 1 !important;
    padding: 32px !important;
    overflow-y: auto !important;
}

/* --- Floating Dynamic Scrollbar --- */

/* 1. Firefox Configuration */
.pdm-sidebar,
.pdm-main {
    scrollbar-width: thin;
    scrollbar-color: rgba(156, 163, 175, 0.5) transparent;
    /* Thumb / Track */
}

/* 2. WebKit (Chrome, Edge, Safari) Configuration */
.pdm-sidebar::-webkit-scrollbar,
.pdm-main::-webkit-scrollbar {
    width: 8px;
    /* Width of vertical scrollbar */
    height: 8px;
    /* Height of horizontal scrollbar */
}

/* The Track (Background) - Make transparent so it "floats" */
.pdm-sidebar::-webkit-scrollbar-track,
.pdm-main::-webkit-scrollbar-track {
    background: transparent;
}

/* The Thumb (Handle) - Semi-transparent and rounded */
.pdm-sidebar::-webkit-scrollbar-thumb,
.pdm-main::-webkit-scrollbar-thumb {
    background-color: rgba(156, 163, 175, 0.3);
    /* Subtle grey */
    border-radius: 20px;
    /* Pill shape */
    border: 2px solid transparent;
    /* Creates padding around the thumb */
    background-clip: content-box;
    /* Ensures the border works as padding */
    transition: background-color 0.3s;
}

/* Dynamic Hover Effect - Darken when user hovers the container */
.pdm-sidebar:hover::-webkit-scrollbar-thumb,
.pdm-main:hover::-webkit-scrollbar-thumb {
    background-color: rgba(156, 163, 175, 0.8);
    /* Darker grey on hover */
}

/* Topbar */
.pdm-topbar {
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    margin-bottom: 32px !important;
}

.pdm-topbar h1 {
    font-size: 24px !important;
    font-weight: 700 !important;
    margin: 0 !important;
    line-height: 1.2 !important;
}

.pdm-subtitle {
    font-size: 13px !important;
    color: var(--pdm-text-light) !important;
    margin: 4px 0 0 !important;
}

.pdm-status-pill {
    font-size: 12px !important;
    font-weight: 600 !important;
    padding: 2px 12px !important;
    border-radius: 20px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
}

.pdm-status-pill.on {
    background: #ECFDF5 !important;
    color: #059669 !important;
    border: 1px solid #D1FAE5 !important;
}

.pdm-status-pill.off {
    background: #FEF2F2 !important;
    color: #DC2626 !important;
    border: 1px solid #FEE2E2 !important;
}

.pdm-dot {
    width: 8px !important;
    height: 8px !important;
    background: currentColor !important;
    border-radius: 50% !important;
}

/* General Grid & Cards */
.pdm-grid-3 {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 20px !important;
    margin-bottom: 24px !important;
}

.pdm-card {
    background: #fff !important;
    border: 1px solid var(--pdm-border) !important;
    border-radius: 12px !important;
    padding: 24px !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.02) !important;
}

.pdm-card.no-pad {
    padding: 0 !important;
    overflow: hidden !important;
}

/* Card Headers */
.pdm-card-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin-bottom: 20px !important;
}

.pdm-card-header.border-bottom {
    padding: 16px 24px !important;
    margin: 0 !important;
    background: #fff !important;
    border-bottom: 1px solid var(--pdm-border) !important;
}

.pdm-card-header h3,
.pdm-conn-setup h5 {
    font-size: 15px !important;
    font-weight: 600 !important;
    margin: 0 !important;
    color: var(--pdm-text) !important;
}

/* --- Overview KPI Cards --- */
.pdm-card.pdm-kpi {
    display: flex !important;
    gap: 16px !important;
    align-items: flex-start !important;
}

.pdm-kpi-icon {
    width: 42px !important;
    height: 42px !important;
    border-radius: 8px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
}

.pdm-kpi-icon.blue {
    background: #EFF6FF !important;
    color: #3B82F6 !important;
}

.pdm-kpi-icon.purple {
    background: #F5F3FF !important;
    color: #8B5CF6 !important;
}

.pdm-card-label {
    font-size: 12px !important;
    text-transform: uppercase !important;
    font-weight: 600 !important;
    color: var(--pdm-text-light) !important;
    margin-bottom: 4px !important;
    letter-spacing: 0.5px !important;
}

.pdm-card-label.white {
    color: rgba(255, 255, 255, 0.9) !important;
}

.pdm-stat-val {
    font-size: 28px !important;
    font-weight: 700 !important;
    color: var(--pdm-text) !important;
    line-height: 1.1 !important;
    margin-bottom: 2px !important;
}

.pdm-welcome-text {
    flex: 1;
}

.pdm-stat-sub {
    font-size: 13px !important;
    color: var(--pdm-text-light) !important;
}

.pdm-card-blue {
    background: var(--pdm-brand) !important;
    border-color: var(--pdm-brand) !important;
    color: white !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
}

.pdm-white-text {
    font-size: 14px !important;
    opacity: 0.9 !important;
    margin: 0 0 16px !important;
    line-height: 1.4 !important;
    color: white !important;
}

.pdm-mini-btn {
    background: rgba(255, 255, 255, 0.2) !important;
    color: white !important;
    padding: 8px 12px !important;
    border-radius: 4px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    display: block !important;
    text-align: center !important;
    transition: 0.2s !important;
}

.pdm-mini-btn:hover {
    background: white !important;
    color: var(--pdm-brand) !important;
}

/* --- Logs KPI Cards (Small Icons) --- */
.pdm-kpi-small {
    padding: 20px !important;
    border-radius: 8px !important;
    background: #fff !important;
    border: 1px solid #e2e8f0 !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important;
}

.pdm-kpi-header {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin-bottom: 10px !important;
}

.pdm-kpi-icon-sml {
    width: 32px !important;
    height: 32px !important;
    padding: 6px !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.pdm-kpi-icon-sml.green {
    background: #d1fae5 !important;
    color: #10b981 !important;
}

.pdm-kpi-icon-sml.red {
    background: #fee2e2 !important;
    color: #ef4444 !important;
}

.pdm-kpi-icon-sml.blue {
    background: #dbeafe !important;
    color: #3b82f6 !important;
}

.pdm-kpi-label {
    font-size: 12px !important;
    text-transform: uppercase !important;
    font-weight: 600 !important;
    color: #64748b !important;
    margin: 0 !important;
}

.pdm-kpi-value {
    font-size: 28px !important;
    font-weight: 700 !important;
    color: #1e293b !important;
    line-height: 1.2 !important;
}

.pdm-kpi-sub {
    font-size: 12px !important;
    color: #94a3b8 !important;
    margin-top: 5px !important;
}

.green-text {
    color: var(--pdm-success) !important;
}

.red-text {
    color: var(--pdm-error) !important;
}

.mono-text {
    font-family: monospace !important;
    color: #3b82f6 !important;
}

/* Charts & Filters */
.big-chart-card {
    min-height: 400px !important;
    display: flex !important;
    flex-direction: column !important;
}

.pdm-chart-wrapper {
    flex: 1 !important;
    position: relative !important;
    min-height: 300px !important;
}

.pdm-chart-meta {
    font-size: 13px !important;
    color: var(--pdm-text-light) !important;
}

.pdm-chart-controls {
    display: flex !important;
    gap: 12px !important;
    align-items: center !important;
    margin-right: 10px !important;
}

.pdm-chart-filters {
    display: flex !important;
    gap: 8px !important;
    background: #F3F4F6 !important;
    padding: 4px !important;
    border-radius: 6px !important;
}

.pdm-filter-btn,
.pdm-logs-filter-btn {
    border: none !important;
    background: transparent !important;
    padding: 4px 12px !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    color: var(--pdm-text-light) !important;
    cursor: pointer !important;
    border-radius: 4px !important;
    transition: 0.2s !important;
}

.pdm-filter-btn:hover,
.pdm-logs-filter-btn:hover {
    color: var(--pdm-text) !important;
}

.pdm-filter-btn.active,
.pdm-logs-filter-btn.active {
    background: #fff !important;
    color: var(--pdm-brand) !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important;
}

.pdm-select {
    padding: 6px 30px 6px 12px !important;
    border: 1px solid var(--pdm-border) !important;
    border-radius: 6px !important;
    font-size: 13px !important;
    color: var(--pdm-text) !important;
    background-color: #fff !important;
    cursor: pointer !important;
    outline: none !important;
    appearance: none !important;
    background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%236B7280%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpolyline%20points%3D%226%209%2012%2015%2018%209%22%3E%3C%2Fpolyline%3E%3C%2Fsvg%3E') !important;
    background-repeat: no-repeat !important;
    background-position: right 8px center !important;
    background-size: 16px !important;
}

.pdm-select.small {
    padding: 4px 28px 4px 10px !important;
    font-size: 12px !important;
    width: auto !important;
}

/* Table */
.pdm-table-wrap {
    width: 100% !important;
}

.pdm-table {
    width: 100% !important;
    border-collapse: collapse !important;
    font-size: 13px !important;
}

.pdm-table th {
    text-align: left !important;
    padding: 12px 24px !important;
    color: var(--pdm-text-light) !important;
    font-weight: 600 !important;
    border: none !important;
    background: #F9FAFB !important;
}

.pdm-table td {
    padding: 14px 24px !important;
    border: none !important;
    color: var(--pdm-text) !important;
    border-bottom: 1px solid var(--pdm-border) !important;
}

.pdm-table tr:last-child td {
    border-bottom: none !important;
}

.pdm-status-tag {
    font-size: 11px !important;
    font-weight: 600 !important;
    padding: 2px 6px !important;
    border-radius: 4px !important;
}

.pdm-status-tag.success {
    background: #ECFDF5 !important;
    color: #059669 !important;
}

.pdm-status-tag.error {
    background: #FEF2F2 !important;
    color: #DC2626 !important;
}

.pdm-bold {
    font-weight: 600 !important;
}

.pdm-mono {
    font-family: monospace !important;
    color: var(--pdm-brand) !important;
}

/* Table Toggle Header */
.pdm-toggle-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    cursor: pointer !important;
}

.pdm-toggle-header:hover {
    background-color: #f8fafc !important;
}

#pdm-logs-chevron {
    color: #64748b !important;
}

/* Pagination */
.pdm-pagination {
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    padding: 16px 24px !important;
    gap: 10px !important;
    border-top: 1px solid var(--pdm-border) !important;
}

.pdm-ajax-page-btn,
.pdm-page-btn {
    padding: 6px 12px !important;
    border: 1px solid var(--pdm-border) !important;
    background: #fff !important;
    border-radius: 4px !important;
    font-size: 12px !important;
    color: var(--pdm-text) !important;
    text-decoration: none !important;
    cursor: pointer !important;
}

.pdm-ajax-page-btn:hover {
    background: #F9FAFB !important;
}

.pdm-page-btn.disabled {
    opacity: 0.5 !important;
    cursor: default !important;
}

.pdm-page-info {
    font-size: 12px !important;
    color: var(--pdm-text-light) !important;
}

/* Connection Tab */
.pdm-connection-wrapper {
    padding: 20px !important;
    max-width: 600px !important;
}

.pdm-conn-state {
    display: flex !important;
    align-items: center !important;
    gap: 20px !important;
    margin-bottom: 30px !important;
    padding: 20px !important;
    border-radius: 8px !important;
}

.pdm-conn-state.connected {
    background-color: #ecfdf5 !important;
    border: 1px solid #d1fae5 !important;
}

.pdm-conn-state.disconnected {
    background-color: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
}

.pdm-conn-state.success-box {
    background-color: #ecfdf5 !important;
    border: 1px solid #10b981 !important;
}

.pdm-conn-icon {
    background: #fff !important;
    padding: 10px !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.connected .pdm-conn-icon {
    color: #10b981 !important;
}

.disconnected .pdm-conn-icon {
    color: #94a3b8 !important;
}

.success-box .pdm-conn-icon {
    color: #10b981 !important;
}

.pdm-conn-details h4 {
    margin: 0 !important;
    line-height: 1.5;
    font-size: 18px !important;
    color: #1e293b !important;
}

.pdm-conn-details {
    line-height: 1.4 !important;
}

.pdm-conn-details p {
    margin: 0 !important;
    color: #64748b !important;
    font-size: 14px !important;
}

.pdm-domain-badge {
    display: inline-block !important;
    margin-top: 10px !important;
    background: #fff !important;
    padding: 6px 12px !important;
    border: 1px solid #d1fae5 !important;
    border-radius: 6px !important;
    font-family: monospace !important;
    font-weight: 600 !important;
    color: #059669 !important;
}

.pdm-conn-actions {
    padding-top: 20px !important;
    border-top: 1px solid #e2e8f0 !important;
}

.pdm-btn-danger,
.pdm-btn-warning,
.pdm-btn-primary {
    color: white !important;
    border: none !important;
    padding: 8px 16px !important;
    border-radius: 6px !important;
    cursor: pointer !important;
    font-weight: 500 !important;
    transition: opacity 0.2s !important;
}

.pdm-btn-danger {
    background-color: #ef4444 !important;
}

.pdm-btn-danger:hover {
    background-color: #dc2626 !important;
}

.pdm-btn-warning {
    background-color: #f59e0b !important;
}

.pdm-btn-warning:hover {
    background-color: #d97706 !important;
}

.pdm-btn-primary {
    background-color: #1e293b !important;
    width: 100% !important;
    padding: 12px 20px !important;
    font-weight: 600 !important;
}

.pdm-btn-primary:hover {
    background-color: #0f172a !important;
}

.pdm-conn-setup ol {
    margin: 15px 0 20px 20px !important;
    color: #475569 !important;
}

.pdm-conn-setup li {
    margin-bottom: 8px !important;
}

.pdm-key-row {
    display: flex !important;
    gap: 10px !important;
    margin: 15px 0 !important;
}

.pdm-key-row input {
    flex: 1 !important;
    padding: 12px !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 6px !important;
    font-family: "Courier New", monospace !important;
    font-size: 16px !important;
    background: #f8fafc !important;
    color: #334155 !important;
    outline: none !important;
    font-weight: 600 !important;
}

.pdm-key-row button {
    background: #e2e8f0 !important;
    border: none !important;
    padding: 0 20px !important;
    border-radius: 6px !important;
    cursor: pointer !important;
    color: #475569 !important;
    font-weight: 600 !important;
}

.pdm-key-row button:hover {
    background: #cbd5e1 !important;
}

.pdm-empty-state-small {
    text-align: center !important;
    padding: 40px 20px !important;
    color: var(--pdm-text-light) !important;
    font-size: 14px !important;
}

/* Responsive */
@media (max-width: 900px) {
    .pdm-app-container {
        flex-direction: column;
    }

    .pdm-sidebar {
        width: auto;
        border-right: none;
        border-bottom: 1px solid var(--pdm-border);
        padding: 16px;
    }

    .pdm-grid-3 {
        grid-template-columns: 1fr;
    }

    .pdm-nav {
        display: flex;
        gap: 10px;
        overflow-x: auto;
        padding-bottom: 10px;
    }

    .pdm-nav li {
        white-space: nowrap;
    }
}

/* Plans Grid (Modern) */
.pdm-plans-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(20%, 1fr)) !important;
    gap: 20px !important
}

.pdm-plan-card {
    background: #fff !important;
    border: 1px solid var(--pdm-border) !important;
    border-radius: 12px !important;
    padding: 24px !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.02) !important;
    display: flex !important;
    flex-direction: column !important
}

.pdm-plan-top {
    display: flex !important;
    justify-content: space-between !important;
    margin-bottom: 16px !important
}

.pdm-plan-icon-box {
    width: 40px !important;
    height: 40px !important;
    background: #EFF6FF !important;
    color: var(--pdm-brand) !important;
    border-radius: 8px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important
}

.pdm-badge {
    background: #F3F4F6 !important;
    color: var(--pdm-text-light) !important;
    padding: 0 10px !important;
    border-radius: 20px !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    height: fit-content !important
}

.pdm-badge.success {
    background: #ECFDF5 !important;
    color: #059669 !important
}

.pdm-plan-card h3 {
    font-size: 16px !important;
    font-weight: 600 !important;
    margin: 0 0 16px 0 !important
}

.pdm-plan-metric {
    margin-bottom: 20px !important
}

.metric-row {
    display: flex !important;
    justify-content: space-between !important;
    font-size: 13px !important;
    margin-bottom: 8px !important
}

.pdm-progress-track {
    height: 6px !important;
    background: #F3F4F6 !important;
    border-radius: 3px !important;
    overflow: hidden !important
}

.pdm-progress-fill {
    height: 100% !important;
    background: var(--pdm-brand) !important;
    border-radius: 3px !important
}

.pdm-plan-footer {
    margin-top: auto !important;
    padding-top: 16px !important;
    border-top: 1px solid var(--pdm-border) !important;
    font-size: 12px !important;
    color: var(--pdm-text-light) !important
}

/* --- KPI Icon Colors (Standardized) --- */
.pdm-kpi-icon.green {
    background: #d1fae5 !important;
    color: #10b981 !important;
}

.pdm-kpi-icon.red {
    background: #fee2e2 !important;
    color: #ef4444 !important;
}

.pdm-kpi-icon.blue {
    background: #EFF6FF !important;
    color: #3B82F6 !important;
}

/* Text Colors */
.green-text {
    color: #10b981 !important;
}

.red-text {
    color: #ef4444 !important;
}

.mono-text {
    font-family: monospace !important;
    color: #3b82f6 !important;
}

/* Table Toggle Header Hover Effect */
.pdm-toggle-header:hover {
    background-color: #f8fafc !important;
}

/* --- Split Layout (Overview Tab) --- */
.pdm-dashboard-split {
    display: grid !important;
    grid-template-columns: 2fr 1fr !important;
    /* Chart takes 2/3, Sidebar 1/3 */
    gap: 20px !important
}

/* Sidebar Column (Right side of Overview) */
.pdm-sidebar-col {
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important
}

/* --- Recent Activity Widget --- */
.pdm-activity-list {
    display: flex !important;
    flex-direction: column !important
}

.pdm-activity-item {
    display: flex !important;
    align-items: center !important;
    padding: 12px 20px !important;
    border-bottom: 1px solid #f1f5f9 !important;
    font-size: 13px !important
}

.pdm-activity-item:last-child {
    border-bottom: none !important
}

.pdm-status-dot {
    width: 8px !important;
    height: 8px !important;
    border-radius: 50% !important;
    margin-right: 12px !important;
    flex-shrink: 0 !important
}

.pdm-status-dot.green {
    background-color: #10b981 !important;
    box-shadow: 0 0 0 2px #d1fae5 !important;
    align-self: flex-start !important;
    margin-top: 10px;
}

.pdm-status-dot.red {
    background-color: #ef4444 !important;
    box-shadow: 0 0 0 2px #fee2e2 !important
}

.pdm-activity-info {
    flex: 1 !important;
    overflow: hidden !important
}

.pdm-activity-ep {
    font-weight: 600 !important;
    color: #334155 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important
}

.pdm-activity-time {
    font-size: 11px !important;
    color: #94a3b8 !important
}

.pdm-activity-code {
    font-family: monospace !important;
    font-size: 12px !important;
    color: #64748b !important;
    background: #f1f5f9 !important;
    padding: 0 6px !important;
    line-height: 2;
    border-radius: 4px !important
}

.pdm-link-btn {
    font-size: 12px !important;
    color: var(--pdm-brand) !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    text-decoration: none !important
}

.pdm-link-btn:hover {
    text-decoration: underline !important
}

/* --- Quick Actions Widget --- */
.pdm-quick-actions {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important
}

.pdm-action-btn {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100% !important;
    padding: 10px 12px !important;
    background: #fff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    color: #475569 !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    cursor: pointer !important;
    transition: all 0.2s !important;
    text-align: left !important
}

.pdm-action-btn:hover {
    background: #f8fafc !important;
    border-color: #cbd5e1 !important;
    color: #1e293b !important
}

.pdm-action-btn svg {
    color: var(--pdm-brand) !important;
    opacity: 0.8 !important
}

/* Responsive Fix for Split Layout */
@media (max-width: 1100px) {
    .pdm-dashboard-split {
        grid-template-columns: 1fr;
        /* Stack them on smaller screens */
    }
}


/* --- Code Snippets Card --- */
.pdm-snippets-wrapper {
    /* Container styles if needed */
}

/* Tabs Header */
.pdm-code-tabs {
    display: flex !important;
    border-bottom: 1px solid #e2e8f0 !important;
    background: #f8fafc !important;

}

.pdm-code-tab {
    background: transparent !important;
    border: none !important;
    padding: 12px 20px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #64748b !important;
    cursor: pointer !important;
    border-bottom: 2px solid transparent !important;
    transition: all 0.2s !important;
    border-radius: 0 !important;
}

.pdm-code-tab:hover {
    color: #1e293b !important;
    background: #f1f5f9 !important
}

.pdm-code-tab.active {
    color: var(--pdm-brand) !important;
    border-bottom-color: var(--pdm-brand) !important;
    background: #fff !important;
    font-weight: 600 !important
}

/* Code Content Area */
.pdm-code-content {
    background: #1e293b !important;
    /* Slate 800 */
    color: #e2e8f0 !important;
    /* Slate 200 */
    padding: 20px !important;
    border-radius: 0 0 8px 8px !important;
    position: relative !important;
    min-height: 120px !important
}

.pdm-code-pane {
    display: none !important
}

.pdm-code-pane.active {
    display: block !important
}

.pdm-code-content pre {
    margin: 0 !important;
    font-family: "Fira Code", "Courier New", monospace !important;
    font-size: 13px !important;
    white-space: pre-wrap !important;
    word-break: break-all !important;
    line-height: 1.6 !important
}

/* Copy Button inside Code Area */
.pdm-copy-code-btn {
    position: absolute !important;
    top: 15px !important;
    right: 15px !important;
    background: rgba(255, 255, 255, 0.1) !important;
    color: #fff !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    padding: 6px 12px !important;
    font-size: 11px !important;
    border-radius: 4px !important;
    cursor: pointer !important;
    transition: background 0.2s !important
}

.pdm-copy-code-btn:hover {
    background: rgba(255, 255, 255, 0.2) !important
}


/* --- Sidebar Help Button (Subtle & Elegant) --- */

.pdm-sidebar-bottom-actions {
    padding: 0 0 15px 0;
    margin-top: auto;
}

.pdm-help-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    width: 100% !important;
    padding: 10px !important;
    /* Slightly smaller padding for a "small" feel */

    /* Base State: Soft Brand Blue */
    background: rgba(30, 136, 229, 0.08) !important;
    border: 1px solid rgba(30, 136, 229, 0.15) !important;

    border-radius: 8px !important;
    color: var(--pdm-brand) !important;
    text-decoration: none !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    transition: all 0.2s ease !important;
}

.pdm-help-btn:hover {
    /* Hover State: Just a little bit darker/richer */
    background: rgba(30, 136, 229, 0.15) !important;
    border-color: rgba(30, 136, 229, 0.4) !important;
    color: var(--pdm-brand) !important;
    /* Text stays blue */
    transform: translateY(-1px) !important;
}

.pdm-help-btn svg {
    color: currentColor !important;
    width: 16px !important;
    /* Slightly smaller icon */
    height: 16px !important;
}

.pdm-card h3 {
    font-weight: 700 !important;
}

/* Reusing the same styles for consistency */
.pdm-auth-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    background: #f8fafc;
    font-family: 'Inter', system-ui, sans-serif;
}

.pdm-auth-card {
    background: white;
    padding: 40px;
    border-radius: 16px;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 10px 15px -3px rgba(0, 0, 0, 0.05);
    text-align: center;
    max-width: 400px;
    width: 100%;
    border: 1px solid #e2e8f0;
}

.pdm-auth-icon {
    width: 56px;
    height: 56px;
    background: #eff6ff;
    color: #1e88e5;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
}

.pdm-auth-card h2 {
    margin: 0 0 10px;
    font-size: 24px;
    color: #1e293b;
    font-weight: 700;
}

.pdm-auth-card p {
    margin: 0 0 30px;
    color: #64748b;
    font-size: 15px;
    line-height: 1.5;
}

.pdm-btn-primary {
    background: #1e293b;
    color: white;
    padding: 12px 24px;
    border-radius: 8px;
    text-decoration: none;
    display: block;
    font-weight: 600;
    transition: 0.2s;
    border: none;
    cursor: pointer;
}

.pdm-btn-primary:hover {
    background: #0f172a;
}

.pdm-btn-primary.full-width {
    width: 100%;
    box-sizing: border-box;
}

.pdm-auth-sub {
    margin-top: 20px !important;
    font-size: 13px !important;
    color: #94a3b8;
}

.pdm-auth-sub a {
    color: #1e88e5;
    text-decoration: none;
    font-weight: 600;
}

/* Inline styles to ensure it looks good even if main CSS fails */
.pdm-auth-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    background: #f8fafc;
    font-family: 'Inter', system-ui, sans-serif;
}

.pdm-auth-card {
    background: white;
    padding: 40px;
    border-radius: 16px;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 10px 15px -3px rgba(0, 0, 0, 0.05);
    text-align: center;
    max-width: 400px;
    width: 100%;
    border: 1px solid #e2e8f0;
}

.pdm-auth-icon {
    width: 56px;
    height: 56px;
    background: #eff6ff;
    color: #1e88e5;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
}

.pdm-auth-card h2 {
    margin: 0 0 10px;
    font-size: 24px;
    color: #1e293b;
    font-weight: 700;
}

.pdm-auth-card p {
    margin: 0 0 30px;
    color: #64748b;
    font-size: 15px;
    line-height: 1.5;
}

.pdm-btn-primary {
    background: #1e293b;
    color: white;
    padding: 12px 24px;
    border-radius: 8px;
    text-decoration: none;
    display: block;
    font-weight: 600;
    transition: 0.2s;
    border: none;
    cursor: pointer;
}

.pdm-btn-primary:hover {
    background: #0f172a;
}

.pdm-btn-primary.full-width {
    width: 100%;
    box-sizing: border-box;
}

.pdm-auth-sub {
    margin-top: 20px !important;
    font-size: 13px !important;
}

.pdm-auth-sub a {
    color: #1e88e5;
    text-decoration: none;
    font-weight: 600;
}

.pdm-link-text {
    color: #1e88e5 !important;
    text-decoration: none !important;
    font-weight: 600 !important;
}

.pdm-btn-small-outline {
    border: 1px solid var(--pdm-border) !important;
    background: white !important;
    color: var(--pdm-text) !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    padding: 6px 12px !important;
    border-radius: 6px !important;
    transition: all 0.2s !important;
    height: 32px !important;
    /* Match height of select inputs */
    box-sizing: border-box !important
}

.pdm-btn-small-outline:hover {
    border-color: #94a3b8 !important;
    background: #f8fafc !important;
    color: #1e293b !important
}

/* --- Notification Center --- */
.pdm-notif-wrapper {
    position: relative;
    z-index: 100;
}

.pdm-notif-bell {
    width: 34px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #64748b;
    cursor: pointer;
    transition: all 0.2s;
    background: #fff;
    border: 1px solid #e2e8f0;
}

.pdm-notif-bell:hover {
    background: #f8fafc;
    color: #1e293b;
}

/* --- Notification Badge (Count) --- */

.pdm-notif-wrapper {
    position: relative;
    z-index: 100;
}

.pdm-notif-bell {
    position: relative;
    /* Essential for absolute positioning of badge */
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #64748b;
    cursor: pointer;
    transition: all 0.2s;
    background: #fff;
    border: 1px solid #e2e8f0;
}

.pdm-notif-bell:hover {
    background: #f8fafc;
    color: #1e293b;
}

/* NEW: Number Badge */
.pdm-notif-badge {
    position: absolute;
    top: -4px;
    right: -4px;
    min-width: 18px;
    height: 18px;
    background: #ef4444;
    /* Red */
    color: white;
    font-size: 10px;
    font-weight: 700;
    border-radius: 10px;
    /* Capsule shape for 9+ */
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 4px;
    /* Padding for double digits */
    border: 2px solid #fff;
    /* White ring around it */
    box-sizing: border-box;
}

.pdm-notif-panel {
    position: absolute;
    top: 45px;
    right: -10px;
    width: 320px;
    background: white;
    border-radius: 12px;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
    border: 1px solid #e2e8f0;
    display: none;
    overflow: hidden;
    transform-origin: top right;
    animation: pdmSlideIn 0.2s ease-out;
}

@keyframes pdmSlideIn {
    from {
        opacity: 0;
        transform: scale(0.95);
    }

    to {
        opacity: 1;
        transform: scale(1);
    }
}

.pdm-notif-header {
    padding: 12px 16px;
    border-bottom: 1px solid #f1f5f9;
    font-weight: 600;
    color: #1e293b;
    font-size: 13px;
    background: #f8fafc;
}

.pdm-notif-list {
    max-height: 300px;
    overflow-y: auto;
}

.pdm-notif-item {
    padding: 12px 16px;
    border-bottom: 1px solid #f1f5f9;
    display: flex;
    gap: 12px;
    align-items: start;
    transition: background 0.2s;
}

.pdm-notif-item:hover {
    background: #f8fafc;
}

.pdm-notif-content {
    flex: 1;
}

.pdm-notif-title {
    font-size: 13px;
    color: #334155;
    line-height: 1.4;
    font-weight: 500;
}

.pdm-notif-time {
    font-size: 11px;
    color: #94a3b8;
    margin-top: 4px;
}

.pdm-notif-empty {
    padding: 30px;
    text-align: center;
    color: #94a3b8;
    font-size: 13px;
}

/* Status Colors */
.pdm-notif-item .dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    margin-top: 12px;
}

.pdm-notif-item.info .dot {
    background: #3b82f6;
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.2);
}

.pdm-notif-item.warning .dot {
    background: #f59e0b;
    box-shadow: 0 0 0 2px rgba(245, 158, 11, 0.2);
}

.pdm-notif-item.alert .dot {
    background: #ef4444;
    box-shadow: 0 0 0 2px rgba(239, 68, 68, 0.2);
}

.pdm-notif-item.success .dot {
    background: #10b981;
    box-shadow: 0 0 0 2px rgba(16, 185, 129, 0.2);
}

/* Enhanced Notifications */
.pdm-notif-list {
    max-height: 350px;
    /* Fixed height for scrolling */
    overflow-y: auto;
    /* Enable Scroll */
    scrollbar-width: thin;
    /* Firefox */
}

/* Header Row for Time Alignment */
.pdm-notif-header-row {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    cursor: pointer;
}

.pdm-notif-item {
    cursor: pointer;
}

.pdm-notif-body {
    margin-top: 8px !important;
    font-size: 13px !important;
    color: #475569 !important;
    line-height: 1.5 !important;
    padding-bottom: 8px !important;
    border-top: 1px dashed #e2e8f0 !important;
    padding-top: 8px !important
}

/* WYSIWYG Content Styling */
.pdm-notif-body p {
    margin-bottom: 8px !important
}

.pdm-notif-body a {
    color: var(--pdm-brand) !important;
    text-decoration: underline !important
}

/* Mark Read Button */
.pdm-mark-read-btn {
    background: transparent !important;
    border: 1px solid #cbd5e1 !important;
    color: #64748b !important;
    font-size: 11px !important;
    padding: 4px 8px !important;
    border-radius: 4px !important;
    cursor: pointer !important;
    margin-top: 8px !important;
    display: block !important;
    width: fit-content !important
}

.pdm-mark-read-btn:hover {
    background: #f1f5f9 !important;
    color: #1e293b !important
}

.pdm-logout-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    width: 100% !important;
    padding: 8px !important;
    background: #FEF2F2 !important; /* Light Red Background */
  
    border: 1px solid #FEE2E2 !important;
    border-radius: 8px !important;
    color: #EF4444 !important; /* Neutral Gray */
    text-decoration: none !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    transition: all 0.2s ease !important;
    box-sizing: border-box !important;
    margin-bottom:8px;
}



.pdm-logout-btn svg {
    opacity: 0.8 !important;
}

.pdm-dl-icon{
    color: var(--pdm-brand)!important;
    display: flex;
    gap: 5px;
}