@font-face{font-family:'Poppins';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/Poppins-Regular.ttf') format('truetype')}
@font-face{font-family:'Poppins';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/Poppins-Medium.ttf') format('truetype')}
@font-face{font-family:'Poppins';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/Poppins-SemiBold.ttf') format('truetype')}
@font-face{font-family:'Poppins';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/Poppins-Bold.ttf') format('truetype')}
@font-face{font-family:'Poppins';font-style:normal;font-weight:800;font-display:swap;src:url('fonts/Poppins-ExtraBold.ttf') format('truetype')}
:root{--primary:#4182d9;--accent:#1e70dc;--ink:#232931;--muted:#757c86;--line:#eceff4;--soft:#f7f9fc}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--ink);background:#fff;font-family:'Poppins','Segoe UI',Arial,sans-serif;font-size:15px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.wrap{width:min(1120px,calc(100% - 64px));margin:auto}.site-header{height:100px;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;gap:10px;align-items:center;font-size:16px;font-weight:800;letter-spacing:1px;line-height:1.2}.brand small{display:block;font-size:8px;letter-spacing:2px;margin-top:5px;color:var(--muted)}.brand-mark{font-size:38px;color:var(--accent);transform:rotate(-15deg);text-shadow:-5px 5px 0 #4182d933}nav{display:flex;gap:35px;align-items:center;font-size:13px}.nav-admin{border:1px solid #ccdff8;border-radius:9px;padding:9px 22px;color:#1a5fbb}.nav-admin span{padding-left:18px}.hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:570px;padding-top:20px;padding-bottom:60px;gap:30px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:2px;display:flex;align-items:center;gap:8px}.dot{height:7px;width:7px;background:var(--accent);border-radius:50%}h1,h2,h3,h4,p{margin-top:0}h1{font-size:62px;letter-spacing:-2.5px;line-height:1.12;margin:24px 0}h1 span{color:var(--accent)}.hero-copy>p{font-size:15px;color:var(--muted);line-height:1.9;margin-bottom:28px}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;background:var(--primary);color:#fff;padding:14px 24px;border:0;border-radius:9px;font-weight:600;font-size:13px;box-shadow:0 6px 15px #4182d918;min-height:48px}.button:hover{background:#306dbd}.button span{font-size:20px;line-height:1}.hero-note{margin-top:24px;color:var(--muted);font-size:11px;display:flex;gap:9px;align-items:center}.hero-note>span{color:var(--accent);font-size:21px}.hero-art{position:relative;min-height:440px;display:flex;justify-content:center;align-items:center}.arch{position:relative;width:320px;height:360px;background:linear-gradient(145deg,#6ca3eb 5%,#1e6ed8 50%,#1757ac);border-radius:180px 180px 90px 90px;transform:rotate(-8deg);box-shadow:inset 14px 4px 20px #ffffff70,inset -14px -8px 25px #13468970,14px 25px 40px #1a62c21c}.arch-inner{position:absolute;inset:25px;border:1px solid #ffffff35;border-radius:inherit}.book{width:265px;height:165px;position:absolute;left:28px;top:118px;transform:rotate(8deg) rotateX(15deg);filter:drop-shadow(0 18px 12px #0e336550);z-index:3}.book-left,.book-right{position:absolute;width:50%;height:100%;background:linear-gradient(100deg,#faf1d9,#fffdf5);border-bottom:9px solid #4075bc;border-top:3px solid #f0dfb4;padding:25px 20px;box-shadow:0 4px 0 #dbcfac,0 9px 0 #4980ca}.book-left{left:0;transform:skewY(13deg);border-radius:12px 0 0 8px}.book-right{right:0;transform:skewY(-13deg);border-radius:0 12px 8px 0}.book span{display:block;height:3px;margin:15px 0;background:#bfac83;border-radius:4px;opacity:.65}.book span:nth-child(2){width:75%;margin-left:auto}.book-spine{position:absolute;left:49.5%;height:154px;width:3px;top:15px;background:#ccb98f}.book-rest{position:absolute;bottom:33px;width:200px;height:19px;background:#8a503b;left:65px;transform:rotate(8deg);border-radius:50%;opacity:.25;filter:blur(8px)}.orb{position:absolute;border-radius:50%}.orb-one{width:330px;height:330px;background:#eff4fb;left:0;bottom:4px}.orb-two{width:70px;height:70px;right:10px;top:35px;background:linear-gradient(135deg,#deeafa,#93baed);box-shadow:inset 5px 5px 10px #fff}.spark{position:absolute;color:var(--primary);z-index:4}.spark-one{right:12px;bottom:95px;font-size:44px}.spark-two{left:30px;top:25px;font-size:38px;color:#fb9d3e}.art-label{position:absolute;left:20px;bottom:32px;background:#fff;border:1px solid #edf0f4;box-shadow:0 14px 35px #2d3f5712;border-radius:14px;z-index:5;display:flex;gap:12px;padding:15px 21px;font-size:12px;font-weight:700;transform:rotate(-3deg)}.art-label small{display:block;font-weight:400;font-size:10px;color:var(--muted)}.label-icon{background:#ecf3fc;color:var(--primary);height:36px;width:36px;border-radius:50%;display:grid;place-items:center;font-size:20px}.art-caption{position:absolute;bottom:-18px;font-size:8px;letter-spacing:2px;color:#888f99}.institution{text-align:center;padding:40px 0 65px}.institution>span{font-size:9px;letter-spacing:2.5px;color:var(--accent);font-weight:700}.institution h2{font-size:22px;margin:10px 0 4px;letter-spacing:-.5px}.institution p{font-size:12px;color:var(--muted)}.lookup-section{background:var(--soft);padding:70px 0;scroll-margin-top:20px}.lookup-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.accent{color:var(--accent)}h2{font-size:32px;line-height:1.3;letter-spacing:-1px}.lookup-intro h2{margin:18px 0}.lookup-intro h2 span{color:var(--primary)}.lookup-intro>p{color:var(--muted);font-size:13px;max-width:350px;line-height:1.9}.period{display:flex;gap:13px;align-items:center;margin-top:25px;font-size:10px;color:var(--muted)}.period>span{display:grid;place-items:center;background:#e8f1fc;color:var(--primary);font-size:24px;width:42px;height:42px;border-radius:10px}.period strong{display:block;color:var(--ink);font-size:12px}.search-panel{background:#fff;border:1px solid var(--line);border-radius:18px;padding:32px;box-shadow:0 15px 45px #364c6808}.panel-heading{display:flex;gap:14px;align-items:center;margin-bottom:24px}.search-symbol{width:43px;height:43px;border-radius:12px;display:grid;place-items:center;font-size:33px;background:#eff5fd;color:var(--primary)}.panel-heading h3{font-size:19px;letter-spacing:-.4px;margin:0}.panel-heading p{font-size:11px;color:var(--muted);margin:3px 0 0}label{display:block;font-size:12px;font-weight:600;margin-bottom:8px}input,select{width:100%;border:1px solid #dbe1e9;background:#fff;border-radius:8px;padding:13px;color:var(--ink);min-height:48px}input:focus,select:focus{outline:2px solid #a1c4f2;outline-offset:2px}input::placeholder{color:#a0a7b0}.input-hint{font-size:10px;color:var(--muted);margin:8px 0 20px}.full{width:100%}.search-privacy{font-size:10px;text-align:center;margin-top:18px;color:#858d98}.guide{text-align:center;padding:80px 0}.guide>.eyebrow{justify-content:center}.guide h2{margin:14px 0 40px;font-size:27px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:65px}.step-number{display:grid;place-items:center;width:57px;height:57px;border-radius:17px;font-size:19px;font-weight:750;margin:0 auto 18px}.peach{background:#fff0d2;color:#c48716}.mint{background:#dff9f3;color:#149b89}.lavender{background:#ecf3fc;color:var(--primary)}.steps h3{font-size:15px;margin-bottom:8px}.steps p{color:var(--muted);font-size:12px;line-height:1.8;max-width:260px;margin:auto}.encouragement{position:relative;background:var(--primary);border-radius:15px;color:#fff;padding:42px 48px;display:flex;justify-content:space-between;gap:30px;align-items:center;overflow:hidden}.encouragement h2{font-size:29px;letter-spacing:-.7px;margin-bottom:14px}.encouragement p{font-size:11px;color:#dde9fa;margin:0}.encouragement>a{font-size:12px;border-bottom:1px solid #9ec2f2;padding-bottom:7px;white-space:nowrap;z-index:1}.decor-star{position:absolute;font-size:210px;color:#ffffff0b;right:120px;top:-60px}.footer{display:flex;align-items:center;justify-content:space-between;padding:40px 0;margin-top:20px}.footer p{text-align:right;font-size:11px;color:#737b85;margin:0}.footer p span{font-size:10px;color:#9ba1a9}.results:not(:empty){margin-top:35px}.results-heading{margin-bottom:3px}.result-help{font-size:12px;color:var(--muted)}.student-card{border:1px solid var(--line);background:white;border-radius:14px;margin:15px 0;overflow:hidden}summary{cursor:pointer}.student-card summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 24px}.student-card summary::-webkit-details-marker{display:none}.student-class{display:block;font-size:11px;color:var(--muted);margin-top:5px}.open-label{font-size:11px;color:var(--primary);white-space:nowrap}.exam-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:15px;padding:0 24px 24px}.exam-card{border:1px solid #e4e7e7;padding:22px;border-radius:12px;background:#fcfffd}.exam-card.failed{background:#fffafa;border-color:#f4e3e3}.exam-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.exam-top h4{margin:0}.status{display:inline-block;white-space:nowrap;font-size:10px;font-weight:700;border-radius:30px;padding:5px 10px}.success{background:#e3f7eb;color:#23734b}.danger{background:#eaf2fc;color:#356bb3}.juz-amount{font-size:30px;font-weight:800;color:var(--primary);line-height:1.3}.juz-caption{color:var(--muted);font-size:10px}.juz-description{margin:15px 0 9px;font-size:13px;font-weight:600}.exam-message{font-size:11px;color:var(--muted);margin:0}.empty-state{border:1px dashed #bfcddf;border-radius:12px;padding:24px;background:white;font-size:13px}.login-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:90px;align-items:center;min-height:630px}.login-copy h1{font-size:48px}.login-copy p,.login-panel>p{color:var(--muted);font-size:13px}.text-link{font-size:12px;color:var(--primary)}.login-panel h2{font-size:24px;margin-bottom:8px}.login-icon{font-size:34px;color:var(--accent)}.login-panel label{margin-top:18px}.login-panel button{margin-top:26px}.alert{background:#e7f7ee;color:#256b48;padding:14px 18px;border-radius:8px;margin:20px 0;font-size:13px}.alert.error{background:#eff5fd;color:#3367ac}.admin-main{padding:30px 0 50px}.admin-title{display:flex;justify-content:space-between;align-items:center;gap:20px}.admin-title h1{font-size:36px;margin:14px 0}.admin-title p{font-size:12px;color:var(--muted)}.secondary{background:#edf4fd;color:var(--primary);box-shadow:none}.secondary:hover{background:#dae8fa}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0}.stats article{border:1px solid var(--line);padding:24px;border-radius:14px;background:var(--soft)}.stats span{font-size:12px;color:var(--muted)}.stats strong{display:block;font-size:32px;color:var(--primary)}.editor{border:1px solid var(--line);border-radius:12px;padding:20px;margin-bottom:24px}.editor summary{font-size:14px;color:var(--primary);font-weight:700}.edit-form{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:24px}.edit-form small{font-size:10px;color:var(--muted)}.editor-actions{display:flex;gap:20px;align-items:center}.data-panel{border:1px solid var(--line);border-radius:15px;padding:25px}.data-panel h2{font-size:22px;margin-bottom:5px}.data-panel>p{color:var(--muted);font-size:12px}.admin-filter{display:flex;gap:12px;margin:24px 0;align-items:center}.admin-filter input{flex:2}.admin-filter select{flex:1}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}th{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);background:var(--soft)}td,th{padding:14px 12px;border-bottom:1px solid var(--line)}td small{display:block;color:var(--muted);margin-top:4px}.row-actions{display:flex;gap:16px;align-items:center;color:var(--primary)}.delete-button{border:0;padding:8px 0;background:transparent;color:#356bb3;font-size:12px}.pagination{display:flex;justify-content:space-between;gap:20px;font-size:11px;margin-top:20px}.pagination>div{display:flex;gap:20px;color:var(--primary)}.password-editor{margin-top:24px}
@media(min-width:1500px){.hero{min-height:650px}}
@media(max-width:900px){h1{font-size:49px}.hero-art{transform:scale(.87)}.hero{gap:0}.lookup-layout{gap:40px}.steps{gap:25px}.login-layout{gap:35px}.login-copy h1{font-size:39px}}
@media(max-width:640px){.wrap{width:calc(100% - 40px)}.site-header{height:80px}.brand{font-size:13px}.brand small{font-size:7px}.brand-mark{font-size:32px}nav{gap:15px}.nav-guide{display:none}.nav-admin{font-size:11px;padding:7px 14px}.hero{grid-template-columns:1fr;padding-top:27px;padding-bottom:15px}.eyebrow{font-size:8px;letter-spacing:1.5px}h1{font-size:48px;letter-spacing:-2px;margin:21px 0}.hero-copy>p{font-size:13px;margin-bottom:22px}.hero-note{margin-top:15px;font-size:10px}.hero-art{min-height:370px;transform:scale(.82);margin:-5px -20px -15px}.orb-one{left:18px}.arch{flex-shrink:0}.art-label{left:12px;bottom:3px}.art-caption{bottom:-36px}.institution{padding:38px 0}.institution h2{font-size:19px}.institution p{font-size:11px}.lookup-section{padding:40px 0}.lookup-layout{grid-template-columns:1fr;gap:28px}.lookup-intro h2{font-size:28px}.lookup-intro>p{font-size:12px}.period{margin-top:17px}.search-panel{padding:23px}.search-privacy{font-size:9px}.guide{padding:50px 0}.guide h2{font-size:23px;margin-bottom:30px}.steps{grid-template-columns:1fr;gap:30px}.steps article{display:grid;grid-template-columns:55px 1fr;text-align:left;column-gap:18px}.step-number{grid-row:1/3;margin:0;width:50px;height:50px;font-size:16px;border-radius:14px}.steps h3{margin-bottom:5px}.steps p{max-width:none;margin:0;font-size:11px}.encouragement{padding:30px 25px;flex-direction:column;align-items:flex-start;gap:20px}.encouragement h2{font-size:25px}.encouragement p{font-size:11px}.footer{flex-direction:column;gap:20px;align-items:flex-start;padding:30px 0}.footer p{text-align:left}.student-card summary{padding:18px;gap:10px}.student-card summary strong{font-size:13px}.open-label{font-size:9px}.exam-list{grid-template-columns:1fr;padding:0 14px 14px}.exam-card{padding:18px}.login-layout{grid-template-columns:1fr;gap:25px;min-height:0;padding:25px 0}.login-copy h1{font-size:37px}.login-copy>p{font-size:12px}.admin-main{padding-top:15px}.admin-title{align-items:flex-start}.admin-title h1{font-size:28px;letter-spacing:-1px}.admin-title .button{padding:10px 12px;font-size:11px;min-height:42px}.stats{gap:8px;margin:22px 0}.stats article{padding:13px 10px}.stats span{font-size:9px;display:block;line-height:1.5;min-height:28px}.stats strong{font-size:25px}.edit-form{grid-template-columns:1fr}.data-panel{padding:16px}.admin-filter{flex-wrap:wrap}.admin-filter input{flex:auto;width:100%}.admin-filter select{min-width:150px}.pagination{flex-direction:column;gap:10px}.editor{padding:17px}table{min-width:740px}input,select{font-size:16px}.desktop{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Blue identity and compact announcement entry. */
:root{--primary:#2165c7;--accent:#1875d1;--ink:#172c49;--muted:#66788f;--line:#e3ebf5;--soft:#f4f8fd}
.brand-logo{width:58px;height:58px;object-fit:cover;border-radius:50%;flex-shrink:0}
.brand{letter-spacing:.8px;gap:13px}.brand small{font-weight:500}
.site-header{height:104px;border-bottom:1px solid var(--line)}
.institution{padding:44px 0 42px}.institution>span{color:var(--primary)}
.institution h1{font-size:36px;line-height:1.35;letter-spacing:-1.1px;margin:14px 0 12px;font-weight:700}
.institution h1 span{color:var(--primary)}.institution p{font-size:12px;margin-bottom:0}
.lookup-section{padding:48px 0}.lookup-intro h2{font-size:29px;line-height:1.45}
.lookup-layout{gap:65px}.lookup-intro>p{line-height:1.9}
.button{background:var(--primary);box-shadow:0 6px 18px #2165c719}.button:hover{background:#174d9c}
.nav-admin{color:var(--primary);border-color:#c9ddf4}
.search-symbol,.period>span,.login-icon{color:var(--primary)}
.search-symbol,.period>span{background:#e9f2ff}.search-panel{box-shadow:0 14px 40px #1d4e8710}
input:focus,select:focus{outline-color:#85b4ee}
.peach{background:#e8f1ff;color:#2165c7}.mint{background:#e2f4f7;color:#177f91}.lavender{background:#e9eff9;color:#335887}
.encouragement{background:linear-gradient(115deg,#153f78,#2165c7)}.encouragement p{color:#e0ecff}.encouragement>a{border-color:#88b4eb}
.danger{background:#fff2db;color:#85570d}.exam-card.failed{background:#fffdf8;border-color:#efdfc0}
.alert.error{background:#fff2db;color:#85570d}
.delete-button{color:#8e4c21}
.secondary{background:#eaf2ff;color:var(--primary)}.secondary:hover{background:#dbeafe}
@media(max-width:640px){
 .site-header{height:86px}.brand-logo{width:50px;height:50px}.brand{gap:10px}
 .institution{padding:30px 0}.institution h1{font-size:27px;letter-spacing:-.8px;line-height:1.4;margin:12px 0}.institution h1 span{display:block}
 .institution p{font-size:10px;line-height:1.9;max-width:290px;margin:auto}
 .lookup-section{padding:32px 0}.lookup-layout{gap:25px}.lookup-intro h2{font-size:25px}
 .guide h2{line-height:1.5}.encouragement h2{font-size:23px;line-height:1.5}
 .login-copy h1{font-size:34px}.admin-title h1{font-size:25px;line-height:1.4}
}

/* Centered footer and mobile public identity. */
.footer{flex-direction:column;align-items:center;justify-content:center;gap:20px;text-align:center}
.footer p{text-align:center}
@media(max-width:640px){.public-header{justify-content:center}}
