*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;line-height:1.6;color:#333;background-color:#f5f5f5}.app{min-height:100vh}.home{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;text-align:center;padding:2rem}.home h1{margin-bottom:1rem;color:#2c3e50}.home a{color:#3498db}.page{max-width:1200px;margin:0 auto;padding:2rem}.page-header{margin-bottom:2rem}.page-header h1{color:#2c3e50;margin-bottom:.5rem}.page-header .subtitle{color:#7f8c8d;font-size:1.1rem}.card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem;margin-bottom:1rem}.table-container{overflow-x:auto}table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a}th,td{padding:1rem;text-align:left;border-bottom:1px solid #ecf0f1}th{background:#2c3e50;color:#fff;font-weight:600}tr:hover{background:#f8f9fa}tr.winner{background:#fff9e6}tr.winner:hover{background:#fff3cc}.btn{display:inline-block;padding:.75rem 1.5rem;border:none;border-radius:4px;font-size:1rem;cursor:pointer;text-decoration:none;transition:background-color .2s}.btn-primary{background:#3498db;color:#fff}.btn-primary:hover{background:#2980b9}.btn-secondary{background:#95a5a6;color:#fff}.btn-secondary:hover{background:#7f8c8d}.btn-success{background:#27ae60;color:#fff}.btn-success:hover{background:#219a52}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:#2c3e50}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 2px #3498db33}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:2rem}.stat-card{background:#fff;border-radius:8px;padding:1.5rem;text-align:center;box-shadow:0 2px 4px #0000001a}.stat-card .value{font-size:2rem;font-weight:700;color:#2c3e50}.stat-card .label{color:#7f8c8d;font-size:.9rem}.loading{display:flex;align-items:center;justify-content:center;min-height:200px;color:#7f8c8d}.error{background:#fee;border:1px solid #fcc;color:#c00;padding:1rem;border-radius:4px;margin-bottom:1rem}.rank{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;font-weight:700;font-size:.9rem}.rank-1{background:gold;color:#333}.rank-2{background:silver;color:#333}.rank-3{background:#cd7f32;color:#fff}.rank-other{background:#ecf0f1;color:#7f8c8d}.winner-badge{display:inline-block;background:#f1c40f;color:#333;padding:.25rem .5rem;border-radius:4px;font-size:.8rem;font-weight:700;margin-left:.5rem}.nav{background:#2c3e50;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center}.nav-brand{color:#fff;font-size:1.2rem;font-weight:700;text-decoration:none}.nav-links{display:flex;gap:1rem}.nav-links a{color:#bdc3c7;text-decoration:none}.nav-links a:hover{color:#fff}.date-nav{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.date-nav button{background:#ecf0f1;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer}.date-nav button:hover{background:#bdc3c7}.date-nav button:disabled{opacity:.5;cursor:not-allowed}.date-nav .current-date{font-weight:700;font-size:1.1rem}
