:root{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#fff;background-color:#111}*{margin:0;padding:0;box-sizing:border-box}body{min-height:100vh;background-color:#111;color:#fff}a{font-weight:500;color:#3457d5;text-decoration:inherit}a:hover{color:#5677f5}h1{font-size:2.5em;line-height:1.1;color:#fff}button{border-radius:4px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#3457d5;color:#fff;cursor:pointer;transition:background-color .25s}button:hover{background-color:#2a45ac}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.dice-roller{position:absolute;bottom:20px;right:20px;display:flex;flex-direction:column;align-items:center;gap:8px;z-index:10}.dice-container{display:flex;flex-direction:column;align-items:center;gap:8px}.dice-wrapper{display:flex;gap:8px}.dice{width:60px;height:60px;display:flex;align-items:center;justify-content:center;transition:all .3s ease;border-radius:12px;box-shadow:0 6px 12px #0000004d}.dice-roller.active .dice{cursor:pointer;background:linear-gradient(135deg,gold,#ffed4e);box-shadow:0 6px 12px #ffd70066;animation:pulse 2s infinite}.dice-roller.active .dice:hover{transform:scale(1.05);box-shadow:0 8px 16px #ffd70099}.dice-roller.inactive .dice{cursor:not-allowed;background:#ccc;box-shadow:0 2px 4px #0003;opacity:.6}.dice-roller.inactive .dice svg rect{fill:#f0f0f0;stroke:#999}.dice-roller.inactive .dice svg circle{fill:#999}.roll-prompt{background:#007bffe6;color:#fff;padding:6px 12px;border-radius:16px;font-size:.8rem;font-weight:500;animation:fadeInOut 2s infinite}@keyframes pulse{0%{box-shadow:0 6px 12px #ffd70066}50%{box-shadow:0 8px 16px #ffd700cc}to{box-shadow:0 6px 12px #ffd70066}}@keyframes fadeInOut{0%{opacity:.7}50%{opacity:1}to{opacity:.7}}@media (max-width: 768px){.dice-roller{bottom:10px;right:10px}.dice{width:50px;height:50px}.dice svg{width:50px;height:50px}.roll-prompt{font-size:.7rem;padding:4px 8px}}.catan-board{position:relative;width:100%;height:100%;display:flex;justify-content:center;align-items:center;margin-bottom:0;overflow:hidden}.robber-move-indicator{opacity:.6;transition:all .3s ease}g:hover .robber-move-indicator{opacity:1;animation:robberHoverPulse 1.2s infinite}.robber-glow{animation:robberGlow 3s infinite ease-in-out;filter:drop-shadow(0 0 8px rgba(255,107,107,.6))}@keyframes robberHoverPulse{0%{r:30;stroke-width:3;opacity:.6}50%{r:36;stroke-width:4;opacity:.9}to{r:30;stroke-width:3;opacity:.6}}@keyframes robberGlow{0%{opacity:.3;transform:scale(1)}50%{opacity:.6;transform:scale(1.02)}to{opacity:.3;transform:scale(1)}}.turn-instructions{position:absolute;top:50px;left:20px;z-index:1000;pointer-events:auto;transform-origin:top left}.instructions-content{background:#000c;color:#fff;padding:12px 20px;border-radius:8px;font-size:1rem;font-weight:600;text-align:center;box-shadow:0 4px 12px #0000004d;border:2px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);min-width:200px;animation:pulse-size 2s ease-in-out infinite;position:relative}.instructions-text{display:block}@media (max-width: 768px){.instructions-content{font-size:.9rem;padding:10px 16px;min-width:180px}.turn-instructions{top:20px;left:50%;transform:translate(-50%)}}.instructions-close-button{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;width:24px;height:24px;border-radius:50%;font-size:16px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;position:absolute;top:-12px;right:-12px}.instructions-close-button:hover{background:#ffffff4d;border-color:#ffffff80;transform:scale(1.1)}.instructions-close-button:active{transform:scale(.95)}@keyframes pulse-size{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.board-svg{background-color:#0a7bb8;border-radius:8px;box-shadow:0 4px 8px #0003;width:100%;height:100%;max-width:none;max-height:none}@keyframes pulse{0%{stroke-width:1;r:8}50%{stroke-width:2;r:9}to{stroke-width:1;r:8}}.node-selected{animation:pulse 1.5s infinite}.settlement-node:hover{filter:brightness(1.1)}.valid-placement-base{opacity:1;transition:all .2s ease-in-out}.valid-placement-hover{opacity:1;animation:validPlacementPulse 1.2s infinite}@keyframes validPlacementPulse{0%{r:14;stroke-width:3;opacity:.4}50%{r:18;stroke-width:4;opacity:.7}to{r:14;stroke-width:3;opacity:.4}}.road-segment:hover{stroke-width:9}.hex-tile:hover{filter:brightness(1.05)}.port-marker{transition:transform .2s}.port-marker:hover{transform:scale(1.1)}.number-token{font-weight:700}.high-probability{fill:#d32f2f}.resource-label{font-weight:500}.settlement{transform-origin:center;transition:transform .2s}.settlement:hover{transform:scale(1.1)}.city{transform-origin:center;transition:transform .2s}.city:hover{transform:scale(1.1)}.end-game-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .3s ease-out}.end-game-modal-content{background:linear-gradient(135deg,#2c3e50,#34495e);border-radius:16px;max-width:500px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 20px 60px #0006;color:#fff;animation:slideIn .3s ease-out;border:2px solid rgba(255,255,255,.1)}.end-game-modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 24px 16px;border-bottom:1px solid rgba(255,255,255,.1)}.end-game-title{margin:0;font-size:1.5rem;font-weight:600;color:#fff}.end-game-close-button{background:none;border:none;font-size:24px;color:#bdc3c7;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s ease}.end-game-close-button:hover{background-color:#ffffff1a;color:#fff}.end-game-modal-body{padding:24px}.end-game-message{text-align:center;margin-bottom:24px}.primary-message{font-size:1.2rem;font-weight:600;margin:0 0 8px;color:#fff}.secondary-message{font-size:1rem;color:#bdc3c7;margin:0 0 16px;line-height:1.5}.final-rankings{background:#ffffff0d;border-radius:12px;padding:16px;margin-top:16px;border:1px solid rgba(255,255,255,.1)}.final-rankings h4{margin:0 0 12px;font-size:1rem;color:#fff;text-align:center}.ranking-display{display:flex;flex-direction:column;gap:8px}.ranking-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#ffffff0d;border-radius:8px}.ranking-label{font-weight:500;color:#ecf0f1}.ranking-value{font-weight:600;padding:4px 8px;border-radius:6px;font-size:.9rem}.ranking-value.rank-1{background-color:#27ae60;color:#fff}.ranking-value.rank-2{background-color:#f39c12;color:#fff}.ranking-value.rank-3{background-color:#e67e22;color:#fff}.end-game-actions{display:flex;gap:12px;margin-bottom:20px}.end-game-actions .action-button{flex:1;padding:12px 16px;border:none;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:6px}.end-game-actions .action-button.analysis-button{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff;padding:16px 20px;font-size:1rem}.end-game-actions .action-button.analysis-button:hover:not(:disabled){background:linear-gradient(135deg,#2980b9,#21618c);box-shadow:0 4px 12px #3498db4d}.end-game-actions .action-button.analysis-button:disabled{background:#7f8c8d;cursor:not-allowed;opacity:.6}.end-game-actions .action-button.restart-button{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff}.end-game-actions .action-button.restart-button:hover{background:linear-gradient(135deg,#2980b9,#21618c);box-shadow:0 4px 12px #3498db4d}.end-game-actions .action-button.next-button{background:linear-gradient(135deg,#27ae60,#229954);color:#fff}.end-game-actions .action-button.next-button:hover{background:linear-gradient(135deg,#229954,#1e8449);transform:translateY(-1px);box-shadow:0 4px 12px #27ae604d}.end-game-actions .action-button.analyze-button{background:linear-gradient(135deg,#9b59b6,#8e44ad);color:#fff;font-size:.85rem;padding:10px 14px}.end-game-actions .action-button.analyze-button:hover{background:linear-gradient(135deg,#8e44ad,#7d3c98);box-shadow:0 4px 12px #9b59b64d;transform:translateY(-1px)}.end-game-tip{background:#f1c40f1a;border:1px solid rgba(241,196,15,.3);border-radius:8px;padding:12px;text-align:center}.end-game-tip p{margin:0;font-size:.9rem;color:#f1c40f;line-height:1.4}.end-game-tip strong{color:#f1c40f}.win-percentages{background:#ffffff0d;border-radius:12px;padding:20px;margin-bottom:24px;border:1px solid rgba(255,255,255,.1);text-align:center}.win-percentages h4{margin:0 0 16px;font-size:1.1rem;color:#fff;font-weight:600}.win-percentage-list{display:flex;flex-direction:column;gap:10px}.win-percentage-item{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;background:#ffffff14;border-radius:8px;transition:background-color .2s ease}.win-percentage-item:hover{background:#ffffff1f}.player-label{font-weight:500;color:#ecf0f1;font-size:1rem}.percentage-value{font-weight:700;font-size:1.1rem;color:#27ae60;background:#27ae6033;padding:4px 12px;border-radius:20px;border:1px solid rgba(39,174,96,.3)}.percentage-value.current-player{color:#22c55e!important;background:#22c55e4d!important;border:1px solid rgba(34,197,94,.5)!important;font-weight:800!important}.player-label.other-player{color:#888}.percentage-value.other-player{color:#888!important;background:#8888881a!important;border:1px solid rgba(136,136,136,.2)!important;font-weight:500!important}@keyframes percentageGlow{0%{box-shadow:0 0 5px #27ae604d}50%{box-shadow:0 0 15px #27ae6080}to{box-shadow:0 0 5px #27ae604d}}.percentage-value{animation:percentageGlow 2s ease-in-out infinite}@keyframes slideIn{0%{opacity:0;transform:translateY(-30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 600px){.end-game-modal-content{width:95%;margin:10px}.end-game-actions{flex-direction:column}.end-game-title{font-size:1.3rem}.primary-message{font-size:1.1rem}}.guide-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000c;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.guide-modal{background-color:#222;border-radius:12px;max-width:600px;width:100%;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 10px 30px #00000080;border:1px solid #444}.guide-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 16px;border-bottom:1px solid #444}.guide-modal-header h2{color:#fff;margin:0;font-size:1.3rem;font-weight:500}.guide-modal-close{background:none;border:none;color:#aaa;font-size:1.5rem;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s;line-height:1}.guide-modal-close:hover{color:#fff;background-color:#444}.guide-tabs{display:flex;border-bottom:1px solid #444;background-color:#1a1a1a}.guide-tab{flex:1;padding:12px 16px;background:none;border:none;color:#aaa;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s;border-bottom:2px solid transparent}.guide-tab:hover{color:#fff;background-color:#333}.guide-tab.active{color:#4caf50;border-bottom-color:#4caf50;background-color:#222}.guide-modal-body{flex:1;overflow-y:auto;padding:24px}.guide-content{color:#fff}.guide-content h3{color:#4caf50;font-size:1.1rem;margin:0 0 8px;font-weight:500}.guide-content h4{color:#f1c40f;font-size:.95rem;margin:8px 0 4px;font-weight:500}.guide-content p{margin:4px 0;line-height:1.4;color:#ddd}.guide-content ul{margin:4px 0;padding-left:16px}.guide-content li{margin:2px 0;line-height:1.4;color:#ddd}.guide-section{margin-bottom:8px;padding:8px;background-color:#1a1a1a;border-radius:4px;border-left:2px solid #4CAF50}.guide-section h4{margin-top:0;margin-bottom:8px}.guide-section:last-child{margin-bottom:0}@media (max-width: 768px){.guide-modal{max-width:95vw;max-height:90vh}.guide-modal-header{padding:16px 20px 12px}.guide-modal-header h2{font-size:1.3rem}.guide-tab{padding:10px 12px;font-size:.85rem}.guide-modal-body{padding:20px}.guide-content h3{font-size:1.2rem}.guide-content h4{font-size:1rem}.guide-section{padding:12px}}.puzzle-page{padding:0;margin:0 auto;background-color:#111;color:#fff;min-height:100vh;display:flex;flex-direction:column;overflow:hidden;max-width:1600px}.puzzle-page h1{text-align:center;color:#fff;margin:15px 0}.connection-status{position:absolute;top:0;right:0;font-size:.8rem;padding:4px 8px;border-radius:12px;font-weight:500}.connection-status.connected{background-color:#4caf5033;color:#4caf50;border:1px solid #4CAF50}.connection-status.disconnected{background-color:#f4433633;color:#f44336;border:1px solid #f44336}.puzzle-details{display:flex;flex-direction:column;gap:15px}.puzzle-meta{display:flex;flex-direction:column;gap:8px;background-color:#2a2a2a;padding:12px;border-radius:4px}.meta-item{display:flex;justify-content:space-between;align-items:center;padding:2px 0}.meta-label{color:#999;font-weight:400;font-size:.85rem}.meta-value{color:#fff;font-weight:500;font-size:.85rem;background-color:#444;padding:2px 6px;border-radius:3px}.meta-value.player-turn{background-color:#4caf50;color:#fff;font-weight:600}.meta-value.opponent-turn{background-color:#666;color:#ccc}.puzzle-info{margin-top:15px;padding:10px;background-color:#444;border-radius:4px;font-weight:700}.selected-info{margin-bottom:15px}.selected-info h3{color:#fff;margin-bottom:15px;font-size:1.1rem}.buttons{display:flex;gap:10px;margin-top:15px;flex-wrap:wrap;width:100%}.buttons button{padding:8px 12px;background-color:#3457d5;color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:700;transition:background-color .2s;flex:1;min-width:100px;text-align:center}.buttons button:hover{background-color:#2a45ac}.game-controls{width:100%}.rankings-container{display:flex;gap:15px;margin-bottom:15px}.rankings-container.second-turn{margin-top:30px}.rankings-column{flex:1}.ranking-title{font-size:1rem;font-weight:600;margin-bottom:8px;color:#fff;text-align:center}.ranking-info{text-align:center;margin-bottom:16px}.ranking-info small{color:#aaa;font-size:.75rem;font-style:italic}.ranking-row{display:flex;justify-content:center;width:100%;gap:5px}.rank-container{position:relative;display:flex;flex-direction:column;align-items:center}.rank-arrow{position:absolute;top:100%;width:100%;height:30px;display:flex;justify-content:center}.arrow-down{width:0;height:0;border-left:10px solid transparent;border-right:10px solid transparent;border-top:10px solid #f1c40f;margin-top:5px}.rank-button{width:50px;height:50px;font-size:1.5rem;background-color:#444;color:#fff;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;font-weight:700;transition:all .2s;border-radius:4px}.road-rank-button{width:50px;height:50px}.rank-button:hover{opacity:.9;background-color:#555}.rank-button.selected{background-color:#f1c40f;color:#000}@media (max-width: 1200px){.game-board-container{flex-direction:column;height:auto}.board-area{height:60vh;width:100%;max-width:none}.info-panel{min-width:100%;max-width:none;height:40vh;border-left:none;border-top:1px solid #444}.rank-button{width:40px;height:40px;font-size:1.3rem}.road-rank-button{width:40px;height:40px}}@media (max-width: 900px){.game-board-container{flex-direction:column;height:auto}.board-area{width:100%;max-width:100%;height:calc(100vw - 40px);margin-bottom:15px}.info-panel{width:100%;max-width:100%;min-width:unset}.rankings-container{flex-direction:column}}@media (max-width: 500px){.ranking-row{flex-wrap:wrap}.rank-button{width:38px;height:38px;font-size:1.2rem;margin-bottom:5px}.rankings-container{flex-direction:column;gap:25px}.rankings-container.second-turn{margin-top:40px}}.game-details{background-color:#2a2a2a;padding:10px;margin-bottom:15px;border-radius:4px}.details-content{display:flex;justify-content:space-between;align-items:center}.puzzle-info{display:flex;gap:15px;color:#fff;font-size:.9rem}.placement-result{margin-top:10px}.success-result{background-color:#00ff001a;border:1px solid #4CAF50;border-radius:4px;padding:15px;color:#4caf50}.success-result p{margin:5px 0;font-weight:700}.failure-result{background-color:#ff00001a;border:1px solid #f44336;border-radius:4px;padding:15px;color:#f44336}.failure-result p{margin:5px 0;font-weight:700}.win-prediction{margin-top:10px;background-color:#ffd7001a;border:1px solid #FFD700;border-radius:4px;padding:15px;color:gold}.win-prediction p{margin:5px 0 10px;font-weight:700;font-size:1.1rem}.win-prediction pre{background-color:#0000004d;border-radius:4px;padding:10px;font-size:.8rem;overflow-x:auto;white-space:pre-wrap;color:gold;margin:0}.placement-status{margin-top:10px}.placement-status p{margin:8px 0;color:#ccc;font-size:.9rem}.placement-status p:first-child{font-weight:600;color:#fff}.reset-button{background-color:#4caf50;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-weight:500;font-size:.9rem;transition:background-color .2s;margin-top:10px;width:100%}.reset-button:hover{background-color:#45a049}.submit-section{display:flex;flex-direction:column;gap:12px}.submit-instructions{color:#ccc;font-size:.9rem;margin:0;line-height:1.4}.submit-button{background-color:#4caf50;color:#fff;border:none;padding:12px 20px;border-radius:4px;cursor:pointer;font-weight:600;font-size:1rem;transition:background-color .2s;width:100%}.submit-button:hover:not(:disabled){background-color:#45a049}.submit-button:disabled{background-color:#666;cursor:not-allowed;opacity:.6}.status-section{display:flex;flex-direction:column;gap:12px}.player-turn-status,.opponent-turn-status{padding:12px;border-radius:6px;border:1px solid #555}.player-turn-status{background-color:#4caf501a;border-color:#4caf50}.opponent-turn-status{background-color:#ffc1071a;border-color:#ffc107}.status-instructions{color:#ccc;font-size:.9rem;margin:0;line-height:1.4}.auto-submit-note{color:#4caf50;font-size:.8rem;margin:8px 0 0;font-style:italic}.result-message{color:#90caf9;font-style:italic;font-size:.85rem;margin-top:8px}.analysis-section{text-align:center}.analysis-section p{margin-bottom:20px;color:#ccc;line-height:1.5}.analysis-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:15px 30px;border-radius:8px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea4d;width:100%;margin-top:10px}.analysis-button:hover{background:linear-gradient(135deg,#5a6fd8,#6a4190);box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.analysis-button:active{transform:translateY(0);box-shadow:0 2px 10px #667eea4d}.ranking-display{margin-bottom:20px}.combined-ranking{padding:16px;background:#444;border-radius:8px;border:1px solid #555;transition:all .2s ease}.combined-ranking:hover{background:#4a4a4a;border-color:#666}.ranking-arrow-container{position:relative;height:20px;margin:0;display:flex;justify-content:flex-end;padding-right:0}.ranking-arrow{position:absolute;top:0;width:20px;height:20px;display:flex;justify-content:center;align-items:center}.arrow-down{width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-top:12px solid #f1c40f;animation:arrowPulse 2s ease-in-out infinite}@keyframes arrowPulse{0%,to{transform:scale(1);opacity:.8}50%{transform:scale(1.1);opacity:1}}.ranking-section{margin-bottom:10px;display:flex;flex-direction:column;align-items:flex-start}.ranking-section:first-of-type{margin-bottom:2px}.ranking-section-header{display:flex;align-items:center;justify-content:space-between;width:100%;margin-bottom:8px}.ranking-label{font-size:.85rem;color:#bbb;margin-right:12px;min-width:80px;font-weight:500}.settlement-explanation{background:#4caf501a;border:1px solid rgba(76,175,80,.3);border-radius:6px;padding:8px 12px;margin-top:8px;width:100%;box-sizing:border-box}.explanation-title{margin:0 0 6px;font-size:.85rem;font-weight:600;color:#4caf50;text-transform:uppercase;letter-spacing:.5px}.settlement-explanation p{margin:0;font-size:.8rem;color:#4caf50;line-height:1.4;font-style:italic}.ranking-boxes{display:flex;gap:6px;flex:1;justify-content:flex-end}.ranking-box{width:28px;height:28px;border:2px solid #666;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;background:#333;color:#ccc;transition:all .3s ease;cursor:default}.settlement-box{width:30px;height:30px;font-size:.85rem}.road-box{width:26px;height:26px;font-size:.75rem}.ranking-box.highlighted{border-color:#007bff;background:linear-gradient(135deg,#007bff,#0056b3);color:#fff;transform:scale(1.15);box-shadow:0 4px 12px #007bff66;z-index:1;position:relative}.settlement-box.highlighted{border-color:#28a745;background:linear-gradient(135deg,#28a745,#1e7e34);box-shadow:0 4px 12px #28a74566}.road-box.highlighted{border-color:#ffc107;background:linear-gradient(135deg,#ffc107,#e0a800);color:#333;box-shadow:0 4px 12px #ffc10766}.ranking-box.highlighted{animation:rankingPulse 2s ease-in-out infinite}@keyframes rankingPulse{0%,to{transform:scale(1.15)}50%{transform:scale(1.2)}}.ranking-display:empty:after{content:"Complete moves to see rankings";display:block;text-align:center;color:#888;font-style:italic;padding:20px}.bottom-actions{margin-top:auto;padding-top:20px;border-top:1px solid #555}.instructions-toggle{margin-bottom:15px;display:flex;justify-content:center}.toggle-button{background:linear-gradient(135deg,#444,#555);color:#fff;border:1px solid #666;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s ease;display:flex;align-items:center;gap:6px}.toggle-button:hover{background:linear-gradient(135deg,#555,#666);border-color:#777}.toggle-button.active{background:linear-gradient(135deg,#4caf50,#45a049);border-color:#4caf50}.toggle-button.inactive{background:linear-gradient(135deg,#666,#777);border-color:#888;opacity:.7}.toggle-button.inactive:hover{background:linear-gradient(135deg,#777,#888);opacity:1}.action-buttons{display:flex;gap:12px;width:100%}.action-buttons .action-button{flex:1}.action-button{flex:1;padding:12px 16px;border:none;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:6px}.analysis-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 2px 8px #667eea4d}.analysis-button:hover:not(:disabled){background:linear-gradient(135deg,#5a6fd8,#6a4190);box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.analysis-button:disabled{background:#444;color:#ccc;cursor:not-allowed;box-shadow:0 2px 8px #0000004d;transform:none;border:1px solid #666;font-weight:700}.next-button{background:#4caf50;color:#fff;box-shadow:0 2px 8px #4caf504d}.next-button:hover:not(:disabled){background:#45a049;box-shadow:0 4px 12px #4caf5066;transform:translateY(-1px)}.next-button:disabled{background:#555;color:#999;cursor:not-allowed;box-shadow:none;transform:none}.restart-button{background:linear-gradient(135deg,#ff9800,#f57c00);color:#fff;box-shadow:0 2px 8px #ff98004d}.restart-button:hover:not(:disabled){background:linear-gradient(135deg,#f57c00,#ef6c00);box-shadow:0 4px 12px #ff980066;transform:translateY(-1px)}.restart-button:disabled{background:#555;color:#999;cursor:not-allowed;box-shadow:none;transform:none}.secondary-action-buttons{display:flex;gap:12px;width:100%;margin-bottom:16px;padding:0 4px}.secondary-action-buttons .action-button{flex:1;padding:12px 16px;font-size:.9rem;font-weight:600;border-radius:8px;border:none;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.secondary-action-buttons .action-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.secondary-action-buttons .action-button:hover:before{left:100%}.share-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;box-shadow:0 2px 4px #667eea4d}.share-button:hover{background:linear-gradient(135deg,#5a6fd8,#6a4190);color:#fff;box-shadow:0 4px 8px #667eea66;transform:translateY(-2px)}.share-button:active{transform:translateY(0);box-shadow:0 2px 4px #667eea4d}.feedback-button{background:linear-gradient(135deg,#ff6b6b,#ee5a52);color:#fff;border:none;box-shadow:0 2px 4px #ff6b6b4d}.feedback-button:hover{background:linear-gradient(135deg,#ff5252,#e53935);color:#fff;box-shadow:0 4px 8px #ff6b6b66;transform:translateY(-2px)}.feedback-button:active{transform:translateY(0);box-shadow:0 2px 4px #ff6b6b4d}.guide-button{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;border:none;box-shadow:0 2px 4px #4caf504d}.guide-button:hover{background:linear-gradient(135deg,#45a049,#3d8b40);color:#fff;box-shadow:0 4px 8px #4caf5066;transform:translateY(-2px)}.guide-button:active{transform:translateY(0);box-shadow:0 2px 4px #4caf504d}.puzzle-selector{min-height:100vh;background:#111;color:#fff;padding:20px}.selector-header{text-align:center;margin-bottom:40px}.selector-header h1{font-size:2.5rem;margin-bottom:10px;color:#fff}.selector-header p{font-size:1.1rem;color:#ccc;margin:0}.date-indicators{display:flex;flex-direction:column;gap:4px;margin-top:8px;align-items:center}.date-indicator{padding:4px 8px;background:#4caf501a;border:1px solid rgba(76,175,80,.3);border-radius:4px;display:inline-block}.date-indicator.user-timezone{background:#2196f31a;border-color:#2196f34d}.date-indicator.release-info{background:#ff98001a;border-color:#ff98004d}.date-indicator small{color:#4caf50;font-size:.8rem;font-weight:500}.date-indicator.user-timezone small{color:#2196f3}.date-indicator.release-info small{color:#ff9800}.puzzle-sections{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:40px}.puzzle-section{background:#222;border-radius:8px;padding:20px;border:1px solid #444}.section-header{margin-bottom:30px;text-align:center}.section-header h2{font-size:1.5rem;margin-bottom:8px;color:#4caf50}.section-header p{color:#ccc;margin:0;font-size:1rem}.puzzle-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:15px}.puzzle-card{background:#333;border-radius:8px;padding:15px;text-decoration:none;color:inherit;transition:all .3s ease;border:1px solid #444;display:flex;flex-direction:column;height:100%}.puzzle-card:hover{transform:translateY(-2px);background:#444;border-color:#4caf50;box-shadow:0 4px 15px #4caf5033}.daily-card{border-left:4px solid #4CAF50}.daily-card:hover{border-left-color:#81c784}.general-card{border-left:4px solid #2196F3}.general-card:hover{border-left-color:#64b5f6}.new-today-card{border-left:4px solid #FF9800}.new-today-card:hover{border-left-color:#ffb74d}.release-time{margin-top:4px;text-align:center}.release-time small{color:#999;font-size:.7rem;font-style:italic}.puzzle-card.disabled{opacity:.6;cursor:not-allowed;background:#2a2a2a;border-color:#666}.puzzle-card.disabled:hover{transform:none;background:#2a2a2a;border-color:#666;box-shadow:none}.puzzle-card.disabled .puzzle-card-header h3{color:#888}.puzzle-card.disabled .game-title{color:#666}.puzzle-card.disabled .player-info{color:#888}.puzzle-card.daily .publish-date{color:#4caf50;font-weight:600}.puzzle-card.upcoming .publish-date{color:#ff9800;font-weight:600}.disabled-indicator{display:block;color:#f44336;font-size:.75rem;font-weight:600;margin-top:4px;text-transform:uppercase;letter-spacing:.5px}.puzzle-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px}.puzzle-card-header h3{font-size:1.1rem;margin:0 10px 0 0;color:#fff;flex:1}.puzzle-type{background:#444;padding:4px 8px;border-radius:4px;font-size:.8rem;color:#ccc;white-space:nowrap}.puzzle-card-body{flex:1;margin-bottom:10px}.game-info{margin-bottom:10px}.game-title{font-size:.9rem;color:#4caf50;font-weight:600;margin-bottom:4px}.player-info{font-size:.85rem;color:#ccc}.puzzle-card-footer{border-top:1px solid #444;padding-top:8px;text-align:center}.publish-date{color:#999;font-size:.8rem}.empty-state{text-align:center;padding:40px 20px;color:#999}.empty-state p{font-size:1.1rem;margin:0}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;text-align:center}.loading-spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,.1);border-left:4px solid #4CAF50;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}.retry-button{background:#4caf50;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:1rem;cursor:pointer;transition:background-color .3s ease;margin-top:20px}.retry-button:hover{background:#45a049}.selector-footer{text-align:center;margin-top:40px}.back-button{display:inline-block;background:#333;color:#fff;text-decoration:none;padding:12px 24px;border-radius:6px;transition:all .3s ease;border:1px solid #444}.back-button:hover{background:#444;border-color:#4caf50;color:#4caf50}@media (max-width: 768px){.puzzle-selector{padding:15px}.selector-header h1{font-size:2rem}.puzzle-grid{grid-template-columns:1fr}.puzzle-section{padding:20px}.puzzle-card{padding:15px}}.game-controls{display:flex;flex-direction:column;gap:20px;padding:20px;background-color:#333;border-radius:8px}.phase-info{text-align:center}.phase-info h3{color:#fff;margin:0 0 10px;font-size:1.2rem}.phase-description{color:#ccc;margin:0 0 15px;font-size:.9rem;line-height:1.4}.dice-result{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:10px}.dice-value{background:linear-gradient(135deg,#ff6b6b,#ee5a52);color:#fff;width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:700;box-shadow:0 4px 8px #ff6b6b4d}.dice-plus,.dice-equals{font-size:1.5rem;font-weight:700;color:#fff}.dice-total{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.4rem;font-weight:700;box-shadow:0 4px 12px #4caf5066}.action-buttons{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.action-button{padding:12px 16px;border:none;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:6px;min-width:120px}.dice-button{background:linear-gradient(135deg,#ff6b6b,#ee5a52);color:#fff;box-shadow:0 2px 8px #ff6b6b4d}.dice-button:hover:not(:disabled){background:linear-gradient(135deg,#ff5252,#e53935);box-shadow:0 4px 12px #ff6b6b66;transform:translateY(-1px)}.end-turn-button{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;box-shadow:0 2px 8px #4caf504d}.end-turn-button:hover:not(:disabled){background:linear-gradient(135deg,#45a049,#3d8b40);box-shadow:0 4px 12px #4caf5066;transform:translateY(-1px)}.continue-button{background:linear-gradient(135deg,#17a2b8,#138496);color:#fff;box-shadow:0 2px 8px #17a2b84d}.continue-button:hover:not(:disabled){background:linear-gradient(135deg,#138496,#117a8b);box-shadow:0 4px 12px #17a2b866;transform:translateY(-1px)}.dev-card-button{background:linear-gradient(135deg,#9c27b0,#7b1fa2);color:#fff;box-shadow:0 2px 8px #9c27b04d}.dev-card-button:hover:not(:disabled){background:linear-gradient(135deg,#8e24aa,#6a1b9a);box-shadow:0 4px 12px #9c27b066;transform:translateY(-1px)}.robber-button{background:linear-gradient(135deg,#dc143c,#b22222);color:#fff;border:2px solid #FFD700;padding:15px 25px;border-radius:8px;cursor:pointer;font-size:1.1rem;font-weight:700;transition:all .3s ease;box-shadow:0 6px 20px #dc143c66;animation:pulse 2s infinite}.robber-button:hover:not(:disabled){background:linear-gradient(135deg,#b22222,#dc143c);transform:translateY(-3px);box-shadow:0 8px 25px #dc143c80;animation:none}.robber-instruction{background:linear-gradient(135deg,#ff6b6b,#ee5a52);color:#fff;padding:12px 16px;border-radius:8px;margin:8px 0;text-align:center;box-shadow:0 2px 8px #ff6b6b4d;animation:robberPulse 2s infinite}.robber-instruction p{margin:0;font-size:.9rem;font-weight:600}@keyframes robberPulse{0%{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.02)}to{opacity:.8;transform:scale(1)}}@keyframes pulse{0%{box-shadow:0 6px 20px #dc143c66}50%{box-shadow:0 6px 20px #dc143ccc}to{box-shadow:0 6px 20px #dc143c66}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background-color:#333;border-radius:8px;padding:24px;max-width:500px;width:90%;max-height:80vh;overflow-y:auto}.modal-content h3{color:#fff;margin:0 0 20px;text-align:center}.cancel-button{background:#666;color:#fff;box-shadow:0 2px 8px #0000004d;width:100%;margin-top:10px}.cancel-button:hover{background:#777;box-shadow:0 4px 12px #0006;transform:translateY(-1px)}.dev-cards-section{margin-bottom:20px}.dev-cards-section h4{color:#ccc;margin:0 0 10px;font-size:1rem}.dev-cards-list{display:flex;flex-wrap:wrap;gap:8px}.dev-card{background:linear-gradient(135deg,#9c27b0,#7b1fa2);color:#fff;padding:8px 12px;border-radius:4px;font-size:.8rem;font-weight:600;text-align:center;min-width:100px}.dev-card.played{background:linear-gradient(135deg,#666,#555);opacity:.7}@media (max-width: 768px){.action-buttons{flex-direction:column}.action-button{width:100%}.modal-content{width:95%;padding:16px}.resource-input{flex-direction:column;align-items:flex-start;gap:5px}.resource-input label{min-width:auto}}.player-perspective-controls{margin:20px 0;padding:15px;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.player-perspective-controls h4{margin:0 0 10px;color:#495057;font-size:14px}.player-switch-buttons{display:flex;gap:8px;margin-bottom:10px;flex-wrap:wrap}.player-switch-button{padding:10px 16px;border:2px solid #dee2e6;border-radius:8px;background:#fff;color:#495057;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:100px;text-align:center;position:relative}.player-switch-button:hover{border-color:#007bff;background:#e7f3ff;color:#007bff;transform:translateY(-1px);box-shadow:0 2px 8px #007bff33}.player-switch-button.active{border-color:#28a745;background:#d4edda;color:#155724;font-weight:700;box-shadow:0 2px 8px #28a7454d}.player-switch-button:disabled{opacity:.5;cursor:not-allowed;background:#f8f9fa;color:#6c757d;transform:none;box-shadow:none}.perspective-note{margin:0;font-size:11px;color:#6c757d;font-style:italic}.trade-offers-section{margin-bottom:16px;padding:12px;background:#2a2a2a;border-radius:8px;border:1px solid #444}.trade-offers-section h4{margin:0 0 8px;font-size:.9rem;color:#ccc;text-transform:uppercase;letter-spacing:.5px}.trade-offers-list{display:flex;flex-direction:column;gap:6px}.trade-offer-button{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff;border:none;border-radius:4px;padding:8px 12px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-align:left}.trade-offer-button:hover{background:linear-gradient(135deg,#0056b3,#004085);transform:translateY(-1px);box-shadow:0 2px 8px #007bff4d}.player-status{margin-bottom:15px}.player-status h3{color:#fff;margin:0 0 12px;font-size:1rem;font-weight:600}.players-list{display:flex;flex-direction:column;gap:8px}.player-card{background-color:#2a2a2a;border-radius:8px;padding:12px;border:2px solid #444;transition:all .2s ease;margin-bottom:10px}.player-card.current-player{border-color:#4caf50;box-shadow:0 0 8px #4caf504d;transform:scale(1.01)}.player-main{display:flex;align-items:center;gap:12px}.player-info{display:flex;flex-direction:column;align-items:center;min-width:60px;justify-content:center}.player-avatar{margin-bottom:6px;display:flex;justify-content:center;align-items:center}.player-color-dot{width:24px;height:24px;border-radius:50%;display:block;border:2px solid #fff;box-shadow:0 2px 4px #0000004d}.player-name-vp{background:#e74c3c;color:#fff;padding:4px 8px;border-radius:6px;text-align:center;box-shadow:0 2px 4px #0000004d;min-width:50px}.player-name{color:#fff;font-weight:600;font-size:.7rem;margin-bottom:2px;text-align:center;line-height:1.1}.player-vp{color:#fff;font-weight:700;font-size:.6rem;text-align:center;line-height:1}.player-cards{display:flex;gap:8px;flex:1}.card-item{display:flex;flex-direction:column;align-items:center;transition:all .2s ease;min-width:50px;justify-content:center;position:relative}.card-background{border:none;border-radius:8px;padding:6px;box-shadow:none;min-height:60px;width:50px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;background:none!important}.player-cards .resource-card{background:none!important}.player-cards .resource-card .card-background{background:linear-gradient(135deg,#2196f3,#1976d2)}.player-cards .dev-card{background:none!important}.player-cards .dev-card .card-background{background:linear-gradient(135deg,#9c27b0,#7b1fa2)}.card-item:hover .card-background{transform:translateY(-2px);box-shadow:0 4px 8px #0006}.card-icon{font-size:1.2rem;color:#fff;text-align:center;line-height:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3));margin-bottom:2px}.card-count{color:#fff;font-weight:700;font-size:.8rem;text-align:center;text-shadow:1px 1px 2px rgba(0,0,0,.5)}.player-robber{display:flex;align-items:center;justify-content:center}.robber-item{display:flex;flex-direction:column;align-items:center;background:linear-gradient(135deg,#8b4513,sienna);border:2px solid #fff;padding:6px;border-radius:8px;transition:all .2s ease;min-width:50px;min-height:60px;box-shadow:0 2px 4px #0000004d;justify-content:center}.robber-item:hover{background:linear-gradient(135deg,sienna,#8b4513);transform:translateY(-2px);box-shadow:0 4px 8px #0006}.robber-icon{font-size:1.2rem;margin-bottom:4px;color:#fff;text-shadow:1px 1px 2px rgba(0,0,0,.5);line-height:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.robber-count{color:#fff;font-weight:700;font-size:.9rem;text-align:center;text-shadow:1px 1px 2px rgba(0,0,0,.5)}@media (max-width: 768px){.player-main{flex-direction:column;align-items:center;gap:8px}.player-info{min-width:auto}.player-cards{flex-wrap:wrap;gap:8px;justify-content:center}}@media (max-width: 480px){.player-card{padding:8px}.player-main,.player-cards{flex-direction:column;gap:6px}}.trading-interface{background:#333;border:2px solid #555;border-radius:8px;padding:16px;margin-top:16px;box-shadow:0 4px 12px #0000004d;color:#fff;max-width:100%}.trading-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid #555}.trading-header h3{margin:0;color:#fff;font-size:1.1rem}.close-trade-btn{background:#dc3545;color:#fff;border:none;border-radius:50%;width:24px;height:24px;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:background .2s ease}.close-trade-btn:hover{background:#c82333}.trading-content{display:flex;flex-direction:column;gap:16px}.trading-section{display:flex;flex-direction:column;gap:8px}.trading-section h4{margin:0;color:#ccc;font-size:.9rem;font-weight:500}.trading-cards{display:flex;gap:4px;flex-wrap:wrap}.trading-card-container{display:flex;flex-direction:column;align-items:center;gap:4px}.trading-card{display:flex;flex-direction:column;align-items:center;padding:8px 6px;border-radius:8px;width:48px;height:60px;border:2px solid #fff;box-shadow:0 2px 4px #0000004d;position:relative}.offering-card{background:linear-gradient(135deg,#28a745,#20c997)}.requesting-card{background:linear-gradient(135deg,#dc3545,#fd7e14)}.trading-card .card-icon{margin-bottom:4px;display:flex;align-items:center;justify-content:center}.trading-card .card-icon svg{filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.trading-card .card-count{color:#fff;font-weight:700;font-size:.9rem;text-align:center;text-shadow:1px 1px 2px rgba(0,0,0,.5)}.card-controls{display:flex;gap:2px}.card-btn{width:16px;height:16px;border:none;border-radius:50%;cursor:pointer;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.add-btn{background:#28a745;color:#fff}.add-btn:hover:not(:disabled){background:#218838}.remove-btn{background:#dc3545;color:#fff}.remove-btn:hover:not(:disabled){background:#c82333}.card-btn:disabled{background:#6c757d;cursor:not-allowed;opacity:.5}.player-selection{display:flex;gap:8px;flex-wrap:wrap}.player-option{padding:8px 12px;border:2px solid #555;border-radius:6px;background:#444;color:#fff;cursor:pointer;transition:all .2s ease;font-size:.9rem}.player-option:hover{background:#555;border-color:#666}.player-option.selected{background:#007bff;border-color:#0056b3}.trade-type-selection{display:flex;gap:8px;justify-content:center}.trade-type-option{background:#555;color:#fff;border:2px solid #666;border-radius:6px;padding:8px 16px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:120px}.trade-type-option:hover:not(:disabled){background:#666;transform:translateY(-1px);box-shadow:0 2px 8px #0000004d}.trade-type-option.selected{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px #007bff4d}.trade-type-option:disabled{background:#555;color:#999;cursor:not-allowed;opacity:.6;transform:none;box-shadow:none}.trade-type-option:disabled:hover{background:#555;color:#999;transform:none;box-shadow:none}.trading-actions{display:flex;gap:12px;margin-top:8px}.trade-btn{padding:12px 20px;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .2s ease;flex:1}.bank-trade-btn{background:linear-gradient(135deg,#6c757d,#5a6268);color:#fff}.bank-trade-btn:hover:not(:disabled){background:linear-gradient(135deg,#5a6268,#495057);transform:translateY(-1px)}.player-trade-btn{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff}.player-trade-btn:hover:not(:disabled){background:linear-gradient(135deg,#0056b3,#004085);transform:translateY(-1px)}.trade-btn:disabled{background:#6c757d;cursor:not-allowed;opacity:.5;transform:none}@media (max-width: 768px){.trading-cards{justify-content:center}.trading-actions{flex-direction:column}.player-selection{justify-content:center}}.player-bank{background:#333;border:2px solid #555;border-radius:8px;padding:16px;margin-bottom:16px;box-shadow:0 4px 12px #0000004d;transition:all .3s ease}.player-bank.current-player{border-color:#007bff;box-shadow:0 6px 16px #007bff66;background:linear-gradient(135deg,#333,#444)}.player-bank-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #555}.player-info{display:flex;flex-direction:column;gap:4px}.header-actions{display:flex;align-items:center;gap:8px}.trade-button{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff;border:none;border-radius:4px;padding:6px 12px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s ease}.trade-button:hover{background:linear-gradient(135deg,#0056b3,#004085);transform:translateY(-1px)}.player-bank-header h3{margin:0;font-size:1.1rem;font-weight:600;color:#fff}.current-indicator{color:#007bff;font-size:1.2rem;animation:pulse 2s infinite}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.resource-cards-section,.dev-cards-section{margin-bottom:16px}.resource-cards-section:last-child,.dev-cards-section:last-child{margin-bottom:0}.resource-cards-section h4,.dev-cards-section h4{margin:0 0 8px;font-size:.9rem;font-weight:500;color:#ccc;text-transform:uppercase;letter-spacing:.5px}.resource-cards-grid,.dev-cards-grid,.player-bank-cards{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.card-divider{width:2px;height:40px;background:#555;margin:0 4px;border-radius:1px}.resource-card,.dev-card{display:flex;flex-direction:column;align-items:center;padding:8px 6px;border-radius:8px;transition:all .2s ease;width:48px;height:60px;border:2px solid #fff;box-shadow:0 2px 4px #0000004d}.resource-card:hover,.dev-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0006}.card-icon{margin-bottom:4px;display:flex;align-items:center;justify-content:center}.card-icon svg{filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.card-count{color:#fff;font-weight:700;font-size:.9rem;text-align:center;text-shadow:1px 1px 2px rgba(0,0,0,.5)}.dev-card[style*=knight]{background:linear-gradient(135deg,#8e44ad,#bb8fce)}.dev-card[style*=road_building]{background:linear-gradient(135deg,#16a085,#7fb3d3)}.dev-card[style*=year_of_plenty]{background:linear-gradient(135deg,#f39c12,#f7dc6f)}.dev-card[style*=monopoly]{background:linear-gradient(135deg,#e67e22,#f8c471)}.dev-card[style*=victory_point]{background:linear-gradient(135deg,#f1c40f,#f9e79f)}.discard-info{color:gold;font-size:.9rem;font-weight:600;margin-top:4px}.resource-card.discard-mode{position:relative;border:2px solid #ffd700;box-shadow:0 0 10px #ffd7004d}.discard-controls{position:absolute;top:-8px;right:-8px;display:flex;flex-direction:column;gap:2px;align-items:center}.discard-btn{width:16px;height:16px;border:none;border-radius:50%;cursor:pointer;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.increase-btn{background:#4caf50;color:#fff}.increase-btn:hover:not(:disabled){background:#45a049;transform:scale(1.1)}.decrease-btn{background:#f44336;color:#fff}.decrease-btn:hover:not(:disabled){background:#da190b;transform:scale(1.1)}.discard-btn:disabled{background:#666;cursor:not-allowed;opacity:.5;transform:none}.discard-count{color:gold;font-size:.8rem;font-weight:700;text-shadow:1px 1px 2px rgba(0,0,0,.5)}.discard-summary{margin-top:16px;padding:12px;background:#0000004d;border-radius:8px;border:1px solid #555;text-align:center}.discard-progress{color:#fff;font-size:1rem;font-weight:700;margin-bottom:8px}.discard-error{color:#ff6b6b;font-size:.9rem;font-weight:600;margin-bottom:12px}.discard-actions{display:flex;gap:12px;justify-content:center}.discard-action-btn{padding:8px 16px;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .2s ease}.cancel-btn{background:#6c757d;color:#fff}.cancel-btn:hover{background:#5a6268;transform:translateY(-1px)}.confirm-btn{background:linear-gradient(135deg,#28a745,#20c997);color:#fff}.confirm-btn:hover:not(:disabled){background:linear-gradient(135deg,#218838,#1e7e34);transform:translateY(-1px)}.confirm-btn:disabled{background:#666;cursor:not-allowed;opacity:.5;transform:none}@media (max-width: 768px){.resource-cards-grid,.dev-cards-grid{grid-template-columns:repeat(auto-fit,minmax(50px,1fr));gap:6px}.resource-card,.dev-card{width:50px;height:50px}.card-icon{font-size:20px}.card-count{width:18px;height:18px;font-size:.7rem}.discard-controls{top:-6px;right:-6px}.discard-btn{width:14px;height:14px;font-size:9px}}.card-bank{background-color:#2a2a2a;border-radius:8px;padding:12px;margin-bottom:15px;border:2px solid #444}.bank-header{margin-bottom:10px}.bank-header h3{color:#fff;margin:0;font-size:1rem;font-weight:600;text-align:center}.bank-resources-horizontal{display:flex;justify-content:space-between;align-items:center;gap:8px}.bank-item{display:flex;flex-direction:column;align-items:center;padding:8px 6px;border-radius:8px;transition:all .2s ease;width:48px;height:60px;border:2px solid #fff;box-shadow:0 2px 4px #0000004d}.bank-item.lumber{background:linear-gradient(135deg,#1b5e20,#2d5a27)}.bank-item.brick{background:linear-gradient(135deg,#b71c1c,#b22222)}.bank-item.wool{background:linear-gradient(135deg,#9ccc65,#90ee90)}.bank-item.grain{background:linear-gradient(135deg,#f9a825,gold)}.bank-item.ore{background:linear-gradient(135deg,#424242,gray)}.bank-item.dev-cards{background:linear-gradient(135deg,#9c27b0,#7b1fa2)}.bank-item:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0006}.bank-icon{margin-bottom:4px;display:flex;align-items:center;justify-content:center}.bank-icon svg{filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.bank-count{color:#fff;font-weight:700;font-size:.9rem;text-align:center;text-shadow:1px 1px 2px rgba(0,0,0,.5)}@media (max-width: 768px){.bank-resources{grid-template-columns:repeat(3,1fr)}}@media (max-width: 480px){.bank-resources{grid-template-columns:repeat(2,1fr)}.card-bank{padding:12px}}.robber-stealing-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease}.robber-stealing-modal{background:linear-gradient(135deg,#2c3e50,#34495e);border:3px solid #e74c3c;border-radius:12px;padding:24px;max-width:500px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 10px 30px #00000080;animation:slideIn .3s ease}.stealing-header{text-align:center;margin-bottom:20px;color:#fff}.stealing-header h3{margin:0 0 8px;font-size:1.5rem;color:#e74c3c;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.stealing-header p{margin:0;font-size:1rem;color:#ecf0f1}.players-list{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.player-card{background:linear-gradient(135deg,#34495e,#2c3e50);border:2px solid #7f8c8d;border-radius:8px;padding:16px;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.player-card.stealable{border-color:#e74c3c;box-shadow:0 0 10px #e74c3c4d}.player-card.stealable:hover{transform:translateY(-2px);box-shadow:0 5px 20px #e74c3c80;border-color:#c0392b}.player-card.no-resources{border-color:#7f8c8d;opacity:.6;cursor:not-allowed}.player-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.player-name{font-size:1.1rem;font-weight:700;color:#ecf0f1}.player-card-count{font-size:.9rem;color:#bdc3c7;background:#0000004d;padding:4px 8px;border-radius:4px}.player-resources{display:flex;flex-wrap:wrap;gap:8px}.resource-item{display:flex;align-items:center;gap:4px;padding:6px 10px;border-radius:6px;font-size:.9rem;font-weight:700;color:#2c3e50;box-shadow:0 2px 4px #0003;transition:transform .2s ease}.resource-item:hover{transform:scale(1.05)}.resource-icon{font-size:1rem}.resource-count{background:#2c3e50cc;color:#fff;padding:2px 6px;border-radius:10px;font-size:.8rem;min-width:18px;text-align:center}.no-resources-message{text-align:center;color:#7f8c8d;font-style:italic;padding:8px;background:#0003;border-radius:4px}.stealing-actions{display:flex;justify-content:center;gap:12px}.cancel-button{background:linear-gradient(135deg,#7f8c8d,#95a5a6);color:#fff;border:none;padding:12px 24px;border-radius:6px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 8px #0003}.cancel-button:hover{background:linear-gradient(135deg,#95a5a6,#bdc3c7);transform:translateY(-2px);box-shadow:0 6px 12px #0000004d}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 768px){.robber-stealing-modal{padding:16px;margin:16px}.player-card{padding:12px}.player-name{font-size:1rem}.resource-item{padding:4px 8px;font-size:.8rem}}.trade-offer-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease}.trade-offer-modal{background:linear-gradient(135deg,#2c3e50,#34495e);border:2px solid #3498db;border-radius:12px;padding:24px;max-width:500px;width:90%;box-shadow:0 8px 32px #00000080;animation:slideIn .3s ease}.trade-offer-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;border-bottom:2px solid #3498db;padding-bottom:12px}.trade-offer-header h3{margin:0;color:#ecf0f1;font-size:1.4rem;font-weight:700}.close-btn{background:#e74c3c;color:#fff;border:none;border-radius:50%;width:32px;height:32px;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.close-btn:hover{background:#c0392b;transform:scale(1.1)}.trade-offer-content{display:flex;align-items:center;gap:20px;margin-bottom:24px}.trade-section{flex:1;text-align:center}.trade-section h4{margin:0 0 12px;color:#bdc3c7;font-size:1rem;font-weight:600}.trade-cards{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;align-items:center}.resource-card{display:flex;flex-direction:column;align-items:center;padding:8px 6px;border-radius:8px;transition:all .2s ease;width:48px;height:60px;border:2px solid #fff;box-shadow:0 2px 4px #0000004d}.resource-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0006}.resource-card .card-icon{margin-bottom:4px;display:flex;align-items:center;justify-content:center}.resource-card .card-icon svg{filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.resource-card .card-count{color:#fff;font-weight:700;font-size:.9rem}.resource-card.lumber{background:linear-gradient(135deg,#1b5e20,#2d5a27)}.resource-card.brick{background:linear-gradient(135deg,#b71c1c,#b22222)}.resource-card.wool{background:linear-gradient(135deg,#9ccc65,#90ee90)}.resource-card.grain{background:linear-gradient(135deg,#f9a825,gold)}.resource-card.ore{background:linear-gradient(135deg,#424242,gray)}.offering-card{border:2px solid #27ae60;box-shadow:0 2px 8px #27ae604d}.requesting-card{border:2px solid #e67e22;box-shadow:0 2px 8px #e67e224d}.trade-arrow{font-size:2rem;color:#3498db;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.3)}.trade-offer-actions{display:flex;gap:12px;justify-content:center;margin-bottom:16px}.trade-btn{padding:12px 24px;border:none;border-radius:8px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .2s ease;min-width:120px}.accept-btn{background:linear-gradient(135deg,#27ae60,#2ecc71);color:#fff;box-shadow:0 4px 12px #27ae604d}.accept-btn:hover:not(:disabled){background:linear-gradient(135deg,#2ecc71,#27ae60);transform:translateY(-2px);box-shadow:0 6px 16px #27ae6066}.accept-btn:disabled{background:#7f8c8d;cursor:not-allowed;transform:none;box-shadow:none}.decline-btn{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff;box-shadow:0 4px 12px #e74c3c4d}.decline-btn:hover{background:linear-gradient(135deg,#c0392b,#e74c3c);transform:translateY(-2px);box-shadow:0 6px 16px #e74c3c66}.trade-offer-status{text-align:center}.insufficient-resources{color:#e74c3c;font-size:.9rem;margin:0;font-weight:600}@media (max-width: 600px){.trade-offer-modal{padding:16px;margin:16px}.trade-offer-content{flex-direction:column;gap:16px}.trade-arrow{transform:rotate(90deg);font-size:1.5rem}.trade-offer-actions{flex-direction:column}.trade-btn{min-width:auto}}.base-game-page{padding:0;margin:0 auto;background-color:#111;color:#fff;min-height:100vh;display:flex;flex-direction:column;overflow:hidden;max-width:1600px}.base-game-page h1{text-align:center;color:#fff;margin:15px 0}.game-board-container{display:flex;flex:1;height:100vh;overflow:hidden;margin:0 auto;width:100%}.board-area{flex:0 0 auto;height:100vh;width:100vh;max-width:calc(100% - 450px);background-color:#000;display:flex;justify-content:center;align-items:center;overflow:hidden;padding:10px}.info-panel{flex:1;min-width:400px;max-width:450px;background-color:#222;overflow-y:auto;display:flex;flex-direction:column;padding:20px;gap:5px;border-left:1px solid #444}.panel-header{text-align:center;padding-bottom:15px;border-bottom:1px solid #444;margin-bottom:20px;position:relative}.panel-title{color:#fff;font-size:1.4rem;font-weight:600;margin:0}.sidebar-section{background-color:#333;border-radius:8px;padding:20px;width:100%;box-sizing:border-box}.section-title{color:#fff;font-size:1.2rem;font-weight:700;margin-top:0;margin-bottom:15px;border-bottom:1px solid #444;padding-bottom:8px}.board-info{background-color:#2a2a2a;padding:15px;border-radius:6px;border:1px solid #444}.board-info p{margin:0 0 10px;color:#ccc;line-height:1.5}.board-info p:last-child{margin-bottom:0}.board-controls{display:flex;flex-direction:column;gap:12px;width:100%}.action-button{padding:12px 16px;border:none;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:6px}.load-board-button{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;box-shadow:0 2px 8px #4caf504d}.load-board-button:hover:not(:disabled){background:linear-gradient(135deg,#45a049,#3d8b40);box-shadow:0 4px 12px #4caf5066;transform:translateY(-1px)}.action-button:disabled{background:#555;color:#999;cursor:not-allowed;box-shadow:none;transform:none}.debug-controls{display:flex;flex-direction:column;gap:12px}.debug-toggle{display:flex;align-items:center;gap:8px;color:#ccc;cursor:pointer;font-size:.9rem}.debug-toggle input[type=checkbox]{width:16px;height:16px;accent-color:#4CAF50}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;gap:20px}.loading-spinner{width:40px;height:40px;border:4px solid #333;border-top:4px solid #4CAF50;border-radius:50%;animation:spin 1s linear infinite}.retry-button{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;border:none;padding:12px 24px;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.retry-button:hover{background:linear-gradient(135deg,#45a049,#3d8b40);transform:translateY(-1px)}@media (max-width: 1400px){.board-area{max-width:60%}.info-panel{min-width:380px;max-width:40%}}@media (max-width: 1200px){.game-board-container{flex-direction:column;height:auto}.board-area{height:60vh;width:100%;max-width:none}.info-panel{min-width:100%;max-width:none;height:40vh;border-left:none;border-top:1px solid #444}}@media (max-width: 900px){.game-board-container{flex-direction:column;height:auto}.board-area{width:100%;max-width:100%;height:calc(100vw - 40px);margin-bottom:15px}.info-panel{width:100%;max-width:100%;min-width:unset}}@media (max-width: 500px){.board-controls{gap:8px}.action-button{padding:10px 14px;font-size:.85rem}}.multiplayer-toggle{display:flex;align-items:center;gap:10px;margin-top:10px}.toggle-switch{position:relative;display:inline-block;width:50px;height:24px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;transition:.4s;border-radius:24px}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.4s;border-radius:50%}input:checked+.toggle-slider{background-color:#4caf50}input:checked+.toggle-slider:before{transform:translate(26px)}.toggle-label{color:#ccc;font-size:.9rem;font-weight:500}.game-over-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .5s ease}.game-over-modal{background:linear-gradient(135deg,#2c3e50,#34495e);border:4px solid #f1c40f;border-radius:16px;padding:40px;max-width:500px;width:90%;text-align:center;box-shadow:0 20px 40px #00000080;animation:slideIn .5s ease}.game-over-content h1{color:#f1c40f;font-size:2.5rem;margin:0 0 20px;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.winner-announcement h2{color:#ecf0f1;font-size:2rem;margin:0 0 20px;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.victory-details{background:#0000004d;border-radius:8px;padding:20px;margin:20px 0}.victory-details p{color:#ecf0f1;font-size:1.1rem;margin:8px 0;font-weight:500}.new-game-button{background:linear-gradient(135deg,#27ae60,#2ecc71);color:#fff;border:none;padding:15px 30px;border-radius:8px;font-size:1.2rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #27ae604d;margin-top:20px}.new-game-button:hover{background:linear-gradient(135deg,#2ecc71,#58d68d);transform:translateY(-2px);box-shadow:0 6px 16px #27ae6066}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translateY(-30px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.discard-status{background:linear-gradient(135deg,#dc3545,#c82333);border:2px solid #ff6b6b;border-radius:8px;padding:16px;margin:16px 0;color:#fff;box-shadow:0 4px 12px #dc35454d;animation:pulse 2s infinite}.discard-status h4{margin:0 0 12px;font-size:1.1rem;font-weight:700;text-align:center}.discard-players{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.discard-player{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border-radius:6px;font-size:.9rem;font-weight:600}.discard-player.completed{background:#28a7454d;border:2px solid #28a745;color:#90ee90}.discard-player.pending{background:#ffc10733;border:2px solid #ffc107;color:#fff3cd}.discard-player.viewing{background:#007bff4d;border:2px solid #007bff;box-shadow:0 0 10px #007bff80}.viewing-indicator{color:#007bff;font-size:1.2rem;margin-left:8px}.discard-instructions{margin-top:12px;padding:8px;background:#0003;border-radius:4px;font-size:.9rem;text-align:center}.switch-to-discard-btn{width:100%;padding:12px;background:linear-gradient(135deg,gold,#ffed4e);color:#333;border:none;border-radius:6px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #0003}.switch-to-discard-btn:hover{background:linear-gradient(135deg,#ffed4e,gold);transform:translateY(-1px);box-shadow:0 4px 12px #0000004d}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}:root{--primary-color: #3457D5;--secondary-color: #2a45ac;--dark-bg: #111;--darker-bg: #000;--light-text: #fff;--medium-text: #ccc;--light-border: #333;--sidebar-width: 220px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;color:var(--light-text);background-color:var(--dark-bg)}.app-container{display:flex;flex-direction:column;min-height:100vh}.content-wrapper{display:flex;flex:1}.mobile-menu-button{display:none;position:fixed;top:20px;left:20px;z-index:1001;background:var(--darker-bg);border:1px solid var(--light-border);border-radius:4px;padding:8px;cursor:pointer;flex-direction:column;gap:4px;width:40px;height:40px;justify-content:center;align-items:center}.hamburger-line{width:20px;height:2px;background-color:var(--light-text);transition:all .3s ease}.mobile-menu-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:999}.sidebar-nav{width:var(--sidebar-width);background-color:var(--darker-bg);box-shadow:2px 0 4px #00000080;height:100vh;position:fixed;left:0;top:0;z-index:1000;transition:transform .3s ease}.nav-header{padding:20px;border-bottom:1px solid var(--light-border);display:flex;justify-content:space-between;align-items:center}.nav-header h2{color:var(--light-text);font-size:1.4rem}.mobile-close-button{display:none;background:none;border:none;color:var(--light-text);font-size:24px;cursor:pointer;padding:4px;border-radius:4px;transition:background-color .2s}.mobile-close-button:hover{background-color:#ffffff1a}.sidebar-nav ul{display:flex;flex-direction:column;list-style:none}.sidebar-nav li{border-bottom:1px solid var(--light-border)}.sidebar-nav a{display:block;padding:15px 20px;text-decoration:none;color:var(--light-text);font-weight:600;transition:background-color .2s,color .2s}.sidebar-nav a:hover{color:var(--primary-color);background-color:#ffffff0d}.main-content{flex:1;margin-left:var(--sidebar-width);padding:20px}.home-page{max-width:1200px;margin:0 auto;padding:0}.hero-section{text-align:center;padding:80px 20px 60px;background:linear-gradient(135deg,var(--darker-bg) 0%,#1a1a2e 100%);border-radius:12px;box-shadow:0 8px 32px #0000004d;margin-bottom:40px;position:relative;overflow:hidden}.hero-section:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 30% 20%,rgba(52,87,213,.1) 0%,transparent 50%),radial-gradient(circle at 70% 80%,rgba(52,87,213,.05) 0%,transparent 50%);pointer-events:none}.hero-section>*{position:relative;z-index:1}.hero-section h1{margin-bottom:20px;color:var(--light-text);font-size:3.5rem;font-weight:700;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.hero-subtitle{font-size:1.4rem;color:var(--medium-text);margin-bottom:40px;font-weight:300;letter-spacing:.5px}.content-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:50px}.info-section{text-align:left;padding:40px;background:linear-gradient(145deg,#ffffff08,#ffffff03);border-radius:12px;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:transform .3s ease,box-shadow .3s ease}.info-section:hover{transform:translateY(-5px);box-shadow:0 12px 24px #0003}.info-section h2{color:var(--primary-color);font-size:2rem;margin-bottom:25px;text-align:center;font-weight:600}.info-section p{font-size:1.1rem;line-height:1.8;color:var(--light-text);margin-bottom:20px;text-align:left}.how-to-steps{margin:25px 0}.step{display:flex;align-items:flex-start;margin:20px 0;padding:20px;background:linear-gradient(135deg,#3457d51a,#3457d50d);border-radius:10px;border:1px solid rgba(52,87,213,.2);transition:all .3s ease}.step:hover{background:linear-gradient(135deg,#3457d526,#3457d514);border-color:#3457d54d}.step-number{background:var(--primary-color);color:#fff;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1rem;margin-right:15px;flex-shrink:0;box-shadow:0 2px 8px #3457d54d}.step-content{font-size:1.1rem;line-height:1.6;flex:1}.step-content strong{color:var(--primary-color);display:block;margin-bottom:5px}.beta-note{font-style:italic;color:var(--medium-text);font-size:1rem;text-align:center;margin-top:25px;padding:20px;background:linear-gradient(135deg,#ffffff05,#ffffff03);border-radius:8px;border:1px solid rgba(255,255,255,.05)}.secondary-cta{text-align:center;padding:40px 20px}.cta-buttons{margin-top:30px;display:flex;gap:20px;justify-content:center;flex-wrap:wrap}.cta-button{margin-top:0}.cta-button a{display:inline-block;padding:18px 40px;background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);color:#fff;text-decoration:none;border-radius:50px;font-weight:700;font-size:1.2rem;text-transform:uppercase;letter-spacing:1px;box-shadow:0 8px 20px #3457d54d;transition:all .3s ease;position:relative;overflow:hidden}.cta-button a:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .6s ease}.cta-button a:hover:before{left:100%}.cta-button a:hover{transform:translateY(-3px);box-shadow:0 12px 30px #3457d566}.cta-button.primary a{font-size:1.3rem;padding:20px 50px}.cta-button.secondary a{background:linear-gradient(135deg,#3457d51a,#2a45ac1a);border:2px solid var(--primary-color);color:var(--primary-color);font-size:1.1rem;padding:15px 35px}.cta-button.secondary a:hover{background:var(--primary-color);color:#fff}.cta-button.tertiary a{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;font-size:1.1rem;padding:15px 35px;box-shadow:0 8px 20px #4caf504d}.cta-button.tertiary a:hover{background:linear-gradient(135deg,#45a049,#3d8b40);box-shadow:0 12px 30px #4caf5066}.app-footer{padding:15px 20px;background-color:var(--darker-bg);border-top:1px solid var(--light-border);width:100%;box-sizing:border-box}.social-links{display:flex;justify-content:center;gap:30px;align-items:center}.social-link{display:flex;align-items:center;gap:8px;padding:10px 16px;text-decoration:none;color:var(--medium-text);background-color:#ffffff0d;border-radius:8px;transition:all .2s ease;font-weight:500;border:1px solid transparent}.social-link:hover{color:var(--light-text);background-color:#ffffff1a;transform:translateY(-1px)}.social-link.discord:hover{border-color:#5865f2;background-color:#5865f21a}.social-link.reddit:hover{border-color:#ff4500;background-color:#ff45001a}.social-icon{font-size:.9rem}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;text-align:center;padding:20px}.loading-spinner{width:40px;height:40px;border:4px solid #333;border-top:4px solid #3457D5;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-container h2{color:#ff6b6b;margin-bottom:15px}.error-container button{background:#3457d5;color:#fff;border:none;padding:12px 24px;border-radius:6px;cursor:pointer;font-size:1rem;margin-top:15px}.error-container button:hover{background:#2a45ac}@media (max-width: 768px){.mobile-menu-button{display:flex}.mobile-menu-button.active{display:none}.mobile-menu-overlay{display:block}.mobile-close-button{display:none}.sidebar-nav.mobile-open .mobile-close-button{display:block}.sidebar-nav{width:280px;transform:translate(-100%);height:100vh;position:fixed;top:0;left:0;z-index:1000}.sidebar-nav.mobile-open{transform:translate(0)}.app-container{flex-direction:column}.main-content{margin-left:0;padding:70px 15px 15px}.mobile-menu-button.active .hamburger-line:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.mobile-menu-button.active .hamburger-line:nth-child(2){opacity:0}.mobile-menu-button.active .hamburger-line:nth-child(3){transform:rotate(-45deg) translate(7px,-6px)}.hero-section{padding:50px 15px 40px}.hero-section h1{font-size:2.5rem}.hero-subtitle{font-size:1.2rem}.content-grid{grid-template-columns:1fr;gap:20px;margin-bottom:30px}.info-section{padding:25px}.info-section h2{font-size:1.6rem}.step{flex-direction:column;text-align:center}.step-number{margin-right:0;margin-bottom:10px}.cta-button.primary a{font-size:1.1rem;padding:16px 35px}.app-footer{padding:10px 15px}.social-links{flex-direction:column;gap:15px}}@media (max-width: 480px){.hero-section h1{font-size:2rem}.hero-subtitle{font-size:1rem}.info-section{padding:20px}.step{padding:15px}}
