:root{--bg:#0b1220;--bg-2:#111c30;--card:#16233b;--card-2:#1e3050;--line:#26375a;--line-soft:#1b2a44;--text:#eaf0fb;--text-dim:#a9b6d0;--text-faint:#6c7c9c;--gold:#f4c04e;--gold-deep:#d9a327;--gold-soft:rgba(244,192,78,0.14);--green:#34d399;--green-soft:rgba(52,211,153,0.15);--red:#f87171;--red-soft:rgba(248,113,113,0.15);--blue:#60a5fa;--blue-soft:rgba(96,165,250,0.15);--pkt-4:var(--green);--pkt-3:var(--gold);--pkt-2:var(--blue);--pkt-0:var(--text-faint);--r-sm:8px;--r:12px;--r-lg:16px;--r-full:999px;--gap:14px;--pad:16px;--shadow:0 6px 24px rgba(0,0,0,0.35);--shadow-soft:0 2px 10px rgba(0,0,0,0.25);--font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--font-num:"SF Mono",ui-monospace,"Roboto Mono",Menlo,Consolas,monospace;--maxw:640px;--nav-h:60px}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;min-height:100dvh;overscroll-behavior-y:none}body{background:radial-gradient(1200px 600px at 50% -10%,#13233f 0,var(--bg) 55%)}a{color:var(--gold);text-decoration:none}a:hover{color:var(--gold-deep)}h1,h2,h3{margin:0 0 .4em;line-height:1.25;font-weight:700}h1{font-size:1.5rem}h2{font-size:1.2rem}h3{font-size:1rem}.tk-shell{min-height:100dvh;display:flex;flex-direction:column}.tk-main{flex:1 1;width:100%;max-width:var(--maxw);margin:0 auto;padding:var(--pad);padding-bottom:calc(var(--nav-h) + env(safe-area-inset-bottom) + 20px)}.tk-header{position:-webkit-sticky;position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg-2) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line-soft);padding:12px var(--pad);padding-top:calc(12px + env(safe-area-inset-top))}.tk-header-inner{max-width:var(--maxw);margin:0 auto}.tk-brand,.tk-header-inner{display:flex;align-items:center;gap:10px}.tk-brand{font-weight:800;letter-spacing:.3px;color:var(--text)}.tk-brand .dot{width:12px;height:12px;border-radius:var(--r-full);background:var(--gold);box-shadow:0 0 12px var(--gold)}.tk-nav{position:fixed;bottom:0;left:0;right:0;z-index:30;height:calc(var(--nav-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:color-mix(in srgb,var(--bg-2) 94%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line);display:flex;justify-content:center}.tk-nav-inner{width:100%;max-width:var(--maxw);display:flex}.tk-nav a{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--text-faint);font-size:.72rem;font-weight:600;padding:8px 4px;transition:color .15s}.tk-nav a .ico{font-size:1.25rem;line-height:1}.tk-nav a.active{color:var(--gold)}.tk-nav a:hover{color:var(--text)}.card{background:var(--card);border:1px solid var(--line-soft);border-radius:var(--r);padding:var(--pad);box-shadow:var(--shadow-soft)}.card+.card{margin-top:var(--gap)}.card-lg{border-radius:var(--r-lg);padding:20px}.card-hd{display:flex;justify-content:space-between;margin-bottom:12px}.btn,.card-hd{align-items:center}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line);background:var(--card-2);color:var(--text);font-family:inherit;font-size:.95rem;font-weight:600;padding:11px 16px;border-radius:var(--r-sm);cursor:pointer;transition:background .15s,border-color .15s,transform .05s;display:inline-flex;justify-content:center;gap:8px}.btn:hover{background:var(--line)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--gold);border-color:var(--gold);color:#201700}.btn-primary:hover{background:var(--gold-deep);border-color:var(--gold-deep)}.btn-ghost{background:transparent}.btn-block{width:100%}.btn-lg{padding:14px 20px;font-size:1.05rem}.input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;background:var(--bg-2);border:1px solid var(--line);color:var(--text);font-family:inherit;font-size:1rem;padding:11px 12px;border-radius:var(--r-sm)}.input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-soft)}.score-input{width:56px;text-align:center;font-family:var(--font-num);font-size:1.3rem;font-weight:700;padding:10px 4px}.label{display:block;font-size:.8rem;font-weight:600;color:var(--text-dim);margin-bottom:6px}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--r);border:1px solid var(--line-soft)}table.tk-table{width:100%;border-collapse:collapse;font-size:.92rem}.tk-table td,.tk-table th{padding:11px 12px;text-align:left;white-space:nowrap}.tk-table thead th{background:var(--bg-2);color:var(--text-faint);font-size:.75rem;text-transform:uppercase;letter-spacing:.4px;font-weight:700;border-bottom:1px solid var(--line)}.tk-table tbody tr{border-bottom:1px solid var(--line-soft)}.tk-table tbody tr:last-child{border-bottom:none}.tk-table tbody tr:nth-child(odd){background:rgba(255,255,255,.015)}.tk-table .num{font-family:var(--font-num);text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tk-table .rank{color:var(--text-faint);font-family:var(--font-num);width:2.2rem}.tk-table tr.me{background:var(--gold-soft)!important}.badge,.tk-table tr.me td{font-weight:700}.badge{display:inline-flex;align-items:center;gap:5px;font-size:.72rem;padding:3px 9px;border-radius:var(--r-full);background:var(--line);color:var(--text-dim)}.badge-gold{background:var(--gold-soft);color:var(--gold)}.badge-green{background:var(--green-soft);color:var(--green)}.badge-red{background:var(--red-soft);color:var(--red)}.badge-blue{background:var(--blue-soft);color:var(--blue)}.pkt{font-family:var(--font-num);font-weight:800}.pkt-4{color:var(--pkt-4)}.pkt-3{color:var(--pkt-3)}.pkt-2{color:var(--pkt-2)}.pkt-0{color:var(--pkt-0)}.muted{color:var(--text-dim)}.faint{color:var(--text-faint)}.center{text-align:center}.row,.row-between{display:flex;align-items:center;gap:var(--gap)}.row-between{justify-content:space-between}.stack{display:flex;flex-direction:column;gap:var(--gap)}.spacer{flex:1 1}.mt{margin-top:var(--gap)}.mt-lg{margin-top:24px}.hidden{display:none}.empty{text-align:center;color:var(--text-faint);padding:40px 20px}.empty .big{font-size:2.4rem;margin-bottom:8px}@media (prefers-reduced-motion:reduce){*{transition:none!important}}