/* Extracted from inline styles in account-management.html to comply with strict CSP */
body { background: transparent; }
.navbar { background: transparent !important; border-bottom: 1px solid rgba(255,255,255,0.08); }
.page-header { background: transparent; border: none; box-shadow: none; padding: 0; margin-bottom: 1.25rem; }
.account-card, .add-account-card, .modal-content {
    background: transparent;
    border: 1px solid rgba(227,230,240,0.2);
    border-radius: 16px;
}
.account-card:not(.add-account-card) {
    background: linear-gradient(135deg, rgba(40, 40, 46, 0.85) 0%, rgba(30, 30, 35, 0.85) 100%) !important;
    backdrop-filter: blur(18px) !important;
    -webkit-backdrop-filter: blur(18px) !important;
    border: 2px solid rgba(255, 255, 255, 0.12) !important;
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
    padding: 36px;
    min-height: 380px;
}
.account-card:not(.add-account-card)::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: radial-gradient(800px 400px at 0% 0%, rgba(255,255,255,0.06), transparent 60%);
    opacity: 0;
    transition: opacity 0.3s ease;
}
.account-card:not(.add-account-card):hover {
    background: linear-gradient(135deg, rgba(40, 40, 46, 0.92) 0%, rgba(30, 30, 35, 0.92) 100%) !important;
    border-color: rgba(255, 255, 255, 0.2) !important;
    transform: translateY(-4px) scale(1.02);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.35) !important;
}
.account-card:not(.add-account-card):hover::before { opacity: 1; }
.account-card:not(.add-account-card):active { transform: translateY(-2px) scale(1.01); transition: all 0.1s ease; }
.account-card.border-primary { border-color: #3b82f6 !important; box-shadow: 0 12px 40px rgba(59, 130, 246, 0.25) !important; background: linear-gradient(135deg, rgba(59, 130, 246, 0.12) 0%, rgba(40, 40, 46, 0.85) 100%) !important; }
.account-card.border-primary:hover { border-color: #60a5fa !important; box-shadow: 0 24px 64px rgba(59, 130, 246, 0.35) !important; }
.account-card h5 { color: #ffffff !important; font-weight: 800; font-size: 1.35rem; margin-bottom: 10px; position: relative; z-index: 2; text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3); }
.account-card .account-badge { background: linear-gradient(135deg, #3b82f6 0%, #9333ea 100%); color: white; padding: 6px 14px; border-radius: 24px; font-size: 0.8rem; letter-spacing: 0.5px; box-shadow: 0 2px 8px rgba(59, 130, 246, 0.3); }
.account-card .text-muted { color: rgba(255, 255, 255, 0.65) !important; font-size: 0.95rem; font-weight: 500; }
.account-card .fw-medium { color: rgba(255, 255, 255, 0.92) !important; font-weight: 700; }
.account-card .small { color: rgba(255, 255, 255, 0.85) !important; line-height: 1.5; font-size: 0.95rem; }
.account-card .fa-2x { background: linear-gradient(135deg, #3b82f6 0%, #9333ea 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; filter: drop-shadow(0 3px 10px rgba(59, 130, 246, 0.35)); }
.add-account-card { text-align: center; padding: 48px 36px; cursor: pointer; min-height: 380px; background: linear-gradient(135deg, rgba(59, 130, 246, 0.08) 0%, rgba(147, 51, 234, 0.08) 100%) !important; border: 1px solid rgba(59, 130, 246, 0.35) !important; border-radius: 16px; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); position: relative; overflow: hidden; }
.add-account-card::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(135deg, rgba(59, 130, 246, 0.05) 0%, rgba(147, 51, 234, 0.05) 100%); opacity: 0; transition: opacity 0.3s ease; }
.add-account-card:hover { background: linear-gradient(135deg, rgba(59, 130, 246, 0.18) 0%, rgba(147, 51, 234, 0.18) 100%) !important; border-color: rgba(59, 130, 246, 0.55) !important; transform: translateY(-4px) scale(1.02); box-shadow: 0 20px 60px rgba(59, 130, 246, 0.28) !important; }
.add-account-card:hover::before { opacity: 1; }
.add-account-icon { margin-bottom: 24px; position: relative; z-index: 2; }
.add-account-icon i { background: linear-gradient(135deg, #3b82f6 0%, #9333ea 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; filter: drop-shadow(0 3px 10px rgba(59, 130, 246, 0.35)); }
.add-account-card h5 { color: #ffffff !important; font-weight: 800; font-size: 1.4rem; margin-bottom: 14px; position: relative; z-index: 2; text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3); }
.add-account-card p { color: rgba(255, 255, 255, 0.92) !important; font-size: 1rem; line-height: 1.55; position: relative; z-index: 2; }
.breadcrumb { background: transparent; border: none; }
.pyramid-structure { padding: 20px; background: rgba(255, 255, 255, 0.02); border-radius: 12px; border: 1px solid rgba(255, 255, 255, 0.05); }
.pyramid-level { position: relative; margin-bottom: 40px; }
.pyramid-level.user-level { margin-bottom: 50px; }
.pyramid-level.tax-profiles-level { margin-bottom: 45px; }
.pyramid-level.accounts-level { margin-bottom: 30px; }
.pyramid-level::after { content: ''; display: block; width: 2px; height: 30px; background: linear-gradient(180deg, rgba(59, 130, 246, 0.6), transparent); margin: 0 auto; position: relative; }
.pyramid-level.accounts-level::after { display: none; }
.pyramid-node { display: inline-block; padding: 24px; background: linear-gradient(135deg, rgba(59, 130, 246, 0.1), rgba(147, 51, 234, 0.1)); border: 2px solid rgba(59, 130, 246, 0.3); border-radius: 16px; text-align: center; transition: all 0.3s ease; cursor: pointer; min-width: 160px; margin: 0 20px; position: relative; overflow: visible; }
.pyramid-node:hover { transform: translateY(-4px); border-color: rgba(59, 130, 246, 0.6); box-shadow: 0 8px 24px rgba(59, 130, 246, 0.2); }
.pyramid-node.user-node { background: linear-gradient(135deg, rgba(59, 130, 246, 0.2), rgba(147, 51, 234, 0.2)); border-color: rgba(59, 130, 246, 0.5); min-width: 200px; padding: 32px; }
.pyramid-node.tax-profile-node { background: linear-gradient(135deg, rgba(16, 185, 129, 0.1), rgba(59, 130, 246, 0.1)); border-color: rgba(16, 185, 129, 0.4); min-width: 180px; padding: 28px; }
.pyramid-node.account-node { background: linear-gradient(135deg, rgba(245, 158, 11, 0.1), rgba(16, 185, 129, 0.1)); border-color: rgba(245, 158, 11, 0.4); padding: 20px; min-width: 140px; margin: 0 15px; }
.pyramid-label { color: #ffffff; font-weight: 600; font-size: 1rem; margin-top: 12px; line-height: 1.3; }
.pyramid-label small { color: rgba(255, 255, 255, 0.7); font-size: 0.75rem; font-weight: 500; }
.inline-questionnaire-card { background: rgba(26, 28, 34, 0.95); border: 1px solid rgba(255, 255, 255, 0.12); border-radius: 12px; padding: 12px 14px; margin: 10px auto 14px auto; max-width: 720px; position: relative; z-index: 5; }
.inline-questionnaire-card .iq-header .btn { font-weight: 600; }
.inline-questionnaire-card .iq-field { background: rgba(255,255,255,0.03); }
.modal { overflow: visible !important; }
.modal-dialog { overflow: visible !important; margin: 1.75rem auto; }
.modal-content { overflow: visible !important; max-height: none !important; }
.modal-body { overflow: visible !important; max-height: none !important; }
.modal.show { overflow: auto !important; padding: 20px 0; }
.modal-backdrop { z-index: 1040; }
.modal { z-index: 1050; }
#successModal .modal-content, #errorModal .modal-content { border-radius: 15px; box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3); }
#successModal .modal-header, #errorModal .modal-header { border-radius: 15px 15px 0 0; padding: 1.5rem; }
#successModal .modal-body, #errorModal .modal-body { padding: 2rem 1.5rem; }
#successModal .modal-footer, #errorModal .modal-footer { border-radius: 0 0 15px 15px; padding: 1.5rem; }
#successModal .btn-success, #errorModal .btn-danger { border-radius: 25px; padding: 0.75rem 2rem; font-weight: 600; font-size: 1.1rem; }
#accountActionsModal .modal-content, #taxProfileActionsModal .modal-content { border-radius: 15px; box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3); }
#accountActionsModal .modal-header, #taxProfileActionsModal .modal-header { border-radius: 15px 15px 0 0; padding: 1.5rem; }
#accountActionsModal .modal-body, #taxProfileActionsModal .modal-body { padding: 2rem 1.5rem; }
#accountActionsModal .btn, #taxProfileActionsModal .btn { border-radius: 25px; padding: 0.75rem 2rem; font-weight: 600; font-size: 1.1rem; transition: all 0.3s ease; }
#accountActionsModal .btn:hover, #taxProfileActionsModal .btn:hover { transform: translateY(-2px); box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15); }
#accountActionsModal, #taxProfileActionsModal { z-index: 1060 !important; }
#deductionScopeModal .modal-content, #entityQuestionnaireModal .modal-content { border-radius: 15px; box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3); }
#deductionScopeModal .modal-header, #entityQuestionnaireModal .modal-header { border-radius: 15px 15px 0 0; padding: 1.5rem; }
#deductionScopeModal .modal-body, #entityQuestionnaireModal .modal-body { padding: 2rem 1.5rem; }
#deductionScopeModal .modal-footer, #entityQuestionnaireModal .modal-footer { border-radius: 0 0 15px 15px; padding: 1.5rem; }
#deductionScopeModal .btn, #entityQuestionnaireModal .btn { border-radius: 25px; padding: 0.75rem 2rem; font-weight: 600; font-size: 1.1rem; transition: all 0.3s ease; }
#deductionScopeModal .btn:hover, #entityQuestionnaireModal .btn:hover { transform: translateY(-2px); box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15); }
#deductionScopeModal, #entityQuestionnaireModal { z-index: 1060 !important; }


