*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--radius: .5rem;--sidebar-background: 0 0% 98%;--sidebar-foreground: 240 5.3% 26.1%;--sidebar-primary: 240 5.9% 10%;--sidebar-primary-foreground: 0 0% 98%;--sidebar-accent: 240 4.8% 95.9%;--sidebar-accent-foreground: 240 5.9% 10%;--sidebar-border: 220 13% 91%;--sidebar-ring: 217.2 91.2% 59.8% }.collapse{visibility:collapse}.static{position:static}.mt-2{margin-top:.5rem}.grow{flex-grow:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rounded{border-radius:.25rem}.border{border-width:1px}.border-red-500{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.p-4{padding:1rem}.text-sm{font-size:.875rem;line-height:1.25rem}.capitalize{text-transform:capitalize}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity, 1);transform:translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0) scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}}.ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}.running{animation-play-state:running}img{-o-object-position:top;object-position:top}.fixed{position:fixed}:root{--bg-primary: #ffffff;--bg-secondary: #f8fafc;--bg-tertiary: #e2e8f0;--text-primary: #1e293b;--text-secondary: #475569;--text-muted: #94a3b8;--accent-green: #10b981;--accent-blue: #3b82f6;--accent-amber: #f59e0b;--accent-red: #ef4444;--accent-purple: #8b5cf6;--accent-pink: #ec4899;--accent-teal: #14b8a6;--border-color: #e2e8f0;--glass-bg: rgba(255, 255, 255, .9);--shadow-color: rgba(0, 0, 0, .1)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-primary);color:var(--text-primary);min-height:100vh;overflow-x:hidden}#root{min-height:100vh}.loading-screen{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 100%)}.loader{text-align:center}.loader svg{color:var(--accent-green);margin-bottom:1rem}.loader p{color:var(--text-secondary);font-size:1.125rem}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.pulse{animation:pulse 2s ease-in-out infinite}.role-selection{min-height:100vh;padding:2rem;background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 50%,#f1f5f9 100%);overflow-y:auto}.role-header{text-align:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:3px solid;-o-border-image:linear-gradient(90deg,var(--accent-green),var(--accent-blue)) 1;border-image:linear-gradient(90deg,var(--accent-green),var(--accent-blue)) 1}.game-title{display:flex;align-items:center;justify-content:center;gap:.75rem;font-size:3rem;font-weight:800;background:linear-gradient(135deg,var(--accent-green) 0%,#22d3ee 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.02em}.game-title .title-icon{color:var(--accent-green);-webkit-text-fill-color:initial}.subtitle{color:var(--text-secondary);font-size:1.25rem;margin-top:.5rem}.role-intro{text-align:center;margin-bottom:2rem;max-width:600px;margin-left:auto;margin-right:auto;padding:1.5rem;border-left:4px solid var(--accent-green);border-right:4px solid var(--accent-blue);border-radius:8px;background:var(--bg-secondary)}.role-intro h2{font-size:1.75rem;margin-bottom:.5rem}.role-intro p{color:var(--text-secondary)}.role-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;max-width:1200px;margin:0 auto 2rem}.role-card{background:var(--glass-bg);border:1px solid var(--border-color);border-radius:16px;padding:1.5rem;cursor:pointer;transition:all .3s ease;text-align:left;position:relative;overflow:hidden}.role-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--role-color);opacity:0;transition:opacity .3s ease}.role-card:hover{transform:translateY(-4px);border-color:var(--role-color);box-shadow:0 12px 40px #00dc8226}.role-card:hover:before{opacity:1}.role-icon{width:64px;height:64px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:1rem}.role-card h3{font-size:1.25rem;margin-bottom:.5rem;color:var(--text-primary)}.role-desc{color:var(--text-secondary);font-size:.875rem;margin-bottom:1rem;line-height:1.5}.role-stats{display:flex;gap:1rem;margin-bottom:1rem}.role-stats .stat{display:flex;align-items:center;gap:.375rem;color:var(--text-muted);font-size:.875rem}.role-abilities{display:flex;flex-wrap:wrap;gap:.5rem}.ability-tag{background:#00dc821a;color:var(--accent-green);padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500}.game-info{display:flex;justify-content:center;gap:3rem;max-width:800px;margin:0 auto;flex-wrap:wrap}.info-section{background:var(--glass-bg);border:1px solid var(--border-color);border-radius:12px;padding:1.25rem;flex:1;min-width:280px;max-width:400px}.info-section h3{display:flex;align-items:center;gap:.5rem;font-size:1rem;margin-bottom:.5rem;color:var(--accent-green)}.info-section p{color:var(--text-secondary);font-size:.875rem;line-height:1.5}.game-dashboard{display:flex;flex-direction:column;min-height:100vh;background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 100%)}.top-bar{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:100}.game-title-bar{display:flex;align-items:center;gap:.75rem;font-size:1.25rem;font-weight:700;color:var(--accent-green)}.game-title-bar .turn-indicator{background:var(--bg-tertiary);padding:.25rem .75rem;border-radius:9999px;font-size:.875rem;color:var(--text-secondary)}.global-metrics{display:flex;gap:1.5rem}.global-metrics .metric{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--bg-tertiary);border-radius:8px;font-weight:600;font-size:.875rem}.top-actions{display:flex;gap:.5rem}.icon-btn{width:40px;height:40px;border-radius:8px;border:1px solid var(--border-color);background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.icon-btn:hover{background:var(--bg-tertiary);color:var(--accent-green);border-color:var(--accent-green)}.main-content{display:grid;grid-template-columns:280px 1fr 300px;flex:1;overflow:hidden}@media (max-width: 1200px){.main-content{grid-template-columns:240px 1fr 260px}}@media (max-width: 1024px){.main-content{grid-template-columns:1fr;grid-template-rows:auto 1fr auto}}.left-sidebar{background:var(--bg-secondary);border-right:1px solid var(--border-color);padding:1.25rem;overflow-y:auto}.player-card{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--bg-tertiary);border-radius:12px;border-left:3px solid;margin-bottom:1.25rem}.player-avatar{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff}.player-info h3{font-size:1rem;margin-bottom:.125rem}.player-info p{font-size:.75rem;color:var(--text-muted)}.player-stats{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.25rem}.stat-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:var(--bg-tertiary);border-radius:8px}.stat-icon{color:var(--text-muted)}.stat-content{display:flex;flex-direction:column}.stat-label{font-size:.75rem;color:var(--text-muted)}.stat-value{font-size:.9375rem;font-weight:600;color:var(--text-primary)}.esg-radar{background:var(--bg-tertiary);border-radius:12px;padding:1rem;margin-bottom:1.25rem}.esg-radar h4{font-size:.875rem;margin-bottom:.75rem;color:var(--text-secondary)}.esg-radar-chart{width:100%;height:150px}.radar-svg{width:100%;height:100%}.market-chart{width:100%;height:200px;background:var(--bg-tertiary);border-radius:8px;padding:.5rem}.price-chart{width:100%;height:100%}.ai-advisor{background:linear-gradient(135deg,#00dc821a,#22d3ee0d);border:1px solid rgba(0,220,130,.2);border-radius:12px;padding:1rem}.advisor-header{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;color:var(--accent-green);margin-bottom:.75rem}.advisor-tip{font-size:.8125rem;color:var(--text-secondary);line-height:1.5;font-style:italic}.viewport{display:flex;flex-direction:column;overflow:hidden}.viewport-tabs{display:flex;gap:.25rem;padding:1rem 1.25rem;background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.viewport-tabs .tab{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background:transparent;border:none;border-radius:8px;color:var(--text-muted);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.viewport-tabs .tab:hover{background:var(--bg-tertiary);color:var(--text-primary)}.viewport-tabs .tab.active{background:var(--accent-green);color:var(--bg-primary)}.viewport-tabs .tab.highlighted{animation:tabPulse 1s ease-in-out infinite;border:2px solid #22d3ee;box-shadow:0 0 15px #22d3ee80}@keyframes tabPulse{0%,to{box-shadow:0 0 10px #22d3ee4d}50%{box-shadow:0 0 20px #22d3eeb3}}.viewport-content{flex:1;padding:1.25rem;overflow-y:auto}.market-view{display:flex;flex-direction:column;gap:1.25rem}.chart-section{background:var(--bg-secondary);border-radius:12px;padding:1.25rem}.chart-section h4{font-size:1rem;margin-bottom:1rem;color:var(--text-secondary)}.market-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.market-stat{background:var(--bg-secondary);border-radius:8px;padding:1rem;text-align:center}.market-stat .stat-label{display:block;font-size:.75rem;margin-bottom:.375rem}.market-stat .stat-value{font-size:1.125rem;font-weight:700}.assets-view h4,.trading-view h4,.players-view h4{font-size:1.125rem;margin-bottom:1.25rem}.assets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.asset-card{display:flex;align-items:center;gap:1rem;background:var(--bg-secondary);border-radius:12px;padding:1rem}.asset-icon{width:48px;height:48px;border-radius:10px;background:var(--bg-tertiary);display:flex;align-items:center;justify-content:center;color:var(--accent-green)}.asset-info{flex:1}.asset-info h5{font-size:.9375rem;margin-bottom:.375rem}.asset-stats{display:flex;flex-wrap:wrap;gap:.75rem}.asset-stat{display:flex;align-items:center;gap:.25rem;font-size:.75rem;color:var(--text-muted)}.asset-stat .up{color:var(--accent-green)}.asset-stat .down{color:var(--accent-red)}.asset-stat .esg{color:var(--accent-blue)}.asset-level{font-size:.75rem;color:var(--accent-purple);margin-top:.375rem}.upgrade-btn{padding:.5rem 1rem;background:var(--accent-green);border:none;border-radius:6px;color:var(--bg-primary);font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s ease}.upgrade-btn:hover{background:#00c474;transform:translateY(-1px)}.no-assets{grid-column:1 / -1;text-align:center;padding:3rem;color:var(--text-muted)}.trading-interface{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.25rem;margin-bottom:1.5rem}.trade-panel{background:var(--bg-secondary);border-radius:12px;padding:1.25rem}.trade-panel h5{font-size:1rem;margin-bottom:1rem}.trade-input{margin-bottom:1rem}.trade-input label{display:block;font-size:.8125rem;color:var(--text-muted);margin-bottom:.375rem}.trade-input input{width:100%;padding:.75rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:1rem}.trade-input input:focus{outline:none;border-color:var(--accent-green)}.trade-summary{background:var(--bg-tertiary);border-radius:8px;padding:.75rem;margin-bottom:1rem}.summary-row{display:flex;justify-content:space-between;font-size:.875rem;color:var(--text-muted);padding:.25rem 0}.summary-row.total{border-top:1px solid var(--border-color);margin-top:.5rem;padding-top:.5rem;font-weight:600;color:var(--text-primary)}.trade-btn{width:100%;padding:.75rem;border:none;border-radius:8px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease}.trade-btn.buy{background:var(--accent-green);color:var(--bg-primary)}.trade-btn.buy:hover:not(:disabled){background:#00c474}.trade-btn.sell{background:var(--accent-amber);color:var(--bg-primary)}.trade-btn.sell:hover:not(:disabled){background:#d97706}.trade-btn:disabled{opacity:.5;cursor:not-allowed}.bond-panel,.investment-panel{background:var(--bg-secondary);border-radius:12px;padding:1.25rem;margin-bottom:1rem}.bond-panel h5,.investment-panel h5{font-size:1rem;margin-bottom:1rem}.bond-actions,.investment-actions{display:flex;flex-wrap:wrap;gap:.75rem}.bond-actions button,.investment-actions button{flex:1;min-width:120px;padding:.75rem 1rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:.875rem;cursor:pointer;transition:all .2s ease}.bond-actions button:hover,.investment-actions button:hover{border-color:var(--accent-blue);background:#3b82f61a}.bond-actions button:disabled,.investment-actions button:disabled{opacity:.5;cursor:not-allowed}.bond-info{margin-top:1rem;font-size:.8125rem;color:var(--text-muted);line-height:1.5}.leaderboard{display:flex;flex-direction:column;gap:.5rem}.leaderboard-row{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--bg-secondary);border-radius:10px;transition:all .2s ease}.leaderboard-row.current{border:1px solid var(--accent-green);background:#00dc820d}.rank{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);border-radius:8px;font-weight:700;font-size:.875rem}.player-avatar-sm{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff}.player-details{flex:1;display:flex;flex-direction:column}.player-name{font-weight:600;font-size:.9375rem}.player-role{font-size:.75rem;color:var(--text-muted)}.player-score{text-align:right}.score-value{font-weight:700;font-size:1.125rem;color:var(--accent-green)}.score-label{font-size:.75rem;color:var(--text-muted)}.player-metrics{display:flex;gap:1rem}.player-metrics .metric{display:flex;align-items:center;gap:.25rem;font-size:.75rem;color:var(--text-muted)}.right-sidebar{background:var(--bg-secondary);border-left:1px solid var(--border-color);padding:1.25rem;overflow-y:auto;display:flex;flex-direction:column;gap:1.25rem}.news-section h4,.event-section h4,.actions-panel h4{display:flex;align-items:center;gap:.5rem;font-size:.9375rem;margin-bottom:1rem;color:var(--text-secondary)}.news-list{display:flex;flex-direction:column;gap:.75rem;max-height:300px;overflow-y:auto}.news-item{padding:.75rem;background:var(--bg-tertiary);border-radius:8px;border-left:3px solid var(--border-color)}.news-item.event{border-left-color:var(--accent-amber)}.news-item.player{border-left-color:var(--accent-blue)}.news-item.system{border-left-color:var(--accent-green)}.news-time{font-size:.6875rem;color:var(--text-muted)}.news-item p{font-size:.8125rem;color:var(--text-secondary);margin-top:.25rem;line-height:1.4}.no-news{text-align:center;color:var(--text-muted);font-size:.875rem;padding:1rem}.event-card{background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);border-radius:10px;padding:1rem}.event-card h5{font-size:.9375rem;margin-bottom:.5rem;color:var(--accent-amber)}.event-card p{font-size:.8125rem;color:var(--text-secondary);line-height:1.4;margin-bottom:.75rem}.event-impacts{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.event-impacts span{font-size:.75rem;padding:.25rem .5rem;border-radius:4px;background:var(--bg-tertiary)}.event-impacts .negative{color:var(--accent-red)}.event-impacts .positive{color:var(--accent-green)}.event-btn{width:100%;padding:.5rem;background:var(--accent-amber);border:none;border-radius:6px;color:var(--bg-primary);font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s ease}.event-btn:hover{background:#d97706}.quick-actions{display:flex;flex-direction:column;gap:.75rem}.action-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem;border:none;border-radius:8px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease}.action-btn.primary{background:var(--accent-green);color:var(--bg-primary)}.action-btn.primary:hover:not(:disabled){background:#00c474}.action-btn:disabled{opacity:.5;cursor:not-allowed}.help-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.help-content{background:var(--bg-secondary);border-radius:16px;width:100%;max-width:700px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.help-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color)}.help-header h2{display:flex;align-items:center;gap:.75rem;font-size:1.25rem}.close-btn{width:36px;height:36px;border-radius:8px;border:1px solid var(--border-color);background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.close-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.help-search{display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;background:var(--bg-tertiary);margin:1rem 1.5rem;border-radius:10px}.help-search svg{color:var(--text-muted)}.help-search input{flex:1;background:transparent;border:none;color:var(--text-primary);font-size:.9375rem}.help-search input:focus{outline:none}.help-search input::-moz-placeholder{color:var(--text-muted)}.help-search input::placeholder{color:var(--text-muted)}.help-body{flex:1;overflow-y:auto;padding:0 1.5rem 1.5rem}.help-sections{display:flex;flex-direction:column;gap:.5rem}.help-section{background:var(--bg-tertiary);border-radius:10px;overflow:hidden}.section-toggle{width:100%;display:flex;align-items:center;gap:.75rem;padding:1rem;background:transparent;border:none;color:var(--text-primary);font-size:.9375rem;font-weight:500;cursor:pointer;text-align:left;transition:all .2s ease}.section-toggle:hover{background:#00dc820d}.section-content{padding:0 1rem 1rem}.section-content p{font-size:.875rem;color:var(--text-secondary);line-height:1.6;white-space:pre-wrap}.search-results h4{font-size:1rem;margin-bottom:1rem}.glossary-item{background:var(--bg-tertiary);border-radius:10px;padding:1rem;margin-bottom:.75rem}.glossary-item h5{font-size:.9375rem;color:var(--accent-green);margin-bottom:.5rem}.glossary-item p{font-size:.8125rem;color:var(--text-secondary);line-height:1.5}.related-terms{display:flex;flex-wrap:wrap;gap:.375rem;margin-top:.75rem}.related-tag{font-size:.6875rem;padding:.25rem .5rem;background:var(--bg-secondary);border-radius:4px;color:var(--text-muted)}.help-footer{padding:1rem 1.5rem;border-top:1px solid var(--border-color);background:var(--bg-tertiary)}.tip-section h4{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--accent-amber);margin-bottom:.5rem}.tip-section p{font-size:.8125rem;color:var(--text-secondary);font-style:italic}.global-status-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.global-status-content{background:var(--bg-secondary);border-radius:16px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto}.global-status-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color);background:linear-gradient(135deg,#00dc821a,#06b6d41a)}.global-status-header h2{display:flex;align-items:center;gap:.5rem;font-size:1.25rem;color:var(--text-primary);margin:0}.global-status-body{padding:1.5rem}.status-section{margin-bottom:1.5rem}.status-section:last-child{margin-bottom:0}.status-section h3{font-size:.875rem;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);margin-bottom:.75rem;border-bottom:1px solid var(--border-color);padding-bottom:.5rem}.climate-indicators{display:flex;flex-direction:column;gap:.5rem}.indicator-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:#ffffff08;border-radius:6px}.indicator-name{font-size:.875rem;color:var(--text-primary)}.indicator-severity{font-size:.6875rem;font-weight:700;padding:.25rem .5rem;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.indicator-severity.critical{background:#ef444433;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.indicator-severity.high{background:#f59e0b33;color:#f59e0b;border:1px solid rgba(245,158,11,.3)}.indicator-severity.moderate{background:#eab30833;color:#eab308;border:1px solid rgba(234,179,8,.3)}.impact-metrics{display:flex;flex-direction:column;gap:.75rem}.impact-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#ffffff08;border-radius:6px}.impact-label{flex:1;font-size:.8125rem;color:var(--text-secondary)}.impact-value{font-size:1rem;font-weight:700;color:var(--text-primary)}.impact-value.warning{color:#f59e0b}.impact-value.critical{color:#ef4444}.impact-unit{font-size:.6875rem;color:var(--text-secondary)}.planet-health-gauge{padding:1rem;background:#ffffff08;border-radius:8px}.gauge-container{height:12px;background:#ffffff1a;border-radius:6px;overflow:hidden}.gauge-fill{height:100%;border-radius:6px;transition:width .5s ease,background-color .5s ease}.gauge-label{display:flex;justify-content:space-between;margin-top:.5rem}.gauge-value{font-size:1.25rem;font-weight:700;color:var(--text-primary)}.gauge-status{font-size:.8125rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.temp-display{display:flex;flex-direction:column;align-items:center;padding:1rem;background:#ffffff08;border-radius:8px}.temp-value{font-size:2rem;font-weight:700}.temp-value.danger{color:#ef4444}.temp-value.warning{color:#f59e0b}.temp-target{font-size:.8125rem;color:var(--text-secondary);margin-top:.25rem}.game-over-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 100%)}.game-over-content{max-width:700px;width:100%;text-align:center}.danger-icon{color:var(--accent-red);margin-bottom:1rem}.success-icon{color:var(--accent-green);margin-bottom:1rem}.game-over-content h1{font-size:2.5rem;margin-bottom:1rem}.game-over-message{font-size:1.125rem;color:var(--text-secondary);margin-bottom:2rem}.game-over-message strong{color:var(--accent-green)}.final-stats{margin-bottom:2rem}.final-stats h2{font-size:1.25rem;margin-bottom:1rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem}.final-stat{background:var(--bg-secondary);border-radius:12px;padding:1.25rem;display:flex;flex-direction:column;align-items:center;gap:.5rem}.final-stat svg{color:var(--accent-green)}.final-stat .stat-label{font-size:.75rem;color:var(--text-muted)}.final-stat .stat-value{font-size:1.5rem;font-weight:700}.final-scores{margin-bottom:2rem}.final-scores h2{font-size:1.25rem;margin-bottom:1rem}.scores-table{background:var(--bg-secondary);border-radius:12px;overflow:hidden}.score-header{display:grid;grid-template-columns:50px 1fr repeat(4,80px);gap:1rem;padding:1rem;background:var(--bg-tertiary);font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.score-row{display:grid;grid-template-columns:50px 1fr repeat(4,80px);gap:1rem;padding:1rem;border-top:1px solid var(--border-color);font-size:.9375rem}.score-row.highlight{background:#00dc820d}.score-row .rank{width:28px;height:28px;font-size:.8125rem}.score-row .name{display:flex;align-items:center;gap:.5rem}.player-dot{width:12px;height:12px;border-radius:50%}.score-row .total{font-weight:700;color:var(--accent-green)}.player-result{background:var(--bg-secondary);border-radius:12px;padding:1.5rem;margin-bottom:2rem}.player-result h3{font-size:1.25rem;margin-bottom:1rem;color:var(--accent-green)}.result-breakdown{display:flex;flex-direction:column;gap:.75rem}.breakdown-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:var(--bg-tertiary);border-radius:8px}.breakdown-item svg{color:var(--text-muted)}.breakdown-item span:nth-child(2){flex:1;text-align:left;font-size:.9375rem}.breakdown-item span:last-child{font-weight:600;color:var(--accent-green)}.restart-btn{display:inline-flex;align-items:center;gap:.5rem;padding:1rem 2rem;background:var(--accent-green);border:none;border-radius:10px;color:var(--bg-primary);font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.restart-btn:hover{background:#00c474;transform:translateY(-2px)}.tutorial-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 100%);display:flex;align-items:center;justify-content:center;z-index:2000;padding:2rem}.tutorial-container{max-width:700px;width:100%}.tutorial-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.tutorial-header h2{display:flex;align-items:center;gap:.75rem;font-size:1.75rem;color:var(--accent-green)}.tutorial-header-buttons{display:flex;gap:1rem;align-items:center}.skip-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:transparent;border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.skip-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.tutorial-content{display:flex;gap:2rem;margin-bottom:2rem}.verdi-character{flex-shrink:0;text-align:center}.verdi-avatar{width:100px;height:100px;border-radius:50%;background:linear-gradient(135deg,var(--accent-green),#22d3ee);display:flex;align-items:center;justify-content:center;color:#fff;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.verdi-name{margin-top:.75rem;font-weight:600;color:var(--accent-green)}.tutorial-card{flex:1;background:var(--bg-secondary);border-radius:16px;padding:2rem;border:2px solid var(--accent-green);border-top:4px solid var(--accent-blue);box-shadow:0 4px 20px var(--shadow-color)}.tutorial-card h3{font-size:1.5rem;margin-bottom:1rem;color:var(--text-primary)}.tutorial-card p{font-size:1rem;line-height:1.7;color:var(--text-secondary)}.tutorial-tip{display:flex;align-items:flex-start;gap:.75rem;margin-top:1.5rem;padding:1rem;background:#10b98126;border:1px solid rgba(16,185,129,.4);border-radius:10px;color:#047857}.tutorial-tip svg{flex-shrink:0;margin-top:2px}.tutorial-progress{display:flex;justify-content:space-between;align-items:center}.progress-dots{display:flex;gap:.5rem}.dot{width:10px;height:10px;border-radius:50%;background:var(--bg-tertiary)}.dot.active{background:var(--accent-green);transform:scale(1.2)}.tutorial-nav{display:flex;gap:1rem}.nav-btn{padding:.75rem 1.5rem;border-radius:8px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.nav-btn.secondary{background:transparent;border:1px solid var(--border-color);color:var(--text-secondary)}.nav-btn.secondary:hover:not(:disabled){background:var(--bg-tertiary);color:var(--text-primary)}.nav-btn.secondary:disabled{opacity:.5;cursor:not-allowed}.nav-btn.primary{background:var(--accent-green);border:none;color:var(--bg-primary)}.nav-btn.primary:hover{background:#00c474}.registration-screen{min-height:100vh;padding:1.5rem;background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 100%);display:flex;flex-direction:column;align-items:center;overflow-y:auto}.registration-header{text-align:center;margin-bottom:1rem}.registration-header svg{color:var(--accent-green);margin-bottom:.25rem;width:28px;height:28px}.registration-header h2{font-size:1.75rem;margin-bottom:.25rem;color:var(--text-primary);font-weight:700}.registration-header p{color:var(--text-secondary);font-size:.95rem;font-weight:500}.players-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;max-width:1000px;width:100%;margin-bottom:1rem}.player-slot{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:12px;padding:1rem;text-align:center;transition:all .3s ease;box-shadow:0 2px 8px var(--shadow-color)}.player-slot:hover{border-color:var(--accent-green);box-shadow:0 4px 16px #10b98133}.slot-number{font-size:.85rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}.name-input{width:100%;padding:.5rem;background:var(--bg-tertiary);border:2px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:.9rem;margin-bottom:.5rem;text-align:center;font-weight:500}.name-input::-moz-placeholder{color:var(--text-muted);opacity:1}.name-input::placeholder{color:var(--text-muted);opacity:1}.name-input:focus{outline:none;border-color:var(--accent-green);box-shadow:0 0 0 3px #10b98133}.avatar-select{display:flex;justify-content:center;gap:.3rem}.avatar-btn{width:65px;height:60px;border-radius:10px;border:2px solid var(--border-color);background:var(--bg-tertiary);cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px}.avatar-btn .avatar-emoji{font-size:1.4rem;line-height:1}.avatar-btn .avatar-name{font-size:.55rem;font-weight:700;color:var(--text-primary);text-transform:uppercase;letter-spacing:.2px}.avatar-btn:hover:not(:disabled){transform:scale(1.08);border-color:var(--accent-green);box-shadow:0 4px 12px #10b9814d}.avatar-btn.selected{border-color:var(--accent-green);box-shadow:0 0 0 3px #10b98166,0 4px 15px #10b9814d;transform:scale(1.05)}.avatar-btn.selected .avatar-name{color:var(--text-primary);font-weight:700}.avatar-btn.disabled{opacity:.3;cursor:not-allowed}.proceed-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 2rem;background:linear-gradient(135deg,var(--accent-green),#059669);border:none;border-radius:10px;color:#fff;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #10b98166;margin-top:1rem}.proceed-btn:hover:not(:disabled){background:linear-gradient(135deg,#00c474,#047857);transform:translateY(-2px);box-shadow:0 6px 20px #10b98180}.proceed-btn:disabled{opacity:.5;cursor:not-allowed}.button-row{display:flex;gap:1rem;margin-top:1rem;flex-wrap:wrap;justify-content:center}.demo-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 2rem;background:linear-gradient(135deg,var(--accent-blue),#1d4ed8);border:none;border-radius:10px;color:#fff;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #3b82f666}.demo-btn:hover{background:linear-gradient(135deg,#3b82f6,#1e40af);transform:translateY(-2px);box-shadow:0 6px 20px #3b82f680}.demo-options{margin-top:2rem;padding:1.5rem;background:#ffffff08;border-radius:12px;border:1px solid var(--border-color)}.demo-options-header{text-align:center;margin-bottom:1rem}.demo-options-header span{font-size:.9rem;color:var(--text-secondary)}.demo-buttons-row{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.demo-option-btn{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.25rem 1.5rem;background:#ffffff0d;border:2px solid var(--border-color);border-radius:12px;color:var(--text-primary);cursor:pointer;transition:all .3s ease;min-width:180px}.demo-option-btn:hover{transform:translateY(-3px);box-shadow:0 8px 25px #00dc824d}.demo-option-btn.interactive{border-color:#06b6d480}.demo-option-btn.interactive:hover{border-color:#06b6d4;background:#06b6d41a}.demo-option-btn.autoplay{border-color:#f59e0b80}.demo-option-btn.autoplay:hover{border-color:#f59e0b;background:#f59e0b1a}.demo-btn-title{font-size:1rem;font-weight:700}.demo-btn-desc{font-size:.75rem;color:var(--text-secondary)}.player-switcher{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;background:#ffffff1a;border-radius:10px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.switcher-label{font-size:.85rem;color:#94a3b8;font-weight:600;white-space:nowrap}.player-tabs{display:flex;gap:.25rem}.player-tab{display:flex;align-items:center;gap:.35rem;padding:.4rem .6rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#94a3b8;font-size:.75rem;cursor:pointer;transition:all .2s ease}.player-tab:hover{background:#ffffff1a;border-color:var(--player-color, #00dc82)}.player-tab.active{background:var(--player-color, #00dc82);border-color:var(--player-color, #00dc82);color:#fff;box-shadow:0 2px 8px #00dc824d}.tab-avatar{font-size:1rem}.tab-name{font-weight:600}.demo-badge{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;padding:.25rem .75rem;border-radius:20px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 8px #f59e0b66;animation:pulse-glow 2s ease-in-out infinite}.demo-badge.autoplay{background:linear-gradient(135deg,#8b5cf6,#6d28d9);box-shadow:0 2px 8px #8b5cf666}.demo-badge.interactive{background:linear-gradient(135deg,#06b6d4,#0891b2);box-shadow:0 2px 8px #06b6d466}.autoplay-controls{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;background:#8b5cf626;border:1px solid rgba(139,92,246,.3);border-radius:10px}.autoplay-label{font-size:.8rem;font-weight:600;color:#a78bfa;white-space:nowrap}.playback-controls{display:flex;gap:.25rem}.playback-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:6px;color:#a78bfa;cursor:pointer;transition:all .2s ease}.playback-btn:hover{background:#8b5cf64d;border-color:#8b5cf6}.playback-btn.active{background:#8b5cf6;border-color:#8b5cf6;color:#fff}.playback-btn.speed{width:auto;padding:0 .5rem;font-size:.7rem}.speed-label{font-size:.7rem;font-weight:700}.prakriti-bubble{position:fixed;bottom:30px;left:50%;transform:translate(-50%);display:flex;align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;background:linear-gradient(135deg,#0f172af2,#1e293bf2);border:2px solid #22d3ee;border-radius:16px;box-shadow:0 8px 32px #22d3ee4d;max-width:500px;z-index:100;animation:prakritiSlideIn .4s ease-out}@keyframes prakritiSlideIn{0%{opacity:0;transform:translate(-50%) translateY(30px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.prakriti-avatar{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:linear-gradient(135deg,#22d3ee,#8b5cf6);border-radius:50%;color:#fff;flex-shrink:0}.prakriti-message{flex:1}.prakriti-name{display:block;font-size:.75rem;font-weight:700;color:#22d3ee;margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.5px}.prakriti-message p{margin:0;font-size:1rem;line-height:1.6;color:#fff;font-weight:500}.prakriti-close{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:#ffffff1a;border:none;border-radius:50%;color:#94a3b8;cursor:pointer;transition:all .2s ease;flex-shrink:0}.prakriti-close:hover{background:#ef44444d;color:#ef4444}.prakriti-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.prakriti-voice,.prakriti-voice-toggle{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:#22d3ee33;border:1px solid rgba(34,211,238,.4);border-radius:6px;color:#22d3ee;cursor:pointer;transition:all .2s ease}.prakriti-voice:hover,.prakriti-voice-toggle:hover{background:#22d3ee66;border-color:#22d3ee}.prakriti-voice-toggle{width:24px;height:24px;background:#ffffff1a;border-color:#fff3;color:#94a3b8}.prakriti-voice-toggle:hover{background:#22d3ee4d;color:#22d3ee}@keyframes pulse-glow{0%,to{box-shadow:0 2px 8px #f59e0b66}50%{box-shadow:0 2px 15px #f59e0bb3}}.wheel-screen{min-height:100vh;padding:2rem;background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 50%,var(--bg-primary) 100%);display:flex;flex-direction:column;align-items:center;position:relative;overflow:hidden}.wheel-screen:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at center,rgba(0,220,130,.05) 0%,transparent 50%);animation:backgroundPulse 10s ease-in-out infinite}@keyframes backgroundPulse{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.2);opacity:1}}.wheel-header{text-align:center;margin-bottom:1rem;position:relative;z-index:10}.wheel-header h2{font-size:2.5rem;background:linear-gradient(135deg,#10b981,#22d3ee);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem;text-shadow:0 0 30px rgba(0,220,130,.3)}.wheel-header p{color:var(--text-secondary);font-size:1.1rem}.wheel-header strong{color:var(--text-primary);font-weight:700}.current-player-badge{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-top:1rem;padding:.75rem 1.5rem;background:var(--bg-secondary);border-radius:50px;border:2px solid #10b981;box-shadow:0 0 20px #00dc8233}.player-avatar-large{font-size:2rem}.player-name-large{font-size:1.25rem;font-weight:700;color:var(--text-primary)}.wheel-container{position:relative;width:400px;height:400px;margin:1rem 0 2rem}.wheel-outer-ring{position:absolute;top:-15px;right:-15px;bottom:-15px;left:-15px;border-radius:50%;background:linear-gradient(135deg,#10b981,#22d3ee,#fbbf24,#f472b6);z-index:0;animation:ringGlow 3s ease-in-out infinite}@keyframes ringGlow{0%,to{box-shadow:0 0 30px #00dc8280,0 0 60px #22d3ee4d}50%{box-shadow:0 0 50px #00dc82cc,0 0 80px #22d3ee80}}.wheel-pointer{position:absolute;top:-30px;left:50%;transform:translate(-50%);width:40px;height:50px;z-index:20;filter:drop-shadow(0 4px 6px rgba(0,0,0,.4))}.wheel-pointer svg{width:100%;height:100%;color:#ef4444}.wheel{position:relative;width:100%;height:100%;border-radius:50%;z-index:10;box-shadow:0 0 0 8px #1a1a2e,0 0 0 12px #10b981,0 10px 40px #00000080,inset 0 0 30px #0000004d}.wheel-svg{width:100%;height:100%}.wheel.spinning{filter:blur(.5px)}.wheel-hub{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,#1a1a2e,#2d2d44);border:3px solid #10b981;z-index:15;box-shadow:0 0 20px #00dc8280}.wheel-segment{position:absolute;width:50%;height:50%;left:50%;top:0;transform-origin:0% 100%;display:flex;align-items:center;justify-content:center}.wheel-segment span{position:absolute;left:-60px;width:120px;text-align:center;color:#fff;font-weight:700;font-size:.875rem;text-shadow:0 1px 2px rgba(0,0,0,.5)}.spin-btn{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1.25rem 4rem;background:linear-gradient(135deg,#10b981,#22d3ee);border:none;border-radius:50px;color:#0f172a;font-size:1.75rem;font-weight:900;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.15em;box-shadow:0 4px 20px #00dc8280,0 0 40px #22d3ee4d;position:relative;z-index:10;overflow:hidden}.spin-btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,transparent,rgba(255,255,255,.2),transparent);transform:translate(-100%);transition:transform .5s ease}.spin-btn:hover:not(:disabled):before{transform:translate(100%)}.spin-btn:hover:not(:disabled){transform:scale(1.08);box-shadow:0 6px 30px #00dc82b3,0 0 60px #22d3ee80}.spin-btn:disabled{opacity:.8;cursor:not-allowed;animation:pulse 1s ease-in-out infinite}.spin-btn.spinning{background:linear-gradient(135deg,#fbbf24,#f59e0b)}.spin-btn.claim{background:linear-gradient(135deg,#fbbf24,#f59e0b);box-shadow:0 4px 20px #fbbf2480,0 0 40px #f59e0b4d}.spin-text{animation:blink .5s ease-in-out infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:.5}}.confetti-container{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1000;overflow:hidden}.confetti{position:absolute;width:10px;height:10px;top:-20px;animation:confettiFall 3s linear forwards}@keyframes confettiFall{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}.result-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:3000;animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.result-content{background:var(--bg-secondary);border-radius:24px;padding:2.5rem;text-align:center;max-width:420px;animation:scaleIn .5s ease;position:relative;overflow:hidden;border:2px solid rgba(0,220,130,.3)}.result-glow{position:absolute;top:-50%;right:-50%;bottom:-50%;left:-50%;background:radial-gradient(circle at center,rgba(0,220,130,.15),transparent 70%);animation:glowPulse 2s ease-in-out infinite;pointer-events:none}@keyframes glowPulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}.result-icon{color:#fbbf24;margin-bottom:1rem;animation:bounce .6s ease infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.result-content h3{font-size:1.25rem;margin-bottom:1rem;color:var(--text-secondary);position:relative}.revealed-role{border-radius:16px;padding:1.5rem;margin:1.5rem 0;position:relative;overflow:hidden}.revealed-role:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(255,255,255,.2),transparent)}.revealed-role .role-emoji{display:flex;justify-content:center;margin-bottom:.75rem;color:#fff}.revealed-role h4{font-size:1.5rem;color:#fff;margin-bottom:.5rem;text-shadow:0 2px 4px rgba(0,0,0,.3)}.revealed-role p{font-size:.875rem;color:#ffffffe6}.continue-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:1rem;background:linear-gradient(135deg,#10b981,#22d3ee);border:none;border-radius:12px;color:#0f172a;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease}.continue-btn:hover{transform:translateY(-2px);box-shadow:0 4px 20px #00dc8266}.assigned-roles{margin-top:2rem;text-align:center;position:relative;z-index:10}.assigned-roles h4{font-size:1.1rem;color:var(--text-secondary);margin-bottom:1rem}.roles-list{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;max-width:600px}.assigned-item{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--bg-secondary);border-radius:50px;border:1px solid var(--border-color);animation:slideIn .3s ease forwards;opacity:0}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.player-badge{font-size:1.25rem}.assigned-item .player-name{font-size:.875rem;color:var(--text-primary);font-weight:600}.role-badge{font-size:.75rem;padding:.25rem .5rem;border-radius:20px;color:#fff;font-weight:600}.assigned-item .role-name{font-size:.8125rem;color:var(--accent-green)}@media (max-width: 768px){.game-title{font-size:2rem}.role-grid{grid-template-columns:1fr}.game-info{flex-direction:column}.global-metrics{flex-wrap:wrap;justify-content:center}.score-header,.score-row{grid-template-columns:40px 1fr 60px;font-size:.8125rem}.score-header span:nth-child(n+4),.score-row span:nth-child(n+4){display:none}}.rulebook-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background:linear-gradient(135deg,#00dc8233,#22d3ee33);border:1px solid var(--accent-green);border-radius:8px;color:var(--accent-green);font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:.5rem}.rulebook-btn:hover{background:linear-gradient(135deg,#00dc824d,#22d3ee4d);transform:translateY(-1px)}.rulebook-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:4000;animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.rulebook-container{width:90%;max-width:1000px;height:85vh;background:var(--bg-primary);border-radius:20px;overflow:hidden;display:flex;flex-direction:column;animation:scaleIn .4s ease;border:1px solid var(--border-color)}.rulebook-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;background:linear-gradient(135deg,var(--bg-secondary),var(--bg-tertiary));border-bottom:1px solid var(--border-color)}.rulebook-header h2{display:flex;align-items:center;gap:.75rem;font-size:1.5rem;color:var(--accent-green)}.rulebook-close{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:.5rem;border-radius:8px;transition:all .2s ease}.rulebook-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.rulebook-content{display:flex;flex:1;overflow:hidden}.rulebook-sidebar{width:260px;background:var(--bg-secondary);border-right:1px solid var(--border-color);overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.25rem}.rulebook-nav-item{text-align:left;padding:.75rem 1rem;background:transparent;border:none;border-radius:8px;color:var(--text-secondary);font-size:.9375rem;cursor:pointer;transition:all .2s ease}.rulebook-nav-item:hover{background:var(--bg-tertiary);color:var(--text-primary)}.rulebook-nav-item.active{background:var(--accent-green);color:var(--bg-primary);font-weight:600}.rulebook-main{flex:1;overflow-y:auto;padding:2rem}.rulebook-main h3{font-size:1.75rem;color:var(--text-primary);margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:2px solid var(--accent-green)}.rulebook-text{color:var(--text-secondary);line-height:1.8}.rulebook-text p{margin-bottom:.75rem}.rulebook-text p strong{color:var(--text-primary);font-weight:700;background:linear-gradient(90deg,var(--accent-green),var(--accent-blue));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.rulebook-text h4{color:var(--accent-green);font-size:1.125rem;margin:1.25rem 0 .5rem;font-weight:700;border-bottom:2px solid var(--accent-green);padding-bottom:.25rem;display:inline-block}.rulebook-text li{margin-left:1.5rem;margin-bottom:.5rem}.rulebook-text li strong{color:var(--text-primary);font-weight:700}.rulebook-examples{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.rulebook-examples h4{color:var(--accent-amber);font-size:1.125rem;margin-bottom:1rem}.example-card{background:var(--bg-secondary);border-radius:12px;padding:1.25rem;margin-bottom:1rem;border-left:3px solid var(--accent-amber)}.example-card h5{color:var(--text-primary);font-size:1rem;margin-bottom:.5rem}.example-card p{color:var(--text-secondary);font-size:.9375rem;line-height:1.6}@media (max-width: 768px){.rulebook-container{width:95%;height:90vh}.rulebook-content{flex-direction:column}.rulebook-sidebar{width:100%;flex-direction:row;overflow-x:auto;padding:.5rem;border-bottom:1px solid var(--border-color);border-right:none}.rulebook-nav-item{white-space:nowrap;padding:.5rem 1rem;font-size:.875rem}.rulebook-main{padding:1.25rem}.rulebook-main h3{font-size:1.25rem}}
