:root{--accent:#ff9800;--blue-glow:rgba(100, 181, 246, 0.4);--dice-size:56px}body{background:linear-gradient(rgba(255,255,255,.015) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.015) 1px,transparent 1px),linear-gradient(135deg,#0a0e27 0%,#1a1f3a 25%,#0f1629 50%,#1e2a4a 75%,#0a0e27 100%);background-size:60px 60px,60px 60px,100% 100%;background-attachment:fixed;color:#fff;font-family:maven pro,sans-serif;min-height:100vh}#player-bar{background:rgba(255,255,255,3%);padding:10px 16px;border-radius:16px;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(5px)}.player-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:20px;font-size:.85em;font-weight:600;background:rgba(255,255,255,5%);border:1px solid rgba(255,255,255,.1);transition:all .3s;white-space:nowrap}.player-chip.active{background:rgba(76,175,80,.2);border-color:#4caf50;box-shadow:0 0 10px rgba(76,175,80,.3)}.player-chip .chip-avatar{width:24px;height:24px;border-radius:50%;object-fit:cover}.player-chip .chip-color{width:24px;height:24px;border-radius:50%;flex-shrink:0}.player-chip .chip-score{font-size:.85em;color:rgba(255,255,255,.6);margin-left:2px}#timer-container{width:100%;max-width:500px;margin:0 auto 16px}#timer-bar{box-shadow:0 0 10px rgba(76,175,80,.4)}.die{width:var(--dice-size);height:var(--dice-size);background:linear-gradient(145deg,#fafafa 0%,#e0e0e0 100%);border:2px solid rgba(0,0,0,.15);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.8em;font-weight:900;color:#1a1a2e;cursor:pointer;transition:all .2s ease;user-select:none;box-shadow:0 3px 8px rgba(0,0,0,.3);position:relative}.die:hover{transform:translateY(-3px);box-shadow:0 6px 12px rgba(0,0,0,.4)}.die.held{background:linear-gradient(145deg,#43a047,#2e7d32);color:#fff;border-color:#4caf50;box-shadow:0 0 12px rgba(76,175,80,.5),0 3px 8px rgba(0,0,0,.3)}.die.held::after{content:'HELD';position:absolute;bottom:-16px;left:50%;transform:translateX(-50%);font-size:.35em;font-weight:700;color:#4caf50;letter-spacing:1px}.die.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}@keyframes diceRoll{0%{transform:rotate(0)scale(1)}25%{transform:rotate(90deg)scale(.9)}50%{transform:rotate(180deg)scale(1.05)}75%{transform:rotate(270deg)scale(.95)}100%{transform:rotate(360deg)scale(1)}}.die.rolling{animation:diceRoll .4s ease-in-out}.roll-button{padding:12px 40px;font-size:1.1em;font-weight:700;border-radius:12px;border:none;background:linear-gradient(135deg,#ff9800 0%,#f57c00 100%);color:#fff;cursor:pointer;box-shadow:0 4px #e65100,0 6px 15px rgba(255,152,0,.3);transition:all .1s ease-out;text-transform:uppercase;letter-spacing:1px}.roll-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px #e65100,0 8px 20px rgba(255,152,0,.4)}.roll-button:active:not(:disabled){transform:translateY(4px);box-shadow:0 0 #e65100}.roll-button:disabled{background:#555;box-shadow:0 4px #333;cursor:not-allowed;opacity:.6}#scorecard{width:100%;min-width:320px;border-collapse:collapse;font-size:.85em;background:rgba(15,20,40,.8);border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.1)}#scorecard th,#scorecard td{padding:6px 8px;text-align:center;border-bottom:1px solid rgba(255,255,255,6%);white-space:nowrap}#scorecard th{background:rgba(255,255,255,5%);font-weight:700;font-size:.85em;color:rgba(255,255,255,.8);position:sticky;top:0;z-index:1}#scorecard th:first-child,#scorecard td:first-child{text-align:left;font-weight:600;padding-left:12px;position:sticky;left:0;background:rgba(15,20,40,.95);z-index:2;min-width:100px}#scorecard th:first-child{z-index:3}#scorecard .score-cell{cursor:pointer;transition:all .2s;color:rgba(255,255,255,.4);font-style:italic}#scorecard .score-cell:hover{background:rgba(76,175,80,.2);color:#4caf50}#scorecard .score-cell.locked{cursor:default;color:#fff;font-style:normal;font-weight:700}#scorecard .score-cell.locked:hover{background:0 0}#scorecard .score-cell.preview{color:rgba(255,152,0,.7);font-style:italic}#scorecard .section-header{background:rgba(255,255,255,4%);font-weight:700;color:rgba(255,255,255,.6);font-size:.8em;text-transform:uppercase;letter-spacing:1px}#scorecard .total-row{background:rgba(255,255,255,6%);font-weight:700;font-size:.95em}#scorecard .bonus-row td{color:#ff9800;font-weight:600}#scorecard .active-col{background:rgba(76,175,80,8%)}#game-status{color:#fff;text-shadow:0 2px 6px rgba(0,0,0,.8),0 0 20px rgba(255,255,255,.3);font-size:1.2em;letter-spacing:.5px;font-weight:600;padding:12px;border-radius:12px;transition:all .3s}#back-link a{color:#64b5f6;text-shadow:0 1px 3px rgba(0,0,0,.8);font-weight:500;transition:all .2s;text-decoration:none;display:inline-flex;align-items:center;gap:8px}#back-link a:hover{color:#90caf9;text-shadow:0 1px 3px rgba(0,0,0,.8),0 0 10px rgba(100,181,246,.5);transform:translateX(-4px)}.results-modal-overlay{position:fixed;inset:0;background:rgba(10,14,39,.9);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .4s ease-out}.results-modal{background:linear-gradient(145deg,rgba(35,38,58,.95),rgba(20,24,40,.98));border:1px solid rgba(255,255,255,.1);border-radius:24px;padding:32px;width:90%;max-width:440px;text-align:center;box-shadow:0 20px 50px rgba(0,0,0,.5),0 0 30px rgba(100,181,246,.15);animation:slideUp .5s cubic-bezier(.18,.89,.32,1.28)}.results-header{font-size:2.2em;font-weight:800;margin-bottom:8px;text-transform:uppercase;letter-spacing:2px;background:linear-gradient(to right,#fff,#90caf9);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.results-outcome{font-size:1.05em;color:rgba(255,255,255,.6);margin-bottom:20px}.results-scores{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:20px}.results-scores .score-badge{padding:6px 14px;border-radius:12px;background:rgba(255,255,255,5%);border:1px solid rgba(255,255,255,.1);font-size:.9em}.results-scores .score-badge.winner{background:rgba(76,175,80,.2);border-color:#4caf50}.xp-gain-container{background:rgba(255,255,255,3%);border-radius:16px;padding:16px;margin-bottom:24px;border:1px solid rgba(255,255,255,5%)}.xp-gain-label{display:flex;justify-content:space-between;margin-bottom:10px;font-weight:600;font-size:.9em}.xp-progress-bg{width:100%;height:12px;background:rgba(255,255,255,5%);border-radius:6px;overflow:hidden}.xp-progress-fill{height:100%;background:linear-gradient(90deg,#42a5f5,#00d2ff);border-radius:6px;transition:width 1.5s cubic-bezier(.4,0,.2,1);width:0}.rank-text{margin-top:8px;font-size:.8em;color:rgba(255,255,255,.5)}.results-actions{display:flex;flex-direction:column;gap:10px}.btn-primary,.btn-secondary{padding:13px 24px;border-radius:12px;font-size:1.05em;font-weight:700;cursor:pointer;transition:all .2s;border:none}.btn-primary{background:linear-gradient(135deg,#2196f3,#1565c0);color:#fff;box-shadow:0 4px 15px rgba(33,150,243,.3)}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px rgba(33,150,243,.4)}.btn-primary:disabled{background:#333;opacity:.6;cursor:not-allowed;box-shadow:none}.btn-secondary{background:rgba(255,255,255,5%);color:#fff;border:1px solid rgba(255,255,255,.1)}.btn-secondary:hover{background:rgba(255,255,255,.1)}.challenge-message{margin-top:-10px;margin-bottom:16px;font-size:.9em;font-weight:600;color:#64b5f6;text-shadow:0 0 10px rgba(100,181,246,.3);animation:fadeIn .3s ease-out}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes slideUp{from{transform:translateY(40px);opacity:0}to{transform:translateY(0);opacity:1}}.flash-effect{animation:modalFlash .4s ease-out}@keyframes modalFlash{0%{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.02);filter:brightness(1.4)}100%{transform:scale(1);filter:brightness(1)}}@media(max-width:600px){:root{--dice-size:48px}.die{font-size:1.5em}.die.held::after{font-size:.3em;bottom:-14px}.player-chip{font-size:.78em;padding:3px 8px}.player-chip .chip-avatar,.player-chip .chip-color{width:20px;height:20px}#scorecard{font-size:.78em}#scorecard th,#scorecard td{padding:5px 6px}.roll-button{padding:10px 30px;font-size:1em}.results-modal{padding:24px}.results-header{font-size:1.8em}}@media(max-width:400px){:root{--dice-size:42px}.die{font-size:1.3em;border-radius:8px}#dice-container{gap:8px}#scorecard{font-size:.72em}#scorecard th:first-child,#scorecard td:first-child{min-width:80px;padding-left:8px}}