body{margin:0}.app{font-family:Arial,Helvetica,sans-serif;background-color:#1d349a;color:#fff;min-height:100vh;height:100%;display:flex;flex-direction:column;align-items:center;margin:0;padding:0;box-sizing:border-box;position:relative}.decorations{position:absolute;width:100%;height:100%;top:0;left:0;pointer-events:none;overflow:hidden}.decoration{position:absolute;width:150px;height:100%;opacity:.8;transition:transform .3s ease}.decoration--1{top:-30%;left:0%;transform:rotate(-10deg)}.decoration--2{top:-30%;right:0%;transform:rotate(0)}.decoration--3{position:fixed;bottom:0;left:0;width:150px;height:150px;transform:rotate(50eg);opacity:.8;pointer-events:none;z-index:1}.decoration--4{position:fixed;bottom:0;right:0;width:150px;height:150px;transform:rotate(-10deg);opacity:.8;pointer-events:none;z-index:1}.app__header{width:100%;display:flex;justify-content:center;position:relative;margin-bottom:2rem;overflow:hidden}.back-arrow-btn{position:absolute;top:20px;left:24px;background:none;border:none;cursor:pointer;z-index:10;padding:0;transition:transform .2s}.back-arrow-btn:hover{transform:scale(1.1)}.header__circle{width:150%;height:200px;background-color:#0f206c;border-radius:0 0 50% 50%/0 0 100% 100%;display:flex;justify-content:center;align-items:flex-end;position:relative;top:0}.app__logo{max-width:400px;height:auto;position:relative;z-index:2;margin-bottom:2%;filter:drop-shadow(0 0 5px #000)}.custom-file-input-container{display:flex;align-items:center;width:100%;max-width:600px;margin:0 auto 1rem}.custom-file-label{background:#232b8c;color:#fff;padding:.7rem 1rem;border-radius:8px 0 0 8px;font-size:1rem;font-weight:400;min-width:180px;text-align:left}.custom-file-input{flex:1;padding:.7rem 1rem;border:none;border-radius:0 8px 8px 0;font-size:1rem;background:#fff;color:#232b8c;font-weight:400;outline:none}.custom-file-input{display:none}.custom-file-btn{flex:1;padding:.7rem 1rem;border:none;border-radius:0 8px 8px 0;font-size:1rem;background:#fff;color:#232b8c;font-weight:400;cursor:pointer}.upload{text-align:center;margin-bottom:0;width:100%;max-width:50%}.upload__title{font-size:2.2rem;margin-bottom:.5rem;font-weight:700;color:#fff}.upload__description{font-size:1.1rem;color:#fff;margin-bottom:1.5rem}.upload__file-container{display:flex;flex-direction:column;align-items:center;gap:.5rem}.upload__file-input{padding:.5rem 1.5rem;border-radius:50px;border:none;font-size:1rem;font-weight:700;cursor:pointer;background:linear-gradient(90deg,#fff,#fff)}.upload__loading{color:#ff9;font-weight:700;margin-top:.5rem}.upload__error{color:#ff4c4c;font-weight:700;margin-top:.5rem;text-shadow:1px 1px 3px rgba(0,0,0,.3)}.scores__header{text-align:center;margin-bottom:2rem}.scores__title{font-size:1.8rem;margin-bottom:.5rem}.scores__subtitle{font-size:25px;color:#fff;margin-bottom:1rem}.scores__clear-btn{padding:.5rem 1rem;border-radius:.5rem;border:none;background-color:#007bff;color:#fff;cursor:pointer}.scores__clear-btn:hover{background-color:#0056b3}.podium{display:flex;justify-content:center;gap:0;margin-bottom:2rem}.podium__place{text-align:center;padding:2rem 5rem;margin-top:2rem}.podium__spacer{display:flex;flex-direction:column;align-items:center}.podium__place--first{background-color:#0f206c;margin-top:10px}.podium__place--second,.podium__place--third{background-color:#4058c4;box-shadow:0 4px 12px #0000001a}.podium__place--first{transform:scale(1.1)}.podium__medal{font-size:2rem;margin-bottom:.5rem}.podium__position{font-weight:700;margin-bottom:.3rem}.podium__name{font-size:20px;align-items:center;font-weight:700;margin-bottom:2rem}.podium__score{font-size:20px;color:#fff;margin-bottom:.3rem;font-weight:700}.podium__base{font-weight:700;padding:.2rem .5rem;border-radius:.3rem;color:#fff}.podium__base--gold{background-color:gold;color:#000}.podium__base--silver{background-color:silver;color:#000}.podium__base--bronze{background-color:#cd7f32;color:#fff}.scores__remaining{margin:2rem 0}.scores__item-blue{background-color:#0f206c}.scores__item-blue-light{background-color:#4058c4}.remaining__title{font-size:1.2rem;margin-bottom:1rem}.remaining__list{display:flex;flex-direction:column;gap:.5rem}.remaining__item{display:flex;justify-content:space-between;padding:.5rem 1rem;border-radius:.5rem;box-shadow:0 2px 6px #0000000d}.remaining__rank{font-weight:700}.remaining__name{flex:1;margin-left:1rem}.remaining__score{font-weight:700}.empty-state{text-align:center;color:#555;margin-top:2rem}.empty-state__text{font-size:1rem}.empty-state__info{font-size:.85rem;color:#888;margin-top:.5rem}.empty-state__text{color:#fff;font-size:14px;margin:0}
