/* ============================================================
   /data/css/ui/cards.css
   - Shared card / panel styles
   - Uses legacy page class names so no markup changes are needed
   ============================================================ */

/* ============================================================
   Overflow-visible wrappers
   ============================================================ */

.accounting-card,
.hosting-card,
.hosting-list-card,
.projects-form-card,
.projects-view-hero-card,
.projects-view-card,
.invoices-new-card,
.accounting-receipts-new-card {
    overflow: visible;
}

/* ============================================================
   Soft section / panel blocks
   ============================================================ */

.projects-form-section,
.projects-history-item,
.dashboard-stat-card,
.dashboard-graph-card,
.accounting-reports-stat,
.invoice-status-box,
.accounting-bookkeeping-preview-item,
.accounting-bookkeeping-link-item {
    border: 1px solid rgba(255, 255, 255, 0.10);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.03);
}

/* Slightly stronger soft panels */
.accounting-bookkeeping-preview-item,
.accounting-bookkeeping-link-item,
.dashboard-stat-card,
.dashboard-graph-card,
.accounting-reports-stat {
    background: rgba(255, 255, 255, 0.04);
}

/* ============================================================
   Interactive soft panels
   ============================================================ */

.accounting-bookkeeping-link-item,
.hosting-server-item,
.dashboard-stat-link {
    transition:
        border-color 0.15s ease,
        background 0.15s ease,
        transform 0.15s ease,
        box-shadow 0.15s ease;
}

.accounting-bookkeeping-link-item:hover,
.hosting-server-item:hover,
.dashboard-stat-link:hover {
    background: rgba(255, 255, 255, 0.05);
    border-color: rgba(255, 255, 255, 0.16);
    box-shadow: 0 10px 26px rgba(0, 0, 0, 0.14);
}

.accounting-bookkeeping-link-item:hover,
.dashboard-stat-link:hover {
    transform: translateY(-1px);
}

/* ============================================================
   Generic warning / error / success panels
   ============================================================ */

.accounting-reports-warning,
.projects-form-errors,
.receipt-dupe-box,
.invoice-status-box-sent,
.invoice-status-box-void,
.invoice-status-box-paid {
    border-radius: 14px;
}

.accounting-reports-warning,
.invoice-status-box-sent {
    border: 1px solid rgba(255, 179, 71, 0.30);
    background: rgba(255, 179, 71, 0.08);
}

.projects-form-errors,
.receipt-dupe-box {
    border: 1px solid rgba(220, 53, 69, 0.35);
    background: rgba(220, 53, 69, 0.10);
}

.invoice-status-box-paid {
    border: 1px solid rgba(80, 200, 120, 0.35);
    background: rgba(80, 200, 120, 0.10);
}

.invoice-status-box-void {
    border: 1px solid rgba(255, 255, 255, 0.14);
    background: rgba(255, 255, 255, 0.04);
}

/* ============================================================
   Panel internals
   ============================================================ */

.projects-history-item,
.accounting-reports-warning,
.projects-form-errors,
.invoice-status-box,
.accounting-bookkeeping-preview-item,
.accounting-bookkeeping-link-item {
    padding: 14px 16px;
}

.projects-form-section,
.dashboard-stat-card,
.dashboard-graph-card,
.hosting-server-item {
    padding: 16px 18px;
}

/* bookkeeping link items have their own grid layout */
.accounting-bookkeeping-link-item {
    padding: 12px 14px;
}

/* ============================================================
   Small titles / muted support text inside panels
   ============================================================ */

.dashboard-stat-title,
.dashboard-graph-title,
.accounting-reports-stat-label {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--muted);
}

.projects-view-card-title,
.projects-form-section-title {
    margin: 0 0 14px;
    font-size: 18px;
}