:root{--bg-color: #f0f4f1;--text-dark: #1a3c34;--primary: #2d6a4f;--primary-light: #40916c;--secondary: #d8f3dc;--accent: #ff9f1c;--danger: #e63946;--glass-bg: rgba(255, 255, 255, .7);--glass-border: rgba(255, 255, 255, .3);--shadow-sm: 0 4px 6px -1px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--radius: 16px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Outfit,sans-serif;background-color:var(--bg-color);color:var(--text-dark);height:100vh;width:100vw;overflow:hidden;display:flex;justify-content:center;align-items:center;background:linear-gradient(-45deg,#1b4332,var(--primary),var(--primary-light),#2d6a4f);background-size:400% 400%;animation:splashGradient 15s ease infinite}#splash-screen{position:absolute;top:0;left:0;width:100vw;height:100vh;justify-content:center;align-items:center;color:#fff;display:flex;flex-direction:column;z-index:200;transition:opacity .5s ease-out}@keyframes splashGradient{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.game-card{position:relative;width:100px;height:140px;background:#fff;border:2px solid #ddd;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:10px;box-shadow:0 2px 4px #0000001a;transition:transform .2s;-webkit-user-select:none;user-select:none}.game-card:hover{transform:translateY(-5px);z-index:99999}@keyframes floatTitle{0%{transform:translateY(0);text-shadow:2px 2px 4px rgba(0,0,0,.2)}50%{transform:translateY(-8px);text-shadow:2px 10px 12px rgba(0,0,0,.3)}to{transform:translateY(0);text-shadow:2px 2px 4px rgba(0,0,0,.2)}}#splash-screen h1{font-size:4rem;margin-bottom:2rem;animation:floatTitle 6s ease-in-out infinite;position:relative;z-index:10}#splash-emojis{position:fixed;top:0;left:0;width:100vw;height:100vh;overflow:hidden;pointer-events:none;z-index:-1}.floating-emoji{position:absolute;white-space:nowrap;animation:flyLeft linear infinite;opacity:.6}@keyframes flyLeft{0%{transform:translate(110vw) translateY(0) rotate(0)}to{transform:translate(-20vw) translateY(60vh) rotate(360deg)}}.rules-container.modal{background-color:var(--bg-color);padding:40px;border-radius:var(--radius);max-width:600px;width:90%;text-align:center;box-shadow:var(--shadow-lg)}.choices-list{list-style-type:none;padding:0;margin:20px 0;text-align:left}.choices-list li{padding:10px;border-bottom:1px solid var(--secondary);font-size:1.2rem;display:flex;justify-content:space-between}.choices-list li span:first-child{font-weight:700}.rules-container{background:#fff;color:var(--text-dark);padding:40px;border-radius:var(--radius);max-width:600px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:20px;position:relative;z-index:10}.eu-logo{max-width:250px;margin:20px auto 10px;display:block}.eu-disclaimer{font-size:.65rem;color:#666;line-height:1.3;margin-bottom:25px;text-align:justify}.rules-container ul{padding-left:20px;line-height:1.6}#setup-name{padding:15px;font-size:1.2rem;border:2px solid var(--secondary);border-radius:var(--radius);outline:none;font-family:inherit;width:100%}#setup-name:focus{border-color:var(--primary)}.emoji-picker{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:2rem;justify-items:center}.emoji-btn{font-size:2rem;cursor:pointer;opacity:.5;transition:opacity .2s,transform .2s;padding:10px;border-radius:50%;background:#ffffff1a;width:60px;height:60px;display:flex;align-items:center;justify-content:center}.emoji-btn:hover{transform:scale(1.1);background:var(--secondary)}.emoji-btn.selected{background:var(--primary);transform:scale(1.1);opacity:1}.difficulty-picker{display:flex;gap:15px;justify-content:center}.diff-btn{cursor:pointer}.diff-btn input{display:none}.diff-card{padding:20px;border:2px solid var(--secondary);border-radius:var(--radius);background:var(--bg-color);transition:all .2s}.diff-btn input:checked+.diff-card{border-color:var(--primary);background:var(--secondary);transform:scale(1.05)}.rules-container .flex-actions{margin-top:20px}.rules-container .btn{font-size:1.3rem;padding:15px 40px}#game-container{display:grid;grid-template-columns:1fr 2fr 1fr;grid-template-rows:1fr 1fr;gap:20px;width:95vw;height:95vh;padding:20px;transition:opacity .5s ease-in}.player-area{background:#fff;border-radius:var(--radius);padding:15px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column}#player-1{grid-column:1;grid-row:1}#player-2{grid-column:3;grid-row:1}#player-3{grid-column:3;grid-row:2}#player-4{grid-column:1;grid-row:2}.player-header{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid var(--secondary);padding-bottom:10px;margin-bottom:10px}.player-header h2{font-size:1.2rem;font-weight:600;color:var(--primary)}.score{background:var(--primary-light);color:#fff;padding:4px 12px;border-radius:20px;font-weight:800;font-size:.9rem}.windowsill{display:flex;flex-wrap:wrap;gap:5px;overflow-y:auto;overflow-x:visible;align-content:flex-start;height:310px;padding-bottom:50px}.windowsill::-webkit-scrollbar{width:8px}.windowsill::-webkit-scrollbar-track{background:var(--bg-color);border-radius:4px}.windowsill::-webkit-scrollbar-thumb{background:var(--primary-light);border-radius:4px}.windowsill::-webkit-scrollbar-thumb:hover{background:var(--primary)}.windowsill .game-card{width:105px;height:150px;padding:10px}.windowsill .card-emoji{font-size:1.8rem;margin-bottom:3px}.windowsill .card-name{font-size:.85rem}#central-board{grid-column:2;grid-row:1 / span 2;background:var(--glass-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--glass-border);border-radius:var(--radius);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;padding:30px;text-align:center}.board-header{text-align:center;position:relative;margin-bottom:10px}.ig-logo{max-width:150px;height:auto;margin-bottom:10px}.board-header h1{font-size:2.5rem;color:var(--primary);margin-bottom:10px}.board-header h3{font-weight:300;color:var(--primary-light)}.game-info,.deck-info{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:10px;font-weight:600;opacity:.8;margin-bottom:30px}.deck-info{margin-top:15px;font-size:1.2rem;font-weight:600;color:var(--text-dark);display:flex;flex-direction:column;gap:5px}.resource-stations{display:flex;justify-content:center;align-items:center;gap:20px;flex:1;margin-top:50px}.station{display:flex;flex-direction:column;align-items:center;gap:15px}.station-number{background:var(--primary);color:#fff;width:40px;height:40px;border-radius:50%;display:flex;justify-content:center;align-items:center;font-size:1.5rem;font-weight:800;box-shadow:var(--shadow-sm)}.card-slot{width:140px;height:200px;background:#0000000d;border:2px dashed rgba(0,0,0,.1);border-radius:12px;display:flex;justify-content:center;align-items:center;position:relative}.card-slot .game-card{z-index:10}.card-slot.selectable .game-card{cursor:pointer;box-shadow:0 0 15px var(--accent);transform:scale(1.05);transition:transform .2s,box-shadow .2s}.card-slot.selectable .game-card:hover{transform:scale(1.1)}.player-badge{position:absolute;width:30px;height:30px;border-radius:50%;background:var(--primary);color:#fff;display:flex;justify-content:center;align-items:center;font-weight:700;font-size:14px;z-index:20;box-shadow:0 2px 4px #0000004d;opacity:0;transform:scale(0);transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.player-badge.visible{opacity:1;transform:scale(1)}.badge-p1{top:-10px;left:-10px;background:#e63946}.badge-p2{top:-10px;right:-10px;background:#457b9d}.badge-p3{bottom:-10px;left:-10px;background:#2a9d8f}.badge-p4{bottom:-10px;right:-10px;background:#e9c46a;color:#1a3c34}.game-card{width:140px;height:200px;background:#fff;border-radius:12px;box-shadow:var(--shadow-sm);padding:15px;display:flex;flex-direction:column;border:2px solid var(--secondary);transition:transform .3s ease-out,box-shadow .3s ease-out,opacity .3s;animation:popIn .3s cubic-bezier(.175,.885,.32,1.275);position:relative}.card-count{position:absolute;bottom:5px;right:5px;background:var(--secondary);color:var(--primary);padding:2px 6px;border-radius:8px;font-size:.9rem;font-weight:800}.game-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}.flex-actions{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:15px}.card-type{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;opacity:.8;margin-bottom:5px}.card-emoji{font-size:2.5rem;display:block;text-align:center;margin-bottom:5px}.card-desc{display:none}.card-name{font-size:1.1rem;font-weight:800;margin-top:auto;margin-bottom:auto;line-height:1.2}html[lang=nl] .game-card .card-name{word-break:break-word}.card-desc{font-size:.75rem;opacity:.8;line-height:1.3}#modal-overlay{position:fixed;inset:0;background:#1a3c3466;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:100;display:flex;justify-content:center;align-items:center}.hidden{display:none!important}.modal{background:#fff;padding:40px;border-radius:var(--radius);box-shadow:var(--shadow-lg);max-width:600px;width:90%;text-align:center;animation:popIn .3s cubic-bezier(.175,.885,.32,1.275)}.glass-modal{background:#ffffffd9;border:1px solid var(--glass-border)}.modal h2{color:var(--primary);font-size:2rem;margin-bottom:15px}.modal p{font-size:1.2rem;margin-bottom:25px}.btn{background:var(--primary);color:#fff;border:none;padding:12px 24px;font-size:1.1rem;font-weight:600;border-radius:30px;cursor:pointer;transition:all .2s;font-family:inherit}.globe-btn{background:var(--secondary);color:var(--text-dark);font-size:1.5rem;width:46px!important;height:46px!important;padding:0!important;display:flex;align-items:center;justify-content:center;border-radius:50%!important;border:2px solid var(--secondary);flex-shrink:0;margin:0!important}.rules-container .globe-btn{width:56.5px!important;height:56.5px!important}.globe-btn:hover{background:#c3e8ca}.lang-selector{position:relative;display:inline-block;margin-left:10px}.lang-menu{position:absolute;bottom:120%;right:0;background:#fff;border-radius:12px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden;z-index:1000;border:1px solid var(--glass-border)}.lang-option{padding:12px 20px;cursor:pointer;font-weight:600;transition:background .2s}.lang-option:hover{background:var(--secondary)}.btn:hover{background:var(--primary-light);transform:scale(1.05)}.btn-secondary{background:var(--accent)}.btn-secondary:hover{background:#ffab40}.station-choices{display:flex;justify-content:center;gap:15px}.btn-choice{width:100px;height:60px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;background:var(--secondary);color:var(--primary)}.btn-choice:hover{background:var(--primary-light);color:#fff}.rps-arena{display:flex;justify-content:space-between;align-items:center;margin:30px 0}.rps-player{flex:1;background:#00000008;padding:20px;border-radius:12px}.vs-badge{display:flex;flex-direction:column;justify-content:center;align-items:center;margin:0 20px}#rps-vs-text{font-size:2rem;font-weight:800;color:var(--accent)}.rps-reveal-container{display:flex;align-items:center;gap:15px;font-size:1.2rem;font-weight:700;background:var(--secondary);padding:10px 20px;border-radius:30px;margin-bottom:10px;animation:popIn .3s cubic-bezier(.175,.885,.32,1.275)}.rps-emoji{font-size:2.5rem}.rps-winner-text{font-size:1.5rem!important;font-weight:700;color:var(--primary)}.rps-controls{display:flex;gap:10px;justify-content:center;margin-top:15px}.btn-rps{background:#fff;border:2px solid var(--secondary);border-radius:12px;padding:10px;font-size:1.5rem;cursor:pointer;transition:all .2s}.btn-rps:hover,.btn-rps.selected{border-color:var(--primary);background:var(--secondary)}@keyframes popIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@media screen and (max-width:1280px){body{overflow:auto;height:auto}#splash-screen h1{font-size:3rem}#game-container{display:flex;flex-direction:column;height:auto;min-height:100vh;width:100vw;padding:10px;gap:15px}.player-area{width:100%}#central-board{width:100%;order:-1}.resource-stations{flex-wrap:wrap;gap:10px}.station{flex:1 1 20%;gap:30px}.card-slot{width:120px;height:170px}.ig-logo{display:none}.deck-info{flex-direction:row;gap:10px}.deck-info span:first-child:after{content:" |";margin-left:10px}.board-actions{margin-top:30px}}@media screen and (max-width:600px){#splash-screen h1{font-size:2.2rem}.rules-container{padding:20px;width:95%}.emoji-btn{width:45px;height:45px;font-size:1.5rem}.difficulty-picker{flex-direction:column;gap:10px}.card-slot{width:100px;height:140px}.station-choices{flex-wrap:wrap}.windowsill{height:auto;max-height:200px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:20px}.game-card{width:90px;height:130px;padding:8px}.card-emoji{font-size:1.5rem}.card-name{font-size:.8rem}.rules-container .flex-actions{flex-direction:column;gap:15px}.lang-menu{bottom:100%;right:50%;transform:translate(50%)}.lang-selector{margin-left:0}.board-header h1{font-size:1.8rem}}@media screen and (max-width:520px){.station{flex:1 1 45%;gap:15px}}
