@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#17152c;--muted:#77778d;--purple:#6038e8;--purple2:#8064f3;--line:#ecebf3;--bg:#f7f7fc;--white:#fff;--green:#22b36b;--shadow:0 18px 55px rgba(41,31,91,.08)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:14px}a{text-decoration:none;color:inherit}h1,h2,h3,.brand{font-family:Manrope,sans-serif}h1{font-size:32px;letter-spacing:-1.2px;margin:5px 0 8px}h2{font-size:18px;margin:0 0 6px}p{line-height:1.65}.muted{color:var(--muted);margin:0}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.8px;color:var(--purple);margin:0 0 8px}.brand{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:800;letter-spacing:-.5px}.brand-mark{width:36px;height:36px;display:grid;place-items:center;background:linear-gradient(135deg,#744bf2,#4c2bd0);color:white;border-radius:12px;font-weight:800;box-shadow:0 7px 18px #6038e83d}.brand-light{font-weight:500;color:#8d83ad;margin-left:3px}.brand-mark.large{width:52px;height:52px;font-size:21px;border-radius:16px;margin-bottom:20px}
.btn{border:0;background:linear-gradient(110deg,#6840e9,#4d2bd1);color:white;border-radius:10px;padding:13px 19px;font-weight:700;font-family:inherit;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:18px;box-shadow:0 8px 18px #6038e82b;transition:.2s}.btn:hover{transform:translateY(-2px);box-shadow:0 12px 24px #6038e83d}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.secondary{background:#f0edff;color:var(--purple);box-shadow:none}.btn.full{width:100%;margin-top:8px}.small-btn{padding:9px 12px;font-size:11px;white-space:nowrap}.alert{padding:12px 14px;border-radius:10px;background:#edfff5;color:#187548;font-size:13px;margin:14px 0}.alert.error{background:#fff0f0;color:#b52b39}.danger-link{color:#c83e4b}
.sidebar{position:fixed;inset:0 auto 0 0;width:244px;background:#fff;border-right:1px solid var(--line);padding:28px 19px;display:flex;flex-direction:column;z-index:3}.side-label{font-size:10px;color:#a2a0b1;font-weight:800;letter-spacing:1.6px;margin:48px 0 13px 12px}.nav-link{padding:13px 14px;border-radius:10px;color:#77758d;font-weight:600;margin:3px 0;transition:.2s}.nav-link:hover,.nav-link:first-of-type{background:#f1edff;color:var(--purple)}.sidebar-bottom{margin-top:auto;color:#aaa8b8;font-size:11px;padding:12px}.admin-main{margin-left:244px;min-height:100vh}.topbar{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 42px;color:#77758d;font-size:13px}.admin-chip{background:#f2efff;color:var(--purple);border-radius:30px;padding:8px 12px;font-size:11px;font-weight:700}.content{max-width:1250px;margin:auto;padding:38px 42px 60px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.page-heading .muted{font-size:13px}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:20px}.stat-card,.panel,.quick-card{background:#fff;border:1px solid #efedf5;border-radius:15px;box-shadow:0 8px 30px rgba(38,30,78,.035)}.stat-card{padding:22px 23px;position:relative;min-height:153px}.stat-icon{width:37px;height:37px;border-radius:11px;display:grid;place-items:center;font-size:18px;margin-bottom:16px}.violet{background:#f0ebff;color:#6945e8}.green{background:#e8fbf1;color:#1da565}.orange{background:#fff3e6;color:#e68a2c}.stat-label{color:#77758d;font-size:12px;display:block}.stat-card strong{display:block;font:800 28px Manrope;margin:4px 0}.stat-card small{color:#a3a1af;font-size:11px}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:20px 0}.quick-card{padding:19px;display:flex;align-items:center;gap:15px;transition:.2s}.quick-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.quick-card>span{width:43px;height:43px;border-radius:12px;background:#f0ebff;color:var(--purple);display:grid;place-items:center;font-size:21px}.quick-card div{display:grid;gap:5px}.quick-card b{font-size:13px}.quick-card small{color:var(--muted);font-size:11px}.quick-card i{margin-left:auto;color:var(--purple);font-style:normal}.panel{padding:23px;margin-top:20px}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.panel-head .muted{font-size:12px}.text-link{color:var(--purple);font-weight:700;font-size:12px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{text-align:left;color:#9693a6;font-size:10px;letter-spacing:.8px;text-transform:uppercase;font-weight:800;padding:13px 12px;border-bottom:1px solid var(--line)}td{padding:15px 12px;border-bottom:1px solid #f1f0f6;color:#6f6d80;font-size:12px}td b{color:#28263e}.empty{text-align:center;padding:30px;color:#9693a6}.student-cell{display:flex;align-items:center;gap:10px}.student-cell img,.student-result-head img{width:34px;height:34px;object-fit:cover;border-radius:50%}.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#eee9ff;color:var(--purple);font-weight:800}.avatar.big{width:58px;height:58px;font-size:21px}.form-panel{max-width:850px;padding:28px}.form-panel h2{margin-bottom:4px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:25px 0}.field{display:flex;flex-direction:column;gap:8px}.field label,label{font-size:12px;font-weight:700;color:#403d56}.field input,.field select,.auth-card input,.lookup-input input{width:100%;border:1px solid #e7e5ef;border-radius:9px;padding:13px 14px;background:#fff;color:var(--ink);font:13px 'DM Sans';outline:none;transition:.2s}.field input:focus,.field select:focus,.auth-card input:focus,.lookup-input input:focus{border-color:#987ff5;box-shadow:0 0 0 3px #6840e915}.field small{color:#a09dae;font-size:10px}.full-field{grid-column:1/-1}
.auth-wrap{min-height:100vh;display:grid;place-items:center;padding:25px;background:radial-gradient(circle at 15% 15%,#eee9ff,transparent 32%),radial-gradient(circle at 90% 85%,#e9e6ff,transparent 30%),#f8f7fc}.auth-card{width:min(100%,430px);padding:42px;background:#fff;border:1px solid #eeebf6;border-radius:20px;box-shadow:0 24px 80px #33216b12}.auth-card h1{font-size:29px}.auth-card>label{display:block;margin:20px 0 8px}.auth-card .muted{font-size:13px}.back-link{display:block;text-align:center;margin-top:22px;color:#89869a;font-size:11px}
.public-nav{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 max(calc((100vw - 1160px)/2),5vw);background:#fff;border-bottom:1px solid #efedf5}.nav-login{font-size:12px;font-weight:700;color:#6250b7}.public-main{max-width:1160px;margin:auto;padding:45px 24px 30px}.public-hero{min-height:310px;border-radius:22px;background:linear-gradient(115deg,#21164e,#3c277f 62%,#5634ad);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:45px 7%;overflow:hidden;position:relative}.public-hero:after{content:"";position:absolute;width:400px;height:400px;border:1px solid #ffffff16;border-radius:50%;right:15%;top:-190px;box-shadow:0 0 0 45px #ffffff08,0 0 0 90px #ffffff06}.hero-copy{max-width:560px;position:relative;z-index:1}.hero-pill{font-size:9px;letter-spacing:1.5px;color:#d6caff;background:#ffffff16;padding:9px 12px;border-radius:30px}.hero-pill i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#7df0b4;margin-right:6px}.hero-copy h1{font-size:39px;line-height:1.2;margin:24px 0 13px}.hero-copy h1 em{font-style:normal;color:#b8a6ff}.hero-copy p{color:#d0c9e8;font-size:13px;max-width:480px}.hero-points{display:flex;gap:20px;margin-top:20px;color:#e2dcf5;font-size:11px}.hero-art{width:260px;height:240px;position:relative;display:grid;place-items:center;z-index:1}.art-orbit{position:absolute;border:1px solid #ffffff2b;border-radius:50%;width:220px;height:220px}.orbit-two{width:175px;height:175px;border-style:dashed}.document-illustration{width:142px;height:180px;background:#fff;border-radius:10px;box-shadow:0 20px 45px #160d3b66;padding:15px;color:#292044;transform:rotate(5deg);position:relative}.doc-top{display:flex;align-items:center;gap:7px;font-size:7px;font-weight:800;letter-spacing:.6px}.doc-logo{background:#6840e9;color:white;border-radius:5px;padding:5px;font-size:10px}.doc-lines{display:grid;gap:9px;margin-top:25px}.doc-lines b,.doc-lines i{height:5px;background:#ece9f5;border-radius:4px}.doc-lines b{width:80%;background:#d9d0ff}.doc-lines i:nth-child(2){width:95%}.doc-lines i:nth-child(3){width:72%}.doc-seal{position:absolute;right:17px;bottom:34px;border:2px solid #4fca91;color:#4fca91;border-radius:50%;width:25px;height:25px;display:grid;place-items:center}.doc-foot{position:absolute;bottom:12px;left:15px;font-size:7px;letter-spacing:1px;color:#8a849c}.floating-tag{position:absolute;bottom:8px;right:-20px;background:#fff;color:#5c43b5;padding:11px 14px;border-radius:10px;font-size:10px;font-weight:700;box-shadow:0 10px 30px #140c3850}
.lookup-card{background:#fff;border:1px solid #eeecf4;border-radius:18px;box-shadow:var(--shadow);max-width:850px;margin:-22px auto 0;position:relative;padding:30px 36px;z-index:2}.lookup-icon{width:43px;height:43px;border-radius:13px;background:#f0ebff;color:var(--purple);display:grid;place-items:center;font-size:25px;float:right}.lookup-heading h2{font-size:22px}.lookup-heading .muted{font-size:12px}.lookup-form{margin-top:25px}.lookup-form>label{display:block;margin-bottom:9px}.lookup-input{display:flex;gap:10px}.lookup-input input{flex:1;min-width:0}.lookup-input .btn{white-space:nowrap}.digilocker-note{border-top:1px solid var(--line);margin-top:27px;padding-top:20px;display:flex;align-items:center;gap:13px}.digilocker-symbol{width:39px;height:39px;background:#eff3ff;color:#3656b8;border-radius:11px;display:grid;place-items:center;font-size:20px}.digilocker-note div{flex:1}.digilocker-note b{font-size:12px}.digilocker-note p{font-size:10px;margin:3px 0 0}.digilocker-note>a{font-size:11px;font-weight:700;color:var(--purple)}.page-note{text-align:center;color:#9996a7;font-size:11px;margin:25px 0}.public-footer{border-top:1px solid #eae8f1;padding:20px 5%;display:flex;justify-content:space-between;color:#9996a7;font-size:10px}.result-alert{margin-top:20px}.result-found{margin-top:25px;padding-top:22px;border-top:1px solid var(--line)}.student-result-head{display:flex;align-items:center;gap:14px}.student-result-head h3{margin:4px 0;font-size:17px}.student-result-head .eyebrow{font-size:9px}.result-title{font-size:14px;margin:24px 0 10px}.result-row{display:flex;align-items:center;gap:13px;padding:13px 0;border-top:1px solid #f0eef5}.pdf-icon{background:#fff0f0;color:#d34c56;border-radius:8px;padding:10px;font-size:9px;font-weight:800}.result-meta{display:grid;gap:4px;flex:1}.result-meta b{font-size:12px}.result-meta small{color:#9693a6;font-size:10px}.fade-up{animation:rise .5s both}@keyframes rise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:900px){.sidebar{width:205px}.admin-main{margin-left:205px}.content{padding:28px 22px}.topbar{padding:0 22px}.hero-art{transform:scale(.85);margin-right:-20px}.hero-copy h1{font-size:33px}}
@media(max-width:650px){.sidebar{position:relative;width:auto;height:auto;inset:auto;padding:14px 17px;flex-direction:row;align-items:center;overflow:auto}.sidebar .brand{white-space:nowrap}.side-label,.sidebar-bottom{display:none}.nav-link{font-size:11px;padding:9px;white-space:nowrap;margin-left:5px}.admin-main{margin:0}.topbar{height:52px;padding:0 17px}.content{padding:25px 15px}.page-heading{align-items:flex-start;flex-direction:column}.page-heading h1{font-size:27px}.stats-grid{grid-template-columns:1fr;gap:10px}.stat-card{min-height:120px;padding:16px}.stat-icon{float:right}.quick-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.full-field{grid-column:auto}.form-panel{padding:20px}.public-nav{height:64px;padding:0 18px}.public-main{padding:20px 12px}.public-hero{padding:30px 24px;min-height:390px}.hero-copy h1{font-size:31px}.hero-art{position:absolute;right:-45px;bottom:-55px;opacity:.23;transform:scale(.85)}.hero-copy{z-index:2}.lookup-card{padding:23px 18px;margin-top:-15px}.lookup-input{flex-direction:column}.lookup-input .btn{width:100%}.digilocker-note{flex-wrap:wrap}.digilocker-note>a{margin-left:52px}.public-footer{gap:8px;flex-direction:column}.auth-card{padding:30px 23px}.panel{padding:15px}.quick-card{padding:15px}}
