:root{--bg-color:#0f172a;--bg-sidebar:#1e293b;--text-main:#f8fafc;--text-muted:#94a3b8;--accent:#3b82f6;--accent-hover:#60a5fa;--border:#334155;--sidebar-width:320px;--risk-gold:#f6c344;--risk-gold-rgb:246, 195, 68;--risk-cream:#fff8dc;--risk-red:#ef4438;--risk-red-mid:#b91c1c;--risk-red-dark:#7f1d1d;--risk-red-accent:#d71920;--risk-red-shadow:#8c1d12;--risk-red-shadow-dark:#5f130d}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-main);font-family:Inter,sans-serif;overflow:hidden}#app{width:100vw;height:100vh;display:flex}aside#sidebar{width:var(--sidebar-width);background-color:var(--bg-sidebar);border-right:1px solid var(--border);z-index:10;scrollbar-width:none;flex-direction:column;height:100%;padding:1.5rem;display:flex;overflow-y:auto;box-shadow:2px 0 10px #00000080}aside#sidebar::-webkit-scrollbar{display:none}.sidebar-header{margin-bottom:2rem}.sidebar-header h1{color:var(--text-main);font-size:1.5rem;font-weight:700}.sidebar-header p{color:var(--text-muted);margin-top:.25rem;font-size:.875rem}.control-section{margin-bottom:1.5rem}.control-section h3{text-transform:uppercase;color:var(--text-muted);letter-spacing:.05em;margin-bottom:.75rem;font-size:.75rem}.tool-grid{grid-template-columns:repeat(2,1fr);gap:.5rem;display:grid}.tool-btn{background:var(--bg-color);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;border-radius:8px;flex-direction:column;align-items:center;gap:.5rem;padding:.75rem .5rem;transition:all .2s;display:flex}.tool-btn:hover{color:var(--text-main);background:#27354f}.tool-btn.active{border-color:var(--accent);color:var(--accent);background:#3b82f61a}.tool-btn span{font-size:.75rem;font-weight:500}.input-group{flex-direction:column;gap:.5rem;margin-bottom:1rem;display:flex}.input-group label{color:var(--text-main);font-size:.875rem}.input-group input[type=text],.input-group input[type=password]{background:var(--bg-color);border:1px solid var(--border);color:var(--text-main);border-radius:6px;padding:.5rem;font-family:inherit}.input-group input[type=text]:focus,.input-group input[type=password]:focus{border-color:var(--accent);outline:none}.input-group input[type=color]{cursor:pointer;background:0 0;border:none;width:100%;height:40px}select{background:var(--bg-color);border:1px solid var(--border);color:var(--text-main);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23aaaaaa' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;border-radius:6px;width:100%;padding:.5rem 2rem .5rem .5rem;font-family:inherit;font-size:.875rem}select:focus{border-color:var(--accent);outline:none}select option{background:var(--bg-sidebar);color:var(--text-main)}.slider-container{align-items:center;gap:1rem;display:flex}input[type=range]{cursor:pointer;flex:1}#bg-opacity-val{color:var(--text-muted);min-width:4ch;font-size:.875rem}.file-upload-btn,.primary-btn,.secondary-btn{text-align:center;cursor:pointer;border:none;border-radius:6px;width:100%;padding:.75rem;font-family:inherit;font-size:.875rem;font-weight:500;transition:all .2s;display:block}.file-upload-btn input[type=file]{display:none}.primary-btn{background:var(--accent);color:#fff;margin-bottom:.5rem}.primary-btn:hover{background:var(--accent-hover)}.danger-btn{color:#fff;text-align:center;cursor:pointer;background:#ef4444;border:none;border-radius:6px;margin-top:.5rem;padding:.75rem;font-family:inherit;font-size:.875rem;font-weight:500;transition:all .2s;display:block}.danger-btn:hover{background:#dc2626}.file-upload-btn,.secondary-btn{background:var(--bg-color);color:var(--text-main);border:1px solid var(--border)}.hidden{display:none!important}.file-upload-btn:hover,.secondary-btn:hover{background:#27354f}.spacer{flex:1}main#canvas-container{background-color:var(--bg-color);background-image:linear-gradient(45deg,#1e293b 25%,#0000 25%),linear-gradient(-45deg,#1e293b 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#1e293b 75%),linear-gradient(-45deg,#0000 75%,#1e293b 75%);background-position:0 0,0 10px,10px -10px,-10px 0;background-size:20px 20px;flex:1;position:relative}canvas#map-canvas{cursor:grab;touch-action:none;width:100%;height:100%;position:absolute;top:0;left:0}canvas#map-canvas:active{cursor:grabbing}.movement-panel{background:var(--bg-sidebar);border-left:1px solid var(--border);z-index:10;flex-direction:column;gap:1.5rem;width:300px;height:100%;padding:1.5rem;transition:transform .25s;display:flex;position:absolute;top:0;right:0;overflow-y:auto;transform:translate(100%)}.movement-panel--open{transform:translate(0)}.movement-panel-header{justify-content:space-between;align-items:center;display:flex}.movement-panel-header h2{color:var(--text-main);font-size:1.1rem;font-weight:600}.movement-panel-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0 .25rem;font-size:1.5rem;line-height:1;transition:color .15s}.movement-panel-close:hover{color:var(--text-main)}.movement-panel-route{flex-direction:column;gap:.25rem;display:flex}.movement-panel-route-card{background:var(--bg-color);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:.2rem;padding:.6rem .85rem;display:flex}.movement-panel-route-label{letter-spacing:.06em;color:var(--text-muted);text-transform:uppercase;font-size:.7rem;font-weight:600}.movement-panel-territory{color:var(--text-main);word-break:break-word;font-size:.9rem;font-weight:500}.movement-panel-arrow{color:var(--text-muted);text-align:center;font-size:1rem;line-height:1}.movement-panel-slider-section{flex-direction:column;gap:.75rem;display:flex}.movement-panel-slider-header{justify-content:space-between;align-items:center;display:flex}.movement-panel-label{color:var(--text-muted);font-size:.85rem}.movement-panel-current{color:var(--accent);font-size:1.25rem;font-weight:700}.movement-panel-slider{width:100%}.movement-panel-quick-actions{gap:.5rem;display:flex}.movement-panel-quick-btn{flex:1;padding:.35rem 0;font-size:.8rem}.movement-panel-confirm{width:100%;margin-top:auto}.modal-overlay{z-index:999;background:#000000d9;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--bg-sidebar);border:1px solid var(--border);border-radius:12px;width:400px;max-width:90%;padding:2rem;box-shadow:0 10px 25px #00000080}.modal h2{margin-bottom:.5rem;font-size:1.25rem}.modal p{color:var(--text-muted);font-size:.875rem;line-height:1.5}.swatch-grid{flex-wrap:wrap;gap:.5rem;display:flex}.swatch{cursor:pointer;border:2px solid #0000;border-radius:6px;width:32px;height:32px;transition:transform .1s}.swatch:hover{transform:scale(1.1)}.swatch.active{box-shadow:0 0 0 2px var(--accent);border-color:#fff}.auth-container{background:linear-gradient(125deg,#010716fc 0%,#030d21fa 50%,#05122bf5 100%),#020817;justify-content:center;align-items:center;width:100vw;min-height:100vh;padding:2rem;display:flex;position:relative;overflow:hidden}.auth-container:before{content:"";pointer-events:none;background:radial-gradient(circle at 18% 18%,#1e40af24,#0000 32%),radial-gradient(circle at 78% 72%,#0e74901a,#0000 36%);position:absolute;inset:0}.auth-earth-map{color:#60a5fab8;opacity:.72;pointer-events:none;filter:drop-shadow(0 22px 36px #0000005c);width:92vw;height:92vh;position:absolute;inset:4vh 4vw}.auth-earth-map path{fill:#2563eb2e;stroke:#bfdbfe80;stroke-linejoin:round;stroke-width:1.35px;vector-effect:non-scaling-stroke;transition:fill .65s,stroke .65s,filter .65s}.auth-sea-connections line{stroke:#e2e8f070;stroke-dasharray:8 8;stroke-linecap:round;stroke-width:2.2px;vector-effect:non-scaling-stroke}.auth-sea-connections polygon{fill:#06b6d4;opacity:.76;vector-effect:non-scaling-stroke}.auth-earth-map .auth-player-1{fill:#ef44447a;stroke:#fecacab3}.auth-earth-map .auth-player-2{fill:#3b82f67a;stroke:#bfdbfeb3}.auth-earth-map .auth-player-3{fill:#22c55e70;stroke:#bbf7d0ad}.auth-earth-map .auth-player-4{fill:#eab30875;stroke:#fef08aad}.auth-earth-map .auth-player-5{fill:#a855f77a;stroke:#e9d5ffb3}.auth-earth-map .auth-territory-captured{opacity:.9}.auth-panel{width:min(100%,440px);box-shadow:none;text-align:center;background:0 0;border:1px solid #0000;border-radius:8px;margin:0;padding:0;transition:background .32s,border-color .32s,box-shadow .32s,padding .32s,transform .32s;position:relative}.auth-container--form-open .auth-panel{border-color:rgba(var(--risk-gold-rgb), .42);box-shadow:0 0 0 1px #8c1d126b inset, 0 28px 70px #0000008f, 0 0 38px rgba(var(--risk-gold-rgb), .08);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(#0d1526f5,#060c1af0),#07101f;padding:2.5rem}.auth-header{margin-bottom:0;transition:margin-bottom .32s}.auth-container--form-open .auth-header{margin-bottom:2rem}.auth-title-trigger{appearance:none;cursor:pointer;font:inherit;text-align:center;background:0 0;border:none;padding:0;line-height:1}.auth-title-trigger span{color:var(--risk-red-accent);letter-spacing:0;text-transform:uppercase;-webkit-text-stroke:3px var(--risk-gold);text-shadow:0 2px 0 var(--risk-red-shadow), 0 4px 0 var(--risk-red-shadow-dark), 3px 7px 0 #111827, 8px 13px 24px #000000b3;font-family:Georgia,Times New Roman,serif;font-size:6.5rem;font-weight:900;line-height:.86;transition:font-size .32s,transform .32s,text-shadow .32s;display:block;transform:perspective(420px)rotateX(8deg)skew(-7deg)}.auth-title-trigger:hover span,.auth-title-trigger:focus-visible span{text-shadow:0 2px 0 var(--risk-red-shadow), 0 4px 0 var(--risk-red-shadow-dark), 3px 7px 0 #111827, 10px 16px 28px #000000c7, 0 0 22px rgba(var(--risk-gold-rgb), .24);transform:perspective(420px)rotateX(8deg)skew(-7deg)translateY(-3px)scale(1.02)}.auth-title-trigger:focus-visible{outline-offset:10px;border-radius:6px;outline:3px solid #5eead48a}.auth-container--form-open .auth-title-trigger span{-webkit-text-stroke-width:2px;text-shadow:0 1px 0 var(--risk-red-shadow), 0 2px 0 var(--risk-red-shadow-dark), 3px 5px 12px #0000009e;font-size:3rem}.auth-actions{opacity:0;visibility:hidden;flex-direction:column;max-height:0;transition:max-height .36s,opacity .28s,transform .32s,visibility 0s linear .32s;display:flex;overflow:hidden;transform:translateY(18px)}.auth-container--form-open .auth-actions{opacity:1;visibility:visible;max-height:420px;transition:max-height .36s,opacity .3s 80ms,transform .32s 40ms,visibility linear;transform:translateY(0)}.auth-actions .input-group{gap:.45rem;margin-bottom:1.15rem}.auth-actions .input-group label{color:var(--risk-gold);letter-spacing:.03em;text-shadow:0 1px 0 var(--risk-red-shadow-dark), 0 2px 8px #0009;font-family:Georgia,Times New Roman,serif;font-size:.95rem;font-weight:900}.auth-actions .input-group input{border-color:rgba(var(--risk-gold-rgb), .42);background:linear-gradient(#020617d1,#09101feb);min-height:46px;font-size:1rem;transition:border-color .18s,box-shadow .18s,background .18s;box-shadow:inset 0 1px #ffffff0a,0 0 0 1px #5f130d52}.auth-actions .input-group input:hover{border-color:rgba(var(--risk-gold-rgb), .72)}.auth-actions .input-group input:focus{border-color:var(--risk-gold);box-shadow:0 0 0 3px rgba(var(--risk-gold-rgb), .18), 0 0 0 1px #8c1d1275;background:linear-gradient(#020617e6,#09101ffa)}.auth-actions .primary-btn,.auth-actions .secondary-btn,.hub-actions .primary-btn,.hub-actions .secondary-btn{letter-spacing:.02em;text-transform:uppercase;border-radius:6px;min-height:46px;font-family:Georgia,Times New Roman,serif;font-size:1.02rem;font-weight:900}.auth-actions .primary-btn{margin-top:.25rem;margin-bottom:0}.auth-actions .primary-btn,.hub-actions .primary-btn{border:1px solid rgba(var(--risk-gold-rgb), .52);background:linear-gradient(180deg, var(--risk-red) 0%, var(--risk-red-mid) 54%, var(--risk-red-dark) 100%);color:var(--risk-cream);box-shadow:0 2px 0 rgba(var(--risk-gold-rgb), .55) inset, 0 13px 24px #7f1d1d6b;text-shadow:0 2px #5f130dd1}.auth-actions .primary-btn:hover,.hub-actions .primary-btn:hover{background:linear-gradient(#ff5a49 0%,#dc2626 54%,#991b1b 100%)}.auth-actions .primary-btn:disabled,.auth-actions .secondary-btn:disabled{cursor:default}.auth-register-btn,.hub-actions .secondary-btn{border-color:rgba(var(--risk-gold-rgb), .44);color:var(--risk-gold);text-shadow:0 1px #000000c7;background:linear-gradient(#111827b8,#070a15d6);margin-top:.8rem}.auth-register-btn:hover,.hub-actions .secondary-btn:hover{border-color:rgba(var(--risk-gold-rgb), .72);background:linear-gradient(#1f2937db,#0c1220f0)}.hub-header__user{color:#f8fafc;align-items:center;gap:.5rem;font-weight:600;display:inline-flex}.hub-header__user-actions{align-items:center;gap:.3rem;display:inline-flex}.hub-icon-btn{border:1px solid rgba(var(--risk-gold-rgb), .35);background:rgba(var(--risk-gold-rgb), .07);color:#f8fafcbf;cursor:pointer;border-radius:6px;justify-content:center;align-items:center;width:30px;height:30px;padding:0;transition:background .15s,border-color .15s,color .15s;display:inline-flex;position:relative}.hub-icon-btn svg{stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;fill:none;width:15px;height:15px}.hub-icon-btn:hover{background:rgba(var(--risk-gold-rgb), .16);border-color:var(--risk-gold);color:var(--risk-gold)}.hub-icon-btn--danger{color:#fca5a5bf;background:0 0;border-color:#ef444459}.hub-icon-btn--danger:hover{color:#f87171;background:#ef444426;border-color:#ef4444a6}.hub-icon-btn:after{content:attr(data-tooltip);white-space:nowrap;border:1px solid rgba(var(--risk-gold-rgb), .3);color:var(--risk-cream);pointer-events:none;opacity:0;background:#060c1aeb;border-radius:4px;padding:.25rem .5rem;font-family:inherit;font-size:.75rem;font-weight:500;transition:opacity .15s;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.hub-icon-btn:hover:after{opacity:1}.auth-error{border:1px solid rgba(var(--risk-gold-rgb), .34);color:#fed7aa;background:#5f130d61;border-radius:6px;margin-bottom:1rem;padding:.8rem .9rem;font-size:.9rem;line-height:1.4}@media (width<=760px){.auth-container{background:linear-gradient(#020817e6 0%,#020817fa 58%,#010716fc 100%),#020817;align-items:flex-end;padding:1rem}.auth-earth-map{opacity:.54;width:calc(100vw - 2rem);height:calc(100vh - 2rem);inset:1rem}.auth-panel{width:100%;margin-right:0;padding:0}.auth-container--form-open .auth-panel{padding:1.5rem}.auth-title-trigger span{font-size:4.25rem}.auth-container--form-open .auth-title-trigger span{font-size:2.35rem}}.hub-container{width:100vw;height:100vh;color:var(--text-main);background:linear-gradient(125deg,#010716fc 0%,#030d21fa 50%,#05122bf5 100%),#020817;flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.hub-container:before{content:"";pointer-events:none;background:radial-gradient(circle at 18% 18%,#1e40af24,#0000 32%),radial-gradient(circle at 78% 72%,#0e74901a,#0000 36%);position:absolute;inset:0}.hub-earth-map{opacity:.42}.hub-header{z-index:1;text-align:center;margin-bottom:0;transition:margin-bottom .32s;position:relative}.hub-container--content-open .hub-header{margin-bottom:2rem}.hub-title-trigger{appearance:none;cursor:pointer;font:inherit;text-align:center;width:100%;color:var(--risk-red-accent);text-transform:uppercase;-webkit-text-stroke:2px var(--risk-gold);text-shadow:0 2px 0 var(--risk-red-shadow), 0 4px 0 var(--risk-red-shadow-dark), 3px 7px 0 #111827, 8px 13px 24px #000000b3;background:0 0;border:none;margin-bottom:0;padding:0;font-family:Georgia,Times New Roman,serif;font-size:5.5rem;font-weight:900;line-height:.86;transition:font-size .32s,margin-bottom .32s,text-shadow .32s,transform .32s;display:block;transform:perspective(420px)rotateX(8deg)skew(-7deg)}.hub-title-trigger:hover{text-shadow:0 2px 0 var(--risk-red-shadow), 0 4px 0 var(--risk-red-shadow-dark), 3px 7px 0 #111827, 10px 16px 28px #000000c7, 0 0 22px rgba(var(--risk-gold-rgb), .24);transform:perspective(420px)rotateX(8deg)skew(-7deg)translateY(-3px)scale(1.02)}.hub-title-trigger:focus-visible{outline-offset:10px;border-radius:6px;outline:3px solid #5eead48a}.hub-container--content-open .hub-title-trigger{-webkit-text-stroke-width:1.5px;text-shadow:0 1px 0 var(--risk-red-shadow), 0 2px 0 var(--risk-red-shadow-dark), 3px 5px 12px #0000009e;margin-bottom:.75rem;font-size:3rem}.hub-container--content-open .hub-title-trigger:hover{transform:perspective(420px)rotateX(8deg)skew(-7deg)}.hub-header p{color:#f8fafc;opacity:0;visibility:hidden;justify-content:center;max-height:0;font-weight:600;transition:max-height .28s,opacity .22s,visibility 0s linear .28s;display:flex;overflow:hidden}.hub-container--content-open .hub-header p{opacity:1;visibility:visible;max-height:60px;transition:max-height .28s,opacity .24s 60ms,visibility linear;overflow:visible}.hub-content{z-index:1;border:1px solid rgba(var(--risk-gold-rgb), .32);opacity:0;visibility:hidden;background:linear-gradient(#0d1526f5,#060c1af0),#07101f;border-radius:8px;gap:2rem;min-width:600px;max-height:0;padding:2rem;transition:max-height .36s,opacity .28s,transform .32s,visibility 0s linear .32s;display:flex;position:relative;overflow:hidden;transform:translateY(18px);box-shadow:inset 0 0 0 1px #8c1d1257,0 28px 70px #00000085}.hub-container--content-open .hub-content{opacity:1;visibility:visible;max-height:700px;transition:max-height .36s,opacity .3s 80ms,transform .32s 40ms,visibility linear;transform:translateY(0)}.server-list{border-right:1px solid rgba(var(--risk-gold-rgb), .26);flex:1;padding-right:2rem}.server-list h2{color:var(--risk-gold);text-shadow:0 1px 0 var(--risk-red-shadow-dark);margin-bottom:1rem;font-family:Georgia,Times New Roman,serif;font-size:1.25rem;font-weight:900}.server-list ul{margin:0;padding:0;list-style:none}.server-list li{border:1px solid rgba(var(--risk-gold-rgb), .18);background:#02061794;border-radius:4px;justify-content:space-between;align-items:center;margin-bottom:.5rem;padding:1rem;display:flex}#hub-view .server-list li{grid-template-columns:minmax(0,1fr) 132px;align-items:center;gap:1rem;line-height:1.35;display:grid}#hub-view .server-list li span{overflow-wrap:normal;word-break:normal;min-width:0}#hub-view .join-btn{border:1px solid rgba(var(--risk-gold-rgb), .46);background:linear-gradient(180deg, var(--risk-red) 0%, var(--risk-red-mid) 54%, var(--risk-red-dark) 100%);min-height:42px;color:var(--risk-cream);letter-spacing:.02em;text-transform:uppercase;box-shadow:0 1px 0 rgba(var(--risk-gold-rgb), .36) inset, 0 10px 20px #00000047;text-shadow:0 2px #5f130dd1;border-radius:6px;font-family:Georgia,Times New Roman,serif;font-size:.98rem;font-weight:900;margin:0!important;padding:.55rem .9rem!important}#hub-view .join-btn:hover:not(:disabled){border-color:rgba(var(--risk-gold-rgb), .78);box-shadow:0 1px 0 rgba(var(--risk-gold-rgb), .46) inset, 0 12px 24px #00000057;background:linear-gradient(#ff5a49 0%,#dc2626 54%,#991b1b 100%)}#hub-view .join-btn:disabled{opacity:.55;cursor:not-allowed}#hub-view .join-btn:focus-visible{border-color:var(--risk-gold);box-shadow:0 0 0 3px rgba(var(--risk-gold-rgb), .18), 0 1px 0 rgba(var(--risk-gold-rgb), .46) inset, 0 12px 24px #00000057;outline:none}#auth-view .primary-btn,#auth-view .secondary-btn,#hub-view .primary-btn,#hub-view .secondary-btn,#hub-view .danger-btn{border:1px solid rgba(var(--risk-gold-rgb), .46);box-shadow:0 1px 0 rgba(var(--risk-gold-rgb), .36) inset, 0 10px 20px #00000047;border-radius:6px}#auth-view .primary-btn:hover:not(:disabled),#auth-view .secondary-btn:hover:not(:disabled),#hub-view .primary-btn:hover:not(:disabled),#hub-view .secondary-btn:hover:not(:disabled),#hub-view .danger-btn:hover:not(:disabled){border-color:rgba(var(--risk-gold-rgb), .78);box-shadow:0 1px 0 rgba(var(--risk-gold-rgb), .46) inset, 0 12px 24px #00000057}#auth-view .primary-btn:focus-visible,#auth-view .secondary-btn:focus-visible,#hub-view .primary-btn:focus-visible,#hub-view .secondary-btn:focus-visible,#hub-view .danger-btn:focus-visible{border-color:var(--risk-gold);box-shadow:0 0 0 3px rgba(var(--risk-gold-rgb), .18), 0 1px 0 rgba(var(--risk-gold-rgb), .46) inset, 0 12px 24px #00000057;outline:none}.hub-actions{flex-direction:column;flex:1;justify-content:center;gap:1rem;display:flex}#lobby-room-view{padding:2rem}#lobby-room-view .hub-header{max-width:min(94vw,900px)}#lobby-room-view.hub-container--content-open .hub-header{margin-bottom:1.8rem}#lobby-room-view .hub-title-trigger{overflow-wrap:anywhere;-webkit-text-stroke-width:1.5px;font-size:3.5rem;transform:perspective(420px)rotateX(8deg)skew(-7deg)}#lobby-room-view.hub-container--content-open .hub-title-trigger{-webkit-text-stroke:1.5px var(--risk-gold);text-shadow:0 1px 0 var(--risk-red-shadow), 0 2px 0 var(--risk-red-shadow-dark), 3px 6px 16px #000000b8;font-size:2.35rem;line-height:1.08;transform:none}#lobby-room-view.hub-container--content-open .hub-title-trigger:hover{transform:none}#lobby-room-view .hub-header p{color:#f8fafc;letter-spacing:.02em}#lobby-room-view .hub-content{isolation:isolate;contain:paint;background:linear-gradient(#0d1526,#060c1a),#07101f;width:min(94vw,820px);min-width:0;overflow-y:auto}#lobby-room-view.hub-container--content-open .hub-content{max-height:82vh}#lobby-room-view .server-list{min-width:0}#lobby-room-view .hub-actions{justify-content:flex-start;gap:.85rem;min-width:0}#lobby-room-view .server-list li,#lobby-room-view #lobby-players li{z-index:1;border:1px solid rgba(var(--risk-gold-rgb), .18);backface-visibility:hidden;background:#020617;border-radius:6px;min-height:38px;position:relative;transform:translateZ(0);padding:.55rem .65rem!important}#lobby-room-view #lobby-players span{backface-visibility:hidden;display:block;transform:translateZ(0)}#lobby-room-view #local-player-controls p,#lobby-room-view .lobby-section h3,#lobby-room-view .input-group label,#lobby-room-view #host-map-controls label:not(.file-upload-btn){color:var(--risk-gold);letter-spacing:.02em;text-shadow:0 1px 0 var(--risk-red-shadow-dark);font-family:Georgia,Times New Roman,serif;font-weight:900}#lobby-room-view .lobby-section{border-bottom:1px solid rgba(var(--risk-gold-rgb), .18);width:100%;padding-bottom:.75rem}#lobby-room-view .lobby-section h3{margin-bottom:.5rem;font-size:1rem}#lobby-room-view .lobby-section-map{flex-direction:column;gap:.55rem;display:flex}#lobby-room-view .lobby-map-status{border:1px solid rgba(var(--risk-gold-rgb), .24);background:#020617;border-radius:6px;justify-content:space-between;align-items:center;gap:1rem;margin:0;padding:.65rem .75rem;display:flex}#lobby-room-view .map-controls{flex-direction:column;gap:.55rem;display:flex}#lobby-room-view .lobby-map-status span{color:var(--risk-gold);font-family:Georgia,Times New Roman,serif;font-weight:900}#lobby-room-view .lobby-map-status strong{color:#f8fafc;white-space:nowrap;border-radius:5px;padding:.2rem .55rem;font-size:.82rem}#lobby-room-view .lobby-map-status--loaded strong{color:#bbf7d0;background:#22c55e2e;box-shadow:inset 0 0 0 1px #22c55e47}#lobby-room-view .lobby-map-status--waiting strong{color:#fde68a;background:#eab30829;box-shadow:inset 0 0 0 1px #eab3083d}#lobby-room-view #local-player-controls{border-bottom:1px solid rgba(var(--risk-gold-rgb), .2);padding-bottom:.9rem;margin:0 0 .9rem!important}#lobby-room-view #local-player-controls p{display:none}#lobby-room-view #local-player-controls>div{align-items:stretch!important}#lobby-room-view #local-player-name-input{height:46px}#lobby-room-view #btn-add-local-player{flex:0 0 78px;width:78px;min-height:46px;margin:0;padding:0 .75rem!important}#lobby-room-view #host-settings-controls,#lobby-room-view #host-map-controls{flex-direction:column;gap:.65rem;display:flex}#lobby-room-view #host-settings-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.7rem .8rem;display:grid}#lobby-room-view #host-settings-controls .input-group,#lobby-room-view #host-map-controls .input-group{margin-bottom:0}#lobby-room-view #host-settings-controls .settings-field{flex-direction:column;gap:.35rem;padding-bottom:0;display:flex}#lobby-room-view #host-settings-controls .settings-field:nth-of-type(2),#lobby-room-view #host-settings-controls .toggle-field{grid-column:1/-1}#lobby-room-view #remaining-units-row{grid-area:1/2}#lobby-room-view #host-settings-controls .settings-field label{min-height:2.1em;line-height:1.25;margin:0!important}#lobby-room-view #host-settings-controls .risk-select{width:100%}#lobby-room-view #host-settings-controls .toggle-field{border:1px solid rgba(var(--risk-gold-rgb), .28);background:#0206176b;border-radius:6px;grid-template-columns:minmax(0,1fr) auto;justify-content:space-between;min-height:42px;padding:.5rem .65rem;align-items:center!important;gap:.9rem!important;display:grid!important}#lobby-room-view #host-settings-controls .toggle-field label{min-height:0;line-height:1.25;margin:0!important}#lobby-room-view #input-vp-mode{appearance:none;border:1px solid rgba(var(--risk-gold-rgb), .55);cursor:pointer;background:#7f1d1db8;border-radius:999px;flex:none;order:2;height:22px;position:relative;box-shadow:inset 0 0 0 1px #0000003d;width:38px!important;margin:0!important}#lobby-room-view #input-vp-mode:after{content:"";background:var(--risk-gold);border-radius:50%;width:14px;height:14px;transition:transform .14s;position:absolute;top:3px;left:3px}#lobby-room-view #input-vp-mode:checked{background:linear-gradient(180deg, var(--risk-red-accent), var(--risk-red-shadow))}#lobby-room-view #input-vp-mode:checked:after{transform:translate(16px)}#lobby-room-view input[type=text],#lobby-room-view input[type=number],#lobby-room-view select{border:1px solid rgba(var(--risk-gold-rgb), .42);color:#f8fafc;width:100%;min-height:42px;font:inherit;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:linear-gradient(#020617d1,#09101feb);border-radius:6px;padding:.55rem .7rem;box-shadow:inset 0 1px #ffffff0a,0 0 0 1px #5f130d52}#lobby-room-view input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}#lobby-room-view input[type=number]::-webkit-inner-spin-button{appearance:none;margin:0}#lobby-room-view input[type=text]:focus,#lobby-room-view input[type=number]:focus,#lobby-room-view select:focus{border-color:var(--risk-gold);box-shadow:0 0 0 3px rgba(var(--risk-gold-rgb), .18), 0 0 0 1px #8c1d1275;outline:none}#lobby-room-view input[type=checkbox]{accent-color:var(--risk-red-accent)}#lobby-room-view select{appearance:none;background-color:#0000;background-image:linear-gradient(#020617d1,#09101feb),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23f6c344' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:0 0,right .8rem center;background-repeat:no-repeat;background-size:auto,14px 14px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;padding-right:2.5rem}#lobby-room-view select option{color:#f8fafc;background:#07101f}.risk-select-native{display:none}.risk-select{width:100%;position:relative}.risk-select-button{border:1px solid rgba(var(--risk-gold-rgb), .42);color:#f8fafc;cursor:pointer;width:100%;min-height:42px;font:inherit;text-align:left;background:linear-gradient(#020617d1,#09101feb);border-radius:6px;padding:.55rem 2.5rem .55rem .7rem;box-shadow:inset 0 1px #ffffff0a,0 0 0 1px #5f130d52}.risk-select-button:after{content:"";border-right:2px solid var(--risk-gold);border-bottom:2px solid var(--risk-gold);pointer-events:none;width:.55rem;height:.55rem;position:absolute;top:50%;right:.85rem;transform:translateY(-65%)rotate(45deg)}.risk-select-button:hover,.risk-select--open .risk-select-button{border-color:rgba(var(--risk-gold-rgb), .72)}.risk-select-button:focus-visible{border-color:var(--risk-gold);box-shadow:0 0 0 3px rgba(var(--risk-gold-rgb), .18), 0 0 0 1px #8c1d1275;outline:none}.risk-select-button:disabled{cursor:not-allowed;opacity:.62}.risk-select-list{z-index:20;border:1px solid rgba(var(--risk-gold-rgb), .56);background:#050b17;border-radius:6px;max-height:220px;margin:0;padding:.35rem;list-style:none;display:none;position:absolute;top:calc(100% + .35rem);left:0;right:0;overflow-y:auto;box-shadow:inset 0 0 0 1px #8c1d125c,0 16px 32px #00000085}.risk-select--open .risk-select-list{display:block}.risk-select-option{color:#f8fafc;cursor:pointer;border-radius:4px;padding:.55rem .65rem;line-height:1.25}.risk-select-option:hover{background:rgba(var(--risk-gold-rgb), .14);color:var(--risk-gold)}.risk-select-option--selected{color:var(--risk-cream);box-shadow:0 0 0 1px rgba(var(--risk-gold-rgb), .28) inset;background:linear-gradient(#ef444461,#7f1d1d70)}#lobby-room-view input[type=number]{appearance:textfield;text-align:center}#lobby-room-view .file-upload-btn,#lobby-room-view .secondary-btn{border-color:rgba(var(--risk-gold-rgb), .44);min-height:46px;color:var(--risk-gold);letter-spacing:.02em;text-transform:uppercase;text-shadow:0 1px #000000c7;background:linear-gradient(#111827b8,#070a15d6);font-family:Georgia,Times New Roman,serif;font-weight:900}#lobby-room-view .map-select-row{align-items:flex-end;gap:.65rem;width:100%;display:flex}#lobby-room-view .map-select-field{flex:auto;min-width:0;margin-bottom:0!important}#lobby-room-view .lobby-action-row{justify-content:flex-end;align-items:center;gap:.6rem;width:100%;margin-top:auto;padding-top:.65rem;display:flex}#lobby-room-view .file-upload-btn:hover,#lobby-room-view .secondary-btn:hover{border-color:rgba(var(--risk-gold-rgb), .72);background:linear-gradient(#1f2937db,#0c1220f0)}#lobby-room-view .primary-btn{border:1px solid rgba(var(--risk-gold-rgb), .52);background:linear-gradient(180deg, var(--risk-red) 0%, var(--risk-red-mid) 54%, var(--risk-red-dark) 100%);min-height:46px;color:var(--risk-cream);letter-spacing:.02em;text-transform:uppercase;box-shadow:0 2px 0 rgba(var(--risk-gold-rgb), .55) inset, 0 13px 24px #7f1d1d6b;text-shadow:0 2px #5f130dd1;font-family:Georgia,Times New Roman,serif;font-weight:900}#lobby-room-view .primary-btn:hover:not(:disabled){background:linear-gradient(#ff5a49 0%,#dc2626 54%,#991b1b 100%)}#lobby-room-view .primary-btn:disabled{opacity:.55;cursor:not-allowed}#lobby-room-view .lobby-icon-btn{border:1px solid rgba(var(--risk-gold-rgb), .46);height:42px;box-shadow:0 1px 0 rgba(var(--risk-gold-rgb), .36) inset, 0 10px 20px #00000047;border-radius:6px;flex:none;justify-content:center;align-items:center;display:inline-flex;position:relative;width:42px!important;min-height:42px!important;margin:0!important;padding:0!important}#lobby-room-view .map-upload-btn{cursor:pointer}#lobby-room-view .map-upload-btn svg{width:21px;height:21px}#lobby-room-view .lobby-icon-btn svg{fill:none;stroke:currentColor;stroke-width:2.35px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}#lobby-room-view .lobby-icon-btn--start svg{fill:currentColor;stroke:none;width:20px;height:20px;transform:translate(1px)}#lobby-room-view .lobby-icon-btn:after,#lobby-room-view .map-upload-btn:after{content:attr(data-tooltip);z-index:30;border:1px solid rgba(var(--risk-gold-rgb), .42);color:#f8fafc;letter-spacing:0;text-transform:none;width:max-content;max-width:180px;text-shadow:none;opacity:0;pointer-events:none;background:#050b17;border-radius:5px;padding:.35rem .55rem;font-family:Inter,system-ui,sans-serif;font-size:.78rem;font-weight:700;line-height:1.2;transition:opacity .12s,transform .12s;position:absolute;bottom:calc(100% + .55rem);right:0;transform:translateY(4px);box-shadow:0 12px 26px #0000006b}#lobby-room-view .lobby-icon-btn:hover:after,#lobby-room-view .lobby-icon-btn:focus-visible:after,#lobby-room-view .map-upload-btn:hover:after,#lobby-room-view .map-upload-btn:focus-within:after{opacity:1;transform:translateY(0)}#lobby-room-view .lobby-icon-btn:disabled:after{content:"Load a map first"}#lobby-room-view .lobby-icon-btn--start,#lobby-room-view #btn-leave-lobby{background:linear-gradient(180deg, var(--risk-red) 0%, var(--risk-red-mid) 58%, var(--risk-red-dark) 100%);color:var(--risk-cream);letter-spacing:.02em;text-transform:uppercase;text-shadow:0 1px #5f130ddb;font-family:Georgia,Times New Roman,serif;font-weight:900}#lobby-room-view .map-upload-btn{color:var(--risk-gold);background:linear-gradient(#111827b8,#070a15d6)}#lobby-room-view .lobby-icon-btn:hover:not(:disabled),#lobby-room-view .map-upload-btn:hover{border-color:rgba(var(--risk-gold-rgb), .78);box-shadow:0 1px 0 rgba(var(--risk-gold-rgb), .46) inset, 0 12px 24px #00000057}.player-color-dot{border:1px solid #ffffff8c;border-radius:50%;flex:0 0 12px;width:12px;height:12px;box-shadow:0 0 0 2px #00000047}.player-name-label{color:#f8fafc;font-weight:700}.player-host-badge,.player-state-badge{border-radius:5px;flex:none;padding:.15rem .45rem;font-size:.7rem;font-weight:800;line-height:1.2}.player-host-badge{color:var(--risk-gold);background:rgba(var(--risk-gold-rgb), .12);box-shadow:0 0 0 1px rgba(var(--risk-gold-rgb), .22) inset}.player-state-badge{color:#cbd5e1;background:#94a3b81f;box-shadow:inset 0 0 0 1px #94a3b82e}#lobby-room-view #lobby-players .danger-btn{border:1px solid rgba(var(--risk-gold-rgb), .32);background:linear-gradient(180deg, var(--risk-red) 0%, var(--risk-red-mid) 58%, var(--risk-red-dark) 100%);width:auto;height:24px;min-height:0;color:var(--risk-cream);text-transform:none;box-shadow:0 1px 0 rgba(var(--risk-gold-rgb), .35) inset;border-radius:5px;margin:0;font-family:inherit;font-weight:800;line-height:1;position:absolute;top:50%;right:.55rem;transform:translateY(-50%);padding:0 .5rem!important;font-size:.72rem!important}#lobby-room-view #lobby-players .player-item{align-items:center;min-height:38px;padding-right:4.75rem!important}#app.app-view--game{background:linear-gradient(125deg,#010716fc 0%,#030d21fa 54%,#05122bf5 100%),#020817}#app.app-view--game aside#sidebar{border-right:1px solid rgba(var(--risk-gold-rgb), .3);background:linear-gradient(#0d1526fa,#060c1afa),#07101f;width:340px;padding:1.35rem;box-shadow:inset 1px 0 #8c1d1252,18px 0 46px #0000006b}#app.app-view--game .sidebar-header{border-bottom:1px solid rgba(var(--risk-gold-rgb), .2);margin-bottom:1.25rem;padding-bottom:1rem}#app.app-view--game .sidebar-header h1{color:var(--risk-red-accent);text-transform:uppercase;-webkit-text-stroke:1px var(--risk-gold);text-shadow:0 1px 0 var(--risk-red-shadow), 0 2px 0 var(--risk-red-shadow-dark), 3px 5px 12px #0000009e;font-family:Georgia,Times New Roman,serif;font-size:2rem;font-weight:900;line-height:.95}#app.app-view--game .sidebar-header p{color:#f8fafc;margin-top:.5rem;font-weight:700}#app.app-view--game #game-controls{flex-direction:column;min-height:0;display:flex}#app.app-view--game .control-section{border-bottom:1px solid rgba(var(--risk-gold-rgb), .18);margin-bottom:1rem;padding-bottom:1rem}#app.app-view--game .control-section h3,#app.app-view--game .control-section h4,#app.app-view--game .input-group label{letter-spacing:.02em;text-shadow:0 1px 0 var(--risk-red-shadow-dark);font-family:Georgia,Times New Roman,serif;font-weight:900;color:var(--risk-gold)!important}#app.app-view--game #game-turn-info{display:none}#app.app-view--game .game-status-box,#app.app-view--game #game-log{border:1px solid rgba(var(--risk-gold-rgb), .22);border-radius:6px;box-shadow:inset 0 1px #ffffff0a,0 0 0 1px #5f130d3d;background:linear-gradient(#020617d1,#09101feb)!important}#app.app-view--game #game-troops-info{color:#f8fafc;font-weight:700;line-height:1.35}#app.app-view--game #game-selection-hint{color:#fde68a;border-left-color:var(--risk-gold)!important;background:rgba(var(--risk-gold-rgb), .1)!important}#app.app-view--game #draft-amount-control{padding-top:.35rem}#app.app-view--game input[type=range]{accent-color:var(--risk-red-accent)}#app.app-view--game #setup-remaining-units,#app.app-view--game #vp-section,#app.app-view--game #game-regions-section{border:1px solid rgba(var(--risk-gold-rgb), .18);background:#0206176b;border-radius:6px;padding:.65rem .7rem}#app.app-view--game #game-players-list li,#app.app-view--game #setup-remaining-units-list>div,#app.app-view--game #vp-scores-list>div{border:1px solid rgba(var(--risk-gold-rgb), .16);background:#020617;border-radius:6px;min-height:32px;font-weight:700;padding:.4rem .55rem!important}#app.app-view--game #game-players-list .player-item{align-items:center;min-height:38px;position:relative;padding-right:4.75rem!important}#app.app-view--game #game-players-list .danger-btn{border:1px solid rgba(var(--risk-gold-rgb), .32);background:linear-gradient(180deg, var(--risk-red) 0%, var(--risk-red-mid) 58%, var(--risk-red-dark) 100%);width:auto;height:24px;min-height:0;color:var(--risk-cream);text-transform:none;box-shadow:0 1px 0 rgba(var(--risk-gold-rgb), .35) inset;border-radius:5px;font-family:inherit;font-weight:800;line-height:1;position:absolute;top:50%;right:.55rem;transform:translateY(-50%);margin:0!important;padding:0 .5rem!important;font-size:.72rem!important}#app.app-view--game #game-players-list{flex-direction:column;gap:.45rem;display:flex}#app.app-view--game #game-log{color:#cbd5e1;scrollbar-width:thin;scrollbar-color:rgba(var(--risk-gold-rgb), .44) #020617b3;line-height:1.45;height:132px!important}#app.app-view--game #game-log div{border-bottom:1px solid #94a3b814;padding:.18rem 0}#app.app-view--game #canvas-container{background:radial-gradient(circle,#1e40af1f,#0000 42%),#020817}#app.app-view--game canvas#map-canvas{background:#020817}#app.app-view--game .primary-btn,#app.app-view--game .secondary-btn,#app.app-view--game .danger-btn,#app.app-view--game .file-upload-btn{border:1px solid rgba(var(--risk-gold-rgb), .46);letter-spacing:.02em;text-transform:uppercase;min-height:42px;box-shadow:0 1px 0 rgba(var(--risk-gold-rgb), .36) inset, 0 10px 20px #00000047;text-shadow:0 1px #5f130ddb;border-radius:6px;font-family:Georgia,Times New Roman,serif;font-weight:900}#app.app-view--game .primary-btn{color:var(--risk-cream);background:linear-gradient(180deg, var(--risk-red) 0%, var(--risk-red-mid) 58%, var(--risk-red-dark) 100%)!important}#app.app-view--game .secondary-btn,#app.app-view--game .file-upload-btn{color:var(--risk-gold);background:linear-gradient(#111827b8,#070a15d6)}#app.app-view--game .danger-btn{background:linear-gradient(180deg, var(--risk-red) 0%, var(--risk-red-mid) 58%, var(--risk-red-dark) 100%);color:var(--risk-cream)}#app.app-view--game .primary-btn:hover:not(:disabled),#app.app-view--game .secondary-btn:hover:not(:disabled),#app.app-view--game .danger-btn:hover:not(:disabled),#app.app-view--game .file-upload-btn:hover{border-color:rgba(var(--risk-gold-rgb), .78);box-shadow:0 1px 0 rgba(var(--risk-gold-rgb), .46) inset, 0 12px 24px #00000057}#app.app-view--game #game-hud{gap:.6rem!important;bottom:1.25rem!important;right:1.25rem!important}#app.app-view--game #hud-phase-badge{min-height:42px;box-shadow:0 1px 0 rgba(var(--risk-gold-rgb), .2) inset, 0 12px 28px #0000006b;position:relative;border:1px solid rgba(var(--risk-gold-rgb), .42)!important;background:linear-gradient(#0d1526f0,#060c1aeb)!important;border-radius:6px!important}#app.app-view--game #hud-phase-badge:after{content:attr(data-tooltip);z-index:41;border:1px solid rgba(var(--risk-gold-rgb), .42);color:#f8fafc;letter-spacing:0;text-transform:none;width:max-content;max-width:220px;text-shadow:none;opacity:0;pointer-events:none;background:#050b17;border-radius:5px;padding:.35rem .55rem;font-family:Inter,system-ui,sans-serif;font-size:.78rem;font-weight:700;line-height:1.2;transition:opacity .12s,transform .12s;position:absolute;bottom:calc(100% + .55rem);right:0;transform:translateY(4px);box-shadow:0 12px 26px #0000006b}#app.app-view--game #hud-phase-badge:hover:after{opacity:1;transform:translateY(0)}#app.app-view--game .hud-turn-badge{border:1px solid rgba(var(--risk-gold-rgb), .42);min-height:42px;box-shadow:0 1px 0 rgba(var(--risk-gold-rgb), .2) inset, 0 12px 28px #0000006b;background:linear-gradient(#0d1526f0,#060c1aeb);border-radius:6px;align-items:center;gap:.65rem;padding:.45rem .75rem;display:flex;position:relative}#app.app-view--game .hud-turn-badge:after{content:attr(data-tooltip);z-index:41;border:1px solid rgba(var(--risk-gold-rgb), .42);color:#f8fafc;letter-spacing:0;text-transform:none;width:max-content;max-width:220px;text-shadow:none;opacity:0;pointer-events:none;background:#050b17;border-radius:5px;padding:.35rem .55rem;font-family:Inter,system-ui,sans-serif;font-size:.78rem;font-weight:700;line-height:1.2;transition:opacity .12s,transform .12s;position:absolute;bottom:calc(100% + .55rem);right:0;transform:translateY(4px);box-shadow:0 12px 26px #0000006b}#app.app-view--game .hud-turn-badge:hover:after{opacity:1;transform:translateY(0)}#app.app-view--game .hud-turn-dot{border:1px solid #ffffff9e;border-radius:50%;flex:none;width:12px;height:12px;box-shadow:0 0 0 2px #0000004d}#app.app-view--game #hud-turn-player{text-overflow:ellipsis;white-space:nowrap;max-width:150px;font-size:.86rem;font-weight:900;overflow:hidden}#app.app-view--game #btn-end-phase-hud{border-color:rgba(var(--risk-gold-rgb), .46);justify-content:center;align-items:center;width:42px;height:42px;min-height:42px;position:relative;background:linear-gradient(180deg, var(--risk-red) 0%, var(--risk-red-mid) 58%, var(--risk-red-dark) 100%)!important;margin:0!important;padding:0!important;display:inline-flex!important}#app.app-view--game #btn-end-phase-hud svg{fill:none;stroke:currentColor;stroke-width:2.35px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}#app.app-view--game #btn-end-phase-hud:after{content:attr(data-tooltip);z-index:41;border:1px solid rgba(var(--risk-gold-rgb), .42);color:#f8fafc;letter-spacing:0;text-transform:none;width:max-content;max-width:180px;text-shadow:none;opacity:0;pointer-events:none;background:#050b17;border-radius:5px;padding:.35rem .55rem;font-family:Inter,system-ui,sans-serif;font-size:.78rem;font-weight:700;line-height:1.2;transition:opacity .12s,transform .12s;position:absolute;bottom:calc(100% + .55rem);right:0;transform:translateY(4px);box-shadow:0 12px 26px #0000006b}#app.app-view--game #btn-end-phase-hud:hover:after,#app.app-view--game #btn-end-phase-hud:focus-visible:after{opacity:1;transform:translateY(0)}#app.app-view--game .movement-panel{border-left:1px solid rgba(var(--risk-gold-rgb), .3);background:linear-gradient(#0d1526fa,#060c1afa),#07101f;width:320px;box-shadow:-18px 0 46px #0000006b}#app.app-view--game .movement-panel-header h2{color:var(--risk-gold);text-shadow:0 1px 0 var(--risk-red-shadow-dark);font-family:Georgia,Times New Roman,serif;font-weight:900}#app.app-view--game .movement-panel-close{border:1px solid rgba(var(--risk-gold-rgb), .3);width:34px;height:34px;color:var(--risk-gold);background:#02061773;border-radius:6px}#app.app-view--game .movement-panel-route-card{border-color:rgba(var(--risk-gold-rgb), .22);background:#020617;border-radius:6px}#app.app-view--game .movement-panel-route-label,#app.app-view--game .movement-panel-label{color:var(--risk-gold);font-family:Georgia,Times New Roman,serif;font-weight:900}#app.app-view--game .movement-panel-current{color:var(--risk-gold)}#app.app-view--game #btn-toggle-region-view.game-region-view-btn,#app.app-view--game #btn-quit-game.game-quit-btn{z-index:40;border:1px solid rgba(var(--risk-gold-rgb), .46);background:linear-gradient(180deg, var(--risk-red) 0%, var(--risk-red-mid) 58%, var(--risk-red-dark) 100%);width:42px;height:42px;min-height:42px;color:var(--risk-cream);box-shadow:0 1px 0 rgba(var(--risk-gold-rgb), .36) inset, 0 10px 20px #00000047;border-radius:6px;justify-content:center;align-items:center;display:inline-flex;position:fixed;top:1rem;margin:0!important;padding:0!important}#app.app-view--game #btn-toggle-region-view.game-region-view-btn{right:3.9rem}#app.app-view--game #btn-quit-game.game-quit-btn{right:1rem}#app.app-view--game #btn-toggle-region-view.game-region-view-btn{color:var(--risk-gold);background:linear-gradient(#111827b8,#070a15d6)}#app.app-view--game #btn-toggle-region-view.game-region-view-btn.primary-btn{color:var(--risk-cream);background:linear-gradient(180deg, var(--risk-red) 0%, var(--risk-red-mid) 58%, var(--risk-red-dark) 100%)!important}#app.app-view--game #btn-toggle-region-view.game-region-view-btn svg,#app.app-view--game #btn-quit-game.game-quit-btn svg{fill:none;stroke:currentColor;stroke-width:2.35px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}#app.app-view--game #btn-toggle-region-view.game-region-view-btn:after,#app.app-view--game #btn-quit-game.game-quit-btn:after{content:attr(data-tooltip);z-index:41;border:1px solid rgba(var(--risk-gold-rgb), .42);color:#f8fafc;letter-spacing:0;text-transform:none;width:max-content;max-width:180px;text-shadow:none;opacity:0;pointer-events:none;background:#050b17;border-radius:5px;padding:.35rem .55rem;font-family:Inter,system-ui,sans-serif;font-size:.78rem;font-weight:700;line-height:1.2;transition:opacity .12s,transform .12s;position:absolute;top:calc(100% + .55rem);right:0;transform:translateY(-4px);box-shadow:0 12px 26px #0000006b}#app.app-view--game #btn-toggle-region-view.game-region-view-btn:hover:after,#app.app-view--game #btn-toggle-region-view.game-region-view-btn:focus-visible:after,#app.app-view--game #btn-quit-game.game-quit-btn:hover:after,#app.app-view--game #btn-quit-game.game-quit-btn:focus-visible:after{opacity:1;transform:translateY(0)}@media (width<=760px){#hub-view .server-list li{grid-template-columns:1fr}#hub-view .join-btn{width:100%}#lobby-room-view{justify-content:flex-start;padding:1rem}#lobby-room-view .hub-header h1{font-size:2rem}#lobby-room-view .hub-content{flex-direction:column;gap:1.25rem;max-height:none}#lobby-room-view .server-list{border-right:none;border-bottom:1px solid rgba(var(--risk-gold-rgb), .26);padding-bottom:1.25rem;padding-right:0}#lobby-room-view .lobby-action-row{justify-content:flex-end}}.player-item.eliminated{opacity:.5;text-decoration:line-through;color:var(--text-muted)!important}.modal-overlay{transition:opacity .3s}.modal h2{color:var(--accent)}#app.app-view--editor aside#sidebar{border-right:1px solid rgba(var(--risk-gold-rgb), .3);background:linear-gradient(#0d1526fa,#060c1afa),#07101f;width:340px;padding:1.35rem;box-shadow:inset 1px 0 #8c1d1252,18px 0 46px #0000006b}#app.app-view--editor .sidebar-header{border-bottom:1px solid rgba(var(--risk-gold-rgb), .2);margin-bottom:1.25rem;padding-bottom:1rem}#app.app-view--editor .sidebar-header h1{color:var(--risk-red-accent);text-transform:uppercase;-webkit-text-stroke:1px var(--risk-gold);text-shadow:0 1px 0 var(--risk-red-shadow), 0 2px 0 var(--risk-red-shadow-dark), 3px 5px 12px #0000009e;font-family:Georgia,Times New Roman,serif;font-size:1.6rem;font-weight:900;line-height:.95}#app.app-view--editor .sidebar-header p{color:#f8fafc;margin-top:.5rem;font-weight:700}#app.app-view--editor .control-section{border-bottom:1px solid rgba(var(--risk-gold-rgb), .18);margin-bottom:1rem;padding-bottom:1rem}#app.app-view--editor .control-section h3,#app.app-view--editor .control-section h4,#app.app-view--editor .input-group label{letter-spacing:.02em;text-shadow:0 1px 0 var(--risk-red-shadow-dark);font-family:Georgia,Times New Roman,serif;font-weight:900;color:var(--risk-gold)!important}#app.app-view--editor input[type=range],#app.app-view--editor input[type=checkbox]{accent-color:var(--risk-red-accent)}#app.app-view--editor .tool-btn{border-color:rgba(var(--risk-gold-rgb), .22);color:#f8fafca6;background:#020617b8}#app.app-view--editor .tool-btn:hover{background:rgba(var(--risk-gold-rgb), .12);border-color:rgba(var(--risk-gold-rgb), .46);color:#f8fafc}#app.app-view--editor .tool-btn.active{border-color:rgba(var(--risk-gold-rgb), .72);color:var(--risk-gold);background:#d7192038}#app.app-view--editor #btn-quit.editor-quit-btn{z-index:40;border:1px solid rgba(var(--risk-gold-rgb), .46);background:linear-gradient(180deg, var(--risk-red) 0%, var(--risk-red-mid) 58%, var(--risk-red-dark) 100%);width:42px;height:42px;min-height:42px;color:var(--risk-cream);box-shadow:0 1px 0 rgba(var(--risk-gold-rgb), .36) inset, 0 10px 20px #00000047;border-radius:6px;justify-content:center;align-items:center;display:inline-flex;position:fixed;top:1rem;right:1rem;margin:0!important;padding:0!important}#app.app-view--editor #btn-quit.editor-quit-btn svg{fill:none;stroke:currentColor;stroke-width:2.35px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}#app.app-view--editor #btn-quit.editor-quit-btn:after{content:attr(data-tooltip);z-index:41;border:1px solid rgba(var(--risk-gold-rgb), .42);color:#f8fafc;letter-spacing:0;text-transform:none;width:max-content;max-width:180px;text-shadow:none;opacity:0;pointer-events:none;background:#050b17;border-radius:5px;padding:.35rem .55rem;font-family:Inter,system-ui,sans-serif;font-size:.78rem;font-weight:700;line-height:1.2;transition:opacity .12s,transform .12s;position:absolute;top:calc(100% + .55rem);right:0;transform:translateY(-4px);box-shadow:0 12px 26px #0000006b}#app.app-view--editor #btn-quit.editor-quit-btn:focus-visible{border-color:var(--risk-gold);box-shadow:0 0 0 3px rgba(var(--risk-gold-rgb), .18), 0 1px 0 rgba(var(--risk-gold-rgb), .46) inset, 0 10px 20px #00000047;outline:none}#app.app-view--editor #btn-quit.editor-quit-btn:hover:after,#app.app-view--editor #btn-quit.editor-quit-btn:focus-visible:after{opacity:1;transform:translateY(0)}#app.app-view--editor .action-buttons{border-bottom:none;flex-direction:column;gap:.5rem;margin-bottom:0;padding-bottom:0;display:flex}#app.app-view--editor .action-buttons .primary-btn{border:1px solid rgba(var(--risk-gold-rgb), .52);background:linear-gradient(180deg, var(--risk-red) 0%, var(--risk-red-mid) 54%, var(--risk-red-dark) 100%);min-height:42px;color:var(--risk-cream);letter-spacing:.02em;text-transform:uppercase;text-shadow:0 2px #5f130dd1;box-shadow:0 1px 0 rgba(var(--risk-gold-rgb), .36) inset, 0 10px 20px #00000047;margin-bottom:0;font-family:Georgia,Times New Roman,serif;font-weight:900}#app.app-view--editor .action-buttons .primary-btn:hover{border-color:rgba(var(--risk-gold-rgb), .78);background:linear-gradient(#ff5a49 0%,#dc2626 54%,#991b1b 100%)}#app.app-view--editor .action-buttons .primary-btn:focus-visible,#app.app-view--editor .action-buttons .secondary-btn:focus-visible,#app.app-view--editor .action-buttons .file-upload-btn:focus-visible{border-color:var(--risk-gold);box-shadow:0 0 0 3px rgba(var(--risk-gold-rgb), .18), 0 1px 0 rgba(var(--risk-gold-rgb), .46) inset, 0 12px 24px #00000057;outline:none}#app.app-view--editor .action-buttons .secondary-btn,#app.app-view--editor .action-buttons .file-upload-btn{border:1px solid rgba(var(--risk-gold-rgb), .44);min-height:42px;color:var(--risk-gold);letter-spacing:.02em;text-transform:uppercase;box-shadow:0 1px 0 rgba(var(--risk-gold-rgb), .36) inset;background:linear-gradient(#111827b8,#070a15d6);margin-bottom:0;font-family:Georgia,Times New Roman,serif;font-weight:900}#app.app-view--editor .action-buttons .secondary-btn:hover,#app.app-view--editor .action-buttons .file-upload-btn:hover{border-color:rgba(var(--risk-gold-rgb), .72);background:linear-gradient(#1f2937db,#0c1220f0)}#app.app-view--editor .action-buttons select{appearance:none;border:1px solid rgba(var(--risk-gold-rgb), .42);color:#f8fafc;min-height:42px;font:inherit;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background-color:#0000;background-image:linear-gradient(#020617d1,#09101feb),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23f6c344' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:0 0,right .8rem center;background-repeat:no-repeat;background-size:auto,14px 14px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;border-radius:6px;padding:.55rem 2.5rem .55rem .7rem;box-shadow:inset 0 1px #ffffff0a,0 0 0 1px #5f130d52}#app.app-view--editor .action-buttons select:focus{border-color:var(--risk-gold);box-shadow:0 0 0 3px rgba(var(--risk-gold-rgb), .18), 0 0 0 1px #8c1d1275;outline:none}#app.app-view--editor .action-buttons select option{color:#f8fafc;background:#07101f}#startup-modal .modal{border:1px solid rgba(var(--risk-gold-rgb), .42);box-shadow:0 0 0 1px #8c1d126b inset, 0 28px 70px #0000008f, 0 0 38px rgba(var(--risk-gold-rgb), .08);background:linear-gradient(#0d1526fa,#060c1afa),#07101f}#startup-modal .modal h2{color:var(--risk-red-accent);text-transform:uppercase;-webkit-text-stroke:1px var(--risk-gold);text-shadow:0 1px 0 var(--risk-red-shadow), 0 2px 0 var(--risk-red-shadow-dark), 3px 5px 12px #0000009e;font-family:Georgia,Times New Roman,serif;font-size:1.6rem;font-weight:900}#startup-modal .modal p{color:#f8fafcb8}#startup-modal .input-group label{color:var(--risk-gold);text-shadow:0 1px 0 var(--risk-red-shadow-dark);font-family:Georgia,Times New Roman,serif;font-weight:900}#startup-modal input[type=text]{border:1px solid rgba(var(--risk-gold-rgb), .42);color:#f8fafc;background:linear-gradient(#020617d1,#09101feb);box-shadow:inset 0 1px #ffffff0a}#startup-modal input[type=text]:focus{border-color:var(--risk-gold);box-shadow:0 0 0 3px rgba(var(--risk-gold-rgb), .18), 0 0 0 1px #8c1d1275;outline:none}#startup-modal .primary-btn{border:1px solid rgba(var(--risk-gold-rgb), .52);background:linear-gradient(180deg, var(--risk-red) 0%, var(--risk-red-mid) 54%, var(--risk-red-dark) 100%);min-height:46px;color:var(--risk-cream);letter-spacing:.02em;text-transform:uppercase;text-shadow:0 2px #5f130dd1;box-shadow:0 1px 0 rgba(var(--risk-gold-rgb), .36) inset, 0 10px 20px #00000047;margin-top:.25rem;margin-bottom:0;font-family:Georgia,Times New Roman,serif;font-size:1rem;font-weight:900}#startup-modal .primary-btn:hover{border-color:rgba(var(--risk-gold-rgb), .78);background:linear-gradient(#ff5a49 0%,#dc2626 54%,#991b1b 100%)}#startup-modal .primary-btn:focus-visible,#startup-modal .file-upload-btn:focus-visible{border-color:var(--risk-gold);box-shadow:0 0 0 3px rgba(var(--risk-gold-rgb), .18), 0 1px 0 rgba(var(--risk-gold-rgb), .46) inset, 0 12px 24px #00000057;outline:none}#startup-modal .file-upload-btn{border:1px solid rgba(var(--risk-gold-rgb), .44);min-height:42px;color:var(--risk-gold);letter-spacing:.02em;text-transform:uppercase;box-shadow:0 1px 0 rgba(var(--risk-gold-rgb), .36) inset;border-top:1px solid rgba(var(--risk-gold-rgb), .44);background:linear-gradient(#111827b8,#070a15d6);font-family:Georgia,Times New Roman,serif;font-weight:900}#startup-modal .file-upload-btn:hover{border-color:rgba(var(--risk-gold-rgb), .72);background:linear-gradient(#1f2937db,#0c1220f0)}#startup-modal .startup-modal-divider{border-top-color:rgba(var(--risk-gold-rgb), .2)!important}.admin-modal{border:1px solid rgba(var(--risk-gold-rgb), .42);width:500px;box-shadow:0 0 0 1px #8c1d126b inset, 0 28px 70px #0000008f, 0 0 38px rgba(var(--risk-gold-rgb), .08);background:linear-gradient(#0d1526fa,#060c1afa),#07101f}.admin-modal h2{color:var(--risk-red-accent);text-transform:uppercase;-webkit-text-stroke:1px var(--risk-gold);text-shadow:0 1px 0 var(--risk-red-shadow), 0 2px 0 var(--risk-red-shadow-dark), 3px 5px 12px #0000009e;margin:0;font-family:Georgia,Times New Roman,serif;font-size:1.4rem;font-weight:900}.admin-modal__header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.admin-modal__close{border:1px solid rgba(var(--risk-gold-rgb), .3);color:var(--risk-gold);cursor:pointer;background:0 0;border-radius:6px;padding:.15rem .55rem;font-size:1.1rem;line-height:1.4;transition:background .15s,border-color .15s}.admin-modal__close:hover{background:rgba(var(--risk-gold-rgb), .1);border-color:var(--risk-gold)}.admin-modal__msg{border-radius:4px;margin-bottom:.6rem;padding:.35rem .6rem;font-size:.83rem}.admin-modal__msg--error{color:#fca5a5;background:#ef44441f;border:1px solid #ef444440}.admin-modal__msg--success{color:#86efac;background:#22c55e1f;border:1px solid #22c55e40}.admin-user-list{scrollbar-width:none;max-height:340px;margin:0;padding:0;list-style:none;overflow-y:auto}.admin-user-list::-webkit-scrollbar{display:none}.admin-user-list__row{border-bottom:1px solid rgba(var(--risk-gold-rgb), .1);align-items:center;gap:.4rem;padding:.4rem 0;display:flex}.admin-user-list__row:last-child{border-bottom:none}.admin-user-list__row--add{border-bottom:1px solid rgba(var(--risk-gold-rgb), .25);margin-bottom:.1rem;padding-bottom:.65rem}.admin-row-input{border:1px solid rgba(var(--risk-gold-rgb), .35);color:#f8fafc;background:linear-gradient(#020617d1,#09101feb);border-radius:4px;flex:1;min-width:0;height:30px;padding:0 .5rem;font-family:inherit;font-size:.8rem;transition:border-color .15s,box-shadow .15s;box-shadow:inset 0 1px #ffffff0a}.admin-row-input::placeholder{color:#f8fafc4d}.admin-row-input:focus{border-color:var(--risk-gold);box-shadow:0 0 0 2px rgba(var(--risk-gold-rgb), .15), 0 0 0 1px #8c1d1266;outline:none}.admin-row-btn{cursor:pointer;border-radius:4px;flex-shrink:0;height:30px;font-family:inherit;font-size:.78rem;font-weight:600;transition:background .15s,border-color .15s}.admin-row-btn--add{border:1px solid rgba(var(--risk-gold-rgb), .5);background:linear-gradient(180deg, var(--risk-red) 0%, var(--risk-red-mid) 54%, var(--risk-red-dark) 100%);width:30px;color:var(--risk-cream);text-shadow:0 1px #5f130db3;box-shadow:0 1px 0 rgba(var(--risk-gold-rgb), .3) inset;font-size:1.1rem;font-weight:900}.admin-row-btn--add:hover{border-color:var(--risk-gold);background:linear-gradient(#ff5a49 0%,#dc2626 54%,#991b1b 100%)}.admin-row-btn--save{border:1px solid rgba(var(--risk-gold-rgb), .35);background:rgba(var(--risk-gold-rgb), .08);color:var(--risk-gold);padding:0 .55rem}.admin-row-btn--save:hover{background:rgba(var(--risk-gold-rgb), .18);border-color:var(--risk-gold)}.admin-row-btn--del{color:#fca5a5;background:0 0;border:1px solid #ef444459;width:30px;font-size:1rem}.admin-row-btn--del:hover{color:#f87171;background:#ef444426;border-color:#ef4444a6}.admin-modal .input-group label{color:var(--risk-gold);text-shadow:0 1px 0 var(--risk-red-shadow-dark);font-family:Georgia,Times New Roman,serif;font-size:.82rem;font-weight:900}.admin-modal input[type=text],.admin-modal input[type=password]{border:1px solid rgba(var(--risk-gold-rgb), .42);color:#f8fafc;background:linear-gradient(#020617d1,#09101feb);box-shadow:inset 0 1px #ffffff0a}.admin-modal input[type=text]:focus,.admin-modal input[type=password]:focus{border-color:var(--risk-gold);box-shadow:0 0 0 3px rgba(var(--risk-gold-rgb), .18), 0 0 0 1px #8c1d1275;outline:none}.admin-modal__create-btn{border:1px solid rgba(var(--risk-gold-rgb), .52);background:linear-gradient(180deg, var(--risk-red) 0%, var(--risk-red-mid) 54%, var(--risk-red-dark) 100%);width:100%;min-height:42px;color:var(--risk-cream);letter-spacing:.02em;text-transform:uppercase;text-shadow:0 2px #5f130dd1;box-shadow:0 1px 0 rgba(var(--risk-gold-rgb), .36) inset, 0 8px 18px #00000047;cursor:pointer;border-radius:6px;margin-top:.75rem;font-family:Georgia,Times New Roman,serif;font-size:.95rem;font-weight:900;transition:border-color .15s,background .15s}.admin-modal__create-btn:hover{border-color:rgba(var(--risk-gold-rgb), .78);background:linear-gradient(#ff5a49 0%,#dc2626 54%,#991b1b 100%)}
