.viliLeaderboardOverlay{z-index:1600}.viliLeaderboard,.viliIdentityModal,.viliHelpModal{border:1px solid #ffffff1a;position:relative;box-shadow:0 24px 80px #0000006b}.viliLeaderboard{width:min(980px,100vw - 24px);max-height:min(86vh,900px);overflow:auto}.viliIdentityModal{text-align:center;width:min(470px,100vw - 24px);padding:30px 28px 26px}.viliIdentityModal>svg{opacity:.9;width:38px;height:38px;margin:0 auto 10px;display:block}.viliIdentityModal h2{margin:7px 42px 10px;font-size:24px;line-height:1.15}.viliIdentityModal>p{color:#ffffffad;max-width:390px;margin:10px auto;line-height:1.5}.viliLbClose,.viliHelpModal .viliModalHeader>button{width:38px;height:38px;color:inherit;cursor:pointer;background:#ffffff0b;border:1px solid #ffffff17;border-radius:10px;place-items:center;padding:0;transition:background .15s,border-color .15s,transform .15s;display:grid}.viliLbClose{z-index:2;position:absolute;top:12px;right:12px}.viliLbClose svg,.viliHelpModal .viliModalHeader>button svg{width:18px}.viliLbClose:hover,.viliHelpModal .viliModalHeader>button:hover{background:#ffffff1a;border-color:#ffffff29}.viliLbClose:active,.viliHelpModal .viliModalHeader>button:active{transform:scale(.96)}.viliLbHero{text-align:left;align-items:center;gap:14px;display:flex}.viliLbHero>svg{width:42px;height:42px}.viliLbHero h2{margin:2px 0}.viliLbTabs,.viliIdentityTabs{gap:8px;margin:18px 0;display:flex}.viliLbTabs button,.viliIdentityTabs button{min-height:42px;color:inherit;font:inherit;cursor:pointer;background:#ffffff09;border:1px solid #ffffff17;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:7px;padding:9px 12px;font-weight:700;transition:background .15s,border-color .15s,transform .15s;display:flex}.viliLbTabs button:hover,.viliIdentityTabs button:hover{background:#ffffff13;border-color:#ffffff24}.viliLbTabs button:active,.viliIdentityTabs button:active{transform:translateY(1px)}.viliLbTabs button.selected,.viliIdentityTabs button.selected{border-color:var(--accent,#8aa4ff);background:color-mix(in srgb,var(--accent,#8aa4ff) 15%,transparent)}.viliLbTabs button svg{width:17px}.viliLbFilters{grid-template-columns:2fr 1fr 1fr;gap:8px;margin-bottom:12px;display:grid}.viliLbFilters label{align-items:center;gap:8px;display:flex}.viliLbFilters label svg{opacity:.55;width:17px}.viliLbFilters input,.viliLbFilters select,.viliLbInput{box-sizing:border-box;width:100%;min-height:42px;color:inherit;font:inherit;background:#0003;border:1px solid #ffffff1a;border-radius:10px;outline:none;padding:9px 11px;transition:border-color .15s,background .15s,box-shadow .15s}.viliLbFilters input:focus,.viliLbFilters select:focus,.viliLbInput:focus{border-color:color-mix(in srgb,var(--accent,#8aa4ff) 70%,white 5%);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent,#8aa4ff) 13%,transparent);background:#00000047}.viliIdentityModal .viliLbInput{margin:5px 0}.viliIdentityModal .viliLbInput::placeholder{color:#ffffff59}.viliSetupButton,.viliHelpFooter .primary{border:1px solid color-mix(in srgb,var(--accent,#8aa4ff) 65%,white 8%);background:color-mix(in srgb,var(--accent,#8aa4ff) 78%,#111 22%);color:#fff;width:100%;min-height:46px;font:inherit;letter-spacing:.01em;cursor:pointer;box-shadow:0 8px 24px color-mix(in srgb,var(--accent,#8aa4ff) 16%,transparent);border-radius:11px;justify-content:center;align-items:center;margin-top:12px;padding:10px 16px;font-weight:800;transition:filter .15s,transform .15s,box-shadow .15s;display:flex}.viliSetupButton:hover:not(:disabled),.viliHelpFooter .primary:hover{filter:brightness(1.1);box-shadow:0 10px 28px color-mix(in srgb,var(--accent,#8aa4ff) 22%,transparent);transform:translateY(-1px)}.viliSetupButton:active:not(:disabled),.viliHelpFooter .primary:active{transform:translateY(0)}.viliSetupButton:disabled{opacity:.42;cursor:not-allowed;box-shadow:none}.viliRecoveryCode{border:1px solid color-mix(in srgb,var(--accent,#8aa4ff) 34%,transparent);background:color-mix(in srgb,var(--accent,#8aa4ff) 8%,#00000026);letter-spacing:2px;-webkit-user-select:all;user-select:all;border-radius:12px;justify-content:center;align-items:center;gap:10px;margin:20px 0 10px;padding:18px;font-size:23px;font-weight:900;display:flex}.viliRecoveryCode svg{opacity:.75;flex:none;width:21px}.viliLbError{color:#ff9c9c;text-align:left;background:#ff5a5a12;border:1px solid #ff6e6e2e;border-radius:9px;margin:9px 0 2px;padding:9px 11px;font-size:13px}.viliLbRows{flex-direction:column;gap:6px;display:flex}.viliLbRow{text-align:left;background:#ffffff06;border:1px solid #ffffff13;border-radius:10px;grid-template-columns:54px minmax(140px,1.4fr) 110px 1fr 1fr 90px;align-items:center;gap:9px;min-height:50px;padding:8px 10px;transition:background .15s,border-color .15s;display:grid}.viliLbRow:hover{background:#ffffff0b;border-color:#ffffff1c}.viliLbRow button{color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.viliLbRow button:hover{color:color-mix(in srgb,var(--accent,#8aa4ff) 78%,white 22%)}.viliPlayerLink{align-items:center;gap:7px;font-weight:700;display:flex}.viliPlayerLink svg{width:16px}.viliScoreLink{font-size:17px;font-weight:800}.viliRank{opacity:.5}.viliLbLive{grid-template-columns:28px minmax(140px,1.4fr) 1fr 1fr 90px}.viliLbLive>svg{width:16px}.viliLbLive button{font-weight:800}.viliLbEmpty{text-align:center;opacity:.6;padding:30px}.viliReport>p{opacity:.65}.viliReportGrid,.viliProfileSummary{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:18px 0;display:grid}.viliReportStat{background:#ffffff06;border:1px solid #ffffff14;border-radius:11px;flex-direction:column;gap:3px;padding:12px;display:flex}.viliReportStat span{opacity:.55;text-transform:uppercase;font-size:11px}.viliReportStat strong{font-size:19px}.viliLbRaw{text-align:left;border-top:1px solid #ffffff14;grid-template-columns:110px 1fr;gap:8px 12px;padding:14px;display:grid}.viliLbRaw strong{opacity:.6}.viliPlayerStrip{background:#ffffff06;border:1px solid #ffffff14;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin:0 0 16px;padding:12px 14px;display:flex}.viliPlayerStrip>div{flex-direction:column;display:flex}.viliPlayerStrip small{opacity:.55}.viliTrackingState{opacity:.55;font-size:11px}.viliGameOverActions{grid-template-columns:1fr 1fr;gap:8px;margin-top:16px;display:grid}.viliGameOverSaveState{opacity:.65;margin:8px 0;font-size:12px}.viliHelpModal{width:min(780px,100vw - 24px);max-height:min(88vh,920px);overflow:auto}.viliHelpModal .viliModalHeader{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.viliHelpModal .viliModalHeader h2{margin:3px 0 0}.viliHelpModal .viliModalLead{color:#ffffffad;margin:10px 0 18px;line-height:1.55}.viliHelpQuick{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin:0 0 18px;display:grid}.viliHelpQuick .viliHelpRule{text-align:center;align-items:center;min-height:92px}.viliHelpQuick .viliHelpRule span{font-size:11px}.viliHelpSection{border-top:1px solid #ffffff13;padding:17px 0}.viliHelpSectionTitle svg{opacity:.78}.viliHelpSection p{color:#ffffffb8;margin:7px 0;line-height:1.55}.viliHelpSection strong{color:#fffffff0}.viliHelpRule{color:#ffffffb8;background:#ffffff06;border:1px solid #ffffff13;border-radius:10px;align-items:flex-start;gap:9px;padding:10px 12px;line-height:1.4;display:flex}.viliHelpRule strong{color:#fffffff0}.viliHelpRule span{opacity:.78}.viliHelpFooter{border-top:1px solid #ffffff13;grid-template-columns:auto 1fr 120px;align-items:center;gap:12px;margin-top:4px;padding:16px 0 2px;display:grid}.viliHelpFooter span{color:#ffffff9e;font-size:12px;line-height:1.4}.viliHelpFooter .primary{min-height:42px;margin:0}@media (width<=700px){.viliLeaderboard,.viliHelpModal{width:calc(100vw - 14px);max-height:92vh}.viliIdentityModal{width:calc(100vw - 18px);padding:27px 16px 20px}.viliIdentityModal h2{font-size:21px}.viliLbFilters{grid-template-columns:1fr}.viliLbRow{grid-template-columns:42px 1fr 90px}.viliLbRow span,.viliLbRow small{display:none}.viliLbLive{grid-template-columns:24px 1fr 80px}.viliLbLive span{display:none}.viliReportGrid,.viliProfileSummary{grid-template-columns:repeat(2,minmax(0,1fr))}.viliGameOverActions{grid-template-columns:1fr}.viliHelpQuick{grid-template-columns:repeat(2,minmax(0,1fr))}.viliHelpQuick .viliHelpRule:last-child{grid-column:1/-1}.viliHelpFooter{grid-template-columns:1fr}.viliHelpFooter .primary{width:100%}.viliRecoveryCode{letter-spacing:1.5px;font-size:18px}}@media (width<=420px){.viliIdentityTabs{gap:6px}.viliIdentityTabs button{padding:8px;font-size:12px}.viliHelpQuick{grid-template-columns:1fr}.viliHelpQuick .viliHelpRule:last-child{grid-column:auto}.viliHelpQuick .viliHelpRule{text-align:left;align-items:flex-start;min-height:auto}}.viliDiplomacyModal{width:min(980px,96vw);max-height:92vh;overflow:auto}.viliDipHeadline{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0;display:grid}.viliDipHeadline>div{border:1px solid color-mix(in srgb,currentColor 12%,transparent);border-radius:12px;gap:3px;padding:12px;display:grid}.viliDipHeadline span,.viliDipMeter span,.viliDipPromise span,.viliDipEmpty{opacity:.65;font-size:11px}.viliDipMeters{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;margin-bottom:16px;display:grid}.viliDipMeter>div:first-child{justify-content:space-between;gap:10px;font-size:12px;display:flex}.viliDipMeterTrack{background:color-mix(in srgb,currentColor 9%,transparent);border-radius:99px;height:6px;overflow:hidden}.viliDipMeterTrack i{opacity:.55;background:currentColor;height:100%;display:block}.viliDipSection{border-top:1px solid color-mix(in srgb,currentColor 12%,transparent);margin-top:16px;padding-top:14px}.viliDipSectionTitle{align-items:center;gap:7px;margin-bottom:10px;display:flex}.viliDipActionGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.viliDipAction{text-align:left;border:1px solid color-mix(in srgb,currentColor 14%,transparent);background:color-mix(in srgb,currentColor 3%,transparent);color:inherit;cursor:pointer;border-radius:13px;padding:13px}.viliDipAction:hover{background:color-mix(in srgb,currentColor 7%,transparent)}.viliDipAction>div{align-items:center;gap:7px;display:flex}.viliDipAction p{opacity:.68;margin:6px 0 8px;font-size:11px;line-height:1.45}.viliDipAction small{align-items:center;gap:5px;font-weight:700;display:flex}.viliDipPromise{background:color-mix(in srgb,currentColor 4%,transparent);border-radius:11px;justify-content:space-between;gap:12px;margin-bottom:7px;padding:10px 12px;display:flex}.viliDipPromise>div:first-child{gap:2px;display:grid}.viliDipPromise.mine{border-left:3px solid}.viliDipOfferActions{align-items:center;gap:6px;display:flex}.viliDipOfferActions button{align-items:center;gap:4px;display:inline-flex}.viliDipDebt,.viliDipMessage{background:color-mix(in srgb,currentColor 6%,transparent);border-radius:10px;align-items:center;gap:7px;margin-top:8px;padding:10px 12px;font-size:12px;display:flex}.viliDipMessage.ok,.viliDipMessage.bad{font-weight:700}.viliDipTargetSelect{gap:5px;margin:12px 0;display:grid}.viliDipTargetSelect span{letter-spacing:.08em;text-transform:uppercase;opacity:.6;font-size:10px;font-weight:800}.viliDipTargetSelect select{border:1px solid color-mix(in srgb,currentColor 14%,transparent);background:var(--surface);color:var(--text);border-radius:10px;padding:10px 12px}@media (width<=700px){.viliDipHeadline,.viliDipMeters,.viliDipActionGrid{grid-template-columns:1fr}.viliDiplomacyModal{border-radius:0;width:100vw;height:100dvh;max-height:100dvh}.viliDipPromise{flex-direction:column}.viliDipOfferActions{align-self:flex-start}}.viliTileActionsDock,.viliTileActionsHidden{--tile-action-food:#5fd17a;--tile-action-economy:#e8b84a;--tile-action-science:#65a9ff;--tile-action-military:#ef6262;--tile-action-defense:#ef6262;--tile-action-diplomacy:#b98cff;--tile-action-move:#68d7d0;--tile-action-territory:#8d8cff;--tile-action-build:#d8dde8;--tile-action-pillage:#ff8b58}.viliTileActionsDock{pointer-events:auto;-webkit-backdrop-filter:blur(16px);background:color-mix(in srgb, var(--surface) 96%, transparent)!important;border:1px solid color-mix(in srgb, var(--border) 86%, transparent)!important;-webkit-backdrop-filter:blur(16px)!important;backdrop-filter:blur(16px)!important;border-radius:14px!important;gap:6px!important;width:max-content!important;min-width:0!important;max-width:min(280px,88vw)!important;padding:7px!important;display:grid!important;overflow:visible!important;box-shadow:0 12px 32px #00000061,inset 0 1px #ffffff06!important}.viliTileActionTools{z-index:12;pointer-events:auto;gap:5px;display:flex;position:absolute;top:-2px;right:-70px}.viliTileActionsDock.is-bottom .viliTileActionTools{top:-36px;right:0}.viliTileActionsHidden{pointer-events:none;width:0;height:0;position:relative}.viliTileActionsHidden .viliTileActionTools{top:-2px;right:-67px}.viliTileActionsHidden.is-bottom .viliTileActionTools{top:-34px;right:-34px}.viliTileActionTool{-webkit-backdrop-filter:blur(11px);backdrop-filter:blur(11px);cursor:pointer;width:30px;min-width:30px;height:30px;border:1px solid color-mix(in srgb, var(--accent) 34%, var(--border))!important;background:color-mix(in srgb, var(--surface) 96%, transparent)!important;min-height:30px!important;color:var(--text)!important;border-radius:999px!important;place-items:center!important;padding:0!important;display:grid!important;box-shadow:0 7px 20px #0000004d!important}.viliTileActionTool:hover{border-color:var(--accent)!important;color:var(--accent2)!important}.viliTileMainGrid,.viliTileBuildGrid{grid-template-columns:repeat(3,48px);gap:5px;display:grid}.viliTileActionButton{--tile-tone:var(--muted);cursor:pointer;width:48px;min-width:48px;height:48px;transition:transform .12s,border-color .12s,background .12s,opacity .12s;position:relative;border:1px solid color-mix(in srgb, var(--tile-tone) 22%, var(--border))!important;background:color-mix(in srgb, var(--tile-tone) 7%, var(--surface2))!important;min-height:48px!important;color:var(--text)!important;border-radius:11px!important;place-items:center!important;padding:0!important;display:grid!important}.viliTileActionButton:hover:not(:disabled){transform:translateY(-1px);border-color:color-mix(in srgb, var(--tile-tone) 58%, var(--border))!important;background:color-mix(in srgb, var(--tile-tone) 12%, var(--surface2))!important}.viliTileActionButton:active:not(:disabled){transform:scale(.96)}.viliTileActionButton:disabled{filter:saturate(.6);opacity:.28!important;cursor:not-allowed!important}.viliTileActionTone-food{--tile-tone:var(--tile-action-food)}.viliTileActionTone-economy{--tile-tone:var(--tile-action-economy)}.viliTileActionTone-science{--tile-tone:var(--tile-action-science)}.viliTileActionTone-military{--tile-tone:var(--tile-action-military)}.viliTileActionTone-defense{--tile-tone:var(--tile-action-defense)}.viliTileActionTone-diplomacy{--tile-tone:var(--tile-action-diplomacy)}.viliTileActionTone-move{--tile-tone:var(--tile-action-move)}.viliTileActionTone-territory{--tile-tone:var(--tile-action-territory)}.viliTileActionTone-build{--tile-tone:var(--tile-action-build)}.viliTileActionTone-pillage{--tile-tone:var(--tile-action-pillage)}.viliTileActionIcon{background:color-mix(in srgb, var(--tile-tone) 10%, transparent);width:35px;height:35px;color:var(--tile-tone);border-radius:9px;place-items:center;display:grid;position:relative}.viliTileActionCost{border:1px solid color-mix(in srgb, var(--tile-action-economy) 38%, var(--border));background:var(--surface);min-height:16px;color:var(--tile-action-economy);white-space:nowrap;border-radius:999px;align-items:center;gap:2px;padding:1px 4px;font-size:.54rem;line-height:1;display:inline-flex;position:absolute;bottom:-6px;right:-8px;box-shadow:0 2px 6px #0003}.viliTileActionCost svg{color:currentColor!important}.viliTileActionCost strong{font-size:.54rem}.viliTileUpgradeBadge{border:1px solid color-mix(in srgb, var(--tile-action-food) 45%, var(--border));background:var(--surface);min-width:20px;height:17px;color:var(--tile-action-food);border-radius:999px;justify-content:center;align-items:center;gap:1px;padding:0 3px;font-size:.52rem;line-height:1;display:inline-flex;position:absolute;top:-7px;left:-8px;box-shadow:0 2px 6px #0003}.viliTileUpgradeBadge strong{font-size:.52rem}.viliTileStepGroup{border:1px solid color-mix(in srgb, var(--tile-action-move) 35%, var(--border));background:color-mix(in srgb, var(--tile-action-move) 5%, var(--surface2));border-radius:11px;padding:5px;position:relative}.viliTileStepGrid{grid-template-columns:repeat(3,44px);gap:4px;display:grid}.viliTileStepGrid .viliTileActionButton{width:44px;min-width:44px;height:44px;border-radius:9px!important;min-height:44px!important}.viliTileStepGrid .viliTileActionIcon{width:31px;height:31px}.viliTileStepGrid .viliTileActionIcon>svg{width:19px;height:19px}.viliTileStepCount{border:1px solid var(--surface);background:var(--tile-action-move);color:#0b0e12;border-radius:999px;place-items:center;min-width:21px;height:19px;padding:0 4px;font-size:.6rem;font-weight:950;display:grid;position:absolute;top:-9px;left:50%;transform:translate(-50%);box-shadow:0 2px 7px #0003}.viliTileSplitScroller{scrollbar-width:none;gap:5px;width:min(250px,76vw);padding:1px;display:flex;overflow:auto hidden}.viliTileSplitScroller::-webkit-scrollbar{display:none}.viliTileSplitChoice{border:1px solid var(--border);background:var(--surface2);min-width:62px;height:46px;min-height:46px;color:var(--text);cursor:pointer;border-radius:10px;flex:none;justify-content:center;align-items:center;gap:4px;padding:4px 6px;display:flex}.viliTileSplitChoice svg{color:var(--tile-action-move)}.viliTileSplitChoice strong{font-size:.68rem}.viliTileSplitDivider{background:var(--border);width:1px;height:17px}.viliTileSplitLeave{color:var(--muted)}.viliTileTargetHint{--tile-tone:var(--tile-action-move);border:1px solid color-mix(in srgb, var(--tile-tone) 40%, var(--border));background:color-mix(in srgb, var(--tile-tone) 9%, var(--surface2));width:50px;height:50px;color:var(--tile-tone);border-radius:12px;place-items:center;display:grid}.viliTileActionsDock .viliTileActionCancel{cursor:pointer;justify-self:end;width:38px;min-width:38px;height:36px;border:1px solid color-mix(in srgb, #ef6262 28%, var(--border))!important;color:#ef7b7b!important;background:0 0!important;border-radius:9px!important;place-items:center!important;min-height:36px!important;padding:0!important;display:grid!important}@media (width<=520px){.viliTileActionsDock{max-width:min(280px,90vw)!important;padding:6px!important}}.viliTileActionsBottomDock{z-index:11;pointer-events:none;width:max-content;max-width:calc(100% - 250px);position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.viliTileActionsBottomDock .viliTileActions,.viliTileActionsBottomDock .viliTileActionsHidden{pointer-events:auto;position:relative!important;bottom:auto!important;left:auto!important;transform:none!important}:-webkit-any(.viliMapFrame:fullscreen,.viliMapFrame:-webkit-full-screen,.viliMapFrame.is-pseudo-fullscreen){border:0!important;border-radius:0!important;width:100vw!important;height:100vh!important;min-height:100vh!important;max-height:none!important;margin:0!important}:is(.viliMapFrame:fullscreen,.viliMapFrame:fullscreen,.viliMapFrame.is-pseudo-fullscreen){border:0!important;border-radius:0!important;width:100vw!important;height:100vh!important;min-height:100vh!important;max-height:none!important;margin:0!important}@supports (height:100dvh){:-webkit-any(.viliMapFrame:fullscreen,.viliMapFrame:-webkit-full-screen,.viliMapFrame.is-pseudo-fullscreen){height:100dvh!important;min-height:100dvh!important}:is(.viliMapFrame:fullscreen,.viliMapFrame:fullscreen,.viliMapFrame.is-pseudo-fullscreen){height:100dvh!important;min-height:100dvh!important}}.viliMapFrame.is-pseudo-fullscreen{z-index:9999!important;position:fixed!important;inset:0!important}:is(.viliMapFrame:fullscreen .viliMapControls,.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame:fullscreen .viliMapEndTurn,.viliMapFrame:fullscreen .viliTileActionsBottomDock,.viliMapFrame.is-pseudo-fullscreen .viliMapControls,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock){z-index:20}@media (width<=760px){.viliTileActionsBottomDock{bottom:calc(62px + env(safe-area-inset-bottom));max-width:calc(100% - 24px)}}.viliFullscreenTopHud{display:none}:-webkit-any(.viliMapFrame:fullscreen .viliFullscreenTopHud,.viliMapFrame:-webkit-full-screen .viliFullscreenTopHud,.viliMapFrame.is-pseudo-fullscreen .viliFullscreenTopHud){z-index:30;pointer-events:none;display:block;position:absolute;top:clamp(10px,1.4vw,20px);left:clamp(10px,1.4vw,20px);right:clamp(10px,1.4vw,20px)}:is(.viliMapFrame:fullscreen .viliFullscreenTopHud,.viliMapFrame:fullscreen .viliFullscreenTopHud,.viliMapFrame.is-pseudo-fullscreen .viliFullscreenTopHud){z-index:30;pointer-events:none;display:block;position:absolute;top:clamp(10px,1.4vw,20px);left:clamp(10px,1.4vw,20px);right:clamp(10px,1.4vw,20px)}.viliFullscreenTopHud .viliTopBar{pointer-events:auto;width:fit-content;max-width:min(100%,980px);margin:0 auto}.viliTopBarFullscreen{border:1px solid color-mix(in srgb, var(--border) 88%, transparent);-webkit-backdrop-filter:blur(18px);border-radius:clamp(12px,1.4vw,18px);box-shadow:0 12px 34px #0000004d;background:color-mix(in srgb, var(--surface) 92%, transparent)!important;gap:clamp(6px,.9vw,11px)!important;min-height:0!important;padding:clamp(7px,1vw,12px) clamp(8px,1.2vw,14px)!important}.viliTopBarFullscreen .viliTurnBadge{min-width:clamp(52px,7vw,76px);min-height:clamp(42px,5.5vw,56px);padding:clamp(5px,.7vw,8px) clamp(7px,.9vw,11px)}.viliTopBarFullscreen .viliTurnBadge span{font-size:clamp(.5rem,.8vw,.63rem)}.viliTopBarFullscreen .viliTurnBadge strong{font-size:clamp(.95rem,1.7vw,1.25rem)}.viliTopBarFullscreen .viliStats{grid-template-columns:repeat(5,minmax(58px,auto));gap:clamp(4px,.7vw,8px)!important;min-width:0!important;display:grid!important}.viliTopBarFullscreen .viliStat{border-radius:clamp(9px,1vw,12px);min-width:clamp(58px,8vw,94px);min-height:clamp(42px,5.5vw,56px);padding:clamp(5px,.7vw,8px) clamp(6px,.8vw,10px)}.viliTopBarFullscreen .viliStat svg{width:clamp(15px,1.8vw,20px);height:clamp(15px,1.8vw,20px)}.viliTopBarFullscreen .viliStat strong{font-size:clamp(.82rem,1.35vw,1.05rem)}.viliTopBarFullscreen .viliStat span{font-size:clamp(.56rem,.9vw,.72rem)}:-webkit-any(.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame:-webkit-full-screen .viliMapDetailDock,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock,.viliMapFrame:fullscreen .viliTileActionsBottomDock,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock,.viliMapFrame:fullscreen .viliMapEndTurn,.viliMapFrame:-webkit-full-screen .viliMapEndTurn,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn){bottom:max(14px, env(safe-area-inset-bottom))!important;z-index:30!important;position:absolute!important;top:auto!important;transform:none!important}:is(.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock,.viliMapFrame:fullscreen .viliTileActionsBottomDock,.viliMapFrame:fullscreen .viliTileActionsBottomDock,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock,.viliMapFrame:fullscreen .viliMapEndTurn,.viliMapFrame:fullscreen .viliMapEndTurn,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn){bottom:max(14px, env(safe-area-inset-bottom))!important;z-index:30!important;position:absolute!important;top:auto!important;transform:none!important}:-webkit-any(.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame:-webkit-full-screen .viliMapDetailDock,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock){width:calc(33.333% - clamp(18px,2.2vw,34px))!important;max-width:none!important;left:clamp(12px,1.5vw,22px)!important}:is(.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock){width:calc(33.333% - clamp(18px,2.2vw,34px))!important;max-width:none!important;left:clamp(12px,1.5vw,22px)!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsBottomDock,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock){justify-content:center;display:flex;width:calc(33.333% - clamp(18px,2.2vw,34px))!important;max-width:none!important;left:50%!important;transform:translate(-50%)!important}:is(.viliMapFrame:fullscreen .viliTileActionsBottomDock,.viliMapFrame:fullscreen .viliTileActionsBottomDock,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock){justify-content:center;display:flex;width:calc(33.333% - clamp(18px,2.2vw,34px))!important;max-width:none!important;left:50%!important;transform:translate(-50%)!important}:-webkit-any(.viliMapFrame:fullscreen .viliMapEndTurn,.viliMapFrame:-webkit-full-screen .viliMapEndTurn,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn){justify-content:flex-end;display:flex;width:calc(33.333% - clamp(18px,2.2vw,34px))!important;left:auto!important;right:clamp(12px,1.5vw,22px)!important}:is(.viliMapFrame:fullscreen .viliMapEndTurn,.viliMapFrame:fullscreen .viliMapEndTurn,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn){justify-content:flex-end;display:flex;width:calc(33.333% - clamp(18px,2.2vw,34px))!important;left:auto!important;right:clamp(12px,1.5vw,22px)!important}:-webkit-any(.viliMapFrame:fullscreen .viliMapDetailDock .viliContextPanel,.viliMapFrame:-webkit-full-screen .viliMapDetailDock .viliContextPanel,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock .viliContextPanel){background:color-mix(in srgb, var(--surface) 93%, transparent);-webkit-backdrop-filter:blur(16px);border-radius:clamp(13px,1.5vw,18px);width:100%;padding:clamp(12px,1.5vw,20px)}:is(.viliMapFrame:fullscreen .viliMapDetailDock .viliContextPanel,.viliMapFrame:fullscreen .viliMapDetailDock .viliContextPanel,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock .viliContextPanel){background:color-mix(in srgb, var(--surface) 93%, transparent);-webkit-backdrop-filter:blur(16px);border-radius:clamp(13px,1.5vw,18px);width:100%;padding:clamp(12px,1.5vw,20px)}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionsDock,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock .viliTileActionsDock,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileActionsDock){transform:scale(clamp(1.05, 1.8vw, 1.28))!important;transform-origin:bottom!important}:is(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionsDock,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionsDock,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileActionsDock){transform:scale(clamp(1.05, 1.8vw, 1.28))!important;transform-origin:bottom!important}:-webkit-any(.viliMapFrame:fullscreen .viliMapEndTurn button,.viliMapFrame:-webkit-full-screen .viliMapEndTurn button,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn button){letter-spacing:.1em;border-radius:clamp(12px,1.4vw,17px);width:min(100%,260px);min-height:clamp(58px,7vw,82px);padding:clamp(12px,1.4vw,18px) clamp(18px,2vw,28px);font-size:clamp(.82rem,1.3vw,1.08rem)}:is(.viliMapFrame:fullscreen .viliMapEndTurn button,.viliMapFrame:fullscreen .viliMapEndTurn button,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn button){letter-spacing:.1em;border-radius:clamp(12px,1.4vw,17px);width:min(100%,260px);min-height:clamp(58px,7vw,82px);padding:clamp(12px,1.4vw,18px) clamp(18px,2vw,28px);font-size:clamp(.82rem,1.3vw,1.08rem)}:-webkit-any(.viliMapFrame:fullscreen .viliMap,.viliMapFrame:-webkit-full-screen .viliMap,.viliMapFrame.is-pseudo-fullscreen .viliMap){padding-top:clamp(72px,9vh,104px);padding-bottom:clamp(112px,17vh,180px)}:is(.viliMapFrame:fullscreen .viliMap,.viliMapFrame:fullscreen .viliMap,.viliMapFrame.is-pseudo-fullscreen .viliMap){padding-top:clamp(72px,9vh,104px);padding-bottom:clamp(112px,17vh,180px)}@media (width<=700px) and (orientation:portrait){:-webkit-any(.viliMapFrame:fullscreen .viliFullscreenTopHud,.viliMapFrame:-webkit-full-screen .viliFullscreenTopHud,.viliMapFrame.is-pseudo-fullscreen .viliFullscreenTopHud){left:max(7px, env(safe-area-inset-left));right:max(7px, env(safe-area-inset-right));top:max(7px, env(safe-area-inset-top))}:is(.viliMapFrame:fullscreen .viliFullscreenTopHud,.viliMapFrame:fullscreen .viliFullscreenTopHud,.viliMapFrame.is-pseudo-fullscreen .viliFullscreenTopHud){left:max(7px, env(safe-area-inset-left));right:max(7px, env(safe-area-inset-right));top:max(7px, env(safe-area-inset-top))}.viliTopBarFullscreen{border-radius:13px;grid-template-columns:auto minmax(0,1fr);align-items:stretch;gap:5px!important;width:100%!important;max-width:none!important;padding:6px!important;display:grid!important}.viliTopBarFullscreen .viliTurnBadge{width:52px;min-width:52px;min-height:78px;padding:5px 4px}.viliTopBarFullscreen .viliStats{width:100%;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:4px!important}.viliTopBarFullscreen .viliStat{width:100%;min-width:0;min-height:36px;padding:4px 5px}.viliTopBarFullscreen .viliStat svg{width:14px;height:14px}.viliTopBarFullscreen .viliStat strong{font-size:.76rem}.viliTopBarFullscreen .viliStat span{font-size:.52rem}:-webkit-any(.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame:-webkit-full-screen .viliMapDetailDock,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock){left:max(7px, env(safe-area-inset-left))!important;width:31%!important}:is(.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock){left:max(7px, env(safe-area-inset-left))!important;width:31%!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsBottomDock,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock){width:36%!important}:is(.viliMapFrame:fullscreen .viliTileActionsBottomDock,.viliMapFrame:fullscreen .viliTileActionsBottomDock,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock){width:36%!important}:-webkit-any(.viliMapFrame:fullscreen .viliMapEndTurn,.viliMapFrame:-webkit-full-screen .viliMapEndTurn,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn){right:max(7px, env(safe-area-inset-right))!important;width:27%!important}:is(.viliMapFrame:fullscreen .viliMapEndTurn,.viliMapFrame:fullscreen .viliMapEndTurn,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn){right:max(7px, env(safe-area-inset-right))!important;width:27%!important}:-webkit-any(.viliMapFrame:fullscreen .viliMapDetailDock .viliContextPanel,.viliMapFrame:-webkit-full-screen .viliMapDetailDock .viliContextPanel,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock .viliContextPanel){max-height:156px;padding:8px;overflow:auto}:is(.viliMapFrame:fullscreen .viliMapDetailDock .viliContextPanel,.viliMapFrame:fullscreen .viliMapDetailDock .viliContextPanel,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock .viliContextPanel){max-height:156px;padding:8px;overflow:auto}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionsDock,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock .viliTileActionsDock,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileActionsDock){transform:scale(.96)!important}:is(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionsDock,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionsDock,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileActionsDock){transform:scale(.96)!important}:-webkit-any(.viliMapFrame:fullscreen .viliMapEndTurn button,.viliMapFrame:-webkit-full-screen .viliMapEndTurn button,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn button){white-space:normal;width:100%;min-height:58px;padding:8px 6px;font-size:.72rem;min-width:0!important}:is(.viliMapFrame:fullscreen .viliMapEndTurn button,.viliMapFrame:fullscreen .viliMapEndTurn button,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn button){white-space:normal;width:100%;min-height:58px;padding:8px 6px;font-size:.72rem;min-width:0!important}:-webkit-any(.viliMapFrame:fullscreen .viliMap,.viliMapFrame:-webkit-full-screen .viliMap,.viliMapFrame.is-pseudo-fullscreen .viliMap){padding-top:92px;padding-bottom:168px}:is(.viliMapFrame:fullscreen .viliMap,.viliMapFrame:fullscreen .viliMap,.viliMapFrame.is-pseudo-fullscreen .viliMap){padding-top:92px;padding-bottom:168px}}@media (width<=420px) and (orientation:portrait){:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsBottomDock,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock){left:50%!important;bottom:calc(78px + env(safe-area-inset-bottom))!important;width:60%!important}:is(.viliMapFrame:fullscreen .viliTileActionsBottomDock,.viliMapFrame:fullscreen .viliTileActionsBottomDock,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock){left:50%!important;bottom:calc(78px + env(safe-area-inset-bottom))!important;width:60%!important}:-webkit-any(.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame:-webkit-full-screen .viliMapDetailDock,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock){bottom:max(7px, env(safe-area-inset-bottom))!important;width:55%!important}:is(.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock){bottom:max(7px, env(safe-area-inset-bottom))!important;width:55%!important}:-webkit-any(.viliMapFrame:fullscreen .viliMapEndTurn,.viliMapFrame:-webkit-full-screen .viliMapEndTurn,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn){bottom:max(7px, env(safe-area-inset-bottom))!important;width:38%!important}:is(.viliMapFrame:fullscreen .viliMapEndTurn,.viliMapFrame:fullscreen .viliMapEndTurn,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn){bottom:max(7px, env(safe-area-inset-bottom))!important;width:38%!important}:-webkit-any(.viliMapFrame:fullscreen .viliMapDetailDock .viliContextPanel,.viliMapFrame:-webkit-full-screen .viliMapDetailDock .viliContextPanel,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock .viliContextPanel){max-height:68px}:is(.viliMapFrame:fullscreen .viliMapDetailDock .viliContextPanel,.viliMapFrame:fullscreen .viliMapDetailDock .viliContextPanel,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock .viliContextPanel){max-height:68px}:-webkit-any(.viliMapFrame:fullscreen .viliMapEndTurn button,.viliMapFrame:-webkit-full-screen .viliMapEndTurn button,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn button){min-height:68px}:is(.viliMapFrame:fullscreen .viliMapEndTurn button,.viliMapFrame:fullscreen .viliMapEndTurn button,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn button){min-height:68px}:-webkit-any(.viliMapFrame:fullscreen .viliMap,.viliMapFrame:-webkit-full-screen .viliMap,.viliMapFrame.is-pseudo-fullscreen .viliMap){padding-bottom:188px}:is(.viliMapFrame:fullscreen .viliMap,.viliMapFrame:fullscreen .viliMap,.viliMapFrame.is-pseudo-fullscreen .viliMap){padding-bottom:188px}}@media (height<=520px) and (orientation:landscape){.viliTopBarFullscreen{padding:5px 7px!important}.viliTopBarFullscreen .viliTurnBadge,.viliTopBarFullscreen .viliStat{min-height:36px}:-webkit-any(.viliMapFrame:fullscreen .viliMapDetailDock .viliContextPanel,.viliMapFrame:-webkit-full-screen .viliMapDetailDock .viliContextPanel,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock .viliContextPanel){max-height:86px;overflow:auto}:is(.viliMapFrame:fullscreen .viliMapDetailDock .viliContextPanel,.viliMapFrame:fullscreen .viliMapDetailDock .viliContextPanel,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock .viliContextPanel){max-height:86px;overflow:auto}:-webkit-any(.viliMapFrame:fullscreen .viliMapEndTurn button,.viliMapFrame:-webkit-full-screen .viliMapEndTurn button,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn button){min-height:48px}:is(.viliMapFrame:fullscreen .viliMapEndTurn button,.viliMapFrame:fullscreen .viliMapEndTurn button,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn button){min-height:48px}:-webkit-any(.viliMapFrame:fullscreen .viliMap,.viliMapFrame:-webkit-full-screen .viliMap,.viliMapFrame.is-pseudo-fullscreen .viliMap){padding-top:58px;padding-bottom:94px}:is(.viliMapFrame:fullscreen .viliMap,.viliMapFrame:fullscreen .viliMap,.viliMapFrame.is-pseudo-fullscreen .viliMap){padding-top:58px;padding-bottom:94px}}:-webkit-any(.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame:-webkit-full-screen .viliMapDetailDock,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock){align-items:stretch!important;min-height:clamp(118px,15vh,170px)!important;display:flex!important}:is(.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock){align-items:stretch!important;min-height:clamp(118px,15vh,170px)!important;display:flex!important}:-webkit-any(.viliMapFrame:fullscreen .viliMapDetailDock>*,.viliMapFrame:-webkit-full-screen .viliMapDetailDock>*,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock>*){width:100%!important;min-height:100%!important}:is(.viliMapFrame:fullscreen .viliMapDetailDock>*,.viliMapFrame:fullscreen .viliMapDetailDock>*,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock>*){width:100%!important;min-height:100%!important}:-webkit-any(.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame:-webkit-full-screen .viliMapDetailDock,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock){font-size:clamp(1rem,1.35vw,1.28rem)!important}:is(.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock){font-size:clamp(1rem,1.35vw,1.28rem)!important}:-webkit-any(.viliMapFrame:fullscreen .viliMapDetailDock button,.viliMapFrame:-webkit-full-screen .viliMapDetailDock button,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock button){min-width:44px!important;min-height:44px!important;font-size:inherit!important}:is(.viliMapFrame:fullscreen .viliMapDetailDock button,.viliMapFrame:fullscreen .viliMapDetailDock button,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock button){min-width:44px!important;min-height:44px!important;font-size:inherit!important}:-webkit-any(.viliMapFrame:fullscreen .viliMapDetailDock svg,.viliMapFrame:-webkit-full-screen .viliMapDetailDock svg,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock svg){width:clamp(18px,1.5vw,24px)!important;height:clamp(18px,1.5vw,24px)!important}:is(.viliMapFrame:fullscreen .viliMapDetailDock svg,.viliMapFrame:fullscreen .viliMapDetailDock svg,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock svg){width:clamp(18px,1.5vw,24px)!important;height:clamp(18px,1.5vw,24px)!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionsDock,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock .viliTileActionsDock,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileActionsDock){border-radius:clamp(15px,1.3vw,20px)!important;gap:clamp(8px,.8vw,11px)!important;width:max-content!important;max-width:100%!important;padding:clamp(10px,1vw,14px)!important;transform:none!important}:is(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionsDock,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionsDock,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileActionsDock){border-radius:clamp(15px,1.3vw,20px)!important;gap:clamp(8px,.8vw,11px)!important;width:max-content!important;max-width:100%!important;padding:clamp(10px,1vw,14px)!important;transform:none!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileMainGrid,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileBuildGrid,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock .viliTileMainGrid,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock .viliTileBuildGrid,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileMainGrid,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileBuildGrid){grid-template-columns:repeat(3,clamp(62px,5vw,78px))!important;gap:clamp(7px,.7vw,10px)!important}:is(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileMainGrid,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileBuildGrid,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileMainGrid,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileBuildGrid,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileMainGrid,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileBuildGrid){grid-template-columns:repeat(3,clamp(62px,5vw,78px))!important;gap:clamp(7px,.7vw,10px)!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionButton,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock .viliTileActionButton,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileActionButton){border-radius:clamp(13px,1vw,17px)!important;width:clamp(62px,5vw,78px)!important;min-width:clamp(62px,5vw,78px)!important;height:clamp(62px,5vw,78px)!important;min-height:clamp(62px,5vw,78px)!important}:is(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionButton,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionButton,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileActionButton){border-radius:clamp(13px,1vw,17px)!important;width:clamp(62px,5vw,78px)!important;min-width:clamp(62px,5vw,78px)!important;height:clamp(62px,5vw,78px)!important;min-height:clamp(62px,5vw,78px)!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionIcon,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock .viliTileActionIcon,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileActionIcon){border-radius:clamp(10px,.9vw,14px)!important;width:clamp(44px,3.6vw,56px)!important;height:clamp(44px,3.6vw,56px)!important}:is(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionIcon,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionIcon,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileActionIcon){border-radius:clamp(10px,.9vw,14px)!important;width:clamp(44px,3.6vw,56px)!important;height:clamp(44px,3.6vw,56px)!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionIcon>svg,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock .viliTileActionIcon>svg,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileActionIcon>svg){width:clamp(25px,2vw,32px)!important;height:clamp(25px,2vw,32px)!important}:is(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionIcon>svg,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionIcon>svg,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileActionIcon>svg){width:clamp(25px,2vw,32px)!important;height:clamp(25px,2vw,32px)!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileStepGrid,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock .viliTileStepGrid,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileStepGrid){grid-template-columns:repeat(3,clamp(60px,4.7vw,74px))!important;gap:clamp(7px,.7vw,10px)!important}:is(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileStepGrid,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileStepGrid,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileStepGrid){grid-template-columns:repeat(3,clamp(60px,4.7vw,74px))!important;gap:clamp(7px,.7vw,10px)!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileStepGrid .viliTileActionButton,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock .viliTileStepGrid .viliTileActionButton,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileStepGrid .viliTileActionButton){width:clamp(60px,4.7vw,74px)!important;min-width:clamp(60px,4.7vw,74px)!important;height:clamp(60px,4.7vw,74px)!important;min-height:clamp(60px,4.7vw,74px)!important}:is(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileStepGrid .viliTileActionButton,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileStepGrid .viliTileActionButton,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileStepGrid .viliTileActionButton){width:clamp(60px,4.7vw,74px)!important;min-width:clamp(60px,4.7vw,74px)!important;height:clamp(60px,4.7vw,74px)!important;min-height:clamp(60px,4.7vw,74px)!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionTool,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock .viliTileActionTool,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileActionTool){width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important}:is(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionTool,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionTool,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileActionTool){width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionTool svg,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock .viliTileActionTool svg,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileActionTool svg){width:21px!important;height:21px!important}:is(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionTool svg,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionTool svg,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileActionTool svg){width:21px!important;height:21px!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionCost,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock .viliTileActionCost,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileActionCost,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileUpgradeBadge,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock .viliTileUpgradeBadge,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileUpgradeBadge){min-height:20px!important;padding:2px 5px!important;font-size:.68rem!important}:is(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionCost,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionCost,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileActionCost,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileUpgradeBadge,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileUpgradeBadge,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileUpgradeBadge){min-height:20px!important;padding:2px 5px!important;font-size:.68rem!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionCost strong,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock .viliTileActionCost strong,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileActionCost strong,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileUpgradeBadge strong,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock .viliTileUpgradeBadge strong,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileUpgradeBadge strong){font-size:.68rem!important}:is(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionCost strong,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionCost strong,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileActionCost strong,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileUpgradeBadge strong,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileUpgradeBadge strong,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileUpgradeBadge strong){font-size:.68rem!important}:-webkit-any(.viliMapFrame:fullscreen .viliMapEndTurn,.viliMapFrame:-webkit-full-screen .viliMapEndTurn,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn){align-items:stretch!important}:is(.viliMapFrame:fullscreen .viliMapEndTurn,.viliMapFrame:fullscreen .viliMapEndTurn,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn){align-items:stretch!important}:-webkit-any(.viliMapFrame:fullscreen .viliMapEndTurn button,.viliMapFrame:-webkit-full-screen .viliMapEndTurn button,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn button){border-radius:clamp(16px,1.5vw,22px)!important;width:100%!important;max-width:360px!important;min-height:clamp(88px,11vh,132px)!important;padding:clamp(18px,2vw,28px)!important;font-size:clamp(1.05rem,1.55vw,1.42rem)!important;font-weight:900!important}:is(.viliMapFrame:fullscreen .viliMapEndTurn button,.viliMapFrame:fullscreen .viliMapEndTurn button,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn button){border-radius:clamp(16px,1.5vw,22px)!important;width:100%!important;max-width:360px!important;min-height:clamp(88px,11vh,132px)!important;padding:clamp(18px,2vw,28px)!important;font-size:clamp(1.05rem,1.55vw,1.42rem)!important;font-weight:900!important}:-webkit-any(.viliMapFrame:fullscreen .viliMap,.viliMapFrame:-webkit-full-screen .viliMap,.viliMapFrame.is-pseudo-fullscreen .viliMap){padding-bottom:clamp(160px,22vh,230px)!important}:is(.viliMapFrame:fullscreen .viliMap,.viliMapFrame:fullscreen .viliMap,.viliMapFrame.is-pseudo-fullscreen .viliMap){padding-bottom:clamp(160px,22vh,230px)!important}@media (width<=700px) and (orientation:portrait){:-webkit-any(.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame:-webkit-full-screen .viliMapDetailDock,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock){font-size:.88rem!important}:is(.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock){font-size:.88rem!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionsDock,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock .viliTileActionsDock,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileActionsDock){padding:7px!important;transform:none!important}:is(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionsDock,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionsDock,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileActionsDock){padding:7px!important;transform:none!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileMainGrid,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileBuildGrid,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock .viliTileMainGrid,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock .viliTileBuildGrid,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileMainGrid,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileBuildGrid){grid-template-columns:repeat(2,56px)!important;gap:6px!important}:is(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileMainGrid,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileBuildGrid,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileMainGrid,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileBuildGrid,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileMainGrid,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileBuildGrid){grid-template-columns:repeat(2,56px)!important;gap:6px!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionButton,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock .viliTileActionButton,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileActionButton){width:56px!important;min-width:56px!important;height:56px!important;min-height:56px!important}:is(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionButton,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionButton,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileActionButton){width:56px!important;min-width:56px!important;height:56px!important;min-height:56px!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileStepGrid,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock .viliTileStepGrid,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileStepGrid){grid-template-columns:repeat(3,54px)!important}:is(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileStepGrid,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileStepGrid,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileStepGrid){grid-template-columns:repeat(3,54px)!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileStepGrid .viliTileActionButton,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock .viliTileStepGrid .viliTileActionButton,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileStepGrid .viliTileActionButton){width:54px!important;min-width:54px!important;height:54px!important;min-height:54px!important}:is(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileStepGrid .viliTileActionButton,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileStepGrid .viliTileActionButton,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileStepGrid .viliTileActionButton){width:54px!important;min-width:54px!important;height:54px!important;min-height:54px!important}:-webkit-any(.viliMapFrame:fullscreen .viliMapEndTurn button,.viliMapFrame:-webkit-full-screen .viliMapEndTurn button,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn button){min-height:72px!important;font-size:.82rem!important}:is(.viliMapFrame:fullscreen .viliMapEndTurn button,.viliMapFrame:fullscreen .viliMapEndTurn button,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn button){min-height:72px!important;font-size:.82rem!important}}@media (width>=800px) and (height>=600px){:-webkit-any(.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame:-webkit-full-screen .viliMapDetailDock,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock){font-size:clamp(1.05rem,1.25vw,1.32rem)!important}:is(.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock){font-size:clamp(1.05rem,1.25vw,1.32rem)!important}:-webkit-any(.viliMapFrame:fullscreen .viliMapDetailDock strong,.viliMapFrame:-webkit-full-screen .viliMapDetailDock strong,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock strong){font-size:1.08em!important}:is(.viliMapFrame:fullscreen .viliMapDetailDock strong,.viliMapFrame:fullscreen .viliMapDetailDock strong,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock strong){font-size:1.08em!important}:-webkit-any(.viliMapFrame:fullscreen .viliMapDetailDock small,.viliMapFrame:fullscreen .viliMapDetailDock span,.viliMapFrame:-webkit-full-screen .viliMapDetailDock small,.viliMapFrame:-webkit-full-screen .viliMapDetailDock span,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock small,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock span){font-size:.94em}:is(.viliMapFrame:fullscreen .viliMapDetailDock small,.viliMapFrame:fullscreen .viliMapDetailDock span,.viliMapFrame:fullscreen .viliMapDetailDock small,.viliMapFrame:fullscreen .viliMapDetailDock span,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock small,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock span){font-size:.94em}:-webkit-any(.viliMapFrame:fullscreen .viliMapEndTurn button,.viliMapFrame:-webkit-full-screen .viliMapEndTurn button,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn button){font-size:clamp(1.12rem,1.45vw,1.5rem)!important}:is(.viliMapFrame:fullscreen .viliMapEndTurn button,.viliMapFrame:fullscreen .viliMapEndTurn button,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn button){font-size:clamp(1.12rem,1.45vw,1.5rem)!important}.viliTopBarFullscreen .viliTurnBadge strong{font-size:clamp(1.08rem,1.45vw,1.34rem)!important}.viliTopBarFullscreen .viliStat strong{font-size:clamp(.92rem,1.12vw,1.14rem)!important}.viliTopBarFullscreen .viliStat span{font-size:clamp(.62rem,.82vw,.78rem)!important}}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsObject .viliTileActionsDock,.viliMapFrame:-webkit-full-screen .viliTileActionsObject .viliTileActionsDock,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileActionsDock){border-radius:16px!important;gap:8px!important;padding:9px!important;transform:translate(-50%)!important}:is(.viliMapFrame:fullscreen .viliTileActionsObject .viliTileActionsDock,.viliMapFrame:fullscreen .viliTileActionsObject .viliTileActionsDock,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileActionsDock){border-radius:16px!important;gap:8px!important;padding:9px!important;transform:translate(-50%)!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsObject .viliTileMainGrid,.viliMapFrame:fullscreen .viliTileActionsObject .viliTileBuildGrid,.viliMapFrame:-webkit-full-screen .viliTileActionsObject .viliTileMainGrid,.viliMapFrame:-webkit-full-screen .viliTileActionsObject .viliTileBuildGrid,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileMainGrid,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileBuildGrid){grid-template-columns:repeat(3,58px)!important;gap:7px!important}:is(.viliMapFrame:fullscreen .viliTileActionsObject .viliTileMainGrid,.viliMapFrame:fullscreen .viliTileActionsObject .viliTileBuildGrid,.viliMapFrame:fullscreen .viliTileActionsObject .viliTileMainGrid,.viliMapFrame:fullscreen .viliTileActionsObject .viliTileBuildGrid,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileMainGrid,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileBuildGrid){grid-template-columns:repeat(3,58px)!important;gap:7px!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsObject .viliTileActionButton,.viliMapFrame:-webkit-full-screen .viliTileActionsObject .viliTileActionButton,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileActionButton){border-radius:13px!important;width:58px!important;min-width:58px!important;height:58px!important;min-height:58px!important}:is(.viliMapFrame:fullscreen .viliTileActionsObject .viliTileActionButton,.viliMapFrame:fullscreen .viliTileActionsObject .viliTileActionButton,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileActionButton){border-radius:13px!important;width:58px!important;min-width:58px!important;height:58px!important;min-height:58px!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsObject .viliTileActionIcon,.viliMapFrame:-webkit-full-screen .viliTileActionsObject .viliTileActionIcon,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileActionIcon){width:41px!important;height:41px!important}:is(.viliMapFrame:fullscreen .viliTileActionsObject .viliTileActionIcon,.viliMapFrame:fullscreen .viliTileActionsObject .viliTileActionIcon,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileActionIcon){width:41px!important;height:41px!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsObject .viliTileActionIcon>svg,.viliMapFrame:-webkit-full-screen .viliTileActionsObject .viliTileActionIcon>svg,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileActionIcon>svg){width:25px!important;height:25px!important}:is(.viliMapFrame:fullscreen .viliTileActionsObject .viliTileActionIcon>svg,.viliMapFrame:fullscreen .viliTileActionsObject .viliTileActionIcon>svg,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileActionIcon>svg){width:25px!important;height:25px!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsObject .viliTileStepGrid,.viliMapFrame:-webkit-full-screen .viliTileActionsObject .viliTileStepGrid,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileStepGrid){grid-template-columns:repeat(3,56px)!important;gap:6px!important}:is(.viliMapFrame:fullscreen .viliTileActionsObject .viliTileStepGrid,.viliMapFrame:fullscreen .viliTileActionsObject .viliTileStepGrid,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileStepGrid){grid-template-columns:repeat(3,56px)!important;gap:6px!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsObject .viliTileStepGrid .viliTileActionButton,.viliMapFrame:-webkit-full-screen .viliTileActionsObject .viliTileStepGrid .viliTileActionButton,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileStepGrid .viliTileActionButton){width:56px!important;min-width:56px!important;height:56px!important;min-height:56px!important}:is(.viliMapFrame:fullscreen .viliTileActionsObject .viliTileStepGrid .viliTileActionButton,.viliMapFrame:fullscreen .viliTileActionsObject .viliTileStepGrid .viliTileActionButton,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileStepGrid .viliTileActionButton){width:56px!important;min-width:56px!important;height:56px!important;min-height:56px!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsObject .viliTileActionTool,.viliMapFrame:-webkit-full-screen .viliTileActionsObject .viliTileActionTool,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileActionTool){width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important}:is(.viliMapFrame:fullscreen .viliTileActionsObject .viliTileActionTool,.viliMapFrame:fullscreen .viliTileActionsObject .viliTileActionTool,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileActionTool){width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsObject .viliTileActionTool svg,.viliMapFrame:-webkit-full-screen .viliTileActionsObject .viliTileActionTool svg,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileActionTool svg){width:20px!important;height:20px!important}:is(.viliMapFrame:fullscreen .viliTileActionsObject .viliTileActionTool svg,.viliMapFrame:fullscreen .viliTileActionsObject .viliTileActionTool svg,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileActionTool svg){width:20px!important;height:20px!important}@media (width<=700px) and (orientation:portrait){:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsObject .viliTileMainGrid,.viliMapFrame:fullscreen .viliTileActionsObject .viliTileBuildGrid,.viliMapFrame:-webkit-full-screen .viliTileActionsObject .viliTileMainGrid,.viliMapFrame:-webkit-full-screen .viliTileActionsObject .viliTileBuildGrid,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileMainGrid,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileBuildGrid){grid-template-columns:repeat(3,52px)!important}:is(.viliMapFrame:fullscreen .viliTileActionsObject .viliTileMainGrid,.viliMapFrame:fullscreen .viliTileActionsObject .viliTileBuildGrid,.viliMapFrame:fullscreen .viliTileActionsObject .viliTileMainGrid,.viliMapFrame:fullscreen .viliTileActionsObject .viliTileBuildGrid,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileMainGrid,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileBuildGrid){grid-template-columns:repeat(3,52px)!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsObject .viliTileActionButton,.viliMapFrame:-webkit-full-screen .viliTileActionsObject .viliTileActionButton,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileActionButton){width:52px!important;min-width:52px!important;height:52px!important;min-height:52px!important}:is(.viliMapFrame:fullscreen .viliTileActionsObject .viliTileActionButton,.viliMapFrame:fullscreen .viliTileActionsObject .viliTileActionButton,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileActionButton){width:52px!important;min-width:52px!important;height:52px!important;min-height:52px!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsObject .viliTileStepGrid,.viliMapFrame:-webkit-full-screen .viliTileActionsObject .viliTileStepGrid,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileStepGrid){grid-template-columns:repeat(3,50px)!important}:is(.viliMapFrame:fullscreen .viliTileActionsObject .viliTileStepGrid,.viliMapFrame:fullscreen .viliTileActionsObject .viliTileStepGrid,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileStepGrid){grid-template-columns:repeat(3,50px)!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsObject .viliTileStepGrid .viliTileActionButton,.viliMapFrame:-webkit-full-screen .viliTileActionsObject .viliTileStepGrid .viliTileActionButton,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileStepGrid .viliTileActionButton){width:50px!important;min-width:50px!important;height:50px!important;min-height:50px!important}:is(.viliMapFrame:fullscreen .viliTileActionsObject .viliTileStepGrid .viliTileActionButton,.viliMapFrame:fullscreen .viliTileActionsObject .viliTileStepGrid .viliTileActionButton,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsObject .viliTileStepGrid .viliTileActionButton){width:50px!important;min-width:50px!important;height:50px!important;min-height:50px!important}:-webkit-any(.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame:-webkit-full-screen .viliMapDetailDock,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock){bottom:max(10px, env(safe-area-inset-bottom))!important;min-height:112px!important;max-height:148px!important}:is(.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock){bottom:max(10px, env(safe-area-inset-bottom))!important;min-height:112px!important;max-height:148px!important}:-webkit-any(.viliMapFrame:fullscreen .viliMapEndTurn,.viliMapFrame:-webkit-full-screen .viliMapEndTurn,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn){bottom:max(10px, env(safe-area-inset-bottom))!important;min-height:112px!important}:is(.viliMapFrame:fullscreen .viliMapEndTurn,.viliMapFrame:fullscreen .viliMapEndTurn,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn){bottom:max(10px, env(safe-area-inset-bottom))!important;min-height:112px!important}:-webkit-any(.viliMapFrame:fullscreen .viliMapEndTurn button,.viliMapFrame:-webkit-full-screen .viliMapEndTurn button,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn button){min-height:112px!important}:is(.viliMapFrame:fullscreen .viliMapEndTurn button,.viliMapFrame:fullscreen .viliMapEndTurn button,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn button){min-height:112px!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsBottomDock,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock){left:50%!important;bottom:calc(168px + env(safe-area-inset-bottom))!important;justify-content:center!important;width:min(72%,300px)!important;max-width:min(72%,300px)!important;display:flex!important;transform:translate(-50%)!important}:is(.viliMapFrame:fullscreen .viliTileActionsBottomDock,.viliMapFrame:fullscreen .viliTileActionsBottomDock,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock){left:50%!important;bottom:calc(168px + env(safe-area-inset-bottom))!important;justify-content:center!important;width:min(72%,300px)!important;max-width:min(72%,300px)!important;display:flex!important;transform:translate(-50%)!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionsDock,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock .viliTileActionsDock,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileActionsDock){max-width:100%!important}:is(.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionsDock,.viliMapFrame:fullscreen .viliTileActionsBottomDock .viliTileActionsDock,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock .viliTileActionsDock){max-width:100%!important}:-webkit-any(.viliMapFrame:fullscreen .viliMap,.viliMapFrame:-webkit-full-screen .viliMap,.viliMapFrame.is-pseudo-fullscreen .viliMap){padding-bottom:276px!important}:is(.viliMapFrame:fullscreen .viliMap,.viliMapFrame:fullscreen .viliMap,.viliMapFrame.is-pseudo-fullscreen .viliMap){padding-bottom:276px!important}}@media (width<=420px) and (orientation:portrait){:-webkit-any(.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame:-webkit-full-screen .viliMapDetailDock,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock){width:54%!important;min-height:104px!important;max-height:128px!important}:is(.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame:fullscreen .viliMapDetailDock,.viliMapFrame.is-pseudo-fullscreen .viliMapDetailDock){width:54%!important;min-height:104px!important;max-height:128px!important}:-webkit-any(.viliMapFrame:fullscreen .viliMapEndTurn,.viliMapFrame:-webkit-full-screen .viliMapEndTurn,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn){width:39%!important;min-height:104px!important}:is(.viliMapFrame:fullscreen .viliMapEndTurn,.viliMapFrame:fullscreen .viliMapEndTurn,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn){width:39%!important;min-height:104px!important}:-webkit-any(.viliMapFrame:fullscreen .viliMapEndTurn button,.viliMapFrame:-webkit-full-screen .viliMapEndTurn button,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn button){min-height:104px!important}:is(.viliMapFrame:fullscreen .viliMapEndTurn button,.viliMapFrame:fullscreen .viliMapEndTurn button,.viliMapFrame.is-pseudo-fullscreen .viliMapEndTurn button){min-height:104px!important}:-webkit-any(.viliMapFrame:fullscreen .viliTileActionsBottomDock,.viliMapFrame:-webkit-full-screen .viliTileActionsBottomDock,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock){bottom:calc(156px + env(safe-area-inset-bottom))!important;width:min(78%,300px)!important;max-width:min(78%,300px)!important}:is(.viliMapFrame:fullscreen .viliTileActionsBottomDock,.viliMapFrame:fullscreen .viliTileActionsBottomDock,.viliMapFrame.is-pseudo-fullscreen .viliTileActionsBottomDock){bottom:calc(156px + env(safe-area-inset-bottom))!important;width:min(78%,300px)!important;max-width:min(78%,300px)!important}:-webkit-any(.viliMapFrame:fullscreen .viliMap,.viliMapFrame:-webkit-full-screen .viliMap,.viliMapFrame.is-pseudo-fullscreen .viliMap){padding-bottom:262px!important}:is(.viliMapFrame:fullscreen .viliMap,.viliMapFrame:fullscreen .viliMap,.viliMapFrame.is-pseudo-fullscreen .viliMap){padding-bottom:262px!important}}:-webkit-any(.viliMapFrame:fullscreen>.viliOverlay,.viliMapFrame:fullscreen>.viliDialogOverlay,.viliMapFrame:fullscreen>.viliModalOverlay,.viliMapFrame:-webkit-full-screen>.viliOverlay,.viliMapFrame:-webkit-full-screen>.viliDialogOverlay,.viliMapFrame:-webkit-full-screen>.viliModalOverlay,.viliMapFrame.is-pseudo-fullscreen>.viliOverlay,.viliMapFrame.is-pseudo-fullscreen>.viliDialogOverlay,.viliMapFrame.is-pseudo-fullscreen>.viliModalOverlay),:-webkit-any(.viliMapFrame:fullscreen>[class*=Dialog],.viliMapFrame:fullscreen>[class*=dialog],.viliMapFrame:fullscreen>[class*=Panel],.viliMapFrame:fullscreen>[class*=panel],.viliMapFrame:-webkit-full-screen>[class*=Dialog],.viliMapFrame:-webkit-full-screen>[class*=dialog],.viliMapFrame:-webkit-full-screen>[class*=Panel],.viliMapFrame:-webkit-full-screen>[class*=panel],.viliMapFrame.is-pseudo-fullscreen>[class*=Dialog],.viliMapFrame.is-pseudo-fullscreen>[class*=dialog],.viliMapFrame.is-pseudo-fullscreen>[class*=Panel],.viliMapFrame.is-pseudo-fullscreen>[class*=panel]){z-index:2000!important}:is(.viliMapFrame:fullscreen>.viliOverlay,.viliMapFrame:fullscreen>.viliDialogOverlay,.viliMapFrame:fullscreen>.viliModalOverlay,.viliMapFrame:fullscreen>.viliOverlay,.viliMapFrame:fullscreen>.viliDialogOverlay,.viliMapFrame:fullscreen>.viliModalOverlay,.viliMapFrame.is-pseudo-fullscreen>.viliOverlay,.viliMapFrame.is-pseudo-fullscreen>.viliDialogOverlay,.viliMapFrame.is-pseudo-fullscreen>.viliModalOverlay),:is(.viliMapFrame:fullscreen>[class*=Dialog],.viliMapFrame:fullscreen>[class*=dialog],.viliMapFrame:fullscreen>[class*=Panel],.viliMapFrame:fullscreen>[class*=panel],.viliMapFrame:fullscreen>[class*=Dialog],.viliMapFrame:fullscreen>[class*=dialog],.viliMapFrame:fullscreen>[class*=Panel],.viliMapFrame:fullscreen>[class*=panel],.viliMapFrame.is-pseudo-fullscreen>[class*=Dialog],.viliMapFrame.is-pseudo-fullscreen>[class*=dialog],.viliMapFrame.is-pseudo-fullscreen>[class*=Panel],.viliMapFrame.is-pseudo-fullscreen>[class*=panel]){z-index:2000!important}.viliHex{transition:opacity .18s,filter .18s}.viliHex.viliFogExplored{filter:grayscale(.78)brightness(.52)saturate(.42);opacity:.78}.viliHex.viliFogExplored .viliTerrainGlyph,.viliHex.viliFogExplored .viliWaterGlyph,.viliHex.viliFogExplored .viliTileIcon,.viliHex.viliFogExplored .viliLevelText{opacity:.72}.viliHex.viliFogHidden .viliOwnershipBase,.viliHex.viliFogHidden .viliOwnership,.viliHex.viliFogHidden .viliTerrainGlyph,.viliHex.viliFogHidden .viliWaterGlyph,.viliHex.viliFogHidden .viliRiverMark,.viliHex.viliFogHidden .viliTileIcon,.viliHex.viliFogHidden .viliLevelText,.viliHex.viliFogHidden .viliCapitalIcon,.viliHex.viliFogHidden .viliArmyBadge,.viliHex.viliFogHidden .viliBarbarianBadge{display:none}.viliHex.viliFogHidden .viliTerrainShape{opacity:.98;fill:#090d12!important;stroke:#121923!important}.viliHex.viliFogHidden{cursor:default}.viliTechModal{flex-direction:column;width:min(1500px,96vw);max-width:1500px;height:min(920px,94vh);display:flex;overflow:hidden}.viliTechHeader{flex:none}.viliTechSummary>span{opacity:.8;align-items:center;gap:6px;font-size:12px;display:inline-flex}.viliTechSummaryUltimate{font-weight:700}.viliTechModal>.viliModalLead{flex:none;margin-bottom:12px}.viliTechUltimateHint,.viliTechMastery{border:1px solid color-mix(in srgb, currentColor 14%, transparent);background:color-mix(in srgb, currentColor 4%, transparent);border-radius:14px;flex:none;align-items:center;gap:14px;margin:0 0 12px;padding:13px 15px;display:flex}.viliTechUltimateHint>div,.viliTechMasteryBody{flex-direction:column;gap:3px;min-width:0;display:flex}.viliTechUltimateHint strong,.viliTechMasteryBody>strong{font-size:14px}.viliTechUltimateHint span,.viliTechMasteryBody p,.viliTechMasteryBody small{opacity:.72;margin:0;font-size:12px}.viliTechMasteryIcon{background:color-mix(in srgb, currentColor 8%, transparent);border-radius:12px;flex:0 0 42px;place-items:center;width:42px;height:42px;display:grid}.viliTechMasteryEyebrow{letter-spacing:.12em;opacity:.55;font-size:10px;font-weight:800}.viliTechMasteryButton{justify-content:center;align-items:center;gap:6px;min-width:160px;margin-left:auto;padding:10px 12px;display:inline-flex}.viliTechMasteryButton span{opacity:.7}.viliTechLegend{opacity:.7;flex-wrap:wrap;flex:none;gap:8px 14px;padding:0 2px 10px;font-size:11px;display:flex}.viliTechLegend>span{align-items:center;gap:5px;display:inline-flex}.viliTechLegendDot{border:1px solid;border-radius:999px;width:8px;height:8px}.viliTechLegendDot.available{opacity:.8}.viliTechLegendDot.researched{background:currentColor}.viliTechTree{scrollbar-gutter:stable both-edges;flex:auto;min-height:0;padding:2px 2px 18px;overflow:auto}.viliTechBranch{border:1px solid color-mix(in srgb, currentColor 12%, transparent);background:color-mix(in srgb, currentColor 2.5%, transparent);border-radius:16px;margin-bottom:16px;padding:14px}.viliTechBranchHeader{align-items:center;gap:10px;margin-bottom:12px;display:flex}.viliTechBranchIcon{background:color-mix(in srgb, currentColor 7%, transparent);border-radius:10px;flex:0 0 34px;place-items:center;width:34px;height:34px;display:grid}.viliTechBranchHeader>div:last-child{flex-direction:column;gap:2px;display:flex}.viliTechBranchHeader strong{font-size:15px}.viliTechBranchHeader small{opacity:.6;font-size:11px}.viliTechBranchTrack{grid-template-columns:repeat(7,minmax(190px,1fr));align-items:stretch;gap:10px;min-width:1390px;display:grid}.viliTechTierColumn{flex-direction:column;gap:7px;min-width:0;display:flex}.viliTechTierColumnLabel{letter-spacing:.11em;text-transform:uppercase;opacity:.42;padding-left:3px;font-size:9px;font-weight:800}.viliTechTierNodes{flex-direction:column;gap:8px;height:100%;display:flex}.viliTechNode{border:1px solid color-mix(in srgb, currentColor 13%, transparent);background:color-mix(in srgb, currentColor 3%, transparent);border-radius:13px;flex-direction:column;flex:auto;gap:8px;min-height:205px;padding:12px;transition:transform .15s,border-color .15s,background .15s,opacity .15s;display:flex;position:relative}.viliTechNode.available:not(.researched):not(.locked){border-color:color-mix(in srgb, currentColor 26%, transparent);background:color-mix(in srgb, currentColor 5%, transparent)}.viliTechNode.available:not(.researched):not(.locked):hover{border-color:color-mix(in srgb, currentColor 40%, transparent);transform:translateY(-2px)}.viliTechNode.researched{background:color-mix(in srgb, currentColor 7%, transparent);border-color:color-mix(in srgb, currentColor 23%, transparent)}.viliTechNode.ultimate{border-width:2px}.viliTechNodeTop{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.viliTechNodeBadges{flex-wrap:wrap;gap:5px;display:flex}.viliTechTier,.viliTechBadge{letter-spacing:.06em;text-transform:uppercase;background:color-mix(in srgb, currentColor 7%, transparent);border-radius:999px;align-items:center;gap:4px;width:fit-content;padding:3px 6px;font-size:9px;font-weight:800;display:inline-flex}.viliTechBadge.ultimate{background:color-mix(in srgb, currentColor 12%, transparent)}.viliTechChoiceLabel{letter-spacing:.06em;text-transform:uppercase;opacity:.5;font-size:9px;font-weight:700}.viliTechNodeName{font-size:14px;line-height:1.15}.viliTechNode p{opacity:.74;margin:0;font-size:11px;line-height:1.45}.viliTechRequires,.viliTechLockReason,.viliTechSoftWarning{font-size:10px;line-height:1.35;display:block}.viliTechRequires{opacity:.52}.viliTechLockReason,.viliTechSoftWarning{opacity:.72;font-weight:700}.viliTechNode button{justify-content:center;align-items:center;gap:6px;width:100%;min-height:34px;margin-top:auto;display:inline-flex}.viliTechDone,.viliTechLocked{flex:none}@media (width<=900px){.viliTechModal{border-radius:0;width:100vw;max-width:none;height:100dvh;max-height:none}.viliTechMastery,.viliTechUltimateHint{align-items:flex-start}.viliTechMastery{flex-wrap:wrap}.viliTechMasteryButton{width:100%;margin-left:0}.viliTechTree{overflow-x:hidden}.viliTechBranch{padding:11px}.viliTechBranchTrack{flex-direction:column;gap:11px;min-width:0;display:flex}.viliTechTierColumn{display:block}.viliTechTierColumnLabel{margin-bottom:6px;display:block}.viliTechTierNodes{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.viliTechNode{min-height:190px}}@media (width<=560px){.viliTechModal{padding-inline:12px}.viliTechSummary,.viliTechLegend{gap:6px 10px}.viliTechTierNodes{grid-template-columns:1fr}.viliTechNode{min-height:0}.viliTechMasteryBody small{line-height:1.4}}.viliEmpireModal{width:min(1180px,100vw - 28px);max-height:min(92vh,980px);overflow:auto}.viliEmpireHeader small,.viliEmpireSectionTitle small{opacity:.58}.viliVictoryRace{background:#ffffff06;border:1px solid #ffffff14;border-radius:15px;margin:14px 0 18px;padding:14px}.viliEmpireSectionTitle{justify-content:space-between;align-items:center;gap:18px;margin-bottom:11px;display:flex}.viliEmpireSectionTitle>div{align-items:center;gap:8px;display:flex}.viliVictoryRaceGrid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px;display:grid}.viliVictoryRaceCard{background:#00000021;border:1px solid #ffffff12;border-radius:12px;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:8px;min-height:64px;padding:9px 10px;display:grid}.viliVictoryRaceCard.you{border-color:color-mix(in srgb, var(--accent,#8aa4ff) 50%, transparent)}.viliVictoryRaceRank{opacity:.46;font-size:11px}.viliCivDot{border-radius:50%;width:10px;height:10px;box-shadow:0 0 0 3px #ffffff0d}.viliVictoryRaceIdentity{flex-direction:column;gap:3px;min-width:0;display:flex}.viliVictoryRaceIdentity strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.viliVictoryRaceIdentity span{opacity:.62;align-items:center;gap:4px;font-size:11px;display:flex}.viliVictoryRaceProgress{flex-direction:column;align-items:flex-end;gap:5px;width:58px;display:flex}.viliVictoryRaceProgress strong{font-size:12px}.viliVictoryRaceProgress i,.viliVictoryMiniPath i{background:#ffffff14;border-radius:999px;width:100%;height:4px;display:block;overflow:hidden}.viliVictoryRaceProgress i b,.viliVictoryMiniPath i b{border-radius:inherit;background:currentColor;height:100%;display:block}.viliEmpireDashboard{gap:12px;display:grid}.viliEmpireCard{background:#ffffff05;border:1px solid #ffffff16;border-radius:15px;padding:14px}.viliEmpireCard.defeated{opacity:.48;filter:grayscale(.7)}.viliEmpireCardTop{justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px;display:flex}.viliEmpireIdentity{align-items:center;gap:10px;min-width:0;display:flex}.viliEmpireIdentity>div{flex-direction:column;gap:2px;min-width:0;display:flex}.viliEmpireIdentity small{opacity:.56}.viliEmpireBestPath{background:#ffffff06;border:1px solid #ffffff14;border-radius:11px;align-items:center;gap:9px;padding:8px 10px;display:flex}.viliEmpireBestPath.qualified{border-color:#ffffff38}.viliEmpireBestPath>span{flex-direction:column;gap:1px;display:flex}.viliEmpireBestPath small{text-transform:uppercase;letter-spacing:.08em;opacity:.48;font-size:9px}.viliEmpireBestPath>b{margin-left:6px;font-size:17px}.viliEmpireStatsGrid{grid-template-columns:repeat(8,minmax(82px,1fr));gap:7px;display:grid}.viliEmpireStatsGrid>div{background:#0000001f;border-radius:10px;flex-direction:column;justify-content:center;gap:2px;min-height:62px;padding:8px 9px;display:flex}.viliEmpireStatsGrid span{text-transform:uppercase;letter-spacing:.06em;opacity:.45;font-size:9px}.viliEmpireStatsGrid strong{font-size:15px}.viliEmpireStatsGrid small{opacity:.56;font-size:10px}.viliEmpireStatsGrid small.positive{opacity:.78}.viliEmpireStatsGrid small.negative{opacity:.9}.viliVictoryPathStrip{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-top:9px;display:grid}.viliVictoryMiniPath{opacity:.65;border:1px solid #ffffff0e;border-radius:9px;padding:7px 8px}.viliVictoryMiniPath.leading{opacity:1;background:#ffffff06;border-color:#ffffff29}.viliVictoryMiniPath>div{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:5px;margin-bottom:5px;font-size:10px;display:grid}.viliVictoryMiniPath span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.viliVictoryDetails{background:#0000001a;border-radius:10px;margin-top:9px;padding:9px 10px}.viliVictoryDetailsHeader{justify-content:space-between;align-items:center;gap:12px;margin-bottom:7px;display:flex}.viliVictoryDetailsHeader>span{align-items:center;gap:6px;font-size:11px;font-weight:700;display:flex}.viliVictoryDetailsHeader small{opacity:.5}.viliVictoryConditions{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:6px;display:grid}.viliVictoryConditions>div{opacity:.6;background:#ffffff06;border-radius:7px;justify-content:space-between;align-items:center;gap:8px;padding:6px 7px;font-size:10px;display:flex}.viliVictoryConditions>div.met{opacity:1}.viliVictoryConditions span{min-width:0}.viliVictoryConditions strong{flex:none}@media (width<=980px){.viliEmpireStatsGrid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=720px){.viliEmpireSectionTitle,.viliEmpireCardTop,.viliVictoryDetailsHeader{flex-direction:column;align-items:flex-start}.viliEmpireBestPath{width:100%}.viliEmpireBestPath>b{margin-left:auto}.viliEmpireStatsGrid,.viliVictoryPathStrip{grid-template-columns:repeat(2,minmax(0,1fr))}}.viliPathLeaders{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-bottom:10px;display:grid}.viliPathLeaders>div{background:#ffffff08;border-radius:10px;align-items:center;gap:8px;padding:8px 9px;display:flex}.viliPathLeaders>div>span{flex-direction:column;flex:1;min-width:0;display:flex}.viliPathLeaders small{text-transform:uppercase;letter-spacing:.05em;opacity:.46;font-size:9px}.viliPathLeaders strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.viliPathLeaders b{font-size:11px}@media (width<=900px){.viliPathLeaders{grid-template-columns:repeat(2,minmax(0,1fr))}}.viliCivCountPicker{background:#ffffff06;border:1px solid #ffffff17;border-radius:16px;margin-top:18px;padding:16px}.viliCivCountTitle{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:12px;display:flex}.viliCivCountTitle>div{flex-direction:column;gap:3px;display:flex}.viliCivCountTitle span{letter-spacing:.16em;opacity:.58;font-size:10px}.viliCivCountTitle strong{font-size:14px}.viliCivCountTitle>small{opacity:.55;text-align:right}.viliCivCountOptions{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.viliCivCountOptions button{min-height:72px;color:inherit;text-align:left;background:#ffffff06;border:1px solid #ffffff17;border-radius:13px;align-items:center;gap:12px;padding:12px 14px;transition:transform .15s,border-color .15s,background .15s;display:flex}.viliCivCountOptions button:hover{border-color:#ffffff2e;transform:translateY(-1px)}.viliCivCountOptions button.selected{border-color:var(--accent,#8aa4ff);background:color-mix(in srgb, var(--accent,#8aa4ff) 12%, transparent)}.viliCivCountOptions b{background:#ffffff12;border-radius:12px;flex:0 0 42px;place-items:center;width:42px;height:42px;font-size:21px;display:grid}.viliCivCountOptions button.selected b{background:color-mix(in srgb, var(--accent,#8aa4ff) 22%, #ffffff0d)}.viliCivCountOptions span{flex-direction:column;gap:2px;min-width:0;display:flex}.viliCivCountOptions small{opacity:.58}@media (width<=760px){.viliCivCountTitle{flex-direction:column;align-items:flex-start}.viliCivCountTitle>small{text-align:left}.viliCivCountOptions{grid-template-columns:1fr}}.viliGameOver{text-align:center;width:min(620px,100vw - 28px)}.viliGameOverIcon{background:#ffffff0a;border:1px solid #ffffff1f;border-radius:18px;place-items:center;width:62px;height:62px;margin:0 auto 12px;display:grid}.viliGameOverReason{opacity:.66;max-width:520px;margin:8px auto 16px;line-height:1.5}.viliGameOverWinner{text-align:left;background:#ffffff06;border:1px solid #ffffff17;border-radius:12px;align-items:center;gap:10px;max-width:470px;margin:0 auto 16px;padding:10px 12px;display:flex}.viliGameOverWinner>div{flex-direction:column;flex:1;display:flex}.viliGameOverWinner small,.viliBestScore{opacity:.55}.viliGameOverWinner b{font-size:12px}.viliGameOver .viliScore{margin-top:4px}:root{--radius:22px;--max:1180px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.navWrap{position:relative}.navLogo{justify-content:center;align-items:center;width:38px;height:38px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.navLogo img{object-fit:contain;width:42px;height:42px;transition:transform .2s;display:block}.navLogo:hover img{transform:scale(1.08)}:root[data-theme=dark]{--bg:#090a0d;--surface:#111319;--surface2:#171a22;--text:#f5f7fb;--muted:#a4adbd;--border:#252a35;--accent:#8d8cff;--accent2:#5eead4;--glow:#8d8cff2e}:root[data-theme=light]{--bg:#e1e3e8;--surface:#eceef2;--surface2:#d5d9e1;--text:#15171d;--muted:#39404c;--border:#bcc2cc;--accent:#4d49cf;--accent2:#07766c;--glow:#5b57ee2e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(circle at 20% -10%, var(--glow), transparent 30%), var(--bg);min-height:100vh;color:var(--text);margin:0;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}header{z-index:20;background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid color-mix(in srgb, var(--border) 75%, transparent);position:sticky;top:0}.navWrap{max-width:var(--max);align-items:center;gap:24px;margin:auto;padding:16px 24px;display:flex}.brand{letter-spacing:.14em;font-weight:900}.brand span{color:var(--accent2)}nav{gap:8px;margin-left:auto;display:flex}nav a{color:var(--muted);border-radius:12px;padding:8px 12px;font-size:.94rem}nav a.active,nav a:hover{color:var(--text);background:var(--surface2)}.themeBtn{border:1px solid var(--border);background:var(--surface);width:42px;height:42px;color:var(--text);cursor:pointer;border-radius:14px;place-items:center;display:grid}.page{max-width:var(--max);margin:auto;padding:0 24px 90px}.hero{max-width:880px;padding:112px 0 76px}.hero h1{letter-spacing:-.065em;margin:12px 0 28px;font-size:clamp(3.2rem,8vw,7rem);line-height:.94}.cvHero h1{font-size:clamp(3rem,7vw,6rem)}.heroText{max-width:760px;color:var(--muted);font-size:clamp(1.1rem,2vw,1.45rem)}.eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--accent2);font-size:.78rem;font-weight:800}.heroActions{flex-wrap:wrap;gap:12px;margin-top:34px;display:flex}.primary,.secondary{border-radius:14px;justify-content:center;align-items:center;padding:13px 18px;font-weight:700;display:inline-flex}.primary{background:var(--text);color:var(--bg)}.secondary{background:var(--surface);border:1px solid var(--border);color:var(--text)}.section{padding:46px 0}.section>h2{letter-spacing:-.045em;margin:8px 0 26px;font-size:clamp(2rem,4vw,3.4rem)}.sectionLead{color:var(--accent2);margin-top:-10px;font-size:1.5rem}.grid2,.grid3{gap:16px;display:grid}.grid2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid3{grid-template-columns:repeat(3,minmax(0,1fr))}.card,.accordion{background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 92%, white 0%), var(--surface));border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 14px 50px #00000014}.card{padding:24px}.card h3{margin:6px 0 10px;font-size:1.25rem}.card p,.wideText,.accordionBody p{color:var(--muted)}.cardIndex{color:var(--accent);font-size:.78rem;font-weight:800}.linkCard{justify-content:space-between;align-items:center;min-height:150px;transition:transform .2s,border-color .2s;display:flex}.linkCard:hover{border-color:var(--accent);transform:translateY(-3px)}.chips{flex-wrap:wrap;gap:9px;display:flex}.chips span{border:1px solid var(--border);background:var(--surface2);color:var(--muted);border-radius:999px;padding:7px 10px;font-size:.9rem}.accordionBody>.chips:first-child{padding-top:10px}.accordionStack{gap:12px;display:grid}.accordion{padding:0;overflow:hidden}.accordion button{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;padding:20px 22px;display:flex}.accordion button span{gap:3px;display:grid}.accordion button small{color:var(--muted);font-weight:500}.accordion button svg{transition:transform .2s}.accordion.open button svg{transform:rotate(180deg)}.accordionBody{border-top:1px solid var(--border);padding:0 22px 22px}.lead{font-size:1.08rem;color:var(--text)!important}.cleanList{gap:12px;margin:0;padding-left:20px;display:grid}.contactCard{justify-content:space-between;align-items:center;gap:24px;display:flex}.emptyHero{flex-direction:column;justify-content:center;min-height:65vh;display:flex}footer{max-width:var(--max);border-top:1px solid var(--border);color:var(--muted);justify-content:space-between;margin:auto;padding:34px 24px 50px;display:flex}footer>div{flex-wrap:wrap;gap:18px;display:flex}footer strong{color:var(--text)}.featuredLink{grid-column:1/-1}.toolCard{flex-direction:column;gap:18px;display:flex}.toolCard h2{margin:4px 0 0;font-size:1.8rem}.toolValue,.toolResult{background:var(--surface2);border:1px solid var(--border);overflow-wrap:anywhere;border-radius:14px;padding:16px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.toolActions{flex-wrap:wrap;gap:10px;display:flex}.toolButton{cursor:pointer;border:0;align-self:flex-start;gap:8px}.toolInput{background:var(--surface2);width:100%;color:var(--text);border:1px solid var(--border);font:inherit;border-radius:14px;padding:14px 16px}.toolWide{grid-column:1/-1}.jsonToolkit{gap:16px}.jsonToolkitHeader{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.jsonToolkitIntro{color:var(--muted);margin:6px 0 0}.jsonStatus{border:1px solid var(--border);background:var(--surface2);border-radius:999px;flex-shrink:0;align-items:center;gap:7px;padding:8px 11px;font-size:.82rem;font-weight:700;display:inline-flex}.jsonStatus.valid{color:var(--accent2)}.jsonStatus.invalid{color:#f77}.jsonStatus.neutral{color:var(--muted)}.jsonTextarea{resize:vertical;background:var(--surface2);width:100%;min-height:360px;color:var(--text);border:1px solid var(--border);border-radius:16px;outline:none;padding:18px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.92rem;line-height:1.6;transition:border-color .2s,box-shadow .2s}.jsonTextarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 15%, transparent)}.jsonMeta{color:var(--muted);justify-content:space-between;gap:12px;font-size:.8rem;display:flex}.jsonError{border:1px solid color-mix(in srgb, #f77 45%, var(--border));background:color-mix(in srgb, #f77 7%, var(--surface));color:#ff8b8b;border-radius:12px;align-items:flex-start;gap:9px;padding:12px 14px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;display:flex}.jsonActions{align-items:center}.toolButton:disabled{opacity:.4;cursor:not-allowed}.todoAdd{grid-template-columns:1fr auto;gap:10px;display:grid}.todoList{gap:8px;display:grid}.todoItem{background:var(--surface2);border:1px solid var(--border);cursor:pointer;border-radius:12px;align-items:center;gap:12px;padding:12px 14px;display:flex}.todoItem:hover{border-color:var(--accent)}.todoItem input{width:18px;height:18px;accent-color:var(--accent2);cursor:pointer}.todoItem span{overflow-wrap:anywhere}.todoItem:has(input:checked) span{color:var(--muted);text-decoration:line-through}.todoEmpty{color:var(--muted);text-align:center;border:1px dashed var(--border);border-radius:12px;padding:18px}@media (width<=760px){.todoAdd{grid-template-columns:1fr}.todoAdd .toolButton{width:100%}}.toolsGrid{grid-template-columns:1fr 1fr .72fr;align-items:start;gap:16px;display:grid}.toolsGuid{grid-column:1}.toolsUnix{grid-column:2}.toolsTodo{grid-area:1/3/span 2}.toolsJson{grid-column:1/3}.quickLinks{margin-bottom:16px}.quickLinksHeader{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:20px;display:flex}.quickLinksHeader h2{margin:4px 0 0;font-size:1.8rem}.quickLinksLocal{color:var(--muted);font-size:.85rem}.quickPresets{flex-wrap:wrap;gap:8px;display:flex}.quickPreset{background:var(--surface2);min-height:40px;color:var(--text);border:1px solid var(--border);font:inherit;cursor:pointer;border-radius:12px;align-items:center;gap:7px;padding:8px 12px;font-size:.9rem;font-weight:650;transition:transform .15s,border-color .15s;display:inline-flex}.quickPreset:hover:not(:disabled){border-color:var(--accent);transform:translateY(-2px)}.quickPreset:disabled{opacity:.35;cursor:default}.quickPresetCustom{color:var(--accent2);border-style:dashed}.quickEditor,.quickSavedEdit{grid-template-columns:1.5fr 1fr auto auto;gap:8px;margin-top:14px;display:grid}.quickLinksDivider{border-top:1px solid var(--border);margin:20px 0}.quickSaved{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;display:grid}.quickSavedLink{background:var(--surface2);border:1px solid var(--border);border-radius:14px;transition:transform .15s,border-color .15s;display:flex;position:relative;overflow:hidden}.quickSavedLink:hover{border-color:var(--accent);transform:translateY(-2px)}.quickSavedLink>a{flex:1;align-items:center;gap:10px;min-width:0;padding:13px 10px 13px 14px;display:flex}.quickSavedLink>a>span{flex:1;min-width:0;display:grid}.quickSavedLink strong,.quickSavedLink small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.quickSavedLink small{color:var(--muted);font-size:.75rem}.quickSavedLink>a>svg:last-child{color:var(--muted);flex-shrink:0}.quickSavedActions{align-items:center;gap:2px;padding-right:8px;display:flex}.quickSavedActions button,.quickIconButton{width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;padding:0;display:grid}.quickSavedActions button:hover{background:var(--surface);color:var(--text)}@media (width<=760px){.quickLinksHeader{flex-direction:column;align-items:flex-start;gap:4px}.quickPresets{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.quickPreset{justify-content:center;width:100%;min-height:44px}.quickEditor,.quickSavedEdit{grid-template-columns:1fr}.quickEditor .toolButton,.quickSavedEdit .quickIconButton{width:100%}.quickSaved{grid-template-columns:1fr}.quickSavedLink{min-width:0}.quickSavedLink>a{padding:14px}.quickSavedActions{padding-right:6px}}.quickFavicon{object-fit:contain;flex-shrink:0;width:18px;height:18px}.quickFaviconLarge{width:22px;height:22px}.quickSavedLink{position:relative}.quickLinkMenu{z-index:20;background:color-mix(in srgb, var(--surface) 96%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border);border-radius:11px;justify-content:center;align-items:center;gap:5px;padding:6px;display:flex;position:absolute;inset:7px}.quickLinkMenu button{min-height:34px;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:6px;padding:7px 9px;font-size:.82rem;font-weight:700;display:inline-flex}.quickLinkMenu button:hover{background:var(--surface2)}@media (width<=1050px){.toolsGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.toolsGuid,.toolsUnix,.toolsTodo,.toolsJson{grid-area:auto}.toolsJson{grid-column:1/-1}}@media (width<=760px){.toolsGrid{grid-template-columns:1fr}.toolsJson{grid-column:auto}.navWrap{align-items:center;padding:12px 16px 68px;display:flex;position:relative}.brand{font-size:.9rem}.navLogo{top:21px}.navLogo img{width:36px;height:36px}.themeBtn{margin-left:auto}nav{background:color-mix(in srgb, var(--surface) 92%, transparent);border:1px solid var(--border);box-shadow:none;border-radius:16px;justify-content:space-around;gap:4px;margin:0;padding:6px;display:flex;position:absolute;bottom:8px;left:16px;right:16px}nav a{white-space:nowrap;padding:7px 9px;font-size:.78rem}.page{padding:0 16px 100px}.hero{padding:72px 0 48px}.grid2,.grid3{grid-template-columns:1fr}.contactCard{flex-direction:column;align-items:flex-start}footer{flex-direction:column;gap:14px;padding:30px 16px 100px}.section{padding:34px 0}.jsonToolkitHeader{flex-direction:column}.jsonStatus{align-self:flex-start}.jsonTextarea{min-height:300px}.jsonMeta{flex-direction:column;gap:2px}}.playgroundHero{padding-bottom:54px}.viliGame,.viliSetup{width:100%}.viliGame{gap:18px;display:grid}.viliFoodStat{padding-bottom:11px;position:relative;overflow:hidden}.viliFoodProgress{background:#5fd17a1f;border-radius:999px;height:3px;position:absolute;bottom:4px;left:7px;right:7px;overflow:hidden}.viliFoodProgressProjected,.viliFoodProgressCurrent{border-radius:inherit;height:100%;transition:width .2s;position:absolute;top:0;left:0}.viliFoodProgressProjected{background:#5fd17a6b}.viliFoodProgressCurrent{background:#5fd17a}.viliFoodProgressLoss{background:#ef6262;height:100%;transition:left .2s,width .2s;position:absolute;top:0}.viliGameHeader,.viliHeaderActions,.viliTopBar,.viliStats,.viliActionBar,.viliContextActions,.viliSetupActions,.viliModalHeader,.viliLogHeader{align-items:center;display:flex}.viliGameHeader{justify-content:space-between;gap:20px}.viliGameHeader h2,.viliSetupIntro h2,.viliModalHeader h2,.viliGameOver h2{letter-spacing:-.04em;margin:4px 0 0}.viliGameHeader h2{font-size:clamp(1.7rem,4vw,2.8rem)}.viliHeaderActions{gap:8px}.viliHeaderActions button,.viliMapControls button,.viliModalHeader button,.viliLogHeader button{min-height:40px;color:var(--text);background:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:7px;padding:8px 11px;display:inline-flex}.viliBoard{padding:0;overflow:hidden}.viliTopBar{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--surface) 94%, transparent);justify-content:space-between;gap:14px;min-height:66px;padding:14px 14px 10px;position:relative;overflow:hidden}.viliTopBar:before{content:"";background:var(--player-color);height:7px;position:absolute;top:0;left:0;right:0}.viliTurnBadge{border:1px solid var(--border);background:var(--surface2);min-width:70px;color:var(--text);cursor:pointer;border-radius:13px;gap:0;padding:8px 12px;display:grid}.viliTurnBadge span{letter-spacing:.16em;color:var(--muted);font-size:.66rem;font-weight:900}.viliTurnBadge strong{font-size:1.15rem}.viliStats{flex-wrap:wrap;justify-content:flex-end;gap:8px}.viliStat{border:1px solid var(--border);background:var(--surface2);min-height:40px;color:var(--text);border-radius:12px;align-items:center;gap:7px;padding:8px 11px;display:inline-flex}.viliStat svg{color:var(--accent2)}.viliStat span{color:var(--muted);font-size:.75rem}.viliStatButton{font:inherit;cursor:pointer}.viliMapFrame{overscroll-behavior:contain;background:radial-gradient(circle at 50% 40%, color-mix(in srgb, var(--accent) 9%, transparent), transparent 42%), #0e1a22;border-bottom:1px solid var(--border);height:min(68vh,720px);min-height:520px;position:relative;overflow:hidden}:root[data-theme=light] .viliMapFrame{background:radial-gradient(circle at 50% 40%, color-mix(in srgb, var(--accent) 7%, transparent), transparent 42%), #cbd6d9}.viliMapFrame{position:relative}.viliMapEndTurn{z-index:8;position:absolute;bottom:14px;right:14px}.viliMapEndTurn button{border:1px solid color-mix(in srgb, var(--end-turn-color) 75%, white);background:var(--end-turn-color);color:#fff;letter-spacing:.08em;cursor:pointer;min-width:110px;box-shadow:0 6px 20px color-mix(in srgb, var(--end-turn-color) 35%, transparent);border-radius:10px;padding:11px 18px;font-weight:800}.viliMapEndTurn button:hover{filter:brightness(1.08);transform:translateY(-1px)}.viliMapEndTurn button:disabled{opacity:.45;cursor:default;transform:none}.viliStat svg.viliStatIcon-food{color:#5fd17a}.viliStatIcon-food{color:#4fa96b}.viliStatIcon-science{color:#5587e2}svg.viliStatIcon-economy{color:#e8b84a}.viliStatIcon-economy{color:#d8ad43}.viliStat svg.viliStatIcon-science{color:#65a9ff}.viliStat svg.viliStatIcon-army{color:#ef6262}.viliMap{touch-action:none;overscroll-behavior:contain;-webkit-user-select:none;user-select:none;cursor:default;width:100%;height:100%;display:block}.viliTileActionsObject{pointer-events:none;overflow:visible}.viliTileActionsAnchor{pointer-events:none;width:170px;height:260px;position:relative}.viliTileActions{pointer-events:auto;background:color-mix(in srgb, var(--surface) 96%, transparent);border:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;gap:4px;width:max-content;min-width:120px;max-width:185px;padding:6px;display:grid;position:absolute;bottom:36px;left:50%;transform:translate(-50%);box-shadow:0 10px 28px #00000059}.viliTileActions button{min-height:30px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:6px;padding:5px 8px;font-size:.72rem;display:flex}.viliTileActions button:hover:not(:disabled){background:var(--surface2)}.viliTileActions button:disabled{opacity:.38;cursor:not-allowed}.viliTileActions button small{color:var(--muted);align-items:center;gap:3px;margin-left:auto;display:inline-flex}.viliTileDetailObject{pointer-events:none;overflow:visible}.viliTileDetailAnchor{pointer-events:none;width:230px;height:360px;position:relative}.viliTileDetail{pointer-events:auto;background:color-mix(in srgb, var(--surface) 96%, transparent);border:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;width:220px;position:absolute;bottom:200px;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 10px 28px #00000059}.viliTileDetailHeader{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:10px;padding:8px 9px;display:flex}.viliTileDetailHeader:hover{background:var(--surface2)}.viliTileDetailTitle{gap:0;min-width:0;display:grid}.viliTileDetailTitle>span{color:var(--muted);letter-spacing:.1em;font-size:.58rem;font-weight:800}.viliTileDetailTitle>strong{white-space:nowrap;text-overflow:ellipsis;font-size:.82rem;overflow:hidden}.viliTileDetailOwner{flex-shrink:0;align-items:center;gap:5px;display:flex}.viliTileDetailOwner>span{font-size:.66rem;font-weight:800}.viliTileDetailChevron{color:var(--muted);transition:transform .18s;transform:rotate(180deg)}.viliTileDetail.expanded .viliTileDetailChevron{transform:rotate(0)}.viliMapDetailDock{z-index:8;pointer-events:none;width:220px;position:absolute;bottom:14px;left:14px}.viliMapDetailDock .viliTileDetail{pointer-events:auto;width:100%;position:static;transform:none}.viliTileDetailQuick{border-top:1px solid color-mix(in srgb, var(--border) 70%, transparent);align-items:center;gap:5px;padding:6px 8px 8px;display:flex}.viliTileDetailYield{background:var(--surface2);border:1px solid var(--border);border-radius:8px;align-items:center;gap:4px;min-height:25px;padding:3px 6px;font-size:.67rem;display:inline-flex}.viliTileDetailYield strong{font-size:.69rem}.viliTileDetailDanger{color:#ef6262}.viliTileDetailBody{opacity:0;border-top:1px solid #0000;max-height:0;transition:max-height .22s,opacity .16s,border-color .16s;overflow:hidden}.viliTileDetail.expanded .viliTileDetailBody{opacity:1;border-top:1px solid var(--border);max-height:260px}.viliTileDetailRows{gap:3px;padding:7px;display:grid}.viliTileDetailRow{border-radius:7px;grid-template-columns:16px 1fr auto;align-items:center;gap:5px;min-height:27px;padding:4px 6px;display:grid}.viliTileDetailRow:hover{background:var(--surface2)}.viliTileDetailRow>span{color:var(--muted);font-size:.65rem}.viliTileDetailRow>strong{text-align:right;font-size:.68rem}.viliTileDetailModifiers{flex-wrap:wrap;gap:4px;padding:0 7px 7px;display:flex}.viliTileDetailModifier{background:var(--surface2);border:1px solid var(--border);color:var(--muted);border-radius:999px;align-items:center;gap:4px;padding:3px 6px;font-size:.6rem;display:inline-flex}.viliAttackHighlight{stroke-width:2.4px;fill:#ef4f4f24;stroke:#ef4f4f!important}.viliCombatModal{width:min(520px,100vw - 32px)}.viliCombatSides{grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;margin:20px 0;display:grid}.viliCombatSides>div{justify-items:center;gap:5px;display:grid}.viliCombatEstimate{border:1px solid var(--border);background:var(--surface2);border-radius:10px;gap:5px;padding:12px;display:grid}.viliCombatEstimate strong{font-size:1.1rem}.viliCombatCancel,.viliCombatAttack{min-height:42px;font:inherit;cursor:pointer;border-radius:11px;justify-content:center;align-items:center;gap:7px;padding:9px 15px;font-weight:800;transition:background .15s,border-color .15s,transform .15s;display:inline-flex}.viliContextModifier{align-items:center;gap:5px;display:inline-flex}.viliCombatCancel{background:var(--surface2);color:var(--text);border:1px solid var(--border)}.viliCombatCancel:hover{background:var(--surface);border-color:var(--muted)}.viliCombatAttack{color:#fff;background:#d94f4f;border:1px solid #ef6262}.viliCombatAttack:hover{background:#e45b5b;transform:translateY(-1px)}.viliCombatAttack svg{color:#fff}.viliCombatActions{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.viliCombatResult{grid-template-columns:1fr 1fr;gap:10px;margin:20px 0;display:grid}.viliCombatResult>div{border:1px solid var(--border);border-radius:10px;gap:4px;padding:12px;display:grid}.viliTileActionCancel{color:var(--muted)!important}.viliTileMoveHint{color:var(--accent2);align-items:center;gap:6px;padding:7px 8px;font-size:.72rem;display:flex}.viliMapControls{z-index:4;gap:6px;display:grid;position:absolute;top:12px;right:12px}.viliMapControls button{background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:38px;height:38px;padding:0}.viliHex{cursor:pointer;outline:none}.viliHex:focus,.viliHex:focus-visible{outline:none}.viliHex>polygon:first-child{stroke:#ffffff1a;stroke-width:1px;transition:filter .12s,stroke-width .12s}.viliHighlight{fill:none;pointer-events:none}.viliHex.selected .viliHighlight{filter:brightness(1.12);stroke:#fff;stroke-width:2.5px}.viliHex.actionable .viliHighlight{stroke:var(--accent2);stroke-width:3px}.viliTerrain-water>polygon:first-child{fill:#244c63}.viliTerrain-plains>polygon:first-child{fill:#6f885b}.viliTerrain-forest>polygon:first-child{fill:#42684c}.viliTerrain-hills>polygon:first-child{fill:#7d7453}.viliTerrain-mountain>polygon:first-child{fill:#666c73}.viliTerrain-river>polygon:first-child{fill:#537f8e}.viliOwnership{fill:#0000;stroke-width:3.2px;pointer-events:none}.viliTerrainGlyph,.viliWaterGlyph,.viliLevelText,.viliArmyBadge text,.viliBarbarianBadge text{text-anchor:middle;dominant-baseline:central;pointer-events:none;-webkit-user-select:none;user-select:none}.viliTerrainGlyph{fill:#ffffff7a;font-size:17px;font-weight:900}.viliMountainGlyph{font-size:21px}.viliWaterGlyph{fill:#ffffff4d;font-size:20px}.viliRiverMark{fill:none;stroke:#dcf9ffb8;stroke-width:4px;stroke-linecap:round;pointer-events:none}.viliTileIcon{color:#ffffffe6;stroke-width:2.2px;pointer-events:none}.viliCapitalIcon{color:#fff6c7}.viliLevelText{fill:#fff;font-size:8px;font-weight:900}.viliArmyBadge circle{fill:#101318;stroke:#ffffffd1;stroke-width:1.2px}.viliArmyBadge text{fill:#fff;font-size:9px;font-weight:900}.viliBarbarianBadge circle{fill:#2b2020;stroke:#ff9d72;stroke-width:1.4px}.viliBarbarianBadge text{fill:#ffd3c1;font-size:9px;font-weight:900}.viliContextPanel{border-bottom:1px solid var(--border);background:var(--surface);gap:16px;min-height:160px;padding:20px;display:grid}.viliContextPanel>p,.viliSetupIntro p,.viliModalLead,.viliTechCard p{color:var(--muted);margin:0}.viliContextHeader{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.viliContextHeader h3{margin:3px 0 0;font-size:1.45rem}.viliContextEyebrow{color:var(--accent2);letter-spacing:.16em;font-size:.7rem;font-weight:900}.viliOwnerPill{border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:6px 10px;font-size:.8rem;font-weight:800}.viliContextGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.viliContextGrid>div,.viliGameOverStats>div{background:var(--surface2);border:1px solid var(--border);border-radius:12px;gap:2px;padding:10px 12px;display:grid}.viliContextGrid span,.viliGameOverStats span,.viliEmpireRow span,.viliEmpireRow small{color:var(--muted);font-size:.76rem}.viliModifiers{flex-wrap:wrap;gap:7px;display:flex}.viliModifiers span{background:var(--surface2);border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:5px 8px;font-size:.76rem}.viliActionShell{background:var(--surface)}.viliSubActions{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:8px;padding:12px 14px;display:flex}.viliSubActions button,.viliContextActions button{border:1px solid var(--border);background:var(--surface2);min-height:42px;color:var(--text);cursor:pointer;border-radius:11px;align-items:center;gap:7px;padding:8px 12px;display:inline-flex}.viliSubActions button small,.viliContextActions button small{color:var(--muted)}.viliSubActions button:disabled,.viliContextActions button:disabled,.viliTechCard button:disabled{opacity:.38;cursor:not-allowed}.viliMoveHint{min-height:42px;color:var(--accent2);align-items:center;gap:8px;padding:8px 12px;display:inline-flex}.viliCancelAction{margin-left:auto}.viliActionBar{justify-content:space-between;gap:12px;min-height:66px;padding:10px 14px}.viliActionBar small,.viliSubActions small{align-items:center;gap:4px;display:inline-flex}.viliContextActions{flex-wrap:wrap;gap:8px}.viliEndTurn{background:var(--text);min-width:128px;min-height:46px;color:var(--bg);letter-spacing:.08em;cursor:pointer;border:0;border-radius:12px;padding:10px 16px;font-weight:900}.viliSetup{gap:28px;padding:26px;display:grid}.viliSetupIntro h2{font-size:clamp(2rem,4vw,3.3rem)}.viliSetupIntro p{margin-top:8px}.viliSetupGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.viliSetupGroup{align-content:start;gap:8px;display:grid}.viliSetupGroup>span,.viliSetupActions label>span{color:var(--muted);letter-spacing:.14em;margin-bottom:2px;font-size:.72rem;font-weight:900}.viliSetupGroup button{text-align:left;border:1px solid var(--border);background:var(--surface2);width:100%;min-height:76px;color:var(--text);cursor:pointer;border-radius:13px;grid-template-columns:auto 1fr;align-items:center;gap:3px 9px;padding:12px;display:grid}.viliSetupGroup button.selected{border-color:var(--accent2);box-shadow:inset 0 0 0 1px var(--accent2)}.viliSetupGroup button i{border-radius:50%;grid-row:1/span 2;width:11px;height:11px}.viliSetupGroup button small{color:var(--muted);line-height:1.35}.viliSetupActions{justify-content:flex-end;gap:10px}.viliSetupActions label{gap:5px;min-width:min(100%,260px);margin-right:auto;display:grid}.viliSetupActions input{border:1px solid var(--border);background:var(--surface2);min-height:44px;color:var(--text);font:inherit;border-radius:12px;padding:9px 12px}.viliSetupButton{cursor:pointer;border:0;min-height:44px}.viliOverlay{z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#00000094;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.viliModal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:min(860px,100%);max-height:min(86vh,900px);padding:24px;overflow:auto;box-shadow:0 24px 90px #00000059}.viliModalHeader{justify-content:space-between;gap:18px}.viliModalHeader button{width:42px;height:42px;padding:0}.viliModalLead{margin-top:10px}.viliTechGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:20px;display:grid}.viliTechCard{border:1px solid var(--border);background:var(--surface2);border-radius:14px;gap:10px;padding:16px;display:grid}.viliTechCard.researched{border-color:color-mix(in srgb, var(--accent2) 60%, var(--border))}.viliTechTitle{align-items:center;gap:8px;display:flex}.viliTechTitle svg:first-child,.viliGameOver>svg{color:var(--accent2)}.viliTechTitle svg:last-child{margin-left:auto}.viliTechCard small{color:var(--muted)}.viliTechCard button{border:1px solid var(--border);background:var(--surface);min-height:40px;color:var(--text);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:8px 11px;display:inline-flex}.viliEmpireList{gap:8px;margin-top:20px;display:grid}.viliEmpireRow{border:1px solid var(--border);background:var(--surface2);border-radius:13px;grid-template-columns:auto minmax(130px,1.5fr) repeat(5,minmax(64px,.7fr));align-items:center;gap:10px;padding:13px;display:grid}.viliEmpireRow>div{display:grid}.viliCivDot{border-radius:50%;width:12px;height:12px}.viliLog{color:var(--muted);gap:7px;padding:18px;font-size:.9rem;display:grid}.viliLogHeader{color:var(--text);justify-content:space-between}.viliGameOver{text-align:center}.viliGameOver>*{margin-left:auto;margin-right:auto}.viliScore{letter-spacing:-.06em;margin-top:18px;font-size:clamp(3rem,10vw,6rem);font-weight:950;line-height:1}.viliGameOverStats{text-align:left;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:24px 0;display:grid}.viliHelpModal{width:min(920px,100%)}.viliHelpQuick{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-top:22px;display:grid}.viliHelpSection{border-bottom:1px solid var(--border);padding:22px 0}.viliHelpSection:last-of-type{border-bottom:0}.viliHelpSectionTitle{align-items:center;gap:9px;margin-bottom:12px;display:flex}.viliHelpSectionTitle svg{color:var(--accent2)}.viliHelpSectionTitle h3{margin:0;font-size:1.15rem}.viliHelpSection p{color:var(--muted);margin:8px 0}.viliHelpRule{background:var(--surface2);border:1px solid var(--border);border-radius:11px;align-items:center;gap:8px;padding:10px 12px;display:flex}.viliHelpRule span{color:var(--muted);font-size:.84rem}.viliHelpCards{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin-top:12px;display:grid}.viliHelpMiniCard{background:var(--surface2);border:1px solid var(--border);border-radius:11px;gap:3px;padding:12px;display:grid}.viliHelpMiniCard span,.viliHelpMiniCard small{color:var(--muted)}.viliHelpMiniCard span{font-size:.82rem}.viliHelpMiniCard small{font-size:.75rem}.viliHelpFooter{align-items:center;gap:10px;padding-top:22px;display:flex}.viliHelpFooter span{color:var(--muted)}.viliHelpFooter .primary{cursor:pointer;border:0;margin-left:auto}@media (width<=760px){.viliHelpQuick{grid-template-columns:1fr}.viliHelpCards{grid-template-columns:repeat(2,minmax(0,1fr))}.viliHelpFooter{flex-direction:column;align-items:stretch}.viliHelpFooter .primary{width:100%;margin-left:0}}@media (width<=900px){.viliSetupGrid{grid-template-columns:1fr}.viliEmpireRow{grid-template-columns:auto 1fr repeat(2,minmax(60px,.6fr))}.viliEmpireRow>div:nth-of-type(n+4){display:none}}@media (width<=760px){.playgroundPage{padding-left:10px;padding-right:10px}.playgroundHero{padding-left:6px;padding-right:6px}.viliGameHeader{align-items:flex-end}.viliHeaderActions button span{display:none}.viliTopBar{align-items:stretch;overflow-x:auto}.viliTurnBadge{flex:none}.viliStats{flex-wrap:nowrap;min-width:max-content}.viliStat{min-height:42px}.viliMapFrame{height:62vh;min-height:440px}.viliContextPanel{min-height:0;padding:15px}.viliContextGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.viliActionBar{flex-direction:column;align-items:stretch}.viliContextActions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.viliContextActions button{justify-content:center}.viliEndTurn{width:100%;min-height:50px}.viliSubActions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.viliMoveHint,.viliCancelAction{grid-column:1/-1;margin-left:0}.viliSetup{padding:18px}.viliSetupActions{flex-direction:column;align-items:stretch}.viliSetupActions label,.viliSetupButton{width:100%}.viliOverlay{align-items:end;padding:10px}.viliModal{border-radius:20px 20px 10px 10px;width:100%;max-height:82vh;padding:18px}.viliTechGrid,.viliGameOverStats{grid-template-columns:repeat(2,minmax(0,1fr))}}.page,.playgroundPage,.viliGame,.viliBoard,.viliTopBar,.viliStats,.viliMapFrame,.viliActionBar,.viliContextActions,.viliSetup,.viliSetupGrid,.viliModal,.viliEmpireRow,.toolsGrid,.grid2,.grid3{min-width:0}.viliGameHeader h2,.viliSetupIntro h2,.viliModalHeader h2,.viliTileDetailRow>strong,.viliTileDetailTitle>strong,.viliEmpireRow strong,.card,.toolValue,.toolResult{overflow-wrap:anywhere}.viliMapControls,.viliMapEndTurn,.viliMapDetailDock{isolation:isolate}.viliMapFrame{height:clamp(480px,68vh,720px)}@supports (height:100dvh){.viliMapFrame{height:clamp(480px,68dvh,720px)}}.viliMapDetailDock{width:min(220px,100% - 160px);max-width:220px}.viliMapDetailDock .viliTileDetail{max-width:100%}.viliTileActions{max-width:min(185px,92vw)}@media (width<=1180px){:root{--radius:20px}.page{width:100%;padding-left:clamp(16px,2.6vw,24px);padding-right:clamp(16px,2.6vw,24px)}.viliGameHeader{gap:14px}.viliGameHeader h2{font-size:clamp(1.55rem,3.5vw,2.5rem)}.viliMapFrame{height:clamp(460px,66vh,680px)}@supports (height:100dvh){.viliMapFrame{height:clamp(460px,66dvh,680px)}}}@media (width<=900px){.viliGameHeader{align-items:flex-end}.viliHeaderActions{flex:none}.viliTopBar{min-height:62px;padding:13px 12px 9px}.viliStats{gap:6px}.viliStat{padding-inline:9px}.viliMapFrame{height:clamp(440px,64vh,640px);min-height:440px}@supports (height:100dvh){.viliMapFrame{height:clamp(440px,64dvh,640px)}}.viliMapControls{top:10px;right:10px}.viliMapEndTurn{bottom:10px;right:10px}.viliMapDetailDock{bottom:10px;left:10px}.viliActionBar{flex-wrap:wrap}.viliContextActions{flex:100%}.viliEmpireRow{grid-template-columns:auto minmax(120px,1.5fr) repeat(3,minmax(58px,.7fr))}.viliEmpireRow>div:nth-of-type(n+5){display:none}.viliModal{max-width:calc(100vw - 28px)}}@media (width<=760px){:root{--radius:16px}html{-webkit-text-size-adjust:100%}body{min-width:0;overflow-x:hidden}.page{padding-left:10px;padding-right:10px;padding-bottom:max(72px, env(safe-area-inset-bottom))}.playgroundPage{padding-left:6px;padding-right:6px}.playgroundHero{padding:46px 4px 28px}.viliGame{gap:12px}.viliGameHeader{align-items:center;gap:10px}.viliGameHeader>div:first-child{min-width:0}.viliGameHeader .eyebrow{font-size:.64rem}.viliGameHeader h2{margin-top:2px;font-size:clamp(1.25rem,6vw,1.75rem);line-height:1.05}.viliHeaderActions{gap:5px}.viliHeaderActions button{width:38px;min-width:38px;min-height:38px;padding:0}.viliHeaderActions button span{display:none}.viliBoard{border-radius:16px}.viliTopBar{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:8px;min-height:58px;padding:11px 8px 8px;overflow:auto hidden}.viliTopBar::-webkit-scrollbar{display:none}.viliTopBar:before{height:5px}.viliTurnBadge{flex:none;min-width:56px;padding:6px 9px}.viliTurnBadge span{font-size:.58rem}.viliTurnBadge strong{font-size:1rem}.viliStats{flex-wrap:nowrap;gap:5px;min-width:max-content}.viliStat{border-radius:10px;gap:5px;min-height:38px;padding:6px 8px}.viliStat svg{width:15px;height:15px}.viliStat strong{font-size:.88rem}.viliStat span{font-size:.66rem}.viliMapFrame{height:max(430px,62vh);min-height:430px}@supports (height:100svh){.viliMapFrame{height:max(430px,62svh)}}.viliMapControls{gap:5px;top:8px;right:8px}.viliMapControls button{border-radius:10px;width:36px;height:36px;min-height:36px}.viliMapEndTurn{bottom:8px;right:8px}.viliMapEndTurn button{border-radius:10px;min-width:98px;min-height:42px;padding:8px 12px;font-size:.76rem}.viliMapDetailDock{width:min(200px,100% - 122px);bottom:8px;left:8px}.viliTileDetailHeader{padding:7px 8px}.viliTileDetailTitle>strong{font-size:.76rem}.viliTileDetailOwner>span{font-size:.6rem}.viliTileDetailQuick{scrollbar-width:none;gap:3px;padding:5px 6px 6px;overflow-x:auto}.viliTileDetailQuick::-webkit-scrollbar{display:none}.viliTileDetailYield{flex:none;min-height:23px;padding:2px 5px}.viliTileDetailRows{padding:5px}.viliTileDetailRow{min-height:25px;padding:3px 5px}.viliTileDetailModifiers{padding:0 5px 5px}.viliActionBar{flex-direction:column;align-items:stretch;gap:8px;min-height:0;padding:8px}.viliContextActions,.viliSubActions{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:100%;display:grid}.viliContextActions button,.viliSubActions button{justify-content:center;min-width:0;min-height:40px;padding:7px 8px;font-size:.78rem}.viliMoveHint,.viliCancelAction{grid-column:1/-1;margin-left:0}.viliSetup{gap:18px;padding:14px}.viliSetupGrid{grid-template-columns:1fr}.viliSetupActions{flex-direction:column;align-items:stretch}.viliSetupActions label,.viliSetupButton{width:100%}.viliOverlay{padding:max(8px, env(safe-area-inset-top)) max(8px, env(safe-area-inset-right)) max(8px, env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));align-items:end}.viliModal{border-radius:18px 18px 10px 10px;width:100%;max-width:100%;max-height:min(88vh,760px);padding:16px}@supports (height:100dvh){.viliModal{max-height:88dvh}}.viliModalHeader{gap:10px}.viliModalHeader h2{font-size:1.35rem}.viliTechGrid,.viliGameOverStats{grid-template-columns:repeat(2,minmax(0,1fr))}.viliEmpireRow{grid-template-columns:auto minmax(0,1fr) minmax(50px,.55fr);gap:7px}.viliEmpireRow>div:nth-of-type(n+3){display:none}.viliHelpCards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.navWrap{padding-left:10px;padding-right:10px}nav{left:10px;right:10px}nav a{padding-inline:7px;font-size:.72rem}.playgroundHero{padding-top:34px}.viliGameHeader h2{font-size:clamp(1.08rem,5.8vw,1.4rem)}.viliHeaderActions button{width:34px;min-width:34px;height:34px;min-height:34px}.viliHeaderActions svg{width:15px;height:15px}.viliMapFrame{height:max(400px,60vh);min-height:400px}@supports (height:100svh){.viliMapFrame{height:max(400px,60svh)}}.viliMapDetailDock{width:min(184px,100% - 112px)}.viliMapEndTurn button{min-width:92px;padding-inline:10px;font-size:.7rem}.viliTileDetailQuick{gap:2px}.viliTileDetailYield{padding-inline:4px}.viliTileDetailYield svg{width:11px;height:11px}.viliTileDetailYield strong{font-size:.63rem}.viliContextActions,.viliSubActions{grid-template-columns:1fr 1fr}.viliContextActions button,.viliSubActions button{font-size:.72rem}.viliTechGrid,.viliGameOverStats,.viliHelpCards,.toolsGrid,.grid2,.grid3{grid-template-columns:1fr}}@media (width<=380px){.page{padding-left:6px;padding-right:6px}.playgroundPage{padding-left:2px;padding-right:2px}.viliGameHeader{align-items:flex-start}.viliGameHeader .eyebrow{display:none}.viliGameHeader h2{font-size:1rem}.viliHeaderActions{gap:3px}.viliHeaderActions button{border-radius:9px;width:32px;min-width:32px;height:32px;min-height:32px}.viliMapFrame{min-height:380px}.viliMapControls button{width:32px;height:32px;min-height:32px}.viliMapDetailDock{width:min(164px,100% - 104px);bottom:6px;left:6px}.viliMapEndTurn{bottom:6px;right:6px}.viliMapEndTurn button{min-width:86px;min-height:38px;padding:7px 8px;font-size:.64rem}.viliTileDetailHeader{padding-inline:6px}.viliTileDetailOwner>span{white-space:nowrap;text-overflow:ellipsis;max-width:62px;overflow:hidden}.viliTileDetailQuick{padding-inline:4px}.viliContextActions,.viliSubActions{grid-template-columns:1fr}}@media (height<=700px) and (orientation:landscape){.playgroundHero{padding-top:24px;padding-bottom:20px}.viliGame{gap:8px}.viliGameHeader h2{font-size:clamp(1.1rem,3.2vw,1.7rem)}.viliTopBar{min-height:52px;padding-top:9px;padding-bottom:6px}.viliStat,.viliTurnBadge{min-height:34px}.viliMapFrame{height:max(300px,72vh);min-height:300px}@supports (height:100dvh){.viliMapFrame{height:max(300px,72dvh)}}.viliMapControls{top:6px;right:6px}.viliMapControls button{width:32px;height:32px;min-height:32px}.viliMapDetailDock{bottom:6px;left:6px}.viliMapEndTurn{bottom:6px;right:6px}.viliTileDetail.expanded .viliTileDetailBody{max-height:min(220px,38vh);overflow-y:auto}.viliActionBar{padding-block:6px}.viliOverlay{align-items:center}.viliModal{max-height:94vh}@supports (height:100dvh){.viliModal{max-height:94dvh}}}@media (pointer:coarse){button,.viliTurnBadge,.viliTileDetailHeader{touch-action:manipulation}.viliTileActions button{min-height:34px}.viliHeaderActions button,.viliMapControls button{min-width:40px;min-height:40px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.viliTurnSummaryBackdrop{z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#05070bad;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.viliTurnSummary{background:color-mix(in srgb, var(--surface) 97%, transparent);border:1px solid var(--border);border-radius:18px;width:min(520px,100vw - 32px);max-height:min(720px,100dvh - 32px);padding:20px;overflow:auto;box-shadow:0 28px 80px #0000007a}.viliTurnSummaryHeader{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.viliTurnSummaryHeader h2{letter-spacing:-.04em;margin:3px 0 0;font-size:1.7rem}.viliTurnSummaryHeader>button{border:1px solid var(--border);background:var(--surface2);width:38px;height:38px;color:var(--text);cursor:pointer;border-radius:11px;flex-shrink:0;place-items:center;padding:0;display:grid}.viliTurnSummaryMood{border:1px solid var(--border);border-radius:999px;margin-top:14px;padding:7px 10px;font-size:.72rem;font-weight:800;display:inline-flex}.viliTurnSummaryMood.good{color:#5fd17a;border-color:color-mix(in srgb, #5fd17a 45%, var(--border))}.viliTurnSummaryMood.danger{color:#ef6262;border-color:color-mix(in srgb, #ef6262 45%, var(--border))}.viliTurnSummaryMood.neutral{color:var(--muted)}.viliTurnSummaryStats{gap:6px;margin-top:18px;display:grid}.viliTurnSummaryStat{background:var(--surface2);border:1px solid var(--border);border-radius:10px;grid-template-columns:20px minmax(80px,1fr) auto 48px;align-items:center;gap:8px;min-height:42px;padding:7px 9px;display:grid}.viliTurnSummaryStat>span{color:var(--muted);font-size:.72rem}.viliTurnSummaryStat>div{justify-content:flex-end;align-items:center;gap:7px;font-size:.76rem;display:inline-flex}.viliTurnSummaryStat>div span{color:var(--muted)}.viliTurnSummaryStat small{text-align:right;color:var(--muted);font-size:.7rem;font-weight:800}.viliTurnSummaryStat small.positive{color:#5fd17a}.viliTurnSummaryStat small.negative{color:#ef6262}.viliTurnSummaryEvents{margin-top:18px}.viliTurnSummaryEvents>span{color:var(--muted);letter-spacing:.14em;margin-bottom:7px;font-size:.62rem;font-weight:900;display:block}.viliTurnSummaryEvents>div{background:var(--surface2);border:1px solid var(--border);border-radius:11px;gap:4px;padding:8px;display:grid}.viliTurnSummaryEvents p{color:var(--muted);margin:0;padding:5px 6px;font-size:.7rem;line-height:1.45}.viliTurnSummaryContinue{background:var(--text);width:100%;min-height:44px;color:var(--bg);letter-spacing:.08em;cursor:pointer;border:0;border-radius:11px;margin-top:18px;font-weight:900}.viliMap{touch-action:none}@media (width<=520px){.viliTurnSummaryBackdrop{padding:10px}.viliTurnSummary{border-radius:15px;width:100%;padding:15px}.viliTurnSummaryStat{grid-template-columns:18px minmax(65px,1fr) auto 42px;gap:5px}}.viliTechModal{width:min(1180px,100vw - 32px);max-height:min(90vh,900px);overflow:auto}.viliTechHeader{z-index:10;background:color-mix(in srgb, var(--surface) 96%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding-bottom:14px;position:sticky;top:0}.viliTechSummary{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.viliTechSummary span{border:1px solid var(--border);background:var(--surface2);min-height:28px;color:var(--muted);border-radius:999px;align-items:center;gap:5px;padding:4px 8px;font-size:.72rem;font-weight:750;display:inline-flex}.viliTechTree{gap:12px;margin-top:24px;display:grid}.viliTechBranch{border:1px solid var(--border);background:color-mix(in srgb, var(--surface2) 65%, transparent);border-radius:16px;padding:14px}.viliTechBranchHeader{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);align-items:center;gap:8px;margin-bottom:10px;font-size:.82rem;font-weight:850;display:flex}.viliTechBranchHeader svg{color:var(--accent2)}.viliTechBranchTrack{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.viliTechNodeWrap{min-width:0;position:relative}.viliTechConnector{background:var(--border);width:14px;height:2px;position:absolute;top:50%;right:calc(100% + 2px);transform:translateY(-50%)}.viliTechConnector.unlocked{background:color-mix(in srgb, var(--accent2) 65%, var(--border))}.viliTechNode{border:1px solid var(--border);background:var(--surface);border-radius:13px;flex-direction:column;gap:8px;height:100%;min-height:190px;padding:13px;transition:transform .15s,border-color .15s,background .15s;display:flex}.viliTechNode.available{border-color:color-mix(in srgb, var(--accent) 55%, var(--border))}.viliTechNode.available:hover{border-color:var(--accent);transform:translateY(-2px)}.viliTechNode.researched{border-color:color-mix(in srgb, var(--accent2) 65%, var(--border));background:color-mix(in srgb, var(--accent2) 5%, var(--surface))}.viliTechNode.locked{opacity:.55}.viliTechNodeTop{justify-content:space-between;align-items:center;display:flex}.viliTechTier{background:var(--surface2);color:var(--muted);letter-spacing:.08em;border-radius:6px;padding:2px 6px;font-size:.62rem;font-weight:900}.viliTechDone{color:var(--accent2)}.viliTechLocked{color:var(--muted)}.viliTechNodeName{font-size:.94rem}.viliTechNode p{color:var(--muted);flex:1;margin:0;font-size:.75rem;line-height:1.45}.viliTechRequires{min-height:28px;color:var(--muted);font-size:.62rem;line-height:1.35}.viliTechNode button{border:1px solid var(--border);background:var(--surface2);width:100%;min-height:36px;color:var(--text);font:inherit;cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:5px;padding:7px 9px;font-size:.72rem;font-weight:800;display:inline-flex}.viliTechNode.available button:not(:disabled){border-color:color-mix(in srgb, var(--accent) 55%, var(--border))}.viliTechNode button:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 12%, var(--surface2))}.viliTechNode button:disabled{opacity:.42;cursor:not-allowed}@media (width<=950px){.viliTechBranchTrack{grid-template-columns:repeat(2,minmax(0,1fr))}.viliTechConnector{display:none}}@media (width<=600px){.viliTechModal{width:calc(100vw - 16px);max-height:94vh}.viliTechBranch{padding:10px}.viliTechBranchTrack{grid-template-columns:1fr;gap:8px}.viliTechNode,.viliTechRequires{min-height:0}}.viliTurnSummaryGrowthCost{color:var(--muted);white-space:nowrap;align-items:center;gap:2px;margin-left:6px;display:inline-flex}.viliTurnSummaryGrowthCost svg{color:#5fd17a}
