:root{--green: #58cc02;--green-dark: #3f8f01;--green-light: #d7ffb8;--sky: #1cb0f6;--sky-dark: #1690c9;--red: #ff4b4b;--red-dark: #e63a3a;--white: #ffffff;--cloud: #e5e5e5;--silver: #afafaf;--graphite: #777777;--charcoal: #4b4b4b;--ink: #3c3c3c;--canvas: #ffffff;--alabaster: #ffffff;--tinted: #d7ffb8;--linen: #d7ffb8;--border: #e5e5e5;--fog: #777777;--accent: #58cc02;--flare: #58cc02;--gap: 16px;--pad: 20px;--section: 48px;--radius: 12px;--font-sans: "Nunito Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: "Fredoka", "Nunito Sans", ui-sans-serif, system-ui, sans-serif;--font-code: ui-monospace, SFMono-Regular, Menlo, monospace}*{box-sizing:border-box}body{margin:0;background:var(--white);color:var(--ink);font-family:var(--font-sans);font-size:15px;font-weight:600;line-height:1.45;letter-spacing:.01em;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-mono);font-weight:700;margin:0;color:var(--ink);letter-spacing:-.01em}h2{font-size:28px;line-height:1.2}h3{font-size:19px;line-height:1.2}.num{font-family:var(--font-mono);font-weight:700;font-variant-numeric:tabular-nums}.app{max-width:880px;margin:0 auto;padding:0 20px 72px;animation:fadeIn .25s ease both}.topbar{position:sticky;top:0;z-index:30;display:flex;justify-content:space-between;align-items:center;background:var(--white);border-bottom:2px solid var(--cloud);padding:14px 0;margin-bottom:var(--section)}.topbar .brand{font-family:var(--font-mono);font-weight:700;font-size:22px;color:var(--green);letter-spacing:-.01em}.topbar .num{font-size:20px;color:var(--green);display:inline-flex;align-items:center;gap:8px}.tag{display:inline-flex;align-items:center;gap:5px;background:var(--green);color:#fff;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:4px 10px;border-radius:999px}.admin-tag{background:var(--sky)}.nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:var(--section)}.nav button{background:var(--white);border:2px solid var(--cloud);color:var(--charcoal);padding:9px 16px;font-family:var(--font-sans);font-size:14px;font-weight:700;letter-spacing:.02em;cursor:pointer;border-radius:var(--radius);display:inline-flex;align-items:center;gap:7px;transition:background .12s ease,color .12s ease,border-color .12s ease,transform .05s ease}.nav button:hover{background:#f7f7f7}.nav button.active{background:var(--green);color:#fff;border-color:var(--green);box-shadow:0 3px 0 var(--green-dark)}.nav button.active.admin{background:var(--sky);border-color:var(--sky);box-shadow:0 3px 0 var(--sky-dark)}.nav button:disabled,.nav button:disabled:hover{color:var(--silver);background:var(--white);border-color:var(--cloud);cursor:not-allowed;box-shadow:none}.navpill{display:none}.navlabel{display:inline-flex;align-items:center;gap:7px}.tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:var(--gap)}.tabs button{background:var(--white);border:2px solid var(--cloud);padding:6px 14px;font-family:var(--font-sans);font-size:13px;font-weight:700;letter-spacing:.02em;cursor:pointer;border-radius:var(--radius);color:var(--graphite);transition:background .12s,color .12s,border-color .12s}.tabs button:hover{background:#f7f7f7}.tabs button.active{background:var(--green-light);color:#4b8b00;border-color:var(--green)}.card{background:var(--white);border:2px solid var(--cloud);padding:var(--pad);margin-bottom:var(--gap);border-radius:var(--radius);animation:fadeUp .35s ease both}.stat-row{display:flex;gap:var(--gap);flex-wrap:wrap}.stat{flex:1;min-width:120px;background:var(--green-light);color:var(--ink);border:2px solid var(--green);padding:16px;border-radius:var(--radius)}.stat .label{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#4b8b00;font-weight:700}.stat .value{font-family:var(--font-mono);font-weight:700;font-size:32px;line-height:1.1;margin-top:2px;color:#4b8b00}.match{background:var(--white);border:2px solid var(--cloud);padding:16px;margin-bottom:var(--gap);border-radius:var(--radius);animation:fadeUp .35s ease both;transition:border-color .15s ease}.match:hover{border-color:var(--silver)}.match.soon{border-color:var(--green)}.match-head{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--graphite);text-transform:uppercase;letter-spacing:.04em;font-weight:700;margin-bottom:12px}.teams{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px}.team{display:flex;align-items:center;gap:9px}.team.away{justify-content:flex-end}.team .flag{font-size:22px;line-height:1}.team .nm{font-weight:700;font-size:15px}.score-in{width:48px;text-align:center;font-family:var(--font-mono);font-weight:700;font-size:20px;padding:7px;border:2px solid var(--cloud);border-radius:var(--radius);background:var(--white);color:var(--ink)}.score-in:focus{outline:none;border-color:var(--green)}.score-in:disabled{background:#f7f7f7;color:var(--silver)}.vs{font-family:var(--font-mono);color:var(--silver);font-size:16px}.final-score{font-family:var(--font-mono);font-weight:700;font-size:19px}.betbar{display:flex;align-items:center;gap:14px;margin-top:14px;flex-wrap:wrap}.betbar .grow,.bet-edit .preview{flex:1}.stake-toggle{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:700;cursor:pointer;color:var(--ink)}.stake-toggle input{width:18px;height:18px;accent-color:var(--green)}.preview{font-size:13px;color:var(--graphite)}.preview .pts{font-weight:700;color:var(--green)}.locked{font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:var(--graphite);font-weight:700;display:inline-flex;align-items:center;gap:6px}table{width:100%;border-collapse:collapse;background:var(--white);border:2px solid var(--cloud);border-radius:var(--radius);overflow:hidden}th,td{text-align:left;padding:10px 14px;border-bottom:2px solid var(--cloud)}th{font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;background:#f7f7f7;color:var(--graphite)}td{font-size:14px}td.num,th.num{text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums}tr.me td{background:var(--green-light)}tbody tr:last-child td{border-bottom:none}.btn{font-family:var(--font-sans);font-size:14px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;background:var(--green);color:#fff;border:none;padding:11px 20px;cursor:pointer;border-radius:var(--radius);box-shadow:0 4px 0 var(--green-dark);display:inline-flex;align-items:center;gap:7px;transition:transform .05s ease,box-shadow .05s ease,background .12s ease}.btn:hover{background:#61d904}.btn:active{transform:translateY(3px);box-shadow:0 1px 0 var(--green-dark)}.btn:disabled{background:var(--silver);box-shadow:0 4px #8f8f8f;cursor:default}.btn:disabled:active{transform:none;box-shadow:0 4px #8f8f8f}.btn.sm{padding:8px 14px;font-size:13px}.btn.ghost{background:var(--white);color:var(--sky);border:2px solid var(--cloud);box-shadow:0 3px 0 var(--cloud)}.btn.ghost:hover{background:#f7f7f7}.btn.ghost:active{transform:translateY(2px);box-shadow:0 1px 0 var(--cloud)}input,select{font-family:var(--font-sans);font-size:14px;font-weight:600;border-radius:var(--radius);color:var(--ink)}input::placeholder{color:var(--silver)}.field{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}.field label{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--graphite);font-weight:700}.field input,.field select{padding:10px 12px;border:2px solid var(--cloud);border-radius:var(--radius);background:var(--white)}.field input:focus,.field select:focus{outline:none;border-color:var(--sky)}.row{display:flex;gap:12px;flex-wrap:wrap;align-items:end}.muted{color:var(--graphite)}.error{color:var(--red);font-weight:700}.code{font-family:var(--font-code);font-size:12px;background:#f7f7f7;border:2px solid var(--cloud);padding:2px 8px;border-radius:8px;word-break:break-all;color:var(--graphite)}.phase-msg{font-size:13px;color:var(--green);font-weight:700}.coin-hero{display:flex;align-items:center;gap:24px;background:var(--green-light);color:var(--ink);border:2px solid var(--green);padding:24px;margin-bottom:var(--gap);border-radius:var(--radius);animation:fadeUp .4s ease both}.coin-hero h2{color:#4b8b00}.coin-hero h3{color:var(--ink)}.coin-hero .muted{color:#5a7d33}.coin-hero-count{display:flex;flex-direction:column;line-height:1}.coin-hero-count .num{font-size:52px;color:#4b8b00}.coin-hero-label{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#5a7d33;font-weight:700;margin-top:8px}.coin-hero-sub{font-size:13px;color:#4b8b00;margin-top:8px;font-weight:700;display:inline-flex;align-items:center;gap:6px}.team-chips{display:flex;flex-wrap:wrap;gap:6px;max-height:240px;overflow-y:auto;padding:8px;border:2px solid var(--cloud);background:var(--white);border-radius:var(--radius)}.team-chip{font-family:var(--font-sans);font-size:13px;font-weight:700;padding:7px 12px;cursor:pointer;background:var(--white);border:2px solid var(--cloud);color:var(--ink);border-radius:var(--radius);transition:background .12s,color .12s,border-color .12s}.team-chip:hover:not(:disabled){background:#f7f7f7}.team-chip.on{background:var(--green);border-color:var(--green);color:#fff}.team-chip:disabled{opacity:.4;cursor:default}.badge{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:3px 9px;border-radius:999px;border:2px solid var(--cloud);color:var(--graphite)}.badge.soon-badge{background:var(--green);border-color:var(--green);color:#fff}.badge.live{background:var(--red);border-color:var(--red);color:#fff}.badge.live:before{content:"";width:6px;height:6px;border-radius:50%;background:#fff;animation:pulse 1.1s infinite}.badge.finished{background:var(--ink);border-color:var(--ink);color:#fff}.badge.scheduled{background:var(--white)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.tip-warn{display:flex;align-items:center;gap:8px;margin:2px 0 12px;padding:9px 12px;border-radius:var(--radius);background:#fff0f0;border:2px solid var(--red);color:var(--red-dark);font-weight:700;font-size:13px}.skeleton{position:relative;overflow:hidden;background:#efefef;border-radius:var(--radius)}.skeleton:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.6),transparent);animation:shimmer 1.3s infinite}@keyframes shimmer{to{transform:translate(100%)}}.coin3d{perspective:600px;display:inline-block}.coin3d__inner{transform-style:preserve-3d;animation:spinY 12s linear infinite}.coin3d__face{position:absolute;top:0;right:0;bottom:0;left:0;backface-visibility:hidden}.coin3d__face--back{transform:rotateY(180deg)}@keyframes spinY{0%{transform:rotateY(0)}to{transform:rotateY(360deg)}}.podium{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;align-items:end;margin-bottom:var(--section)}.podium .step{border:2px solid var(--cloud);border-radius:var(--radius);padding:14px 8px;text-align:center;background:var(--white);color:var(--ink)}.podium .p1{background:var(--green);color:#fff;border-color:var(--green);box-shadow:0 4px 0 var(--green-dark);order:2;min-height:140px}.podium .p2{order:1;min-height:112px;background:var(--green-light);border-color:var(--green)}.podium .p3{order:3;min-height:92px}.podium .rank{display:inline-flex;align-items:center;justify-content:center}.podium .who{font-weight:700;font-size:14px;margin-top:6px;word-break:break-word}.podium .pts{font-family:var(--font-mono);font-weight:700;font-size:18px;margin-top:2px;font-variant-numeric:tabular-nums}.urows{display:flex;flex-direction:column;gap:8px}.urow{display:flex;align-items:center;gap:12px;background:var(--white);border:2px solid var(--cloud);border-radius:var(--radius);padding:10px 14px}.urow-name{flex:1;min-width:0;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.urow-coins{color:var(--graphite);white-space:nowrap;font-size:14px;font-weight:700;display:inline-flex;align-items:center;gap:5px}.urow .btn.sm{white-space:nowrap;flex:0 0 auto}.others{margin-top:12px;border-top:2px solid var(--cloud);padding-top:8px}.others-toggle{background:none;border:none;cursor:pointer;padding:0;font-family:var(--font-sans);font-size:13px;font-weight:700;color:var(--sky);display:inline-flex;align-items:center;gap:6px}.others-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.others-list li{display:flex;justify-content:space-between;gap:12px;font-size:14px;padding:6px 0;border-bottom:2px solid var(--cloud)}.others-list li:last-child{border-bottom:none}.others-list .on{font-weight:700;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.others-list .ot{white-space:nowrap;color:var(--graphite);text-align:right;display:inline-flex;align-items:center;gap:5px;font-weight:700}.others-list .oc{color:var(--green);font-weight:700}.group-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media(max-width:680px){.group-grid{grid-template-columns:1fr}}.ico{display:inline-flex;align-items:center}.ico-inline{vertical-align:-2px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.match:nth-child(1){animation-delay:.02s}.match:nth-child(2){animation-delay:.05s}.match:nth-child(3){animation-delay:.08s}.match:nth-child(4){animation-delay:.11s}.match:nth-child(5){animation-delay:.14s}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.bottom-nav{display:none}@media(max-width:680px){.app{padding:0 14px calc(84px + env(safe-area-inset-bottom,0px))}.topbar{margin-bottom:24px}.nav{display:none}.bottom-nav{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:40;padding:6px 6px calc(6px + env(safe-area-inset-bottom,0px));background:var(--white);border-top:2px solid var(--cloud)}.bottom-nav button{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;background:none;border:none;cursor:pointer;color:var(--silver);font-family:var(--font-sans);font-size:10px;font-weight:700;letter-spacing:.02em;padding:7px 2px;border-radius:var(--radius);min-height:48px}.bottom-nav button.active{color:var(--green)}.bottom-nav button:disabled{color:#cfcfcf}table,thead,tbody,tr,th,td{display:block}table{border:none;background:none;border-radius:0}thead{display:none}tbody tr{background:var(--white);border:2px solid var(--cloud);border-radius:var(--radius);margin-bottom:8px;padding:6px 12px}tbody tr.me{background:var(--green-light)}td{display:flex;justify-content:space-between;gap:14px;border:none;padding:3px 0;text-align:right}td:before{content:attr(data-label);font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--graphite);text-align:left;font-weight:700}td.num,th.num{text-align:right}td .btn.ghost.sm{min-height:34px}.coin-hero{flex-direction:column;text-align:center;gap:14px;padding:20px 16px}.coin-hero-count .num{font-size:44px}.teams{grid-template-columns:1fr auto 1fr;gap:8px;align-items:center}.team{min-width:0;gap:6px}.team .nm{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.team .flag{font-size:20px}.score-in{width:42px;font-size:18px;padding:6px 2px}.vs{font-size:14px}.betbar{gap:8px;margin-top:10px}.bet-edit{display:grid;grid-template-columns:auto 1fr;gap:8px 10px;align-items:center}.bet-edit .stake-toggle{grid-column:1}.bet-edit .preview{grid-column:2;justify-self:end;text-align:right;flex:none}.bet-edit .save-btn{grid-column:1 / -1;width:100%;justify-content:center}.card{padding:16px}.match{padding:14px;margin-bottom:10px}h2{font-size:24px}.tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px}.tabs button{flex:0 0 auto}.tabs::-webkit-scrollbar{display:none}.field{margin-bottom:8px}.row{gap:8px}table.lb tbody tr{display:flex;align-items:center;gap:10px;padding:8px 14px}table.lb td{display:block;padding:0;border:none;text-align:left}table.lb td:before{display:none}table.lb td[data-label="#"]{font-weight:700;font-size:16px;min-width:22px;font-variant-numeric:tabular-nums}table.lb td[data-label=Spieler]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}table.lb td[data-label=Coins]{font-weight:700;font-variant-numeric:tabular-nums}table.tbl-ledger tbody tr{display:grid;grid-template-columns:1fr auto;gap:2px 10px;padding:8px 14px}table.tbl-ledger td{display:block;padding:0;border:none}table.tbl-ledger td:before{display:none}table.tbl-ledger td[data-label=Grund]{grid-column:1;grid-row:1;font-weight:700}table.tbl-ledger td[data-label="Δ Coins"]{grid-column:2;grid-row:1;text-align:right;font-weight:700;font-variant-numeric:tabular-nums}table.tbl-ledger td[data-label=Wann]{grid-column:1 / -1;grid-row:2;font-size:11px;color:var(--graphite)}}
