*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8f9fa;color:#343a40;line-height:1.6}#root{height:100%}.navbar{background:#fff;box-shadow:0 2px 4px #0000001a;padding:1.5rem;position:sticky;display:flex;justify-content:center;align-items:center;gap:1.5rem;top:0;left:0;margin-bottom:1.5rem;width:100%;height:40px;padding:2rem;font-size:1.5rem;border-radius:0;z-index:1000}.navbar__link{color:#343a40;text-decoration:none}.navbar__link.active{color:#007bff}.navbar__link:hover{color:#28a745}.not-found{position:absolute;width:100%;top:0;display:flex;flex-direction:column;justify-content:center;align-items:center;height:100vh;font-size:2rem;color:#f0f0f0;background-color:#000;font-family:Arial,sans-serif}.car-form{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem;margin-bottom:2rem}.car-form__controls{display:flex;gap:1rem;margin-bottom:1.5rem}@media only screen and (max-width: 500px){.car-form__controls{flex-direction:column;gap:.5rem}}.car-form__form{border-top:1px solid rgb(150.9763948498,158.4660944206,165.1236051502);padding-top:1.5rem}.form-group{margin-bottom:1rem}.form-input{width:100%;padding:.5rem 1rem;border:1px solid rgb(136.1158798283,144.6755364807,152.2841201717);border-radius:4px;font-size:1rem;transition:border-color .15s ease-in-out}.form-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.form-input::placeholder{color:#79838b}.form-color{width:60px;height:40px;border:none;border-radius:4px;cursor:pointer}.form-color::-webkit-color-swatch{border:none;border-radius:4px}.form-actions{display:flex;gap:1rem}@media only screen and (max-width: 500px){.form-actions{flex-direction:column;gap:.5rem}}.car-item{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem;transition:transform .15s ease-in-out,box-shadow .15s ease-in-out}.car-item:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000026}@media only screen and (max-width: 500px){.car-item{padding:1rem}}.car-item__controls{display:flex;gap:.5rem;margin-bottom:1rem}@media only screen and (max-width: 500px){.car-item__controls{flex-wrap:wrap}}.car-item__info{margin-bottom:1rem}.car-item__name{font-size:1.25rem;font-weight:600;color:#343a40;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.car-item__track{display:flex;align-items:center;gap:1rem}@media only screen and (max-width: 500px){.car-item__track{flex-direction:column;gap:.5rem}}.car-item__race-controls{display:flex;gap:.5rem}.car-track{width:100%;display:flex;align-items:center;min-height:60px;position:relative}.car-track__road{flex:1;height:50px;padding:3px;background:linear-gradient(to right,transparent 0%,transparent 48%,white 48%,white 52%,transparent 52%,transparent 100%);background-color:#666;border-radius:2px;position:relative;overflow:hidden}.car-track__car{position:absolute;left:0;top:50%;transform:translateY(-50%) rotateY(180deg);width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;transition:left .5s ease-in-out;box-shadow:0 2px 4px #0003}@media only screen and (max-width: 500px){.car-track__car{width:30px;height:30px;font-size:1.2rem}}.car-track__finish{font-size:2rem;margin-left:1rem}@media only screen and (max-width: 500px){.car-track__finish{font-size:1.5rem;margin-left:.5rem}}.pagination-wrapper{display:flex;justify-content:center;padding:2rem 0}.pagination{display:flex;list-style:none;gap:.25rem;align-items:center}.pagination li.active a{background:#007bff;color:#fff;border-color:#007bff}.pagination li.disabled a{color:#889198;cursor:not-allowed}.pagination li.disabled a:hover{background:transparent;border-color:#979ea5}.pagination li a{display:block;padding:.5rem 1rem;color:#007bff;text-decoration:none;border:1px solid rgb(150.9763948498,158.4660944206,165.1236051502);border-radius:4px;transition:all .15s ease-in-out;font-size:.9rem}.pagination li a:hover{background:#73b6ff;border-color:#007bff}@media only screen and (max-width: 500px){.pagination li a{padding:.25rem .5rem;font-size:.8rem}}.pagination .break a{border:none;background:transparent;color:#6c757d}.pagination .break a:hover{background:transparent;border:none}.winner-banner{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease-in-out ease-out}.winner-banner__content{background:#fff;border-radius:12px;padding:3rem;text-align:center;position:relative;box-shadow:0 10px 30px #0000004d;max-width:400px;width:90%;animation:slideIn .5s ease-in-out ease-out}.winner-banner__content h2{font-size:2.5rem;color:#ffc107;margin-bottom:1.5rem;text-shadow:2px 2px 4px rgba(0,0,0,.1)}@media only screen and (max-width: 500px){.winner-banner__content h2{font-size:2rem}}.winner-banner__car{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:1.5rem}.winner-banner__icon{width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;box-shadow:0 4px 8px #0003;animation:bounce 1s infinite}@media only screen and (max-width: 500px){.winner-banner__icon{width:50px;height:50px;font-size:1.5rem}}.winner-banner__name{font-size:1.5rem;font-weight:700;color:#343a40;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media only screen and (max-width: 500px){.winner-banner__name{font-size:1.25rem}}.winner-banner__close{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.5rem;cursor:pointer;color:#6c757d;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .15s ease-in-out}.winner-banner__close:hover{background:#a6acb2;color:#343a40}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{transform:translateY(-50px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.race-controls{display:flex;gap:1.5rem;justify-content:flex-start;margin:1.5rem 0;padding-left:1.5rem}@media only screen and (max-width: 500px){.race-controls{gap:1rem;flex-direction:column;align-items:center}}.garage-view__header{margin-bottom:2rem}.garage-view__title{text-align:center;font-size:2rem;font-weight:700;color:#343a40;margin-bottom:1.5rem}@media only screen and (max-width: 500px){.garage-view__title{font-size:1.5rem}}.garage-view__cars{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.btn{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-weight:500;transition:all .15s ease-in-out;outline:none}.btn:disabled{opacity:.6;cursor:not-allowed}.btn:focus{box-shadow:0 0 0 2px #007bff40}.btn--primary{background:#007bff;color:#fff}.btn--primary:hover:not(:disabled){background:#0062cc}.btn--secondary{background:#6c757d;color:#fff}.btn--secondary:hover:not(:disabled){background:#545b62}.btn--success{background:#28a745;color:#fff}.btn--success:hover:not(:disabled){background:#1e7e34}.btn--danger{background:#dc3545;color:#fff}.btn--danger:hover:not(:disabled){background:#bd2130}.btn--warning{background:#ffc107;color:#343a40}.btn--warning:hover:not(:disabled){background:#d39e00}.btn--cancel{background:#f8f9fa;color:#343a40;border:1px solid #6c757d}.btn--cancel:hover:not(:disabled){background:#e9ecef}.btn--small{padding:.25rem .5rem;font-size:.85rem}.btn--large{padding:1rem 1.5rem;font-size:1.1rem;font-weight:600}.winners-view__header{margin-bottom:2rem}.winners-view__title{font-size:2rem;font-weight:700;color:#343a40;margin-bottom:1.5rem}@media only screen and (max-width: 500px){.winners-view__title{font-size:1.5rem}}.winners-table{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem;margin-bottom:2rem;overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:.95rem}.table th,.table td{padding:1rem;text-align:left;border-bottom:1px solid rgb(150.9763948498,158.4660944206,165.1236051502)}@media only screen and (max-width: 500px){.table th,.table td{padding:.5rem;font-size:.85rem}}.table th{background-color:#f8f9fa;font-weight:600;color:#343a40;white-space:nowrap}.table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;position:relative}.table th.sortable:hover,.table th.sortable:active{background-color:#f8f9fa}.table td{vertical-align:middle}.table tbody tr{transition:background-color .15s ease-in-out}.table tbody tr:hover{background-color:#73b6ff}.table tbody tr:nth-child(2n){background-color:#00000005}.car-icon{display:inline-block;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;box-shadow:0 1px 3px #0003}@media only screen and (max-width: 500px){.car-icon{width:25px;height:25px;font-size:1rem}}
