:root{--navy:#0b1736;--navy2:#111f45;--gold:#d4af37;--cream:#f6f3ea;--white:#fff;--muted:#a9b1c6;--green:#43d19e;--red:#ef6672;--line:rgba(255,255,255,.11);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color-scheme:dark}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:radial-gradient(circle at 10% -10%,#243668 0,transparent 38%),var(--navy);color:var(--white)}body{padding-bottom:env(safe-area-inset-bottom)}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.topbar{height:66px;padding:0 clamp(18px,4vw,54px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(7,15,36,.78);backdrop-filter:blur(16px);position:sticky;top:0;z-index:10}.brand{font-weight:850;letter-spacing:-.03em;font-size:21px}.brand span{color:var(--gold)}.brand small{font-size:10px;background:var(--gold);color:#111936;padding:2px 5px;border-radius:4px;margin-left:4px}.game-code{color:var(--muted);font-size:14px}.game-code strong{color:var(--white);letter-spacing:.15em;font-size:18px;margin-left:5px}main{width:min(1080px,calc(100% - 32px));margin:auto;padding:44px 0 70px}.hero{text-align:center;max-width:760px;margin:12px auto 42px}.eyebrow{color:var(--gold);font-weight:800;font-size:12px;letter-spacing:.18em;margin:0 0 10px}.hero h1,.page-head h1,.display-head h1{font-size:clamp(36px,7vw,68px);line-height:1.02;letter-spacing:-.055em;margin:0 0 18px}.hero h1 span{color:var(--gold)}.hero>p:last-child,.page-head>p:last-child{color:var(--muted);font-size:18px;line-height:1.6}.card{background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.045));border:1px solid var(--line);border-radius:22px;padding:clamp(20px,4vw,34px);box-shadow:0 18px 60px rgba(0,0,0,.18)}.setup-card{max-width:760px;margin:auto}.join-card{max-width:760px;margin:18px auto 0}.card h2{font-size:22px;margin:0 0 22px}label{display:block;font-weight:700;margin:22px 0 9px}label small{color:var(--muted);font-weight:500}.game-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.game-choice{margin:0;cursor:pointer}.game-choice input{position:absolute;opacity:0}.game-choice span,.game-choice strong{display:block}.game-choice{padding:17px;border:1px solid var(--line);border-radius:14px;background:rgba(0,0,0,.12);text-align:center}.game-choice:has(input:checked){border-color:var(--gold);box-shadow:0 0 0 2px rgba(212,175,55,.17);background:rgba(212,175,55,.08)}.game-icon{font-size:28px;margin-bottom:6px}textarea,input[type=text],input[type=number],#join-code{width:100%;border:1px solid var(--line);border-radius:12px;background:rgba(0,0,0,.22);color:white;padding:14px;outline:none}textarea:focus,input:focus{border-color:var(--gold)}textarea{resize:vertical}.button{border:1px solid transparent;border-radius:12px;padding:13px 18px;font-weight:800;cursor:pointer;text-align:center;display:inline-flex;align-items:center;justify-content:center}.primary{background:var(--gold);color:#111936;width:100%;margin-top:18px}.secondary{border-color:var(--line);background:rgba(255,255,255,.07);color:white}.full{display:flex;width:100%;margin-top:18px}.inline-form{display:flex;gap:10px}.inline-form .button{min-width:120px}.page-head{text-align:center;margin:10px auto 34px}.page-head.compact h1{font-size:clamp(30px,7vw,48px);margin-bottom:8px}.page-head.compact p:last-child{font-size:14px;margin:0}.lobby-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:18px}.player-list{display:grid;gap:10px}.player-button{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;padding:10px 14px;border-radius:13px;background:rgba(0,0,0,.16);border:1px solid var(--line);font-weight:750}.player-button:hover{border-color:var(--gold)}.avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:#121a35;font-weight:900}.qr-card{text-align:center}.qr-card img{width:min(100%,220px);border-radius:13px;border:8px solid white}.qr-card p{color:var(--muted)}.qr-card strong{color:white;letter-spacing:.13em}.score-card{max-width:760px;margin:auto}.score-section-title{font-size:13px;color:var(--gold);letter-spacing:.12em;margin:22px 0 7px}.score-row{display:grid;grid-template-columns:1fr 100px;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.score-row input{text-align:center;font-weight:850;font-size:18px}.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:18px}.summary{border-radius:12px;background:rgba(0,0,0,.17);padding:13px;text-align:center;color:var(--muted);font-size:12px}.summary strong{display:block;color:white;font-size:23px;margin-top:4px}.action-row{display:flex;justify-content:center;gap:10px;margin-top:18px}.phase-form,.free-form{max-width:760px;margin:auto}.phase-player{display:grid;grid-template-columns:1fr auto 100px;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.toggle{display:flex!important;align-items:center;gap:7px;margin:0!important;font-size:13px}.toggle input{width:22px;height:22px;accent-color:var(--gold)}.free-form .inline-form{display:grid;grid-template-columns:1fr 1fr auto}.free-form .button{margin:0}.leader-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.leader-card{position:relative;overflow:hidden;padding:24px;border-radius:19px;background:rgba(255,255,255,.07);border:1px solid var(--line)}.leader-card.first{border-color:var(--gold);background:linear-gradient(145deg,rgba(212,175,55,.2),rgba(255,255,255,.05))}.rank{color:var(--muted);font-weight:850}.leader-name{font-size:25px;font-weight:850;margin:20px 0 6px}.leader-score{font-size:clamp(36px,6vw,64px);font-weight:900;color:var(--gold);line-height:1}.leader-meta{color:var(--muted);margin-top:10px}.progress{height:7px;background:rgba(0,0,0,.25);border-radius:8px;margin-top:16px;overflow:hidden}.progress i{height:100%;display:block;background:var(--gold)}.display-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}.display-head h1{font-size:clamp(34px,6vw,62px);margin:0}.live-pill{color:var(--green);border:1px solid rgba(67,209,158,.4);padding:8px 12px;border-radius:999px;font-weight:850;font-size:13px}.live-pill i{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--green);margin-right:6px;box-shadow:0 0 12px var(--green)}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:18px}.score-table{border-collapse:collapse;width:100%;min-width:620px;background:rgba(0,0,0,.12)}.score-table th,.score-table td{padding:13px 16px;text-align:center;border-bottom:1px solid var(--line)}.score-table th:first-child,.score-table td:first-child{text-align:left;position:sticky;left:0;background:#111d3d}.score-table thead th{color:var(--gold)}.score-table .total-row td{font-size:20px;font-weight:900}.history{max-width:760px;margin:18px auto 0}.history-row{display:grid;grid-template-columns:1fr auto;gap:14px;padding:11px 0;border-bottom:1px solid var(--line);color:var(--muted)}.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:#fff;color:#111936;padding:12px 18px;border-radius:10px;z-index:99;box-shadow:0 12px 30px rgba(0,0,0,.4)}.danger{color:var(--red)}
.top-actions{display:flex;align-items:center;gap:18px}.nav-link{color:var(--muted);font-size:14px;font-weight:750}.nav-link:hover{color:var(--gold)}.finish-button{width:auto;margin:0}.finished-pill{display:inline-flex;align-items:center;color:var(--green);font-weight:800;padding:13px}.leaderboard-card{max-width:900px;margin:auto}.filter-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.filter{border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.05);color:var(--muted);font-weight:750;padding:9px 14px;cursor:pointer}.filter.active{background:var(--gold);border-color:var(--gold);color:#111936}.leaderboard-table th:first-child,.leaderboard-table td:first-child{position:static;background:transparent;text-align:center}.leaderboard-table th:nth-child(2),.leaderboard-table td:nth-child(2){text-align:left;font-weight:800}.empty-state{text-align:center;color:var(--muted);padding:55px 15px}
.brand{display:flex;align-items:center;gap:10px}.brand-logo{width:44px;height:44px;display:block;border-radius:50%;object-fit:cover;background:#fff;border:2px solid rgba(255,255,255,.8);box-shadow:0 4px 14px rgba(0,0,0,.25)}.brand .brand-name{color:var(--white)}.display-brand{display:flex;align-items:center;gap:18px}.display-logo{width:104px;height:104px;display:block;border-radius:50%;object-fit:cover;background:#fff;border:3px solid rgba(255,255,255,.85);box-shadow:0 10px 30px rgba(0,0,0,.3)}
.kniffel-monitor .display-head{margin-bottom:12px}.kniffel-monitor .display-head h1{font-size:clamp(30px,4vw,46px)}.kniffel-monitor .display-logo{width:68px;height:68px}.kniffel-monitor .kniffel-table-wrap{border-radius:12px;overflow-x:auto;overflow-y:hidden}.kniffel-monitor .kniffel-table{font-size:clamp(12px,1.25vw,16px)}.kniffel-monitor .kniffel-table th,.kniffel-monitor .kniffel-table td{padding:5px 10px;line-height:1.05;height:26px}.kniffel-monitor .kniffel-table th:first-child,.kniffel-monitor .kniffel-table td:first-child{min-width:140px}.kniffel-monitor .kniffel-table .block-start td{border-top:2px solid rgba(212,175,55,.55)}.kniffel-monitor .kniffel-table .bonus-row td{color:var(--gold);font-weight:800}.kniffel-monitor .kniffel-table .total-row td{font-size:18px;padding-top:7px;padding-bottom:7px}.kniffel-monitor .action-row{margin-top:10px}.kniffel-monitor .action-row .button{padding:9px 14px}
.filter-label{margin:18px 0 8px;color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.admin-zone{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:28px;padding-top:20px;border-top:1px solid var(--line)}.admin-zone small{color:var(--muted)}.danger-button{border:1px solid rgba(239,102,114,.55);background:rgba(239,102,114,.11);color:#ff9da6}.danger-button:hover{background:rgba(239,102,114,.2)}.rounds-card{max-width:900px;margin:auto}.rounds-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.round-list{display:grid;gap:12px}.round-card{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px;border:1px solid var(--line);border-radius:15px;background:rgba(0,0,0,.13)}.round-card h2{margin:5px 0 4px}.round-card p{margin:0 0 6px;color:var(--muted)}.round-card small{color:var(--muted)}.round-code{display:inline-block;color:var(--gold);font-weight:900;letter-spacing:.14em}.round-actions{display:flex;gap:8px;flex-shrink:0}
.saved-players-box{margin:0 0 12px;padding:13px;border:1px solid var(--line);border-radius:13px;background:rgba(0,0,0,.12)}.saved-players-label{margin:0 0 9px;color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.saved-players-box>small{display:block;color:var(--muted);margin-top:9px}.saved-players{display:flex;flex-wrap:wrap;gap:8px}.saved-player{display:inline-flex;border:1px solid rgba(212,175,55,.38);border-radius:999px;overflow:hidden;background:rgba(212,175,55,.08)}.saved-player button{border:0;background:transparent;color:var(--white);cursor:pointer}.saved-player-add{display:flex;align-items:center;gap:6px;padding:8px 5px 8px 12px;font-weight:750}.saved-player-add small{color:var(--gold)}.saved-player-remove{padding:7px 10px 7px 6px;color:var(--muted)!important;font-size:18px;line-height:1}.saved-player-remove:hover{color:var(--red)!important}.saved-player:has(.saved-player-add:hover){border-color:var(--gold);background:rgba(212,175,55,.15)}
.saved-player-create{display:grid;grid-template-columns:1fr auto;gap:8px;margin-bottom:12px}.saved-player-create .button{padding:10px 14px}.saved-player-create input{padding:10px 12px}
.database-reset-zone{margin-top:34px;border:1px solid rgba(239,102,114,.35);border-radius:14px;padding:18px;background:rgba(239,102,114,.06)}.database-reset-zone>div{display:grid;gap:5px}.database-reset-zone strong{color:#ffb1b8}.database-reset-zone small{display:block}
.login-shell{min-height:calc(100vh - 180px);display:grid;place-items:center}.login-card{width:min(440px,100%);text-align:center}.login-logo{width:112px;height:112px;border-radius:50%;object-fit:cover;background:#fff;border:3px solid rgba(255,255,255,.85);box-shadow:0 12px 34px rgba(0,0,0,.3);margin-bottom:18px}.login-card h1{font-size:42px;letter-spacing:-.04em;margin:0 0 10px}.login-card>p:not(.eyebrow){color:var(--muted);line-height:1.5}.login-card form{text-align:left}.login-card input[type=password]{width:100%;border:1px solid var(--line);border-radius:12px;background:rgba(0,0,0,.22);color:white;padding:14px;outline:none}.login-card input[type=password]:focus{border-color:var(--gold)}.login-error{border:1px solid rgba(239,102,114,.5);background:rgba(239,102,114,.12);color:#ffb1b8;padding:11px;border-radius:10px;margin:16px 0;text-align:left}
.phase-host-card{max-width:850px}.phase-host-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.phase-host-heading h2{margin:0}.phase-host-card .phase-player{grid-template-columns:minmax(170px,1fr) auto 130px}.phase-host-card input:disabled,.phase-host-card button:disabled{opacity:.55;cursor:not-allowed}
@media(max-width:700px){main{width:min(100% - 24px,1080px);padding-top:28px}.game-picker{grid-template-columns:1fr}.lobby-grid{grid-template-columns:1fr}.qr-card{order:-1}.phase-player,.phase-host-card .phase-player{grid-template-columns:1fr auto}.phase-player input[type=number],.phase-host-card .phase-player input[type=number]{grid-column:1/-1}.free-form .inline-form{grid-template-columns:1fr 1fr}.free-form .button{grid-column:1/-1}.action-row{flex-direction:column}.display-head{align-items:flex-end}.topbar{padding:0 10px}.summary-grid{grid-template-columns:repeat(3,1fr)}.game-code{display:none}.top-actions{gap:8px}.nav-link{font-size:11px}.brand-logo{width:36px;height:36px}.display-brand{gap:8px;flex-direction:column}.display-logo{width:68px;height:68px}.brand-name{display:none}.admin-zone,.round-card{align-items:stretch;flex-direction:column}.round-actions{display:grid;grid-template-columns:1fr 1fr}.rounds-toolbar{align-items:center}.rounds-toolbar .button{padding:9px 12px}}
.game-options{margin:18px 0;padding:18px;border:1px solid rgba(212,175,55,.32);border-radius:15px;background:rgba(212,175,55,.06)}.game-options[hidden]{display:none}.game-options h3{margin:0 0 8px}.phase-definition-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.phase-definition-list label,.option-grid label{margin:0;color:var(--muted);font-size:13px}.phase-definition-list label span{display:block;margin-bottom:5px}.option-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.option-grid select,.extra-kniffel select{width:100%;border:1px solid var(--line);border-radius:12px;background:#111d3d;color:white;padding:14px;margin-top:8px}.wake-lock{border:1px solid var(--line);background:rgba(255,255,255,.06);color:var(--muted);border-radius:9px;padding:7px 9px;cursor:pointer;font-size:12px}.wake-lock.active{color:var(--green);border-color:rgba(67,209,158,.4)}.sheet-head,.display-subhead{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.sheet-head span,.display-subhead span{color:var(--muted);font-size:13px}.score-row{grid-template-columns:minmax(110px,1fr) 110px 42px}.score-row.crossed{opacity:.66}.score-row.crossed>span{text-decoration:line-through;text-decoration-thickness:3px}.fixed-score{display:flex;align-items:center;gap:7px;margin:0}.fixed-score input{width:24px;height:24px;accent-color:var(--gold)}.strike-button{width:38px;height:38px;border-radius:9px;border:1px solid rgba(239,102,114,.45);background:rgba(239,102,114,.09);color:#ff9da6;font-weight:900;cursor:pointer}.extra-kniffel{margin-top:18px;padding:15px;border-radius:13px;background:rgba(0,0,0,.14)}.extra-kniffel h3,.extra-kniffel p{margin:0 0 8px}.extra-kniffel p{color:var(--muted);font-size:13px;line-height:1.45}.extra-kniffel .button{margin:0;width:auto}.kniffel-summary{grid-template-columns:repeat(5,1fr)}.crossed-cell{color:var(--red);font-size:19px;font-weight:900}.note-details,.history-details{margin-top:14px;border:1px solid var(--line);border-radius:11px;padding:11px}.note-details summary,.history-details summary{cursor:pointer;color:var(--muted);font-weight:750}.note-details input{margin-top:11px}.mobile-score-entry{display:grid;grid-template-columns:1fr auto;gap:9px}.mobile-score-entry .button{width:auto;margin:0}.target-alert{padding:12px;margin-bottom:14px;border:1px solid rgba(212,175,55,.5);border-radius:10px;color:var(--gold);background:rgba(212,175,55,.08)}.phase-inline{display:grid;gap:3px;margin-top:6px}.phase-inline b{color:var(--gold);font-size:18px}.phase-inline span{color:var(--white);font-size:13px}.phase-inline small{color:var(--muted)}.phase-display-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.phase-display-card{padding:22px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.06)}.phase-display-card.first{border-color:var(--gold);background:linear-gradient(145deg,rgba(212,175,55,.18),rgba(255,255,255,.05))}.phase-number{color:var(--gold);font-size:clamp(34px,6vw,64px);line-height:1;font-weight:950}.phase-description{font-size:17px;font-weight:750;min-height:48px;margin:12px 0}.phase-points{color:var(--muted)}
@media(max-width:700px){.top-actions .nav-link{display:none}.wake-lock{font-size:0}.wake-lock::first-letter{font-size:17px}.phase-definition-list,.option-grid{grid-template-columns:1fr}.score-card{padding:14px}.score-row{grid-template-columns:minmax(100px,1fr) 92px 38px;padding:8px 0}.score-row input[type=number]{grid-column:auto}.fixed-score{font-size:12px}.kniffel-summary{grid-template-columns:repeat(2,1fr)}.kniffel-summary .summary:last-child{grid-column:1/-1}.extra-kniffel .inline-form,.mobile-score-entry{grid-template-columns:1fr}.extra-kniffel .button,.mobile-score-entry .button{width:100%}.phase-player,.phase-host-card .phase-player{padding:16px 0}.phase-inline span{max-width:210px}.sheet-head,.display-subhead{align-items:flex-start;flex-direction:column}.phase-display-grid{grid-template-columns:1fr 1fr}.phase-display-card{padding:14px}.phase-description{font-size:13px;min-height:38px}}
.joker-form{display:grid;grid-template-columns:1fr 1fr auto;gap:9px;align-items:end}.joker-form select{margin:0}.joker-form .button{white-space:nowrap}.live-notes{margin-top:18px;padding:20px 24px}.live-notes-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.live-notes-head h2{margin:0}.live-notes-head span{color:var(--muted);font-size:13px}.live-note-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid var(--line)}.live-note-row:last-child{border-bottom:0}.live-note-row p{margin:3px 0 0;color:var(--muted)}.live-note-row>b{color:var(--gold);font-size:20px}
@media(max-width:700px){.joker-form{grid-template-columns:1fr}.joker-form .button{width:100%}.live-notes{padding:16px}.live-note-row{align-items:flex-start}}
