/* Qimma education workspace refinements: certificates, teachers, packages and live sessions. */
.qimma-education-workspace{--qimma-ink:var(--text);--qimma-line:var(--border);--qimma-muted:var(--muted);color:var(--qimma-ink)}
.qimma-workspace-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 16px}
.qimma-workspace-search{display:flex;align-items:center;gap:8px;flex:1;min-width:min(100%,350px);max-width:760px;margin:0}
.qimma-workspace-search .form-control{min-width:150px;flex:1;height:42px;border-radius:12px}
.qimma-icon-button{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;min-width:42px;padding:0 12px;border:1px solid var(--qimma-line);border-radius:12px;background:var(--surface);color:var(--primary);text-decoration:none;font:inherit;font-weight:700;cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .18s ease}
.qimma-icon-button:hover{background:#f2f8fc;border-color:var(--border-strong);transform:translateY(-1px)}
.qimma-icon-button svg,.qimma-detail-heading svg,.qimma-modal-footer svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.qimma-icon-button.is-small{width:34px;min-width:34px;min-height:34px;height:34px;padding:0;border-radius:10px}
.qimma-icon-button.is-small svg{width:17px;height:17px}
.qimma-icon-button.is-danger{color:#b73542;border-color:#edc4c8}
.qimma-icon-button.is-danger:hover{background:#fff4f4;border-color:#d98c94}
.qimma-row-actions{display:flex;align-items:center;justify-content:flex-start;gap:6px;white-space:nowrap}
.qimma-row-actions form{display:inline-flex;margin:0}
.qimma-table-card{border:1px solid var(--q-border-soft,var(--qimma-line));border-radius:18px;background:var(--surface,#fff);box-shadow:var(--shadow-xs,0 5px 18px rgba(29,65,91,.045));overflow:hidden}
.qimma-table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.qimma-compact-table{width:100%;border-collapse:separate;border-spacing:0;margin:0;font-size:.92rem}
.qimma-compact-table thead th{background:var(--surface-soft);color:var(--text-soft);font-weight:800;font-size:.84rem;padding:13px 15px;white-space:nowrap;border-bottom:1px solid var(--qimma-line)}
.qimma-compact-table tbody td{padding:12px 15px;border-bottom:1px solid var(--border);vertical-align:middle;line-height:1.5}
.qimma-compact-table tbody tr:last-child td{border-bottom:0}
.qimma-compact-table tbody tr:hover{background:var(--surface-soft)}
.qimma-compact-table td small{display:block;color:var(--qimma-muted);font-size:.78rem;margin-top:3px;overflow-wrap:anywhere}
.qimma-empty-state{margin:8px 0;padding:24px;border:1px dashed var(--qimma-line);border-radius:16px;background:var(--surface);color:var(--qimma-muted)}
.qimma-filter-pills{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.qimma-toolbar-caption{color:var(--qimma-muted);font-size:.88rem}
.qimma-number-pill{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:28px;padding:0 9px;border-radius:99px;background:var(--surface-soft,#eef5fb);color:var(--primary,#2b5e80);font-weight:800}
/* Shared accessible modal. */
.qimma-modal{display:none;position:fixed;z-index:10050;inset:0;align-items:center;justify-content:center;padding:18px}
.qimma-modal.is-open{display:flex}
.qimma-modal-backdrop{position:absolute;inset:0;background:rgba(14,34,49,.55);backdrop-filter:blur(3px)}
.qimma-modal-dialog{position:relative;z-index:1;display:flex;flex-direction:column;width:min(720px,100%);max-height:min(90vh,900px);overflow:hidden;background:var(--surface);border:1px solid rgba(210,226,237,.9);border-radius:20px;box-shadow:0 24px 80px rgba(12,37,55,.27);text-align:start}
.qimma-modal-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 22px;border-bottom:1px solid var(--border);background:var(--surface-soft)}
.qimma-modal-header h2{font-size:1.16rem;line-height:1.4;margin:0;font-weight:850;color:var(--primary-dark)}
.qimma-modal-close{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--qimma-line);border-radius:10px;background:var(--surface);color:var(--text-soft);font-size:25px;line-height:1;cursor:pointer}
.qimma-modal-body{padding:20px 22px;overflow:auto;overscroll-behavior:contain}
.qimma-modal-footer{display:flex;align-items:center;justify-content:flex-start;gap:9px;flex-wrap:wrap;padding:15px 22px;border-top:1px solid var(--border);background:var(--surface-soft)}
.qimma-modal-open{overflow:hidden}
/* Certificates verification and print document */
.qimma-cert-modal-dialog{width:min(740px,100%)}
.qimma-cert-verify-form>label{display:block;margin-bottom:8px;font-weight:800}
.qimma-cert-verify-input-row{display:flex;align-items:center;gap:8px}
.qimma-cert-verify-input-row .form-control{flex:1;min-width:0;height:44px;border-radius:12px}
.qimma-cert-verification-message{margin-top:14px;padding:12px 14px;border-radius:12px;background:var(--surface-muted);color:#35546a}
.qimma-cert-verification-message.is-loading{background:#f0f7fc}
.qimma-cert-verification-message.is-error{background:#fff2f2;color:#a52b38}
.qimma-cert-print-document{margin-top:18px;padding:24px;border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--text)}
.qimma-cert-print-brand{min-height:58px;display:flex;align-items:center;justify-content:center;padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid var(--border)}
.qimma-cert-print-logo{display:block;max-width:220px;max-height:72px;width:auto;height:64px}
.qimma-cert-print-brand img{max-width:220px;max-height:64px;object-fit:contain}
.qimma-cert-print-heading{text-align:center;margin-bottom:22px}
.qimma-cert-print-heading h3{margin:0 0 10px;font-size:1.35rem;color:var(--primary-dark)}
.qimma-cert-print-heading span{display:inline-flex;padding:6px 14px;border-radius:999px;background:var(--surface-muted);color:#167247;font-weight:850}
.qimma-cert-print-document.is-invalid .qimma-cert-print-heading span{background:#fff0f0;color:#ad2e3d}
.qimma-cert-details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}
.qimma-cert-details-grid>div{padding:12px 14px;border:1px solid var(--border);border-radius:11px;min-width:0}
.qimma-cert-details-grid dt{font-size:.82rem;color:var(--muted);margin-bottom:5px}
.qimma-cert-details-grid dd{margin:0;font-weight:800;overflow-wrap:anywhere}
.qimma-cert-print-token{margin:18px 0 8px;padding:10px 12px;background:var(--surface-soft);border-radius:10px;overflow-wrap:anywhere}
.qimma-cert-print-token span{color:var(--muted)}
.qimma-cert-print-url{font-size:.8rem;color:var(--muted);overflow-wrap:anywhere}
.qimma-cert-print-document footer{text-align:center;margin-top:24px;padding-top:12px;border-top:1px solid var(--border);color:var(--muted);font-size:.82rem}
/* Teacher directory uses the approved section-navigation layout: no repeated page title, content starts immediately. */
.qimma-teachers-page{max-width:1440px;padding-top:0;padding-bottom:clamp(28px,4vw,44px);color:var(--text-primary,var(--text,#203b50))}
/* Shared metric cards remain available to the packages and certificates pages. */
.qimma-summary-card{display:flex;align-items:center;gap:13px;min-width:0;padding:18px;border:1px solid var(--q-border-soft,var(--qimma-line));border-radius:16px;background:var(--surface,#fff);box-shadow:var(--shadow-xs,0 5px 18px rgba(29,65,91,.04))}
.qimma-summary-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;border-radius:13px;background:var(--surface-soft,#ecf4fb);color:var(--primary,#2c6588)}
.qimma-summary-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.qimma-summary-icon.is-green{background:var(--success-soft,#eaf7f1);color:var(--success,#14815f)}.qimma-summary-icon.is-purple{background:var(--purple-soft,#f2edfb);color:var(--purple,#7952b5)}.qimma-summary-icon.is-amber{background:var(--warning-soft,#fff4e2);color:var(--warning,#aa6b12)}
.qimma-summary-card>div{display:grid;gap:4px;min-width:0}.qimma-summary-card>div span{color:var(--muted,#687f92);font-size:.83rem}.qimma-summary-card strong{font-size:1.55rem;line-height:1.15;color:var(--text-primary,var(--text,#244b66));font-weight:900}
.qimma-teacher-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.qimma-teacher-card{display:flex;flex-direction:column;min-width:0;margin:0;padding:19px;border:1px solid var(--q-border-soft,var(--border,#d4e3ed));border-radius:17px;background:var(--surface,#fff);box-shadow:var(--shadow-xs,0 5px 18px rgba(29,65,91,.045));text-align:start}
.qimma-teacher-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.qimma-teacher-avatar{width:48px;height:48px;display:flex;align-items:center;justify-content:center;font-size:1.15rem;font-weight:900;background:var(--surface-soft,#eaf2f9);color:var(--primary,#265c7e)}
.qimma-teacher-course-count{display:inline-flex;padding:5px 10px;border-radius:999px;background:var(--primary-soft);color:var(--primary);font-size:.78rem;font-weight:800}
.qimma-teacher-card h2{font-size:1.08rem;font-weight:850;line-height:1.45;margin:0 0 5px;overflow-wrap:anywhere;color:var(--text-primary,var(--text,#24465e))}
.qimma-teacher-specialization{font-size:.86rem;color:var(--primary,#2b7190);font-weight:750;margin-bottom:9px}.qimma-teacher-specialization.is-empty{color:var(--muted,#8498a8);font-weight:500}
.qimma-teacher-card p{font-size:.9rem;color:var(--muted,#6f8496);line-height:1.75;margin:0 0 15px;flex:1;overflow-wrap:anywhere}
.qimma-teacher-card .btn{align-self:flex-start;border-radius:11px}
.qimma-detail-section{margin-top:24px}
.qimma-detail-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 12px}
.qimma-detail-heading h2{margin:0;color:var(--text-primary,var(--text,#24465e));font-size:1.1rem;font-weight:850}
.qimma-detail-heading>span{color:var(--muted,#6f8496);font-size:.84rem}
.qimma-teacher-bio-cell{min-width:220px;max-width:430px;color:var(--muted,#627b8f);font-size:.86rem}
/* Package storefront and management */
.qimma-store-page{max-width:1440px}
.qimma-store-page .q-unified-package-grid{gap:16px}
.qimma-store-page .q-unified-package-card{padding:20px;border:1px solid var(--border);border-radius:17px;box-shadow:0 5px 18px rgba(29,65,91,.04);background:var(--surface)}
.qimma-store-page .q-unified-package-card h2{font-size:1.12rem;line-height:1.5;color:var(--text-soft)}
.qimma-store-page .q-unified-package-card p{font-size:.9rem;line-height:1.8;color:var(--muted);overflow-wrap:anywhere}
.qimma-store-page .q-unified-package-card .q-price{color:var(--primary);font-size:1.28rem}
.qimma-store-page .q-unified-package-card .btn{border-radius:11px}
.qimma-package-management{margin-top:26px;padding-top:22px;border-top:1px solid var(--border)}
.qimma-package-management-panel{display:block}
.qimma-package-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}
.qimma-package-stat-grid .qimma-summary-card{padding:14px}
.qimma-package-stat-grid .qimma-summary-icon{width:40px;height:40px;flex-basis:40px}
.qimma-package-stat-grid .qimma-summary-card strong{font-size:1.35rem}
.qimma-package-modal-dialog{width:min(850px,100%)}
.qimma-package-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 15px}
.qimma-package-form-grid .form-group{min-width:0}
.qimma-package-form-grid .form-control{min-height:42px;border-radius:11px}
.qimma-package-form-grid textarea.form-control{min-height:88px}
.qimma-package-active-field{display:flex;align-items:center;padding-top:6px}
.qimma-check-label{display:flex;align-items:center;gap:9px;cursor:pointer;font-weight:750}
.qimma-check-label input{width:17px;height:17px;accent-color:var(--primary)}
.qimma-package-courses-field{margin-top:6px}
.qimma-package-course-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px;max-height:240px;overflow:auto;padding:8px 12px;border:1px solid var(--qimma-line);border-radius:12px;background:var(--surface-soft)}
.qimma-package-course-picker label{display:flex;align-items:flex-start;gap:8px;padding:9px 2px;border-bottom:1px solid var(--border);font-weight:500;min-width:0}
.qimma-package-course-picker label input{margin-top:4px;flex:0 0 auto;accent-color:var(--primary)}
.qimma-package-course-picker label span{overflow-wrap:anywhere}
.qimma-package-course-picker label small{display:block;color:var(--muted);font-size:.78rem}
.qimma-package-form-actions{padding:16px 0 0;margin-top:18px;background:transparent}
.qimma-package-table td:first-child{min-width:190px}
.qimma-package-table td strong{overflow-wrap:anywhere}
/* Live sessions: no summary/header card; first visible area is concise filters then schedule table. */
.qimma-live-sessions-page{padding-top:0}
.qimma-live-toolbar{margin-bottom:14px;padding:0}
.qimma-live-sessions-page .qimma-table-card{margin-top:0}
.qimma-live-sessions-page .qimma-compact-table td{padding-top:11px;padding-bottom:11px}
.qimma-live-sessions-page .qimma-compact-table .btn{border-radius:9px;padding:7px 10px;font-size:.84rem}
@media(max-width:1000px){.qimma-teacher-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.qimma-package-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){
 .qimma-workspace-toolbar{align-items:stretch}.qimma-workspace-search{max-width:none;min-width:0}.qimma-workspace-search .btn{min-width:58px;padding:8px 12px}.qimma-icon-button:not(.is-small){justify-content:center;width:100%}
 .qimma-modal{padding:8px;align-items:flex-end}.qimma-modal-dialog{max-height:94vh;border-radius:18px 18px 12px 12px}.qimma-modal-header{padding:14px 16px}.qimma-modal-body{padding:16px}.qimma-modal-footer{padding:13px 16px}.qimma-cert-verify-input-row{align-items:stretch;flex-direction:column}.qimma-cert-verify-input-row .btn{width:100%;justify-content:center}.qimma-cert-print-document{padding:16px}.qimma-cert-details-grid{grid-template-columns:1fr}
 .qimma-teachers-page{padding-top:0;padding-bottom:28px}.qimma-teacher-card-grid{grid-template-columns:1fr;gap:12px}.qimma-teacher-card{padding:16px}.qimma-teacher-card .btn{width:100%;justify-content:center}
 .qimma-package-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.qimma-package-stat-grid .qimma-summary-card{padding:11px;gap:8px}.qimma-package-stat-grid .qimma-summary-icon{width:34px;height:34px;flex-basis:34px}.qimma-package-stat-grid .qimma-summary-card>div span{font-size:.75rem}.qimma-package-stat-grid .qimma-summary-card strong{font-size:1.18rem}.qimma-package-form-grid{grid-template-columns:1fr}.qimma-package-course-picker{grid-template-columns:1fr;max-height:34vh}
 .qimma-compact-table thead{display:none}.qimma-compact-table tbody,.qimma-compact-table tr,.qimma-compact-table td{display:block;width:100%}.qimma-compact-table tbody tr{padding:11px 14px;border-bottom:1px solid var(--border)}.qimma-compact-table tbody tr:last-child{border-bottom:0}.qimma-compact-table tbody td{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:8px 0;border:0;text-align:start}.qimma-compact-table tbody td::before{content:attr(data-label);flex:0 0 34%;color:var(--muted);font-size:.78rem;font-weight:800}.qimma-compact-table td small{max-width:62%;text-align:end}.qimma-row-actions{flex-wrap:wrap}.qimma-teacher-bio-cell{min-width:0;max-width:none}
}
@media print{
 body.qimma-print-cert-active{background:#fff!important;margin:0!important;padding:0!important}
 body.qimma-print-cert-active *{visibility:hidden!important}
 body.qimma-print-cert-active [data-cert-modal].is-open,body.qimma-print-cert-active [data-cert-modal].is-open *{visibility:visible!important}
 body.qimma-print-cert-active [data-cert-modal]{display:block!important;position:absolute!important;inset:0!important;padding:0!important;background:#fff!important}
 body.qimma-print-cert-active .qimma-modal-backdrop,body.qimma-print-cert-active .qimma-modal-header,body.qimma-print-cert-active .qimma-cert-verify-form,body.qimma-print-cert-active .qimma-cert-verification-message,body.qimma-print-cert-active .qimma-modal-footer{display:none!important}
 body.qimma-print-cert-active .qimma-modal-dialog{position:static!important;width:100%!important;max-height:none!important;overflow:visible!important;border:0!important;border-radius:0!important;box-shadow:none!important;margin:0!important;padding:0!important}
 body.qimma-print-cert-active .qimma-modal-body{padding:0!important;overflow:visible!important}
 body.qimma-print-cert-active .qimma-cert-print-document{display:block!important;margin:0!important;padding:16mm!important;border:0!important;border-radius:0!important;box-shadow:none!important;min-height:250mm}
 body.qimma-print-cert-active .qimma-cert-print-document[hidden]{display:block!important}
 body.qimma-print-cert-active .qimma-cert-print-logo{max-height:24mm!important;max-width:65mm!important}
 @page{size:A4 portrait;margin:10mm}
}
/* Exams catalog (every account type): same table card as the packages page. */
body.role-guest .q-public-exams-view{padding-top:clamp(20px,3vw,32px)}
.q-public-exams-view .q-cell-stack{display:grid;gap:2px;min-width:0;justify-items:start;text-align:start}
.q-public-exams-view .q-cell-stack small{max-width:none;text-align:start;margin-top:0}
.q-public-exams-view .q-public-exam-description{max-width:46ch}
.q-public-exams-view .qimma-row-actions .btn{white-space:nowrap}
@media(max-width:720px){.q-public-exams-view .q-cell-stack{justify-items:end;text-align:end}.q-public-exams-view .q-cell-stack small{text-align:end}}
