:root{--color-bg: #0a0c12;--color-bg-elevated: #12151e;--color-bg-card: #171b27;--color-border: #262c3d;--color-accent: #e94560;--color-accent-hover: #ff5773;--color-accent-2: #00c2ff;--color-text: #f2f3f7;--color-text-muted: #8b91a7;--color-error: #ff5c5c;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--font-heading: "Barlow Condensed", sans-serif;--font-body: "Barlow", sans-serif;--radius-sm: 3px;--radius-md: 6px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-heading);font-weight:700;letter-spacing:.02em;text-transform:uppercase;margin:0 0 var(--space-4)}a{color:var(--color-accent-2);text-decoration:none}a:hover{text-decoration:underline}p{margin:0 0 var(--space-4);color:var(--color-text-muted)}.muted{color:var(--color-text-muted)}.app-shell{min-height:100vh;display:flex;flex-direction:column}.navbar{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-6);background:var(--color-bg-elevated);border-bottom:2px solid var(--color-accent)}.brand{font-family:var(--font-heading);font-size:1.5rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text)}.brand:hover{text-decoration:none}.brand-accent{color:var(--color-accent)}.nav-links{display:flex;align-items:center;gap:var(--space-5);font-family:var(--font-heading);font-weight:600;text-transform:uppercase;letter-spacing:.03em;font-size:.9rem}.nav-links a{color:var(--color-text-muted)}.nav-links a:hover{color:var(--color-text);text-decoration:none}.nav-user{color:var(--color-accent-2)}.app-main{flex:1;padding:var(--space-7) var(--space-6)}.page{max-width:960px;margin:0 auto}.btn{display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-weight:700;font-size:1rem;text-transform:uppercase;letter-spacing:.04em;padding:var(--space-3) var(--space-5);border-radius:var(--radius-sm);border:2px solid transparent;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,transform .1s ease}.btn:active{transform:translateY(1px)}.btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.btn-accent{background:var(--color-accent);color:#fff}.btn-accent:hover:not(:disabled){background:var(--color-accent-hover);text-decoration:none}.btn-outline{background:transparent;border-color:var(--color-border);color:var(--color-text)}.btn-outline:hover:not(:disabled){border-color:var(--color-accent-2);color:var(--color-accent-2);text-decoration:none}.btn-ghost{background:transparent;color:var(--color-text-muted);border-color:transparent;padding:var(--space-2) var(--space-3)}.btn-ghost:hover:not(:disabled){color:var(--color-text)}.btn-block{width:100%}.auth-page{display:flex;justify-content:center;padding-top:var(--space-6)}.auth-card{width:100%;max-width:400px;background:var(--color-bg-card);border:1px solid var(--color-border);border-top:3px solid var(--color-accent);border-radius:var(--radius-md);padding:var(--space-7) var(--space-6)}.auth-title{font-size:2.25rem;margin-bottom:var(--space-1)}.auth-subtitle{margin-bottom:var(--space-6)}.auth-form{display:flex;flex-direction:column;gap:var(--space-4)}.field{display:flex;flex-direction:column;gap:var(--space-2)}.field-label{font-family:var(--font-heading);font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted)}.field input{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-family:var(--font-body);font-size:1rem;padding:var(--space-3)}.field input:focus{outline:none;border-color:var(--color-accent-2)}.auth-form .btn{margin-top:var(--space-2)}.form-error{background:#ff5c5c1a;border:1px solid var(--color-error);color:var(--color-error);border-radius:var(--radius-sm);padding:var(--space-3);margin-bottom:var(--space-4);font-size:.9rem}.auth-switch{margin-top:var(--space-6);margin-bottom:0;text-align:center;font-size:.9rem}.dashboard-header{margin-bottom:var(--space-6)}.empty-state{background:var(--color-bg-card);border:1px dashed var(--color-border);border-radius:var(--radius-md);padding:var(--space-8);text-align:center}.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--space-5)}.team-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;display:flex;flex-direction:column}.kit-swatch{height:80px;width:100%}.team-name{font-size:1.4rem;margin:var(--space-4) var(--space-4) var(--space-3)}.team-card-actions{display:flex;gap:var(--space-3);padding:0 var(--space-4) var(--space-4);margin-top:auto}.team-card-actions .btn{flex:1}.jersey-preview{display:block}.card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-6);margin-bottom:var(--space-5)}.form-card{max-width:420px}.create-team-layout{display:flex;gap:var(--space-6);align-items:flex-start;flex-wrap:wrap}.kit-preview-panel{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-6);display:flex;flex-direction:column;align-items:center;gap:var(--space-3)}.kit-colors{display:flex;align-items:flex-end;gap:var(--space-5);flex-wrap:wrap;margin-bottom:var(--space-2)}.color-field{gap:var(--space-2)}.color-field input[type=color]{width:56px;height:40px;padding:2px;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer}.field select{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-family:var(--font-body);font-size:1rem;padding:var(--space-3)}.field input[type=range]{accent-color:var(--color-accent)}.kit-saved-note{color:var(--color-accent-2);font-family:var(--font-heading);font-weight:600;text-transform:uppercase;letter-spacing:.03em;font-size:.85rem}.team-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-5);margin-bottom:var(--space-6);flex-wrap:wrap}.section-title{font-size:1.3rem;margin-bottom:var(--space-4)}.section-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.section-title-row .section-title{margin-bottom:0}.add-player-form{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:flex-end;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-5);margin-bottom:var(--space-5)}.add-player-form .field{min-width:140px}.add-player-form .form-error{width:100%}.points-remaining{font-family:var(--font-heading);font-weight:600;text-transform:uppercase;letter-spacing:.03em;font-size:.85rem;color:var(--color-accent-2)}.roster-list{display:flex;flex-direction:column;gap:var(--space-3)}.player-card{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-4);flex-wrap:wrap}.player-info{display:flex;flex-direction:column;gap:var(--space-1);min-width:120px}.player-name{font-family:var(--font-heading);font-weight:700;font-size:1.1rem;text-transform:uppercase;letter-spacing:.02em}.player-role{color:var(--color-text-muted);font-size:.85rem;text-transform:uppercase;letter-spacing:.04em}.player-stats{display:flex;gap:var(--space-5);flex:1;min-width:220px}.stat{display:flex;flex-direction:column;gap:var(--space-1);flex:1}.stat-label{font-size:.75rem;font-family:var(--font-heading);font-weight:600;letter-spacing:.04em;color:var(--color-text-muted)}.stat-bar{height:6px;background:var(--color-border);border-radius:2px;overflow:hidden}.stat-bar-fill{height:100%;background:var(--color-accent-2)}.matchmaking-page{display:flex;justify-content:center;padding-top:var(--space-7)}.matchmaking-card{display:flex;flex-direction:column;align-items:center;gap:var(--space-5);text-align:center;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-8);max-width:420px}.matchmaking-card h1{margin-bottom:0}.pulse-ring{position:relative;width:96px;height:96px;display:flex;align-items:center;justify-content:center}.pulse-ring:before,.pulse-ring:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:2px solid var(--color-accent);animation:pulse-ring 1.8s ease-out infinite}.pulse-ring:after{animation-delay:.9s}.pulse-core{width:32px;height:32px;border-radius:50%;background:var(--color-accent)}@keyframes pulse-ring{0%{transform:scale(.6);opacity:1}to{transform:scale(1.6);opacity:0}}.match-room-value{color:var(--color-text);margin-bottom:var(--space-4);font-family:var(--font-heading);font-size:1.1rem}.toss-screen{display:flex;flex-direction:column;align-items:center;gap:var(--space-5);text-align:center;padding:var(--space-6) 0}.toss-heading{margin-bottom:0}.toss-call-buttons{display:flex;gap:var(--space-5)}.toss-call-btn{min-width:140px;padding:var(--space-4) var(--space-6);font-size:1.1rem}.toss-screen-waiting{display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}.coin-flip{perspective:600px}.coin{width:120px;height:120px;border-radius:50%;background:linear-gradient(135deg,var(--color-accent),var(--color-accent-hover));border:3px solid var(--color-text);display:flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-weight:700;font-size:1.05rem;text-transform:uppercase;letter-spacing:.02em;color:var(--color-text);animation:coin-spin 1.8s ease-out}.coin-still{animation:none}@keyframes coin-spin{0%{transform:rotateY(0)}to{transform:rotateY(1800deg)}}.lineup-summary{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-bottom:var(--space-5)}.lineup-check{font-family:var(--font-heading);font-weight:600;text-transform:uppercase;letter-spacing:.03em;font-size:.85rem;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-bg-elevated)}.lineup-check.ok{color:var(--color-accent-2);border-color:var(--color-accent-2)}.lineup-check.bad{color:var(--color-error);border-color:var(--color-error)}.lineup-list{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-5)}.lineup-row{display:flex;align-items:center;gap:var(--space-4);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);cursor:pointer}.lineup-row input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-accent)}.lineup-actions{display:flex;gap:var(--space-4)}.batting-order-hint{margin-bottom:var(--space-3)}.batting-order-list{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-5)}.batting-order-row{display:flex;align-items:center;gap:var(--space-4);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);cursor:grab}.batting-order-row.dragging{opacity:.5;border-color:var(--color-accent-2)}.batting-order-pos{font-family:var(--font-heading);font-weight:700;font-size:1.1rem;color:var(--color-accent-2);min-width:24px;text-align:center}.batting-order-info{display:flex;flex-direction:column;gap:var(--space-1);flex:1;min-width:160px}.batting-order-ratings{font-family:var(--font-heading);font-size:.8rem;color:var(--color-text-muted);letter-spacing:.03em;white-space:nowrap}.match-screen{display:flex;flex-direction:column;gap:var(--space-6);max-width:640px;margin:0 auto}.scoreboard{background:var(--color-bg-card);border:1px solid var(--color-border);border-top:3px solid var(--color-accent);border-radius:var(--radius-md);padding:var(--space-6);text-align:center}.score-line{font-family:var(--font-heading);font-weight:700;font-size:3rem;line-height:1;margin:var(--space-2) 0;color:var(--color-text)}.score-overs{font-size:1.5rem;color:var(--color-text-muted);font-weight:600}.chase-line{font-family:var(--font-heading);font-weight:600;font-size:1.1rem;color:var(--color-accent-2);margin:var(--space-2) 0 0;text-transform:uppercase;letter-spacing:.03em}.target-line{margin:var(--space-1) 0 0}.ball-feed{display:flex;flex-direction:row-reverse;justify-content:center;gap:var(--space-2);margin-top:var(--space-5);overflow-x:auto;padding-bottom:var(--space-1)}.ball-badge{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;font-family:var(--font-heading);font-weight:700;font-size:.9rem;background:var(--color-bg-elevated);border:1px solid var(--color-border);color:var(--color-text-muted)}.ball-badge-boundary{background:#00c2ff1f;border-color:var(--color-accent-2);color:var(--color-accent-2)}.ball-badge-wicket{background:#e9456026;border-color:var(--color-accent);color:var(--color-accent-hover)}.ball-badge.latest{width:40px;height:40px;font-size:1.1rem}.play-controls{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-6);display:flex;flex-direction:column;align-items:center;gap:var(--space-4);min-height:180px;justify-content:center}.match-error{text-align:center}.waiting-block{display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}.option-buttons{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-3)}.option-btn{min-width:90px}.option-btn.selected{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.play-action-btn{min-width:180px;padding:var(--space-4) var(--space-6);font-size:1.1rem;margin-top:var(--space-2)}.result-flash{font-family:var(--font-heading);font-weight:800;font-size:3.5rem;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text);animation:flash-pulse .5s ease-out}.result-flash-boundary{color:var(--color-accent-2);text-shadow:0 0 24px rgba(0,194,255,.6)}.result-flash-wicket{color:var(--color-accent);text-shadow:0 0 24px rgba(233,69,96,.7)}@keyframes flash-pulse{0%{transform:scale(.6);opacity:0}60%{transform:scale(1.1);opacity:1}to{transform:scale(1);opacity:1}}.match-end-screen{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);text-align:center;background:var(--color-bg-card);border:1px solid var(--color-border);border-top:3px solid var(--color-accent);border-radius:var(--radius-md);padding:var(--space-8) var(--space-6);max-width:480px;margin:0 auto}.match-margin{font-family:var(--font-heading);font-size:1.2rem;color:var(--color-accent-2);margin:0}.final-scores{display:flex;flex-direction:column;gap:var(--space-3);width:100%;margin:var(--space-2) 0}.final-score-row{display:flex;justify-content:space-between;align-items:center;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4)}.final-score-row .match-room-value{margin-bottom:0}
