:root{--orange:#ff6b35;--gold:gold;--red:#ff1744;--dark:#1a0a00;--darker:#0d0500;--card:#ff6b3514;--card-border:#ff6b3540;--text:#fff;--muted:#aaa}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{background:var(--darker);color:var(--text);-webkit-tap-highlight-color:transparent;min-height:100vh;font-family:Impact,Arial Black,Haettenschweiler,sans-serif;overflow-x:hidden}.input{border:2px solid var(--orange);width:100%;color:var(--text);text-align:center;background:#ffffff14;border-radius:10px;margin-bottom:.8rem;padding:.9rem 1rem;font-family:inherit;font-size:1.1rem;transition:border-color .2s}.input:focus{border-color:var(--gold);outline:none}.input--sm{padding:.5rem .7rem;font-size:1rem}.input--num{text-align:right;width:80px}.btn{letter-spacing:1px;cursor:pointer;border:none;border-radius:10px;padding:.85rem 1.4rem;font-family:inherit;font-size:1.2rem;transition:transform .1s,box-shadow .15s,opacity .15s;display:inline-block}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:hover:not(:disabled){transform:translateY(-2px)}.btn:active:not(:disabled){transform:scale(.97)}.btn--primary{background:linear-gradient(135deg, var(--orange), var(--red));color:#fff;width:100%;margin-top:.2rem;box-shadow:0 4px 20px #ff6b3573}.btn--primary:hover:not(:disabled){box-shadow:0 6px 28px #ff6b35a6}.btn--eat{background:linear-gradient(135deg, var(--red), var(--orange));color:#fff;letter-spacing:2px;border-radius:16px;width:100%;margin-bottom:.8rem;padding:1.4rem;font-size:1.7rem;box-shadow:0 6px 30px #ff174480}.btn--eat:hover:not(:disabled){box-shadow:0 10px 40px #ff1744b3}.btn--success{background:linear-gradient(135deg,#00c853,#69f0ae)!important;box-shadow:0 6px 30px #00c85380!important}.btn--ghost{color:var(--muted);background:0 0;border:1px solid #444;padding:.5rem 1rem;font-size:.95rem}.btn--ghost:hover:not(:disabled){border-color:var(--orange);color:var(--orange)}.btn--edit{background:var(--orange);color:#fff;padding:.4rem .8rem;font-size:.9rem}.btn--delete{background:var(--red);color:#fff;padding:.4rem .8rem;font-size:.9rem}.btn--save{color:#fff;background:#00c853;padding:.4rem .8rem;font-size:.9rem}.error{color:#ff6b6b;margin-top:.5rem;font-family:Arial,sans-serif;font-size:.95rem;font-weight:400}.falling-dogs{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.falling-dog{opacity:.18;will-change:transform;animation:linear infinite fall;position:absolute;top:-3rem}@keyframes fall{0%{transform:translateY(0) translateX(0) rotate(var(--rot));opacity:0}5%{opacity:.18}95%{opacity:.18}to{transform:translateY(105vh) translateX(var(--drift)) rotate(calc(var(--rot) + 180deg));opacity:0}}.lb{z-index:1;background:radial-gradient(ellipse 80% 50% at 50% 0%, #78280099 0%, transparent 70%), radial-gradient(ellipse 60% 40% at 50% 100%, #50140080 0%, transparent 70%), var(--darker);flex-direction:column;min-height:100vh;padding:2rem clamp(1rem,4vw,4rem);display:flex;position:relative}.lb__header{text-align:center;margin-bottom:2.5rem}.lb__header h1{color:var(--gold);text-shadow:0 0 24px var(--orange), 0 0 50px var(--red);letter-spacing:3px;font-size:clamp(1.8rem,4.5vw,4.5rem);line-height:1.1;animation:2.5s ease-in-out infinite alternate title-glow}@keyframes title-glow{0%{text-shadow:0 0 20px var(--orange), 0 0 40px var(--red)}to{text-shadow:0 0 35px var(--gold), 0 0 70px var(--orange)}}.lb__subtitle{color:var(--orange);margin-top:.4rem;font-size:clamp(.9rem,1.8vw,1.4rem);font-weight:400}.lb__list{flex-direction:column;flex:1;gap:clamp(.5rem,1.5vw,1rem);width:100%;max-width:1000px;margin:0 auto;display:flex}.lb__empty{text-align:center;color:var(--orange);padding:5rem 2rem;font-family:Arial,sans-serif;font-size:clamp(1rem,2.5vw,1.8rem);font-weight:400}.lb__center-btn{z-index:1;justify-content:center;align-items:center;gap:1rem;margin:0 auto 2rem;display:flex;position:relative}.lb__join-btn{letter-spacing:2px;text-transform:uppercase;color:#fff;background:linear-gradient(135deg,#b22234,#3c3b6e);border-radius:50px;padding:.8rem 2.2rem;font-family:inherit;font-size:clamp(1rem,2vw,1.5rem);text-decoration:none;transition:transform .15s,box-shadow .15s;display:inline-block;box-shadow:0 4px 20px #b2223480}.lb__join-btn:hover{transform:translateY(-3px)scale(1.03);box-shadow:0 8px 32px #b22234b3}.lb__sound-btn{z-index:20;cursor:pointer;background:#0000008c;border:1px solid #444;border-radius:50%;justify-content:center;align-items:center;width:3rem;height:3rem;font-size:1.4rem;transition:border-color .2s,background .2s;display:flex;position:fixed;bottom:1.2rem;right:1.2rem}.lb__sound-btn:hover{border-color:var(--orange);background:#000000bf}.lb__admin-btn{letter-spacing:1px;color:var(--muted);vertical-align:middle;border:1px solid #333;border-radius:50px;margin-left:1rem;padding:.5rem 1.2rem;font-family:inherit;font-size:clamp(.7rem,1.2vw,.95rem);text-decoration:none;transition:color .15s,border-color .15s;display:inline-block}.lb__admin-btn:hover{color:var(--orange);border-color:var(--orange)}.card{background:var(--card);border:2px solid var(--card-border);border-radius:14px;grid-template-columns:clamp(48px,7vw,90px) 1fr auto clamp(50px,7vw,90px);align-items:center;gap:clamp(.5rem,2vw,1.5rem);padding:clamp(.6rem,1.5vw,1.2rem) clamp(.8rem,2vw,1.8rem);transition:border-color .3s,background .3s;display:grid}.card--highlighted{border-color:var(--gold);background:#ffd7001f}.card--flash{animation:.4s ease-in-out 4 card-flash}@keyframes card-flash{0%,to{background:#ffd7001f}50%{background:#ffd70061}}.card__rank{text-align:center;font-size:clamp(1.4rem,3.5vw,2.8rem)}.card__name{text-transform:uppercase;letter-spacing:1px;font-size:clamp(1rem,2.8vw,2.2rem)}.card__breakdown{color:var(--muted);gap:clamp(.5rem,1.5vw,1.2rem);font-size:clamp(.85rem,1.8vw,1.3rem);display:flex}.card__count{color:var(--gold);text-align:right;text-shadow:0 0 12px var(--gold);white-space:nowrap;font-size:clamp(1.8rem,4vw,3.5rem)}.card__fu-label{color:var(--orange);vertical-align:super;font-size:clamp(.8rem,1.5vw,1.1rem)}.lb__announcement{pointer-events:none;z-index:200;justify-content:center;align-items:center;animation:.4s ease-in-out 8 bg-flash;display:flex;position:fixed;inset:0}@keyframes bg-flash{0%,to{background:0 0}50%{background:#ff500040}}.lb__announcement span{color:var(--gold);text-shadow:0 0 30px var(--orange);text-align:center;border:3px solid var(--gold);background:#000000c7;border-radius:20px;max-width:90vw;padding:1rem 2.5rem;font-size:clamp(1.6rem,5vw,5rem);animation:.5s ease-in-out infinite alternate announcement-bounce}@keyframes announcement-bounce{0%{transform:scale(1)}to{transform:scale(1.04)}}.portal{background:radial-gradient(ellipse 80% 60% at 50% 100%, #7828008c 0%, transparent 70%), var(--darker);justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.portal__card{background:var(--card);border:2px solid var(--card-border);text-align:center;border-radius:24px;flex-direction:column;align-items:center;gap:.3rem;width:100%;max-width:400px;padding:2.5rem 2rem;display:flex}.portal__logo{margin-bottom:.5rem;font-size:5rem;line-height:1;animation:3s ease-in-out infinite logo-rock;display:block}@keyframes logo-rock{0%,to{transform:rotate(-6deg)scale(1)}50%{transform:rotate(6deg)scale(1.12)}}.portal__card h1{color:var(--gold);letter-spacing:3px;font-size:2.2rem}.portal__card h2{color:var(--orange);margin-bottom:.5rem;font-size:1.1rem;font-weight:400}.portal__card p{color:var(--muted);margin-bottom:.5rem;font-family:Arial,sans-serif;font-size:1rem;font-weight:400}.count-display{flex-direction:column;align-items:center;margin:1rem 0;display:flex}.count-display__number{color:var(--gold);text-shadow:0 0 20px var(--gold);font-size:5.5rem;line-height:1}.count-display__label{color:var(--orange);letter-spacing:3px;font-family:Arial,sans-serif;font-size:.9rem;font-weight:400}.portal__breakdown{color:var(--muted);justify-content:center;gap:1.5rem;margin-bottom:.5rem;font-family:Arial,sans-serif;font-size:1.1rem;font-weight:400;display:flex}.portal__buttons{gap:.75rem;width:100%;display:flex}.portal__buttons .btn--eat{flex:1;padding:1.2rem .5rem;font-size:1.3rem}.btn--beer{background:linear-gradient(135deg,#c8860a,#f5c842)!important;box-shadow:0 6px 30px #c8860a73!important}.btn--beer:hover:not(:disabled){box-shadow:0 10px 40px #c8860aa6!important}.portal__lb-link{color:var(--orange);margin:.5rem 0;font-family:Arial,sans-serif;font-size:1rem;font-weight:400;text-decoration:none}.portal__lb-link:hover{color:var(--gold)}.bonus-banner{z-index:50;letter-spacing:2px;justify-content:center;align-items:center;gap:1rem;padding:.7rem 1.5rem;font-size:clamp(1rem,2.5vw,1.6rem);animation:.8s ease-in-out infinite alternate bonus-pulse;display:flex;position:fixed;top:0;left:0;right:0}.bonus-banner--hotdog{color:#fff;background:linear-gradient(90deg,#ff1744,#ff6b35,#ff1744) 0 0/200% 100%;animation:.8s ease-in-out infinite alternate bonus-pulse,2s linear infinite bonus-slide}.bonus-banner--beer{color:#1a0a00;background:linear-gradient(90deg,#c8860a,#f5c842,#c8860a) 0 0/200% 100%;animation:.8s ease-in-out infinite alternate bonus-pulse,2s linear infinite bonus-slide}@keyframes bonus-pulse{0%{box-shadow:0 0 15px #ff640099}to{box-shadow:0 0 40px #ffc800e6}}@keyframes bonus-slide{0%{background-position:0 0}to{background-position:200% 0}}.bonus-banner--inline{position:relative;top:auto;left:auto;right:auto}.bonus-banner__icon{font-size:1.4em}.bonus-banner__text{font-weight:700}.bonus-banner__timer{opacity:.9;text-align:center;min-width:3.5rem;font-family:Courier New,monospace;font-size:.85em}.btn--bonus{animation:.6s ease-in-out infinite alternate btn-bonus-pulse!important;box-shadow:0 0 25px #ffd700e6!important}@keyframes btn-bonus-pulse{0%{transform:scale(1);box-shadow:0 0 15px #ffd70099}to{transform:scale(1.03);box-shadow:0 0 40px gold}}.portal__alert{z-index:100;color:#fff;background:linear-gradient(135deg,#b22234,#3c3b6e);justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.2rem;font-family:Arial,sans-serif;font-size:1rem;font-weight:700;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 4px 20px #00000080}.portal__alert-close{color:#ffffffb3;cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0 .3rem;font-size:1.2rem}.portal__alert-close:hover{color:#fff}.admin-section{margin-bottom:2rem}.admin-section h2{color:var(--gold);border-bottom:1px solid var(--card-border);margin-bottom:.8rem;padding-bottom:.4rem;font-size:1.2rem}.admin-alert-row{align-items:center;gap:.75rem;display:flex}.admin-alert-row .input{flex:1}.admin-bonus-status{background:var(--card);border:1px solid var(--card-border);border-radius:10px;justify-content:space-between;align-items:center;padding:.8rem 1.2rem;font-family:Arial,sans-serif;font-size:1rem;display:flex}.admin-bonus-buttons{gap:.75rem;display:flex}.admin-login-page{background:var(--darker);justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.admin-page{background:var(--darker);min-height:100vh;padding:2rem}.admin-page__header{border-bottom:2px solid var(--card-border);justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;display:flex}.admin-page__header h1{color:var(--gold);font-size:2rem}.admin-page__empty{color:var(--muted);text-align:center;margin-top:2rem;font-family:Arial,sans-serif;font-weight:400}.admin-table{border-collapse:collapse;background:var(--card);border-radius:12px;width:100%;overflow:hidden}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid #ff6b3526;padding:.9rem 1.2rem;font-family:Arial,sans-serif;font-size:1rem;font-weight:400}.admin-table th{color:var(--gold);letter-spacing:1px;background:#ff6b352e;font-family:inherit;font-size:1rem}.admin-table__actions{gap:.5rem;display:flex}
