 :root{
      --nby-accent: #fb6000;
      --nby-ink: #1f2937;
      --nby-muted: #6b7280;
      --nby-card: #ffffff;
      --nby-soft: rgba(67, 93, 98, 0.08);
      --nby-border: rgba(31, 41, 55, 0.08);
      --nby-radius: 18px;
      --nby-success: #14804a;
      --nby-success-bg: #ecfdf3;
      --nby-danger: #c1121f;
      --nby-danger-bg: #fff1f2;
    }

    .page-hero {
      padding: 140px 0 38px;
      background:
        radial-gradient(1000px 420px at 20% 10%, rgba(251,96,0,.18), transparent 60%),
        radial-gradient(900px 420px at 80% 0%, rgba(0,131,116,.12), transparent 60%),
        linear-gradient(180deg, rgba(67,93,98,.06), transparent 60%);
    }

    .page-title {
      width: 100%;
      margin: 0 auto;
      text-align: center;
    }

    .page-title h1{
      color: #fff;
      font-weight: 800;
      letter-spacing: -0.02em;
      margin-bottom: 12px;
      padding-block: 30px 8px;
    }

    .page-title p{
      color: #fff;
      margin: 0 auto;
      max-width: 760px;
      font-size: 1.05rem;
      padding-block-end: 15px;
    }

    .quiz-intro-wrap{
      max-width: 980px;
      margin: 22px auto 0;
      padding: 22px;
      border: 1px solid var(--nby-border);
      background: rgba(255,255,255,.75);
      border-radius: 22px;
      backdrop-filter: blur(6px);
      box-shadow: 0 14px 30px rgba(0,0,0,.06);
    }

    .quiz-intro-badges{
      display: flex;
      gap: 10px;
      flex-wrap: wrap;
      justify-content: center;
      margin-top: 14px;
    }

    .badge-soft{
      background: rgba(255,255,255,.92);
      border: 1px solid rgba(31,41,55,.10);
      border-radius: 999px;
      padding: 8px 12px;
      font-weight: 800;
      font-size: .82rem;
      display: inline-flex;
      gap: 8px;
      align-items: center;
      color: var(--nby-ink);
    }

    .badge-soft i{ color: var(--nby-accent); }

    .quiz-section{
      padding: 34px 0 24px;
    }

    .quiz-shell{
      max-width: 860px;
      margin: 0 auto;
    }

    .quiz-progress-top{
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 12px;
      margin-bottom: 14px;
      color: var(--nby-muted);
      font-weight: 700;
      font-size: .95rem;
    }

    .quiz-progress-bar{
      width: 100%;
      height: 12px;
      background: rgba(31,41,55,.08);
      border-radius: 999px;
      overflow: hidden;
      margin-bottom: 24px;
    }

    .quiz-progress-fill{
      height: 100%;
      width: 0%;
      background: linear-gradient(90deg, #fb6000, #ff8a3d);
      border-radius: 999px;
      transition: width .25s ease;
    }

    .quiz-card{
      background: #fff;
      border: 1px solid var(--nby-border);
      border-radius: 22px;
      box-shadow: 0 16px 34px rgba(0,0,0,.06);
      overflow: hidden;
    }

    .quiz-card-head{
      padding: 24px 24px 10px;
    }

    .quiz-kicker{
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 8px 14px;
      border-radius: 999px;
      background: rgba(251,96,0,0.10);
      color: var(--nby-accent);
      font-weight: 700;
      margin-bottom: 14px;
    }

    .quiz-question{
      margin: 0;
      font-size: clamp(1.3rem, 2vw, 1.75rem);
      line-height: 1.25;
      font-weight: 800;
      letter-spacing: -0.02em;
      color: var(--nby-ink);
    }

    .quiz-card-body{
      padding: 12px 24px 24px;
    }

    .answers{
      display: grid;
      gap: 12px;
    }

    .answer-btn{
      width: 100%;
      text-align: left;
      border: 1px solid var(--nby-border);
      background: #fff;
      border-radius: 16px;
      padding: 16px 16px;
      color: var(--nby-ink);
      font-weight: 700;
      transition: .15s ease;
      display: flex;
      gap: 12px;
      align-items: flex-start;
    }

    .answer-btn:hover{
      transform: translateY(-1px);
      border-color: rgba(251,96,0,.35);
      box-shadow: 0 8px 20px rgba(251,96,0,.08);
    }

    .answer-letter{
      width: 34px;
      height: 34px;
      min-width: 34px;
      border-radius: 50%;
      background: rgba(67,93,98,.08);
      display: inline-flex;
      align-items: center;
      justify-content: center;
      font-size: .9rem;
      font-weight: 900;
      color: var(--nby-ink);
    }

    .answer-btn.correct{
      border-color: rgba(20,128,74,.22);
      background: var(--nby-success-bg);
      color: var(--nby-success);
    }

    .answer-btn.correct .answer-letter{
      background: rgba(20,128,74,.14);
      color: var(--nby-success);
    }

    .answer-btn.wrong{
      border-color: rgba(193,18,31,.18);
      background: var(--nby-danger-bg);
      color: var(--nby-danger);
    }

    .answer-btn.wrong .answer-letter{
      background: rgba(193,18,31,.12);
      color: var(--nby-danger);
    }

    .answer-btn.disabled{
      pointer-events: none;
    }

    .quiz-feedback{
      margin-top: 18px;
      border-radius: 16px;
      padding: 16px 16px;
      font-size: .98rem;
      line-height: 1.55;
      display: none;
    }

    .quiz-feedback.show{
      display: block;
    }

    .quiz-feedback.is-correct{
      background: var(--nby-success-bg);
      color: var(--nby-success);
      border: 1px solid rgba(20,128,74,.18);
    }

    .quiz-feedback.is-wrong{
      background: var(--nby-danger-bg);
      color: var(--nby-danger);
      border: 1px solid rgba(193,18,31,.14);
    }

    .quiz-actions{
      display: flex;
      justify-content: space-between;
      gap: 12px;
      margin-top: 18px;
      flex-wrap: wrap;
    }

    .quiz-btn{
      border-radius: 999px;
      padding: 11px 18px;
      font-weight: 800;
      border: 1px solid var(--nby-border);
      background: #fff;
      color: var(--nby-ink);
      transition: .15s ease;
    }

    .quiz-btn:hover{
      transform: translateY(-1px);
      border-color: rgba(251,96,0,.35);
    }

    .quiz-btn-primary{
      background: var(--nby-accent);
      color: #fff;
      border-color: var(--nby-accent);
    }

    .quiz-btn-primary:hover,
    .quiz-btn-primary:focus{
      background: var(--nby-accent);
      color: #fff;
      opacity: .95;
    }

    .quiz-btn[disabled]{
      opacity: .45;
      pointer-events: none;
    }

    .quiz-result{
      display: none;
      background: #fff;
      border: 1px solid var(--nby-border);
      border-radius: 22px;
      box-shadow: 0 16px 34px rgba(0,0,0,.06);
      padding: 28px 24px;
      text-align: center;
    }

    .quiz-result.show{
      display: block;
    }

    .quiz-result-score{
      width: 110px;
      height: 110px;
      margin: 0 auto 18px;
      border-radius: 50%;
      display: grid;
      place-items: center;
      background: linear-gradient(135deg, rgba(251,96,0,.14), rgba(0,131,116,.10));
      border: 1px solid rgba(31,41,55,.08);
      color: var(--nby-ink);
      font-weight: 900;
      font-size: 1.6rem;
    }

    .quiz-result h2{
      margin: 0 0 10px;
      font-size: clamp(1.5rem, 2vw, 2rem);
      font-weight: 800;
      color: var(--nby-ink);
      letter-spacing: -0.02em;
    }

    .quiz-result p{
      margin: 0 auto;
      max-width: 620px;
      color: var(--nby-muted);
      line-height: 1.65;
      font-size: 1rem;
    }

    .quiz-result-actions{
      display: flex;
      justify-content: center;
      gap: 12px;
      flex-wrap: wrap;
      margin-top: 22px;
    }

    .after-trip{
      padding: 40px 0 60px;
      background: linear-gradient(180deg, transparent, rgba(67,93,98,.06));
    }

    .after-box{
      border: 1px solid var(--nby-border);
      border-radius: 22px;
      background: #fff;
      padding: 22px;
      box-shadow: 0 18px 42px rgba(0,0,0,.06);
    }

    .after-actions{
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      margin-top: 14px;
    }

    .after-actions a{
      border-radius: 999px;
      padding: 10px 14px;
      border: 1px solid var(--nby-border);
      font-weight: 800;
      text-decoration: none;
      color: var(--nby-ink);
      background: #fff;
      transition: .15s ease;
    }

    .after-actions a:hover{
      border-color: rgba(251,96,0,.35);
      transform: translateY(-1px);
    }

    .cta-title{
      margin: 0;
      font-weight: 700;
      letter-spacing: -0.02em;
    }

    .cta-text{
      margin: 8px 0 0;
      color: var(--nby-muted);
    }

    .cta-button{
      background: var(--nby-accent);
      color: #fff;
      border-radius: 999px;
      font-weight: 900;
    }

    .cta-button:hover,
    .cta-button:focus{
      background: var(--nby-accent);
      color: #fff;
      opacity: .94;
    }

    @media (max-width: 767.98px){
      .quiz-card-head,
      .quiz-card-body{
        padding-left: 18px;
        padding-right: 18px;
      }

      .quiz-actions{
        flex-direction: column;
      }

      .quiz-btn{
        width: 100%;
      }
    }