body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;position:relative}body,html{overflow-x:hidden;width:100%}html{touch-action:pan-y}body{overscroll-behavior-y:contain}@supports (padding:max(0px)){body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#667eea,#764ba2);font-family:Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}.App,body{min-height:100vh}.App{overflow-x:hidden;position:relative;text-align:center;width:100%}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}@media (max-width:768px){body{font-size:14px}}html{scroll-behavior:smooth}button:focus,input:focus{outline:2px solid #2196f3;outline-offset:2px}*{transition:transform .2s ease,box-shadow .2s ease}.fab-button{--fab-size:56px;--fab-size-mobile:52px;--fab-bg:var(--theme-primary,#2563eb);--fab-hover-scale:1.1;--fab-active-scale:0.95;--fab-standard-offset:20px;align-items:center;background:var(--fab-bg);border:2px solid #fff3;border-radius:50%;box-shadow:0 4px 12px #0000004d;color:#fff;cursor:pointer;display:flex;font-size:24px;height:var(--fab-size);justify-content:center;position:fixed;transition:all .3s cubic-bezier(.4,0,.2,1);width:var(--fab-size);will-change:transform;z-index:1000}.fab-button:hover{box-shadow:0 6px 20px #0006;transform:scale(var(--fab-hover-scale))}.fab-button:active{transform:scale(var(--fab-active-scale))}@media (max-width:640px){.fab-button{font-size:20px;height:var(--fab-size-mobile);width:var(--fab-size-mobile)}}.fab-top-left{left:calc(var(--fab-standard-offset) + env(safe-area-inset-left, 0))}.fab-top-left,.fab-top-right{top:calc(var(--fab-standard-offset) + env(safe-area-inset-top, 0))}.fab-top-right{right:calc(var(--fab-standard-offset) + env(safe-area-inset-right, 0))}.fab-bottom-left{left:calc(var(--fab-standard-offset) + env(safe-area-inset-left, 0))}.fab-bottom-left,.fab-bottom-right{bottom:calc(var(--fab-standard-offset) + env(safe-area-inset-bottom, 0))}.fab-bottom-right{right:calc(var(--fab-standard-offset) + env(safe-area-inset-right, 0))}@supports (padding:max(0px)){.fab-top-left{left:max(16px,env(safe-area-inset-left) + 8px)}.fab-top-left,.fab-top-right{top:max(16px,env(safe-area-inset-top) + 8px)}.fab-top-right{right:max(16px,env(safe-area-inset-right) + 8px)}.fab-bottom-left{left:max(16px,env(safe-area-inset-left) + 8px)}.fab-bottom-left,.fab-bottom-right{bottom:max(16px,env(safe-area-inset-bottom) + 8px)}.fab-bottom-right{right:max(16px,env(safe-area-inset-right) + 8px)}}*{--theme-transition:all 0.3s ease}@media (max-width:520px) and (orientation:portrait){.dice-area{max-width:100vw;overflow-x:auto}}@keyframes ai-glow{0%,to{box-shadow:0 0 20px #667eea80}50%{box-shadow:0 0 40px #667eeacc}}.ai-helper-active{animation:ai-glow 2s ease-in-out infinite}@media (max-width:768px){.strategy-helper-container{bottom:100px;right:20px;top:auto}}.online-game-mode{background:linear-gradient(135deg,#667eea,#764ba2);background:var(--theme-background,linear-gradient(135deg,#667eea 0,#764ba2 100%));color:#fff;color:var(--theme-text,#fff);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:100vh;padding:20px;transition:background .5s ease}.online-status{align-items:center;border-radius:8px;display:flex;font-weight:500;gap:10px;margin-bottom:20px;padding:12px 20px}.online-status.connected{background:#22c55e33;border:1px solid #22c55e66}.online-status.disconnected{background:#ef444433;border:1px solid #ef444466}.online-status.connecting{background:#fbbf2433;border:1px solid #fbbf2466}.loading-spinner{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:20px;width:20px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.online-menu{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;background:var(--theme-card-background,#ffffff1a);border:2px solid #ffffff1a;border:2px solid var(--theme-card-border,#ffffff1a);border-radius:15px;box-shadow:0 8px 32px #0000001a;margin:0 auto;max-width:500px;padding:30px}.online-menu h2{font-size:2rem;margin-bottom:30px;text-align:center;text-shadow:0 2px 4px #0000004d}.game-mode-section,.player-name-section{margin-bottom:20px}.game-mode-section label,.player-name-section label{display:block;font-weight:600;margin-bottom:8px}.game-mode-section select,.player-name-section input{background:#ffffffe6;border:none;border-radius:8px;color:#333;font-size:16px;padding:12px;transition:all .3s ease;width:100%}.game-mode-section select:focus,.player-name-section input:focus{box-shadow:0 0 0 3px #ffffff4d;outline:none;transform:translateY(-1px)}.game-mode-section select:disabled,.player-name-section input:disabled{cursor:not-allowed;opacity:.6}.online-actions{margin:30px 0}.back-btn,.create-room-btn,.join-room-btn,.leave-game-btn,.leave-room-btn,.start-game-btn{border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:600;margin-bottom:10px;padding:15px;transition:all .3s ease;width:100%}.create-room-btn{background:linear-gradient(45deg,#10b981,#059669);color:#fff}.create-room-btn:hover:not(:disabled){box-shadow:0 5px 15px #10b98166;transform:translateY(-2px)}.join-room-section{display:flex;gap:10px;margin-top:20px}.join-room-section input{background:#ffffffe6;border:none;border-radius:8px;color:#333;flex:1 1;font-size:16px;letter-spacing:2px;padding:12px;text-align:center;text-transform:uppercase}.join-room-btn{background:linear-gradient(45deg,#3b82f6,#1d4ed8);color:#fff;flex:0 0 auto;margin-bottom:0;padding:12px 20px;width:auto}.join-room-btn:hover:not(:disabled){box-shadow:0 5px 15px #3b82f666;transform:translateY(-2px)}.back-btn{background:#fff3;border:1px solid #ffffff4d;color:#fff}.back-btn:hover{background:#ffffff4d;transform:translateY(-2px)}button:disabled{box-shadow:none!important;cursor:not-allowed;opacity:.6;transform:none!important}.error-message{background:#ef444433;border:1px solid #ef444466;border-radius:8px;color:#fecaca;margin:10px 0;padding:12px;text-align:center}.online-lobby{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;background:var(--theme-card-background,#ffffff1a);border:2px solid #ffffff1a;border:2px solid var(--theme-card-border,#ffffff1a);border-radius:15px;box-shadow:0 8px 32px #0000001a;margin:0 auto;max-width:600px;padding:30px}.online-lobby h2{font-size:1.8rem;margin-bottom:20px;text-align:center}.room-info{background:#ffffff1a;border-radius:10px;margin-bottom:20px;padding:15px}.room-info p{font-weight:500;margin:5px 0}.players-list h3{color:#e2e8f0;margin-bottom:15px}.player-item{align-items:center;background:#ffffff1a;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:8px;padding:12px 15px;transition:background .3s ease}.player-item.host{background:#fbbf2433;border:1px solid #fbbf244d}.player-name{font-weight:600}.player-status{font-size:14px}.ready-toggle-btn{background:linear-gradient(45deg,#38bdf8,#0ea5e9);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:12px;transition:all .3s ease;width:100%}.ready-toggle-btn.ready{background:linear-gradient(45deg,#f97316,#ea580c)}.lobby-actions{display:flex;flex-direction:column;gap:10px;margin-top:30px}.start-game-btn{background:linear-gradient(45deg,#10b981,#059669);color:#fff}.start-game-btn:hover:not(:disabled){box-shadow:0 5px 15px #10b98166;transform:translateY(-2px)}.leave-game-btn,.leave-room-btn{background:linear-gradient(45deg,#ef4444,#dc2626);color:#fff}.leave-game-btn:hover,.leave-room-btn:hover{box-shadow:0 5px 15px #ef444466;transform:translateY(-2px)}.online-loading{align-items:center;display:flex;flex-direction:column;gap:20px;justify-content:center;min-height:50vh}.online-loading .loading-spinner{border-width:4px;height:40px;width:40px}.online-loading p{font-size:18px;font-weight:500}.online-game{display:flex;flex-direction:column;margin:0 auto;max-width:1200px;min-height:100vh;width:100%}@media (min-width:1400px){.online-game{max-width:1600px}}@media (min-width:1920px){.online-game{max-width:2000px}}.game-header{margin-bottom:30px;text-align:center}.game-mode-info{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin:10px 0}.timer-container{justify-content:center}.timer-container,.tournament-info{align-items:center;display:flex;margin-bottom:10px}.tournament-info{background:#0003;border-radius:8px;flex-direction:column;font-weight:700;padding:8px 16px}.game-header h2{margin-bottom:10px}.turn-indicator{animation:pulse-fade 2s infinite;border-radius:20px;box-shadow:0 4px 8px #0003;color:#fff;display:inline-block;font-size:18px;font-weight:700;letter-spacing:1px;margin-top:10px;padding:8px 20px;text-transform:uppercase;transition:all .3s ease}@keyframes pulse-fade{0%,to{opacity:.9}50%{opacity:1}}.turn-instruction{font-size:.8em;font-weight:400;letter-spacing:.5px;margin-top:6px;opacity:.9;text-transform:none}.turn-indicator.my-turn{animation:my-turn-pulse 1.2s infinite;background:linear-gradient(135deg,#4caf50,#2e7d32);border:2px solid #81c784}@keyframes my-turn-pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.turn-indicator.opponent-turn{background:linear-gradient(135deg,#f57c00,#e65100);border:2px solid #ffb74d}.players-scores{display:flex;flex-wrap:wrap;gap:15px;justify-content:center;margin-bottom:30px}.player-score{background:#ffffff1a;border-radius:10px;min-width:120px;padding:15px 20px;text-align:center;transition:all .3s ease}.player-score.active{background:#fbbf244d;border:2px solid #fbbf2499;transform:scale(1.05)}.player-score h4{font-size:14px;margin:0 0 8px;opacity:.9}.player-score .score{font-size:18px;font-weight:600}.game-content{background:#0000;box-shadow:none;display:flex;flex-direction:column;gap:16px;margin-bottom:20px;padding:0}@media (min-width:768px){.game-content{align-items:flex-start;flex-direction:row;gap:32px;justify-content:center}}.online-dice-section{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;background:var(--theme-card-background,#ffffff1a);border:2px solid #ffffff1a;border:2px solid var(--theme-card-border,#ffffff1a);border-radius:15px;box-shadow:0 8px 24px #0000001a;display:flex;flex-direction:column;padding:30px;text-align:center;width:100%}@media (min-width:768px){.online-dice-section{flex:1 1;max-width:480px}}@media (min-width:1400px){.online-dice-section{border:3px solid #ddd;border:3px solid var(--theme-card-border,#ddd);border-radius:20px;max-width:800px;padding:40px}}@media (min-width:1920px){.online-dice-section{border:4px solid #ddd;border:4px solid var(--theme-card-border,#ddd);border-radius:24px;max-width:1100px;padding:50px}}@media (min-width:2560px){.online-dice-section{border:5px solid #ddd;border:5px solid var(--theme-card-border,#ddd);border-radius:28px;max-width:1400px;padding:60px}}.online-sidebar-section{display:flex;flex-direction:column;width:100%}@media (min-width:768px){.online-sidebar-section{flex:1 1;max-width:520px}}@media (min-width:1024px){.online-sidebar-section{max-width:560px}}@media (min-width:1280px){.online-sidebar-section{max-width:600px}}.dice-grid{grid-gap:16px;align-content:center;background:linear-gradient(140deg,#094921,#0f6d2f 55%,#158a3c);background:linear-gradient(140deg,var(--felt-dark-color,#094921) 0,var(--felt-base-color,#0f6d2f) 55%,var(--felt-light-color,#158a3c) 100%);border-radius:20px;box-shadow:inset 0 1px 3px #ffffff26,inset 0 -1px 4px #00000040,0 6px 18px -4px #00000059,0 2px 6px #0000002e;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));justify-items:center;margin-bottom:20px;max-width:520px;min-height:240px;padding:20px;position:relative;width:100%}.opponent-turn-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#00000080;border-radius:15px;bottom:0;display:flex;justify-content:center;left:0;pointer-events:none;position:absolute;right:0;top:0;transition:all .3s ease;z-index:5}.overlay-message{background-color:#0009;border:1px solid #fff3;border-radius:12px;color:#fff;font-size:1.4rem;font-weight:700;padding:16px 24px;text-shadow:1px 1px 3px #000c}.die-button{align-items:center;background:#ffffff2e;border:2px solid #ffffff4d;border-radius:14px;box-shadow:0 10px 20px #00000040;color:#fff;cursor:pointer;display:flex;flex-direction:column;font-size:22px;font-weight:700;gap:6px;justify-content:center;max-width:120px;padding:18px 12px;transition:all .3s ease;width:100%}.die-button .die-lock-status{font-size:12px;letter-spacing:.08em;opacity:.85}.die-button:not(:disabled):hover{box-shadow:0 12px 26px #00000059;transform:translateY(-4px) scale(1.02)}.die-button.locked{background:linear-gradient(145deg,#fbbf2459,#fbbf248c);border-color:#fbbf2499;box-shadow:0 12px 24px #fbbf2440}.die-button:disabled{box-shadow:0 4px 12px #00000026;cursor:not-allowed;opacity:.55;transform:none}.dice-placeholder{font-size:16px;margin:0;opacity:.8;width:100%}.turn-log{background:#00000040;border:1px solid #ffffff1f;border-radius:12px;margin-top:24px;max-height:180px;overflow-y:auto;padding:16px 18px;text-align:left}.turn-log h4{font-size:15px;letter-spacing:.08em;margin:0 0 10px;opacity:.85;text-transform:uppercase}.turn-log ul{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;padding:0}.turn-log li{align-items:baseline;background:#ffffff14;border-radius:8px;display:flex;font-size:14px;gap:12px;justify-content:space-between;padding:8px 10px}.turn-placeholder{font-size:14px;margin:0;opacity:.7}.event-message{flex:1 1}.event-time{font-size:12px;opacity:.6}.roll-controls{align-items:center;display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.game-error-message{animation:shake .5s cubic-bezier(.36,.07,.19,.97) both;background-color:#f44336e6;border-radius:8px;box-shadow:0 2px 10px #f4433680;color:#fff;font-weight:700;margin-top:10px;max-width:90%;padding:8px 16px;text-align:center}@keyframes shake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-5px)}20%,40%,60%,80%{transform:translateX(5px)}}.roll-dice-btn{background:linear-gradient(45deg,#14b8a6,#0f766e);border:none;border-radius:12px;box-shadow:0 8px 22px #14b8a659;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px 24px;transition:all .3s ease}.roll-dice-btn:hover:not(:disabled){box-shadow:0 12px 28px #14b8a673;transform:translateY(-3px)}.roll-dice-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.6}.rolls-remaining{font-size:15px;font-weight:500;letter-spacing:.05em}.turn-indicator-pill{align-items:center;background:#10b98140;border-radius:999px;color:#bbf7d0;display:inline-flex;font-size:11px;gap:6px;letter-spacing:.08em;margin-left:8px;padding:2px 10px;text-transform:uppercase}.score-table{background:#ffffff14;border:1px solid #ffffff1f;border-radius:14px;margin-top:26px;overflow-x:auto;padding:16px}.score-table table{border-collapse:collapse;min-width:520px;width:100%}.score-table td,.score-table th{border-bottom:1px solid #ffffff14;font-size:14px;padding:10px 12px;text-align:left}.score-table th{font-size:12px;letter-spacing:.08em;opacity:.8;text-transform:uppercase}.score-table tbody tr:hover{background:#ffffff0d}.score-table .upper-row{background:#ffffff08}.category-desc{font-size:13px;opacity:.7}.category-action{text-align:center}.select-score-btn{background:linear-gradient(45deg,#f97316,#ea580c);border:none;border-radius:999px;box-shadow:0 8px 18px #f9731659;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 14px;transition:all .25s ease}.select-score-btn:hover{box-shadow:0 10px 24px #f9731673;transform:translateY(-2px)}.score-cell.filled{font-weight:600}.score-cell.empty{opacity:.5}@media (max-width:768px){.online-game-mode{padding:10px}.online-lobby,.online-menu{margin:10px;padding:20px}.join-room-section{flex-direction:column}.join-room-btn{width:100%}.players-scores{align-items:center;flex-direction:column}.player-score{max-width:200px;width:100%}}@media (max-width:480px){.online-menu h2{font-size:1.5rem}.online-lobby h2{font-size:1.4rem}.back-btn,.create-room-btn,.game-mode-section select,.join-room-btn,.player-name-section input{font-size:14px;padding:10px}}.score-details{display:flex;flex-direction:column;gap:4px}.upper-section{color:#ffffffb3;font-size:.9em}.bonus{color:#4caf50;font-size:.9em;font-weight:700}.total-score{font-size:1.1em;font-weight:700;margin-top:3px}.player-name-container{align-items:center;display:flex;flex-direction:column;margin-bottom:8px}.active-player-indicator{animation:highlight-pulse 1.5s infinite;background:#ffc107cc;border-radius:12px;color:#333;font-size:.8em;font-weight:700;margin-top:4px;padding:3px 8px}@keyframes highlight-pulse{0%,to{opacity:.85;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}.is-local-player{box-shadow:0 0 0 2px #4caf50b3}.player-score.active.is-local-player{box-shadow:0 0 0 3px #4caf50,0 0 15px #4caf50b3}
/*# sourceMappingURL=main.77cdde21.css.map*/