:root{--red:#e53935;--yellow:#ffca28;--green:#2eb85c;--blue:#1976d2;--blue2:#0d47a1;--gold:#ffca28;--cream:#fff8dc;--navy:#071d36;--white:#fffdf6}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;background:radial-gradient(circle at top,#1976d2 0,#0d47a1 38%,#08345f 100%);color:var(--navy);min-height:100vh}.hero{min-height:185px;display:flex;align-items:center;justify-content:center;padding:18px;position:relative;background:linear-gradient(135deg,var(--red),var(--yellow) 28%,var(--green) 58%,var(--blue));border-bottom:8px solid var(--gold);box-shadow:0 12px 30px rgba(0,0,0,.35)}.titleLogoWrap{text-align:center}.brandImg{max-height:170px;max-width:min(720px,86vw);object-fit:contain;filter:drop-shadow(0 10px 12px rgba(0,0,0,.45))}.version{margin:0;font-weight:900;color:var(--yellow)}h1{margin:0;font-size:clamp(2rem,8vw,4rem)}h2{margin-top:0}.adminLink{position:absolute;right:16px;top:16px;background:rgba(255,255,255,.18);color:white;padding:7px 9px;border-radius:999px;text-decoration:none;font-weight:900;border:1px solid rgba(255,255,255,.35);box-shadow:none;font-size:1rem;opacity:.55}main{max-width:1050px;margin:0 auto;padding:20px}.panel{background:linear-gradient(180deg,rgba(255,253,246,.98),rgba(255,244,168,.95));border:4px solid var(--gold);border-radius:26px;padding:20px;margin:18px 0;box-shadow:0 10px 0 rgba(0,0,0,.18),0 18px 35px rgba(0,0,0,.24)}.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;text-align:center}.stats div{background:linear-gradient(180deg,#dff7e8,#a9edc5);border:3px solid var(--green);border-radius:18px;padding:12px}.stats span{display:block;font-size:1.7rem;font-weight:1000}.stats small{font-weight:900}.tabs{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin:16px 0}.tab{background:var(--blue);color:white;border:3px solid #9bd0ff}.tab.active{background:var(--gold);color:var(--navy);border-color:#fff3a8}.tabPage{display:none}.tabPage.active{display:block}.featuredVerse{border-color:#6edc8d}.hint{font-weight:800;color:#24425f}label{font-weight:900}select,input,textarea{width:100%;padding:12px;border:2px solid #7dbdf2;border-radius:14px;font:inherit;margin:8px 0 12px;background:white}blockquote{font-size:1.35rem;line-height:1.5;background:#fff8c8;border-left:10px solid var(--gold);border-radius:16px;margin:12px 0;padding:16px}.pill{display:inline-block;background:#dff7e8;border:2px solid var(--green);padding:6px 10px;border-radius:999px;font-weight:900}.buttonRow{display:flex;flex-wrap:wrap;gap:10px}button{border:0;border-radius:18px;background:var(--gold);color:var(--navy);font-weight:1000;font-size:1rem;padding:12px 16px;box-shadow:0 5px 0 rgba(0,0,0,.22);cursor:pointer}button:hover{transform:translateY(-1px)}button.secondary{background:var(--blue);color:white}.greenBtn{background:var(--green);color:white}.blueBtn{background:var(--blue);color:white}.redBtn,button.danger{background:var(--red);color:white}.gameArea{margin-top:16px}.wordBank{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.chip{background:#dff2ff;color:var(--navy);border:2px solid #5db8ff;border-radius:999px;padding:8px 12px;cursor:pointer;font-weight:900}.blank{display:inline-block;min-width:80px;border-bottom:3px dashed var(--navy);text-align:center;margin:0 4px}.answerBox{min-height:48px;background:#f7fbff;border:2px dashed #5db8ff;border-radius:14px;padding:10px;margin:10px 0}.ok{color:#168044;font-weight:1000}.bad{color:#bd2222;font-weight:1000}.verseCards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.verseCard{background:white;border:3px solid var(--blue);border-radius:20px;padding:15px;box-shadow:0 6px 0 rgba(0,0,0,.12);cursor:pointer}.verseCard.active{border-color:var(--red);background:#fff3b6}.verseCard strong{color:var(--blue2);font-size:1.08rem}.verseCard p{margin-bottom:0}.adminGrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.adminLogoTools{display:flex;gap:10px;flex-wrap:wrap}footer{text-align:center;padding:30px;font-weight:800;color:white}@media(max-width:720px){.hero{min-height:145px}.brandImg{max-height:120px}.adminLink{right:10px;top:10px;padding:8px 10px}.stats,.adminGrid{grid-template-columns:1fr}blockquote{font-size:1.1rem}.verseCards{grid-template-columns:1fr}}
.inlineMissing,.gameArea input.missing{display:inline-block!important;width:min(8.5ch,90px)!important;min-width:52px!important;max-width:95px!important;padding:3px 6px!important;margin:0 3px!important;border:2px solid #5db8ff!important;border-radius:8px!important;text-align:center!important;font-weight:900!important;font-size:.95em!important;background:#e9f7ff!important;vertical-align:baseline!important;color:#d32f2f!important}.gameArea blockquote{overflow-wrap:anywhere}.gameArea blockquote .inlineMissing{line-height:1.1}.selectedVerseNote{background:#eaf7ff;border:2px solid #7dbdf2;border-radius:14px;padding:10px;margin:0 0 12px}

/* v1.24 updates */
#verseList .verseCard p{color:#000000!important;}
#answerBox{display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px;align-content:flex-start;overflow-wrap:normal;}
#answerBox .chip{display:inline-flex;flex:0 0 auto;margin:0;white-space:nowrap;}

/* v1.24 updates */
.discreetAdmin:hover{opacity:1;background:rgba(255,255,255,.28);}
.securityGate{max-width:460px;margin:30px auto;}
.securityGate input{font-size:1.4rem;text-align:center;letter-spacing:.2em;}
.collectionTools{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end;}
.collectionList{display:grid;gap:10px;margin-top:12px;}
.collectionItem{background:#fff;border:3px solid var(--blue);border-radius:18px;padding:12px;}
.collectionItem strong{color:var(--blue2);}
.primaryYellow{background:var(--yellow);color:var(--navy);}

/* v1.24 updates */
.protectedCollection{border-color:var(--yellow);background:#fff8c8;}
.protectedCollection strong{color:#9a5a00;}
.restoreBox{margin-top:1rem;padding:1rem;border:2px dashed rgba(25,118,210,.35);border-radius:18px;background:rgba(255,255,255,.65)}
.restoreBox h3{margin-top:0}


/* v1.24 certificate updates */
.certificatePanel label{display:block;margin-top:8px}.certificatePreview{margin-top:16px}.certificateSheet{background:linear-gradient(135deg,#fffdf6,#fff4b2);border:10px solid var(--yellow);border-radius:28px;min-height:560px;padding:34px;text-align:center;box-shadow:0 12px 35px rgba(0,0,0,.22), inset 0 0 0 8px var(--blue);position:relative;overflow:hidden}.certificateSheet:before,.certificateSheet:after{content:"";position:absolute;width:150px;height:150px;border-radius:50%;opacity:.18}.certificateSheet:before{background:var(--red);left:-50px;top:-50px}.certificateSheet:after{background:var(--green);right:-50px;bottom:-50px}.certificateLogo{max-height:125px;max-width:70%;object-fit:contain;margin-bottom:10px}.certificateSheet h1{text-transform:uppercase;letter-spacing:.06em;color:var(--blue2);font-size:clamp(1.8rem,4vw,3rem);margin:8px 0 18px}.certLine{font-size:1.15rem;font-weight:800;margin:12px 0;color:var(--navy)}.certName{font-size:clamp(2rem,6vw,4rem);font-weight:1000;color:var(--red);font-family:Georgia,serif;margin:10px 0}.certCollection{font-size:clamp(1.4rem,4vw,2.5rem);font-weight:1000;color:var(--green);margin:10px 0}.certDate{font-size:1.45rem;font-weight:1000;color:var(--blue2);margin:8px 0}.certCongrats{font-size:1.3rem;font-weight:1000;color:#9a5a00;margin-top:20px}
@media print{body{background:white!important}.hero,.tabs,.panel:not(.certificatePanel),footer,#certificateName,#printCertificate,.certificatePanel>h2,.certificatePanel>.hint,.certificatePanel>label{display:none!important}main{max-width:none;margin:0;padding:0}.tabPage{display:block!important}.certificatePanel{display:block!important;border:0!important;box-shadow:none!important;margin:0!important;padding:0!important;background:white!important}.certificatePreview{margin:0!important}.certificateSheet{width:100vw;height:100vh;min-height:0;border-radius:0;box-shadow:none;page-break-inside:avoid;display:flex;flex-direction:column;justify-content:center}@page{size:A4 landscape;margin:0}}

.certAppTitle{font-weight:1000;letter-spacing:.12em;color:var(--blue2);font-size:1.2rem;margin-bottom:4px}.certificateLocked{background:#fffdf6;border:5px solid var(--blue);border-radius:22px;padding:28px;text-align:center;color:var(--navy);box-shadow:0 8px 22px rgba(0,0,0,.16)}.certificateLocked h3{color:var(--red);margin-top:0}.certificateLocked strong{display:inline-block;margin-top:10px;background:var(--yellow);padding:10px 16px;border-radius:999px}button:disabled,input:disabled{opacity:.55;cursor:not-allowed}


/* v1.24 certificate print fixes */
.certificateSheet{
  width:min(100%,1120px);
  min-height:680px;
  margin:0 auto;
  padding:42px 56px;
  border:14px solid var(--yellow);
  border-radius:30px;
  box-shadow:0 12px 35px rgba(0,0,0,.22), inset 0 0 0 9px var(--blue), inset 0 0 0 18px var(--green);
  background:#fffdf6;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
}
.certificateSheet:before,.certificateSheet:after{display:none!important;}
.certificateLogoBox{width:100%;display:flex;align-items:center;justify-content:center;text-align:center;margin:0 auto 8px;position:relative;z-index:2;}
.certificateLogo{display:block;margin:0 auto;max-height:165px;max-width:420px;width:auto;height:auto;object-fit:contain;}
.certCircle{position:absolute;border-radius:50%;z-index:0;pointer-events:none;background:transparent!important;}
.certCircleTopLeft{width:190px;height:190px;left:28px;top:28px;border:16px solid var(--red);opacity:.28;}
.certCircleTopRight{width:140px;height:140px;right:44px;top:48px;border:14px solid var(--blue);opacity:.26;}
.certCircleBottomLeft{width:145px;height:145px;left:52px;bottom:46px;border:14px solid var(--green);opacity:.28;}
.certCircleBottomRight{width:190px;height:190px;right:28px;bottom:28px;border:16px solid var(--yellow);opacity:.55;}
.certificateSheet h1,.certLine,.certName,.certCollection,.certDate,.certCongrats{position:relative;z-index:2;}

@media print{
  html,body{width:297mm!important;height:210mm!important;margin:0!important;padding:0!important;overflow:hidden!important;background:white!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;}
  .hero,.tabs,.stats,.panel:not(.certificatePanel),footer,#certificateName,#printCertificate,.certificatePanel>h2,.certificatePanel>.hint,.certificatePanel>label{display:none!important;}
  main{width:297mm!important;height:210mm!important;max-width:none!important;margin:0!important;padding:0!important;display:block!important;}
  .tabPage{display:none!important;}
  #certificateTab{display:block!important;width:297mm!important;height:210mm!important;margin:0!important;padding:0!important;}
  .certificatePanel{display:block!important;width:297mm!important;height:210mm!important;border:0!important;box-shadow:none!important;margin:0!important;padding:0!important;background:white!important;}
  .certificatePreview{width:297mm!important;height:210mm!important;margin:0!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important;background:white!important;}
  .certificateSheet{box-sizing:border-box!important;width:282mm!important;height:195mm!important;min-height:0!important;margin:0!important;padding:12mm 18mm!important;border:5mm solid #ffca28!important;border-radius:0!important;box-shadow:inset 0 0 0 2.8mm #1976d2, inset 0 0 0 5.5mm #2eb85c!important;background:#fffdf6!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;page-break-inside:avoid!important;break-inside:avoid!important;overflow:hidden!important;}
  .certificateLogoBox{display:flex!important;justify-content:center!important;align-items:center!important;width:100%!important;margin:0 0 4mm 0!important;}
  .certificateLogo{display:block!important;margin:0 auto!important;max-height:32mm!important;max-width:92mm!important;object-fit:contain!important;}
  .certificateSheet h1{font-size:22pt!important;margin:2mm 0 5mm 0!important;line-height:1.1!important;}
  .certLine{font-size:10.5pt!important;margin:2.4mm 0!important;line-height:1.2!important;}
  .certName{font-size:28pt!important;margin:2mm 0!important;line-height:1.1!important;}
  .certCollection{font-size:20pt!important;margin:2mm 0!important;line-height:1.1!important;}
  .certDate{font-size:14pt!important;margin:2mm 0!important;line-height:1.1!important;}
  .certCongrats{font-size:12pt!important;margin-top:5mm!important;line-height:1.2!important;}
  .certCircle{display:block!important;background:transparent!important;}
  .certCircleTopLeft{width:46mm!important;height:46mm!important;left:11mm!important;top:11mm!important;border:4mm solid #e53935!important;opacity:.28!important;}
  .certCircleTopRight{width:34mm!important;height:34mm!important;right:14mm!important;top:15mm!important;border:3.5mm solid #1976d2!important;opacity:.26!important;}
  .certCircleBottomLeft{width:34mm!important;height:34mm!important;left:15mm!important;bottom:14mm!important;border:3.5mm solid #2eb85c!important;opacity:.28!important;}
  .certCircleBottomRight{width:46mm!important;height:46mm!important;right:11mm!important;bottom:11mm!important;border:4mm solid #ffca28!important;opacity:.55!important;}
  @page{size:A4 landscape;margin:0;}
}

/* v1.24 GitHub admin integration */
.githubGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:10px 0}.githubGrid input{width:100%}#githubMessage.ok{color:#0b7d2b;font-weight:900}#githubMessage.bad{color:#c62828;font-weight:900}

.hiddenFile{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}.adminLogoTools{align-items:center}

.brandingPreviewBox{background:#fff;border:3px dashed var(--blue);border-radius:20px;padding:14px;margin:12px 0;text-align:center}
.brandingLogoPreview{display:flex;align-items:center;justify-content:center;min-height:130px;background:linear-gradient(135deg,rgba(229,57,53,.12),rgba(255,202,40,.18),rgba(46,184,92,.12),rgba(25,118,210,.12));border-radius:16px;padding:12px}
.brandingLogoPreview .brandImg{max-height:150px;max-width:100%;}
