.ge-tabs-container {padding-top:30px}
.ge-tabs {display:flex; flex-wrap:wrap; gap:10px; padding:8px; border:1px solid #e6dbe4; background:#fff; border-radius:18px; margin-bottom:22px; width:max-content; max-width:100%}
.ge-tab {border-radius:12px; padding:14px 20px; font-weight:800; color:#785a6e; text-decoration:none; transition:background .2s; font-size:.91rem}
.ge-tab:hover {background:#fdf0f9}
.ge-tab--active {background:#a61d7d; color:#fff!important; box-shadow:0 4px 12px #a61d7d25}
.ge-tab span {display:inline-block; margin-left:5px; font-size:.67rem; vertical-align:middle; background:#f4c453; color:#413000; padding:4px 7px; border-radius:5px}
.ge-app {padding-bottom:65px}
.ge-hero {display:flex; align-items:center; justify-content:space-between; gap:24px; background:linear-gradient(125deg,#fff,#fff0f8); border:1px solid #f0d8e9; border-radius:26px; padding:34px 38px; margin-bottom:18px}
.ge-hero h1 {font-size:clamp(2rem,4vw,3.1rem); line-height:1.14; margin:12px 0}
.ge-hero h1 span {color:#a61d7d}
.ge-hero p {max-width:650px; line-height:1.7; color:#6c5b66}
.ge-tags {display:flex; flex-wrap:wrap; gap:10px; margin-top:19px}
.ge-tags span {background:#fff; border:1px solid #edd4e5; padding:8px 11px; border-radius:40px; font-size:.81rem; font-weight:700; color:#a61d7d}
.ge-hero-stat {flex:none; min-width:145px; text-align:center; background:#a61d7d; color:white; padding:22px; border-radius:22px}
.ge-hero-stat strong {display:block; font-size:3.2rem; line-height:1.15}
.ge-hero-stat span {display:block; font-size:.76rem; margin-top:6px}
.ge-card {background:#fff; border:1px solid #f0deea; box-shadow:0 12px 36px rgba(114,32,85,.055); border-radius:24px; padding:27px 30px; margin-top:18px}
.ge-heading {display:flex; align-items:start; justify-content:space-between; gap:16px; margin-bottom:18px}
.ge-heading h2 {margin:6px 0; font-size:1.5rem}
.ge-heading p {color:#746574; font-size:.91rem; line-height:1.65}
.ge-step {font-size:.75rem; color:#a61d7d; font-weight:800; letter-spacing:.08em}
.ge-method-grid {display:grid; grid-template-columns:1fr 1fr; gap:14px}
.ge-choice {position:relative; cursor:pointer}
.ge-choice input {position:absolute; inset:0; opacity:0; cursor:pointer; width:100%; height:100%; z-index:1}
.ge-choice-content {display:flex; flex-direction:column; gap:10px; height:100%; padding:20px; border:2px solid #e9dce5; border-radius:17px; transition:background .15s, border .15s}
.ge-choice-content strong {font-size:1.06rem}
.ge-choice-content small {font-size:.86rem; line-height:1.6; color:#746574}
.ge-choice-meta {font-size:.79rem; color:#a61d7d; font-weight:800; margin-top:auto}
.ge-choice input:checked + .ge-choice-content {background:#fff3fb; border-color:#a61d7d}
.ge-choice input:focus-visible + .ge-choice-content {outline:3px solid #f2afdd; outline-offset:3px}
.ge-note, .ge-footnote {padding:13px 15px; font-size:.85rem; color:#664b61; background:#fff5fb; border-radius:12px; line-height:1.65; margin-top:16px}
.ge-data-status {font-size:.79rem; color:#81476c; border:1px solid #ecd8e7; border-radius:8px; padding:9px 11px; background:#fff6fb}
.ge-switch-row {display:flex; flex-wrap:wrap; gap:10px; margin:12px 0 20px}
.ge-switch-row label {display:flex; align-items:center; gap:9px; padding:11px 13px; border:1px solid #ebd8e3; border-radius:12px; cursor:pointer; font-weight:700; font-size:.88rem}
.ge-switch-row input {accent-color:#a61d7d}
.ge-flag {height:15px; width:15px; border-radius:5px; display:inline-block}
.ge-flag--fixa {background:#a61d7d}
.ge-flag--variavel {background:#ffcc5a}
.ge-volante {display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; max-width:510px; margin:auto}
.ge-ball {cursor:pointer; min-width:0; aspect-ratio:1.35; border:2px solid #efdbe9; background:#fff8fc; color:#7f386a; font-weight:900; border-radius:13px; font-size:1.15rem; transition:transform .13s,border .13s; font-family:inherit}
.ge-ball:hover {transform:translateY(-2px); border-color:#b63894}
.ge-ball--fixa {background:#a61d7d; color:white; border-color:#a61d7d}
.ge-ball--variavel {background:#ffcc5a; color:#4b3300; border-color:#e7ad28}
.ge-ball:focus-visible {outline:3px solid #d753ab; outline-offset:2px}
.ge-counts {display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:18px; margin:16px 0; font-size:.88rem}
.ge-counts strong {color:#8c2b68}
.ge-counts span {color:#8b7486}
.ge-actions {display:flex; gap:10px; flex-wrap:wrap; margin-top:17px}
.ge-button {padding:13px 18px; font:800 .87rem Montserrat,Arial,sans-serif; border:1px solid #c6acc0; border-radius:12px; cursor:pointer; transition:filter .15s,transform .15s}
.ge-button:not([disabled]):hover {filter:brightness(.96); transform:translateY(-1px)}
.ge-button--primary {background:#a61d7d; color:white; border-color:#a61d7d}
.ge-button--muted {background:#fff1fa; color:#822268; border-color:#e9cbe1}
.ge-button--ghost {background:#fff; color:#7d6174}
.ge-button[disabled] {opacity:.5; cursor:not-allowed}
.ge-options {display:grid;grid-template-columns:minmax(200px,2fr) minmax(180px,1fr);gap:15px}
.ge-options label {display:grid; gap:8px; font-size:.84rem; font-weight:700; color:#563950}
.ge-options select,.ge-options input {width:100%; min-height:48px; border:1px solid #e6cadd; border-radius:11px; font:inherit; padding:0 12px; background:#fff}
.ge-message {margin:12px 0; padding:14px 17px; border-radius:12px; color:#14634f; background:#edfff5; border:1px solid #c5ebd3; font-weight:600; line-height:1.5}
.ge-message--error {color:#951e39; background:#fff1f3; border-color:#f2b9c8}
.ge-kpis {display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:11px; margin:20px 0}
.ge-kpis > div {background:#fff4fa; border:1px solid #f3deec; border-radius:13px; padding:14px}
.ge-kpis small {display:block; font-size:.74rem; color:#89677c; margin-bottom:9px}
.ge-kpis strong {color:#80255f; font-size:1rem; line-height:1.6; overflow-wrap:anywhere}
.ge-pairs h3 {font-size:1.05rem; margin:18px 0 10px}
.ge-pairs-list {display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}
.ge-pairs-list span {border:1px solid #e8d3e2; background:#fff8fb; padding:9px 11px;border-radius:9px;font-size:.8rem}
.ge-games {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.ge-game {padding:17px;border:1px solid #eddce8;border-radius:17px;background:#fff}
.ge-game-top,.ge-game-foot {display:flex;align-items:center;justify-content:space-between;gap:12px}
.ge-game-top strong {font-size:1rem;color:#531342}
.ge-game-top span {font-size:.76rem;color:#96647e}
.ge-game-balls {display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:17px 0}
.ge-game-ball {display:grid;place-items:center;min-height:39px;border-radius:9px;background:#faedf6;color:#8f276b;font-size:.83rem;font-weight:800}
.ge-game-ball--fixed {background:#a61d7d;color:white}
.ge-game-foot {font-size:.75rem;color:#826c7d}
.ge-results {scroll-margin-top:30px}
@media(max-width:840px) {.ge-method-grid,.ge-games {grid-template-columns:1fr}.ge-kpis {grid-template-columns:repeat(2,1fr)} .ge-hero-stat {display:none} .ge-options{grid-template-columns:1fr}}
@media(max-width:540px) {.ge-tabs {width:100%;display:grid;grid-template-columns:1fr 1fr}.ge-tab{text-align:center;padding:11px 5px;font-size:.77rem}.ge-card,.ge-hero{padding:20px 16px;border-radius:18px}.ge-kpis{grid-template-columns:1fr 1fr}.ge-heading{display:block}.ge-data-status{display:inline-block;margin-top:12px}.ge-ball{font-size:1rem;border-radius:9px}.ge-game-ball{min-height:32px}.ge-tags{gap:5px}.ge-tags span{font-size:.71rem}}

.ge-app [hidden]{display:none!important}

/* Reflexo: geração de múltiplos pares + conferência retrospectiva */
.ge-options:has(#geQtdParesLabel:not([hidden])) {grid-template-columns:minmax(190px,1.6fr) minmax(170px,1fr) minmax(170px,1fr)}
.ge-history {margin-top:26px; padding:26px; border:1px solid #ecd3e4; border-radius:19px; background:linear-gradient(145deg,#fffbfe,#fff4fa)}
.ge-history .ge-heading h3 {font-size:1.35rem; margin:8px 0}
.ge-history-controls {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.ge-history-controls label,.ge-history-detail-top label {display:flex;flex-direction:column;gap:7px;font-size:.85rem;font-weight:700;color:#65445a}
.ge-history-controls label[hidden] {display:none!important}
.ge-history-controls select,.ge-history-controls input,.ge-history-detail-top select {width:100%;min-height:44px;background:#fff;border:1px solid #e1c3d6;border-radius:10px;padding:9px 11px;font:inherit;color:#503349}
.ge-history-source {font-size:.86rem;line-height:1.7;color:#694a60;margin:19px 0 11px}
.ge-history-table-wrap {width:100%;overflow-x:auto;border:1px solid #ead4e2;border-radius:13px;background:white}
.ge-history-table {width:100%;border-collapse:collapse;white-space:nowrap;font-size:.82rem}
.ge-history-table th,.ge-history-table td {text-align:center;padding:13px 10px;border-bottom:1px solid #f0e4ec;font-variant-numeric:tabular-nums}
.ge-history-table thead th {background:#fcecf7;color:#70204f;font-weight:800}
.ge-history-table tbody th {color:#822662;text-align:left}
.ge-history-table tbody tr:last-child th,.ge-history-table tbody tr:last-child td {border-bottom:0}
.ge-history-table tbody tr:nth-child(even) {background:#fffafe}
.ge-history-detail-top {display:flex;align-items:end;justify-content:space-between;gap:15px;margin:25px 0 12px}
.ge-history-detail-top h4 {font-size:1.05rem;margin:0}
.ge-history-detail-top label {min-width:160px}
.ge-hit {display:inline-flex;align-items:center;justify-content:center;min-width:29px;min-height:28px;border-radius:7px;padding:3px 6px;background:#f0edf0;color:#594b57;font-weight:800}
.ge-hit--11,.ge-hit--12 {color:#7f4214;background:#ffead8}
.ge-hit--13 {color:#16557b;background:#dff2ff}
.ge-hit--14 {color:#16654d;background:#daf8e9}
.ge-hit--15 {color:#fff;background:#a61d7d}
@media(max-width:950px) {.ge-options:has(#geQtdParesLabel:not([hidden])) {grid-template-columns:repeat(2,minmax(0,1fr))}.ge-history-controls{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:570px) {.ge-options:has(#geQtdParesLabel:not([hidden])) {grid-template-columns:1fr}.ge-history{padding:17px 12px}.ge-history-controls{grid-template-columns:1fr}.ge-history-detail-top{align-items:stretch;flex-direction:column}.ge-history-table{font-size:.76rem}}

/* Conferência financeira unificada — Duplas e Reflexo */
.ge-finance {margin:19px 0 22px;padding:19px;border:1px solid #eacadd;border-radius:15px;background:#fff}
.ge-finance h4 {margin:0 0 12px;color:#66234d;font-size:1.02rem}
.ge-finance-controls {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ge-finance-controls label {display:flex;flex-direction:column;gap:7px;font-size:.83rem;font-weight:700;color:#65445a}
.ge-finance-controls input {width:100%;min-height:44px;border:1px solid #e1c3d6;border-radius:10px;background:#fff;padding:9px 12px;font:inherit;color:#503349}
.ge-finance .ge-footnote {margin:13px 0 0;line-height:1.65}
.ge-finance-kpis {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:17px 0 22px}
.ge-finance-kpis>div {border:1px solid #ead7e5;border-radius:13px;padding:14px;background:#fff}
.ge-finance-kpis>div>small {display:block;font-size:.75rem;color:#73556a;margin-bottom:8px}
.ge-finance-kpis>div>strong {font-size:1.04rem;font-weight:800;color:#61214f;overflow-wrap:anywhere}
.ge-money {display:flex;flex-direction:column;align-items:center;gap:3px;line-height:1.3}
.ge-money strong {font-weight:800;white-space:nowrap}
.ge-money small {font-weight:500;font-size:.71rem;white-space:normal;max-width:175px;color:#726878;line-height:1.3}
.ge-money--positive strong {color:#19754d}
.ge-money--negative strong {color:#af2d41}
.ge-finance-kpis .ge-money {align-items:flex-start}
.ge-finance-kpis .ge-money strong {font-size:1.1rem}
.ge-history-table .ge-money small {max-width:160px}
.ge-history .ge-history-detail-top label[hidden] {display:none!important}
@media(max-width:890px) {.ge-finance-controls {grid-template-columns:repeat(2,minmax(0,1fr))}.ge-finance-kpis {grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px) {.ge-finance{padding:13px}.ge-finance-controls,.ge-finance-kpis{grid-template-columns:1fr 1fr;gap:8px}.ge-finance-controls label{font-size:.75rem}.ge-finance-kpis>div{padding:10px}.ge-finance-kpis>div>strong{font-size:.9rem}}
