/* Full-screen learning modules must never become navigation dead ends. */
.immersive-nav{display:none}

body[data-view="quiz"].quiz-answering .immersive-nav,
body[data-view="guiderpg"] .immersive-nav,
body[data-view="redmap"] .immersive-nav,
body[data-view="classicwar"] .immersive-nav{
  position:fixed;
  z-index:1400;
  top:14px;
  left:14px;
  right:14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  min-height:54px;
  padding:7px 9px;
  border:1px solid rgba(91,128,139,.24);
  border-radius:15px;
  background:rgba(250,253,253,.94);
  box-shadow:0 12px 35px rgba(20,55,66,.14);
  backdrop-filter:blur(18px);
}
.immersive-brand{display:flex;align-items:center;gap:9px;text-align:left}
.immersive-brand img{width:38px;height:38px;border-radius:10px;box-shadow:0 5px 14px rgba(13,89,108,.2)}
.immersive-brand span{display:grid;gap:2px}
.immersive-brand b{color:#174b5d;font:800 15px/1 "Songti SC","STSong",serif;letter-spacing:.08em}
.immersive-brand small{color:#76919b;font-size:9px}
.immersive-nav>div{display:flex;gap:7px}
.immersive-nav>div button{
  min-height:36px;
  padding:0 13px;
  border:1px solid #c9dce3;
  border-radius:9px;
  color:#315f70;
  background:#fff;
  font-size:11px;
  font-weight:700;
}
.immersive-nav>div button:first-child{color:#fff;background:#167f88;border-color:#167f88}

body[data-view="quiz"].quiz-answering .quiz-page.is-answering{padding-top:92px!important}
body[data-view="guiderpg"] .grpg-app,
body[data-view="redmap"] main,
body[data-view="classicwar"] main{padding-top:76px!important}

.quiz-complete-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:9px;margin-top:18px}
.quiz-complete-actions .btn{margin-top:0}
.sb-contact-qr-button{position:relative;display:block;width:108px;margin:2px auto 4px;padding:0;border:0;border-radius:10px;background:#fff;cursor:zoom-in;overflow:hidden}
.sb-contact-qr-button .sb-contact-qr{width:108px;height:108px;margin:0;border:5px solid #fff}
.sb-contact-qr-button>span{position:absolute;inset:auto 0 0;padding:5px 2px;color:#fff;background:rgba(18,92,112,.86);font-size:8px;opacity:0;transition:opacity .18s ease}
.sb-contact-qr-button:hover>span,.sb-contact-qr-button:focus-visible>span{opacity:1}
.contact-qr-modal{position:fixed;inset:0;z-index:3000;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(10,35,45,.72);opacity:0;pointer-events:none;transition:opacity .2s ease;backdrop-filter:blur(8px)}
.contact-qr-modal.show{opacity:1;pointer-events:auto}
.contact-qr-dialog{position:relative;width:min(430px,calc(100vw - 32px));padding:30px 28px 24px;text-align:center;border:1px solid #c4dfe7;border-radius:22px;background:#fff;box-shadow:0 24px 80px rgba(5,45,61,.28)}
.contact-qr-close{position:absolute;right:14px;top:10px;width:34px;height:34px;border:0;border-radius:50%;color:#668490;background:#eef6f8;font-size:24px;line-height:1;cursor:pointer}
.contact-qr-kicker{color:#23879d;font:700 10px ui-monospace,monospace;letter-spacing:.18em}
.contact-qr-dialog h2{margin:8px 0 4px;color:#173f50;font:800 24px "Songti SC","STSong",serif}
.contact-qr-dialog p{margin:0 0 18px;color:#77919b;font-size:12px}
.contact-qr-large{display:block;width:min(320px,80vw);height:min(320px,80vw);margin:0 auto 20px;padding:8px;border:1px solid #d5e7ec;border-radius:12px;object-fit:contain;background:#fff}
.contact-qr-actions{display:flex;justify-content:center;gap:9px}.contact-qr-actions .btn{min-width:112px}
body.qr-modal-open{overflow:hidden}

/* Button hierarchy: one clear primary action, quiet exits, reliable touch targets. */
.immersive-nav button,
.quiz-complete-actions .btn,
body[data-view="quiz"].quiz-answering :is(.quiz-nav-prev,.quiz-nav-next,.multi-submit),
body[data-view="quiz"].quiz-answering .quiz-options .opt{
  min-height:44px;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease;
}
.immersive-nav button:hover,
.quiz-complete-actions .btn:hover,
body[data-view="quiz"].quiz-answering :is(.quiz-nav-prev,.quiz-nav-next,.multi-submit,.quiz-options .opt):hover{
  transform:translateY(-1px);
}
.immersive-nav button:active,
.quiz-complete-actions .btn:active,
body[data-view="quiz"].quiz-answering :is(.quiz-nav-prev,.quiz-nav-next,.multi-submit,.quiz-options .opt):active{
  transform:translateY(1px);
}
.immersive-nav button:focus-visible,
.quiz-complete-actions .btn:focus-visible,
body[data-view="quiz"].quiz-answering :is(.quiz-nav-prev,.quiz-nav-next,.multi-submit,.quiz-options .opt):focus-visible{
  outline:3px solid rgba(43,147,163,.35);
  outline-offset:3px;
}
body[data-view="quiz"].quiz-answering .quiz-options .opt{
  position:relative;
  min-height:58px;
  padding:16px 18px;
  border-width:1px;
  border-radius:12px;
}
body[data-view="quiz"].quiz-answering .quiz-options .opt .k{
  display:grid;
  place-items:center;
  flex:0 0 30px;
  width:30px;
  height:30px;
  border-radius:8px;
  font:800 12px/1 ui-monospace,monospace;
}
body[data-view="quiz"].quiz-answering .quiz-options .opt.selected{
  box-shadow:inset 4px 0 #167f88,0 8px 18px rgba(24,91,105,.08);
}
body[data-view="quiz"].quiz-answering .practice-nav{
  padding-top:18px;
  border-top:1px solid rgba(91,128,139,.2);
}
body[data-view="quiz"].quiz-answering .quiz-nav-prev{padding-inline:18px}
body[data-view="quiz"].quiz-answering .quiz-nav-next{padding-inline:22px;font-weight:800}
.quiz-complete-actions .btn-p{min-width:116px}
.quiz-complete-actions .btn-g{min-width:104px}

@media(max-width:620px){
  body[data-view="quiz"].quiz-answering .immersive-nav,
  body[data-view="guiderpg"] .immersive-nav,
  body[data-view="redmap"] .immersive-nav,
  body[data-view="classicwar"] .immersive-nav{top:8px;left:8px;right:8px}
  .immersive-brand span{display:none}
  .immersive-nav>div button{padding:0 9px;font-size:10px}
  .immersive-nav>div button:last-child{display:none}
  .quiz-complete-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}
  .quiz-complete-actions .btn-p{grid-column:1/-1}
  body[data-view="quiz"].quiz-answering .practice-nav{gap:8px}
  body[data-view="quiz"].quiz-answering .practice-nav .btn{padding-inline:12px}
}
