*{box-sizing:border-box}body{margin:0;font:16px/1.55 system-ui,-apple-system,sans-serif;background:#f5f7fb;color:#17243a}.wrap{max-width:980px;margin:auto;padding:18px}.header{display:flex;align-items:center;gap:18px}.grow{flex:1}header{background:#14284a;color:white}.brand{font-size:1.25rem;font-weight:800;color:white;text-decoration:none}.muted{color:#66758b}header .muted{color:#c2d2ec}.panel{background:white;padding:24px;border-radius:14px;margin:22px 0;box-shadow:0 2px 12px #17243a12}button{border:0;background:#145ac0;color:white;padding:10px 15px;border-radius:8px;cursor:pointer;font:inherit;margin:4px}button:hover{background:#0d4497}button:disabled{opacity:.5;cursor:wait}input:not([type=checkbox]),textarea,select{padding:10px;border:1px solid #bcc8d8;border-radius:7px;font:inherit;max-width:100%}input[type=file]{width:100%}input[type=text]{width:100%}textarea{width:100%;min-height:70px}label{display:block;margin:10px 0}#notice:not(:empty){margin:15px 0;padding:12px;background:#eaf1ff;border-radius:8px}.quizRow{border-bottom:1px solid #e4e8ee;padding:12px 0}.quizRow button{font-size:.9rem}.question{border:1px solid #dbe3ef;border-radius:10px;padding:18px;margin:20px 0;break-inside:avoid}.question label{display:block;padding:6px}.stats{display:flex;gap:20px;flex-wrap:wrap;font-weight:700;padding:12px;background:#eaf1ff;border-radius:8px}.answer{background:#f1f7ee;border-radius:8px;padding:10px;margin-top:10px}.danger{background:#a52a38}.question small{color:#66758b}#emailLogin{display:flex;flex-wrap:wrap;gap:6px}#emailLogin input{min-width:200px}h1{line-height:1.2}@media print {
  header, #notice, #authPanel, #appPanel, #back,
  #ownerTools, .stats {
    display: none !important;
  }

  body {
    background: white;
    color: black;
  }

  .panel {
    box-shadow: none;
    margin: 0;
    padding: 0;
  }

  .question {
    border: 1px solid #999;
    padding: 14px;
    margin: 12px 0;
    break-inside: avoid;
  }

  .practiceControls {
    display: block !important;
  }

  .practiceControls label {
    display: block !important;
    margin: 5px 0;
    padding: 3px 0;
  }

  .practiceControls input {
    display: none !important;
  }

  .practiceControls button,
  .answer,
  .editBox {
    display: none !important;
  }

  .question h3 {
    margin-bottom: 8px;
  }

  .question small {
    color: black;
  }
}body{background:white}.panel{box-shadow:none;margin:0;padding:0}.question{border:1px solid #999}.answer{display:block!important}}

/* Soft Analytics website integration */
body {
  background: #ffffff;
  color: #172033;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}

.wrap {
  width: min(1120px, calc(100% - 40px));
  max-width: none;
  margin: 0 auto;
  padding: 0;
}

header.site-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: linear-gradient(180deg, #f8fbff 0%, #edf5ff 100%);
  color: #172033;
}

.site-header .brand {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #172033;
  font-size: inherit;
  text-decoration: none;
}

.site-header .main-nav a {
  color: #26364f;
}

.site-header .main-nav a:hover,
.site-header .main-nav a.active {
  color: #2563eb;
}

.ntq-account-bar {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 12px;
  padding-top: 12px;
}

.ntq-account-bar #identity {
  overflow-wrap: anywhere;
}

main.wrap {
  padding-top: 12px;
  padding-bottom: 45px;
  min-height: 55vh;
}

.site-footer {
  background: #0f172a;
  color: #cbd5e1;
}

.site-footer .footer-inner {
  padding-top: 50px;
  padding-bottom: 35px;
}

.site-footer .footer-bottom {
  padding-top: 18px;
}

[hidden] {
  display: none !important;
}

@media (max-width: 900px) {
  .site-header .header-inner {
    flex-wrap: wrap;
    gap: 12px;
    padding: 12px 0;
  }

  .site-header .main-nav {
    flex-wrap: wrap;
    gap: 8px 18px;
  }

  .site-header .main-nav a {
    padding: 8px 2px;
  }
}

/* Match the Soft Analytics homepage hero background */
body {
  background:
    radial-gradient(
      circle at 85% 20%,
      rgba(96, 165, 250, 0.20),
      transparent 32%
    ),
    linear-gradient(
      135deg,
      #eff6ff 0%,
      #f8faff 48%,
      #eef2ff 100%
    );
  background-attachment: fixed;
}

/* Keep the footer's own dark background */
.site-footer {
  background: #0f172a;
}

/* Keep quiz and login panels readable */
main.wrap .panel {
  background: #ffffff;
}

/* Notes-to-Quiz registration popup */
#registrationPanel:not([hidden]) {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  overflow-y: auto;
  padding: 24px;
  background: rgba(15, 23, 42, 0.65);
}

#registrationPanel > h2,
#registrationPanel > p,
#registrationPanel > form {
  width: min(100%, 460px);
  background: #ffffff;
}

#registrationPanel > h2 {
  margin: 0;
  padding: 28px 30px 5px;
  border-radius: 18px 18px 0 0;
  color: #172033;
  text-align: center;
}

#registrationPanel > p {
  margin: 0;
  padding: 5px 30px 15px;
  text-align: center;
}

#registrationForm {
  padding: 10px 30px 30px;
  border-radius: 0 0 18px 18px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
}

#registrationForm label {
  display: block;
  margin: 12px 0;
  font-weight: 600;
}

#registrationForm input {
  display: block;
  width: 100%;
  margin-top: 6px;
}

#registrationForm button[type="submit"] {
  width: 100%;
  margin: 15px 0 5px;
}

#backToLogin {
  display: block;
  width: 100%;
  background: #e8eef8;
  color: #172033;
  margin: 5px 0;
}

#backToLogin:hover {
  background: #dbe5f3;
}

@media (max-width: 520px) {
  #registrationPanel:not([hidden]) {
    justify-content: flex-start;
    padding: 16px;
  }

  #registrationForm {
    padding: 10px 20px 24px;
  }
}
