*{box-sizing:border-box}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;margin:0;padding:0;background:#fff;color:#0f172a;min-height:100vh}.landingPage{max-width:1100px;margin:0 auto;padding:2.5rem 1.25rem 4rem}.hero{background:linear-gradient(145deg,#fff,#f7fafc);border:1px solid #e2e8f0;border-radius:16px;padding:2.5rem;box-shadow:0 10px 30px rgba(15,23,42,.06)}.eyebrow{margin:0 0 .75rem;color:#0f172a;font-weight:700;letter-spacing:.02em;font-size:.88rem}.hero h1{margin:0;font-size:2.1rem;line-height:1.15;color:#0f172a}.heroSub{margin-top:1rem;color:#334155;max-width:700px;line-height:1.6}.heroCtas{margin-top:1.5rem}.ctaPrimary{background:#0f172a;color:#fff;border:none;border-radius:10px;padding:.75rem 1.2rem;font-size:.95rem;font-weight:600;cursor:pointer}.ctaPrimary:hover{background:#1e293b}.featureGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:1rem;gap:1rem;margin-top:1.25rem}.featureCard{border:1px solid #e2e8f0;border-radius:12px;padding:1rem;background:#fff}.featureCard h3{margin:0 0 .45rem;color:#0f172a;font-size:1rem}.featureCard p{margin:0;color:#475569;line-height:1.5;font-size:.92rem}.aboutSection{margin-top:1.5rem;border-left:4px solid #0f172a;padding:.75rem 0 .75rem 1rem}.aboutSection h2{margin:0 0 .4rem;font-size:1.1rem;color:#0f172a}.aboutSection p{margin:0;color:#334155;line-height:1.6}.simulatorShell{background:#0f1419;color:#e7e9ea;min-height:100vh;padding:1rem}.container{max-width:560px;margin:0 auto}header{margin-bottom:1.5rem}header h1{font-size:1.5rem;font-weight:700;margin:0 0 .25rem}.subtitle{color:#8b98a5;font-size:.9375rem;margin:0}.card{background:#16181c;border:1px solid #2f3336;border-radius:12px;padding:1.25rem;margin-bottom:1rem}.card h2{font-size:1rem;font-weight:600;margin:0 0 1rem;color:#e7e9ea}.field{margin-bottom:1rem}.field label{display:block;font-size:.8125rem;font-weight:500;color:#8b98a5;margin-bottom:.35rem}.hint{font-weight:400;color:#6e767d}select{width:100%;padding:.5rem .75rem;font-size:.9375rem;background:#202327;border:1px solid #2f3336;border-radius:8px;color:#e7e9ea}select:focus{outline:none;border-color:#1d9bf0}.battingOrder{list-style:none;margin:0;padding:0;background:#202327;border:1px solid #2f3336;border-radius:8px;min-height:2.5rem}.battingOrder li{padding:.5rem .75rem;border-bottom:1px solid #2f3336;display:flex;align-items:center;gap:.5rem;cursor:-webkit-grab;cursor:grab}.battingOrder li:last-child{border-bottom:none}.battingOrder li.dragging{opacity:.6;cursor:-webkit-grabbing;cursor:grabbing}.btn{padding:.5rem 1rem;font-size:.9375rem;font-weight:600;border:none;border-radius:8px;cursor:pointer}.btnPrimary{background:#1d9bf0;color:#fff}.btnPrimary:hover{background:#1a8cd8}.btnSecondary{background:transparent;color:#8b98a5;border:1px solid #2f3336;margin-top:.75rem}.btnSecondary:hover{background:#202327;color:#e7e9ea}.hidden{display:none!important}.gameState{margin-bottom:1rem}.stateRow{display:flex;align-items:baseline;gap:.5rem;margin-bottom:.35rem}.stateRow .label{color:#8b98a5;font-size:.8125rem;min-width:4rem}.count{font-size:1.25rem;font-weight:700}.muted{color:#6e767d}.muted,.small{font-size:.8125rem}.pitchResult{margin-top:.75rem;padding:.75rem;background:#202327;border-radius:8px;border:1px solid #2f3336}.pitchResult .label{color:#8b98a5;margin-right:.5rem}.pitchValue{font-size:1.125rem}.outcomeButtons{display:flex;flex-wrap:wrap;gap:.5rem}.outcomeButtons button{padding:.4rem .75rem;font-size:.8125rem;background:#202327;border:1px solid #2f3336;border-radius:6px;color:#e7e9ea;cursor:pointer}.outcomeButtons button:hover{background:#2f3336;border-color:#3d4148}.lineupPlayerBtn{background:transparent;color:#e7e9ea;border:none;cursor:pointer;text-align:left;font-size:.92rem;padding:0}.lineupPlayerBtn:hover{color:#1d9bf0}.lineupSwapSelect{margin-left:auto;width:60%;min-width:170px}.diamond{position:relative;width:190px;height:190px;margin:.5rem auto 0}.base{position:absolute;width:52px;height:52px;border-radius:8px;border:1px solid #2f3336;background:#202327;color:#e7e9ea;font-size:.75rem;display:flex;align-items:center;justify-content:center}button.base{cursor:pointer}button.base.occupied{background:#1d9bf0;border-color:#1d9bf0;color:#fff}.base.home{left:69px;bottom:0;background:#16181c}.base.first{right:0;top:69px}.base.second{left:69px;top:0}.base.third{left:0;top:69px}