        /* ── Receipt Shell ── */
        .sr-wrapper {
            direction: rtl; font-family: 'Segoe UI', Tahoma, 'Arial', sans-serif;
            color: #111; background: #fff;
        }

        /* ── Action Buttons ── */
        .sr-actions {
            display: flex; gap: 10px; justify-content: flex-end;
            padding: 14px 20px; border-bottom: 1px solid #e5eaf3;
        }
        .sr-btn-print {
            background: linear-gradient(135deg,#1a3a5c,#2563a8); color: #fff;
            border: none; border-radius: 10px; padding: 10px 24px;
            font-size: .92rem; font-weight: 700; cursor: pointer;
            box-shadow: 0 3px 10px rgba(37,99,168,.3); transition: all .2s;
        }
        .sr-btn-print:hover { transform: translateY(-1px); box-shadow: 0 5px 16px rgba(37,99,168,.4); }
        .sr-btn-close {
            background: #f0f3f7; color: #444; border: 1.5px solid #d1dbe8;
            border-radius: 10px; padding: 10px 22px; font-size: .92rem;
            font-weight: 600; cursor: pointer; transition: background .2s;
        }
        .sr-btn-close:hover { background: #e0e6f0; }

        /* ── Receipt 1 (Detailed) ── */
        .sr-receipt {
            border: 2px solid #1a3a5c; border-radius: 16px;
            margin: 16px 20px; padding: 0; overflow: hidden;
        }
        .sr-receipt-header {
            background: linear-gradient(135deg,#1a3a5c 0%,#2563a8 100%);
            color: #fff; padding: 18px 24px; display: flex;
            justify-content: space-between; align-items: flex-start;
        }
        .sr-school-info .sr-school-name {
            font-size: 1.1rem; font-weight: 800; letter-spacing: .5px;
        }
        .sr-school-info .sr-year-name { font-size: .82rem; opacity: .82; margin-top: 2px; }
        .sr-receipt-meta { text-align: left; font-size: .82rem; opacity: .9; line-height: 1.7; }
        .sr-receipt-meta strong { display: block; font-size: 1rem; opacity: 1; margin-bottom: 4px; }

        .sr-receipt-title {
            text-align: center; padding: 14px 24px 10px;
            border-bottom: 1.5px dashed #c5d5e8;
        }
        .sr-receipt-title h3 {
            margin: 0; font-size: 1.15rem; color: #1a3a5c; font-weight: 800;
            letter-spacing: .5px;
        }
        .sr-receipt-title .sr-serial {
            font-size: .95rem; color: #2563a8; font-weight: 700; margin-top: 2px;
        }

        .sr-st-info {
            display: flex; gap: 24px; padding: 14px 24px;
            border-bottom: 1px solid #e5eaf3; background: #f8fafd;
        }
        .sr-st-info .si-item { font-size: .9rem; }
        .sr-st-info .si-label { font-size: .75rem; color: #7a8499; margin-bottom: 2px; }
        .sr-st-info .si-val { font-weight: 700; color: #1a3a5c; }

        /* Items Table */
        .sr-items-table {
            width: 100%; border-collapse: collapse; font-size: .88rem;
        }
        .sr-items-table thead tr { background: #eef2fb; }
        .sr-items-table th {
            padding: 9px 14px; text-align: right; font-weight: 700;
            color: #2563a8; border-bottom: 2px solid #d1dbe8;
        }
        .sr-items-table td {
            padding: 9px 14px; border-bottom: 1px solid #f0f3f7;
        }
        .sr-items-table tbody tr:last-child td { border-bottom: none; }
        .sr-items-table .td-total {
            background: #1a3a5c; color: #fff; font-weight: 700; font-size: .95rem;
        }
        .sr-items-table .td-total td { padding: 12px 14px; }

        /* Summary Grid */
        .sr-summary {
            display: grid; grid-template-columns: 1fr 1fr; gap: 0;
            border-top: 2px dashed #c5d5e8; margin: 0;
        }
        .sr-summary-item {
            padding: 12px 18px; border-bottom: 1px solid #edf0f5;
            border-left: 1px solid #edf0f5;
        }
        .sr-summary-item:nth-child(odd) { border-left: none; }
        .sr-summary-item .si-label { font-size: .75rem; color: #7a8499; }
        .sr-summary-item .si-val { font-size: 1rem; font-weight: 700; margin-top: 2px; }
        .si-val.due { color: #7a5c00; }
        .si-val.paid { color: #1b7a2e; }
        .si-val.disc { color: #4527a0; }
        .si-val.remain { color: #c0392b; }

        /* Notes */
        .sr-notes {
            margin: 12px 20px; padding: 10px 14px;
            border: 1.5px dashed #c5d5e8; border-radius: 8px;
            font-size: .85rem; color: #444; background: #fffde7;
        }
        .sr-notes .sn-label { font-weight: 700; color: #7a5c00; margin-bottom: 4px; }

        /* ── Receipt 2 (Quick Summary) ── */
        .sr-receipt2 {
            border: 2px solid #1b7a2e; border-radius: 16px;
            margin: 8px 20px 20px; overflow: hidden;
        }
        .sr-receipt2-header {
            background: linear-gradient(135deg,#1b7a2e,#43a047);
            color: #fff; padding: 14px 22px; display: flex;
            align-items: center; gap: 10px;
        }
        .sr-receipt2-header h4 { margin: 0; font-size: 1rem; font-weight: 700; }
        .sr-receipt2-body {
            padding: 18px 22px; display: flex; gap: 20px;
            align-items: center; flex-wrap: wrap;
        }
        .r2-student { font-size: 1rem; font-weight: 700; color: #1a3a5c; flex: 1; }
        .r2-amount {
            font-size: 1.3rem; font-weight: 800; color: #1b7a2e;
            background: #e8f5e9; border: 1.5px solid #a5d6a7;
            border-radius: 10px; padding: 6px 18px;
        }
        .r2-method {
            display: flex; align-items: center; gap: 8px; font-size: .9rem;
            font-weight: 600; color: #444;
            background: #f5f5f5; border: 1px solid #e0e0e0;
            border-radius: 10px; padding: 8px 14px;
        }
        .r2-method .rm-icon { font-size: 1.4rem; }

        /* ── Separator ── */
        .sr-separator {
            text-align: center; margin: 4px 20px;
            color: #bbb; font-size: .75rem; letter-spacing: 2px;
        }

        /* ── PRINT MEDIA ── */
        @media print {
            html, body, .mud-layout, .mud-main-content, .mud-container, .mud-container-maxwidth-xl {
                height: auto !important; max-height: none !important; overflow: visible !important;
                display: block !important; position: static !important; margin: 0 !important; padding: 0 !important;
            }
            #sr-print-area {
                filter: grayscale(100%) contrast(150%);
                font-size: 0.95rem;
                color: #000 !important;
            }
            .sr-actions, .sr-actions * { display: none !important; visibility: hidden !important; }
            .sr-wrapper { direction: rtl; }
            
            .sr-receipt, .sr-receipt2 { border: none !important; margin: 0 0 10px 0; border-radius: 0; }
            .sr-receipt-header, .sr-receipt2-header { 
                background: #fff !important; color: #000 !important; 
                border-bottom: 2px dashed #000; padding: 10px; 
                display: block !important; text-align: center !important; 
            }
            .sr-school-info { margin-bottom: 10px; }
            .sr-school-info img { display: block; margin: 0 auto 5px auto !important; height: 18mm !important; width: 18mm !important; }
            .sr-receipt-meta { text-align: center !important; margin-top: 5px !important; }
            .sr-receipt-meta span, .sr-receipt-meta strong { display: inline-block; margin: 0 5px; font-size: .85rem; }
            
            .sr-st-info { 
                display: block !important; text-align: center !important; padding: 10px !important;
                background: transparent !important; border-color: #000 !important; border-bottom: 1px dashed #000 !important;
            }
            .sr-st-info .si-item { display: block; margin: 3px 0; font-size: 0.85rem !important; }
            
            /* Table borders for print */
            .sr-items-table { 
                border: 1px solid #000 !important; 
                border-collapse: collapse !important; 
                width: 100% !important; 
                table-layout: fixed !important;
                font-size: 0.75rem !important;
                word-wrap: break-word !important;
            }
            .sr-items-table th, .sr-items-table td, .sr-items-table .td-total { 
                border: 1px solid #000 !important; background: #fff !important; color: #000 !important; 
                padding: 4px !important;
            }
            
            /* Summary Grid for print */
            .sr-summary { display: block !important; border-top: 1px dashed #000 !important; font-size: 0.8rem !important; }
            .sr-summary-item { 
                display: flex !important; justify-content: space-between !important; 
                padding: 4px 0 !important; border: none !important; border-bottom: 1px dotted #000 !important; 
            }
            .sr-summary-item:last-child { border-bottom: none !important; }
            .sr-summary-item .si-val { font-size: 0.85rem !important; }
            
            .r2-amount, .r2-method { background: transparent !important; border-color: #000 !important; }
            
            .sr-separator { display: none !important; visibility: hidden !important; }
            .printer-cut { page-break-after: always !important; display: block; height: 1px; margin: 0; padding: 0; }
        }
