:root{--french-blue: #123d84;--white: #ffffff;--racing-red: #f11e28;--powder-blue: #aec0da;--royal-gold: #ffe459;--font-scale: 1;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:system-ui,-apple-system,sans-serif;font-size:1rem;background:var(--white);color:var(--french-blue)}.app{display:flex;flex-direction:column;height:100%}.navbar{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem;background:var(--french-blue);color:var(--white)}.navbar-title{flex:1;text-align:center;font-weight:700;letter-spacing:.02em}.navbar-left,.navbar-right{display:flex;flex:1;gap:.5rem}.navbar-right{justify-content:flex-end}.btn{font-size:1rem;padding:.5rem .9rem;border:1px solid var(--powder-blue);border-radius:8px;background:var(--white);color:var(--french-blue);cursor:pointer}.btn--primary{background:var(--french-blue);color:var(--white);border-color:var(--french-blue)}.btn--start{font-size:1.6rem;padding:1rem 3rem}.navbar .btn{background:transparent;color:var(--white);border-color:#fff6}.start-screen,.loading,.error-screen{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;text-align:center}.error-screen{color:var(--racing-red)}.competition-grid{flex:1;display:grid;gap:1px;background:var(--powder-blue);overflow:auto}.competitor-column{background:var(--column-body, var(--white));display:flex;flex-direction:column;min-width:0;font-size:calc(1rem * var(--font-scale))}.competitor-column:nth-child(3n+1){--column-body: #e3eefb;--column-header: #c9dbf3}.competitor-column:nth-child(3n+2){--column-body: #ffe9d6;--column-header: #ffd5b3}.competitor-column:nth-child(3n+3){--column-body: #e4f5ea;--column-header: #c8ebd5}.competitor-header{display:flex;justify-content:space-between;padding:.5rem .75rem;background:var(--column-header, var(--powder-blue));font-weight:700}.competitor-header--centered{justify-content:center;text-align:center}.competitor-questions{padding:.75rem;display:flex;flex-direction:column;gap:1rem;overflow:auto}.question-card{border:1px solid var(--powder-blue);border-radius:10px;padding:.75rem;margin:0}.question-stem{font-weight:600;padding:0 .25rem}.option{display:flex;align-items:center;gap:.5rem;padding:.5rem;border-radius:8px;cursor:pointer;border:2px solid transparent;transition:background-color .12s ease,border-color .12s ease}.option--neutral:has(input:not(:disabled)):hover{background:#aec0da73;border-color:var(--powder-blue)}.option--selected{background:#123d841f;border-color:var(--french-blue)}.option--selected:hover{background:#123d842e}.option--correct{background:#2ea0432e;border-color:#2ea043}.option--incorrect{background:#f11e2826;border-color:var(--racing-red)}.timer-bar-wrap{height:22px;background:var(--powder-blue);position:relative;overflow:hidden}.timer-bar{height:100%;background:var(--racing-red);transition:width 1s linear}.timer-bar-label{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:var(--white);font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:.05em;text-shadow:0 1px 2px rgba(18,61,132,.7);pointer-events:none}.timeout-message{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:var(--racing-red);color:var(--white);font-weight:800;letter-spacing:.1em}.bottom-bar{display:flex;align-items:center;justify-content:center;gap:1rem;padding:.75rem;background:var(--french-blue)}.bottom-bar .btn{min-width:8rem}.stats{display:flex;gap:1.5rem;color:var(--white);flex-wrap:wrap}.stat strong{color:var(--royal-gold)}.stat--result{font-size:1.25rem;font-weight:600}.stat--result strong{font-size:1.4em}.cap-warning{color:var(--royal-gold);font-weight:600;margin-right:1rem}.settings-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#123d8466;display:flex;justify-content:flex-end}.settings-panel{width:min(360px,90vw);height:100%;background:var(--white);padding:1rem;display:flex;flex-direction:column;gap:1rem;overflow:auto}.settings-header{display:flex;justify-content:space-between;align-items:center}.setting{display:flex;flex-direction:column;gap:.25rem;font-weight:600}.setting--inline{flex-direction:row;align-items:center;gap:.5rem}.setting input,.setting select{padding:.5rem;border:1px solid var(--powder-blue);border-radius:8px;font-size:1rem}.settings-save{margin-top:auto}.settings-about{border-top:1px solid var(--powder-blue);padding-top:1rem;color:var(--french-blue);font-size:.9rem;line-height:1.5}.settings-about p{margin:0 0 .5rem}.settings-about p:last-child{margin-bottom:0}.settings-about-email{color:var(--french-blue);font-weight:600}.settings-footer{color:var(--powder-blue);font-size:.85rem;text-align:center}.about-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#123d8466;display:flex;justify-content:center;align-items:center;padding:1rem}.about-panel{width:min(420px,90vw);max-height:90vh;background:var(--white);border-radius:12px;padding:1rem;display:flex;flex-direction:column;gap:1rem;overflow:auto}@media (max-width: 720px){.competition-grid{grid-template-columns:1fr!important}}.navbar-font{display:inline-flex;gap:.5rem}.help-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000}.help-spotlight{position:fixed;border-radius:8px;border:2px solid var(--royal-gold);box-shadow:0 0 0 9999px #123d8499;pointer-events:none;transition:top .15s ease,left .15s ease,width .15s ease,height .15s ease}.help-tooltip{position:fixed;background:var(--white);color:var(--french-blue);border-radius:12px;border-top:4px solid var(--royal-gold);padding:1rem;box-shadow:0 8px 24px #0000004d;max-width:calc(100vw - 24px)}.help-tooltip h3{margin:0 0 .5rem;font-size:1.1rem}.help-tooltip p{margin:0 0 1rem;font-size:.95rem;line-height:1.45}.help-footer{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.help-counter{color:var(--powder-blue);font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.help-actions{display:flex;gap:.5rem}.help-footer .btn{flex:none;white-space:nowrap}.settings-install{margin-top:1rem}.settings-install h3{margin-bottom:.5rem}.settings-install-status,.settings-install-ios{color:var(--french-blue)}
