/* ==================== إتاحة الوصول (Accessibility) ==================== */

/* رابط تخطي المحتوى - مخفي بصريًا حتى يحصل على التركيز */
.skip-link {
    position: absolute;
    right: -9999px;
    top: 0;
    background: #000;
    color: #fff;
    padding: 12px 20px;
    z-index: 3000;
    border-radius: 0 0 8px 8px;
    text-decoration: none;
    font-weight: 700;
}
.skip-link:focus {
    right: 10px;
    outline: 3px solid #ffeb3b;
}

/* مؤشر تركيز واضح لكل العناصر القابلة للتفاعل (لوحة المفاتيح) */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
.btn:focus-visible {
    outline: 3px solid #1a73e8 !important;
    outline-offset: 2px !important;
}

/* شريط أدوات إتاحة الوصول */
.a11y-toolbar {
    background: #1a1a2e;
    color: #fff;
    padding: 6px 16px;
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.85rem;
}
.a11y-label { margin-left: 8px; opacity: 0.85; }
.a11y-btn {
    background: #2d2d44;
    color: #fff;
    border: 1px solid #555;
    border-radius: 6px;
    padding: 3px 10px;
    cursor: pointer;
    font-size: 0.85rem;
}
.a11y-btn:hover { background: #3d3d5c; }
.a11y-btn[aria-pressed="true"] { background: #ffc107; color: #000; border-color: #ffc107; }

/* أحجام الخط */
body.a11y-font-sm { font-size: 90%; }
body.a11y-font-lg { font-size: 118%; }
body.a11y-font-xl { font-size: 135%; }

/* وضع التباين العالي */
body.high-contrast {
    background: #000 !important;
    color: #fff !important;
}
body.high-contrast .card,
body.high-contrast .navbar,
body.high-contrast .table,
body.high-contrast .stat-card {
    background: #000 !important;
    color: #fff !important;
    border: 1px solid #fff !important;
}
body.high-contrast .table { border-color: #fff !important; }
body.high-contrast .table td, body.high-contrast .table th { border-color: #444 !important; color: #fff !important; }
body.high-contrast a { color: #ffeb3b !important; text-decoration: underline; }
body.high-contrast .btn { border: 2px solid #fff !important; }
body.high-contrast .btn-primary { background: #ffeb3b !important; color: #000 !important; }
body.high-contrast .form-control, body.high-contrast .form-select {
    background: #111 !important; color: #fff !important; border: 1px solid #fff !important;
}
body.high-contrast .badge { border: 1px solid #fff; }

/* احترام تفضيل تقليل الحركة */
@media (prefers-reduced-motion: reduce) {
    .stat-card { transition: none !important; }
    .stat-card:hover { transform: none !important; }
}
/* ==================== نهاية قسم إتاحة الوصول ==================== */



.card {
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06);
}

.stat-card {
    border-radius: 12px;
    padding: 20px;
    color: #fff;
    transition: transform 0.15s ease;
}
.stat-card:hover { transform: translateY(-3px); }

.stat-card h2 { font-weight: 700; margin-bottom: 0; }
.stat-card p { margin-bottom: 0; opacity: 0.9; }

.bg-stat-1 { background: linear-gradient(135deg, #2b6cb0, #4299e1); }
.bg-stat-2 { background: linear-gradient(135deg, #2f855a, #48bb78); }
.bg-stat-3 { background: linear-gradient(135deg, #b7791f, #ed8936); }
.bg-stat-4 { background: linear-gradient(135deg, #c53030, #f56565); }

.badge-status { font-size: 0.85rem; padding: 6px 10px; }

/* طباعة المحضر */
@page {
    size: A4;
    margin: 15mm 12mm;
}

@media print {
    .no-print, .a11y-toolbar { display: none !important; }
    body {
        background: #fff !important;
        font-size: 12pt;
        color: #000 !important;
    }
    body.high-contrast { background: #fff !important; color: #000 !important; }
    .container, main {
        max-width: 100% !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .card {
        box-shadow: none !important;
        border: none !important;
        padding: 0 !important;
    }
    table {
        width: 100% !important;
        table-layout: fixed;
        word-wrap: break-word;
        font-size: 11pt;
    }
    th, td {
        padding: 4px 6px !important;
    }
    h2, h3, h4, h5 { page-break-after: avoid; }
    tr, .list-group-item { page-break-inside: avoid; }
    .progress { border: 1px solid #000; }
}

.print-header {
    text-align: center;
    border-bottom: 2px solid #333;
    padding-bottom: 15px;
    margin-bottom: 20px;
}

.signature-box {
    border-top: 1px dashed #666;
    margin-top: 60px;
    padding-top: 8px;
    text-align: center;
    width: 220px;
}
