:root{--bg:#f6f9ff;--text:#10213c;--muted:#71829d;--line:#dfe8f5;--card:#ffffff;--primary:#2f6df6;--violet:#7650ef;--cyan:#32bfe8;--success:#18b981;--warning:#f5a524;--danger:#d7465f;--shadow:0 18px 50px rgba(36,71,130,.1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{transition:transform .14s ease,box-shadow .14s ease,opacity .14s ease}button:not(:disabled):active{transform:translateY(1px)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #6c83ea;outline-offset:2px}::selection{background:#cedaff;color:#17346a}.btn{border:0;border-radius:12px;padding:11px 17px;cursor:pointer;background:linear-gradient(135deg,var(--primary),var(--violet));color:#fff;font-weight:800;box-shadow:0 10px 24px #385bdc38}.btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 14px 28px #385bdc42}.btn:disabled{opacity:.58;cursor:not-allowed}.btn.alt{background:#eef4ff;color:#234369;box-shadow:none}.btn.danger{background:linear-gradient(135deg,#d94458,#ae3047)}.card{background:#fffffff0;border:1px solid rgba(216,228,246,.95);border-radius:20px;padding:20px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.grid{display:grid;gap:16px}.stats{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.stat b{font-size:30px;display:block;margin-top:7px}.muted{color:var(--muted)}.page-title{margin:0 0 18px;font-size:30px;letter-spacing:-.03em;color:#0d2142}.table-wrap{overflow:auto;border-radius:16px;border:1px solid #e4ebf6;background:#fff}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:13px 14px;border-bottom:1px solid #edf2f8}.table th{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#6f7f97;background:#f8fbff}.table tr:hover td{background:#fbfdff}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.field{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:800;color:#34445f}.field input,.field select,.field textarea{padding:11px 12px;border:1px solid #d9e3f1;border-radius:11px;background:#fff;outline:none;transition:.15s}.field input:focus,.field select:focus,.field textarea:focus{border-color:#72a4ef;box-shadow:0 0 0 4px #3673da14}.actions{display:flex;gap:8px;flex-wrap:wrap}.pill{display:inline-block;padding:5px 9px;border-radius:99px;background:#eef1ff;color:#4c4cb0;font-size:11px;font-weight:800}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-thumb{background:#c7d2e3;border-radius:99px;border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-track{background:transparent}@media(max-width:800px){.page-title{font-size:24px}.card{padding:15px}}.required-mark{color:#dc2626!important;font-weight:900;margin-left:2px}.required-field,.mandatory{color:#dc2626!important}.form-grid label:has(.required-mark),.grid4 label:has(.required-mark){font-weight:850}.required-mark{color:#dc2626!important;font-weight:800!important;margin-left:3px;display:inline;font-size:1.05em;vertical-align:baseline}#app-notifications{position:fixed;right:20px;top:20px;z-index:10000;display:grid;gap:10px;max-width:min(450px,90vw)}.app-toast{padding:16px 42px 16px 18px;border-radius:10px;box-shadow:0 8px 30px #0003;position:relative;white-space:pre-wrap;font-size:14px;background:#dcfce7;color:#14532d;border:1px solid #16a34a}.app-toast.error{background:#fee2e2;color:#991b1b;border-color:#dc2626}.app-toast button{position:absolute;right:10px;top:8px;border:0;background:transparent;color:inherit;font-size:22px;cursor:pointer}.notice.err,.notice.error,.error,.warning{color:#991b1b}.notice.ok,.notice.success{color:#166534}.app-dialog-overlay{position:fixed;inset:0;z-index:11000;background:#0f172a88;display:grid;place-items:center;padding:20px}.app-dialog{width:min(460px,100%);box-sizing:border-box;border:2px solid #dc2626;border-radius:16px;background:#fff1f2;color:#991b1b;padding:24px;box-shadow:0 20px 70px #0005}.app-dialog h2{font-size:20px;margin:0 0 12px;color:#991b1b}.app-dialog p{white-space:pre-wrap;line-height:1.6}.app-dialog input{width:100%;box-sizing:border-box;padding:12px;border:1px solid #dc2626;border-radius:8px;background:#fff;color:#111;margin:8px 0}.app-dialog-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.app-dialog button{border:1px solid #dc2626;background:#fff;color:#991b1b;border-radius:8px;padding:10px 18px;cursor:pointer;font-weight:700}.app-dialog button.app-dialog-confirm{background:#dc2626;color:#fff}.app-dialog :focus-visible{outline:3px solid #ef4444;outline-offset:3px}@media print{body.printing-student-result .sidebar,body.printing-student-result .topbar,body.printing-student-result .collapse-handle,body.printing-student-result .menu-backdrop,body.printing-student-result #app-notifications{display:none!important}body.printing-student-result .app-shell{display:block!important}body.printing-student-result .content{padding:0!important}body.printing-student-result{background:#fff!important}}
