:root{--fix-blue:#123b63;--fix-ink:#172b4d;--fix-muted:#61728a;--fix-border:#d8e2ef;--fix-soft:#f3f7fc}.fix-wrap{max-width:1080px;padding-top:2rem;padding-bottom:3rem}.fix-heading{text-align:center;margin:1rem auto 1.5rem}.fix-heading h1{font-size:clamp(2rem,4vw,3rem);margin:.4rem 0;color:var(--fix-blue)}.fix-heading p,.fix-help{color:var(--fix-muted);line-height:1.6}.fix-card{padding:clamp(1rem,3vw,2rem);margin-bottom:1.3rem;border:1px solid var(--fix-border);border-radius:18px}.fix-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.fix-help{font-size:.9rem}.fix-game-top{display:flex;align-items:center;justify-content:space-between;gap:1rem}.fix-game-top h2{margin:.25rem 0 1rem}.fix-clock{font-size:1.25rem;font-weight:800;color:var(--fix-blue);background:var(--fix-soft);border-radius:12px;padding:.75rem 1rem;min-width:100px;text-align:center}.fix-error-box{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin:1rem 0}.fix-error-box>div{background:var(--fix-soft);border:1px solid var(--fix-border);border-radius:14px;padding:1rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem}.fix-error-box span,.fix-result-grid span{color:var(--fix-muted);font-size:.9rem}.fix-error-box strong{font-size:1.5rem;color:var(--fix-blue)}.fix-passage{font-size:1.2rem;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere;background:#fbfdff;border:1px solid var(--fix-border);border-radius:14px;padding:1.2rem;margin:1rem 0;max-height:260px;overflow:auto}.fix-passage .fix-char{white-space:pre-wrap}.fix-passage .fix-correct{color:#16804a}.fix-passage .fix-wrong{color:#c03636;background:#ffeded}.fix-passage .fix-current{border-bottom:2px solid #2766d1}.fix-input{min-height:130px;font-size:1.15rem;line-height:1.7;resize:vertical}.fix-live-stats{display:flex;flex-wrap:wrap;gap:.8rem 1.4rem;margin:1rem 0;color:var(--fix-muted)}.fix-live-stats strong{color:var(--fix-ink)}.fix-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1rem}.fix-result-status{text-align:center;font-weight:900;letter-spacing:.08em;border-radius:12px;padding:.8rem;background:#edf8f1;color:#167245}.fix-result-status.try-again{background:#fff1ed;color:#a53621}.fix-result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin:1rem 0}.fix-result-grid>div{display:flex;flex-direction:column;gap:.4rem;background:var(--fix-soft);border:1px solid var(--fix-border);border-radius:12px;padding:1rem}.fix-result-grid strong{font-size:1.2rem;color:var(--fix-blue);overflow-wrap:anywhere}.fix-result-thresholds{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;color:var(--fix-muted)}.fix-result-passage{border-top:1px solid var(--fix-border);margin-top:1rem;padding-top:.5rem}.fix-result-passage p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}.fix-result-passage h3{font-size:1rem;color:var(--fix-blue)}@media(max-width:640px){.fix-grid,.fix-result-grid{grid-template-columns:1fr}.fix-error-box>div{padding:.8rem}.fix-game-top{align-items:flex-start}.fix-actions>*{flex:1 1 auto}.fix-passage{font-size:1.05rem;padding:.8rem}}@media print{.navbar,.footer,.fix-actions,.fix-setup,.fix-help{display:none!important}.fix-wrap{max-width:none;padding:0}.fix-card{box-shadow:none;border:0}.fix-result-grid>div{break-inside:avoid}}
/* Typing Game visual refresh */
.fix-heading{padding:1.6rem 1rem;border-radius:22px;background:radial-gradient(circle at 12% 15%,#60a5fa55,transparent 35%),linear-gradient(120deg,#102f50,#174f7c 58%,#5145a8);color:#fff;box-shadow:0 18px 42px #123b6326;overflow:hidden;position:relative}
.fix-heading h1,.fix-heading p{color:#fff}.fix-heading .eyebrow{color:#a7f3d0;letter-spacing:.16em;font-weight:900}.fix-heading h1{animation:fixTitleIn .65s both}.fix-subtitle{opacity:.9}
.fix-card{box-shadow:0 12px 36px rgba(18,59,99,.08);background:linear-gradient(145deg,#fff,#f8fbff);transition:box-shadow .2s,transform .2s}.fix-card:focus-within{box-shadow:0 16px 40px rgba(37,99,235,.13)}
#fix-setup-form .form-control{border-radius:11px;border-color:#cbd9e8;min-height:46px}#fix-setup-form textarea.form-control{min-height:105px}
#fix-setup-form button[type=submit]{min-height:52px;border-radius:13px;background:linear-gradient(100deg,#174f7c,#4f46e5);box-shadow:0 7px 18px #174f7c2e}
.fix-clock{font-variant-numeric:tabular-nums;background:#071a2b;color:#7cf7bd;box-shadow:inset 0 0 0 1px #3d6482;font-size:clamp(1.2rem,3vw,1.7rem);letter-spacing:.08em}
.fix-passage-display,.fix-passage{border-radius:14px;box-shadow:inset 0 2px 8px #102f5009}.fix-passage-display .char-incorrect,.fix-passage .fix-wrong{color:#b91c1c;background:#fee2e2;border-radius:3px}.fix-passage-display .char-correct{color:#16804a}.fix-passage-display .char-current{border-bottom:2px solid #2563eb;background:#dbeafe}
.fix-error-box>div:first-child{background:linear-gradient(135deg,#fff7ed,#ffedd5);border-color:#fdba74}.fix-error-box>div:last-child{background:linear-gradient(135deg,#fff1f2,#ffe4e6);border-color:#fda4af}
.fix-live-stats>span{background:#f0f9ff;border:1px solid #bae6fd;border-radius:10px;padding:.65rem .8rem}.fix-result-grid>div{background:linear-gradient(145deg,#fff,#eff6ff);border-color:#cbdcf0}
@keyframes fixTitleIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.fix-heading h1{animation:none}}


/* Animated Fix Accuracy hero artwork */
.fix-heading{display:flex;align-items:center;justify-content:space-between;gap:clamp(1rem,4vw,3rem);text-align:left;padding:clamp(1.5rem,4vw,3rem);min-height:245px}
.fix-hero-copy{position:relative;z-index:2;max-width:650px}.fix-hero-copy>p{max-width:56ch}
.fix-hero-cta{display:inline-flex;align-items:center;gap:.65rem;margin-top:1rem;padding:.8rem 1.1rem;border-radius:12px;background:#d1fae5;color:#064e3b;text-decoration:none;font-weight:850;box-shadow:0 8px 22px #031d3b33;transition:transform .2s,box-shadow .2s}
.fix-hero-cta:hover{transform:translateY(-2px);box-shadow:0 12px 26px #031d3b44}
.fix-hero-art{position:relative;isolation:isolate;flex:0 0 245px;height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;border:1px solid #b5e8ff55;border-radius:24px;background:linear-gradient(145deg,#071b30cc,#143f70dd);box-shadow:0 18px 45px #06152d55,inset 0 1px #ffffff2b;text-decoration:none;overflow:hidden;animation:fixArtFloat 4s ease-in-out infinite}
.fix-art-label{font-size:2.8rem;font-weight:1000;letter-spacing:.2em;color:#a7f3d0;text-shadow:0 0 24px #34d39988;z-index:1}
.fix-key-row{display:flex;gap:5px;z-index:1}.fix-key-row i{font-style:normal;display:grid;place-items:center;width:31px;height:32px;border-radius:7px;background:linear-gradient(145deg,#f8fafc,#b8d2eb);color:#123b63;font-weight:900;box-shadow:0 4px 0 #6888ad;animation:fixKeyPulse 1.8s ease-in-out infinite}.fix-key-row i:nth-child(2){animation-delay:.12s}.fix-key-row i:nth-child(3){animation-delay:.24s}.fix-key-row i:nth-child(4){animation-delay:.36s}.fix-key-row i:nth-child(5){animation-delay:.48s}
.fix-art-cursor{width:3px;height:23px;background:#6ee7b7;box-shadow:0 0 18px #6ee7b7;position:absolute;top:49px;right:43px;animation:fixCursorBlink .7s steps(2,start) infinite}
.fix-art-caption{font-size:.65rem;letter-spacing:.2em;font-weight:900;color:#c7e7ff;z-index:1}
.fix-orbit{position:absolute;border:1px solid #93c5fd55;border-radius:50%;width:190px;height:190px;animation:fixOrbit 9s linear infinite}.fix-orbit-a{top:-90px;left:-55px}.fix-orbit-b{right:-85px;bottom:-115px;width:220px;height:220px;animation-direction:reverse}
#fix-setup-form .fix-custom-time-wrap{padding:1rem;border-radius:12px;background:#eff6ff;border:1px solid #bfdbfe}
#fix-setup-form .fix-custom-time-wrap[hidden]{display:none}
.fix-passage-display.no-highlight .char-incorrect,.fix-passage-display.no-highlight .char-correct,.fix-passage-display.no-highlight .char-current{color:inherit;background:transparent;border-bottom:0}
@keyframes fixArtFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes fixKeyPulse{0%,100%{transform:translateY(0);filter:brightness(1)}50%{transform:translateY(3px);filter:brightness(1.15)}}
@keyframes fixCursorBlink{50%{opacity:0}}
@keyframes fixOrbit{to{transform:rotate(360deg)}}
@media(max-width:640px){.fix-heading{align-items:stretch;flex-direction:column;text-align:center}.fix-hero-art{flex-basis:auto;width:min(100%,300px);height:170px;margin:0 auto}.fix-hero-copy>p{margin-inline:auto}.fix-hero-cta{justify-content:center}}
@media(prefers-reduced-motion:reduce){.fix-hero-art,.fix-key-row i,.fix-art-cursor,.fix-orbit{animation:none}.fix-hero-cta{transition:none}}


/* Premium neon polish: presentation only */
#setup-panel.fix-card{max-width:880px;margin-inline:auto;padding:clamp(1rem,2.4vw,1.65rem);border:1px solid #60a5fa55;background:linear-gradient(145deg,#ffffff 0%,#f4f8ff 55%,#eefcff 100%);box-shadow:0 18px 55px #102c5420,0 0 0 1px #ffffff inset;position:relative;overflow:hidden}
#setup-panel.fix-card:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,#22d3ee,#818cf8,#34d399,#22d3ee);background-size:220% 100%;animation:premiumHueSweep 7s linear infinite}
#setup-panel .card-title{font-size:clamp(1.15rem,2vw,1.45rem);letter-spacing:-.025em}
#fix-setup-form .fix-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}
#fix-setup-form .form-group{margin-bottom:.15rem;min-width:0}
#fix-setup-form .form-control{min-height:42px;border-radius:12px;border-color:#c7d7ed;background:#ffffffd9;box-shadow:0 2px 8px #102c5408;transition:border-color .18s,box-shadow .18s,transform .18s}
#fix-setup-form .form-control:focus{border-color:#22d3ee;box-shadow:0 0 0 3px #22d3ee25,0 0 22px #818cf825;outline:none}
#fix-setup-form textarea.form-control{min-height:82px;resize:vertical}
#fix-setup-form .form-label{font-size:.83rem;font-weight:800;color:#263c60;margin-bottom:.35rem}
#fix-setup-form .fix-help{font-size:.82rem}
#fix-setup-form .btn-primary{margin-top:.8rem;min-height:46px;border-radius:13px;box-shadow:0 8px 20px #2563eb2b;transition:transform .2s,box-shadow .2s}
#fix-setup-form .btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 27px #2563eb40}
.fix-result-passage{margin-top:1rem;padding:clamp(1rem,2.5vw,1.5rem);border:1px solid #7dd3fc66;border-radius:18px;background:linear-gradient(135deg,#07182b,#0c2544 60%,#122b4a);color:#e6f4ff;box-shadow:0 14px 38px #07182b2b}
.fix-result-passage h3{color:#d9f4ff;margin:.1rem 0 .85rem}
.fix-result-legend{display:flex;gap:.5rem;flex-wrap:wrap;font-size:.78rem;margin:.5rem 0 1rem}
.fix-result-legend span{padding:.3rem .55rem;border-radius:999px;background:#ffffff0d}
.fix-result-typed{font:500 clamp(1rem,1.5vw,1.12rem)/2 ui-monospace,SFMono-Regular,Menlo,monospace;overflow-wrap:anywhere;white-space:pre-wrap;letter-spacing:.01em}
.result-word-correct{color:#d8eaff}
.mistake-omitted{color:#60a5fa!important;font-weight:850;text-shadow:0 0 12px #3b82f655}
.mistake-extra{color:#f0abfc!important;font-weight:850;text-shadow:0 0 12px #e879f955}
.mistake-wrong,.mistake-expected{color:#f87171!important;font-weight:850;text-shadow:0 0 12px #ef444455}
@keyframes premiumHueSweep{to{background-position:220% 0}}
@media(max-width:760px){#fix-setup-form .fix-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){#fix-setup-form .fix-grid{grid-template-columns:1fr}#setup-panel.fix-card{padding:1rem}}
@media(prefers-reduced-motion:reduce){#setup-panel.fix-card:before{animation:none}#fix-setup-form .btn-primary{transition:none}}
