*{box-sizing:border-box;margin:0;padding:0}:root{--primary:#1a1a1a;--secondary:#dc143c;--accent:#ff6b6b;--light:#f8f9fa;--border:#e9ecef;--text-primary:#1a1a1a;--text-secondary:#6c757d}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}#root{flex-direction:column;min-height:100dvh;display:flex}#root>*{min-width:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--light);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6}h1,h2,h3,h4,h5,h6{letter-spacing:-.5px;font-weight:700}h1{font-size:2.5rem}h2{font-size:1.75rem}a{color:var(--secondary);text-decoration:none;transition:color .2s}a:hover{color:var(--accent)}button{font-family:inherit}.nav-menu{border-top:2px solid var(--border);flex-wrap:wrap;align-items:center;gap:12px;margin-top:32px;padding-top:24px;display:flex}.nav-menu-link{color:#fff;text-transform:uppercase;letter-spacing:.5px;background:linear-gradient(135deg, var(--secondary), var(--accent));border-radius:8px;padding:12px 20px;font-size:13px;font-weight:700;transition:all .2s;box-shadow:0 4px 12px #dc143c26}@media (hover:hover){.nav-menu-link:hover{color:#fff;transform:translateY(-2px);box-shadow:0 6px 16px #dc143c40}}.nav-menu-link.active{color:var(--text-secondary);border:2px solid var(--border);box-shadow:none;cursor:default;background:0 0;padding:10px 18px}.nav-menu-link.active:hover{color:var(--text-secondary);box-shadow:none;transform:none}.nav-menu-signout{border:2px solid var(--border);min-height:44px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;cursor:pointer;box-shadow:none;background:0 0;border-radius:8px;padding:10px 18px;font-size:13px;font-weight:700;transition:all .2s}.nav-menu-signout:hover:not(:disabled){color:var(--secondary);border-color:var(--secondary);box-shadow:none;background:0 0;transform:none}.form-container .nav-menu{flex-direction:column;align-items:stretch;gap:10px}.form-container .nav-menu .nav-menu-link,.form-container .nav-menu .nav-menu-signout{text-align:center}@media (width<=560px){.nav-menu{flex-direction:column;align-items:stretch;gap:10px}.nav-menu-link,.nav-menu-signout{text-align:center}}.register-page,.submit-page{background:linear-gradient(135deg, var(--light) 0%, #fff 100%);flex-direction:column;flex:1 0 auto;justify-content:center;align-items:center;width:100%;padding:20px;display:flex}.form-container{border-top:4px solid var(--secondary);background:#fff;border-radius:12px;width:100%;max-width:420px;padding:50px;box-shadow:0 10px 40px #00000014}.form-container h1{background:linear-gradient(135deg, var(--primary), var(--secondary));-webkit-text-fill-color:transparent;letter-spacing:-1px;-webkit-background-clip:text;background-clip:text;margin-bottom:12px;font-size:32px}.form-container p{color:var(--text-secondary);margin-bottom:30px;font-size:15px}form{flex-direction:column;gap:18px;display:flex}.form-group{flex-direction:column;gap:8px;display:flex}.form-group label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-primary);font-size:13px;font-weight:600}input[type=text],input[type=number],select{border:2px solid var(--border);background-color:#fafbfc;border-radius:8px;padding:14px 16px;font-family:inherit;font-size:16px;transition:all .3s}input[type=text]:hover,input[type=number]:hover,select:hover{background-color:#fff;border-color:#ccc}input[type=text]:focus,input[type=number]:focus,select:focus{border-color:var(--secondary);background-color:#fff;outline:none;box-shadow:0 0 0 4px #dc143c14}input:disabled,select:disabled{background-color:var(--light);cursor:not-allowed;opacity:.5}button{background:linear-gradient(135deg, var(--secondary), var(--accent));color:#fff;cursor:pointer;text-transform:uppercase;letter-spacing:.5px;border:none;border-radius:8px;padding:14px;font-size:15px;font-weight:700;transition:all .3s;box-shadow:0 4px 15px #dc143c33}button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #dc143c4d}button:active:not(:disabled){transform:translateY(0)}button:disabled{background:var(--border);cursor:not-allowed;box-shadow:none}.error{color:#d32f2f;background-color:#fff5f5;border-inline-start:4px solid #d32f2f;border-radius:6px;margin-top:12px;padding:12px 14px;font-size:14px}.success{color:#388e3c;background-color:#f0fdf4;border-inline-start:4px solid #388e3c;border-radius:6px;margin-top:12px;padding:12px 14px;font-size:14px}.nav-links{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:center;gap:20px;margin-top:30px;padding-top:20px;display:flex}.nav-links a{text-transform:uppercase;letter-spacing:.5px;font-size:13px;font-weight:600;transition:all .2s}.nav-links a:hover{opacity:.7}.submit-page p{color:var(--text-secondary);margin-top:10px;font-size:14px}@media (width<=560px){.form-container{padding:24px 20px}.form-container h1{font-size:24px}.form-container p{margin-bottom:20px}}.table-scroll{overscroll-behavior-x:contain;scrollbar-width:thin;-webkit-overflow-scrolling:touch;border-radius:10px;max-width:100%;margin:24px 0;overflow-x:auto;box-shadow:0 4px 12px #0000000f}.leaderboard-table{border-collapse:collapse;background:#fff;width:100%;min-width:max-content}.leaderboard-table thead{background:linear-gradient(135deg, var(--primary), #2a2a2a);border-bottom:none}.leaderboard-table th{text-align:start;color:#fff;text-transform:uppercase;letter-spacing:.5px;padding:16px;font-size:13px;font-weight:700}.leaderboard-table td{border-bottom:1px solid var(--border);padding:16px;font-size:15px}.leaderboard-table tbody tr{transition:all .2s}@media (hover:hover){.leaderboard-table tbody tr:hover{background-color:#fafbfc}}.leaderboard-table tbody tr:last-child td{border-bottom:none}.leaderboard-table .rank{width:60px;font-size:16px;font-weight:700}.leaderboard-table .value{text-align:end;color:var(--secondary);font-weight:700}.leaderboard-table .rm{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:14px}.leaderboard-table tbody tr:first-child{background-color:#fffaf0}.leaderboard-table tbody tr:first-child td{padding-top:18px;padding-bottom:18px}.leaderboard-table tbody tr:first-child td.rank{color:orange;font-size:18px}.leaderboard-table tbody tr:first-child td.value{color:#ff8c00}.leaderboard-table tbody tr:nth-child(2) td.rank{color:silver;font-size:17px}.leaderboard-table tbody tr:nth-child(3) td.rank{color:#cd7f32;font-size:17px}@media (width<=560px){.leaderboard-table th,.leaderboard-table td{padding:10px}.leaderboard-table td{font-size:14px}.leaderboard-table tbody tr:first-child td{padding-top:12px;padding-bottom:12px}.leaderboard-table .rank{width:40px}.table-scroll{-webkit-mask-image:linear-gradient(270deg,#000 calc(100% - 24px),#0000);mask-image:linear-gradient(270deg,#000 calc(100% - 24px),#0000)}}.page{background:linear-gradient(180deg, var(--light) 0%, #fff 100%);flex:1 0 auto;width:100%;max-width:1200px;margin:0 auto;padding:50px 20px}.page-header{border-bottom:3px solid var(--secondary);margin-bottom:40px;padding-bottom:30px}.page-header h1{background:linear-gradient(135deg, var(--primary), var(--secondary));-webkit-text-fill-color:transparent;letter-spacing:-1px;-webkit-background-clip:text;background-clip:text;margin-bottom:12px;font-size:40px}.page-header p{color:var(--text-secondary);font-size:16px;font-weight:500}.page-header .unit{color:var(--accent);text-transform:uppercase;letter-spacing:.5px;margin-top:8px;font-size:14px;font-weight:600}.page p{color:var(--text-secondary);margin:16px 0;font-size:15px;line-height:1.7}.page p a{color:var(--secondary);font-weight:600}.page .error{color:#d32f2f;background-color:#fff5f5;border-inline-start:4px solid #d32f2f;border-radius:8px;margin:16px 0;padding:14px 16px;font-weight:500}.benchmarks-grid{gap:32px;margin:40px 0;display:grid}.benchmark-section{border:2px solid var(--border);background:#fff;border-radius:12px;min-width:0;padding:28px;transition:all .3s;box-shadow:0 4px 12px #0000000a}@media (hover:hover){.benchmark-section:hover{border-color:var(--secondary);box-shadow:0 8px 24px #00000014}}.benchmark-section h2{border-bottom:none;margin-bottom:20px;padding-bottom:0;font-size:24px}.benchmark-section h2 a{color:var(--primary);font-weight:700;transition:all .2s;display:inline-block}@media (hover:hover){.benchmark-section h2 a:hover{color:var(--secondary);transform:translate(-4px)}}.benchmark-section p{color:var(--text-secondary);font-size:14px}.nav-links{border-top:2px solid var(--border);flex-wrap:wrap;gap:24px;margin-top:40px;padding-top:24px;display:flex}.nav-links a{color:#fff;text-transform:uppercase;letter-spacing:.5px;background:linear-gradient(135deg, var(--secondary), var(--accent));border-radius:8px;padding:12px 20px;font-size:13px;font-weight:700;transition:all .2s;box-shadow:0 4px 12px #dc143c26}@media (hover:hover){.nav-links a:hover{transform:translateY(-2px);box-shadow:0 6px 16px #dc143c40}}@media (width<=560px){.page{padding:28px 14px}.page-header{margin-bottom:24px;padding-bottom:18px}.page-header h1{letter-spacing:-.5px;font-size:26px}.benchmarks-grid{gap:20px;margin:24px 0}.benchmark-section{padding:14px}.benchmark-section h2{margin-bottom:12px;font-size:20px}}.matrix-page{background:linear-gradient(180deg, var(--light) 0%, #fff 100%);flex:1 0 auto;width:100%;max-width:1200px;margin:0 auto;padding:50px 20px;display:block}.matrix-page>p{color:var(--text-secondary);margin:16px 0;font-size:15px}.matrix-scroll{border:2px solid var(--border);-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:thin;background:#fff;border-radius:12px;max-width:100%;margin:32px 0;overflow-x:auto;box-shadow:0 4px 12px #0000000a}.matrix-table{border-collapse:separate;border-spacing:0;width:100%;min-width:max-content}.matrix-table th,.matrix-table td{border-bottom:1px solid var(--border);white-space:nowrap;text-align:start;padding:14px 16px}.matrix-table tbody tr:last-child th,.matrix-table tbody tr:last-child td{border-bottom:none}.matrix-table thead th{background:var(--primary);color:#fff;text-transform:uppercase;letter-spacing:.5px;vertical-align:top;font-size:13px;font-weight:700}.matrix-table thead button{all:unset;cursor:pointer;font:inherit;color:inherit;letter-spacing:inherit;text-transform:inherit;display:block}.matrix-table thead button:hover{color:var(--accent)}.matrix-table thead button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.matrix-unit{opacity:.6;text-transform:none;margin-top:4px;font-size:11px;font-weight:500;display:block}.matrix-table .matrix-name-col{z-index:1;border-inline-end:2px solid var(--border);background:#fff;font-weight:700;position:sticky;inset-inline-start:0}.matrix-table thead .matrix-name-col{z-index:2;background:var(--primary)}@media (hover:hover){.matrix-table tbody tr:hover th.matrix-name-col,.matrix-table tbody tr:hover td{background-color:#fafbfc}}.matrix-score{align-items:baseline;gap:6px;display:inline-flex}.matrix-value{color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:15px;font-weight:700}.matrix-note{color:var(--text-secondary);font-size:12px;font-weight:500}.matrix-empty{color:var(--border)}.matrix-table td.matrix-leader{background-color:#fffaf0}.matrix-table td.matrix-leader .matrix-value{color:#ff8c00}@media (hover:hover){.matrix-table tbody tr:hover td.matrix-leader{background-color:#fff5e6}}@media (width<=560px){.matrix-page{padding:28px 14px}.matrix-scroll{margin:24px 0}.matrix-table th,.matrix-table td{padding:12px}.matrix-value{font-size:14px}}.user-badge-name{text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);background:var(--light);border:2px solid var(--border);white-space:nowrap;border-radius:999px;padding:8px 14px;font-size:12px;font-weight:700}.app-header{border-bottom:2px solid var(--border);background:#fff}.app-header-inner{justify-content:space-between;align-items:center;gap:16px;max-width:1200px;margin:0 auto;padding:16px 20px;display:flex}.app-header-brand{letter-spacing:-.5px;background:linear-gradient(135deg, var(--primary), var(--secondary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:20px;font-weight:700;transition:opacity .2s}.app-header-brand:hover{opacity:.75}@media (width<=560px){.app-header-inner{gap:12px;padding:14px 16px}.app-header-brand{font-size:17px}}
