/* Tema mengikuti panel admin CBT (localhost/ujian/admin.php) */
:root{--at-primary:#0a84e8;--at-primary-dark:#0a6fd0;--at-body-bg:#f5f6f8;--at-text:#495057;--at-muted:#74788d;--at-border:#eff2f7}
body{font-family:Roboto,"Segoe UI",Tahoma,Geneva,Verdana,sans-serif!important;color:var(--at-text)}
a{color:var(--at-primary)}a:hover{color:var(--at-primary-dark)}
.content-wrapper,.login-page{background:var(--at-body-bg)}
.btn-primary,.btn-primary:focus{background:var(--at-primary);border-color:var(--at-primary)}
.btn-primary:hover{background:var(--at-primary-dark);border-color:var(--at-primary-dark)}
.btn-wa{background:#25d366;border-color:#25d366;color:#fff}.btn-wa:hover{background:#1ebe5a;border-color:#1ebe5a;color:#fff}
.card{border:0;box-shadow:0 2px 4px rgba(15,34,58,.12);border-radius:4px}
.card-outline.card-primary{border-top:3px solid var(--at-primary)}
.card-header{border-bottom:1px solid var(--at-border)}
.content-header h1{font-size:1.5rem;font-weight:500}

/* Login / daftar */
.login-page{min-height:100vh;height:auto;padding:28px 0;align-items:center}
.login-box{width:400px;max-width:94vw}.login-box.wide{width:480px}
.login-logo{width:84px;height:84px;object-fit:contain;margin-bottom:6px}
.login-title{font-size:1.5rem;font-weight:700;color:#343a40;margin:0}
.login-sub{font-size:.85rem;color:var(--at-muted);margin-bottom:18px}
.login-card .card-header{background:var(--at-primary);color:#fff;border-radius:4px 4px 0 0}
.login-card.card-outline{border-top:0}
.card-title-lg{font-size:1.05rem;font-weight:500;margin:0;color:#fff}
.login-card .card-body{padding:1.6rem}
.login-box-msg{padding:0 0 1.1rem;color:var(--at-muted);font-size:.95rem}
.login-card .input-group-text{background:#f8f9fa;color:var(--at-muted);min-width:40px;justify-content:center}
.login-card .form-control{height:calc(2.5rem + 2px)}
.login-card .form-control:focus{border-color:var(--at-primary);box-shadow:0 0 0 .15rem rgba(10,132,232,.2)}
button.input-group-text{cursor:pointer;border:1px solid #ced4da}
.field-hint{font-size:.78rem;color:var(--at-muted);margin:-.55rem 0 .9rem}

/* Halaman sukses */
.success-ic{width:78px;height:78px;border-radius:50%;background:#e6f8f0;color:#34c38f;font-size:2.2rem;display:flex;align-items:center;justify-content:center;margin:0 auto 14px}
.recap{background:#f8f9fa;border:1px dashed #ced4da;border-radius:4px;padding:12px 14px;font-size:.9rem;text-align:left}
.recap dt{color:var(--at-muted);font-weight:400}

/* Panel */
.main-sidebar .brand-link{display:flex;align-items:center;border-bottom:1px solid var(--at-border)}
.brand-image{width:30px;height:30px;margin-right:.6rem;object-fit:contain;max-height:none;float:none;margin-left:0}
.nav-sidebar .nav-link.active{background:rgba(10,132,232,.1)!important;color:var(--at-primary-dark)!important;box-shadow:none}
.nav-sidebar .nav-link{color:#4d5466}.nav-sidebar .nav-icon{color:#7a8194}
.nav-sidebar .nav-link.active .nav-icon{color:var(--at-primary-dark)}
.nav-header{color:#8a90a0;font-size:.75rem;letter-spacing:.06em}
.btn-nav{background:none;border:0;width:100%;text-align:left;cursor:pointer}
.small-box .icon{top:10px}
.info-card{display:flex;flex-direction:row!important;align-items:center;gap:14px;padding:18px}
.info-card .ico{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem}
.info-card b{display:block;font-size:1.6rem;line-height:1.1;color:#343a40}.info-card span{font-size:.82rem;color:var(--at-muted)}
.ic-blue{background:rgba(10,132,232,.12);color:var(--at-primary)}.ic-amber{background:rgba(241,180,76,.18);color:#d89a22}
.ic-green{background:rgba(52,195,143,.15);color:#2aa876}.ic-red{background:rgba(244,106,106,.15);color:#e04b4b}
.timeline-steps{list-style:none;padding:0;margin:0}
.timeline-steps li{position:relative;padding:0 0 18px 44px}
.timeline-steps li:before{content:"";position:absolute;left:14px;top:30px;bottom:0;width:2px;background:var(--at-border)}
.timeline-steps li:last-child:before{display:none}
.timeline-steps .dot{position:absolute;left:0;top:0;width:30px;height:30px;border-radius:50%;background:#e9ecef;color:#74788d;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700}
.timeline-steps .done .dot{background:#34c38f;color:#fff}.timeline-steps .now .dot{background:#f1b44c;color:#fff}
.note-box{background:#f8f9fa;border:1px dashed #ced4da;border-radius:4px;padding:12px 14px;white-space:pre-wrap}
.table td,.table th{vertical-align:middle}.table thead th{background:#f8f9fa;border-bottom:1px solid #eff2f7;font-size:.78rem;text-transform:uppercase;letter-spacing:.03em;color:#74788d}
.note-input{min-width:200px;font-size:.82rem}
@media(max-width:575px){.login-card .card-body{padding:1.2rem}}

/* Paket & harga (member) */
.prod-card{position:relative;overflow:hidden;border-top:3px solid var(--at-primary)}
.prod-ribbon{position:absolute;top:12px;right:-30px;transform:rotate(40deg);background:#f1b44c;color:#fff;font-size:.68rem;font-weight:700;padding:2px 34px;letter-spacing:.03em}
.prod-price{margin:.4rem 0 .8rem}.prod-price .amount{font-size:1.7rem;font-weight:700;color:#343a40}
.prod-feat li{padding:3px 0;font-size:.9rem}
html{scroll-behavior:smooth}

/* Order paket (gaya halaman order cloud) */
.order-section{margin-top:2rem}
.order-head{display:flex;align-items:center;gap:14px;margin-bottom:1rem}
.order-head h4{margin:0;font-size:1.25rem;font-weight:700;color:#343a40}.order-head p{margin:0;color:var(--at-muted);font-size:.9rem}
.order-ico{width:46px;height:46px;border-radius:12px;background:#e6f8ee;color:#16a34a;display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex:none}
.order-card{border-top:3px solid #16a34a;border-radius:14px;margin-bottom:1.25rem}
.order-title{font-size:1.15rem;font-weight:700;color:#1f2937;margin-bottom:.7rem}
.order-desc{color:#4b5563;line-height:1.65;margin-bottom:.9rem}
.order-feat li{padding:3px 0;font-size:.92rem}.order-feat i{color:#16a34a}
.order-price{border:1px solid #16a34a;border-radius:14px;padding:16px 10px;text-align:center;margin:1rem auto;width:100%;max-width:320px}
.order-price .amount{font-size:2rem;font-weight:500;color:#15803d;line-height:1.2}.order-price .per{color:#4b5563}
.btn-order{background:#16a34a;color:#fff;border-radius:50px;font-weight:700;padding:.65rem 2rem;align-self:center;min-width:200px}
.btn-order:hover{background:#15803d;color:#fff}

/* ---- Hasil pencarian sekolah (daftar): baris ringkas dan netral ---- */
.sch-row{display:flex;align-items:flex-start;gap:10px;margin:.15rem 0 1rem;padding:.6rem .8rem;border:1px solid #e3e7ee;border-radius:6px;background:#fafbfd;line-height:1.4}
.sch-ic{margin-top:2px;font-size:1rem;color:#9aa3b2;flex:none}
.sch-bd{flex:1;min-width:0}
.sch-name{font-size:.92rem;font-weight:600;color:#343a40;overflow-wrap:anywhere}
.sch-meta{font-size:.8rem;color:#74788d;margin-top:1px}
.sch-meta a,.sch-row a.sch-edit{color:#0a6fd0;font-weight:500}
.sch-row a.sch-edit{font-size:.8rem;flex:none;margin-top:2px}
.sch-row.ok .sch-ic{color:#1fa463}
.sch-row.warn .sch-ic{color:#d89a22}
.sch-row.bad .sch-ic{color:#e04b4b}
.sch-row.muted .sch-name{font-weight:500;color:#5b6475}

/* Centang "tidak punya NPSN" */
#noNpsn + .custom-control-label{font-weight:400;font-size:.88rem;color:#495057;line-height:1.45}
#noNpsn + .custom-control-label .text-muted{font-size:.82rem}
