:root{
  --lds-primary:#0A2E7A;
  --lds-primary-dark:#061E57;
  --lds-gold:#F4B400;
  --lds-gold-light:#FFD76A;
  --lds-bg:#F7F9FC;
  --lds-white:#FFFFFF;
  --lds-text:#1E293B;
  --lds-muted:#6B7280;
  --lds-border:#D6E4FF;
  --lds-shadow:rgba(10,46,122,.16);
}
html{scroll-behavior:smooth}
body{
  min-height:100vh;
  color:var(--lds-text)!important;
  font-family:"Segoe UI",Arial,sans-serif!important;
  background:
    radial-gradient(circle at 12% 8%,rgba(244,180,0,.12),transparent 24%),
    radial-gradient(circle at 90% 12%,rgba(10,46,122,.12),transparent 28%),
    linear-gradient(135deg,#fff 0%,var(--lds-bg) 52%,#eef4ff 100%)!important;
}
.navbar-custom,.navbar.bg-dark,.navbar-dark{
  background:linear-gradient(90deg,var(--lds-primary-dark),var(--lds-primary))!important;
  border-bottom:3px solid var(--lds-gold)!important;
  box-shadow:0 8px 24px rgba(6,30,87,.18);
}
.navbar-brand{
  font-weight:800!important;
  letter-spacing:.2px;
}
.navbar-brand::before{
  content:"LDS";
  display:inline-grid;
  place-items:center;
  width:38px;height:38px;
  margin-right:10px;
  border-radius:12px;
  background:linear-gradient(135deg,var(--lds-gold),var(--lds-gold-light));
  color:var(--lds-primary-dark);
  font-size:.8rem;
  font-weight:900;
  box-shadow:0 6px 16px rgba(244,180,0,.28);
  vertical-align:middle;
}
.container{position:relative}
.main-card,.card,.result-box{
  border:1px solid rgba(214,228,255,.9)!important;
  border-radius:24px!important;
  box-shadow:0 18px 50px var(--lds-shadow)!important;
  overflow:hidden;
}
.brand-header,.header{
  position:relative;
  overflow:hidden;
  background:linear-gradient(135deg,var(--lds-primary-dark) 0%,var(--lds-primary) 72%,#123C96 100%)!important;
  color:#fff!important;
  border-bottom:4px solid var(--lds-gold)!important;
  padding:30px!important;
}
.brand-header::after,.header::after{
  content:"";
  position:absolute;
  width:190px;height:190px;
  border-radius:50%;
  right:-75px;top:-95px;
  background:rgba(255,255,255,.09);
}
.brand-header h1,.brand-header h2,.brand-header h3,.header h1,.header h2{
  position:relative;z-index:1;
  font-weight:900!important;
  letter-spacing:-.4px;
}
.brand-header p,.brand-header div,.header p{position:relative;z-index:1}
.stat-card{
  background:linear-gradient(180deg,#fff,#fbfdff)!important;
  border:1px solid var(--lds-border)!important;
  border-radius:18px!important;
  box-shadow:0 10px 28px rgba(10,46,122,.09)!important;
  transition:.22s ease;
}
.stat-card:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(10,46,122,.14)!important}
.stat-card h3,.result-score{color:var(--lds-primary)!important;font-weight:900!important}
.text-muted{color:var(--lds-muted)!important}
.btn,button,input[type=submit],input[type=button],a.btn{
  border-radius:12px!important;
  font-weight:750!important;
  letter-spacing:.1px;
  padding:.72rem 1.25rem!important;
  transition:transform .2s ease,box-shadow .2s ease,filter .2s ease!important;
  box-shadow:0 8px 18px rgba(10,46,122,.13);
}
.btn:hover,button:hover,input[type=submit]:hover,input[type=button]:hover,a.btn:hover{
  transform:translateY(-2px);
  box-shadow:0 13px 25px rgba(10,46,122,.2);
  filter:saturate(1.05);
}
.btn-primary,.btn-main{
  background:linear-gradient(135deg,var(--lds-primary),#123C96)!important;
  border:1px solid var(--lds-primary)!important;
  color:#fff!important;
}
.btn-outline-primary{
  border:2px solid var(--lds-primary)!important;
  color:var(--lds-primary)!important;
  background:#fff!important;
}
.btn-outline-primary:hover{background:var(--lds-primary)!important;color:#fff!important}
.btn-warning{
  background:linear-gradient(135deg,var(--lds-gold),var(--lds-gold-light))!important;
  border:1px solid var(--lds-gold)!important;
  color:var(--lds-primary-dark)!important;
}
.btn-light{color:var(--lds-primary-dark)!important;border:1px solid rgba(255,255,255,.75)!important}
.form-control,.form-select,textarea{
  border:1px solid #cbd9f3!important;
  border-radius:12px!important;
  padding:.72rem .9rem!important;
  background:#fff!important;
}
.form-control:focus,.form-select:focus,textarea:focus{
  border-color:var(--lds-primary)!important;
  box-shadow:0 0 0 .22rem rgba(10,46,122,.12)!important;
}
.form-label{color:var(--lds-primary-dark)!important}
.question-box{
  border:1px solid var(--lds-border)!important;
  border-left:5px solid var(--lds-gold)!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 8px 22px rgba(10,46,122,.07);
}
.option-label{
  border:1px solid #d8e2f5!important;
  border-radius:13px!important;
  background:#fff;
  transition:.18s ease;
}
.option-label:hover{background:#f5f8ff!important;border-color:var(--lds-primary)!important;transform:translateX(2px)}
.table{border-color:#e2eaf7!important}
.table thead,.table thead th{
  background:linear-gradient(90deg,var(--lds-primary-dark),var(--lds-primary))!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.14)!important;
}
.table tbody tr:hover{background:#f5f8ff!important}
.alert{border-radius:14px!important;border-width:1px!important}
.alert-info{background:#eef4ff!important;border-color:#cddcff!important;color:var(--lds-primary-dark)!important}
.badge-soft{background:#eef4ff!important;color:var(--lds-primary)!important}
.badge.bg-primary{background:var(--lds-primary)!important}
.progress{height:12px!important;border-radius:999px!important;background:#e6edf8!important}
.progress-bar{background:linear-gradient(90deg,var(--lds-gold),#f59e0b)!important}
hr{border-color:#dce6f7!important;opacity:1}
.small.text-muted:last-child::after{
  content:" • Empowering Every Learner";
  color:var(--lds-primary);
  font-weight:700;
}
@media(max-width:768px){
  .brand-header,.header{padding:22px!important}
  .main-card,.card,.result-box{border-radius:18px!important}
  .navbar-brand{font-size:1rem!important}
  .navbar-brand::before{width:32px;height:32px;border-radius:10px}
}
@media print{
  body{background:#fff!important}
  .no-print{display:none!important}
  .main-card,.card{box-shadow:none!important}
}
