:root{--color-primary:#8b1e1e;--color-primary-dark:#6d1414;--color-primary-light:#b22222;--color-primary-subtle:#fdf2f2;--color-gold:#b8860b;--color-gold-dark:#8c6507;--color-gold-light:#d4af37;--color-gold-subtle:#fffdf0;--color-navy:#152238;--color-navy-dark:#0d1624;--color-navy-light:#203354;--color-bg-page:#f7f8fa;--color-bg-card:#fff;--color-bg-muted:#f1f4f9;--color-text-main:#1e293b;--color-text-muted:#64748b;--color-text-light:#94a3b8;--color-text-inverse:#fff;--color-border:#e2e8f0;--color-border-hover:#cbd5e1;--color-success:#15803d;--color-success-bg:#f0fdf4;--color-success-border:#bbf7d0;--color-error:#b91c1c;--color-error-bg:#fef2f2;--color-error-border:#fecaca;--font-serif:"Cinzel", "Georgia", "Cambria", "Times New Roman", serif;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-full:9999px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #00000014, 0 2px 4px -1px #0000000a;--shadow-lg:0 10px 15px -3px #00000014, 0 4px 6px -2px #0000000a}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{max-width:100vw;overflow-x:hidden}body{font-family:var(--font-sans);background-color:var(--color-bg-page);color:var(--color-text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;line-height:1.6}:focus-visible{outline:3px solid var(--color-gold);outline-offset:2px}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}.container{width:100%;max-width:1024px;margin:0 auto;padding:0 1.25rem}.app-shell{flex-direction:column;min-height:100vh;display:flex}.main-content{flex:1;padding:2.5rem 0 4rem}.site-header{background-color:var(--color-navy);color:var(--color-text-inverse);border-bottom:2px solid var(--color-gold);padding:1rem 0}.header-inner{justify-content:space-between;align-items:center;display:flex}.brand-link{font-family:var(--font-serif);letter-spacing:.05em;color:var(--color-text-inverse);align-items:center;gap:.75rem;font-size:1.35rem;font-weight:700;display:flex}.brand-emblem{border-radius:var(--radius-sm);background:linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));width:38px;height:38px;color:var(--color-gold-light);border:1px solid var(--color-gold);justify-content:center;align-items:center;font-size:1.15rem;display:inline-flex}.brand-tagline{color:var(--color-gold-light);letter-spacing:.05em;text-transform:uppercase;font-size:.825rem}.hero{text-align:center;border-radius:var(--radius-lg);border:1px solid var(--color-border);background:linear-gradient(#15223808 0%,#f7f8fa00 100%);margin-bottom:3rem;padding:3rem 1rem 3.5rem}.hero-badge{background-color:var(--color-gold-subtle);color:var(--color-gold);border:1px solid var(--color-gold-light);border-radius:var(--radius-full);align-items:center;gap:.4rem;margin-bottom:1.25rem;padding:.35rem .85rem;font-size:.8rem;font-weight:600;display:inline-flex}.hero-title{font-family:var(--font-serif);color:var(--color-navy);margin-bottom:1rem;font-size:clamp(2rem,5vw,2.75rem);font-weight:700;line-height:1.2}.hero-title span{color:var(--color-primary)}.hero-description{color:var(--color-text-muted);max-width:650px;margin:0 auto;font-size:1.125rem}.section-header{margin-bottom:1.75rem}.section-title{font-family:var(--font-serif);color:var(--color-navy);font-size:1.6rem;font-weight:600}.section-subtitle{color:var(--color-text-muted);font-size:.95rem}.games-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;display:grid}.game-card{background:var(--color-bg-card);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);flex-direction:column;padding:1.75rem;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex}.game-card.available:hover{box-shadow:var(--shadow-lg);border-color:var(--color-gold-light);transform:translateY(-3px)}.game-card.disabled{opacity:.75;background-color:#fafafc}.game-card-header{justify-content:space-between;align-items:flex-start;margin-bottom:1rem;display:flex}.game-category{text-transform:uppercase;letter-spacing:.05em;color:var(--color-primary);font-size:.75rem;font-weight:700}.badge-status{border-radius:var(--radius-full);padding:.2rem .6rem;font-size:.75rem;font-weight:600}.badge-status.active{background-color:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-success-border)}.badge-status.coming{background-color:var(--color-bg-muted);color:var(--color-text-muted);border:1px solid var(--color-border)}.game-title{font-family:var(--font-serif);color:var(--color-navy);margin-bottom:.65rem;font-size:1.35rem;line-height:1.3}.game-description{color:var(--color-text-muted);flex:1;margin-bottom:1.5rem;font-size:.925rem}.game-card-footer{margin-top:auto}.btn{border-radius:var(--radius-md);justify-content:center;align-items:center;gap:.5rem;width:100%;min-height:48px;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .2s;display:inline-flex}.btn-primary{background-color:var(--color-primary);color:var(--color-text-inverse);box-shadow:var(--shadow-sm)}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-dark);box-shadow:var(--shadow-md)}.btn-secondary{background-color:var(--color-bg-card);color:var(--color-navy);border:1px solid var(--color-border)}.btn-secondary:hover:not(:disabled){background-color:var(--color-bg-muted);border-color:var(--color-border-hover)}.btn:disabled{opacity:.6;cursor:not-allowed}.quiz-container{max-width:760px;margin:0 auto}.quiz-card{background:var(--color-bg-card);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-md);padding:2.25rem}@media (width<=640px){.quiz-card{padding:1.5rem}}.quiz-header-bar{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;margin-bottom:1.25rem;padding-bottom:1rem;display:flex}.quiz-progress-text{color:var(--color-primary);text-transform:uppercase;letter-spacing:.05em;font-size:.9rem;font-weight:600}.quiz-quit-btn{color:var(--color-text-muted);border-radius:var(--radius-sm);padding:.25rem .5rem;font-size:.85rem}.quiz-quit-btn:hover{color:var(--color-error)}.progress-bar-container{background-color:var(--color-bg-muted);border-radius:var(--radius-full);width:100%;height:8px;margin-bottom:2rem;overflow:hidden}.progress-bar-fill{background:linear-gradient(90deg, var(--color-gold), var(--color-primary));height:100%;transition:width .3s}.question-text{font-family:var(--font-serif);color:var(--color-navy);margin-bottom:2rem;font-size:clamp(1.2rem,3vw,1.45rem);font-weight:600;line-height:1.4}.options-list{flex-direction:column;gap:.875rem;margin-bottom:2.25rem;display:flex}.option-button{background-color:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-md);text-align:left;align-items:center;gap:1rem;width:100%;min-height:56px;padding:1.15rem 1.25rem;transition:all .15s;display:flex}.option-button:hover:not(:disabled){border-color:var(--color-gold);background-color:var(--color-gold-subtle)}.option-button.selected{border-color:var(--color-primary);background-color:var(--color-primary-subtle);box-shadow:0 0 0 1px var(--color-primary)}.option-letter{background-color:var(--color-bg-muted);width:32px;height:32px;color:var(--color-navy);border:1px solid var(--color-border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:flex}.option-button.selected .option-letter{background-color:var(--color-primary);color:var(--color-text-inverse);border-color:var(--color-primary)}.option-text{color:var(--color-text-main);flex:1;font-size:1rem;font-weight:500}.quiz-controls{justify-content:flex-end;gap:1rem;display:flex}.result-container{max-width:820px;margin:0 auto}.result-hero{background:var(--color-bg-card);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-md);text-align:center;margin-bottom:2.5rem;padding:2.75rem 2rem}.result-badge{font-family:var(--font-serif);color:var(--color-primary);margin-bottom:.5rem;font-size:1.1rem;font-weight:600}.result-score-number{font-size:clamp(3.25rem,8vw,4.5rem);font-family:var(--font-serif);color:var(--color-navy);margin:.75rem 0;font-weight:700;line-height:1}.result-score-number span{color:var(--color-gold);font-size:2rem}.result-message{color:var(--color-text-main);max-width:580px;margin:0 auto 1.5rem;font-size:1.15rem;line-height:1.5}.result-stats-row{border-top:1px solid var(--color-border);justify-content:center;gap:2rem;padding-top:1.5rem;display:flex}.stat-item{text-align:center}.stat-value{color:var(--color-navy);font-size:1.5rem;font-weight:700}.stat-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.8rem}.result-actions{flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:2rem;display:flex}.result-actions .btn{width:auto;min-width:190px}.reviews-section{margin-top:3rem}.reviews-title{font-family:var(--font-serif);color:var(--color-navy);margin-bottom:1.5rem;font-size:1.45rem}.review-card{background:var(--color-bg-card);border-radius:var(--radius-md);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);margin-bottom:1.25rem;padding:1.5rem}.review-card.correct{border-left:4px solid var(--color-success)}.review-card.incorrect{border-left:4px solid var(--color-error)}.review-card-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.review-question-num{text-transform:uppercase;color:var(--color-text-muted);font-size:.8rem;font-weight:700}.review-status-pill{border-radius:var(--radius-full);padding:.25rem .65rem;font-size:.75rem;font-weight:700}.review-status-pill.correct{background-color:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-success-border)}.review-status-pill.incorrect{background-color:var(--color-error-bg);color:var(--color-error);border:1px solid var(--color-error-border)}.review-question-text{color:var(--color-navy);margin-bottom:1rem;font-size:1.05rem;font-weight:600}.review-answers-box{background-color:var(--color-bg-page);border-radius:var(--radius-sm);margin-bottom:1rem;padding:1rem;font-size:.925rem}.review-answer-line{margin-bottom:.4rem}.review-answer-line:last-child{margin-bottom:0}.review-explanation{color:var(--color-text-muted);margin-bottom:.75rem;font-size:.925rem;line-height:1.5}.review-reference{color:var(--color-primary);align-items:center;gap:.35rem;font-size:.8rem;font-weight:600;display:inline-flex}.site-footer{background-color:var(--color-navy-dark);color:var(--color-text-light);border-top:1px solid var(--color-navy-light);margin-top:auto;padding:2.5rem 0;font-size:.875rem}.footer-inner{text-align:center;flex-direction:column;align-items:center;gap:.75rem;display:flex}.footer-motto{font-family:var(--font-serif);color:var(--color-gold-light);font-size:.95rem;font-style:italic}.state-box{background:var(--color-bg-card);border-radius:var(--radius-lg);border:1px solid var(--color-border);text-align:center;max-width:500px;margin:3rem auto;padding:3rem 2rem}.spinner{border:4px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;width:44px;height:44px;margin:0 auto 1.5rem;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.error-title{font-family:var(--font-serif);color:var(--color-error);margin-bottom:.75rem;font-size:1.35rem}.error-text{color:var(--color-text-muted);margin-bottom:1.5rem}.hero-quick-play{background:linear-gradient(135deg, var(--color-navy) 0%, #1c2b42 100%);color:var(--color-text-inverse);border-radius:var(--radius-lg);border:1px solid var(--color-gold);box-shadow:var(--shadow-md);text-align:center;flex-direction:column;justify-content:space-between;align-items:center;gap:1rem;margin-top:2rem;padding:1.5rem 1.75rem;display:flex}@media (width>=640px){.hero-quick-play{text-align:left;flex-direction:row}}.hero-quick-play-info h2{font-family:var(--font-serif);color:var(--color-gold-light);justify-content:center;align-items:center;gap:.5rem;margin-bottom:.25rem;font-size:1.25rem;display:flex}@media (width>=640px){.hero-quick-play-info h2{justify-content:flex-start}}.hero-quick-play-info p{color:#d1d9e6;max-width:500px;margin:0;font-size:.925rem}.hero-quick-play-btn{color:#fff;border-radius:var(--radius-md);border:1px solid var(--color-gold-light);white-space:nowrap;cursor:pointer;background:linear-gradient(135deg,#b22222 0%,#8b1e1e 100%);justify-content:center;align-items:center;padding:.85rem 1.75rem;font-size:.95rem;font-weight:700;transition:all .2s;display:inline-flex;box-shadow:0 4px 14px #00000059}.hero-quick-play-btn:hover:not(:disabled){background:linear-gradient(135deg,#c52b2b 0%,#9e1f1f 100%);border-color:#fff0a3;transform:translateY(-2px);box-shadow:0 6px 18px #b2222273}.group-filter-bar{scrollbar-width:thin;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding-bottom:.5rem;display:flex;overflow-x:auto}.group-filter-chip{background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-muted);white-space:nowrap;cursor:pointer;align-items:center;gap:.4rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .15s;display:inline-flex}.group-filter-chip:hover{background-color:var(--color-bg-alt);color:var(--color-navy);border-color:var(--color-border-hover)}.group-filter-chip.active{background-color:var(--color-navy);color:var(--color-text-inverse);border-color:var(--color-gold);box-shadow:var(--shadow-sm)}.badge-difficulty{border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.04em;padding:.2rem .55rem;font-size:.75rem;font-weight:600;display:inline-block}.badge-difficulty.iniciante{color:#15803d;background-color:#22c55e1f;border:1px solid #22c55e4d}.badge-difficulty.intermediario{color:#a16207;background-color:#eab3081f;border:1px solid #eab3084d}.badge-difficulty.avancado{color:#854d0e;background-color:#c59b2726;border:1px solid #c59b2766}.header-actions{flex-shrink:0;align-items:center;gap:1.25rem;display:flex}.donation-text-short{display:none}.btn-donation-header{color:var(--color-gold-light);border:1px solid var(--color-gold);border-radius:var(--radius-full);white-space:nowrap;background:linear-gradient(135deg,#d4af3726,#b8860b40);flex-shrink:0;align-items:center;gap:.45rem;padding:.35rem .85rem;font-size:.85rem;font-weight:600;transition:all .2s;display:inline-flex;box-shadow:0 1px 3px #0003}.btn-donation-header:hover{background:linear-gradient(135deg, var(--color-gold), var(--color-gold-dark));color:#fff;border-color:var(--color-gold-light);transform:translateY(-1px);box-shadow:0 3px 8px #b8860b66}.donation-heart-icon{color:#ef4444;font-size:.95rem;transition:transform .2s}.btn-donation-header:hover .donation-heart-icon{transform:scale(1.2)}@media (width<=768px){.brand-tagline{display:none}}@media (width<=480px){.brand-link{gap:.5rem;font-size:1.15rem}.brand-emblem{width:32px;height:32px;font-size:1rem}.btn-donation-header{padding:.3rem .65rem;font-size:.8rem}.donation-text-full{display:none}.donation-text-short{display:inline}}.result-donation-card{border:2px solid var(--color-gold-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);box-sizing:border-box;background:linear-gradient(135deg,#fffdf8,#fbf8ee);justify-content:space-between;align-items:center;gap:1.5rem;max-width:100%;margin-top:1.75rem;margin-bottom:2rem;padding:1.5rem 1.75rem;display:flex}.result-donation-content{flex:1;align-items:flex-start;gap:1rem;min-width:0;display:flex}.result-donation-icon{color:#dc2626;background:#ef44441a;border:1px solid #ef444440;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.35rem;display:inline-flex}.result-donation-title{font-family:var(--font-serif);color:var(--color-navy);margin-bottom:.35rem;font-size:1.15rem;font-weight:700}.result-donation-text{color:var(--color-text-muted);margin:0;font-size:.925rem;line-height:1.5}.btn-donation-cta{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));color:#fff;border:1px solid var(--color-gold);border-radius:var(--radius-md);letter-spacing:.02em;width:auto;min-width:fit-content;box-shadow:var(--shadow-sm);white-space:nowrap;flex-shrink:0;padding:.75rem 1.5rem;font-size:.95rem;font-weight:700;transition:all .2s}.btn-donation-cta:hover{background:linear-gradient(135deg, var(--color-primary-light), var(--color-primary));transform:translateY(-2px);box-shadow:0 4px 12px #8b1e1e4d}@media (width<=720px){.result-donation-card{text-align:left;flex-direction:column;align-items:stretch;gap:1.25rem;padding:1.25rem}.btn-donation-cta{text-align:center;white-space:normal;justify-content:center;width:100%}}.footer-support-row{margin-top:.75rem}.footer-support-link{color:var(--color-gold-light);border-bottom:1px dashed var(--color-gold);padding-bottom:2px;font-size:.85rem;font-weight:600;transition:all .2s}.footer-support-link:hover{color:#fff;border-bottom-color:#fff}.donation-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background-color:#0d1624bf;justify-content:center;align-items:center;padding:1rem;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.donation-modal{border-radius:var(--radius-lg);border:2px solid var(--color-gold-light);background:#fff;width:100%;max-width:580px;max-height:90vh;padding:2rem 2.25rem;animation:.25s ease-out modalSlideUp;position:relative;overflow-y:auto;box-shadow:0 20px 25px -5px #00000040,0 10px 10px -5px #00000026}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.donation-close-btn{width:34px;height:34px;color:var(--color-text-muted);background:var(--color-bg-muted);border-radius:50%;justify-content:center;align-items:center;font-size:1.1rem;transition:all .2s;display:flex;position:absolute;top:1rem;right:1.25rem}.donation-close-btn:hover{background:var(--color-border);color:var(--color-text-main)}.donation-header{text-align:center;margin-bottom:1.5rem}.donation-badge{text-transform:uppercase;letter-spacing:.08em;color:var(--color-gold-dark);border-radius:var(--radius-full);background-color:#b8860b1f;border:1px solid #b8860b4d;margin-bottom:.65rem;padding:.25rem .75rem;font-size:.75rem;font-weight:700;display:inline-block}.donation-title{font-family:var(--font-serif);color:var(--color-navy);margin-bottom:.5rem;font-size:1.65rem;font-weight:700}.donation-subtitle{color:var(--color-text-muted);max-width:460px;margin:0 auto;font-size:.95rem;line-height:1.5}.donation-impact-grid{background-color:var(--color-bg-page);border-radius:var(--radius-md);border:1px solid var(--color-border);grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:1.5rem;padding:.85rem;display:grid}.donation-impact-item{text-align:center;flex-direction:column;align-items:center;gap:.25rem;display:flex}.impact-icon{color:var(--color-primary);font-size:1.25rem}.donation-impact-item strong{color:var(--color-navy);font-size:.8rem}.donation-impact-item p{color:var(--color-text-muted);margin:0;font-size:.7rem;line-height:1.3}@media (width<=520px){.donation-impact-grid{text-align:left;grid-template-columns:1fr}.donation-impact-item{text-align:left;flex-direction:row;gap:.75rem}}.donation-pix-box{border:1.5px solid var(--color-gold-light);border-radius:var(--radius-md);background:linear-gradient(135deg,#faf8f2,#f5f1e6);align-items:center;gap:1.25rem;margin-bottom:1.5rem;padding:1.25rem;display:flex;box-shadow:inset 0 1px 3px #0000000a}.donation-qrcode-wrapper{flex-direction:column;flex-shrink:0;align-items:center;gap:.4rem;display:flex}.donation-qrcode-img{border-radius:var(--radius-sm);border:1px solid var(--color-border);width:140px;height:140px;box-shadow:var(--shadow-sm);background:#fff;padding:.35rem}.qrcode-hint{color:var(--color-text-muted);text-align:center;max-width:130px;font-size:.7rem;line-height:1.2}.donation-details{flex-direction:column;flex:1;gap:.5rem;display:flex}.donation-meta-row{flex-direction:column;gap:.15rem;display:flex}.meta-label{text-transform:uppercase;letter-spacing:.05em;color:var(--color-navy);font-size:.75rem;font-weight:700}.meta-value{color:var(--color-text-main);font-size:.875rem}.font-mono{word-break:break-all;background-color:#0000000a;border-radius:4px;padding:.2rem .4rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.8rem}.donation-actions-group{flex-direction:column;gap:.5rem;margin-top:.35rem;display:flex}.btn-copy-pix{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));color:#fff;border:1px solid var(--color-gold);border-radius:var(--radius-md);text-align:center;padding:.65rem 1rem;font-size:.875rem;font-weight:700;transition:all .2s}.btn-copy-pix:hover{background:linear-gradient(135deg, var(--color-primary-light), var(--color-primary));transform:translateY(-1px)}.btn-copy-pix.copied{background:var(--color-success);border-color:var(--color-success)}.btn-copy-key{color:var(--color-navy);border:1px solid var(--color-border);border-radius:var(--radius-md);text-align:center;background:#fff;padding:.45rem .85rem;font-size:.8rem;font-weight:600;transition:all .2s}.btn-copy-key:hover{background:var(--color-bg-muted);border-color:var(--color-border-hover)}.btn-copy-key.copied{background:var(--color-success-bg);color:var(--color-success);border-color:var(--color-success-border)}.donation-copy-feedback{color:var(--color-success);margin-top:.25rem;font-size:.8rem;font-weight:600;animation:.2s ease-out fadeIn}@media (width<=540px){.donation-pix-box{text-align:center;flex-direction:column;padding:1rem}.donation-qrcode-wrapper{margin-bottom:.5rem}.donation-details{width:100%}}.donation-steps{background-color:var(--color-bg-page);border-radius:var(--radius-md);border:1px solid var(--color-border);margin-bottom:1.25rem;padding:.85rem 1.15rem}.donation-steps h4{color:var(--color-navy);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.5rem;font-size:.825rem}.donation-steps ol{color:var(--color-text-muted);margin:0;padding-left:1.25rem;font-size:.825rem;line-height:1.6}.donation-footer{text-align:center;border-top:1px solid var(--color-border);flex-direction:column;align-items:center;gap:.85rem;padding-top:1rem;display:flex}.donation-gratitude{color:var(--color-text-muted);max-width:440px;margin:0;font-size:.825rem}
