@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap);*{box-sizing:border-box;margin:0;padding:0}html{font-size:14px}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;color:#333;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.4;overflow-x:hidden}h1,h2,h3,h4,h5,h6{line-height:1.2}a{color:inherit;text-decoration:none}button,input,select,textarea{font-family:inherit;font-size:inherit}button{cursor:pointer}@media (max-width:768px){html{font-size:13px}}@media (max-width:480px){html{font-size:12px}}.app{background-color:#2c3e50;font-family:Arial,sans-serif;min-height:100vh}.container{padding:0;width:100%}.inter-font{font-family:Inter,sans-serif}.modal-overlay{background:#000000a6;inset:0;z-index:2000}.modal-window{animation:pop .25s ease-out;background:#ecf0f1;border-radius:8px;box-shadow:0 8px 18px #00000059;color:#2c3e50;padding:32px 24px;text-align:center;width:min(90%,420px)}@keyframes pop{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.modal-actions{display:flex;gap:16px;justify-content:center;margin-top:24px}.modal-btn{border:none;border-radius:4px;cursor:pointer;font-weight:600;padding:10px 24px}.modal-btn.primary{background:#3498db;color:#fff}.home-page{animation:gradientShift 15s ease infinite;background:radial-gradient(circle at 20% 80%,#7877c64d 0,#0000 50%),radial-gradient(circle at 80% 20%,#ff77c64d 0,#0000 50%),#1a202c;background-size:400% 400%;font-family:Inter,sans-serif;min-height:100vh;overflow:hidden;padding:1rem;position:relative}.home-page:before{background:radial-gradient(circle at 20% 80%,#7877c64d 0,#0000 50%),radial-gradient(circle at 80% 20%,#ff77c64d 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.home-container{margin:0 auto;max-width:1000px;position:relative;z-index:1}.hero-section{animation:fadeInUp 1s ease-out;margin-bottom:2rem;text-align:center}.hero-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#fff,#f0f9ff);-webkit-background-clip:text;background-clip:text;color:#fff;font-size:2.5rem;font-weight:800;letter-spacing:-.02em;margin-bottom:.75rem;text-shadow:0 4px 20px #0000004d}.hero-subtitle{color:#fffffff2;font-size:1rem;font-weight:400;line-height:1.5;margin:0 auto;max-width:36rem;text-shadow:0 2px 10px #0003}.games-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:2rem}.game-card{animation:fadeInUp 1s ease-out .2s both;border-radius:1rem;box-shadow:0 25px 50px -12px #00000040;height:100%;transition:all .4s cubic-bezier(.4,0,.2,1)}.game-card:hover{box-shadow:0 30px 60px -12px #00000059;transform:translateY(-4px)}.game-card:before{background:linear-gradient(180deg,#0000001a,#0009);bottom:0;z-index:1}.game-card.prisoners{background:linear-gradient(135deg,#10b981,#059669 50%,#0d9488)}.game-card.ultimatum{background:linear-gradient(135deg,#8b5cf6,#7c3aed 50%,#6d28d9)}.game-card-content{height:100%;padding:1.5rem;position:relative;z-index:2}.game-icon-container{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border-radius:50%;box-shadow:0 10px 25px -5px #0003;display:flex;height:3rem;justify-content:center;margin:0 auto 1rem;position:relative;width:3rem}.game-icon{color:#fff;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2));height:1.5rem;width:1.5rem}.game-title{margin-bottom:.5rem;text-align:center}.game-description{color:#ffffffe6;font-size:.8rem;line-height:1.4;margin-bottom:1rem;text-align:center}.game-features{list-style:none;margin:0 0 1.5rem;padding:0}.game-features li{align-items:center;color:#ffffffe6;display:flex;font-size:.8rem;font-weight:500;gap:.75rem;padding:.5rem 0}.feature-icon{color:#ffffffe6;flex-shrink:0;height:1rem;width:1rem}.game-button{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:2px solid #ffffff4d;border-radius:.5rem;color:#fff;display:inline-flex;font-size:.8rem;font-weight:700;gap:.5rem;justify-content:center;letter-spacing:.05em;margin-top:auto;padding:.75rem 1.5rem;text-decoration:none;text-transform:uppercase;transition:all .3s ease;width:100%}.game-button:hover{background:#ffffff40;border-color:#fff6;box-shadow:0 10px 25px -5px #0000004d;transform:translateY(-2px)}.about-section{animation:fadeInUp 1s ease-out .4s both;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff26;border:1px solid #ffffff40;border-radius:.75rem;box-shadow:0 25px 50px -12px #00000040;padding:1.5rem}.section-title{color:#fff;font-size:1.25rem;font-weight:700;margin-bottom:.75rem;text-align:center;text-shadow:0 2px 10px #0000004d}.section-text{color:#ffffffe6;font-size:.8rem;line-height:1.4;margin-bottom:.75rem}.section-text:last-child{margin-bottom:0}@media (max-width:768px){.hero-title{font-size:2rem}.hero-subtitle{font-size:.875rem}.game-title{font-size:1.25rem}.about-section{padding:1rem}}.payoff-matrix-container{align-items:center;display:flex;flex-wrap:wrap;gap:2rem;justify-content:center;margin:0 auto;max-width:900px;width:100%}.payoff-matrix{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff26;border:1px solid #ffffff40;border-radius:.75rem;box-shadow:0 25px 50px -12px #00000040;flex:1 1 400px;margin-bottom:0;padding:1rem}.matrix-header{display:grid;grid-template-columns:80px 1fr;margin-bottom:.5rem}.matrix-corner{background:linear-gradient(135deg,#ffffff1a,#ffffff0d);border-radius:.5rem 0 0 0}.matrix-col-header{align-items:center;background:linear-gradient(135deg,#3b82f633,#3b82f61a);border-radius:0 .5rem 0 0;display:flex;flex-direction:column;gap:.25rem;padding:.75rem}.player-label{text-shadow:0 2px 4px #0000004d}.player-label.vertical{text-orientation:mixed;writing-mode:vertical-rl}.action-labels{color:#ffffffe6;display:flex;font-size:.75rem;font-weight:600;justify-content:space-around;width:100%}.action-labels.vertical{align-items:center;flex-direction:column;flex-grow:1;height:100%;justify-content:space-around}.action-cooperate{color:#10b981;text-shadow:0 2px 4px #0003}.action-defect{color:#ef4444;text-shadow:0 2px 4px #0003}.matrix-body{display:grid;grid-template-columns:80px 1fr}.matrix-row-header{align-items:center;background:linear-gradient(135deg,#3b82f633,#3b82f61a);border-radius:0 0 0 .5rem;display:flex;flex-direction:row;gap:.5rem;justify-content:center;padding:.75rem}.matrix-cells{grid-gap:1px;display:grid;gap:1px;grid-template-rows:1fr 1fr}.matrix-row{grid-gap:1px;display:grid;gap:1px;grid-template-columns:1fr 1fr}.payoff-cell{border-radius:.375rem;overflow:hidden;padding:1rem .75rem;position:relative;text-align:center;transition:all .3s ease}.payoff-cell:before{border-radius:.375rem;bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.payoff-cell:hover:before{opacity:1}.payoff-cell:hover{box-shadow:0 8px 20px -5px #0000004d;transform:translateY(-1px)}.payoff-cell.highlighted{border:2px solid #ffffdce6;box-shadow:0 0 25px 8px #ffff64b3,0 0 15px 3px #fffc;transform:scale(1.08) translateY(-3px);z-index:10}.cooperate-cooperate{background:linear-gradient(135deg,#10b9814d,#10b98133);border:1px solid #10b98166}.cooperate-cooperate:before{background:linear-gradient(135deg,#10b98166,#10b9814d)}.cooperate-defect{background:linear-gradient(135deg,#ef44444d,#ef444433);border:1px solid #ef444466}.cooperate-defect:before{background:linear-gradient(135deg,#ef444466,#ef44444d)}.defect-cooperate{background:linear-gradient(135deg,#f59e0b4d,#f59e0b33);border:1px solid #f59e0b66}.defect-cooperate:before{background:linear-gradient(135deg,#f59e0b66,#f59e0b4d)}.defect-defect{background:linear-gradient(135deg,#6b72804d,#6b728033);border:1px solid #6b728066}.defect-defect:before{background:linear-gradient(135deg,#6b728066,#6b72804d)}.payoff-values{color:#fff;font-size:1.125rem;font-weight:800;margin-bottom:.25rem;position:relative;text-shadow:0 2px 6px #0006;z-index:1}.player1-payoff{color:#3b82f6}.player2-payoff{color:#10b981}.payoff-separator{color:#ffffffb3;margin:0 .125rem}.payoff-label{color:#ffffffe6;font-size:.625rem;font-weight:600;letter-spacing:.05em;position:relative;text-transform:uppercase;z-index:1}.payoff-legend{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));padding:.75rem}.payoff-explanation,.payoff-legend{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:.5rem}.payoff-explanation{color:#ffffffe6;flex:1 1 350px;margin-top:0;padding:1rem}.payoff-explanation h3{color:#fff;font-size:1rem;font-weight:700;margin-bottom:.75rem;margin-top:0;text-shadow:0 2px 4px #0000004d}.payoff-explanation ul{font-size:.875rem;font-weight:500;line-height:1.6;list-style-position:inside;margin:0;padding-left:0}.payoff-explanation li{padding:.25rem 0}.legend-item{align-items:center;color:#ffffffe6;display:flex;font-size:.7rem;font-weight:500;gap:.375rem}.legend-color{border-radius:.125rem;flex-shrink:0;height:.75rem;width:.75rem}.legend-color.best{background:linear-gradient(135deg,#f59e0b,#d97706)}.legend-color.good{background:linear-gradient(135deg,#10b981,#059669)}.legend-color.poor{background:linear-gradient(135deg,#6b7280,#4b5563)}.legend-color.worst{background:linear-gradient(135deg,#ef4444,#dc2626)}@media (max-width:768px){.payoff-matrix{padding:.75rem}.matrix-body,.matrix-header{grid-template-columns:60px 1fr}.payoff-cell{padding:.75rem .5rem}.payoff-values{font-size:1rem}.action-labels{gap:.75rem}.payoff-legend{grid-template-columns:1fr}}.matrix-col-header,.matrix-corner,.matrix-row-header{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:#0000!important;box-shadow:none!important}.matrix-col-header .player-label,.matrix-row-header .player-label,.matrix-row-header .player-label.vertical{background:#0000!important;border:0!important;box-shadow:none!important;text-shadow:none!important}.matrix-col-header .player-label{display:grid!important;place-items:center;width:100%}.matrix-row-header{position:relative}.matrix-row-header .player-label.vertical{left:8px;line-height:1;pointer-events:none;position:absolute;text-orientation:mixed;top:50%;transform:translateY(-50%) rotate(180deg);writing-mode:vertical-rl}.matrix-body,.matrix-header{column-gap:10px;grid-template-columns:100px 1fr!important}.matrix-col-header .action-labels{display:grid!important;grid-template-columns:1fr 1fr;justify-items:center}.matrix-row-header .action-labels.vertical{justify-content:flex-end;padding-right:.5rem}@media (max-width:768px){.matrix-body,.matrix-header{column-gap:8px;grid-template-columns:90px 1fr!important}}.payoff-matrix .matrix-row-header .action-labels.vertical{align-items:center;display:grid!important;grid-template-rows:1fr 1fr;justify-items:center;padding-right:0}.payoff-matrix .matrix-row-header .action-labels.vertical .action-cooperate,.payoff-matrix .matrix-row-header .action-labels.vertical .action-defect{line-height:1;margin:0;text-orientation:mixed;transform:rotate(180deg);white-space:nowrap;writing-mode:vertical-rl}.payoff-matrix .matrix-body,.payoff-matrix .matrix-header{column-gap:12px;grid-template-columns:58px 1fr!important}.payoff-matrix .matrix-row-header{padding:.75rem .75rem .75rem 2rem!important;position:relative}.payoff-matrix .matrix-row-header .player-label.vertical{left:6px}@media (max-width:768px){.payoff-matrix .matrix-body,.payoff-matrix .matrix-header{grid-template-columns:80px 1fr!important}}.game-rules-page{animation:gradientShift 15s ease infinite;background:radial-gradient(circle at 20% 80%,#7877c64d 0,#0000 50%),radial-gradient(circle at 80% 20%,#ff77c64d 0,#0000 50%);background-size:400% 400%;font-family:Inter,sans-serif;min-height:100vh;overflow:hidden;padding:1rem;position:relative}.game-rules-page:before{background:radial-gradient(circle at 20% 80%,#7877c64d 0,#0000 50%),radial-gradient(circle at 80% 20%,#ff77c64d 0,#0000 50%),radial-gradient(circle at 40% 40%,#78dbff33 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.game-rules-container{margin:0 auto;max-width:1000px;position:relative;z-index:1}.game-rules-header{animation:fadeInUp 1s ease-out;margin-bottom:2rem;text-align:center}.game-rules-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#fff,#f0f9ff);-webkit-background-clip:text;background-clip:text;color:#fff;font-size:2.5rem;font-weight:800;letter-spacing:-.02em;margin-bottom:.75rem;text-shadow:0 4px 20px #0000004d}.game-rules-subtitle{color:#fffffff2;font-size:1rem;font-weight:400;line-height:1.5;margin:0 auto;max-width:36rem;text-shadow:0 2px 10px #0003}.how-to-play-card{border-radius:.75rem;margin-bottom:1.5rem;padding:1.25rem}.how-to-play-header{gap:.5rem;margin-bottom:1rem}.how-to-play-title{font-size:1rem}.how-to-play-icon{height:1.25rem;width:1.25rem}.how-to-play-steps{grid-gap:1rem;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.step{border-radius:.5rem;padding:1rem}.step:hover{box-shadow:0 15px 30px -12px #0000004d;transform:translateY(-2px)}.step-number{box-shadow:0 8px 20px -5px #3b82f666;font-size:1rem;height:2.5rem;margin:0 auto .5rem;width:2.5rem}.step-title{font-size:.875rem;margin-bottom:.5rem}.step-description{font-size:.8rem;line-height:1.4}.payoff-section{animation:fadeInUp 1s ease-out .3s both;margin-bottom:2rem}.payoff-title{color:#fff;font-size:1.25rem;font-weight:700;margin-bottom:1rem;text-align:center;text-shadow:0 2px 10px #0003}.strategy-tips-card{animation:fadeInUp 1s ease-out .4s both;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff26;border:1px solid #ffffff40;border-radius:.75rem;box-shadow:0 25px 50px -12px #00000040;margin-bottom:1.5rem;padding:1.25rem}.strategy-header{align-items:center;color:#fff;display:flex;gap:.5rem;margin-bottom:1rem}.strategy-title{font-size:1rem;font-weight:700;letter-spacing:-.01em}.strategy-icon{filter:drop-shadow(0 2px 4px rgba(0,0,0,.2));height:1.25rem;width:1.25rem}.strategy-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.strategy-item{align-items:flex-start;background:#ffffff14;border:1px solid #ffffff26;border-radius:.5rem;display:flex;gap:.75rem;padding:1rem;transition:all .3s ease}.strategy-item:hover{background:#ffffff1f;transform:translateY(-1px)}.strategy-item-icon{color:#3b82f6;flex-shrink:0;height:1rem;margin-top:.125rem;width:1rem}.strategy-content h4{color:#fff;font-size:.875rem;font-weight:600;margin-bottom:.25rem}.strategy-content p{color:#ffffffd9;font-size:.8rem;line-height:1.4}.game-modes{grid-gap:1rem;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.game-mode-card{animation:fadeInUp 1s ease-out .5s both;border-radius:.75rem;padding:1.25rem}.game-mode-card:hover{box-shadow:0 30px 60px -12px #00000059;transform:translateY(-4px) scale(1.01)}.game-mode-icon-container{box-shadow:0 10px 25px -5px #0003;height:3rem;margin:0 auto 1rem;padding:1rem;width:3rem}.game-mode-card:hover .game-mode-icon-container{box-shadow:0 15px 35px -5px #0000004d;transform:scale(1.1) rotate(3deg)}.game-mode-icon{height:1.5rem;width:1.5rem}.game-mode-title{font-size:1.125rem;margin-bottom:.5rem}.game-mode-description{font-size:.8rem;line-height:1.4;margin-bottom:1rem}.game-mode-button{border-radius:.5rem;box-shadow:0 8px 20px -5px #0000004d;font-size:.875rem;padding:.75rem 1.5rem}.online-button:hover{box-shadow:0 12px 25px -5px #ef444466;transform:translateY(-1px)}.bot-button:hover{box-shadow:0 12px 25px -5px #3b82f666;transform:translateY(-1px)}.game-mode-button.active{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 12px 25px -5px #10b98166}.start-game-section{animation:fadeInUp 1s ease-out .6s both;text-align:center}.start-game-button{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:1rem;box-shadow:0 12px 25px -5px #10b98166;color:#fff;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:700;gap:.5rem;letter-spacing:.05em;overflow:hidden;padding:.875rem 2rem;position:relative;text-transform:uppercase;transition:all .3s ease}.start-game-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.start-game-button:hover:not(:disabled):before{left:100%}.start-game-button:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);box-shadow:0 15px 35px -5px #10b98180;transform:translateY(-2px)}.start-game-button:disabled{cursor:not-allowed;opacity:.7;transform:none}.start-game-icon{height:1rem;width:1rem}@media (max-width:768px){.game-rules-title{font-size:2rem}.game-rules-subtitle{font-size:.875rem}.game-modes,.how-to-play-steps,.strategy-grid{grid-template-columns:1fr}.game-mode-card{padding:1rem}}.game-page{background:radial-gradient(circle at 20% 80%,#7877c64d 0,#0000 50%),radial-gradient(circle at 80% 20%,#ff77c64d 0,#0000 50%),#1a202c;padding:1rem}.connecting-screen{align-items:center;display:flex;justify-content:center;min-height:80vh;position:relative;z-index:1}.connecting-animation{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff26;border:1px solid #ffffff40;border-radius:1rem;box-shadow:0 25px 50px -12px #00000040;padding:2rem;text-align:center}.connecting-spinner{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:2rem;margin:0 auto 1rem;width:2rem}.connecting-title{color:#fff;font-size:1.25rem;font-weight:700;margin-bottom:.5rem}.connecting-text{color:#ffffffe6;font-size:.875rem}.waiting-screen{align-items:center;display:flex;justify-content:center;min-height:80vh;position:relative;z-index:1}.waiting-container{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff26;border:1px solid #ffffff40;border-radius:1rem;box-shadow:0 25px 50px -12px #00000040;max-width:500px;padding:2rem;text-align:center;width:100%}.waiting-animation{margin-bottom:1rem}.waiting-icon{animation:pulse 2s infinite;color:#fff;filter:drop-shadow(0 4px 15px rgba(0,0,0,.3));height:2rem;width:2rem}.waiting-title{color:#fff;font-size:1.5rem;font-weight:700;margin-bottom:.5rem;text-shadow:0 2px 10px #0000004d}.waiting-text{color:#ffffffe6;font-size:.875rem;line-height:1.5;margin-bottom:1rem}.waiting-info{background:#ffffff1a;border:1px solid #fff3;border-radius:.5rem;margin-bottom:1rem;padding:1rem}.info-item{align-items:center;color:#ffffffe6;display:flex;font-size:.875rem;font-weight:500;justify-content:space-between;margin-bottom:.5rem}.info-item:last-child{margin-bottom:0}.match-id{background:#fff3;border-radius:.25rem;font-family:monospace;font-size:.75rem;padding:.25rem .5rem}.game-mode,.match-id{color:#fff;font-weight:600}.game-mode{align-items:center;display:flex;gap:.25rem}.mode-icon{height:1rem;width:1rem}.game-screen{background:radial-gradient(circle at 20% 80%,#7877c64d 0,#0000 50%),radial-gradient(circle at 80% 20%,#ff77c64d 0,#0000 50%);margin:0 auto;max-width:1200px;position:relative;z-index:1}.game-header{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff26;border:1px solid #ffffff40;border-radius:.75rem;box-shadow:0 25px 50px -12px #00000040;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1rem;padding:1rem}.game-title-section{color:#fff}.game-title{font-size:1.5rem;margin-bottom:.25rem;text-shadow:0 2px 10px #0000004d}.game-subtitle{color:#ffffffe6;font-size:.875rem;font-weight:500}.game-status{gap:.5rem}.game-status,.player-info{align-items:flex-end;display:flex;flex-direction:column}.player-info{gap:.25rem}.player-label{color:#fff;font-size:.875rem;font-weight:600}.game-mode-indicator{color:#fffc;font-weight:500;gap:.25rem}.action-status,.game-mode-indicator{align-items:center;display:flex;font-size:.75rem}.action-status{border-radius:1rem;font-weight:600;gap:.5rem;letter-spacing:.05em;padding:.5rem 1rem;text-transform:uppercase}.status-active{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 10px 25px -5px #10b98166;color:#fff}.status-active,.status-waiting{align-items:center;display:flex;gap:.5rem}.status-waiting{background:#ffffff26;border:1px solid #ffffff40;color:#ffffffe6}.status-icon{height:.875rem;width:.875rem}.game-content{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 300px;margin-bottom:1rem}.game-main{display:flex;flex:2 1;flex-direction:column;gap:1rem}.timer-section{background:#ffffff1a;border-radius:.75rem;min-height:160px;padding:1rem}.timer-circle-container,.timer-section{align-items:center;display:flex;justify-content:center;position:relative}.timer-circle-container{height:120px;margin:0 auto;width:120px}.timer-svg{height:120px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%) rotate(-90deg);width:120px}.timer-circle-bg,.timer-circle-progress{fill:none;stroke-width:5}.timer-circle-bg{stroke:#fff3}.timer-circle-progress{stroke:#3b82f6;stroke-linecap:round;filter:drop-shadow(0 0 5px rgba(59,130,246,.7));transition:stroke-dashoffset 1s linear}.timer-text-container{color:#fff;left:50%;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%);width:100%;z-index:1}.timer-time{font-size:2.5rem;font-weight:800;line-height:1;text-shadow:0 2px 10px #0000004d}.timer-label{color:#fffc;font-size:.625rem;letter-spacing:.1em}.timer-section.results-display{color:#fff;flex-direction:column}.results-display .results-icon{color:#f59e0b;filter:drop-shadow(0 4px 10px rgba(245,158,11,.4));height:3rem;margin-bottom:.5rem;width:3rem}.results-display h4{font-size:1.125rem;margin:0;text-shadow:0 2px 6px #0006}.scores-section{grid-gap:1rem;display:grid;grid-template-columns:1fr 1fr}.score-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff26;border:1px solid #ffffff40;border-radius:.75rem;box-shadow:0 25px 50px -12px #00000040;padding:1rem;text-align:center;transition:all .3s ease}.score-card:hover{box-shadow:0 35px 70px -12px #00000059;transform:translateY(-2px)}.score-header{color:#fff;margin-bottom:.5rem}.score-header h3{font-size:.875rem;font-weight:600}.score-icon{height:1rem;width:1rem}.score-value{color:#fff;font-size:1.75rem;font-weight:800;text-shadow:0 2px 10px #0000004d}.player1 .score-value{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#2563eb);-webkit-background-clip:text;background-clip:text}.player2 .score-value{color:#10b981}.score-value .round-gain{animation:pulse-gain 1s ease-in-out;color:#f59e0b}.score-label{color:#ffffffb3;font-size:.7rem;font-weight:500;letter-spacing:.05em;margin-top:.125rem;text-transform:uppercase}.action-section{background:#ffffff1a;border-radius:.75rem;box-shadow:0 25px 50px -12px #00000040;padding:1rem;text-align:center}.action-title{color:#fff;font-size:1rem;font-weight:700;margin-bottom:1rem;text-shadow:0 2px 10px #0000004d}.action-buttons{flex-direction:column}.action-button{border-radius:.5rem;display:flex;font-size:.875rem;font-weight:700;overflow:hidden;padding:.75rem 1rem;position:relative;text-align:left;transition:all .3s ease}.button-icon{flex-shrink:0;height:1rem;margin-right:.75rem;width:1rem}.button-content{display:flex;flex-direction:column}.button-label{font-size:.875rem;font-weight:700;margin-bottom:.125rem}.button-description{font-size:.7rem;font-weight:400;line-height:1.2;opacity:.9}.cooperate-button{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 8px 20px -5px #10b98166;color:#fff}.cooperate-button:hover:not(.disabled){background:linear-gradient(135deg,#059669,#047857);box-shadow:0 12px 25px -5px #10b98180;transform:translateY(-2px)}.defect-button{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 8px 20px -5px #ef444466;color:#fff}.defect-button:hover:not(.disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 12px 25px -5px #ef444480;transform:translateY(-2px)}.action-button.disabled{box-shadow:0 4px 10px -3px #0003;cursor:not-allowed;opacity:.6;transform:none}.game-sidebar{display:flex;flex-direction:column;gap:1rem}.round-progress{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff26;border:1px solid #ffffff40;border-radius:.75rem;box-shadow:0 25px 50px -12px #00000040;padding:1rem}.progress-title{color:#fff;font-size:1rem;font-weight:700;margin-bottom:.75rem;text-align:center;text-shadow:0 2px 10px #0000004d}.progress-bar{background:#fff3;border-radius:.5rem;height:.5rem;margin-bottom:.5rem;overflow:hidden}.progress-fill{background:linear-gradient(135deg,#10b981,#059669);border-radius:.5rem;box-shadow:0 0 15px #10b98180;height:100%;transition:width .5s ease}.progress-text{color:#ffffffe6;font-size:.75rem;font-weight:600;text-align:center}.round-history-section{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff26;border:1px solid #ffffff40;border-radius:.75rem;box-shadow:0 25px 50px -12px #00000040;padding:1rem}.game-over-screen{align-items:center;display:flex;justify-content:center;min-height:80vh;position:relative;z-index:1}.game-over-container{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff26;border:1px solid #ffffff40;border-radius:1rem;box-shadow:0 25px 50px -12px #00000040;max-width:700px;padding:2rem;text-align:center}.game-over-header{margin-bottom:2rem}.result-icon-container{align-items:center;border-radius:50%;box-shadow:0 25px 50px -12px #0000004d;display:flex;height:4rem;justify-content:center;margin:0 auto 1rem;padding:1rem;width:4rem}.result-icon-container.winner{background:linear-gradient(135deg,#fbbf24,#f59e0b)}.result-icon-container.tie{background:linear-gradient(135deg,#6b7280,#4b5563)}.result-icon-container.loser{background:linear-gradient(135deg,#ef4444,#dc2626)}.result-icon{color:#fff;filter:drop-shadow(0 4px 15px rgba(0,0,0,.3));height:2rem;width:2rem}.game-over-title{font-size:2rem;margin-bottom:.5rem}.game-over-subtitle{color:#ffffffe6;font-size:1rem;line-height:1.5}.final-scores-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin-bottom:2rem}.final-scores-grid .score-card{padding:1.5rem 1rem}.final-scores-grid .score-value{font-size:2.5rem;margin-bottom:.5rem}.score-details{color:#ffffffb3;font-size:.75rem;font-weight:500}.game-actions{align-items:center;display:flex;flex-direction:column;gap:1rem;justify-content:center;margin-bottom:2rem;width:100%}.play-again-button{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:.5rem;box-shadow:0 10px 25px -5px #3b82f666;display:flex;gap:.5rem;padding:.75rem 1.5rem}.play-again-button:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 15px 30px -5px #3b82f680;transform:translateY(-2px)}.menu-button{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:2px solid #ffffff4d;border-radius:.5rem;color:#fff;display:flex;gap:.5rem;padding:.75rem 1.5rem}.menu-button:hover{background:#fff3}@keyframes pulse-gain{0%{transform:scale(1)}50%{transform:scale(1.15)}to{transform:scale(1)}}.round-transition{align-items:center;background:#ffffff1a;border-radius:.75rem;display:flex;justify-content:center;min-height:160px;padding:2rem;position:relative}.transition-content{color:#fff;text-align:center}.transition-number{-webkit-text-fill-color:#0000;animation:pulse 1s ease-in-out infinite;background:linear-gradient(135deg,#3b82f6,#1d4ed8);-webkit-background-clip:text;background-clip:text;font-size:4rem;font-weight:800;line-height:1;margin-bottom:.5rem;text-shadow:0 4px 20px #3b82f666}.transition-content h4{font-size:1.5rem;font-weight:700;margin-bottom:.25rem;text-shadow:0 2px 10px #0000004d}.transition-content p{color:#fffc;font-size:.875rem;font-weight:500}.round-results-summary{background:#ffffff1a;border:1px solid #fff3;border-radius:.5rem;margin-top:1rem;padding:1rem}.actions-display{color:#ffffffe6;display:flex;font-size:.875rem;justify-content:space-between;margin-bottom:.5rem}.actions-display span{background:#ffffff1a;border-radius:.25rem;font-weight:600;padding:.25rem .5rem}.points-display{color:#10b981;font-size:1rem;font-weight:700;text-align:center}.results-display{align-items:center;background:#ffffff1a;border-radius:.75rem;display:flex;flex-direction:column;justify-content:center;min-height:160px;padding:2rem;position:relative;text-align:center}.results-display .results-icon{color:#fbbf24;filter:drop-shadow(0 4px 15px rgba(251,191,36,.4));height:2.5rem;margin-bottom:1rem;width:2.5rem}.results-display h4{color:#fff;font-size:1.25rem;font-weight:700;margin-bottom:.5rem;text-shadow:0 2px 10px #0000004d}@media (max-width:1200px){.game-content{flex-direction:column}.game-sidebar{order:-1}}@media (max-width:768px){.game-header{flex-direction:column;text-align:center}.game-status{align-items:center}.action-buttons,.final-scores-grid,.scores-section{grid-template-columns:1fr}.game-actions{flex-direction:column}.game-title{font-size:1.25rem}.game-over-title{font-size:1.5rem}}.survey-button{max-width:500px;pointer-events:auto;position:relative;width:100%;z-index:10}.survey-button:hover{background:linear-gradient(135deg,#5a6fd8,#6a4190)}.survey-button:active{box-shadow:0 2px 10px #667eea4d;transform:translateY(0)}.survey-button:focus{outline:2px solid #667eea80;outline-offset:2px}@media (max-width:768px){.survey-button{font-size:.9rem;margin-bottom:.75rem;min-width:auto;padding:.875rem 1rem;width:100%}.survey-modal-content{margin:.5rem;max-width:95vw}.game-actions{align-items:center;flex-direction:column;gap:.75rem}}@media (max-width:480px){.survey-button{font-size:.8rem;min-width:280px;padding:.75rem .875rem}.survey-button .button-icon{height:1rem;width:1rem}}.action-buttons,.choice-buttons,.make-choice-panel{display:grid;justify-items:center}.action-button{--btn-h:56px;--btn-w:560px;--radius:14px;align-items:center;border:none;border-radius:var(--radius);box-shadow:0 8px 16px #00000040,inset 0 0 0 1px #ffffff26;cursor:pointer;display:inline-flex;font-weight:800;gap:10px;height:var(--btn-h);justify-content:center;letter-spacing:.02em;margin:8px auto;padding:0 22px;text-align:center;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease;width:min(92%,var(--btn-w))}.cooperate-button{background:linear-gradient(180deg,#1ad07e,#0ea366);color:#f7fff9}.cooperate-button:hover:not(.disabled){box-shadow:0 14px 28px #10b98159,inset 0 0 0 3px #10b98138,0 0 16px #10b98159;transform:translateY(-1px)}.cooperate-button:active:not(.disabled){box-shadow:inset 0 3px 12px #00000059;transform:translateY(0)}.defect-button{background:linear-gradient(180deg,#f25757,#d83a3a);color:#fff7f7}.defect-button:hover:not(.disabled){box-shadow:0 14px 28px #ef444459,inset 0 0 0 3px #ef444438,0 0 16px #ef444459;transform:translateY(-1px)}.defect-button:active:not(.disabled){box-shadow:inset 0 3px 12px #00000059;transform:translateY(0)}.action-button.disabled,.action-button:disabled{box-shadow:0 8px 16px #00000026,inset 0 0 0 1px #ffffff14!important;cursor:not-allowed;filter:grayscale(18%);opacity:.55}@media (max-width:640px){.action-button{--btn-h:52px;--btn-w:520px;font-size:.95rem}}.player-box,.player-card,.player-panel,.score-card,.score-panel{align-items:center;display:flex;justify-content:center;text-align:center}.player-box>h3,.player-card>h3,.player-panel>h3,.score-card>h3,.score-panel>h3{align-items:center;display:flex;font-weight:800;justify-content:center;margin:0;width:100%}.player-card .subtext,.player-panel .subtext{text-align:center;width:100%}.scores-section{align-items:stretch}.score-card{display:grid;grid-template-rows:auto 1fr auto;min-height:150px}.score-header{align-items:center;display:flex;gap:.5rem;justify-content:center;margin-bottom:.25rem;min-height:28px}.score-header h3{font-weight:800;margin:0;text-align:center;width:auto}.score-value{min-height:2.75rem}.score-label,.score-value{align-items:center;display:flex;justify-content:center}.score-label{margin-top:.25rem;min-height:18px}.score-value{font-size:2rem}.payoffs-title{font-size:1rem;margin:0 0 .75rem}.payoffs-wrapper{overflow:hidden}.payoffs-table td,.payoffs-table th{font-size:.85rem;padding:.5rem}.player-label{background:#ffffff1a;font-weight:700;width:80px}.total-column{background:#3b82f633!important;width:80px}.total-cell,.total-column{border-left:2px solid #3b82f666!important;color:#60a5fa!important;font-weight:800}.total-cell{background:#3b82f626!important;font-size:1rem}@media (max-width:600px){.payoffs-wrapper{overflow-x:auto;padding:1rem .75rem}.payoffs-table{width:max-content}}.game-timer,.timer-container{align-items:center;display:flex;justify-content:center}.timer-container{position:relative}.timer-svg{filter:drop-shadow(0 8px 20px rgba(0,0,0,.3));height:60px;width:60px}.timer-track{opacity:.3}.timer-progress{filter:drop-shadow(0 0 8px rgba(16,185,129,.5));transition:stroke-dashoffset 1s ease-in-out}.timer-content{align-items:center;color:#fff;display:flex;flex-direction:column;justify-content:center;position:absolute;text-align:center}.timer-icon{margin-bottom:.125rem;opacity:.8}.timer-text{font-size:1.25rem;font-weight:800;line-height:1;text-shadow:0 2px 8px #00000080}.timer-label{font-size:.6rem;font-weight:600;letter-spacing:.05em;margin-top:.125rem;opacity:.8;text-transform:uppercase}@media (max-width:768px){.timer-svg{height:50px;width:50px}.timer-text{font-size:1rem}.timer-icon{height:.875rem;width:.875rem}}.survey-form-container{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:600px;padding:2rem}.survey-form-header{border-bottom:2px solid #e2e8f0;margin-bottom:2rem;padding-bottom:1rem;text-align:center}.survey-form-header h2{color:#2d3748;font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.survey-form-header p{color:#718096;font-size:1rem;margin:0}.survey-form{gap:1.5rem}.form-group,.survey-form{display:flex;flex-direction:column}.form-group{gap:.5rem}.form-group label{color:#2d3748;font-size:.95rem;font-weight:500}.form-group select,.form-group textarea{background-color:#fff;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;padding:.75rem;transition:border-color .2s ease,box-shadow .2s ease}.form-group select:focus,.form-group textarea:focus{border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a;outline:none}.form-group select.error,.form-group textarea.error{border-color:#e53e3e;box-shadow:0 0 0 3px #e53e3e1a}.form-group textarea{font-family:inherit;min-height:100px;resize:vertical}.error-message{color:#e53e3e;font-size:.875rem;font-weight:500;margin-top:.25rem}.submit-error{background-color:#fed7d7;border:1px solid #feb2b2;border-radius:6px;font-weight:500;padding:.75rem;text-align:center}.form-actions{border-top:2px solid #e2e8f0;display:flex;gap:1rem;justify-content:center;margin-top:2rem;padding-top:1.5rem}.cancel-button,.submit-button{border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;min-width:120px;padding:.75rem 2rem;transition:all .2s ease}.cancel-button{background-color:#e2e8f0;color:#4a5568}.cancel-button:hover:not(:disabled){background-color:#cbd5e0;transform:translateY(-1px)}.submit-button{background-color:#3182ce}.submit-button:hover:not(:disabled){background-color:#2c5aa0;transform:translateY(-1px)}.cancel-button:disabled,.submit-button:disabled{cursor:not-allowed;opacity:.6;transform:none}@media (max-width:768px){.survey-form-container{margin:1rem;padding:1.5rem}.survey-form-header h2{font-size:1.25rem}.form-actions{flex-direction:column}.cancel-button,.submit-button{width:100%}}@media (prefers-color-scheme:dark){.survey-form-container{background:#1a202c;color:#e2e8f0}.survey-form-header h2{color:#f7fafc}.survey-form-header p{color:#a0aec0}.form-group label{color:#e2e8f0}.form-group select,.form-group textarea{background-color:#2d3748;border-color:#4a5568;color:#e2e8f0}.form-group select:focus,.form-group textarea:focus{border-color:#63b3ed;box-shadow:0 0 0 3px #63b3ed1a}.form-actions,.survey-form-header{border-color:#4a5568}}.survey-demo-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:2rem}.demo-content{color:#fff;max-width:600px;text-align:center}.demo-content h1{font-size:2.5rem;font-weight:700;margin-bottom:1rem}.demo-content p{font-size:1.2rem;margin-bottom:2rem;opacity:.9}.demo-button{background:#fff;border:none;border-radius:8px;box-shadow:0 4px 15px #0003;color:#667eea;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1rem 2rem;transition:all .3s ease}.demo-button:hover{box-shadow:0 6px 20px #0000004d;transform:translateY(-2px)}.submission-result{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:8px;margin:2rem 0;padding:1.5rem;text-align:left}.submission-result h3{color:#fff;margin-bottom:1rem}.submission-result pre{background:#0000004d;border-radius:4px;color:#e2e8f0;font-size:.9rem;overflow-x:auto;padding:1rem}.homepage{animation:gradientShift 15s ease infinite;background:radial-gradient(circle at 20% 80%,#7877c64d 0,#0000 50%),radial-gradient(circle at 80% 20%,#ff77c64d 0,#0000 50%),#1a202c;background-size:400% 400%;font-family:Inter,sans-serif;min-height:100vh;overflow:hidden;padding:2rem 1rem;position:relative}.homepage:before{background:radial-gradient(circle at 20% 80%,#7877c64d 0,#0000 50%),radial-gradient(circle at 80% 20%,#ff77c64d 0,#0000 50%),radial-gradient(circle at 40% 40%,#78dbff33 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.homepage-container{margin:0 auto;max-width:1200px;position:relative;z-index:1}.homepage-header{animation:fadeInUp 1s ease-out;margin-bottom:4rem;text-align:center}.homepage-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#fff,#f0f9ff);-webkit-background-clip:text;background-clip:text;color:#fff;font-size:5rem;font-weight:800;letter-spacing:-.02em;margin-bottom:1.5rem;text-shadow:0 4px 20px #0000004d}.homepage-subtitle{color:#fffffff2;font-size:1.375rem;font-weight:400;line-height:1.7;margin:0 auto;max-width:48rem;text-shadow:0 2px 10px #0003}.how-to-play-card{animation:fadeInUp 1s ease-out .2s both;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff26;border:1px solid #ffffff40;border-radius:1.5rem;box-shadow:0 25px 50px -12px #00000040,inset 0 0 0 1px #ffffff1a;margin-bottom:3rem;padding:2.5rem}.how-to-play-header{align-items:center;color:#fff;display:flex;gap:.75rem;margin-bottom:2rem}.how-to-play-title{font-size:1.5rem;font-weight:700;letter-spacing:-.01em}.how-to-play-icon{filter:drop-shadow(0 2px 4px rgba(0,0,0,.2));height:2rem;width:2rem}.how-to-play-steps{grid-gap:2rem;color:#fffffff2;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.step{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff14;border:1px solid #ffffff26;border-radius:1rem;padding:1.5rem;text-align:center;transition:all .3s ease}.step:hover{background:#ffffff1f;box-shadow:0 20px 40px -12px #0000004d;transform:translateY(-4px)}.step-number{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:50%;box-shadow:0 10px 25px -5px #3b82f666;color:#fff;display:flex;font-size:1.5rem;font-weight:700;height:4rem;justify-content:center;margin:0 auto 1rem;width:4rem}.step-title{font-size:1.125rem;font-weight:600;letter-spacing:-.01em;margin-bottom:.75rem}.step-description{font-size:.95rem;line-height:1.6;opacity:.9}.how-to-play-instructions{border-top:1px solid #ffffff26;margin-top:2rem;padding-top:2rem}.instruction-section{color:#fffffff2}.instruction-intro{font-size:1.125rem;line-height:1.7;margin-bottom:1.5rem;text-align:center}.instruction-details{margin-bottom:2rem}.examples-section h4,.instruction-details h4{color:#fff;font-size:1.125rem;font-weight:600;margin-bottom:1rem}.instruction-details ul{list-style:none;padding:0}.instruction-details li{margin-bottom:.75rem;padding-left:1.5rem;position:relative}.instruction-details li:before{color:#3b82f6;content:"•";font-weight:700;left:0;position:absolute}.examples-section{grid-gap:1.5rem;display:grid;gap:1.5rem}.example{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff14;border:1px solid #ffffff26;border-radius:1rem;padding:1.5rem;transition:all .3s ease}.example:hover{background:#ffffff1f;transform:translateY(-2px)}.example h5{color:#fff;font-size:1rem;margin-bottom:.75rem}.example p{font-size:.95rem;line-height:1.5;margin-bottom:.5rem}.example-result{border-top:1px solid #ffffff1a;font-size:1rem!important;margin-top:.75rem;padding-top:.75rem}.game-modes{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.game-mode-card{animation:fadeInUp 1s ease-out .4s both;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff26;border:1px solid #ffffff40;border-radius:1.5rem;box-shadow:0 25px 50px -12px #00000040;cursor:pointer;overflow:hidden;padding:2.5rem;position:relative;text-align:center;transition:all .4s cubic-bezier(.4,0,.2,1)}.game-mode-card:before{background:linear-gradient(135deg,#ffffff1a,#0000);bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.game-mode-card:hover:before{opacity:1}.game-mode-card:hover{background:#fff3;border-color:#ffffff59;box-shadow:0 35px 70px -12px #00000059;transform:translateY(-8px) scale(1.02)}.game-mode-icon-container{align-items:center;background:linear-gradient(135deg,#ffffff40,#ffffff1a);border-radius:50%;box-shadow:0 15px 35px -5px #0003;display:flex;height:5rem;justify-content:center;margin:0 auto 1.5rem;padding:1.5rem;transition:all .4s ease;width:5rem}.game-mode-card:hover .game-mode-icon-container{box-shadow:0 20px 45px -5px #0000004d;transform:scale(1.15) rotate(5deg)}.game-mode-icon{color:#fff;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2));height:2.5rem;width:2.5rem}.game-mode-title{color:#fff;font-size:1.75rem;font-weight:700;letter-spacing:-.01em;margin-bottom:.75rem}.game-mode-description{color:#ffffffd9;font-size:1rem;line-height:1.6;margin-bottom:2rem}.game-mode-button{border:none;border-radius:1rem;box-shadow:0 10px 25px -5px #0000004d;cursor:pointer;font-size:1.125rem;font-weight:600;letter-spacing:.05em;overflow:hidden;padding:1rem 2rem;position:relative;text-transform:uppercase;transition:all .3s ease;width:100%}.game-mode-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.game-mode-button:hover:before{left:100%}.online-button{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.online-button:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 15px 35px -5px #ef444466;transform:translateY(-2px)}.bot-button{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.bot-button:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 15px 35px -5px #3b82f666;transform:translateY(-2px)}@media (max-width:768px){.homepage-title{font-size:3rem}.homepage-subtitle{font-size:1.125rem}.game-modes,.how-to-play-steps{grid-template-columns:1fr}.game-mode-card{padding:2rem}}.payoffs-title{color:#38bdf8;display:block;font-family:inherit;font-size:1.05rem;margin:0 auto .85rem;text-shadow:0 2px 6px #0000004d;width:fit-content}.payoffs-wrapper{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff26;border:1px solid #ffffff40;border-radius:.75rem;box-shadow:0 25px 50px -12px #00000040;margin:0 auto;overflow-x:hidden;padding:1rem}.payoffs-table{border-collapse:collapse;table-layout:fixed;width:100%}.payoffs-table td,.payoffs-table th{border:1px solid #ffffff26;color:#fff;font-size:.82rem;padding:.5rem .55rem;text-align:center}.payoffs-table th{background:#ffffff1a;font-weight:700}.payoffs-table th:first-child,.player-label{background:#ffffff1a;padding-left:.75rem;text-align:left;white-space:nowrap;width:110px}.total-col{width:80px}.running-total-cell,.total-col{background:linear-gradient(135deg,#10b981,#059669)!important;border-left:2px solid #047857!important;color:#fff!important;font-weight:800!important;text-shadow:0 1px 2px #0000004d}.running-total-cell{font-size:.9rem!important}.empty-total-cell{background:#9ca3af4d!important;border-left:2px solid #047857!important;color:#9ca3af!important;font-style:italic}.running-total-cell:hover{background:linear-gradient(135deg,#047857,#065f46)!important;transform:scale(1.05);transition:all .2s ease}@media (max-width:520px){.payoffs-wrapper{overflow-x:auto}.payoffs-table td,.payoffs-table th{font-size:.72rem;padding:.4rem .45rem}.total-col{width:60px}.running-total-cell{font-size:.7rem!important;padding:.3rem .25rem!important}}.game-page{animation:gradientShift 15s ease infinite;background:linear-gradient(135deg,#1a202c,#2d3748 50%,#1a202c);background-size:400% 400%;font-family:Inter,sans-serif;min-height:100vh;overflow:hidden;padding:1.5rem 1rem;position:relative}.game-page:before{background:radial-gradient(circle at 20% 80%,#7877c64d 0,#0000 50%),radial-gradient(circle at 80% 20%,#ff77c64d 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.game-container{margin:0 auto;max-width:1400px;position:relative;width:95%;z-index:1}.game-header{animation:fadeInDown 1s ease-out;margin-bottom:2rem;text-align:center}.instructions-compact{background:#3b82f626;border:1px solid #3b82f64d;border-radius:8px;color:#fff;margin-bottom:1.5rem;padding:1rem;text-align:center}.instructions-compact p{font-size:.95rem;line-height:1.4;margin:0}.round-summary-section{color:#fffffff2}.round-summary-section h3{color:#fff;font-size:1.25rem;font-weight:600;margin:0 0 1.5rem}.proposal-summary{margin-bottom:2rem}.proposal-item{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.proposal-item h4{color:#fff;font-size:1rem;font-weight:600;margin:0 0 .5rem}.proposal-item p{line-height:1.5;margin:0}.response-status.accept{color:#10b981;font-weight:600}.response-status.reject{color:#ef4444;font-weight:600}.payoff-summary{background:#3b82f61a;border:1px solid #3b82f64d;border-radius:12px;padding:1.5rem;text-align:center}.payoff-summary h4{color:#fff;font-size:1.25rem;margin:0}.game-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#fff,#f0f9ff);-webkit-background-clip:text;background-clip:text;color:#fff;font-size:2.5rem;font-weight:800;letter-spacing:-.02em;margin-bottom:.75rem;text-shadow:0 4px 20px #0000004d}.game-title.simultaneous{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#fff,#f0f9ff 50%,#e0f2fe);-webkit-background-clip:text;background-clip:text}.game-title.simultaneous:after{content:"⚡";filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));font-size:.8em;margin-left:.5rem}.game-subtitle{color:#fffffff2;font-size:1rem;font-weight:400;line-height:1.5;margin:0 auto;max-width:500px;text-shadow:0 2px 10px #0003}.match-id{color:#fffc;font-size:.875rem;font-weight:500;margin-bottom:.25rem}.player-id{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:1.5rem;color:#ffffffe6;display:inline-block;margin-top:.5rem}.connection-status,.player-id{font-size:.875rem;font-weight:600;padding:.5rem 1rem}.connection-status{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid #ffffff4d;border-radius:1.5rem;box-shadow:0 8px 20px -5px #0003;position:absolute;right:1.5rem;top:1.5rem;z-index:10}.connection-icon{height:1rem;width:1rem}.connected,.connection-status.connected{background:#10b98126;border-color:#10b9814d;color:#059669}.connecting,.connection-status.connecting{background:#fbbf2426;border-color:#fbbf244d;color:#d97706}.connection-status.disconnected,.disconnected{background:#ef444426;border-color:#ef44444d;color:#dc2626}.game-board{animation:fadeInUp 1s ease-out .3s both;display:flex;justify-content:center;margin-bottom:3rem}.game-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#1e293bf2;border:1px solid #fff3;border-radius:1.5rem;box-shadow:0 35px 80px -15px #0006,inset 0 0 0 1px #ffffff1a;color:#fff;max-width:50rem;overflow:hidden;position:relative;width:100%}.game-card:before{animation:shimmer 3s ease-in-out infinite;background:radial-gradient(circle at 20% 80%,#7877c64d 0,#0000 50%),radial-gradient(circle at 80% 20%,#ff77c64d 0,#0000 50%),#1a202c;background-size:200% 100%;content:"";height:3px;left:0;position:absolute;right:0;top:0}.game-card-header{background:linear-gradient(135deg,#3b82f60d,#10b9810d);padding:1.5rem 1.5rem .75rem;position:relative;text-align:center}.timer{align-items:center;background:#fffc;border:1px solid #ffffff80;border-radius:1.5rem;box-shadow:0 4px 15px -3px #0000001a;color:#374151;display:flex;font-size:.875rem;font-weight:600;gap:.375rem;padding:.375rem .75rem;position:absolute;right:1rem;top:1rem}.timer-icon{color:#3b82f6;height:1rem;width:1rem}.phase-title{color:#fff;font-size:1.5rem;font-weight:800;letter-spacing:-.01em;margin-bottom:.75rem;text-shadow:0 2px 4px #0000001a}.game-card-content{display:flex;flex-direction:column;gap:1.5rem;padding:1rem 1.5rem 1.5rem;text-align:center}.money-display{background:linear-gradient(135deg,#fbbf24,#f59e0b);border-radius:1rem;box-shadow:0 20px 40px -10px #fbbf2466,inset 0 0 0 1px #fff3;overflow:hidden;padding:1.5rem;position:relative}.money-display:before{animation:shine 3s ease-in-out infinite;background:linear-gradient(45deg,#0000 30%,#ffffff1a 50%,#0000 70%);content:"";height:200%;left:-50%;position:absolute;top:-50%;width:200%}@keyframes shine{0%{transform:translateX(-100%) translateY(-100%) rotate(45deg)}to{transform:translateX(100%) translateY(100%) rotate(45deg)}}.money-content{align-items:center;color:#1f2937;display:flex;font-size:2rem;font-weight:800;gap:.5rem;justify-content:center;position:relative;text-shadow:0 2px 4px #0000001a;z-index:1}.money-icon{filter:drop-shadow(0 2px 4px rgba(0,0,0,.2));height:2rem;width:2rem}.offer-section{display:flex;flex-direction:column;gap:1rem}.offer-label{color:#fff;font-size:1rem;font-weight:600;margin-bottom:.75rem}.offer-input-container{position:relative}.offer-input{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffc;border:2px solid #e5e7eb;border-radius:.75rem;color:#1f2937;font-size:1.5rem;font-weight:700;height:3rem;outline:none;text-align:center;transition:all .3s ease;width:100%}.offer-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a,0 8px 20px -5px #3b82f633;transform:translateY(-1px)}.dollar-sign{color:#9ca3af;font-size:1.25rem;font-weight:600;left:.75rem;position:absolute;top:50%;transform:translateY(-50%)}.submit-button{background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:.75rem;box-shadow:0 12px 25px -5px #ef444466;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;letter-spacing:.05em;overflow:hidden;padding:1rem;position:relative;text-transform:uppercase;transition:all .3s ease;width:100%}.submit-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.submit-button:hover:not(:disabled):before{left:100%}.submit-button:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 12px 25px -5px #ef444480;transform:translateY(-2px)}.submit-button:disabled{box-shadow:0 4px 12px -3px #0003;cursor:not-allowed;opacity:.6;transform:none}.waiting-section{align-items:center;display:flex;flex-direction:column;gap:1rem}.waiting-animation{animation:pulse 2s infinite}.waiting-spinner{animation:spin 1s linear infinite;border:2px solid #e5e7eb;border-radius:50%;border-top-color:#3b82f6;height:2.5rem;margin:0 auto 1rem;width:2.5rem}.waiting-text{color:#4b5563;font-size:1rem;font-weight:500}.error-section,.loading-section{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:400px;padding:2rem;text-align:center}.loading-spinner{animation:spin 1s linear infinite;color:#3b82f6}.error-icon,.loading-spinner{height:3rem;margin-bottom:1rem;width:3rem}.error-icon{color:#ef4444}.error-section h2{color:#1f2937;font-size:1.5rem;font-weight:700;margin-bottom:.5rem}.error-section p{color:#6b7280;margin-bottom:1.5rem;max-width:400px}.debug-info{background:#f8f9fa;border:1px solid #e9ecef;border-radius:.5rem;font-size:.875rem;margin:1rem 0;padding:1rem;text-align:left}.debug-info p{color:#495057;margin:.25rem 0}.offer-amount{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);border:1px solid #d1d5db;border-radius:.5rem;color:#1f2937;font-size:1rem;font-weight:700;padding:.75rem 1rem}.responding-section{display:flex;flex-direction:column;gap:1rem}.responding-section h3{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#06b6d4);-webkit-background-clip:text;background-clip:text;color:#1f2937;font-size:1.25rem;font-weight:800;margin-bottom:1.5rem;text-align:center}.offer-response-card{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;margin-bottom:1rem;padding:1.5rem}.offer-response-card:before{animation:shimmer 3s ease-in-out infinite;background:linear-gradient(90deg,#3b82f6,#06b6d4,#10b981);background-size:200% 100%;content:"";height:2px;left:0;position:absolute;right:0;top:0}.offer-response-card:hover{border-color:#3b82f666;box-shadow:0 25px 50px -10px #0003;transform:translateY(-2px)}.offer-response-card:first-child{animation:slideInFromLeft .6s ease-out}.offer-response-card:nth-child(2){animation:slideInFromRight .6s ease-out .2s both}.response-made{color:#fffc;font-style:italic;text-align:center}.round-status{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:1rem;box-shadow:0 8px 20px -5px #0000001a;font-size:.875rem;margin-top:1.5rem;padding:1.25rem}.round-status p{align-items:center;color:#374151;display:flex;font-weight:600;justify-content:space-between;margin:.5rem 0}.round-status p:first-child{margin-top:0}.round-status p:last-child{margin-bottom:0}.simultaneous-offers{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin:1.5rem 0}.offer-status-card{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:2px solid #e2e8f0;border-radius:.75rem;padding:1rem;position:relative;text-align:center;transition:all .3s ease}.offer-status-card.completed{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-color:#10b981}.offer-status-card.pending{animation:pulse 2s infinite;background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#f59e0b}.offer-status-title{color:#6b7280;font-size:.75rem;font-weight:700;letter-spacing:.05em;margin-bottom:.5rem;text-transform:uppercase}.offer-status-amount{color:#1f2937;font-size:1.25rem;font-weight:800;margin-bottom:.25rem}.offer-status-indicator{border-radius:.375rem;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.25rem .5rem;text-transform:uppercase}.offer-status-indicator.completed{background:#059669;color:#fff}.offer-status-indicator.pending{background:#f59e0b;color:#fff}.offers-comparison{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin-bottom:1rem}.offer-item{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:.75rem;padding:1rem;text-align:center}.offer-label-small{color:#6b7280;font-size:.75rem;font-weight:600;letter-spacing:.05em;margin-bottom:.5rem;text-transform:uppercase}.offer-amount-large{color:#fff;font-size:2rem;font-weight:700;margin-bottom:1rem;text-align:center}.decision-info{margin-bottom:1rem}.keep-amount{color:#fffc;font-size:.9rem;margin-bottom:.5rem}.highlight-amount{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#06b6d4);-webkit-background-clip:text;background-clip:text;color:#1f2937;font-size:1.125rem;font-weight:800}.response-buttons{display:flex;flex-direction:column;gap:.75rem}.button-icon{height:1.125rem;margin-right:.5rem;width:1.125rem}.accept-button{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:.75rem;box-shadow:0 8px 20px -5px #10b98166;color:#fff;cursor:pointer;display:flex;font-weight:700;justify-content:center;letter-spacing:.05em;overflow:hidden;padding:.875rem;position:relative;text-transform:uppercase;transition:all .3s ease;width:100%}.accept-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.accept-button:hover:before{left:100%}.accept-button:hover{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 12px 25px -5px #10b98180;transform:translateY(-1px)}.reject-button{align-items:center;background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:.75rem;box-shadow:0 8px 20px -5px #ef444466;color:#fff;cursor:pointer;display:flex;font-weight:700;justify-content:center;letter-spacing:.05em;overflow:hidden;padding:.875rem;position:relative;text-transform:uppercase;transition:all .3s ease;width:100%}.reject-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.reject-button:hover:before{left:100%}.reject-button:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 12px 25px -5px #ef444480;transform:translateY(-1px)}.scores-section{animation:fadeInUp 1s ease-out .6s both;display:flex;gap:1rem;justify-content:space-between;margin-bottom:2rem}.score-item{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff26;border:1px solid #ffffff40;border-radius:1rem;box-shadow:0 12px 25px -5px #0003;color:#fff;flex:1 1;font-weight:600;padding:1rem;text-align:center}.score-item span:first-child{display:block;font-size:.875rem;margin-bottom:.25rem;opacity:.9}.score-item span:last-child{display:block;font-size:1.5rem;font-weight:800}.game-over-page{align-items:center;animation:gradientShift 15s ease infinite;background:linear-gradient(135deg,#0ea5e9,#06b6d4 25%,#10b981 50%,#3b82f6 75%,#6366f1);background-size:400% 400%;display:flex;font-family:Inter,sans-serif;justify-content:center;min-height:100vh;overflow:hidden;padding:1.5rem 1rem;position:relative}.game-over-page:before{background:radial-gradient(circle at 20% 80%,#7877c64d 0,#0000 50%),radial-gradient(circle at 80% 20%,#ff77c64d 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.game-over-container{animation:fadeInUp 1s ease-out;max-width:36rem;position:relative;width:100%;z-index:1}.game-over-header{margin-bottom:1.5rem;text-align:center}.game-over-title{color:#fff;font-size:2.25rem;font-weight:800;letter-spacing:-.02em;margin-bottom:.75rem;text-shadow:0 4px 20px #0000004d}.final-scores{margin-bottom:2rem}.score-card{background:#fffffffa;border:1px solid #fff3;border-radius:1.5rem;box-shadow:0 35px 80px -15px #0006;padding:2rem}.score-card h3{color:#1f2937;font-size:1.5rem;font-weight:800;margin-bottom:1.5rem;text-align:center}.scores{display:flex;flex-direction:column;gap:1rem}.scores .score-item{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:.75rem;color:#1f2937;display:flex;font-weight:600;justify-content:space-between;padding:1rem}.scores .score-item span:last-child{color:#059669;font-size:1.25rem;font-weight:800}.action-buttons{display:flex;gap:.75rem;margin-bottom:2rem}.play-again-button{background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:.75rem;box-shadow:0 8px 20px -5px #2563eb66;color:#fff;cursor:pointer;flex:1 1;font-size:.875rem;font-weight:700;letter-spacing:.05em;padding:.875rem 1rem;text-transform:uppercase;transition:all .3s ease}.play-again-button:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 12px 25px -5px #2563eb80;transform:translateY(-1px)}.menu-button{background:#fff;border:2px solid #d1d5db;border-radius:.75rem;color:#374151;cursor:pointer;flex:1 1;font-size:.875rem;font-weight:700;letter-spacing:.05em;padding:.875rem 1rem;text-transform:uppercase;transition:all .3s ease}.menu-button:hover{background:#f9fafb;border-color:#9ca3af;box-shadow:0 8px 20px -5px #0000001a;transform:translateY(-1px)}.strategy-tip{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff26;border:1px solid #ffffff40;border-radius:1rem;box-shadow:0 12px 25px -5px #0003;padding:1rem;text-align:center}.strategy-tip-text{color:#fffffff2;font-size:.875rem;font-weight:500;line-height:1.5}.payoffs-area{align-items:center;-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);background:#ffffff14;border:1px solid #ffffff40;border-radius:1rem;box-shadow:0 30px 60px -15px #0000004d;display:flex;flex-direction:column;margin-top:2.5rem;padding:1.5rem 1rem;width:100%}.payoffs-wrapper{max-width:1000px;width:100%}.payoffs-title{color:#fff;font-size:1.25rem;font-weight:700;margin-bottom:1.5rem;text-align:center;text-shadow:0 2px 4px #0000004d}@keyframes slideInFromLeft{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInFromRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@media (max-width:768px){.game-title{font-size:2rem}.game-subtitle{font-size:.875rem}.game-over-title{font-size:1.75rem}.action-buttons,.scores .score-item{flex-direction:column}.scores .score-item{gap:.5rem;text-align:center}.game-card-content{padding:.75rem 1rem 1rem}.simultaneous-offers{grid-template-columns:1fr}.offer-response-card{margin:.75rem 0;padding:1rem}.round-status{font-size:.8125rem;padding:1rem}.round-status p{align-items:flex-start;flex-direction:column;gap:.25rem}.connection-status{align-self:center;margin-bottom:1rem;position:relative;right:auto;top:auto}.player-id{font-size:.8125rem;padding:.375rem .75rem}.offer-status-card{padding:.75rem}.offer-status-amount{font-size:1.125rem}.offers-comparison{grid-template-columns:1fr}.scores-section{flex-direction:column}}@media (max-width:480px){.game-container{max-width:100%;padding:0 .5rem}.payoffs-area{padding:1rem .5rem}.game-card{margin:0 .25rem}.response-buttons{gap:.5rem}.accept-button,.reject-button{font-size:.875rem;padding:.75rem}.game-title{font-size:1.75rem}.money-content{font-size:1.5rem}.phase-title{font-size:1.25rem}}.modal-overlay{align-items:center;animation:fadeInOverlay .3s ease-out;background:#000000bf;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:10000}.modal-container{animation:slideUpModal .4s ease-out;background:#1a202c;border-radius:16px;box-shadow:0 25px 50px #00000040;max-height:90vh;max-width:600px;overflow:hidden;padding:0;width:90%}.modal-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1.5rem 2rem;position:relative}.modal-header,.modal-icon{align-items:center;display:flex}.modal-icon{background:#fff3;border-radius:50%;height:48px;justify-content:center;margin-right:1rem;width:48px}.trophy-icon{color:gold;height:24px;width:24px}.modal-title{flex:1 1;font-size:1.5rem;font-weight:600;margin:0}.modal-close-btn{background:none;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:.5rem;transition:background-color .2s}.modal-close-btn:hover{background:#ffffff1a}.modal-content{color:#fff;padding:2rem}.modal-footer{align-items:center;background:#2d3748;border-top:1px solid #4a5568;display:flex;justify-content:space-between;padding:1.5rem 2rem}.round-results-modal .results-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr 1fr;margin-bottom:2rem}.player-section{background:#2d3748;border-left:4px solid #4299e1;border-radius:12px;padding:1.5rem}.player-title{color:#e2e8f0;font-size:1.1rem;font-weight:600;margin:0 0 1rem;text-align:center}.result-item{align-items:center;border-bottom:1px solid #4a5568;display:flex;justify-content:space-between;padding:.75rem 0}.result-item:last-child{border-bottom:none}.result-label{color:#a0aec0;font-weight:500}.result-value{color:#e2e8f0;font-weight:600}.result-value.response{border-radius:20px;font-size:.875rem;padding:.25rem .75rem;text-transform:capitalize}.result-value.response.accept{background:#c6f6d5;color:#276749}.result-value.response.reject{background:#fed7d7;color:#c53030}.earnings-section{background:linear-gradient(135deg,#48bb78,#38a169);border-radius:12px;color:#fff;padding:1.5rem;text-align:center}.your-earnings{align-items:center;display:flex;flex-direction:column;gap:.5rem}.earnings-label{font-size:1rem;opacity:.9}.earnings-amount{font-size:2rem;font-weight:700}.auto-close-info{color:#a0aec0}.auto-close-info strong{color:#e2e8f0;font-weight:600}.continue-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:transform .2s,box-shadow .2s}.continue-btn:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.timeout-modal .modal-content{text-align:center}.timeout-message{color:#a0aec0;line-height:1.6;margin-bottom:2rem}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}@keyframes slideUpModal{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width:768px){.round-results-modal .results-grid{gap:1rem;grid-template-columns:1fr}.modal-container{margin:1rem;width:95%}.modal-header{padding:1rem 1.5rem}.modal-content{padding:1.5rem}.modal-footer{flex-direction:column;gap:1rem;padding:1rem 1.5rem}.earnings-amount{font-size:1.5rem}}.result-item.earnings-item{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1px solid #bbf7d0;border-radius:8px;margin-top:.5rem;padding:.75rem 1rem}.result-value.earnings-value{color:#059669!important;font-size:1.1rem}.earnings-breakdown{border-top:1px solid #ffffff4d;margin-top:1rem;padding-top:1rem}.earnings-detail{align-items:center;display:flex;font-size:.9rem;gap:1rem;justify-content:space-between;opacity:.9}.earnings-detail span{flex:1 1;font-weight:600;text-align:center}@media (max-width:768px){.earnings-detail{flex-direction:column;gap:.5rem}.earnings-detail span{text-align:center}}.timeout-popup-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.timeout-popup{animation:popup-appear .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 40px #0000004d;max-width:400px;padding:2rem;text-align:center;width:90%}@keyframes popup-appear{0%{opacity:0;transform:scale(.8) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.timeout-popup-content{align-items:center;display:flex;flex-direction:column;gap:1rem}.timeout-icon{animation:pulse 1s infinite;color:#f59e0b;height:3rem;width:3rem}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.timeout-title{color:#dc2626;font-size:1.5rem;font-weight:700;margin:0}.timeout-message{color:#6b7280;font-size:1rem;line-height:1.5;margin:0}.timeout-countdown{margin-top:1rem}.countdown-circle{align-items:center;animation:countdown-pulse 1s infinite;background:linear-gradient(135deg,#dc2626,#ef4444);border-radius:50%;box-shadow:0 4px 12px #dc26264d;display:flex;height:60px;justify-content:center;margin:0 auto;width:60px}@keyframes countdown-pulse{0%{box-shadow:0 4px 12px #dc26264d;transform:scale(1)}50%{box-shadow:0 6px 16px #dc262666;transform:scale(1.05)}to{box-shadow:0 4px 12px #dc26264d;transform:scale(1)}}.countdown-number{color:#fff;font-size:1.5rem;font-weight:700}@media (max-width:480px){.timeout-popup{margin:1rem;padding:1.5rem}.timeout-title{font-size:1.25rem}.timeout-message{font-size:.9rem}}.visual-offer-container{background:linear-gradient(135deg,#e0f2fe,#b3e5fc 50%,#81d4fa);border-radius:1rem;box-shadow:0 8px 32px #0000001a;margin:1rem 0;max-width:100%;overflow:hidden;padding:1.5rem}.coin-stacks-container{align-items:flex-end;display:flex;gap:1.5rem;justify-content:center;max-width:100%;min-height:280px;padding:1.5rem .5rem;position:relative}.coin-stack{flex:1 1;flex-direction:column;gap:1rem;max-width:120px;min-width:90px}.coin-stack,.coin-stack-visual{align-items:center;display:flex}.coin-stack-visual{border:3px solid #d97706;border-radius:.6rem;box-shadow:0 6px 15px #00000040;justify-content:center;max-height:250px;min-height:30px;position:relative;transition:all .3s ease;width:85px}.coin-stack-visual,.coin-stack-visual:before{background:linear-gradient(135deg,gold,#ffed4a 50%,#f59e0b)}.coin-stack-visual:before{border:3px solid #d97706;border-bottom:none;border-radius:.5rem .5rem 0 0;content:"";height:20px;left:-3px;position:absolute;right:-3px;top:-3px}.coin-amount{color:#7c2d12;font-size:1.3rem;font-weight:800;position:relative;text-shadow:1px 1px 2px #ffffff80;white-space:nowrap;z-index:1}.stack-label{color:#cc4848}.stack-label,.stack-label2{font-size:1.2rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.stack-label2{color:#fff}.you-stack .stack-label{color:#1f2937}.other-stack .stack-label{color:#374151}.slider-container{align-items:center;display:flex;flex:0 0 auto;gap:.75rem;height:220px;min-width:60px}.percentage-scale{display:flex;flex-direction:column;height:100%;justify-content:space-between;padding:10px 0}.scale-marker{color:#ef4444;font-size:.9rem;font-weight:600;line-height:1}.scale-marker.middle{color:#f59e0b}.vertical-slider{align-items:center;display:flex;height:100%;justify-content:center;position:relative;width:20px}.slider-track{background:linear-gradient(180deg,#ef4444 0,#f59e0b 50%,#10b981);border-radius:3px;box-shadow:inset 0 2px 4px #0003;height:100%;position:absolute;width:6px}.slider-handle{background:#ef4444;border:3px solid #fff;border-radius:50%;box-shadow:0 2px 8px #0000004d;cursor:grab;height:20px;position:absolute;transform:translateY(-50%);transition:all .2s ease;width:20px;z-index:2}.slider-handle:hover{box-shadow:0 4px 12px #0006;transform:translateY(-50%) scale(1.1)}.slider-handle:active{cursor:grabbing;transform:translateY(-50%) scale(.95)}.submit-button-visual{background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:2rem;box-shadow:0 8px 20px #ef444466;color:#fff;cursor:pointer;display:block;font-size:1.1rem;font-weight:700;letter-spacing:.05em;margin:1.5rem auto 0;overflow:hidden;padding:1rem 2rem;position:relative;text-transform:uppercase;transition:all .3s ease;width:200px}.submit-button-visual:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.submit-button-visual:hover:not(:disabled):before{left:100%}.submit-button-visual:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 12px 25px #ef444480;transform:translateY(-2px)}.submit-button-visual:disabled{box-shadow:0 4px 12px #0003;cursor:not-allowed;opacity:.6;transform:none}.visual-response-container{background:#ffffff08;border:1px solid #ffffff1a;border-radius:1.5rem;box-shadow:0 12px 40px #00000026;margin:1.5rem 0;overflow:hidden}.response-layout{align-items:center;display:flex;gap:3rem;justify-content:space-between;min-height:300px;padding:2.5rem 2rem}.response-buttons-container{align-items:center;display:flex;flex:0 0 auto;flex-direction:column;gap:1.2rem;justify-content:center;min-width:140px}.accept-button-large{background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:.75rem;box-shadow:0 8px 25px #10b98166;color:#fff;cursor:pointer;font-size:1.2rem;font-weight:800;letter-spacing:.1em;min-width:120px;overflow:hidden;padding:1.2rem 2.5rem;position:relative;text-transform:uppercase;transition:all .3s ease;white-space:nowrap}.accept-button-large:before{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.accept-button-large:hover:before{left:100%}.accept-button-large:hover{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 12px 30px #10b98180;transform:translateY(-2px)}.reject-button-large{background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:.75rem;box-shadow:0 8px 25px #ef444466;color:#fff;cursor:pointer;font-size:1.2rem;font-weight:800;letter-spacing:.1em;min-width:120px;overflow:hidden;padding:1.2rem 2.5rem;position:relative;text-transform:uppercase;transition:all .3s ease;white-space:nowrap}.reject-button-large:before{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.reject-button-large:hover:before{left:100%}.reject-button-large:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 12px 30px #ef444480;transform:translateY(-2px)}.response-made-large{background:#3b82f626;border:2px solid #3b82f64d;border-radius:.75rem;color:#93c5fd;font-size:1rem;font-weight:600;letter-spacing:.05em;padding:1rem 1.5rem;text-align:center;text-transform:uppercase}@media (max-width:768px){.response-layout{gap:1.5rem;min-height:250px;padding:1.5rem 1rem}.accept-button-large,.reject-button-large{font-size:1rem;min-width:90px;padding:.875rem 1.5rem}.response-buttons-container{min-width:100px}}@media (max-width:480px){.response-layout{flex-direction:column;gap:1.5rem;min-height:auto;padding:1.5rem 1rem}.coin-stacks-container.response-layout{align-items:flex-end;flex-direction:row;justify-content:space-around}.response-buttons-container{flex-direction:row;gap:1rem;min-width:auto;order:2;width:100%}.accept-button-large,.reject-button-large{flex:1 1;min-width:auto}}.survey-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 15px #667eea4d;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;margin-bottom:1rem;min-width:300px;padding:1rem 1.5rem;text-align:center;transition:all .3s ease}.survey-button:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.survey-button .button-icon{height:1.2rem;width:1.2rem}.survey-modal-overlay{align-items:center;background:#000c;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.survey-modal-content{animation:surveyModalSlideIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000004d;max-height:90vh;max-width:90vw;overflow-y:auto}@keyframes surveyModalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width:768px){.survey-button{font-size:.9rem;min-width:auto;padding:.875rem 1rem;width:100%}.survey-modal-content{margin:.5rem;max-width:95vw}}.matchmaking-page{align-items:center;animation:gradientShift 15s ease infinite;background:radial-gradient(circle at 20% 80%,#7877c64d 0,#0000 50%),radial-gradient(circle at 80% 20%,#ff77c64d 0,#0000 50%),#1a202c;background-size:400% 400%;display:flex;font-family:Inter,sans-serif;justify-content:center;min-height:100vh;overflow:hidden;padding:2rem 1rem;position:relative}.matchmaking-page:before{background:radial-gradient(circle at 20% 80%,#7877c64d 0,#0000 50%),radial-gradient(circle at 80% 20%,#ff77c64d 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.matchmaking-container{margin:0 auto;max-width:1200px;position:relative;width:100%;z-index:1}.matchmaking-header{animation:fadeInDown 1s ease-out;margin-bottom:3rem;text-align:center}.matchmaking-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#fff,#f0f9ff);-webkit-background-clip:text;background-clip:text;color:#fff;font-size:3.5rem;font-weight:800;letter-spacing:-.02em;margin-bottom:1rem;text-shadow:0 4px 20px #0000004d}.matchmaking-subtitle{color:#fffffff2;font-size:1.25rem;font-weight:400;line-height:1.6;margin:0 auto;max-width:600px;text-shadow:0 2px 10px #0003}.matchmaking-card{animation:fadeInUp 1s ease-out .3s both;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff26;border:1px solid #ffffff40;border-radius:2rem;box-shadow:0 35px 80px -15px #0006,inset 0 0 0 1px #ffffff1a;color:#fff;margin:0 auto;max-width:32rem;overflow:hidden;padding:3rem;position:relative;text-align:center}.matchmaking-card:before{animation:shimmer 3s ease-in-out infinite;background:linear-gradient(90deg,#3b82f6,#06b6d4,#10b981,#f59e0b,#ef4444);background-size:200% 100%;content:"";height:4px;left:0;position:absolute;right:0;top:0}@keyframes shimmer{0%,to{background-position:200% 0}50%{background-position:-200% 0}}.matchmaking-icon-container{margin:0 auto 2rem}.matchmaking-spinner{animation:spin 1s linear infinite;color:#fff;filter:drop-shadow(0 4px 15px rgba(0,0,0,.3));height:5rem;width:5rem}.matchmaking-success{align-items:center;animation:successPulse 2s ease-in-out infinite;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;box-shadow:0 15px 35px -5px #10b98166;display:flex;height:5rem;justify-content:center;margin:0 auto;width:5rem}@keyframes successPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.matchmaking-success span{color:#fff;font-size:2rem;font-weight:700}.matchmaking-status-title{font-size:2rem;font-weight:700;letter-spacing:-.01em;margin-bottom:1rem;text-shadow:0 2px 10px #0003}.matchmaking-status-text{color:#ffffffe6;font-size:1.125rem;font-weight:400;line-height:1.6;margin-bottom:2rem}.matchmaking-info{background:#ffffff1a;border:1px solid #ffffff26;border-radius:1rem;margin-bottom:2rem;padding:1.5rem}.matchmaking-info-row{align-items:center;display:flex;font-size:1rem;font-weight:500;justify-content:space-between;margin-bottom:1rem}.matchmaking-info-row:last-child{margin-bottom:0}.matchmaking-player-id{background:#ffffff26;border-radius:.5rem;font-family:Courier New,monospace;font-weight:600;padding:.25rem .75rem}.connection-status{align-items:center;display:flex;gap:.5rem}.connection-icon{height:1.25rem;width:1.25rem}.connection-connected{color:#10b981;font-weight:600}.connection-connecting{animation:spin 1s linear infinite;color:#f59e0b;font-weight:600}.connection-disconnected{color:#ef4444;font-weight:600}.cancel-button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #ffffff4d;border-radius:1rem;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;letter-spacing:.05em;padding:1rem 1.5rem;text-transform:uppercase;transition:all .3s ease;width:100%}.cancel-button:hover{background:#fff3;border-color:#fff6;box-shadow:0 10px 25px -5px #0000004d;transform:translateY(-2px)}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.matchmaking-title{font-size:2.5rem}.matchmaking-subtitle{font-size:1rem}.matchmaking-card{padding:2rem}.matchmaking-status-title{font-size:1.5rem}}
/*# sourceMappingURL=main.ee7c5e2c.css.map*/