@import "https://fonts.googleapis.com/css2?family=Fraunces:wght@600&family=Noto+Naskh+Arabic:wght@400;600&family=Space+Grotesk:wght@400;500;600;700&display=swap";:root{color:#0b1a30;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--brand-navy:#0c316e;--brand-blue:#1b5fbf;--brand-gold:#f2c14e;--ink:#0b1a30;--ink-soft:#3b4c67;--muted:#5a6b82;--panel:#ffffffeb;--accent:var(--brand-gold);background-color:#f7f3ea;font-family:Space Grotesk,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 12% 12%,#f2c14e47,#0000 45%),radial-gradient(circle at 85% 0,#0c316e2e,#0000 40%),linear-gradient(160deg,#fdf7ec,#eef3fb 60%);min-height:100vh;margin:0}a{color:inherit}.app{flex-direction:column;gap:2rem;max-width:1200px;margin:0 auto;padding:2.5rem 1.5rem 4rem}.language-bar{background:#ffffffe6;border:1px solid #0c316e24;border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.6rem 1rem;display:flex}.language-bar span{color:var(--muted);font-size:.85rem}.language-buttons{gap:.5rem;display:flex}.language-buttons button{color:var(--ink);cursor:pointer;background:#fff;border:1px solid #0c316e33;border-radius:999px;padding:.35rem .9rem;font-size:.8rem}.language-buttons button.active{background:var(--ink);color:#fff;border-color:#0000}.rtl{text-align:right;direction:rtl;font-family:Noto Naskh Arabic,Space Grotesk,Segoe UI,sans-serif}.rtl .panel-header,.rtl .panel-actions,.rtl .field-row,.rtl .language-bar{flex-direction:row-reverse}.rtl .hero-brand{text-align:right;flex-direction:row-reverse}.rtl .search-suggestions,.rtl table th,.rtl table td{text-align:right}.font-status{color:var(--muted);align-items:center;gap:.5rem;font-size:.75rem;display:flex}.font-status button{cursor:pointer;background:#fff;border:1px solid #0c316e33;border-radius:999px;padding:.25rem .7rem;font-size:.72rem}.hero{background:linear-gradient(135deg,#0c316e14,#0f509e0d 45%,#f2c14e59);border-radius:28px;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);align-items:center;gap:2rem;padding:2rem;display:grid;position:relative;overflow:hidden;box-shadow:0 24px 60px #1020401f}.hero:before{content:"";background:radial-gradient(circle,#0c316e2e,#0000 70%);border-radius:50%;width:220px;height:220px;position:absolute;bottom:-120px;left:-70px}.hero:after{content:"";filter:blur(2px);background:radial-gradient(circle,#f2c14e80,#0000 70%);border-radius:50%;width:240px;height:240px;position:absolute;top:-80px;right:-40px}.hero-copy{gap:.85rem;display:grid}.hero-brand{align-items:center;gap:1rem;display:flex}.hero-logo{object-fit:contain;background:#fff;border:1px solid #0c316e26;border-radius:18px;width:72px;height:72px;padding:.4rem;box-shadow:0 12px 24px #0c316e1a}.eyebrow{text-transform:uppercase;letter-spacing:.25em;color:var(--muted);margin-bottom:.5rem;font-size:.7rem}.hero h1{color:var(--ink);margin:0 0 .5rem;font-family:Fraunces,serif;font-size:clamp(2.2rem,3vw,3.3rem)}.hero-subtitle{color:var(--ink-soft);max-width:40ch;margin:0;font-size:1.05rem}.hero-card{background:#fffc;border:1px solid #0c316e1f;border-radius:20px;gap:1rem;padding:1.5rem;display:grid}.hero-card strong{color:var(--ink);font-size:1.8rem;display:block}.hero-label{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-size:.75rem}.panel{background:var(--panel);border:1px solid #0c316e14;border-radius:20px;padding:1.5rem;animation:.4s both rise;box-shadow:0 14px 34px #0c316e14}.progress-card{background:#ffffffe6;border:1px solid #0c316e1f;border-radius:16px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:center;gap:1rem;padding:1rem;display:grid}.progress-label{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.75rem}.progress-card strong{color:var(--ink);font-size:1.1rem;display:block}.progress-bar{background:#0c316e14;border-radius:999px;grid-column:1/-1;height:10px;overflow:hidden}.progress-bar span{border-radius:inherit;background:linear-gradient(90deg,var(--brand-gold),var(--brand-blue));height:100%;transition:width .3s;display:block}.step{background:var(--brand-gold);color:#1b2230;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;margin-right:.6rem;font-size:.9rem;font-weight:700;display:inline-flex}.panel-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.panel-header h2{margin:0;font-size:1.2rem}.panel-meta{color:var(--muted);font-size:.85rem}.panel-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.search-field{color:var(--muted);flex-direction:column;gap:.35rem;font-size:.78rem;display:flex}.search-field input{border:1px solid #0c316e2e;border-radius:10px;min-width:220px;padding:.35rem .55rem;font-size:.8rem}.search-suggestions{background:#fff;border:1px solid #0c316e1f;border-radius:10px;gap:.35rem;margin-top:.3rem;padding:.4rem;display:grid;box-shadow:0 6px 16px #27323c14}.search-suggestions button{text-align:left;cursor:pointer;color:var(--ink);background:0 0;border:none;border-radius:8px;padding:.25rem .35rem;font-size:.78rem}.search-suggestions button:hover{background:#f2c14e33}.search-empty{color:var(--muted);font-size:.75rem}.panel-help{color:var(--muted);margin:0;font-size:.85rem}.panel-body{flex-direction:column;gap:1.25rem;display:flex}.no-print{display:block}.print-only{display:none}.print-layout{gap:1.2rem;display:grid}.print-header h2{margin:0}.print-header p{color:var(--ink-soft);margin:.2rem 0 0}.print-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.print-section table{border-collapse:collapse;width:100%;font-size:.85rem}.print-section th,.print-section td{border:1px solid #27323c33;padding:.4rem}.print-comment{color:var(--ink-soft);margin:.4rem 0 0;font-size:.85rem}.print-notes{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.8rem;display:grid}.evaluation-panel{font-size:.85rem}.evaluation-panel label{font-size:.78rem}.evaluation-panel input[type=text],.evaluation-panel select,.evaluation-panel textarea,.evaluation-panel input[type=number]{padding:.35rem .5rem;font-size:.78rem}.evaluation-panel .question-card{padding:.35rem}.evaluation-panel .rating-row{grid-template-columns:minmax(0,1fr) 80px 18px;gap:.25rem}.evaluation-panel .question-grid{gap:.3rem}.evaluation-panel .question-card p{margin:0 0 .2rem}.evaluation-panel .field-column{gap:.25rem}.evaluation-panel .section-block{padding:.6rem}.evaluation-panel .rating-row input[type=range]{height:3px}.evaluation-panel .radio,.evaluation-panel .chip{padding:.25rem .5rem;font-size:.75rem}.panel-body.split{grid-template-columns:minmax(0,.45fr) minmax(0,.55fr);gap:1.5rem;display:grid}.field-row{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.field-column{flex-direction:column;gap:.5rem;display:flex}label{color:var(--ink);flex-direction:column;gap:.5rem;font-size:.9rem;display:flex}input[type=file]{font-size:.9rem}input[type=text],select,textarea{background:#fff;border:1px solid #0c316e2e;border-radius:10px;padding:.6rem .7rem;font-family:inherit;font-size:.95rem;transition:border .2s,box-shadow .2s}textarea{resize:vertical}input[type=text]:focus,select:focus,textarea:focus{border-color:#0c316e73;outline:none;box-shadow:0 0 0 3px #f2c14e59}button,.link-button{background:var(--brand-navy);color:#fff;cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;padding:.65rem 1.4rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:transform .2s,box-shadow .2s;display:inline-flex}.language-bar .language-buttons button{color:var(--ink);background:#fff;border:1px solid #0c316e33;padding:.35rem .9rem;font-size:.8rem}.language-bar .language-buttons button.active{background:var(--ink);color:#fff;border-color:#0000}button:disabled{opacity:.6;cursor:not-allowed;transform:none}button.primary{background:var(--brand-gold);color:#1b2230;align-self:flex-start}.link-button{color:var(--ink);background:0 0;border:1px solid #0c316e33}button:hover:not(:disabled),.link-button:hover{transform:translateY(-1px);box-shadow:0 8px 20px #27323c1f}.table-wrapper{border:1px solid #0c316e1f;border-radius:16px;overflow-x:auto}.table-wrapper.scroll{max-height:420px;overflow-y:auto}.staff-header-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:start;gap:1rem;display:grid}.staff-upload{flex-direction:column;gap:.6rem;display:flex}.staff-table-wrapper{max-height:424px;overflow-y:hidden}.staff-toolbar{flex-direction:column;align-items:flex-end;gap:.6rem;padding-top:.2rem;display:flex}.table-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.6rem;display:flex}.table-pagination{justify-content:flex-end;align-items:center;gap:.6rem;display:flex}.rtl .staff-toolbar{align-items:flex-start}.rtl .table-controls,.rtl .table-pagination{justify-content:flex-start}.table-total{color:var(--muted);font-size:.75rem}.table-controls{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.table-controls label{color:var(--muted);align-items:center;gap:.4rem;font-size:.75rem;display:flex}.table-controls select{border:1px solid #0c316e33;border-radius:8px;padding:.25rem .5rem;font-size:.8rem}.table-pagination{color:var(--ink);align-items:center;gap:.5rem;font-size:.8rem;display:flex}.table-pagination button{background:#fff;border:1px solid #0c316e33;border-radius:8px;padding:.25rem .6rem;font-size:.75rem}table{border-collapse:collapse;width:100%;font-size:.9rem}thead{background:#0c316e0f}th,td{text-align:left;border-bottom:1px solid #0c316e14;padding:.5rem}tbody tr{height:32px}.staff-table{table-layout:fixed}.staff-table th,.staff-table td{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.staff-table th:first-child,.staff-table td:first-child{width:36px}.staff-table th:nth-child(2),.staff-table td:nth-child(2){width:70px}.staff-table th:nth-child(3),.staff-table td:nth-child(3){width:140px}.staff-table th:nth-child(4),.staff-table td:nth-child(4){width:160px}.staff-table th:nth-child(5),.staff-table td:nth-child(5){width:200px}.staff-table th:nth-child(6),.staff-table td:nth-child(6){width:120px}.staff-table th:nth-child(7),.staff-table td:nth-child(7),.staff-table th:nth-child(8),.staff-table td:nth-child(8){width:160px}thead th{z-index:1;background:#f3f3eff2;position:sticky;top:0}.results-table tbody tr:hover{cursor:pointer;background:#f2c14e33}tbody tr.selected{background:#f2c14e4d}.question-list{color:var(--ink);margin:0;padding-left:1.3rem}.question-grid{gap:1rem;display:grid}.question-card{background:#ffffffe6;border:1px solid #0c316e1f;border-radius:16px;padding:1rem;transition:transform .2s,box-shadow .2s}.question-card:hover{transform:translateY(-2px);box-shadow:0 10px 20px #27323c14}.criteria-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.criteria-card{background:#ffffffe6;border:1px solid #0c316e1f;border-radius:16px;padding:1rem}.criteria-card h3{margin:0 0 .6rem;font-size:1rem}.criteria-card ul{color:var(--ink-soft);margin:0;padding-left:1.2rem}.section-block{background:#fff9;border:1px dashed #0c316e33;border-radius:18px;padding:1rem}.section-header h3{align-items:center;gap:.6rem;margin:0 0 .8rem;display:flex}.rating-options{flex-wrap:wrap;gap:.75rem;display:flex}.chip{color:var(--ink);background:#27323c14;border-radius:999px;align-items:center;gap:.4rem;padding:.35rem .8rem;font-size:.85rem;font-weight:600;display:inline-flex}.chip.excellent{color:#2f5f3d;background:#63ab6c40}.chip.very-good{color:#2b4b5a;background:#71add340}.chip.good{color:#7b5113;background:#ffc95e59}.chip.satisfactory{color:#4b4b4b;background:#a8a8a84d}.chip.needs-improvement{color:#7a2c2c;background:#e278784d}.badge{border-radius:999px;align-items:center;padding:.2rem .6rem;font-size:.75rem;font-weight:600;display:inline-flex}.badge.warning{color:#7a2c2c;background:#e2787833}.radio{background:#fffc;border:1px solid #0c316e26;border-radius:999px;align-items:center;gap:.4rem;padding:.4rem .8rem;font-size:.9rem;display:inline-flex}.radio input{accent-color:var(--brand-gold)}.label{color:var(--ink);font-size:.9rem}.rating-row{grid-template-columns:minmax(0,1fr) 110px 24px;align-items:center;gap:.75rem;display:grid}.rating-row input[type=range]{width:100%;accent-color:var(--brand-gold)}.rating-row input[type=number]{text-align:center}.percent-tag{color:var(--muted);font-size:.9rem}.summary-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.summary-card{background:#ffffffe6;border:1px solid #0c316e1f;border-radius:16px;padding:1rem}.summary-card h3{margin:0 0 .6rem;font-size:1rem}.summary-card p{color:var(--ink-soft);margin:.3rem 0}.button-row{flex-wrap:wrap;gap:.75rem;display:flex}.status-pill{color:var(--ink);background:#0c316e14;border-radius:999px;align-items:center;padding:.2rem .75rem;font-size:.75rem;font-weight:600;display:inline-flex}.status-pill.good{color:#2f5f3d;background:#63ab6c40}.status-pill.average{color:#7b5113;background:#ffc95e59}.status-pill.excellent{color:#2f5f3d;background:#63ab6c40}.status-pill.very-good{color:#2b4b5a;background:#71add340}.status-pill.satisfactory{color:#4b4b4b;background:#a8a8a84d}.status-pill.needs-improvement{color:#7a2c2c;background:#e278784d}.status-pill.muted{color:var(--muted);background:#0c316e1a}.notice{border-radius:12px;padding:.75rem 1rem;font-size:.9rem}.notice.error{color:#7a2c2c;background:#db636333;border:1px solid #db636366}.notice.success{color:#2f5f3d;background:#63ab6c33;border:1px solid #63ab6c66}.notice.info{color:#2b4b5a;background:#69889c2e;border:1px solid #69889c66}.empty-state{color:var(--muted);background:#0c316e0a;border-radius:12px;padding:1rem;font-size:.95rem}.file-name{color:var(--muted);margin:.4rem 0 .8rem;font-size:.85rem}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (max-width:900px){.hero{grid-template-columns:1fr}.hero-brand{flex-direction:column;align-items:flex-start}.hero-logo{width:64px;height:64px}.panel-body.split,.staff-header-grid{grid-template-columns:1fr}.staff-toolbar{align-items:flex-start}.table-controls,.table-pagination{justify-content:flex-start}.rating-row{grid-template-columns:1fr}}@media print{body{background:#fff}.hero,.language-bar,.panel:not(.print-evaluation),.notice,button,.link-button,.no-print{display:none!important}.print-evaluation{box-shadow:none;border:none;padding:0}.print-only{display:block}.print-layout{gap:1rem}}
