.qr-profile-card { display: grid; grid-template-columns: 210px minmax(0, 1fr); gap: 24px; align-items: center; padding: 20px; margin-top: 16px; border: 1px solid #ddd8ff; border-radius: 18px; background: linear-gradient(135deg, #faf9ff, #fff); }
.qr-visual { width: 210px; min-height: 210px; display: grid; place-items: center; padding: 10px; border: 1px solid #e6e3f8; border-radius: 16px; background: #fff; box-shadow: 0 12px 28px rgba(38, 36, 78, .08); }
.school-qr-svg { display: block; max-width: 100%; height: auto; }
.qr-profile-info { min-width: 0; }
.qr-profile-info > span { color: var(--primary); font-size: 11px; font-weight: 900; }
.qr-profile-info h3 { margin: 8px 0 4px; font-size: 22px; color: var(--text); }
.qr-profile-info p { margin: 0 0 15px; color: var(--muted); font-size: 12px; line-height: 1.8; }
.qr-code-value { display: block; max-width: 100%; padding: 10px 12px; overflow-wrap: anywhere; border-radius: 9px; direction: ltr; text-align: left; color: #302668; background: var(--primary-soft); font-family: Consolas, monospace; font-size: 12px; }
.qr-help { display: block; margin-top: 10px; color: var(--muted); font-size: 10px; line-height: 1.7; }
.manage-qr { color: #4338ca !important; background: #eef2ff !important; }
.employee-manage-actions .manage-qr { border-right: 4px solid #4f46e5; }
.library-book-qr { display: grid; grid-template-columns: 118px 1fr; gap: 13px; align-items: center; padding: 12px; margin: 0 0 15px; border: 1px solid #e6e3f8; border-radius: 13px; background: #faf9ff; }
.library-book-qr .qr-visual { width: 118px; min-height: 118px; padding: 6px; border-radius: 10px; }
.library-book-qr strong, .library-book-qr span { display: block; }.library-book-qr span { color: var(--muted); font-size: 10px; }.library-book-qr strong { margin: 4px 0; font-size: 13px; }

@media (max-width: 600px) {
  .qr-profile-card { grid-template-columns: 1fr; text-align: center; }
  .qr-visual { margin: auto; }
  .qr-code-value { text-align: center; }
}

@media print {
  .qr-print-sheet { width: 105mm; min-height: 148mm; margin: 0 auto; padding: 12mm; box-sizing: border-box; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; color: #000; background: #fff; }
  .qr-print-sheet h1 { margin: 0 0 5px; font-size: 18px; }.qr-print-sheet h2 { margin: 0 0 4px; font-size: 15px; }.qr-print-sheet p { margin: 0 0 12px; font-size: 10px; }
  .qr-print-sheet .qr-print-code { margin-top: 10px; font-family: Consolas, monospace; font-size: 9px; direction: ltr; }
  .qr-print-sheet .qr-print-year { margin-top: 12px; font-size: 9px; }
}
