.mnt-hint{margin:0;color:var(--ui-muted);font:500 var(--text-sm) / 1.45 var(--font-ui)}.mnt-error{margin:0;color:var(--ui-danger);font:650 var(--text-sm) / 1.4 var(--font-ui)}.mnt-feedback{font:650 var(--text-sm) / 1.4 var(--font-ui)}.mnt-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.mnt-actions .primary-button,.mnt-actions .secondary-button{min-height:var(--control-h)}.app-shell.app-shell--interface-v2>.app-header .mnt-launcher.mnt-launcher{display:inline-flex!important;position:fixed;right:.9rem;bottom:calc(.9rem + env(safe-area-inset-bottom));z-index:18;max-width:14rem;box-shadow:var(--ui-shadow-md)}@media(max-width:63.999rem){.app-shell.app-shell--interface-v2>.app-header .mnt-launcher.mnt-launcher{bottom:calc(var(--scene-bottom-bar, 3.85rem) + .6rem + env(safe-area-inset-bottom))}}.mnt-launcher--proposal{border-color:var(--ui-accent)}.mnt-goals{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none}.mnt-goal{display:flex;align-items:center;gap:var(--space-3);min-height:var(--control-h);padding:var(--space-1) var(--space-3);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface-muted)}.mnt-goal__mark{flex:none;display:inline-grid;place-items:center;width:1.5rem;height:1.5rem;border:2px solid var(--ui-border);border-radius:50%}.mnt-goal.is-done{border-color:var(--ui-success)}.mnt-goal.is-done .mnt-goal__mark{border-color:var(--ui-success);background:var(--ui-success);color:var(--ui-surface)}.mnt-panel{display:grid;gap:var(--space-3);min-width:0}.mnt-form{display:grid;gap:var(--space-3)}.mnt-form__row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.mnt-field{display:grid;gap:var(--space-1);min-width:0}.mnt-field label{font-size:var(--text-sm);font-weight:700}.mnt-field input,.mnt-field select{width:100%;min-height:var(--control-h);font:inherit}.mnt-switch{display:flex;align-items:flex-start;gap:var(--space-2);min-height:var(--control-h)}.mnt-switch input{flex:none;width:1.25rem;min-height:1.25rem;margin-top:.2rem}.mnt-switch span{display:grid;gap:.15rem}.mnt-switch small{color:var(--ui-muted);font-weight:500}.mnt-reasons{display:grid;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--ui-border);border-left:.3rem solid var(--ui-accent);border-radius:var(--ui-radius-md);background:var(--ui-surface-muted)}.mnt-reasons ul{margin:0;padding-left:var(--space-4)}.mnt-subtitle{margin:0;font:700 var(--text-md) / 1.3 var(--font-display)}.mnt-mentees{display:grid;gap:var(--space-2);margin:var(--space-2) 0 0;padding:0;list-style:none}.mnt-mentee{display:grid;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface-muted)}.mnt-mentee__head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-3)}.mnt-mentee__head a{font-weight:700}.mnt-progress{margin-left:auto;font-variant-numeric:tabular-nums;font-weight:700}.mnt-chip{display:inline-flex;align-items:center;border:1px solid color-mix(in srgb,currentcolor 40%,transparent);border-radius:999px;padding:.05rem .55rem;font:700 var(--text-xs) / 1.5 var(--font-ui);white-space:nowrap}.mnt-badges{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:var(--space-2) 0 0;padding:0;list-style:none}.mnt-badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:.2rem var(--space-3) .2rem var(--space-2);border:1px solid var(--ui-accent);border-radius:999px;background:color-mix(in srgb,var(--ui-accent) 12%,transparent);font:700 var(--text-sm) / 1.4 var(--font-ui)}.mnt-badge__icon{flex:none;color:var(--ui-accent)}.profile-frame--apprentice{outline:2px solid var(--ui-success);outline-offset:3px;border-radius:var(--ui-radius-md)}.profile-frame--mentor-frame{outline:3px double var(--ui-accent);outline-offset:3px;border-radius:var(--ui-radius-md);box-shadow:0 0 0 6px color-mix(in srgb,var(--ui-accent) 14%,transparent)}@media(max-width:30rem){.mnt-form__row{grid-template-columns:minmax(0,1fr)}.mnt-progress{margin-left:0}}.error-notice[data-v-97b9f51e]{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2, .5rem) var(--space-3, .75rem);padding:var(--space-2, .5rem) var(--space-3, .75rem);border:1px solid color-mix(in srgb,var(--ui-danger, #d0705a) 55%,transparent);border-radius:var(--ui-radius-sm, .4rem);background:color-mix(in srgb,var(--ui-danger, #d0705a) 12%,transparent);color:inherit;font-size:var(--text-sm, .875rem);line-height:1.4}.error-notice--compact[data-v-97b9f51e]{padding:var(--space-1, .25rem) var(--space-2, .5rem)}.error-notice__icon[data-v-97b9f51e]{flex:none;fill:none;stroke:var(--ui-danger, #d0705a);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.error-notice__message[data-v-97b9f51e]{flex:1 1 12rem;min-width:0;overflow-wrap:anywhere}.error-notice__retry[data-v-97b9f51e]{flex:none;width:auto;min-height:var(--control-h-sm, 2rem);padding:0 var(--space-3, .75rem);border:1px solid color-mix(in srgb,currentColor 45%,transparent);border-radius:var(--ui-radius-sm, .4rem);background:transparent;color:inherit;font:inherit;font-weight:600;cursor:pointer}.error-notice__retry[data-v-97b9f51e]:hover:not(:disabled){background:color-mix(in srgb,currentColor 10%,transparent)}.error-notice__retry[data-v-97b9f51e]:focus-visible{outline:2px solid var(--v2-accent, var(--ui-accent, currentColor));outline-offset:2px}.error-notice__retry[data-v-97b9f51e]:disabled{cursor:progress;opacity:.65}.list-skeleton[data-v-33f77e5a]{display:grid;gap:var(--space-2, .5rem);width:100%}.list-skeleton__row[data-v-33f77e5a]{display:grid;gap:var(--space-1, .25rem);padding:var(--space-2, .5rem) var(--space-3, .75rem);border:1px solid var(--v2-border-soft, rgb(92 148 126 / 25%));border-radius:var(--ui-radius-sm, .4rem)}.list-skeleton__line[data-v-33f77e5a]{position:relative;display:block;height:.7rem;overflow:hidden;border-radius:999px;background:var(--v2-border-soft, rgb(92 148 126 / 25%))}.list-skeleton__line[data-v-33f77e5a]:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0%,var(--v2-border, rgb(92 148 126 / 45%)) 50%,transparent 100%);transform:translate(-100%);animation:list-skeleton-shimmer-33f77e5a 1.4s linear infinite;will-change:transform}.list-skeleton__line--short[data-v-33f77e5a]{width:55%}@keyframes list-skeleton-shimmer-33f77e5a{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){.list-skeleton__line[data-v-33f77e5a]:after{animation:none;will-change:auto;transform:none;opacity:.5}}html[data-reduced-motion]{animation:none;will-change:auto;transform:none;opacity:.5}.confirm-dialog{width:min(28rem,calc(100vw - 2rem));max-height:calc(100dvh - 2rem);overflow:auto;border:1px solid var(--ui-control-border);border-radius:var(--ui-radius-md);background:var(--ui-surface-raised);color:var(--ui-text);padding:0;box-shadow:var(--ui-shadow-md)}.confirm-dialog::backdrop{background:var(--backdrop-strong)}.confirm-dialog__body{display:grid;gap:var(--space-3, .75rem);padding:var(--space-5, 1.25rem)}.confirm-dialog__title{margin:0;font-family:var(--font-display);font-size:var(--text-lg)}.confirm-dialog__message{margin:0;color:var(--ui-muted);font-size:var(--text-ms);line-height:1.5}.confirm-dialog__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2, .5rem)}.confirm-dialog__actions button{min-height:2.75rem}.confirm-dialog__confirm--danger{border-color:var(--ui-danger)}@media(prefers-reduced-motion:no-preference){.confirm-dialog[open]{animation:confirm-dialog-in var(--motion-panel, .22s) var(--motion-ease, ease-out)}}html[data-reduced-motion] .confirm-dialog[open]{animation:none}@keyframes confirm-dialog-in{0%{opacity:0;transform:translateY(.4rem)}}.chat-dock{--ui-surface: var(--v2-surface);--ui-surface-raised: var(--v2-surface-raised);--ui-text: var(--v2-ink);--ui-muted: var(--v2-muted);--ui-border: var(--v2-border);--ui-accent: var(--v2-accent);--ui-accent-contrast: #17251e;--ui-focus: var(--v2-accent);--panel-shift-x: var(--space-4);--panel-shift-y: 0px;position:fixed;z-index:45;top:calc(var(--scene-nav-bottom, 10.6rem) + var(--space-2));right:var(--space-3);bottom:var(--space-3);display:flex;flex-direction:column;box-sizing:border-box;width:min(46rem,calc(100vw - 2 * var(--space-3)));min-height:0;overflow:hidden;border:1px solid var(--v2-border);border-radius:var(--ui-radius-lg);background:var(--v2-surface);box-shadow:var(--ui-shadow-md);color:var(--v2-ink);font-family:var(--font-ui);font-size:var(--text-ms)}.chat-dock:focus-visible{outline:2px solid var(--v2-accent);outline-offset:-2px}.chat-dock__header,.chat-channel-bar{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3)}.chat-dock__header{border-bottom:1px solid var(--v2-border);background:var(--v2-surface-raised)}.chat-dock__title,.chat-channel-bar__title{margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-dock__title{font:700 var(--text-lg) var(--font-display)}.chat-channel-bar__title{font-size:var(--text-md);font-weight:700}.chat-dock__actions,.chat-channel-bar__actions,.chat-panel__footer,.chat-list__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1)}.chat-dock__notice{flex:0 0 auto;margin:0;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--v2-border);background:var(--v2-surface-raised);font-size:var(--text-sm)}.chat-dock__notice--error{color:var(--v2-danger, #ffb09b)}.chat-button,.chat-icon-button,.chat-conversation,.chat-segment button,.chat-chip,.chat-picker__result,.chat-menu button{box-sizing:border-box;border:1px solid var(--v2-border);border-radius:var(--ui-radius-sm);background:var(--v2-surface);color:var(--v2-ink);font:inherit;font-size:var(--text-sm);cursor:pointer;transition:background-color var(--motion-fast) var(--motion-ease),border-color var(--motion-fast) var(--motion-ease)}.chat-button{min-height:var(--control-h-sm);padding:0 var(--space-3)}.chat-icon-button{display:inline-grid;place-items:center;width:var(--control-h);height:var(--control-h);padding:0}.chat-icon-button svg{width:1.2rem;height:1.2rem}.chat-button:hover:not(:disabled),.chat-icon-button:hover,.chat-conversation:hover,.chat-segment button:hover,.chat-chip:hover,.chat-picker__result:hover,.chat-menu button:hover{border-color:var(--v2-accent);background:var(--v2-surface-raised)}.chat-button:focus-visible,.chat-icon-button:focus-visible,.chat-conversation:focus-visible,.chat-segment button:focus-visible,.chat-chip:focus-visible,.chat-picker__result:focus-visible,.chat-menu button:focus-visible,.chat-token:focus-visible,.chat-launcher:focus-visible,.chat-picker__input:focus-visible,.chat-composer__input:focus-visible{outline:2px solid var(--v2-accent);outline-offset:2px}.chat-button:disabled{opacity:.55;cursor:not-allowed}.chat-button--primary{border-color:var(--v2-accent);background:var(--v2-accent);color:#17251e;font-weight:700}.chat-button--primary:hover:not(:disabled){background:color-mix(in srgb,var(--v2-accent) 86%,white)}.chat-button--danger{border-color:var(--v2-danger, #c0614f)}.chat-icon-button[aria-pressed=true],.chat-segment .is-active{border-color:var(--v2-accent);background:var(--v2-surface-raised)}.chat-dock__body{display:grid;flex:1 1 auto;grid-template-columns:minmax(13rem,16rem) minmax(0,1fr);min-height:0}.chat-dock__list{min-height:0;overflow-y:auto;overscroll-behavior:contain;border-right:1px solid var(--v2-border);background:var(--v2-canvas)}.chat-pane{display:flex;flex-direction:column;min-width:0;min-height:0}.chat-pane .chat-channel-bar{border-bottom:1px solid var(--v2-border)}.chat-channel-bar__title{flex:1 1 auto}.chat-conversations{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-2) 0 var(--space-3)}.chat-conversations__heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-1) var(--space-3)}.chat-conversations__heading h3{margin:0;color:var(--v2-muted);font-size:var(--text-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase}.chat-conversations__add{display:inline-grid;place-items:center;width:var(--control-h-sm);height:var(--control-h-sm);padding:0;border:1px solid var(--v2-border);border-radius:var(--ui-radius-sm);background:transparent;color:var(--v2-ink);cursor:pointer}.chat-conversations__add svg{width:1rem;height:1rem}.chat-conversations__add:hover{border-color:var(--v2-accent)}.chat-conversations__add:focus-visible{outline:2px solid var(--v2-accent);outline-offset:2px}.chat-conversations__list{display:grid;gap:1px;margin:0;padding:0 var(--space-2);list-style:none}.chat-conversations__empty{margin:0;padding:0 var(--space-3);color:var(--v2-muted);font-size:var(--text-sm)}.chat-conversations__new-group{margin:var(--space-2) var(--space-3) 0;border-style:dashed;color:var(--v2-muted)}.chat-conversation{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-2);width:100%;min-height:3.25rem;padding:var(--space-2);border-color:transparent;background:transparent;text-align:left}.chat-conversation.is-active{border-color:var(--v2-border);background:var(--v2-surface-raised);box-shadow:inset 3px 0 0 var(--v2-accent)}.chat-conversation.is-muted .chat-conversation__name{color:var(--v2-muted)}.chat-conversation__avatar{display:inline-grid;place-items:center;width:2.25rem;height:2.25rem;border:1px solid var(--v2-border);border-radius:50%;background:var(--v2-surface-raised);color:var(--v2-accent);font:700 var(--text-md) var(--font-display)}.chat-conversation[data-channel-kind=world] .chat-conversation__avatar,.chat-conversation[data-channel-kind=alliance] .chat-conversation__avatar{border-radius:var(--ui-radius-sm)}.chat-conversation__text{display:grid;min-width:0}.chat-conversation__name,.chat-conversation__subtitle{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-conversation__name{font-size:var(--text-ms);font-weight:600}.chat-conversation.is-unread .chat-conversation__name{font-weight:800}.chat-conversation__subtitle{color:var(--v2-muted);font-size:var(--text-xs)}.chat-conversation__meta{display:grid;justify-items:end;gap:.2rem}.chat-conversation__time{color:var(--v2-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.chat-conversation__muted{color:var(--v2-muted)}.chat-conversation__muted svg{width:.95rem;height:.95rem}.chat-tab__badge,.chat-launcher__badge{display:inline-grid;place-items:center;min-width:1.15rem;height:1.15rem;padding:0 .28rem;border-radius:999px;background:var(--v2-accent);color:#17251e;font-size:var(--text-xs);font-weight:700;font-variant-numeric:tabular-nums;line-height:1}.chat-messages{flex:1 1 auto;min-height:0;padding:var(--space-2) var(--space-3);overflow-y:auto;overscroll-behavior:contain}.chat-messages__older{display:block;margin:0 auto var(--space-2)}.chat-messages__list{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none}.chat-message{display:grid;gap:.15rem;padding:var(--space-2) var(--space-3);border:1px solid var(--v2-border);border-radius:var(--ui-radius-md);background:var(--v2-surface-raised)}.chat-message--own{border-color:color-mix(in srgb,var(--v2-accent) 55%,var(--v2-border))}.chat-message__meta{display:flex;align-items:center;gap:var(--space-2);color:var(--v2-muted);font-size:var(--text-xs)}.chat-message__author{min-width:0;overflow:hidden;color:var(--v2-ink);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap}.chat-message__menu{position:relative;margin-left:auto}.chat-message__menu .chat-icon-button{width:var(--control-h-sm);height:var(--control-h-sm)}.chat-menu{position:absolute;z-index:2;top:100%;right:0;display:grid;gap:2px;min-width:11rem;margin:2px 0 0;padding:var(--space-1);border:1px solid var(--v2-border);border-radius:var(--ui-radius-md);background:var(--v2-canvas);box-shadow:var(--ui-shadow-sm);list-style:none}.chat-menu button{width:100%;min-height:var(--control-h-sm);padding:0 var(--space-2);border-color:transparent;text-align:left}.chat-body{margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.chat-token{display:inline;margin:0;padding:0 .3rem;border:1px solid color-mix(in srgb,var(--v2-accent) 60%,transparent);border-radius:var(--ui-radius-sm);background:color-mix(in srgb,var(--v2-accent) 14%,transparent);color:var(--v2-accent);font:inherit;font-weight:700;white-space:nowrap}button.chat-token{cursor:pointer}a.chat-token{text-decoration:none}button.chat-token:hover,a.chat-token:hover{background:color-mix(in srgb,var(--v2-accent) 28%,transparent)}.chat-report{display:grid;gap:var(--space-1);margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--v2-border);font-size:var(--text-sm)}.chat-report h4{margin:0;font-size:var(--text-md)}.chat-composer{display:grid;flex:0 0 auto;gap:var(--space-2);padding:var(--space-2) var(--space-3) var(--space-3);border-top:1px solid var(--v2-border);background:var(--v2-surface-raised)}.chat-composer__input,.chat-picker__input{box-sizing:border-box;width:100%;padding:var(--space-2);border:1px solid var(--v2-border);border-radius:var(--ui-radius-sm);background:var(--v2-canvas);color:var(--v2-ink);font:inherit;font-size:var(--text-ms)}.chat-composer__input{min-height:3.2rem;max-height:8rem;resize:vertical}.chat-composer__input:disabled{opacity:.6}.chat-composer__row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.chat-composer__status{flex:1 1 8rem;margin:0;color:var(--v2-muted);font-size:var(--text-xs)}.chat-composer__counter{color:var(--v2-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.chat-composer__counter.is-near{color:var(--v2-accent)}.chat-panel{display:grid;flex:1 1 auto;align-content:start;gap:var(--space-2);min-height:0;padding:var(--space-3);overflow-y:auto}.chat-panel__heading{margin:var(--space-2) 0 0;font-size:var(--text-md)}.chat-panel__hint,.chat-muted{margin:0;color:var(--v2-muted);font-size:var(--text-sm)}.chat-messages>.chat-panel__hint{padding:var(--space-3) 0;text-align:center}.chat-panel__hint a{color:var(--v2-accent)}.chat-segment{display:flex;gap:var(--space-1)}.chat-segment button{flex:1 1 0;min-height:var(--control-h-sm)}.chat-picker,.chat-group-form{display:grid;gap:var(--space-1)}.chat-picker__label,.chat-report label{font-size:var(--text-sm);font-weight:700}.chat-picker__status{min-height:1.2em;margin:0;color:var(--v2-muted);font-size:var(--text-xs)}.chat-picker__results,.chat-list,.chat-chips{display:grid;gap:var(--space-1);margin:0;padding:0;list-style:none}.chat-chips{display:flex;flex-wrap:wrap}.chat-picker__result{width:100%;min-height:var(--control-h-sm);padding:0 var(--space-2);text-align:left}.chat-chip{min-height:var(--control-h-sm);padding:0 var(--space-2)}.chat-list__row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-1) 0;border-bottom:1px solid var(--v2-border)}.chat-switch{display:flex;align-items:center;gap:var(--space-2);min-height:var(--control-h-sm)}.chat-switch input{width:1.1rem;height:1.1rem;accent-color:var(--v2-accent)}.chat-launcher{position:relative;display:grid;flex:0 0 auto;place-items:center;width:2.75rem;height:2.75rem;padding:0;border:1px solid var(--v2-border);border-radius:.65rem;background:var(--ui-surface-raised, var(--v2-surface-raised));color:var(--v2-ink);cursor:pointer;transition:background-color var(--motion-fast) var(--motion-ease),border-color var(--motion-fast) var(--motion-ease)}.chat-launcher svg{width:1.4rem;height:1.4rem}.chat-launcher:hover,.chat-launcher.is-open{border-color:var(--v2-accent);background:var(--v2-surface-raised)}.chat-launcher__badge{position:absolute;top:-.3rem;right:-.3rem}@media(max-width:45rem){.chat-dock{--panel-shift-x: 0px;--panel-shift-y: var(--space-6);top:auto;right:0;bottom:var(--scene-bottom-bar, env(safe-area-inset-bottom, 0px));left:0;width:auto;height:min(40rem,calc(100dvh - var(--scene-nav-bottom, 8.2rem) - var(--scene-bottom-bar, 0px) - var(--space-3)));border-right:0;border-bottom:0;border-left:0;border-radius:var(--ui-radius-lg) var(--ui-radius-lg) 0 0}.chat-dock__body{grid-template-columns:minmax(0,1fr)}.chat-dock__list{border-right:0}.chat-conversation{min-height:3.5rem}.chat-pane__back{flex:0 0 auto}.chat-pane .chat-channel-bar{flex-wrap:wrap}.chat-pane .chat-channel-bar__actions{flex:1 0 100%;flex-wrap:nowrap;justify-content:flex-end}.chat-dock__actions .chat-icon-button,.chat-icon-button{width:var(--control-h);height:var(--control-h)}}@media(prefers-reduced-motion:reduce){.chat-button,.chat-icon-button,.chat-conversation,.chat-launcher{transition:none}}.help-card{display:grid;gap:var(--space-2);min-width:0;margin-top:var(--space-2);padding:var(--space-3);border:1px solid color-mix(in srgb,currentcolor 24%,transparent);border-left:.3rem solid var(--ui-accent, var(--v2-accent, #d8b367));border-radius:var(--ui-radius-md);background:color-mix(in srgb,currentcolor 6%,transparent);font-family:var(--font-ui);font-size:var(--text-sm);line-height:1.4;overflow-wrap:anywhere}.help-card--resources{border-left-color:var(--ui-relation-peace, var(--map-relation-peace))}.help-card--support.help-card--open{border-left-color:var(--ui-danger, var(--map-relation-enemy))}.help-card:not(.help-card--open):not(.help-card--loading){opacity:.86}.help-card--unavailable,.help-card--loading{border-left-color:color-mix(in srgb,currentcolor 40%,transparent)}.help-card h4{margin:0;font:700 var(--text-xs) / 1.3 var(--font-ui);letter-spacing:.04em;text-transform:uppercase;opacity:.8}.help-card p,.help-card ul{margin:0}.help-card ul{padding:0;list-style:none}.help-card__head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2)}.help-card__kind{font:700 var(--text-sm) / 1.3 var(--font-display, var(--font-ui))}.help-card__village{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-1) var(--space-2)}.help-card__coords{color:var(--v2-accent, var(--ui-accent));font-weight:650;font-variant-numeric:tabular-nums}.help-card__owner,.help-hint{opacity:.82;font-size:var(--text-xs)}.help-card__impact{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-1) var(--space-2)}.help-card__note{padding-left:var(--space-2);border-left:2px solid color-mix(in srgb,currentcolor 30%,transparent);font-style:italic}.help-countdown{font-variant-numeric:tabular-nums;font-weight:750}.help-card--support.help-card--open .help-countdown{color:var(--v2-danger, var(--ui-danger))}.help-card__coords:focus-visible,.help-chip--link:focus-visible{outline:2px solid var(--ui-focus, var(--v2-accent, #d8b367));outline-offset:2px}.help-chip{display:inline-flex;align-items:center;gap:.35em;border:1px solid color-mix(in srgb,currentcolor 45%,transparent);border-radius:999px;padding:.05rem .55rem;font:700 var(--text-xs) / 1.5 var(--font-ui);white-space:nowrap;color:inherit;text-decoration:none}.help-chip:before{content:"";flex:none;width:.5em;height:.5em;border-radius:50%;background:color-mix(in srgb,currentcolor 50%,transparent)}.help-chip--open:before,.help-chip--ok:before{background:var(--ui-success, #7ddb8f)}.help-chip--fulfilled:before{background:var(--ui-success, #7ddb8f)}.help-chip--late:before,.help-chip--cancelled:before{background:var(--ui-danger, #ff8a7a)}.help-chip--transit:before{background:var(--v2-accent, var(--ui-accent))}.help-chip--peace{border-color:var(--ui-relation-peace, var(--map-relation-peace))}.help-chip--peace:before{background:var(--ui-relation-peace, var(--map-relation-peace))}.help-chip--link{cursor:pointer;min-height:var(--control-h-sm);border-color:var(--v2-accent, var(--ui-accent))}.help-chip--link:before{background:var(--v2-accent, var(--ui-accent))}.help-progress,.help-bar{position:relative;display:block;overflow:hidden;border-radius:999px;background:color-mix(in srgb,currentcolor 16%,transparent)}.help-progress{height:.5rem}.help-progress__fill,.help-bar__delivered{display:block;height:100%;background:var(--ui-success, #7ddb8f);transition:width var(--motion-panel) var(--motion-ease)}.help-bar{display:flex;height:.6rem}.help-bar__transit{display:block;height:100%;background:repeating-linear-gradient(135deg,var(--v2-accent, var(--ui-accent)) 0 .3rem,transparent .3rem .6rem);transition:width var(--motion-panel) var(--motion-ease)}.help-resources{display:grid;gap:var(--space-2)}.help-resources__row{display:grid;grid-template-columns:auto minmax(4.5rem,auto) minmax(4rem,1fr);grid-template-areas:"icon name bar" ". figures figures";align-items:center;gap:var(--space-1) var(--space-2)}.help-resources__row>img{grid-area:icon}.help-resources__name{grid-area:name;font-weight:650}.help-resources__row>.help-bar{grid-area:bar}.help-resources__figures{grid-area:figures;font-variant-numeric:tabular-nums;font-size:var(--text-xs)}.help-resources__figures small{margin-left:var(--space-2);opacity:.85}.help-contributors ul,.help-arrivals ul{display:grid;gap:var(--space-1)}.help-arrivals li{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2)}.help-card__actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.help-card__actions>button{min-height:var(--control-h)}.help-feedback{margin:0;font-weight:650}.help-feedback--error{color:var(--map-relation-enemy)}.chat-dock .help-card .secondary-button,.chat-dock .help-card .confirm-button,.help-dialog .help-card .secondary-button,.help-reach .secondary-button{min-height:var(--control-h)}.chat-dock .help-card .secondary-button,.chat-dock .help-card .confirm-button{border-color:color-mix(in srgb,var(--v2-accent, #d8b367) 45%,transparent);background:color-mix(in srgb,var(--v2-accent, #d8b367) 10%,transparent);color:var(--v2-accent, #d8b367)}.help-reach{display:grid;gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid color-mix(in srgb,currentcolor 20%,transparent)}.help-reach__list{display:grid;gap:var(--space-2)}.help-reach__village{display:grid;gap:var(--space-2);padding:var(--space-2);border:1px solid color-mix(in srgb,currentcolor 18%,transparent);border-radius:var(--ui-radius-sm)}.help-reach__head{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-1) var(--space-2)}.help-reach__coords,.help-reach__distance{opacity:.8;font-size:var(--text-xs)}.help-reach__units{display:grid;gap:var(--space-1)}.help-reach__unit{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2)}.help-reach__unit.is-empty{opacity:.6}.help-reach__unit-name{font-weight:650}.help-reach__send{justify-self:start}.help-dialog{width:min(32rem,calc(100vw - 2rem));max-height:calc(100dvh - 2rem);overflow:auto;border:1px solid var(--ui-control-border);border-radius:var(--ui-radius-md);background:var(--ui-surface-raised);color:var(--ui-text);padding:0;box-shadow:var(--ui-shadow-md)}.help-dialog::backdrop{background:var(--backdrop-strong)}.help-dialog__body{display:grid;gap:var(--space-3);padding:var(--space-4)}.help-dialog__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.help-dialog__title{margin:0;font:700 var(--text-lg) / 1.3 var(--font-display)}.help-dialog__close{flex:none;display:inline-grid;place-items:center;min-width:var(--control-h);min-height:var(--control-h);border:0;border-radius:var(--ui-radius-md);background:transparent;color:inherit;cursor:pointer}.help-dialog__close:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.help-dialog .help-card{margin-top:0;color:var(--ui-text)}.help-form{display:grid;gap:var(--space-3)}.help-form label{font-size:var(--text-sm);font-weight:650}.help-form input,.help-form select,.help-form textarea{width:100%;min-height:var(--control-h);font:inherit}.help-form textarea{resize:vertical}.help-field{display:grid;gap:var(--space-1)}.help-fieldset{display:grid;gap:var(--space-2);margin:0;padding:0;border:0;min-width:0}.help-fieldset legend{padding:0;font-size:var(--text-sm);font-weight:700}.help-facts{display:grid;gap:var(--space-2);margin:0;padding:var(--space-2) var(--space-3);border-radius:var(--ui-radius-sm);background:var(--ui-surface-muted)}.help-facts>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-1) var(--space-3)}.help-facts dt{color:var(--ui-muted);font-size:var(--text-sm)}.help-facts dd{margin:0;font-weight:700}.help-unit-grid,.help-resource-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(9.5rem,1fr));gap:var(--space-2);margin:0;padding:0;list-style:none}.help-unit-field{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"art label" "art input";align-items:center;gap:0 var(--space-2)}.help-unit-field>:first-child{grid-area:art;width:2rem;height:2rem;object-fit:contain}.help-unit-field label{grid-area:label}.help-unit-field input{grid-area:input}.help-form__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2)}.help-form__actions button{min-height:var(--control-h)}@media(max-width:30rem){.help-form__actions>button{flex:1 1 8rem}}@media(prefers-reduced-motion:no-preference){.help-dialog[open]{animation:help-dialog-in var(--motion-panel, .22s) var(--motion-ease, ease-out)}}html[data-reduced-motion] .help-dialog[open]{animation:none}@keyframes help-dialog-in{0%{opacity:0;transform:translateY(.4rem)}}.help-panel{min-width:0}.help-panel__limits{margin:0;color:var(--ui-muted);font:700 var(--text-sm) / 1.4 var(--font-ui)}.help-panel__group{display:grid;gap:var(--space-2)}.help-panel__group-title{margin:0;font:700 var(--text-md) / 1.3 var(--font-display)}.help-panel .help-card{color:var(--ui-text)}.help-threats{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none}.help-threat{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"icon main time" "actions actions actions";align-items:center;gap:var(--space-2) var(--space-3);min-width:0;padding:var(--space-2) var(--space-3);border:1px solid var(--ui-border);border-left:.3rem solid var(--ui-danger);border-radius:var(--ui-radius-sm);background:var(--ui-surface-muted)}.help-threat--scout{border-left-color:var(--ui-accent)}.help-threat.is-arrived{opacity:.6}.help-threat__icon{grid-area:icon;width:1.5rem;height:1.5rem;color:var(--ui-danger)}.help-threat--scout .help-threat__icon{color:var(--ui-accent)}.help-threat__main{grid-area:main;display:grid;gap:.1rem;min-width:0;overflow-wrap:anywhere}.help-threat__defender{color:var(--ui-muted);font-size:var(--text-sm)}.help-threat__time{grid-area:time;display:grid;justify-items:end;font-variant-numeric:tabular-nums}.help-threat__time small{color:var(--ui-muted)}.help-threat__actions{grid-area:actions;display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.help-threat__actions .secondary-button{min-height:var(--control-h)}.help-threat .help-card__coords{color:var(--ui-accent)}@media(max-width:30rem){.help-threat{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"icon main" "time time" "actions actions"}.help-threat__time{justify-items:start;grid-auto-flow:column;justify-content:start;gap:var(--space-2)}.help-resources__row{grid-template-columns:auto 1fr;grid-template-areas:"icon name" "bar bar" "figures figures"}}.building-page__help-ask{min-height:var(--control-h);justify-self:start}.ops-panel{min-width:0}.ops-panel__limits,.ops-hint{margin:0;color:var(--ui-muted);font:600 var(--text-sm) / 1.4 var(--font-ui)}.ops-hint{font-size:var(--text-xs);font-weight:500}.ops-hint--rule{color:var(--ui-text)}.ops-panel__toolbar{display:flex;flex-wrap:wrap;gap:var(--space-2)}.ops-panel__toolbar .primary-button,.ops-item .secondary-button,.ops-details__actions>*,.ops-assignment__actions>*,.ops-target__add{min-height:var(--control-h)}.ops-back{justify-self:start;min-height:var(--control-h-sm, var(--control-h))}.ops-group,.ops-mine{display:grid;gap:var(--space-2)}.ops-group-title{margin:0;font:700 var(--text-md) / 1.3 var(--font-display)}.ops-list,.ops-mine__list,.ops-targets__list,.ops-assignments,.ops-summary__list,.ops-reach__targets,.ops-reach__units,.ops-target-rows{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none}.ops-chip{display:inline-flex;align-items:center;gap:.35em;border:1px solid color-mix(in srgb,currentcolor 40%,transparent);border-radius:999px;padding:.05rem .55rem;font:700 var(--text-xs) / 1.5 var(--font-ui);white-space:nowrap;color:inherit}.ops-chip:before{content:"";flex:none;min-width:.5em;height:.5em;border-radius:50%;background:color-mix(in srgb,currentcolor 50%,transparent)}.ops-chip--ok:before,.ops-chip--completed:before{content:"✓";width:auto;height:auto;background:none;color:var(--ui-success)}.ops-chip--sent:before{content:"✓";width:auto;height:auto;background:none;color:var(--ui-success)}.ops-chip--late:before,.ops-chip--bad:before,.ops-chip--cancelled:before{content:"!";width:auto;height:auto;background:none;color:var(--ui-danger);font-weight:800}.ops-chip--missed:before{content:"✕";width:auto;height:auto;background:none;color:var(--ui-danger)}.ops-chip--warn:before{content:"▲";width:auto;height:auto;background:none;color:var(--ui-accent)}.ops-chip--pending:before,.ops-chip--planned:before{content:"○";width:auto;height:auto;background:none;color:var(--ui-accent)}.ops-chip--peace{border-color:var(--ui-relation-peace, var(--map-relation-peace))}.ops-countdown{font-variant-numeric:tabular-nums;font-weight:750}.ops-late{color:var(--ui-danger);font-weight:750}.ops-late:before{content:"! "}.ops-error{color:var(--ui-danger);font-weight:650}.ops-feedback{margin:0;font-weight:650}.ops-feedback--error{color:var(--ui-danger)}.ops-visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.ops-item,.ops-target,.ops-send{display:grid;gap:var(--space-2);min-width:0;padding:var(--space-3);border:1px solid var(--ui-border);border-left:.3rem solid var(--ui-accent);border-radius:var(--ui-radius-md);background:var(--ui-surface-muted);overflow-wrap:anywhere}.ops-item--finished{opacity:.88;border-left-color:var(--ui-border)}.ops-item__head,.ops-target__head,.ops-details__chips,.ops-summary__totals{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2)}.ops-item__line,.ops-details__line,.ops-details__landing{margin:0;display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-2);align-items:baseline}.ops-item .secondary-button{justify-self:start}.ops-send{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"main time" "main go";align-items:center}.ops-send--late{border-left-color:var(--ui-danger);background:color-mix(in srgb,var(--ui-danger) 10%,var(--ui-surface-muted))}.ops-send--sent{border-left-color:var(--ui-success)}.ops-send--missed{border-left-color:var(--ui-border);opacity:.8}.ops-send__main{grid-area:main;display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2);min-width:0}.ops-send__main small{flex-basis:100%;color:var(--ui-muted)}.ops-send__time{grid-area:time;display:grid;justify-items:end;gap:var(--space-1);text-align:right}.ops-send__time small{color:var(--ui-muted)}.ops-send__go{grid-area:go;min-height:var(--control-h);justify-self:end}.ops-details{display:grid;gap:var(--space-4);min-width:0}.ops-details__head{display:grid;gap:var(--space-2)}.ops-details__title{margin:0;font:700 var(--text-lg) / 1.3 var(--font-display)}.ops-details__note{margin:0;padding-left:var(--space-2);border-left:2px solid var(--ui-border);white-space:pre-line}.ops-details__actions,.ops-assignment__actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.ops-target.is-captured{border-left-color:var(--ui-success)}.ops-target__coords{color:var(--ui-accent);font-weight:700;font-variant-numeric:tabular-nums}.ops-target__coords:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.ops-assignment{display:grid;gap:var(--space-2);padding:var(--space-2);border:1px solid var(--ui-border);border-radius:var(--ui-radius-sm);background:var(--ui-surface)}.ops-assignment.is-mine{border-color:var(--ui-accent)}.ops-assignment--late{background:color-mix(in srgb,var(--ui-danger) 8%,var(--ui-surface))}.ops-assignment__main,.ops-assignment__time{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2)}.ops-assignment__main small{flex-basis:100%}.help-dialog.ops-dialog{width:min(40rem,calc(100vw - 2rem))}.ops-kinds{display:flex;flex-wrap:wrap;gap:var(--space-2)}.ops-kind{position:relative}.ops-kind input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;min-height:0;opacity:0;cursor:pointer}.ops-kind span{display:inline-flex;align-items:center;min-height:var(--control-h);padding:0 var(--space-3);border:1px solid var(--ui-control-border);border-radius:999px;font-weight:700}.ops-kind input:checked+span{border-color:var(--ui-accent);background:color-mix(in srgb,var(--ui-accent) 18%,transparent)}.ops-kind input:checked+span:before{content:"✓";margin-right:.35em}.ops-kind input:focus-visible+span{outline:2px solid var(--ui-focus);outline-offset:2px}.ops-landing{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:var(--space-3)}.ops-switch{display:flex;align-items:flex-start;gap:var(--space-2)}.ops-switch input{flex:none;width:1.25rem;min-height:1.25rem;margin-top:.2rem}.ops-switch span{display:grid;gap:.15rem}.ops-switch small{color:var(--ui-muted);font-weight:500}.ops-target-row{display:grid;grid-template-columns:minmax(4.5rem,auto) minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:var(--space-2)}.ops-target-row__label{align-self:center;font-size:var(--text-sm);font-weight:700}.ops-target-row__field{display:grid;gap:.15rem}.ops-target-row .secondary-button,.ops-target-add{min-height:var(--control-h)}.ops-target-add{justify-self:start}.ops-assign{display:grid;gap:var(--space-2)}.ops-assign__selects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.ops-unit-home{grid-column:2}.ops-reach{display:grid;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--ui-border);border-radius:var(--ui-radius-sm)}.ops-reach__title{margin:0;font:700 var(--text-xs) / 1.3 var(--font-ui);letter-spacing:.04em;text-transform:uppercase}.ops-reach__plan{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin:0;font-weight:650}.ops-reach__target{display:grid;gap:var(--space-1)}.ops-reach__unit{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2)}.ops-reach__unit.is-late{opacity:.85}.ops-reach__unit-name{font-weight:650}.ops-summary{display:grid;gap:var(--space-3)}.ops-summary__block{display:grid;gap:var(--space-1)}.ops-summary__block h4{margin:0;font:700 var(--text-sm) / 1.3 var(--font-ui)}.ops-summary__list li{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2)}.ops-summary__table{width:100%;border-collapse:collapse;font-size:var(--text-sm);font-variant-numeric:tabular-nums}.ops-summary__table th,.ops-summary__table td{padding:var(--space-1) var(--space-2);border-bottom:1px solid var(--ui-border);text-align:right}.ops-summary__table th:first-child{text-align:left}.ops-link-button{display:inline-flex;align-items:center;min-height:var(--control-h);text-decoration:none}.ops-card{display:grid;gap:var(--space-2);min-width:0;margin-top:var(--space-2);padding:var(--space-3);border:1px solid color-mix(in srgb,currentcolor 24%,transparent);border-left:.3rem solid var(--ui-accent, var(--v2-accent, #d8b367));border-radius:var(--ui-radius-md);background:color-mix(in srgb,currentcolor 6%,transparent);font-family:var(--font-ui);font-size:var(--text-sm);line-height:1.4;overflow-wrap:anywhere}.ops-card--fake{border-left-style:dashed}.ops-card--support{border-left-color:var(--ui-relation-peace, var(--map-relation-peace))}.ops-card--completed,.ops-card--cancelled,.ops-card--unavailable,.ops-card--loading{opacity:.88;border-left-color:color-mix(in srgb,currentcolor 40%,transparent)}.ops-card p{margin:0}.ops-card__head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2)}.ops-card__name{font:700 var(--text-sm) / 1.3 var(--font-display, var(--font-ui))}.ops-card__figures,.ops-card .ops-hint{opacity:.85;font-size:var(--text-xs)}.ops-card .ops-hint{color:inherit}.ops-card__open{justify-self:start;display:inline-flex;align-items:center;min-height:var(--control-h);text-decoration:none}.chat-dock .ops-card .secondary-button{border-color:color-mix(in srgb,var(--v2-accent, #d8b367) 45%,transparent);background:color-mix(in srgb,var(--v2-accent, #d8b367) 10%,transparent);color:var(--v2-accent, #d8b367)}.ops-panel .ops-card{color:var(--ui-text)}.ops-bar{position:fixed;z-index:59;top:calc(var(--mobile-sticky-header-height, var(--game-header-height, 3.5rem)) + var(--space-2));right:var(--space-4);left:var(--space-4);width:fit-content;max-width:calc(100vw - 2 * var(--space-2));margin-inline:auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--v2-accent, var(--ui-accent));border-radius:var(--ui-radius-md);background:var(--v2-surface-raised, var(--ui-surface-raised));color:var(--v2-ink, var(--ui-text));box-shadow:var(--ui-shadow-md)}.attack-alarm~.ops-bar{top:calc(var(--mobile-sticky-header-height, var(--game-header-height, 3.5rem)) + var(--control-h) + var(--space-4))}.ops-bar--late{border-color:var(--ui-danger)}.ops-bar__text{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-1) var(--space-2);min-width:0}.ops-bar__name{overflow-wrap:anywhere}.ops-bar__go{min-height:var(--control-h)}.ops-bar__dismiss{display:inline-grid;place-items:center;min-width:var(--control-h);min-height:var(--control-h);border:0;border-radius:var(--ui-radius-md);background:transparent;color:inherit;cursor:pointer}.ops-bar__dismiss:hover{background:var(--ui-surface-muted)}.ops-bar__dismiss:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.ops-bar .ops-feedback{flex-basis:100%}@media(max-width:30rem){.ops-landing,.ops-assign__selects{grid-template-columns:minmax(0,1fr)}.ops-target-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;grid-template-areas:"label label label" "x y remove"}.ops-target-row__label{grid-area:label}.ops-send{grid-template-columns:minmax(0,1fr);grid-template-areas:"main" "time" "go"}.ops-send__time{justify-items:start;text-align:left}.ops-send__go{justify-self:stretch}.attack-alarm~.ops-bar{top:calc(var(--mobile-sticky-header-height, var(--game-header-height, 3.5rem)) + 2 * var(--control-h) + var(--space-4))}.ops-summary{overflow-x:auto}}@media(max-width:30rem){.ops-target-row__field:nth-of-type(1){grid-area:x}.ops-target-row__field:nth-of-type(2){grid-area:y}.ops-target-row__remove{grid-area:remove}}.alliance-panel .ops-switch input[type=checkbox]{width:1.25rem;inline-size:1.25rem;padding:0}.rec-panel{display:grid;gap:var(--space-3);min-width:0}.rec-hint{margin:0;color:var(--ui-muted);font:500 var(--text-xs) / 1.45 var(--font-ui)}.rec-error{margin:0;color:var(--ui-danger);font:650 var(--text-sm) / 1.4 var(--font-ui)}.rec-feedback{margin:0;font:650 var(--text-sm) / 1.4 var(--font-ui)}.rec-description,.rec-message{margin:0;white-space:pre-line;overflow-wrap:anywhere}.rec-message{padding-left:var(--space-2);border-left:2px solid var(--ui-border)}.rec-chips{display:flex;flex-wrap:wrap;gap:var(--space-1);margin:0;padding:0;list-style:none}.rec-chip{display:inline-flex;align-items:center;gap:.35em;border:1px solid color-mix(in srgb,currentcolor 40%,transparent);border-radius:999px;padding:.05rem .55rem;font:700 var(--text-xs) / 1.5 var(--font-ui);white-space:nowrap;color:inherit}.rec-chip--open:before,.rec-chip--accepted:before,.rec-chip--joined:before,.rec-chip--own:before{content:"";width:.5em;height:.5em;border-radius:50%;background:var(--ui-success)}.rec-chip--application:before,.rec-chip--pending:before{content:"";width:.5em;height:.5em;border:2px solid var(--ui-accent);border-radius:50%}.rec-chip--closed:before,.rec-chip--rejected:before,.rec-chip--removed:before{content:"";width:.5em;height:.12em;background:var(--ui-danger)}.rec-chip--withdrawn:before,.rec-chip--expired:before,.rec-chip--left:before,.rec-chip--ending:before{content:"";width:.5em;height:.5em;border-radius:50%;background:color-mix(in srgb,currentcolor 50%,transparent)}.rec-chip--removable{padding-right:.2rem}.rec-chip--removable button{display:inline-grid;place-items:center;min-width:1.5rem;min-height:1.5rem;border:0;border-radius:50%;background:transparent;color:inherit;cursor:pointer}.rec-chip--removable button:focus-visible{outline:2px solid var(--ui-focus);outline-offset:1px}.rec-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.rec-actions .primary-button,.rec-actions .secondary-button,.rec-item__actions>*{min-height:var(--control-h)}.rec-actions>p{margin:0}.rec-tab{min-width:0}.rec-tab__directory{justify-self:start;min-height:var(--control-h)}.rec-section{display:grid;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--ui-border)}.rec-section__title{display:flex;align-items:center;gap:var(--space-2);margin:0;font:700 var(--text-md) / 1.3 var(--font-display)}.rec-count{min-width:1.5rem;padding:.1rem .45rem;border-radius:999px;background:var(--ui-accent);color:var(--ui-accent-contrast);font:700 var(--text-xs) / 1.4 var(--font-ui);text-align:center;font-variant-numeric:tabular-nums}.rec-form,.rec-fieldset{display:grid;gap:var(--space-3);min-width:0}.rec-fieldset{margin:0;padding:0;border:0}.rec-form__row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.rec-form__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.rec-form__actions .primary-button{min-height:var(--control-h)}.rec-field{display:grid;gap:var(--space-1);min-width:0}.rec-field input,.rec-field select,.rec-field textarea{width:100%;min-height:var(--control-h);font:inherit}.rec-field textarea{resize:vertical}.rec-field label{font-size:var(--text-sm);font-weight:700}.rec-radio,.rec-switch{display:flex;align-items:flex-start;gap:var(--space-2);min-height:var(--control-h)}.alliance-panel .rec-radio input,.alliance-panel .rec-switch input,.rec-radio input,.rec-switch input{flex:none;width:1.25rem;min-width:1.25rem;height:1.25rem;min-height:1.25rem;margin-top:.2rem;accent-color:var(--ui-accent, currentColor)}.rec-radio span,.rec-switch span{display:grid;gap:.15rem}.rec-radio small,.rec-switch small{color:var(--ui-muted);font-weight:500}.rec-continent-input{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2)}.rec-continent-input .secondary-button{min-height:var(--control-h)}.rec-readonly-line{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin:0}.rec-list{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none}.rec-item{display:grid;gap:var(--space-2);min-width:0;padding:var(--space-3);border:1px solid var(--ui-border);border-left:.3rem solid var(--ui-accent);border-radius:var(--ui-radius-md);background:var(--ui-surface-muted);overflow-wrap:anywhere}.rec-item--recent{border-left-color:var(--ui-border);opacity:.9}.rec-item__head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2)}.rec-item__name{font-weight:700}.rec-item__actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.rec-item p{margin:0}.rec-app-card{display:grid;gap:var(--space-1);margin-top:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--v2-border, var(--ui-border));border-left:.25rem solid var(--v2-accent, var(--ui-accent));border-radius:var(--ui-radius-md);background:color-mix(in srgb,var(--v2-surface-raised, var(--ui-surface-muted)) 70%,transparent);color:var(--v2-ink, var(--ui-text));font-size:var(--text-sm);overflow-wrap:anywhere}.rec-app-card p{margin:0}.rec-app-card .rec-hint{color:var(--v2-muted, var(--ui-muted))}.rec-app-card--accepted{border-left-color:var(--ui-success)}.rec-app-card--rejected,.rec-app-card--withdrawn,.rec-app-card--expired,.rec-app-card--unavailable{border-left-color:var(--v2-border, var(--ui-border));opacity:.9}.rec-app-card__head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2)}.rec-app-card__name{font-weight:700}.rec-app-card .rec-item__actions>*{min-height:var(--control-h-sm, var(--control-h))}.alliance-start-layout>.rec-browse{grid-column:1 / -1}.rec-browse__link{justify-self:start;min-height:var(--control-h)}.rec-apply .help-form__actions .primary-button,.rec-apply .help-form__actions .secondary-button{min-height:var(--control-h)}@media(max-width:30rem){.rec-form__row{grid-template-columns:minmax(0,1fr)}}.sit-panel{display:grid;gap:var(--space-4);min-width:0}.sit-panel section{display:grid;gap:var(--space-3);min-width:0}.sit-hint,.sit-rule{margin:0;color:var(--ui-muted);font:500 var(--text-sm) / 1.45 var(--font-ui)}.sit-rule--lead{color:var(--ui-text);font-weight:650}.sit-error{margin:0;color:var(--ui-danger);font:650 var(--text-sm) / 1.4 var(--font-ui)}.sit-notice{margin:0;padding:var(--space-2) var(--space-3);border:1px solid var(--ui-accent);border-radius:var(--ui-radius-md);background:var(--ui-accent-soft);color:var(--ui-text);font:650 var(--text-sm) / 1.4 var(--font-ui)}.sit-subtitle{margin:0;font:700 var(--text-lg) / 1.25 var(--font-display)}.sit-subtitle--small{font-size:var(--text-md)}.sit-heading{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2) var(--space-3)}.sit-count{color:var(--ui-muted);font:650 var(--text-sm) var(--font-ui);font-variant-numeric:tabular-nums}.sit-never{margin:0;padding-left:1.25rem;color:var(--ui-muted);font:500 var(--text-sm) / 1.5 var(--font-ui)}.sit-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.sit-actions .primary-button,.sit-actions .secondary-button{min-height:var(--control-h)}.sit-chips{display:flex;flex-wrap:wrap;gap:var(--space-1);margin:0;padding:0;list-style:none}.sit-chip{padding:.1rem var(--space-2);border:1px solid var(--ui-border);border-radius:var(--ui-radius-sm);background:var(--ui-surface-muted);color:var(--ui-text);font:650 var(--text-xs) / 1.5 var(--font-ui)}.sit-chip--none{color:var(--ui-muted)}.sit-list{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none}.sit-item{display:grid;gap:var(--space-2);min-width:0;padding:var(--space-3);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface-muted)}.sit-item__head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3)}.sit-item__name{min-width:0;overflow-wrap:anywhere;font:700 var(--text-md) var(--font-ui)}.sit-meta{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-3);margin:0;color:var(--ui-muted);font:500 var(--text-sm) var(--font-ui)}.sit-form{display:grid;gap:var(--space-3);max-width:34rem;padding-top:var(--space-3);border-top:1px solid var(--ui-border)}.sit-field{display:grid;gap:var(--space-1)}.sit-field label{font:650 var(--text-sm) var(--font-ui)}.sit-panel .sit-field input[type=text]{width:100%;min-height:var(--control-h);box-sizing:border-box}.sit-scopes{display:grid;gap:var(--space-2);min-width:0;margin:0;padding:0;border:0}.sit-scopes legend{padding:0;margin-bottom:var(--space-1);font:650 var(--text-sm) var(--font-ui)}.sit-panel .sit-check{display:flex;align-items:flex-start;gap:var(--space-2);min-height:var(--control-h);font:500 var(--text-sm) / 1.4 var(--font-ui)}.sit-panel .sit-check input[type=checkbox]{flex:none;width:1.1rem;min-width:1.1rem;height:1.1rem;min-height:0;margin:.15rem 0 0;padding:0;accent-color:var(--ui-accent)}.sit-panel .sit-check--confirm{padding:var(--space-2);border:1px solid var(--ui-accent);border-radius:var(--ui-radius-md);background:var(--ui-accent-soft)}.sit-log{display:grid;margin:0;padding:0;list-style:none;border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);overflow:hidden}.sit-log__row{display:grid;grid-template-columns:10rem 8rem 6.5rem minmax(0,1fr) auto;align-items:baseline;gap:var(--space-1) var(--space-3);padding:var(--space-2) var(--space-3);font:500 var(--text-sm) / 1.4 var(--font-ui)}.sit-log__row+.sit-log__row{border-top:1px solid var(--ui-border)}.sit-log__row:nth-child(2n){background:var(--ui-table-stripe)}.sit-log__time{color:var(--ui-muted);font-variant-numeric:tabular-nums}.sit-log__sitter,.sit-log__action{min-width:0;overflow-wrap:anywhere}.sit-log__summary{display:block;color:var(--ui-muted);font:500 var(--text-xs) var(--font-ui)}.sit-badge{justify-self:start;padding:.05rem var(--space-2);border:1px solid currentColor;border-radius:var(--ui-radius-sm);font:700 var(--text-xs) / 1.5 var(--font-ui)}.sit-badge--ok{color:var(--ui-success)}.sit-badge--denied{color:var(--ui-danger)}@media(max-width:45rem){.sit-log__row{grid-template-columns:minmax(0,1fr) auto}.sit-log__time,.sit-log__action{grid-column:1 / -1}.sit-log__class{color:var(--ui-muted)}}.sit-banner{position:fixed;inset:0 0 auto;z-index:60;box-sizing:border-box;display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-4);padding:var(--space-2) var(--space-4);border-bottom:2px solid var(--ui-accent);background:var(--ui-accent-soft);color:var(--ui-text);font:650 var(--text-sm) / 1.4 var(--font-ui)}.sit-banner__text{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-1) var(--space-3);min-width:0}.sit-banner__title{font:700 var(--text-md) var(--font-ui)}.sit-banner__by{color:var(--ui-muted);font:500 var(--text-sm) var(--font-ui)}.sit-banner__scopes{flex:1 1 auto}.sit-banner__back{min-height:var(--control-h);margin-left:auto;padding:0 var(--space-4);border:1px solid var(--ui-accent);border-radius:var(--ui-radius-md);background:var(--ui-accent);color:var(--ui-accent-contrast);font:700 var(--text-sm) var(--font-ui);cursor:pointer}.sit-banner__back:disabled{opacity:.6;cursor:default}.sit-banner__back:focus-visible,.sit-entry-chip:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}@media(max-width:45rem){.sit-banner{padding:var(--space-2) var(--space-3)}.sit-banner__back{width:100%;margin-left:0}}.app-shell.app-shell--acting.app-shell--game.app-shell--interface-v2{inset:var(--sit-banner-h, 0px) 0 0;height:calc(100dvh - var(--sit-banner-h, 0px));max-height:calc(100dvh - var(--sit-banner-h, 0px))}.sit-entry-chip{display:inline-flex;align-items:center;min-height:var(--control-h);padding:0 var(--space-3);border:1px solid var(--ui-accent);border-radius:var(--ui-radius-md);background:var(--ui-accent-soft);color:var(--ui-text);font:700 var(--text-sm) var(--font-ui);text-decoration:none;white-space:nowrap}.navigation-progress[data-v-f4677531]{position:fixed;z-index:10600;inset:0 0 auto;height:3px;overflow:hidden;pointer-events:none}.navigation-progress__bar[data-v-f4677531]{display:block;width:40%;height:100%;background:var(--v2-accent, var(--ui-accent, #d8b367));animation:navigation-progress-slide-f4677531 1.1s var(--motion-ease, ease-in-out) infinite}@keyframes navigation-progress-slide-f4677531{0%{transform:translate(-100%)}to{transform:translate(250%)}}@media(prefers-reduced-motion:reduce){.navigation-progress__bar[data-v-f4677531]{width:100%;animation:none;opacity:.7}}.offline-strip[data-v-f4677531]{position:fixed;z-index:10500;right:var(--space-4, 1rem);bottom:calc(var(--scene-bottom-bar, env(safe-area-inset-bottom, 0px)) + var(--space-3, .75rem));left:var(--space-4, 1rem);display:flex;width:fit-content;align-items:center;gap:var(--space-2, .5rem);margin:0 auto;padding:var(--space-2, .5rem) var(--space-4, 1rem);border:1px solid var(--v2-border, #315d53);border-radius:var(--ui-radius-lg, .75rem);background:var(--v2-surface-raised, #173b36);box-shadow:var(--ui-shadow-md);color:var(--v2-ink, #f4f0dd);font-size:var(--text-sm, .875rem)}.unknown-route-notice__close[data-v-f4677531]{display:grid;width:1.75rem;height:1.75rem;place-items:center;margin:0 calc(-1 * var(--space-2, .5rem)) 0 0;padding:0;border:0;border-radius:var(--ui-radius-sm, .375rem);background:transparent;color:var(--v2-muted, #a9c0b3);font:inherit;font-size:1.25rem;line-height:1;cursor:pointer}.unknown-route-notice__close[data-v-f4677531]:hover,.unknown-route-notice__close[data-v-f4677531]:focus-visible{color:var(--v2-ink, #f4f0dd);outline:2px solid var(--v2-accent, #d8b367);outline-offset:1px}.offline-strip svg[data-v-f4677531]{flex:none;fill:none;stroke:var(--v2-accent, #d8b367);stroke-width:1.4;stroke-linecap:round}.village-switcher-cycle[data-v-d7e912db]{display:inline-flex;align-items:center;gap:.25rem;min-width:0}.village-switcher-cycle__name[data-v-d7e912db]{overflow:hidden;min-width:0;text-overflow:ellipsis;white-space:nowrap}.village-switcher-cycle__count[data-v-d7e912db]{margin-left:.25rem;color:var(--v2-muted, var(--ui-muted));font-size:.8em;font-variant-numeric:tabular-nums}.village-switcher-cycle__step[data-v-d7e912db]{display:inline-grid;flex:none;place-items:center;width:1.6rem;height:1.6rem;padding:0;border:1px solid color-mix(in srgb,currentColor 30%,transparent);border-radius:var(--ui-radius-sm, .4rem);background:transparent;color:inherit;cursor:pointer}.village-switcher-cycle__step svg[data-v-d7e912db]{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.village-switcher-cycle__step[data-v-d7e912db]:hover:not(:disabled){background:color-mix(in srgb,currentColor 12%,transparent)}.village-switcher-cycle__step[data-v-d7e912db]:focus-visible{outline:2px solid var(--v2-accent, var(--ui-focus, currentColor));outline-offset:2px}.village-switcher-cycle__step[data-v-d7e912db]:disabled{cursor:progress;opacity:.6}@media(pointer:coarse){.village-switcher-cycle__step[data-v-d7e912db]{width:2.25rem;height:2.25rem}}.quick-navigation-trigger[data-v-dafcbf6a]{display:flex;align-items:center;justify-content:center;width:2.55rem;min-height:2.55rem;margin:0;padding:.45rem;border:1px solid color-mix(in srgb,var(--ui-accent) 44%,transparent);border-radius:var(--ui-radius-sm);background:color-mix(in srgb,var(--ui-surface-raised) 88%,transparent);color:var(--ui-text);font:inherit;cursor:pointer}.quick-navigation-trigger[data-v-dafcbf6a]:hover,.quick-navigation-trigger[data-v-dafcbf6a]:focus-visible{border-color:var(--ui-accent);outline:2px solid var(--ui-focus);outline-offset:2px}.quick-navigation-trigger kbd[data-v-dafcbf6a]{margin-left:auto;color:var(--ui-muted);font:inherit;font-size:var(--text-xs)}.quick-navigation[data-v-dafcbf6a]{width:min(38rem,calc(100vw - 2rem));padding:0;border:1px solid color-mix(in srgb,var(--ui-accent) 62%,transparent);border-radius:.7rem;background:var(--ui-surface-raised);color:var(--ui-text);box-shadow:var(--ui-shadow-md)}.quick-navigation[data-v-dafcbf6a]::backdrop{background:color-mix(in srgb,var(--ui-canvas) 72%,transparent)}.quick-navigation__panel[data-v-dafcbf6a]{padding:1rem}.quick-navigation__header[data-v-dafcbf6a]{display:flex;align-items:start;justify-content:space-between;gap:1rem}.quick-navigation__header p[data-v-dafcbf6a]{margin:0;color:var(--ui-accent);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em}.quick-navigation__header h2[data-v-dafcbf6a]{margin:.15rem 0 1rem;font-size:1.25rem}.quick-navigation__header button[data-v-dafcbf6a]{border:0;background:transparent;color:inherit;font:inherit;font-size:1.7rem;line-height:1;cursor:pointer}.quick-navigation__search input[data-v-dafcbf6a]{box-sizing:border-box;width:100%;padding:.75rem;border:1px solid color-mix(in srgb,var(--ui-accent) 45%,transparent);border-radius:.4rem;background:var(--ui-surface);color:inherit;font:inherit}.quick-navigation__search input[data-v-dafcbf6a]:focus-visible,.quick-navigation__results a[data-v-dafcbf6a]:focus-visible,.quick-navigation__results button[data-v-dafcbf6a]:focus-visible,.quick-navigation__header button[data-v-dafcbf6a]:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.quick-navigation__results[data-v-dafcbf6a]{display:grid;max-height:min(60dvh,28rem);gap:.35rem;margin-top:.75rem;overflow:auto}.quick-navigation__results a[data-v-dafcbf6a],.quick-navigation__results button[data-v-dafcbf6a]{display:grid;width:100%;background:transparent;font:inherit;text-align:start;cursor:pointer;gap:.15rem;padding:.65rem .7rem;border:1px solid transparent;border-radius:.4rem;color:inherit;text-decoration:none}.quick-navigation__results a[data-v-dafcbf6a]:hover,.quick-navigation__results button[data-v-dafcbf6a]:hover{border-color:color-mix(in srgb,var(--ui-accent) 55%,transparent);background:color-mix(in srgb,var(--ui-accent) 9%,transparent)}.quick-navigation__results span[data-v-dafcbf6a]{color:var(--ui-muted);font-size:var(--text-ms)}.quick-navigation__results p[data-v-dafcbf6a]{margin:.75rem 0;color:var(--ui-muted)}.quick-navigation__footer[data-v-dafcbf6a]{display:flex;justify-content:flex-end;margin-top:.75rem;padding-top:.6rem;border-top:1px solid var(--ui-border)}.quick-navigation__sheet-link[data-v-dafcbf6a]{display:inline-flex;align-items:center;gap:.45rem;padding:.35rem .5rem;border:1px solid transparent;border-radius:.4rem;background:transparent;color:var(--ui-muted);font:inherit;font-size:var(--text-sm);cursor:pointer}.quick-navigation__sheet-link[data-v-dafcbf6a]:hover{border-color:color-mix(in srgb,var(--ui-accent) 55%,transparent);color:var(--ui-text)}.quick-navigation__sheet-link[data-v-dafcbf6a]:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.quick-navigation kbd[data-v-dafcbf6a]{display:inline-grid;min-width:1.6rem;place-items:center;padding:.1rem .35rem;border:1px solid var(--ui-border);border-bottom-width:2px;border-radius:.3rem;background:var(--ui-surface);color:var(--ui-text);font:inherit;font-size:var(--text-xs);font-weight:650;line-height:1.3}.shortcut-sheet[data-v-dafcbf6a]{display:grid;margin:0}.shortcut-sheet__row[data-v-dafcbf6a]{display:grid;grid-template-columns:minmax(6.5rem,auto) 1fr;align-items:baseline;gap:.75rem;padding:.5rem .25rem;border-bottom:1px solid color-mix(in srgb,var(--ui-border) 60%,transparent)}.shortcut-sheet__row[data-v-dafcbf6a]:last-child{border-bottom:0}.shortcut-sheet dt[data-v-dafcbf6a]{display:flex;align-items:center;gap:.2rem;white-space:nowrap}.shortcut-sheet__joiner[data-v-dafcbf6a]{color:var(--ui-muted)}.shortcut-sheet dd[data-v-dafcbf6a]{display:grid;gap:.1rem;margin:0}.shortcut-sheet dd span[data-v-dafcbf6a],.shortcut-sheet__note[data-v-dafcbf6a]{color:var(--ui-muted);font-size:var(--text-sm)}.shortcut-sheet__note[data-v-dafcbf6a]{margin:.75rem 0 0}@media(max-width:63.999rem){.quick-navigation-trigger[data-v-dafcbf6a]{width:2.35rem;min-height:2.35rem;margin:0;box-shadow:none}.quick-navigation[data-v-dafcbf6a]{width:calc(100vw - 1rem);max-height:calc(100dvh - 1rem)}.quick-navigation__results[data-v-dafcbf6a]{max-height:calc(100dvh - 12rem)}}.resource-bar[data-v-45ab0487]{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--resource-column-min)),1fr));gap:.375rem;width:100%}.resource-bar__item[data-v-45ab0487]{background:color-mix(in srgb,var(--ui-surface-raised) 82%,transparent);border:1px solid var(--ui-border);border-radius:.625rem;min-height:2.75rem;min-width:0;padding:.3rem .5rem;position:relative}.resource-bar__row[data-v-45ab0487]{align-items:center;display:flex;gap:.4rem;min-width:0}.resource-bar__icon[data-v-45ab0487]{display:block;flex:0 0 1.5rem;width:1.5rem;height:1.5rem;object-fit:contain}.resource-bar__item dd[data-v-45ab0487]{display:grid;gap:.1rem;margin:0;min-width:0}.resource-bar__amount[data-v-45ab0487]{color:var(--ui-text);font-size:clamp(.75rem,2.5vw,.875rem);font-weight:650;font-variant-numeric:tabular-nums;line-height:1.1;min-width:0;overflow-wrap:anywhere}.resource-bar__rate[data-v-45ab0487]{color:var(--ui-success);display:block;font-size:var(--text-2xs);font-weight:500;line-height:1.1;padding-left:1.9rem;white-space:nowrap}.resource-bar__item.is-storage-warning[data-v-45ab0487]{border-color:var(--ui-warning, var(--ui-danger))}.resource-bar__item.is-storage-warning .resource-bar__amount[data-v-45ab0487]{color:var(--ui-warning, var(--ui-danger))}.resource-bar__rate.is-negative[data-v-45ab0487],.resource-bar__item--grain.is-unfunded .resource-bar__rate[data-v-45ab0487]{color:var(--ui-danger)}.resource-bar__supply-state[data-v-45ab0487]{color:var(--ui-danger);font-size:var(--text-2xs);font-weight:650;line-height:1.1}.resource-bar__item--grain.is-depleting .resource-bar__supply-state[data-v-45ab0487]{color:var(--ui-warning, var(--ui-danger))}.resource-bar__item--grain.is-recovering .resource-bar__supply-state[data-v-45ab0487]{color:var(--ui-success)}.resource-bar__item--grain.is-unfunded[data-v-45ab0487]{border-color:var(--ui-danger)}.resource-bar__grain-details[data-v-45ab0487]{min-width:0;position:relative}.resource-bar__grain-summary[data-v-45ab0487]{align-items:start;cursor:pointer;display:grid;gap:.1rem;list-style:none;min-width:0;padding-right:1rem;position:relative}.resource-bar__grain-summary[data-v-45ab0487]::-webkit-details-marker{display:none}.resource-bar__grain-summary[data-v-45ab0487]:after{color:var(--ui-muted);content:"+";font-size:var(--text-ms);font-weight:700;line-height:1;position:absolute;right:0;top:.15rem}.resource-bar__grain-details[open]>.resource-bar__grain-summary[data-v-45ab0487]:after{content:"−"}.resource-bar__grain-summary[data-v-45ab0487]:focus-visible{outline:2px solid var(--ui-focus, var(--ui-text));outline-offset:2px}.resource-bar__grain-breakdown[data-v-45ab0487]{background:var(--ui-surface-raised);border:1px solid var(--ui-border);border-radius:.375rem;box-shadow:0 .25rem .75rem color-mix(in srgb,#000 35%,transparent);color:var(--ui-text);display:none;font-size:var(--text-xs);right:0;line-height:1.35;max-width:min(18rem,calc(100vw - 1rem));padding:.4rem .5rem;position:absolute;top:calc(100% + .25rem);width:max-content;z-index:2}.resource-bar__grain-details[open]>.resource-bar__grain-breakdown[data-v-45ab0487]{display:block}.resource-bar--compact[data-v-45ab0487]{display:flex;flex-wrap:wrap;gap:.25rem}.resource-bar--compact .resource-bar__item[data-v-45ab0487]{flex:1 1 calc(33.333% - .25rem);min-width:max-content;min-height:1.875rem;padding:.3rem .375rem}.resource-bar--compact .resource-bar__row[data-v-45ab0487]{gap:.25rem}.resource-bar--compact .resource-bar__icon[data-v-45ab0487]{flex-basis:1rem;width:1rem;height:1rem}.resource-bar--compact .resource-bar__amount[data-v-45ab0487]{overflow-wrap:anywhere;white-space:normal}.resource-bar--compact .resource-bar__rate[data-v-45ab0487]{font-size:clamp(.75rem,2.2vw,.82rem);overflow-wrap:anywhere;padding-left:1.25rem;white-space:normal}.resource-bar--compact .resource-bar__item--grain[data-v-45ab0487]{min-width:min(100%,7rem)}.resource-bar--compact .resource-bar__supply-state[data-v-45ab0487]{font-size:clamp(var(--text-2xs),2vw,.78rem);overflow-wrap:anywhere}@media(min-width:64rem){.resource-bar--compact[data-v-45ab0487]{display:none}.resource-bar__amount[data-v-45ab0487]{font-size:var(--text-sm)}}.reservation-notices{position:fixed;z-index:10400;right:var(--space-4);bottom:calc(var(--scene-bottom-bar, env(safe-area-inset-bottom, 0px)) + var(--space-3) + 3.5rem);left:var(--space-4);display:grid;justify-items:center;gap:var(--space-2);pointer-events:none}.reservation-notice{display:flex;align-items:flex-start;gap:var(--space-3);max-width:min(32rem,100%);padding:var(--space-3) var(--space-2) var(--space-3) var(--space-4);border:1px solid var(--v2-border, #315d53);border-left:.3rem solid var(--map-reservation-own);border-radius:var(--ui-radius-lg);background:var(--v2-surface-raised, #173b36);box-shadow:var(--ui-shadow-md);color:var(--v2-ink, #f4f0dd);font-family:var(--font-ui);font-size:var(--text-sm);pointer-events:auto}.reservation-notice--attacked,.reservation-notice--taken{border-left-color:var(--map-relation-enemy)}.reservation-notice--expiring{border-left-color:var(--map-reservation-mine)}.reservation-notice__body{display:grid;gap:var(--space-1);min-width:0;overflow-wrap:anywhere}.reservation-notice__link{color:var(--v2-accent, #d8b367);font-weight:650}.reservation-notice__close{flex:none;min-width:var(--control-h-sm);min-height:var(--control-h-sm);border:0;border-radius:var(--ui-radius-md);background:transparent;color:inherit;font:inherit;font-size:var(--text-lg);cursor:pointer}.reservation-notice__link:focus-visible,.reservation-notice__close:focus-visible{outline:2px solid var(--v2-accent, #d8b367);outline-offset:2px}.reservation-notice-enter-active,.reservation-notice-leave-active{transition:opacity var(--motion-panel) var(--motion-ease),transform var(--motion-panel) var(--motion-ease)}.reservation-notice-enter-from,.reservation-notice-leave-to{opacity:0;transform:translateY(.5rem)}.reservation-card{display:grid;gap:var(--space-2);min-width:0;padding:var(--space-3);border:1px solid color-mix(in srgb,currentcolor 22%,transparent);border-radius:var(--ui-radius-md);background:color-mix(in srgb,currentcolor 5%,transparent);font-size:var(--text-sm)}.reservation-card__title,.reservation-card__summary{margin:0;font:700 var(--text-sm) / 1.3 var(--font-ui)}.reservation-card__summary{cursor:pointer}.reservation-card__summary:focus-visible{outline:2px solid var(--ui-focus, var(--v2-accent, #d8b367));outline-offset:2px}.reservation-card--collapsible[open]>.reservation-card__summary{margin-bottom:var(--space-2)}.reservation-card__state{margin:0;font-weight:650}.reservation-card__state.is-mine{color:var(--map-reservation-mine)}.reservation-card__hint{margin:0;opacity:.82;font-size:var(--text-xs)}.reservation-card__badges{margin:0}.reservation-card__form,.reservation-card__row{display:grid;gap:var(--space-2)}.reservation-card__row--actions{grid-auto-flow:column;grid-auto-columns:1fr}.reservation-card select{min-height:var(--control-h);max-width:100%}.reservation-card__check{display:flex;align-items:flex-start;gap:var(--space-2)}.reservation-card__check input{flex:none;margin-top:.2em}.reservation-card__feedback{margin:0;font-weight:650}.reservation-card__feedback--error{color:var(--map-relation-enemy)}.reservation-chip{display:inline-flex;align-items:center;border:1px solid currentcolor;border-radius:999px;padding:.05rem .55rem;font:700 var(--text-xs) / 1.5 var(--font-ui);white-space:nowrap}.reservation-chip--shared{color:var(--ui-relation-peace, var(--map-relation-peace))}.reservation-chip--mine{color:var(--ui-accent, var(--map-reservation-mine))}.reservation-chip--extended{color:var(--ui-muted, inherit)}.reservation-panel{min-width:0}.reservation-panel__status{margin:0;color:var(--ui-success);font-weight:650}.reservation-panel__summary{display:grid;gap:var(--space-2);justify-items:start}.reservation-panel__limits{margin:0;color:var(--ui-muted);font:700 var(--text-sm) / 1.4 var(--font-ui);font-variant-numeric:tabular-nums}.reservation-panel__hint{color:var(--ui-muted);font-size:var(--text-xs)}.reservation-panel__filters{display:flex;flex-wrap:wrap;gap:var(--space-2)}.reservation-panel__filter{min-height:var(--control-h-sm);padding:0 var(--space-3);border:1px solid var(--ui-control-border);border-radius:999px;background:transparent;color:var(--ui-text);font:700 var(--text-sm) / 1 var(--font-ui);cursor:pointer}.reservation-panel__filter.active{border-color:var(--ui-accent);background:var(--ui-accent-soft)}.reservation-panel__filter:focus-visible,.reservation-row__coords:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.reservation-list{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none}.reservation-row{display:grid;gap:var(--space-2);min-width:0;padding:var(--space-2) var(--space-3);border:1px solid var(--ui-border);border-left-width:.3rem;border-left-color:var(--ui-relation-peace);border-radius:var(--ui-radius-sm);background:var(--ui-surface-muted)}.reservation-row--own{border-left-color:var(--ui-accent)}.reservation-row__main,.reservation-row__meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-1) var(--space-3);min-width:0;overflow-wrap:anywhere}.reservation-row__main small{flex-basis:100%;color:var(--ui-muted)}.reservation-row__meta{color:var(--ui-muted);font-size:var(--text-sm)}.reservation-row__tag{font-weight:700}.reservation-row__badges{display:inline-flex;flex-wrap:wrap;gap:var(--space-1)}.reservation-row__actions,.reservation-row__form{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.reservation-row__form select{min-height:var(--control-h);max-width:100%}@media(max-width:30rem){.reservation-row__actions>button,.reservation-row__form>button{flex:1 1 8rem}.reservation-row__form select{flex:1 1 100%}}.map-v2-context-window .reservation-card .secondary-button{border-color:color-mix(in srgb,var(--v2-accent, #d8b367) 45%,transparent);background:color-mix(in srgb,var(--v2-accent, #d8b367) 10%,transparent);color:var(--v2-accent, #d8b367)}.map-v2-context-window .reservation-card .secondary-button:hover:not(:disabled){background:color-mix(in srgb,var(--v2-accent, #d8b367) 20%,transparent)}.reservation-row__coords{color:var(--v2-accent, var(--ui-accent));font-weight:650}.cal-panel{display:grid;gap:var(--space-4);min-width:0}.cal-hint{margin:0;color:var(--ui-muted);font:500 var(--text-sm) / 1.45 var(--font-ui)}.cal-error{margin:0;color:var(--ui-danger);font:650 var(--text-sm) / 1.45 var(--font-ui)}.cal-controls{display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--space-2) var(--space-4)}.cal-filters{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2);min-width:0;margin:0;padding:0;border:0}.cal-filters legend{float:left;margin-right:var(--space-2);padding:0;color:var(--ui-muted);font:700 var(--text-xs) / 1.4 var(--font-ui)}.cal-filter{min-height:var(--control-h-sm, var(--control-h));padding:0 var(--space-3);border:1px solid var(--ui-control-border);border-radius:999px;background:var(--ui-control);color:var(--ui-text);font:650 var(--text-xs) / 1.2 var(--font-ui);cursor:pointer;transition:background-color var(--motion-fast) var(--motion-ease),opacity var(--motion-fast) var(--motion-ease)}.cal-filter[aria-pressed=true]:before{content:"✓ "}.cal-filter.is-off{opacity:.6;background:transparent}.cal-filter:focus-visible,.cal-link__input:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.cal-day{display:grid;gap:var(--space-2);min-width:0}.cal-day__title{margin:0;font:700 var(--text-md) / 1.3 var(--font-display);text-transform:capitalize}.cal-list{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none}.cal-item{display:grid;grid-template-columns:4.6rem minmax(0,1fr) auto;align-items:center;gap:var(--space-2) var(--space-3);min-width:0;padding:var(--space-2) var(--space-3);border:1px solid var(--ui-border);border-left:.3rem solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface-muted)}.cal-item.is-mine{border-left-color:var(--ui-accent)}.cal-item--running{border-left-color:var(--ui-relation-enemy)}.cal-item--past{opacity:.72}.cal-item__time{display:grid;gap:.1rem;font-variant-numeric:tabular-nums}.cal-item__clock{font:750 var(--text-md) / 1.2 var(--font-ui)}.cal-item__utc{color:var(--ui-muted);font:500 var(--text-xs) / 1.3 var(--font-ui);white-space:nowrap}.cal-item__body{display:grid;gap:.15rem;min-width:0;overflow-wrap:anywhere}.cal-item__kind{color:var(--ui-muted);font:700 var(--text-xs) / 1.4 var(--font-ui);text-transform:uppercase;letter-spacing:.04em}.cal-item__name{font:700 var(--text-md) / 1.3 var(--font-ui)}.cal-item__tag{color:var(--ui-muted);font-weight:600}.cal-item__meta{display:flex;flex-wrap:wrap;align-items:center;gap:.15rem var(--space-2);color:var(--ui-muted);font:500 var(--text-xs) / 1.4 var(--font-ui)}.cal-item__countdown{color:var(--ui-text);font-weight:700;font-variant-numeric:tabular-nums}.cal-chip{display:inline-flex;padding:0 .5rem;border:1px solid var(--ui-accent);border-radius:999px;color:var(--ui-text);font-weight:700}.cal-item__open{min-height:var(--control-h);white-space:nowrap}@media(max-width:30rem){.cal-item{grid-template-columns:3.8rem minmax(0,1fr)}.cal-item__open{grid-column:1 / -1;justify-self:start}}.cal-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3)}.cal-actions .primary-button,.cal-actions .secondary-button{min-height:var(--control-h)}.cal-link{display:grid;gap:var(--space-1);min-width:0}.cal-link__label{font:700 var(--text-sm) / 1.4 var(--font-ui)}.cal-link__row{display:flex;flex-wrap:wrap;gap:var(--space-2)}.cal-link__input{flex:1 1 14rem;min-width:0;min-height:var(--control-h);padding:0 var(--space-3);border:1px solid var(--ui-control-border);border-radius:var(--ui-radius-sm);background:var(--ui-control);color:var(--ui-text);font:500 var(--text-sm) / 1.3 var(--font-ui);text-overflow:ellipsis}.cal-form{display:grid;gap:var(--space-2);min-width:0}.cal-check{display:flex;align-items:center;gap:var(--space-2);min-height:var(--control-h);font:600 var(--text-sm) / 1.4 var(--font-ui)}.cal-check input{flex:none;width:1.15rem;height:1.15rem;accent-color:var(--ui-accent)}.calendar-notices{position:fixed;z-index:10400;right:var(--space-4);bottom:calc(var(--scene-bottom-bar, env(safe-area-inset-bottom, 0px)) + var(--space-3) + 8rem);left:var(--space-4);display:grid;justify-items:center;gap:var(--space-2);pointer-events:none}.calendar-notice{display:flex;align-items:flex-start;gap:var(--space-3);max-width:min(32rem,100%);padding:var(--space-3) var(--space-2) var(--space-3) var(--space-4);border:1px solid var(--v2-border, #315d53);border-left:.3rem solid var(--v2-accent, #d8b367);border-radius:var(--ui-radius-lg);background:var(--v2-surface-raised, #173b36);box-shadow:var(--ui-shadow-md);color:var(--v2-ink, #f4f0dd);font-family:var(--font-ui);pointer-events:auto}.calendar-notice__body{display:grid;gap:var(--space-1);min-width:0;overflow-wrap:anywhere}.calendar-notice__link{color:var(--v2-accent, #d8b367);font-weight:650}.calendar-notice__close{flex:none;min-width:var(--control-h-sm);min-height:var(--control-h-sm);border:0;border-radius:var(--ui-radius-md);background:transparent;color:inherit;font:inherit;font-size:var(--text-lg);cursor:pointer}.calendar-notice__link:focus-visible,.calendar-notice__close:focus-visible{outline:2px solid var(--v2-accent, #d8b367);outline-offset:2px}.calendar-notice-enter-active,.calendar-notice-leave-active{transition:opacity var(--motion-panel) var(--motion-ease),transform var(--motion-panel) var(--motion-ease)}.calendar-notice-enter-from,.calendar-notice-leave-to{opacity:0;transform:translateY(.5rem)}.village-issues[data-v-aa276a14]{margin:0 auto 1rem;width:min(100% - 2rem,72rem);padding:.8rem 1rem;border:1px solid color-mix(in srgb,var(--ui-border) 45%,transparent);border-radius:.6rem;background:color-mix(in srgb,var(--ui-surface-raised) 88%,transparent)}.village-issues__heading-row[data-v-aa276a14]{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.village-issues h2[data-v-aa276a14]{margin:0;font-size:.95rem;letter-spacing:.05em;text-transform:uppercase}.village-issues__count[data-v-aa276a14],.village-issues time[data-v-aa276a14]{color:var(--ui-muted);font-size:var(--text-xs)}.village-issues__empty[data-v-aa276a14]{margin:.55rem 0 0;color:var(--ui-muted);font-size:.88rem}.village-issues__list[data-v-aa276a14]{display:grid;gap:.3rem;margin:.55rem 0 0;padding:0;list-style:none}.village-issues__idle-heading[data-v-aa276a14]{margin:.9rem 0 0;color:var(--ui-muted);font-size:var(--text-xs);font-weight:650;letter-spacing:.04em;text-transform:uppercase}.village-issues__link[data-v-aa276a14]{display:flex;align-items:baseline;gap:.6rem;padding:.3rem .2rem;color:inherit;text-decoration:none}.village-issues__link[data-v-aa276a14]:hover,.village-issues__link[data-v-aa276a14]:focus-visible{text-decoration:underline}.village-issues__label[data-v-aa276a14]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.village-issues__type[data-v-aa276a14]{color:var(--ui-muted);font-size:var(--text-2xs);white-space:nowrap}.village-issues__urgent[data-v-aa276a14]{color:var(--ui-accent);font-size:var(--text-2xs);font-weight:700;text-transform:uppercase}.village-issues__item--urgent[data-v-aa276a14]{border-left:2px solid var(--ui-accent);padding-left:.35rem}.village-event-hub[data-v-aa276a14]{margin-top:.85rem;padding:.75rem;border:1px solid color-mix(in srgb,var(--ui-accent) 35%,var(--ui-border));border-radius:.55rem;background:color-mix(in srgb,var(--ui-accent) 8%,var(--ui-surface-raised))}.village-event-hub__history[data-v-aa276a14]{margin-top:.9rem;padding-top:.75rem;border-top:1px solid color-mix(in srgb,var(--ui-border) 55%,transparent)}.village-event-hub__history-heading[data-v-aa276a14]{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;cursor:pointer;list-style:none}.village-event-hub__history-heading[data-v-aa276a14]::-webkit-details-marker{display:none}.village-event-hub__history-heading[data-v-aa276a14]:after{flex:0 0 auto;color:var(--ui-accent);content:"＋";font-size:1rem;line-height:1}.village-event-hub__history[open] .village-event-hub__history-heading[data-v-aa276a14]:after{content:"−"}.village-event-hub__history-body[data-v-aa276a14]{padding-top:.15rem}.village-event-hub__history-heading h4[data-v-aa276a14]{margin:.15rem 0 0;font-size:.9rem}.village-event-hub__history-heading small[data-v-aa276a14],.village-event-hub__history-note[data-v-aa276a14]{color:var(--ui-muted);font-size:var(--text-xs)}.village-event-hub__history-list[data-v-aa276a14],.village-event-hub__rewards[data-v-aa276a14]{display:grid;gap:.35rem;margin:.6rem 0 0;padding:0;list-style:none}.village-event-hub__history-filters[data-v-aa276a14]{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.6rem}.village-event-hub__history-pill[data-v-aa276a14]{border:1px solid var(--ui-border);border-radius:999px;padding:.2rem .5rem;background:transparent;color:var(--ui-muted);font:inherit;font-size:var(--text-2xs);cursor:pointer}.village-event-hub__history-pill[aria-pressed=true][data-v-aa276a14]{border-color:var(--ui-accent);background:color-mix(in srgb,var(--ui-accent) 16%,transparent);color:inherit}.village-event-hub__history-empty[data-v-aa276a14]{margin:.65rem 0 0;color:var(--ui-muted);font-size:var(--text-sm)}.village-event-hub__history-list>li[data-v-aa276a14]{display:grid;gap:.25rem;padding:.45rem .55rem;border-radius:.4rem;background:color-mix(in srgb,var(--ui-surface) 76%,transparent)}.village-event-hub__history-list>li>div[data-v-aa276a14]{display:flex;align-items:baseline;gap:.55rem;flex-wrap:wrap}.village-event-hub__history-status[data-v-aa276a14]{color:var(--ui-muted);font-size:var(--text-2xs);text-transform:uppercase}.village-event-hub__history-list time[data-v-aa276a14]{margin-left:auto}.village-event-hub__rewards[data-v-aa276a14]{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.1rem}.village-event-hub__rewards li[data-v-aa276a14]{padding:.16rem .38rem;border:1px solid color-mix(in srgb,var(--ui-accent) 35%,var(--ui-border));border-radius:999px;color:var(--ui-muted);font-size:var(--text-2xs)}.village-event-hub__history-note[data-v-aa276a14]{margin:.55rem 0 0}.village-event-hub__heading-row[data-v-aa276a14]{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.village-event-hub__eyebrow[data-v-aa276a14]{margin:0;color:var(--ui-accent);font-size:var(--text-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.village-event-hub h3[data-v-aa276a14]{margin:.15rem 0 0;font-size:.95rem}.village-event-hub__count[data-v-aa276a14]{min-width:1.6rem;padding:.15rem .35rem;border-radius:999px;background:var(--ui-accent);color:var(--ui-surface);font-size:var(--text-xs);font-weight:700;text-align:center}.village-event-hub__summary[data-v-aa276a14]{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.55rem}.village-event-hub__pill[data-v-aa276a14]{padding:.18rem .42rem;border:1px solid color-mix(in srgb,var(--ui-border) 65%,transparent);border-radius:999px;background:transparent;color:var(--ui-muted);cursor:pointer;font:inherit;font-size:var(--text-2xs)}.village-event-hub__pill[aria-pressed=true][data-v-aa276a14]{border-color:var(--ui-accent);color:var(--ui-accent)}.village-event-hub__pill--active[data-v-aa276a14]{border-color:color-mix(in srgb,var(--ui-accent) 55%,transparent);color:var(--ui-accent)}.village-event-hub__source[data-v-aa276a14]{margin:.55rem 0 0;color:var(--ui-muted);font-size:var(--text-2xs)}.village-event-hub__list[data-v-aa276a14]{display:grid;gap:.35rem;margin:.65rem 0 0;padding:0;list-style:none}.village-event-hub__empty[data-v-aa276a14]{margin:.65rem 0 0;color:var(--ui-muted);font-size:var(--text-xs)}.village-event-hub__empty a[data-v-aa276a14]{color:var(--ui-accent)}.village-event-hub__item[data-v-aa276a14]{display:grid;grid-template-areas:"state label time" ". description description";grid-template-columns:auto minmax(0,1fr) auto;align-items:baseline;gap:.5rem;padding-top:.35rem;border-top:1px solid color-mix(in srgb,var(--ui-border) 25%,transparent)}.village-event-hub__state[data-v-aa276a14]{grid-area:state;color:var(--ui-muted);font-size:var(--text-2xs);white-space:nowrap}.village-event-hub__item--active .village-event-hub__state[data-v-aa276a14]{color:var(--ui-accent)}.village-event-hub__label[data-v-aa276a14]{grid-area:label;min-width:0;color:inherit;overflow-wrap:anywhere;text-decoration:none}.village-event-hub__category[data-v-aa276a14]{display:block;color:var(--ui-accent);font-size:var(--text-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase}.village-event-hub__description[data-v-aa276a14]{grid-area:description;color:var(--ui-muted);font-size:var(--text-2xs);line-height:1.35;overflow-wrap:anywhere}.village-event-hub__label[data-v-aa276a14]:hover,.village-event-hub__label[data-v-aa276a14]:focus-visible{text-decoration:underline}.village-event-hub__item time[data-v-aa276a14]{grid-area:time;color:var(--ui-muted);font-size:var(--text-2xs);text-align:right;white-space:nowrap}.village-calendar[data-v-aa276a14]{margin-top:.75rem;border-top:1px solid color-mix(in srgb,var(--ui-border) 35%,transparent);padding-top:.65rem}.village-calendar__summary[data-v-aa276a14]{display:flex;justify-content:space-between;cursor:pointer;font-size:.9rem;font-weight:700}.village-calendar__toolbar[data-v-aa276a14]{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem .65rem;margin-top:.65rem;color:var(--ui-muted);font-size:var(--text-xs)}.village-calendar__reminder[data-v-aa276a14]{border:1px solid color-mix(in srgb,var(--ui-border) 65%,transparent);border-radius:.35rem;background:var(--ui-surface-raised);color:inherit;font:inherit}.village-calendar__toolbar[data-v-aa276a14]{align-items:end}.village-calendar__utc[data-v-aa276a14]{margin-left:auto}.village-calendar__hint[data-v-aa276a14]{margin:.5rem 0 0;color:var(--ui-muted);font-size:var(--text-xs)}.village-calendar__return[data-v-aa276a14]{display:inline-block;margin-top:.35rem;color:var(--ui-accent);font-size:var(--text-2xs)}.village-calendar__error[data-v-aa276a14]{color:var(--ui-accent);font-size:var(--text-xs)}.village-calendar__list[data-v-aa276a14]{display:grid;gap:.3rem;margin:.55rem 0 0;padding:0;list-style:none}.village-calendar__day+.village-calendar__day[data-v-aa276a14]{margin-top:.7rem}.village-calendar__day h3[data-v-aa276a14]{margin:.7rem 0 0;color:var(--ui-muted);font-size:var(--text-xs);letter-spacing:.04em;text-transform:capitalize}.village-calendar__item[data-v-aa276a14]{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.5rem;border-top:1px solid color-mix(in srgb,var(--ui-border) 20%,transparent)}.village-calendar__item--selected[data-v-aa276a14],.village-calendar__timeline-item--selected[data-v-aa276a14]{border-top-color:var(--ui-accent);background:color-mix(in srgb,var(--ui-accent) 9%,transparent)}.village-calendar__link[data-v-aa276a14]{display:flex;min-width:0;flex:1;align-items:baseline;gap:.6rem;padding:.3rem .2rem;color:inherit;text-decoration:none}.village-calendar__link time[data-v-aa276a14]{white-space:normal;text-align:right}.village-calendar__link[data-v-aa276a14]:hover,.village-calendar__link[data-v-aa276a14]:focus-visible{text-decoration:underline}.village-calendar__reminder[data-v-aa276a14]{padding:.25rem .45rem;cursor:pointer;font-size:var(--text-2xs);white-space:nowrap}.village-calendar__reminder[aria-pressed=true][data-v-aa276a14]{border-color:var(--ui-accent);color:var(--ui-accent)}.village-calendar__details[data-v-aa276a14]{position:relative;flex:0 0 auto;color:var(--ui-muted);font-size:var(--text-2xs)}.village-calendar__details summary[data-v-aa276a14]{cursor:pointer;color:inherit;white-space:nowrap}.village-calendar__details[open][data-v-aa276a14]{grid-column:1 / -1;min-width:0;padding:.3rem .45rem;border-top:1px solid color-mix(in srgb,var(--ui-border) 35%,transparent);background:color-mix(in srgb,var(--ui-surface-raised) 70%,transparent)}.village-calendar__details dl[data-v-aa276a14]{display:grid;gap:.2rem;margin:.35rem 0 0}.village-calendar__details dl>div[data-v-aa276a14]{display:flex;justify-content:space-between;gap:.65rem}.village-calendar__details dt[data-v-aa276a14]{color:var(--ui-muted)}.village-calendar__details dd[data-v-aa276a14]{max-width:13rem;margin:0;color:var(--ui-text);overflow-wrap:anywhere;text-align:right;white-space:nowrap}.village-calendar__countdown[data-v-aa276a14]{color:var(--ui-accent);font-size:var(--text-2xs);font-variant-numeric:tabular-nums;white-space:nowrap}.village-calendar__timeline[data-v-aa276a14]{display:grid;gap:.6rem;margin:.65rem 0 0;padding:0;list-style:none}.village-calendar__timeline-item[data-v-aa276a14]{display:grid;grid-template-columns:minmax(7.5rem,auto) minmax(0,1fr);gap:.65rem;padding:.45rem 0;border-top:1px solid color-mix(in srgb,var(--ui-border) 24%,transparent)}.village-calendar__timeline-item>time[data-v-aa276a14]{padding-top:.3rem;color:var(--ui-muted);font-size:var(--text-2xs);font-variant-numeric:tabular-nums}.village-calendar__timeline-body[data-v-aa276a14]{min-width:0}.village-calendar__timeline-actions[data-v-aa276a14]{display:flex;align-items:flex-start;gap:.5rem;flex-wrap:wrap}@media(max-width:30rem){.village-issues[data-v-aa276a14]{width:calc(100% - 1rem);padding-inline:.7rem}.village-issues__link[data-v-aa276a14]{gap:.35rem}.village-issues time[data-v-aa276a14]{font-size:var(--text-2xs)}.village-event-hub[data-v-aa276a14]{padding:.65rem}.village-event-hub__item[data-v-aa276a14]{grid-template-areas:"state state" "label time" "description description";grid-template-columns:minmax(0,1fr) auto;gap:.2rem .45rem}.village-event-hub__state[data-v-aa276a14]{grid-area:state}.village-event-hub__label[data-v-aa276a14]{grid-area:label}.village-event-hub__description[data-v-aa276a14]{grid-area:description}.village-event-hub__item time[data-v-aa276a14]{grid-area:time}.village-calendar__item[data-v-aa276a14]{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:0}.village-calendar__timeline-item[data-v-aa276a14]{grid-template-columns:minmax(0,1fr);gap:.15rem}.village-calendar__timeline-item>time[data-v-aa276a14]{padding-top:0}.village-calendar__timeline-actions[data-v-aa276a14]{gap:.35rem}.village-calendar__link[data-v-aa276a14]{grid-column:1 / -1;flex-wrap:wrap}.village-calendar__reminder[data-v-aa276a14],.village-calendar__details[data-v-aa276a14]{align-self:flex-start;margin:0 .2rem .35rem}.village-calendar__details[open][data-v-aa276a14]{min-width:min(100%,18rem);border-top:1px solid color-mix(in srgb,var(--ui-border) 35%,transparent)}.village-calendar__details dl>div[data-v-aa276a14]{align-items:baseline}.village-calendar__details dd[data-v-aa276a14]{max-width:11rem;white-space:normal}}.game-context-menu[data-v-1e70b426]{position:fixed;z-index:1000;display:grid;grid-template-rows:auto minmax(0,1fr);gap:.35rem;width:max-content;min-width:min(12rem,var(--context-menu-max-width));max-width:min(22rem,var(--context-menu-max-width));max-height:min(24rem,var(--context-menu-max-height));overflow:hidden;padding:.35rem;border:1px solid var(--ui-border);border-radius:var(--ui-radius-md, .75rem);background:var(--ui-surface-raised);box-shadow:var(--ui-shadow-md, 0 .75rem 2rem rgb(0 0 0 / 42%));opacity:0;transform:translateY(-.25rem);transition:opacity var(--motion-menu, .16s) var(--motion-ease, ease-out),transform var(--motion-menu, .16s) var(--motion-ease, ease-out);color:var(--ui-text);font-family:var(--font-ui)}.game-context-menu--positioned[data-v-1e70b426]{opacity:1;transform:translateY(0)}.game-context-menu--narrow[data-v-1e70b426]{width:var(--context-menu-max-width);min-width:0;max-width:none;padding:.5rem}.game-context-menu__header[data-v-1e70b426]{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:.45rem .45rem .6rem;border-bottom:1px solid var(--ui-border)}.game-context-menu__identity[data-v-1e70b426],.game-context-menu__actions[data-v-1e70b426],.game-context-menu__item[data-v-1e70b426]{display:grid}.game-context-menu__identity[data-v-1e70b426]{gap:.15rem;min-width:0}.game-context-menu__title[data-v-1e70b426]{line-height:1.3}.game-context-menu__description[data-v-1e70b426],.game-context-menu__item-description[data-v-1e70b426]{color:var(--ui-muted);font-size:var(--text-ms);line-height:1.4}.game-context-menu__close[data-v-1e70b426]{min-height:2.25rem;padding:.4rem .65rem;border:1px solid var(--ui-control-border);border-radius:var(--ui-radius-sm, .5rem);background:transparent;color:var(--ui-text);font:inherit;cursor:pointer}.game-context-menu__actions[data-v-1e70b426]{gap:.1rem;min-height:0;overflow:auto}.game-context-menu__item[data-v-1e70b426]{gap:.15rem;min-height:2.75rem;padding:.65rem .8rem;border:0;border-radius:var(--ui-radius-sm, .5rem);background:transparent;color:inherit;font:inherit;text-align:left;overflow-wrap:anywhere;cursor:pointer}.game-context-menu__item[data-v-1e70b426]:not([aria-disabled=true]):hover,.game-context-menu__item[data-v-1e70b426]:focus-visible{background:var(--ui-accent-soft);outline:.15rem solid var(--ui-focus);outline-offset:-2px}.game-context-menu__close[data-v-1e70b426]:hover,.game-context-menu__close[data-v-1e70b426]:focus-visible{border-color:var(--ui-focus);outline:.15rem solid var(--ui-focus);outline-offset:2px}.game-context-menu__item[aria-disabled=true][data-v-1e70b426]{cursor:not-allowed}.game-context-menu__item-label[data-v-1e70b426]{font-weight:650}.game-context-menu__disabled-reason[data-v-1e70b426]{color:var(--ui-danger);font-size:var(--text-sm);line-height:1.4}html[data-interface=v2]{border-color:var(--v2-border);background:var(--v2-surface-raised);color:var(--v2-ink)}html[data-interface=v2]{border-bottom-color:var(--v2-border)}html[data-interface=v2]{border-color:var(--v2-border);color:var(--v2-ink)}html[data-interface=v2]{background:var(--v2-surface)}html[data-interface=v2]{background:var(--v2-surface);outline-color:var(--v2-accent)}html[data-interface=v2]{border-color:var(--v2-accent);outline-color:var(--v2-accent)}html[data-interface=v2]{color:var(--v2-ink)}html[data-interface=v2]{color:var(--v2-muted)}html[data-interface=v2]{color:var(--v2-danger)}@media(max-width:30rem){.game-context-menu__item[data-v-1e70b426]{min-height:3.5rem;padding:.75rem}}@media(prefers-reduced-motion:reduce){.game-context-menu[data-v-1e70b426],.game-context-menu__item[data-v-1e70b426],.game-context-menu__close[data-v-1e70b426]{scroll-behavior:auto;transition:none}}html[data-reduced-motion]{scroll-behavior:auto;transition:none}.village-map-scene[data-v-b50877cf]{--village-border: var(--ui-border);--village-surface: var(--ui-surface);--village-ink: var(--ui-text);--village-muted: var(--ui-muted);--village-font-ui: var(--font-ui);--village-canvas: #17180f;--village-accent: var(--ui-accent);--village-accent-soft: var(--ui-accent-soft);--scene-plate-surface: color-mix(in srgb, var(--v2-surface, #102c2a) 92%, transparent);--scene-plate-border: var(--v2-border, #315d53);--scene-plate-track: var(--v2-border-soft, rgb(92 148 126 / 25%));--scene-plate-ink: var(--v2-ink, #f4f0dd);--scene-plate-muted: var(--v2-muted, #a9c0b3);--scene-plate-accent: var(--v2-accent, #d8b367);min-width:0;border:1px solid var(--village-border);border-radius:.7rem;background:var(--village-surface);color:var(--village-ink);font-family:var(--village-font-ui)}.village-map-scene__viewport[data-v-b50877cf]{display:flex;grid-row:1 / -1;aspect-ratio:3 / 2;min-height:0;overflow:hidden;border-radius:.65rem;background:var(--village-canvas);box-shadow:inset 0 0 0 1px #ffffff0a;cursor:grab;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.village-map-scene__viewport.is-dragging[data-v-b50877cf],.village-map-scene__viewport.is-dragging button[data-v-b50877cf]{cursor:grabbing}.village-map-scene__canvas[data-v-b50877cf]{position:relative;flex:0 0 auto;isolation:isolate;container-type:inline-size;margin:auto;aspect-ratio:3 / 2}.village-map-scene__layer[data-v-b50877cf]{position:absolute;z-index:0;top:0;right:0;bottom:0;left:0;background:url(/assets/terrain/village/village_ground_eras_01.webp?v=20260910-coherent) center / 100% 100% no-repeat}.village-scene-layer-enter-active[data-v-b50877cf],.village-scene-layer-leave-active[data-v-b50877cf]{transition:opacity var(--motion-panel, .22s) var(--motion-ease, ease)}.village-scene-layer-enter-active[data-v-b50877cf]{z-index:1}.village-scene-layer-enter-from[data-v-b50877cf],.village-scene-layer-leave-to[data-v-b50877cf]{opacity:0}.village-map-scene__canvas.is-interface-v2[data-v-b50877cf]{container-type:size;aspect-ratio:16 / 9}.village-map-scene__canvas.is-interface-v2.is-fields[data-v-b50877cf]{aspect-ratio:3 / 2}.village-map-scene__canvas.is-interface-v2 .village-map-scene__layer[data-v-b50877cf]{--scene-ratio: 1.7768;--scene-unit: min( 100cqw, calc((100cqw + 100cqh * var(--scene-ratio)) / 2), calc(100cqh * var(--scene-ratio) * 1.25) );background-position:center;background-size:100% 100%;box-shadow:inset 0 0 0 1px #241f1329,inset 0 -4rem 5rem #181c132e}.village-map-scene__canvas.is-interface-v2 .village-map-scene__layer.is-fields[data-v-b50877cf]{--scene-ratio: 1.5;box-shadow:inset 0 0 0 1px #241f1329}.village-map-scene__wall[data-v-b50877cf]{position:absolute;z-index:2;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;object-fit:fill}.village-map-scene__wall[data-v-b50877cf]:not(.village-map-scene__wall-front){clip-path:polygon(0 0,100% 0,100% calc(55% + 1px),0 calc(55% + 1px))}.village-map-scene__wall-front[data-v-b50877cf]{z-index:19;clip-path:polygon(0 55%,100% 55%,100% 100%,0 100%)}.village-map-scene__layer:has(.village-map-scene__gate:focus-visible) .village-map-scene__wall[data-v-b50877cf]{filter:brightness(1.1)}@media(hover:hover){.village-map-scene__layer:has(.village-map-scene__gate:hover:not(:disabled)) .village-map-scene__wall[data-v-b50877cf]{filter:brightness(1.1)}}.village-map-scene__building[data-v-b50877cf],.village-map-scene__gate[data-v-b50877cf]{position:absolute;left:calc(var(--scene-x) - var(--scene-width, 4rem) * .35);top:calc(var(--scene-y) - var(--scene-width, 4rem) * .7);width:calc(var(--scene-width, 4rem) * .7);height:calc(var(--scene-width, 4rem) * .6);border:0;border-radius:var(--ui-radius-sm, .25rem);padding:0;background:transparent;color:var(--village-ink);cursor:pointer;filter:none}.village-map-scene__hit-target[data-v-b50877cf]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:29}.village-map-scene__art[data-v-b50877cf]{--art-saturate: 1;--art-brightness: 1;--art-shadow: 0 .35rem .25rem rgb(0 0 0 / 30%);-webkit-user-drag:none;position:absolute;z-index:calc(4 + var(--scene-depth, 5));left:50%;top:50%;display:block;width:var(--scene-width);height:auto;aspect-ratio:1;object-fit:contain;transform:translate(-50%,-50%);filter:drop-shadow(var(--art-shadow));transition:transform var(--motion-fast, .12s) var(--motion-ease, ease)}.village-map-scene__building:focus-visible .village-map-scene__art[data-v-b50877cf],.village-map-scene__building.is-selected .village-map-scene__art[data-v-b50877cf],.village-map-scene__building.is-planned .village-map-scene__art[data-v-b50877cf]{filter:saturate(var(--art-saturate)) brightness(var(--art-brightness)) drop-shadow(var(--art-shadow))}.village-map-scene__building:focus-visible .village-map-scene__art[data-v-b50877cf]{z-index:20;--art-brightness: 1.1;transform:translate(-50%,calc(-50% - .2rem))}@media(hover:hover){.village-map-scene__building:hover:not(:disabled) .village-map-scene__art[data-v-b50877cf]{z-index:20;--art-brightness: 1.1;filter:saturate(var(--art-saturate)) brightness(var(--art-brightness)) drop-shadow(var(--art-shadow));transform:translate(-50%,calc(-50% - .2rem))}}.village-map-scene__building.is-selected .village-map-scene__art[data-v-b50877cf]{--art-brightness: 1.14;--art-shadow: 0 0 .65rem rgb(215 173 120 / 58%)}.village-map-scene__building.is-planned .village-map-scene__art[data-v-b50877cf]{--art-saturate: .4;opacity:.45}.village-map-scene__building[data-v-b50877cf]:focus-visible,.village-map-scene__gate[data-v-b50877cf]:focus-visible{outline:3px solid var(--scene-plate-accent);outline-offset:2px}.village-map-scene__building.is-planned[data-v-b50877cf]:focus-visible,.village-map-scene__gate.is-planned[data-v-b50877cf]:focus-visible{outline-style:dashed}@media(hover:hover){.village-map-scene__building.is-planned[data-v-b50877cf]:hover:not(:focus-visible),.village-map-scene__gate.is-planned[data-v-b50877cf]:hover:not(:disabled,:focus-visible){outline:2px dashed var(--scene-plate-border);outline-offset:2px}}.village-map-scene__building[data-v-b50877cf]:disabled,.village-map-scene__gate[data-v-b50877cf]:disabled{cursor:default}.village-map-scene__nameplate[data-v-b50877cf]{position:absolute;left:50%;top:calc(50% + var(--scene-badge-offset));z-index:30;display:inline-flex;flex-direction:column;align-items:center;gap:.15rem;transform:translate(-50%,-100%);color:var(--scene-plate-ink);font-family:var(--font-ui);text-align:center;white-space:nowrap;pointer-events:none}.village-map-scene__building:hover .village-map-scene__nameplate[data-v-b50877cf],.village-map-scene__building:focus-visible .village-map-scene__nameplate[data-v-b50877cf]{z-index:31}.village-map-scene__plate[data-v-b50877cf],.village-map-scene__queue[data-v-b50877cf]{border:1px solid var(--scene-plate-border);border-radius:var(--ui-radius-sm, .25rem);background:var(--scene-plate-surface);font-size:clamp(var(--text-2xs),1.2cqw,.78rem);line-height:1.25}.village-map-scene__plate[data-v-b50877cf]{display:inline-flex;align-items:center;transition:transform var(--motion-fast, .12s) var(--motion-ease, ease),border-color var(--motion-fast, .12s) var(--motion-ease, ease)}.village-map-scene__building:hover .village-map-scene__plate[data-v-b50877cf],.village-map-scene__building:focus-visible .village-map-scene__plate[data-v-b50877cf],.village-map-scene__gate:hover:not(:disabled) .village-map-scene__plate[data-v-b50877cf],.village-map-scene__gate:focus-visible .village-map-scene__plate[data-v-b50877cf]{transform:translateY(-1px)}.village-map-scene__building.is-selected .village-map-scene__plate[data-v-b50877cf],.village-map-scene__gate.is-selected .village-map-scene__plate[data-v-b50877cf]{border-color:var(--scene-plate-muted)}.village-map-scene__building.is-building .village-map-scene__plate[data-v-b50877cf],.village-map-scene__gate.is-building .village-map-scene__plate[data-v-b50877cf]{border-color:var(--scene-plate-accent)}.village-map-scene__badge[data-v-b50877cf]{padding:.12rem .42rem;font-weight:700;font-variant-numeric:tabular-nums}.village-map-scene__plate.is-fresh[data-v-b50877cf]{animation:village-plate-level-up-b50877cf var(--motion-slow) var(--motion-ease) 1}.village-map-scene__plate.is-fresh .village-map-scene__badge[data-v-b50877cf]{animation:village-badge-level-up-b50877cf calc(var(--motion-slow) * 2) var(--motion-ease) 1}@keyframes village-plate-level-up-b50877cf{40%{transform:translateY(-.2rem) scale(1.12)}}@keyframes village-badge-level-up-b50877cf{0%,40%{background:var(--scene-plate-accent);color:var(--v2-canvas, #071b1b)}}.village-map-scene__name[data-v-b50877cf]{display:none;padding:.12rem .42rem}.village-map-scene__badge+.village-map-scene__name[data-v-b50877cf]{border-left:1px solid var(--scene-plate-border)}.village-map-scene__readiness[data-v-b50877cf]{display:inline-grid;place-items:center;align-self:stretch;padding:0 .3rem;border-left:1px solid var(--scene-plate-border)}.village-map-scene__readiness svg[data-v-b50877cf]{display:block;fill:currentColor}.village-map-scene__readiness.is-ready[data-v-b50877cf]{color:var(--v2-canvas, #071b1b);background:var(--scene-plate-accent)}.village-map-scene__readiness.is-resources[data-v-b50877cf]{color:var(--scene-plate-muted)}.village-map-scene__readiness .is-outline[data-v-b50877cf]{fill:none;stroke:currentColor;stroke-width:1.2;stroke-linecap:round}.village-map-scene__building.is-planned .village-map-scene__name[data-v-b50877cf],.village-map-scene__gate.is-planned .village-map-scene__name[data-v-b50877cf]{color:var(--scene-plate-muted)}.village-map-scene__building.is-planned .village-map-scene__plate[data-v-b50877cf],.village-map-scene__gate.is-planned .village-map-scene__plate[data-v-b50877cf]{display:none}.village-map-scene__building:focus-visible .village-map-scene__name[data-v-b50877cf],.village-map-scene__gate:focus-visible .village-map-scene__name[data-v-b50877cf]{display:block}.village-map-scene__building.is-planned:focus-visible .village-map-scene__plate[data-v-b50877cf],.village-map-scene__gate.is-planned:focus-visible .village-map-scene__plate[data-v-b50877cf]{display:inline-flex}@media(hover:hover){.village-map-scene__building:hover .village-map-scene__name[data-v-b50877cf],.village-map-scene__gate:hover .village-map-scene__name[data-v-b50877cf]{display:block}.village-map-scene__building.is-planned:hover .village-map-scene__plate[data-v-b50877cf],.village-map-scene__gate.is-planned:hover .village-map-scene__plate[data-v-b50877cf]{display:inline-flex}}@media(min-width:64rem){.village-map-scene__name[data-v-b50877cf]{display:block}.village-map-scene__building.is-planned .village-map-scene__plate[data-v-b50877cf],.village-map-scene__gate.is-planned .village-map-scene__plate[data-v-b50877cf]{display:inline-flex}}.village-map-scene__queue[data-v-b50877cf]{display:grid;gap:.15rem;min-width:100%;padding:.12rem .38rem .2rem;border-color:var(--scene-plate-accent);font-weight:700;font-variant-numeric:tabular-nums}.village-map-scene__progress[data-v-b50877cf]{display:block;height:.3rem;overflow:hidden;border-radius:var(--ui-radius-sm, .25rem);background:var(--scene-plate-track)}.village-map-scene__progress-fill[data-v-b50877cf]{display:block;height:100%;background:var(--scene-plate-accent);transform:scaleX(var(--progress, 0));transform-origin:left;transition:transform var(--motion-fast, .12s) var(--motion-ease, ease)}.village-map-scene__gate[data-v-b50877cf]{--scene-depth: 8;top:var(--scene-y);filter:none;z-index:31;transform:translateY(-50%)}.village-map-scene__gate .village-map-scene__nameplate[data-v-b50877cf]{top:50%;transform:translate(-50%,-50%)}@media(max-width:48rem){.village-map-scene__viewport[data-v-b50877cf]{aspect-ratio:auto;height:min(62svh,28rem)}}.village-map-scene__viewport.is-panned[data-v-b50877cf]{container-type:size;padding-block:var(--scene-nav-bottom, 0px) var(--scene-bottom-bar, 0px)}.village-map-scene .village-map-scene__viewport.is-panned>.village-map-scene__canvas[data-v-b50877cf]{flex:none;width:max(100cqh * 16 / 9,100cqw)!important;height:max(100cqh,100cqw * 9 / 16)!important;margin:0;aspect-ratio:auto}.village-map-scene .village-map-scene__viewport.is-panned>.village-map-scene__canvas.is-fields[data-v-b50877cf]{width:max(100cqh * 3 / 2,100cqw)!important;height:max(100cqh,100cqw * 2 / 3)!important}.village-map-scene__swipe-hint[data-v-b50877cf]{position:absolute;z-index:32;right:1rem;bottom:calc(var(--scene-bottom-bar, 0px) + .75rem);left:1rem;width:fit-content;margin:0 auto;padding:.4rem .75rem;border:1px solid var(--scene-plate-border);border-radius:var(--ui-radius-sm, .25rem);background:var(--scene-plate-surface);box-shadow:var(--ui-shadow-sm);color:var(--scene-plate-ink);font-size:var(--text-xs);line-height:1.3;text-align:center;pointer-events:none}.village-scene-hint-leave-active[data-v-b50877cf]{transition:opacity var(--motion-panel, .22s) var(--motion-ease, ease)}.village-scene-hint-leave-to[data-v-b50877cf]{opacity:0}.village-map-scene__loading[data-v-b50877cf]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:33;display:grid;place-content:center;justify-items:center;gap:.75rem;padding-block:var(--scene-nav-bottom, 0px) var(--scene-bottom-bar, 0px);background:color-mix(in srgb,var(--v2-canvas, #071b1b) 62%,transparent);color:var(--v2-ink, #f4f0dd);font-family:var(--font-display);font-size:1.05rem;letter-spacing:.01em;text-shadow:0 1px 2px rgb(0 0 0 / 45%);pointer-events:none}.village-map-scene__loading img[data-v-b50877cf]{width:4.5rem;height:4.5rem;border-radius:50%;box-shadow:0 0 0 2px var(--v2-accent, #d8b367),0 .75rem 2rem #0006}.village-scene-loading-leave-active[data-v-b50877cf]{transition:opacity var(--motion-panel, .22s) var(--motion-ease, ease)}.village-scene-loading-leave-to[data-v-b50877cf]{opacity:0}.village-page[data-v-679fdca2]{display:grid;gap:.75rem;min-width:0;color:var(--ui-text);font-family:var(--font-ui);overflow-wrap:anywhere}.village-page__header[data-v-679fdca2]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.65rem 1rem}.village-page__header[data-v-679fdca2]{position:relative;isolation:isolate;overflow:hidden;justify-content:start;min-height:7rem;padding:.7rem 1.4rem;border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:color-mix(in srgb,var(--ui-surface) 72%,transparent);box-shadow:var(--strategy-frame)}.village-page__header[data-v-679fdca2]:before{position:absolute;content:"";z-index:-1;top:0;right:0;bottom:0;left:0;background:url(/assets/ui/strategy/settlement-panorama.webp?v=20261016-lossy) center 48% / cover no-repeat;-webkit-mask-image:linear-gradient(90deg,transparent 20%,#000 85%);mask-image:linear-gradient(90deg,transparent 20%,#000 85%);opacity:.75}.village-page__coordinates[data-v-679fdca2]{padding-top:.65rem;font-size:1rem;color:var(--ui-muted)}.village-page__portrait[data-v-679fdca2]{width:clamp(4.5rem,6vw,6.5rem);height:clamp(4.5rem,6vw,6.5rem);object-fit:contain}.village-page__identity[data-v-679fdca2]{min-width:0;flex:1}.village-page h1[data-v-679fdca2],.village-page h3[data-v-679fdca2],.village-page p[data-v-679fdca2]{margin:0}.village-page h1[data-v-679fdca2]{font:600 clamp(1.75rem,3vw,2.75rem)/1.1 var(--font-display)}.text-button[data-v-679fdca2]{min-height:2.75rem;border:1px solid var(--ui-control-border);border-radius:var(--ui-radius-sm);background:var(--ui-surface-raised);color:var(--ui-accent);padding:.45rem .75rem;font:inherit;font-weight:700}.text-button[data-v-679fdca2]:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.village-overview[data-v-679fdca2]{display:grid;grid-template-columns:minmax(0,1fr);gap:.75rem;width:100%;margin-inline:auto;align-items:start}.settlement-summary[data-v-679fdca2]{padding:0;margin-left:auto;font-size:var(--text-sm)}.settlement-summary h2[data-v-679fdca2]{margin:0 0 .4rem;font-size:.95rem}.settlement-summary dl[data-v-679fdca2]{display:flex;flex-wrap:wrap;gap:.4rem .8rem;margin:0 0 .4rem}.settlement-summary dl>div[data-v-679fdca2]{display:flex;gap:.4rem;padding-block:.15rem}.settlement-summary dd[data-v-679fdca2]{margin:0;font-weight:700;font-variant-numeric:tabular-nums}.settlement-summary p[data-v-679fdca2]{color:var(--ui-danger);padding-block:.4rem}@media(min-width:64rem){.village-overview[data-v-679fdca2]{grid-template-columns:minmax(0,2fr) minmax(20rem,1fr)}}@media(max-width:80rem){.village-overview[data-v-679fdca2]{grid-template-columns:minmax(0,1fr)}}@media(max-width:45rem){.village-page__header[data-v-679fdca2]{padding:.7rem;min-height:7rem}.village-page__portrait[data-v-679fdca2]{width:5rem;height:5rem}}@media(max-width:30rem){.village-page__header[data-v-679fdca2]{gap:.6rem}.village-page__portrait[data-v-679fdca2]{width:3.5rem;height:3.5rem}.village-page__coordinates[data-v-679fdca2]{font-size:var(--text-sm)}}@font-face{font-family:Alegreya;font-style:normal;font-weight:400 900;font-display:swap;src:url(/fonts/alegreya-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Alegreya;font-style:normal;font-weight:400 900;font-display:swap;src:url(/fonts/alegreya-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Alegreya;font-style:normal;font-weight:400 900;font-display:swap;src:url(/fonts/alegreya-cyrillic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Alegreya Fallback;font-style:normal;font-weight:400 500;src:local("Georgia");size-adjust:92%;ascent-override:110.4%;descent-override:37.5%;line-gap-override:0%}@font-face{font-family:Alegreya Fallback;font-style:normal;font-weight:600 900;src:local("Georgia Bold"),local("Georgia-Bold");size-adjust:80%;ascent-override:127%;descent-override:43.1%;line-gap-override:0%}:root{--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--space-8: 2rem;--text-2xs: .75rem;--text-xs: .75rem;--text-sm: .8125rem;--text-ms: .875rem;--text-md: .9375rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--control-h: 2.25rem;--control-h-sm: 1.875rem;--panel-pad: var(--space-4);--panel-gap: var(--space-3);--shade-12: rgb(0 0 0 / 12%);--shade-20: rgb(0 0 0 / 20%);--shade-22: rgb(0 0 0 / 22%);--shade-24: rgb(0 0 0 / 24%);--shade-25: rgb(0 0 0 / 25%);--minimap-meadow: #708252;--minimap-forest: #455f36;--minimap-own: #f4d36b;--minimap-own-edge: #265d58;--minimap-ally: #78b8a0;--minimap-neutral: #949180;--minimap-other: #ca7968;--scene-header-from: rgb(23 29 22 / 96%);--scene-header-to: rgb(54 55 34 / 82%);--scene-shadow: rgb(17 20 13 / 22%);--action-edge: #b79357;--action-glint: rgb(255 238 193 / 35%);--action-hover-from: #efd29c;--action-hover-to: #cba15f;--deck-action-edge: #edcf91;--deck-action-hover-from: #f1d48f;--deck-action-hover-to: #d7a659;--deck-action-hover-ink: #18201d;--deck-nav-bg: #102124;--alert-battle-edge: #ef8d78;--alert-battle-fill: #6f2a2a;--alert-battle-ink: #ffd2c7;--alert-strong: #ffc080;--alert-incoming-edge: #e9b864;--alert-incoming-ink: #ffe0a6;--backdrop-strong: rgb(3 10 11 / 72%);--backdrop-soft: rgb(3 10 11 / 45%);--font-ui: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display: "Alegreya", "Alegreya Fallback", Georgia, serif;--ui-canvas: #c6b594;--ui-surface: #eee1c6;--ui-surface-raised: #fff5e1;--ui-surface-muted: #ddc9a6;--ui-text: #302619;--ui-muted: #55422d;--ui-border: #a38a63;--ui-control-border: #856c46;--ui-accent: #663c18;--ui-accent-contrast: #fff8e9;--ui-accent-soft: #e5c99b;--ui-success: #234b34;--ui-danger: #783226;--ui-focus: #47290f;--ui-relation-peace: #1f6b3a;--ui-relation-peace-soft: #cfe3c6;--ui-relation-nap: #1d4f94;--ui-relation-nap-soft: #cfdcef;--ui-relation-enemy: #8e2b1f;--ui-relation-enemy-soft: #f0cdc3;--map-relation-peace: #7ddb8f;--map-relation-nap: #7db4ff;--map-relation-enemy: #ff8a7a;--map-reservation-mine: #f4d36b;--map-reservation-own: var(--minimap-ally);--map-reservation-peace: var(--map-relation-peace);--map-reservation-ink: #14231f;--theme-paper: var(--ui-surface);--theme-paper-raised: var(--ui-surface-raised);--theme-paper-muted: var(--ui-surface-muted);--theme-ink: var(--ui-text);--theme-ink-muted: var(--ui-muted);--theme-rule: var(--ui-border);--theme-rule-strong: var(--ui-control-border);--theme-action: var(--ui-accent);--theme-action-ink: var(--ui-accent-contrast);--theme-success: var(--ui-success);--theme-danger: var(--ui-danger);--theme-paper-texture: url(/assets/ui/surfaces/panel_light.webp);--ui-radius-sm: .45rem;--ui-radius-md: .65rem;--ui-radius-lg: .85rem;--ui-shadow-sm: 0 .45rem 1.2rem rgb(0 0 0 / 22%);--ui-shadow-md: 0 1.2rem 3rem rgb(0 0 0 / 30%);--motion-fast: .12s;--motion-menu: .16s;--motion-panel: .22s;--motion-slow: .32s;--motion-ease: cubic-bezier(.2, .7, .2, 1);--motion-ease-exit: cubic-bezier(.4, 0, 1, 1);color:var(--ui-text);background:var(--ui-canvas);color-scheme:light;font-family:var(--font-ui);font-synthesis:none;--ui-control: #fffaf0;--ui-table-header: #735437;--ui-table-header-text: #fff7e5;--ui-table-stripe: #e4d5b7;--ui-selected: #ecd09f;--unit-art-card-width: 5rem;--unit-art-card-height: 7.5rem;--unit-art-summary-width: 5rem;--unit-art-summary-height: 6.25rem;--unit-art-row-width: 3rem;--unit-art-row-height: 4.5rem;--unit-art-table-width: 2.5rem;--unit-art-table-height: 3rem;--unit-art-compact-size: 2.25rem}@media(pointer:coarse){:root{--control-h: 2.5rem;--control-h-sm: 2.25rem}}html[data-theme=night]{--ui-canvas: #15130f;--ui-surface: #29251f;--ui-surface-raised: #3a3228;--ui-surface-muted: #201c17;--ui-text: #f7ebd7;--ui-muted: #d0bea0;--ui-border: #857255;--ui-control-border: #a58c63;--ui-accent: #e2bb78;--ui-accent-contrast: #24190d;--ui-accent-soft: #594329;--ui-success: #a6d1ac;--ui-danger: #ffb09b;--ui-focus: #ffda96;--ui-relation-peace: #8fdba3;--ui-relation-peace-soft: #223d2b;--ui-relation-nap: #9cc4ff;--ui-relation-nap-soft: #213349;--ui-relation-enemy: #ffa595;--ui-relation-enemy-soft: #482722;--theme-paper: var(--ui-surface);--theme-paper-raised: var(--ui-surface-raised);--theme-paper-muted: var(--ui-surface-muted);--theme-ink: var(--ui-text);--theme-ink-muted: var(--ui-muted);--theme-rule: var(--ui-border);--theme-rule-strong: var(--ui-control-border);--theme-action: var(--ui-accent);--theme-action-ink: var(--ui-accent-contrast);--theme-success: var(--ui-success);--theme-danger: var(--ui-danger);--theme-paper-texture: none;color-scheme:dark;--ui-control: #181612;--ui-table-header: #59462d;--ui-table-header-text: #fff0d3;--ui-table-stripe: #342e24;--ui-selected: #53412a}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scrollbar-width:thin;scrollbar-color:var(--ui-border) var(--ui-canvas)}::selection{background:color-mix(in srgb,var(--ui-accent) 32%,var(--ui-surface-raised));color:var(--ui-text)}input,textarea,select{caret-color:var(--ui-accent)}body::-webkit-scrollbar,*::-webkit-scrollbar{width:.65rem;height:.65rem}body::-webkit-scrollbar-track,*::-webkit-scrollbar-track{background:var(--ui-canvas)}body::-webkit-scrollbar-thumb,*::-webkit-scrollbar-thumb{border:2px solid var(--ui-canvas);border-radius:999px;background:var(--ui-border)}body::-webkit-scrollbar-thumb:hover,*::-webkit-scrollbar-thumb:hover{background:var(--ui-accent)}*{box-sizing:border-box}body{margin:0;min-width:0;min-height:100vh;min-height:100dvh;background:var(--ui-canvas);color:var(--ui-text);line-height:1.5}button,a{font:inherit}.ui-icon{display:block;width:1.1rem;height:1.1rem;flex:0 0 auto}.game-sidebar__footer a,.game-sidebar__footer button{display:inline-flex;align-items:center;gap:.5rem}.app-header__population-icon .ui-icon{width:1.25rem;height:1.25rem}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:not([tabindex="-1"]):focus-visible,main:focus-visible{outline:3px solid var(--ui-focus);outline-offset:3px}:is(.app-shell--interface-v2,[data-interface=v2]) :where(button,a,select,input,textarea,summary,[tabindex]:not([tabindex="-1"])):focus-visible{outline:2px solid var(--v2-accent);outline-offset:2px}.skip-link{position:fixed;z-index:10;top:.5rem;left:.5rem;transform:translateY(-200%);border:2px solid var(--ui-focus);border-radius:var(--ui-radius-sm);background:var(--ui-surface-raised);color:var(--ui-text);font-family:var(--font-ui);font-weight:700;padding:.65rem .85rem;text-decoration:none}.skip-link:focus-visible{transform:translateY(0)}.app-shell{min-height:100vh;min-height:100dvh;display:grid;grid-template-rows:auto 1fr;background:radial-gradient(circle at 100% 0%,color-mix(in srgb,var(--ui-surface-raised) 55%,transparent),transparent 30rem),var(--ui-canvas)}.app-header{position:sticky;z-index:10;top:0;background:color-mix(in srgb,var(--ui-surface) 92%,transparent);color:var(--ui-text);border-bottom:1px solid var(--ui-border);box-shadow:var(--ui-shadow-sm);padding:calc(clamp(.5rem,1.5vw,.7rem) + env(safe-area-inset-top)) clamp(.75rem,3vw,1.5rem) clamp(.5rem,1.5vw,.7rem);display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:clamp(.5rem,2vw,.85rem)}.brand{color:inherit;text-decoration:none;font-family:var(--font-display);line-height:1;display:grid;text-transform:uppercase;letter-spacing:.05em;min-width:0}.brand__eyebrow,.eyebrow{font-family:var(--font-ui);font-size:clamp(.75rem,1.8vw,.8rem);letter-spacing:.09em;text-transform:uppercase}.brand__name{font-size:clamp(1.05rem,4vw,1.15rem);font-weight:600;overflow-wrap:anywhere}.app-header__details{min-width:0}.app-header__command-context{display:grid;gap:.08rem;min-width:0;color:var(--ui-text);font-family:var(--font-ui);font-size:var(--text-sm)}.app-header__world-label,.app-header__player-label{color:var(--ui-muted);font-size:var(--text-xs);font-weight:650;letter-spacing:.06em;text-transform:uppercase}.app-header__command-context strong{overflow-wrap:anywhere}.app-header__compact-resources{min-width:0}@media(max-width:63.999rem){.app-header{gap:.375rem;padding-top:calc(.375rem + env(safe-area-inset-top));padding-bottom:.375rem}.app-header .brand{display:flex;align-items:baseline;gap:.35rem}}@media(min-width:64rem){.app-shell.app-shell--interface-v2.app-shell--game{grid-template-rows:4.7rem minmax(0,1fr)}.app-shell.app-shell--interface-v2>.app-header{grid-template-columns:minmax(10rem,auto) minmax(0,1fr) auto auto auto;grid-template-rows:4.7rem;gap:0 .65rem;padding-inline:.9rem 1rem}.app-shell.app-shell--interface-v2>.app-header .app-header__breadcrumb{grid-column:1;grid-row:1;min-width:0}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources{display:grid;grid-column:2;grid-row:1;grid-template-columns:repeat(4,minmax(5.25rem,1fr));align-items:center;width:100%;min-width:0;max-width:none;gap:.35rem;margin:0;padding:0;border:0;background:transparent}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources .resource-bar__item{min-width:0;min-height:2.85rem;border-radius:.55rem;background:#12302d}.app-shell.app-shell--interface-v2>.app-header .app-header__population{grid-column:3;grid-row:1;min-width:7.25rem;border-left:1px solid var(--v2-border-soft);padding-left:.7rem}.app-shell.app-shell--interface-v2>.app-header .app-header__profile{grid-column:5;grid-row:1}.app-shell.app-shell--interface-v2>.app-header .onboarding-launcher{display:none!important}.app-shell.app-shell--interface-v2 .game-sidebar{align-items:center;padding:.65rem .55rem .7rem}.app-shell.app-shell--interface-v2 .game-sidebar__identity{width:100%;border:0;background:transparent;box-shadow:none}.app-shell.app-shell--interface-v2 .game-sidebar__brand{width:2.85rem;min-height:2.85rem;margin:0 auto;padding:0;border:1px solid color-mix(in srgb,var(--ui-accent) 78%,var(--ui-border));border-radius:.65rem;background:color-mix(in srgb,var(--ui-surface-raised) 68%,transparent)}.app-shell.app-shell--interface-v2 .game-sidebar__footer{width:100%;margin-top:auto;padding:.45rem 0 0;border-top:1px solid color-mix(in srgb,var(--ui-border) 66%,transparent);background:transparent}.app-shell.app-shell--interface-v2 .game-sidebar__footer a,.app-shell.app-shell--interface-v2 .game-sidebar__footer button{position:relative;width:2.85rem;min-height:2.85rem;margin-inline:auto;padding:.65rem}.app-shell.app-shell--interface-v2 .game-sidebar__footer a>span,.app-shell.app-shell--interface-v2 .game-sidebar__footer button>span{position:absolute;left:calc(100% + .55rem);width:max-content;height:auto;overflow:visible;clip:auto;clip-path:none;opacity:0;transform:translate(-.35rem);transition:opacity var(--motion-menu) var(--motion-ease),transform var(--motion-menu) var(--motion-ease);pointer-events:none;white-space:nowrap;color:var(--ui-text);font-size:var(--text-xs)}.app-shell.app-shell--interface-v2 .game-sidebar__footer a:hover>span,.app-shell.app-shell--interface-v2 .game-sidebar__footer a:focus-visible>span,.app-shell.app-shell--interface-v2 .game-sidebar__footer button:hover>span,.app-shell.app-shell--interface-v2 .game-sidebar__footer button:focus-visible>span{opacity:1;transform:translate(0)}}@media(max-width:63.999rem){.app-shell.app-shell--interface-v2>.app-header{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto auto;gap:.35rem .55rem;padding:.45rem .65rem}.app-shell.app-shell--interface-v2>.app-header .app-header__breadcrumb{display:flex;grid-column:1;grid-row:1}.app-shell.app-shell--interface-v2>.app-header .app-header__profile{grid-column:2;grid-row:1}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources{display:flex;grid-column:1 / -1;grid-row:2;min-width:0;width:100%;overflow-x:auto;padding:0}.app-shell.app-shell--interface-v2>.app-header .app-header__population{grid-column:1;grid-row:3;justify-self:start;border-left:0;padding-left:0}.app-shell.app-shell--interface-v2>.app-header .onboarding-launcher{display:none!important}}@media(min-width:64rem){.app-shell.app-shell--interface-v2 .village-map-scene__side-nav{position:absolute;z-index:15;top:50%;display:grid;gap:.45rem;transform:translateY(-50%)}.app-shell.app-shell--interface-v2 .village-map-scene__side-nav a{position:relative;display:grid;width:2.95rem;min-height:2.95rem;place-items:center;border:1px solid rgb(255 239 180 / 34%);border-radius:.6rem;background:#071c19d6;color:var(--v2-muted);text-decoration:none;transition:border-color var(--motion-menu) var(--motion-ease),background-color var(--motion-menu) var(--motion-ease),color var(--motion-menu) var(--motion-ease)}.app-shell.app-shell--interface-v2 .village-map-scene__side-nav a:hover,.app-shell.app-shell--interface-v2 .village-map-scene__side-nav a:focus-visible{border-color:var(--v2-accent);background:#39624bd6;color:var(--v2-ink)}.app-shell.app-shell--interface-v2 .village-map-scene__side-nav a span{position:absolute;top:50%;width:max-content;padding:.35rem .5rem;border:1px solid var(--v2-border);border-radius:.35rem;background:#071c19f5;color:var(--v2-ink);font-size:var(--text-2xs);font-weight:750;opacity:0;pointer-events:none;transition:opacity var(--motion-menu) var(--motion-ease),transform var(--motion-menu) var(--motion-ease);transform:translateY(-50%)}.app-shell.app-shell--interface-v2 .village-map-scene__side-nav a:hover span,.app-shell.app-shell--interface-v2 .village-map-scene__side-nav a:focus-visible span{opacity:1;transform:translateY(-50%)}}@media(prefers-reduced-motion:reduce){.app-shell.app-shell--interface-v2 .village-map-scene__side-nav a,.app-shell.app-shell--interface-v2 .village-map-scene__side-nav a span,.app-shell.app-shell--interface-v2 .game-sidebar__footer a>span,.app-shell.app-shell--interface-v2 .game-sidebar__footer button>span{transition:none}}@media(max-width:63.999rem){.app-shell.app-shell--interface-v2{--scene-nav-top: calc(5.1rem + env(safe-area-inset-top)) ;--scene-nav-height: 3.1rem;--scene-nav-bottom: calc(var(--scene-nav-top) + var(--scene-nav-height));--scene-bottom-bar: calc(3.85rem + env(safe-area-inset-bottom)) }.app-shell.app-shell--interface-v2 .scene-navigation{position:fixed;z-index:38;top:var(--scene-nav-top);right:0;left:0;display:flex;gap:.12rem;box-sizing:border-box;width:auto;height:var(--scene-nav-height);padding:.2rem calc(.4rem + env(safe-area-inset-right)) .2rem calc(.4rem + env(safe-area-inset-left));overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;border:0;border-block:1px solid color-mix(in srgb,var(--v2-border) 90%,transparent);border-radius:0;background:#071c19f0;box-shadow:0 .35rem .8rem #00000038;transform:none}.app-shell.app-shell--interface-v2 .scene-navigation::-webkit-scrollbar{display:none}.app-shell.app-shell--interface-v2 .scene-navigation__action,.app-shell.app-shell--interface-v2 .scene-navigation__action--secondary{display:grid;flex:1 0 auto;grid-template-rows:1.5rem auto;place-items:center;width:auto;min-width:2.6rem;min-height:0;gap:.08rem;padding:.1rem .15rem;border:1px solid transparent;border-radius:.45rem;background:transparent;color:var(--v2-muted);font-family:inherit;font-size:var(--text-2xs);font-weight:700;line-height:1;text-decoration:none;white-space:nowrap;scroll-snap-align:center;transition:color var(--motion-fast) var(--motion-ease),background-color var(--motion-fast) var(--motion-ease),border-color var(--motion-fast) var(--motion-ease)}.app-shell.app-shell--interface-v2 .scene-navigation__action:hover,.app-shell.app-shell--interface-v2 .scene-navigation__action:focus-visible,.app-shell.app-shell--interface-v2 .scene-navigation__action.is-active{border-color:var(--v2-accent);background:var(--v2-surface-raised);color:var(--v2-ink)}.app-shell.app-shell--interface-v2 .scene-navigation__action img{width:1.5rem;height:1.5rem}}@media(min-width:64rem){.app-shell.app-shell--interface-v2 .game-sidebar__brand>.game-sidebar__mark{position:relative;display:grid;width:2.85rem;height:2.85rem;overflow:visible;clip:auto;clip-path:none;color:var(--v2-accent)!important;font-size:.88rem;white-space:normal}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources{grid-template-columns:repeat(4,minmax(9.5rem,max-content));width:max-content;max-width:calc(100% - .25rem);justify-content:start}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources .resource-bar__item{width:9.5rem;max-width:9.5rem}}.game-sidebar,.app-header__breadcrumb,.app-header__profile{display:none}@media(min-width:64rem){.app-shell--game{grid-template-columns:clamp(16rem,18vw,17.5rem) minmax(0,1fr);grid-template-rows:4.7rem 5.75rem minmax(0,1fr);background:var(--ui-canvas)}.app-shell--game .game-sidebar{display:flex;grid-column:1;grid-row:1 / -1;min-height:100dvh;flex-direction:column;overflow:hidden;padding:1.35rem .85rem 1rem;background:var(--ui-surface-muted);border-right:1px solid var(--ui-border)}.game-sidebar__brand{display:flex;align-items:center;gap:.7rem;padding:0 .55rem 1.35rem;color:var(--ui-text);text-decoration:none}.game-sidebar__brand>span:last-child{display:grid;gap:.06rem;font-size:var(--text-xs);letter-spacing:.17em;line-height:1.1}.game-sidebar__brand strong{color:var(--ui-text);font-weight:800}.game-sidebar__brand b{color:var(--ui-accent);font-weight:700}.game-sidebar__mark{display:grid;width:2.55rem;height:2.55rem;place-items:center;border:1px solid color-mix(in srgb,var(--ui-accent) 75%,var(--ui-border));border-radius:.65rem;background:linear-gradient(145deg,color-mix(in srgb,var(--ui-surface-raised) 78%,transparent),color-mix(in srgb,var(--ui-surface-muted) 84%,transparent));color:var(--ui-accent);font:800 .88rem/1 var(--font-ui);letter-spacing:.08em;box-shadow:inset 0 0 0 1px #ffffff0d,0 .45rem 1rem #0000002e}.game-sidebar__footer a,.game-sidebar__footer button{display:flex;align-items:center;gap:.75rem;min-height:2.45rem;padding:.48rem .7rem;border:1px solid transparent;border-radius:.45rem;color:var(--ui-muted);font-size:var(--text-sm);text-decoration:none;transition:background var(--motion-fast) var(--motion-ease),color var(--motion-fast) var(--motion-ease),border-color var(--motion-fast) var(--motion-ease)}.game-sidebar__footer a:hover,.game-sidebar__footer a:focus-visible,.game-sidebar__footer button:hover:not(:disabled),.game-sidebar__footer button:focus-visible:not(:disabled){background:color-mix(in srgb,var(--ui-accent-soft) 34%,transparent);border-color:color-mix(in srgb,var(--ui-border) 80%,transparent);color:var(--ui-text)}.game-sidebar__footer{display:grid;gap:.25rem;margin-top:auto;padding:.9rem .15rem 0;border-top:1px solid color-mix(in srgb,var(--ui-border) 63%,transparent)}.game-sidebar__footer button{width:100%;border:1px solid transparent;background:transparent;cursor:pointer;text-align:left}.game-sidebar__footer a span,.game-sidebar__footer button span{width:1.08rem;color:var(--ui-muted);text-align:center}.app-shell--game .app-header{display:flex;grid-column:2;grid-row:1;align-items:center;justify-content:space-between;min-height:0;padding:0 2.25rem;background:var(--ui-surface);border-bottom:1px solid var(--ui-border);box-shadow:none}.app-shell--game .app-header>.brand,.app-shell--game .app-header__command-context,.app-shell--game .app-header__compact-resources,.app-shell--game .app-header__details{display:none}.app-header__breadcrumb{display:flex;align-items:center;gap:.55rem;color:var(--ui-muted);font-size:var(--text-sm)}.app-header__breadcrumb strong{color:var(--ui-text);font-weight:650}.app-header__breadcrumb span:nth-child(2){color:var(--ui-border)}.app-header__profile{display:flex;align-items:center;gap:.75rem}.app-header__avatar{display:grid;width:2.2rem;height:2.2rem;place-items:center;border-radius:50%;background:#476d5e;color:var(--ui-text);font-size:var(--text-2xs);font-weight:800}.app-header__profile-copy{display:grid;gap:.12rem;min-width:8rem}.app-header__profile-copy strong{color:var(--ui-text);font-size:var(--text-sm)}.app-header__profile-copy small{overflow:hidden;color:var(--ui-muted);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap}.app-shell--game>nav.main-nav--desktop{display:none}.app-shell--game .app-main{grid-column:2;grid-row:3;width:100%;max-width:none;min-height:0;overflow-y:auto;padding:1.8rem clamp(1.25rem,3vw,3.4rem) 3rem}}@media(max-width:63.999rem){.game-sidebar,.app-header__breadcrumb,.app-header__profile{display:none}}.app-header__details-summary{display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-height:2.75rem;border:1px solid var(--ui-control-border);border-radius:var(--ui-radius-sm);background:var(--ui-surface-raised);color:var(--ui-text);cursor:pointer;font-family:var(--font-ui);list-style:none;padding:.45rem .65rem}.app-header__details-summary::-webkit-details-marker{display:none}.app-header__details-summary>span:first-child{display:grid;gap:.08rem;min-width:0}.app-header__details-summary strong{overflow-wrap:anywhere}.app-header__details-label,.app-header__details-action{color:var(--ui-muted);font-size:var(--text-xs);font-weight:650}.app-header__details-action{flex:0 0 auto;color:var(--ui-accent)}.app-header__details[open] .app-header__details-action:after{content:"Zwiń"}.app-header__details[open] .app-header__details-action{font-size:0}.app-header__details[open] .app-header__details-action:after{font-size:var(--text-xs)}.app-header__details-content{display:grid;gap:.5rem;padding-top:.5rem}.navigation-trigger,.mobile-navigation-drawer__close{border:1px solid var(--ui-control-border);border-radius:var(--ui-radius-sm);background:var(--ui-surface-raised);color:var(--ui-text);cursor:pointer;font-family:var(--font-ui);font-size:1rem;font-weight:700;min-height:2.75rem;padding:.625rem .85rem}.navigation-trigger--header{display:none}.village-switcher{grid-column:1 / -1;min-width:0}.village-switcher select{width:100%;max-width:none;min-height:2.75rem;border:1px solid var(--ui-control-border);border-radius:var(--ui-radius-sm);background:var(--ui-control);color:var(--ui-text);font-family:var(--font-ui);font-size:1rem;padding:.35rem .55rem}.app-header .resource-bar{margin:0;min-width:0;width:100%}.app-main{min-width:0;width:min(73.75rem,100%);margin:0 auto;padding:clamp(1rem,2.5vw,2rem) clamp(.75rem,3vw,1.75rem) calc(1rem + env(safe-area-inset-bottom))}.app-shell--game .app-main{padding-bottom:calc(5.5rem + env(safe-area-inset-bottom))}@media(max-width:63.999rem){.app-header--scrollable{position:static}}.onboarding-checklist{display:grid;gap:.75rem;margin:0 0 1.25rem;border:1px solid var(--ui-border);border-left:.25rem solid var(--ui-accent);border-radius:var(--ui-radius-md);background:var(--ui-surface);padding:1rem}.onboarding-launcher{display:inline-flex;align-items:center;gap:.45rem;min-height:2.5rem;max-width:10rem;padding:.35rem .65rem;border:1px solid var(--ui-border);border-radius:999px;background:color-mix(in srgb,var(--ui-surface-raised) 86%,transparent);color:var(--ui-text);font:700 .78rem/1 var(--font-ui);cursor:pointer}.onboarding-launcher:hover,.onboarding-launcher:focus-visible{border-color:var(--ui-accent);color:var(--ui-accent)}.onboarding-launcher:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.onboarding-launcher__label{white-space:nowrap}.onboarding-launcher__count{min-width:1.45rem;padding:.23rem .35rem;border-radius:999px;background:var(--ui-accent);color:var(--ui-accent-contrast);font-variant-numeric:tabular-nums;text-align:center}.onboarding-dialog{width:min(42rem,calc(100% - 2rem));max-width:42rem;padding:0;border:0;background:transparent;color:var(--ui-text)}.onboarding-dialog::backdrop{background:#040c0eb8}.onboarding-checklist--dialog{max-height:min(80dvh,44rem);overflow:auto;margin:0;border:1px solid var(--ui-border);border-left:.25rem solid var(--ui-accent);box-shadow:var(--ui-shadow-md)}.onboarding-checklist__dismiss{justify-self:start;margin-top:.25rem}.app-header .onboarding-launcher{flex:0 0 auto}.app-shell--command-deck .onboarding-checklist:not(.is-expanded){width:min(100%,52rem);gap:.4rem;padding:.7rem .9rem}.app-shell--command-deck .onboarding-checklist:not(.is-expanded) .onboarding-checklist__heading{align-items:center}.onboarding-checklist__heading,.onboarding-checklist__steps li{display:flex;align-items:center;gap:.75rem}.onboarding-checklist__heading{justify-content:space-between}.onboarding-checklist__heading h2,.onboarding-checklist__heading .eyebrow,.onboarding-checklist p{margin-bottom:0}.onboarding-checklist__steps{display:grid;gap:.65rem;margin:0;padding:0;list-style:none}.onboarding-checklist__steps li{align-items:flex-start;border-top:1px solid var(--ui-border);padding-top:.65rem}.onboarding-checklist__steps li>span:first-child{color:var(--ui-success);font-size:1.3rem;line-height:1}.onboarding-checklist__steps li>div{flex:1}.onboarding-checklist__steps a{color:var(--ui-accent);font-family:var(--font-ui);font-size:var(--text-ms);font-weight:700;white-space:nowrap}.page-intro{max-width:42rem;margin-bottom:1.75rem}h1,h2{font-family:var(--font-display);font-weight:600;margin-top:0}h1{font-size:clamp(1.75rem,4vw,2.5rem);line-height:1.08;margin-bottom:.4rem;color:var(--ui-text)}h2{font-size:clamp(1.2rem,2.5vw,1.4rem);line-height:1.2;margin-bottom:.6rem}p{margin-top:0}.eyebrow{color:var(--ui-accent);font-weight:700;margin-bottom:.5rem}.active-order{border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface-raised);padding:1rem}.active-order h3{margin-bottom:.35rem}.active-order p:last-child{margin-bottom:0}.status-message{border-left:.25rem solid var(--ui-success);border-radius:var(--ui-radius-sm);background:var(--ui-surface-muted);font-family:var(--font-ui);margin:0 0 1rem;padding:.7rem .85rem}.status-message--error{border-color:var(--ui-danger);color:var(--ui-danger)}.text-button{border:0;background:transparent;color:var(--ui-accent);cursor:pointer;font-weight:700;padding:.25rem;text-decoration:underline}.text-button:disabled{color:var(--ui-muted);cursor:not-allowed}.confirm-button.is-armed{color:var(--ui-danger);text-decoration-thickness:2px}@media(hover:hover)and (pointer:fine){.app-main .text-button:hover:not(:disabled):not([aria-disabled=true]){color:var(--ui-focus);text-decoration-thickness:2px;text-underline-offset:.2em}.app-main .game-tab:hover:not(:disabled):not([aria-selected=true]),.app-main .report-nav-button:hover:not(:disabled),.app-main .report-detail-panel__back:hover:not(:disabled),.app-main .alliance-page__anchors a:hover,.app-main .military-navigation a:hover,.app-main .market-page__operations>summary:hover,.app-main .market-page__history>summary:hover,.app-main .world-minimap__navigator>button:hover:not(:disabled):not(.world-minimap__chart){background:var(--ui-accent-soft);color:var(--ui-text);border-color:var(--ui-accent)}.app-main .game-control:hover:not(:disabled):not([aria-invalid=true]){border-color:var(--ui-accent)}}.village-heading-meta{display:flex;align-items:baseline;gap:.65rem}.village-heading-meta__points{color:var(--ui-muted);font-size:var(--text-sm);font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:normal;text-transform:none}.build-readiness{border-top:2px solid var(--ui-accent);color:var(--ui-muted);display:grid;font-family:var(--font-ui);font-size:var(--text-ms);gap:.35rem;margin:0 0 1rem;padding:0 0 0 .7rem}.build-readiness li{line-height:1.4}.unit-art{display:block;flex:0 0 auto;width:var(--unit-art-card-width);height:var(--unit-art-card-height);object-fit:contain;object-position:center bottom}.unit-art--summary{width:var(--unit-art-summary-width);height:var(--unit-art-summary-height)}.unit-art--table{width:var(--unit-art-table-width);height:var(--unit-art-table-height)}.unit-art--compact{width:var(--unit-art-compact-size);height:var(--unit-art-compact-size)}.unit-art:is(svg){overflow:visible}.primary-button,.interior-action{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;font:700 .875rem/1.2 var(--font-ui);text-align:center;text-decoration:none;cursor:pointer;border:1px solid var(--ui-control-border);border-radius:var(--ui-radius-sm);color:var(--ui-accent-contrast);background:var(--ui-accent);padding:.8rem 1rem;font-weight:700;box-shadow:0 .2rem .45rem #462e1729;transition:transform var(--motion-fast) var(--motion-ease),background-color var(--motion-fast) var(--motion-ease)}.primary-button{width:100%}.primary-button:hover:not(:disabled),.interior-action:hover:not(:disabled){background:var(--ui-focus);box-shadow:0 .4rem .8rem #462e1738}.primary-button:disabled,.interior-action:disabled{cursor:not-allowed;background:var(--ui-surface-muted);color:var(--ui-muted)}.main-nav--desktop{display:none}.main-nav--mobile{position:fixed;z-index:10;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.2rem;border-top:1px solid var(--ui-border);box-shadow:0 -.5rem 1.5rem #0000003d;padding:.35rem max(.35rem,env(safe-area-inset-right)) calc(.35rem + env(safe-area-inset-bottom)) max(.35rem,env(safe-area-inset-left))}.main-nav{background:var(--ui-surface-muted)}.main-nav a,.main-nav .navigation-trigger,.main-nav .main-nav__menu{display:flex;align-items:center;justify-content:center;min-width:0;min-height:2.75rem;border-radius:var(--ui-radius-sm);color:var(--ui-muted);font-family:var(--font-ui);font-size:clamp(.75rem,3.3vw,.875rem);line-height:1.15;overflow-wrap:anywhere;padding:.45rem .25rem;text-align:center;text-decoration:none;transition:background-color var(--motion-fast) var(--motion-ease),color var(--motion-fast) var(--motion-ease)}.main-nav a.router-link-active,.main-nav .navigation-trigger--current{background:var(--ui-selected);color:var(--ui-text);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ui-accent) 22%,transparent)}.main-nav .navigation-trigger{border-color:var(--ui-control-border);cursor:pointer}.main-nav .main-nav__menu{border:1px solid var(--ui-control-border);cursor:pointer}.main-nav--mobile a,.main-nav--mobile .main-nav__menu{flex-direction:column;gap:.15rem}.main-nav--mobile .main-nav__icon{width:1.1rem;height:1.1rem;flex:0 0 auto}.main-nav--desktop a.router-link-active{box-shadow:inset 0 2px var(--ui-accent),inset 0 0 0 1px var(--ui-border)}.main-nav--desktop a:focus-visible,.main-nav--desktop button:focus-visible:not(:disabled),.main-nav--mobile a:focus-visible,.main-nav--mobile button:focus-visible:not(:disabled){background:var(--ui-surface-raised);color:var(--ui-accent)}.main-nav--desktop a:focus-visible .main-nav__icon{opacity:1}@media(hover:hover)and (pointer:fine){.main-nav--desktop a:hover,.main-nav--desktop button:hover:not(:disabled){background:var(--ui-surface-raised);color:var(--ui-accent);box-shadow:inset 0 0 0 1px var(--ui-control-border)}.main-nav--desktop a:hover .main-nav__icon{opacity:1}.main-nav--desktop a.router-link-active:hover,.main-nav--desktop a.router-link-active:focus-visible{background:var(--ui-selected);box-shadow:inset 0 2px var(--ui-accent),inset 0 0 0 1px var(--ui-control-border)}}.world-exit,.motion-preference-toggle,.theme-preference-toggle{min-height:2.75rem;border:1px solid var(--ui-control-border);border-radius:var(--ui-radius-sm);background:transparent;color:var(--ui-muted);cursor:pointer;font:inherit;font-size:var(--text-ms);line-height:1.2;overflow-wrap:anywhere;padding:.6rem .75rem;text-align:left;transition:background-color var(--motion-fast) var(--motion-ease),color var(--motion-fast) var(--motion-ease)}.motion-preference-toggle[aria-pressed=true],.theme-preference-toggle[aria-pressed=true]{background:var(--ui-accent-soft);color:var(--ui-text)}.mobile-navigation-drawer{inset:0 0 0 auto;width:min(22rem,calc(100vw - 1rem));height:100dvh;max-width:100%;max-height:none;margin:0;border:0;border-left:1px solid var(--ui-border);background:var(--ui-surface);color:var(--ui-text);overflow-x:hidden;overflow-y:auto;padding:0}.mobile-navigation-drawer::backdrop{background:#050a09b8}.mobile-navigation-drawer__panel{max-width:100%;min-height:100%;min-width:0;overflow-wrap:anywhere;padding:calc(1rem + env(safe-area-inset-top)) 1rem calc(1rem + env(safe-area-inset-bottom))}.mobile-navigation-drawer[open] .mobile-navigation-drawer__panel{animation:mobile-navigation-enter var(--motion-menu) var(--motion-ease)}.mobile-navigation-drawer__header{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:1rem;max-width:100%;min-width:0;padding-bottom:1rem;border-bottom:1px solid var(--ui-border)}.mobile-navigation-drawer__header h2{color:inherit;font-size:clamp(1.25rem,5vw,1.55rem);margin:0;min-width:0;overflow-wrap:anywhere}.mobile-navigation-drawer__header p{margin:0 0 .2rem}.mobile-navigation-drawer__context{color:var(--ui-muted);font-family:var(--font-ui);font-size:var(--text-xs);font-weight:650;letter-spacing:.06em;text-transform:uppercase}.mobile-navigation-drawer__close{max-width:100%;overflow-wrap:anywhere}.mobile-navigation-drawer__links{display:grid;gap:.35rem;max-width:100%;min-width:0;padding-top:1rem}.mobile-navigation-drawer__links a{display:flex;align-items:center;min-height:2.75rem;border-radius:var(--ui-radius-sm);color:var(--ui-muted);font-family:var(--font-ui);font-size:1rem;max-width:100%;min-width:0;overflow-wrap:anywhere;padding:.75rem .85rem;text-decoration:none}.mobile-navigation-drawer__links a.router-link-active{background:var(--ui-accent-soft);color:var(--ui-text)}.mobile-navigation-drawer__links .motion-preference-toggle,.mobile-navigation-drawer__links .theme-preference-toggle{margin-top:.65rem;text-align:left}.theme-preference-toggle--public{justify-self:end;margin:max(.75rem,env(safe-area-inset-top)) max(.75rem,env(safe-area-inset-right)) 0 .75rem;background:var(--ui-surface-raised)}@keyframes mobile-navigation-enter{0%{transform:translate(100%)}}@media(min-width:64rem){html:has(.app-shell--game){overflow:hidden}.app-shell--game{position:fixed;top:0;right:0;bottom:0;left:0;height:100dvh;min-height:0;overflow:hidden;grid-template-columns:clamp(11.5rem,15vw,13rem) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}.app-shell--game .app-header{grid-row:1;grid-column:1 / -1;display:grid;grid-template-columns:clamp(10rem,13vw,11.5rem) minmax(10rem,15rem) minmax(0,1fr);align-items:center;gap:.5rem .75rem;padding:calc(.45rem + env(safe-area-inset-top)) clamp(.75rem,2vw,1.25rem) .45rem}.app-header .brand{display:grid;align-content:center;justify-content:start;gap:.3rem;min-height:2.75rem;white-space:nowrap}.app-header__details{display:block;min-width:0;width:100%;grid-column:2 / -1}.app-header__compact-resources,.app-header__details-summary{display:none}.app-header__details-content{display:grid;grid-template-columns:minmax(10rem,14rem) minmax(0,1fr);align-items:center;gap:.5rem .75rem;padding:0}.navigation-trigger,.mobile-navigation-drawer,.main-nav--mobile{display:none}.village-switcher,.village-switcher select{width:100%;max-width:15rem}.village-switcher,.app-header .resource-bar{grid-column:auto}.main-nav--desktop{display:grid;position:sticky;z-index:9;top:var(--game-header-height, calc(8.25rem + env(safe-area-inset-top)) );grid-row:2;grid-column:1;grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto;gap:1.5rem;align-self:start;align-content:start;height:100%;min-height:0;overflow:hidden;border-top:0;border-right:1px solid color-mix(in srgb,var(--ui-border) 78%,transparent);background:color-mix(in srgb,var(--ui-surface-muted) 72%,transparent);padding:.9rem .7rem}.main-nav a{display:flex;align-items:center;justify-content:flex-start;min-height:2.75rem;font-size:clamp(.875rem,1.5vw,1rem);padding:.7rem .8rem;text-align:left}.main-nav__primary,.main-nav__utility,.main-nav__group{display:grid;gap:.4rem}.main-nav__group+.main-nav__group{margin-top:.7rem;padding-top:.7rem;border-top:1px solid color-mix(in srgb,var(--ui-border) 52%,transparent)}.main-nav__primary{align-content:start;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-color:var(--ui-border) transparent;padding:.25rem}.main-nav__icon{width:1.25rem;height:1.25rem;flex:0 0 auto;opacity:.85}.main-nav__section-label{padding:.3rem .8rem .65rem;color:var(--ui-muted);font:700 var(--text-2xs)/1.4 var(--font-ui);letter-spacing:.08em;text-transform:uppercase}.main-nav__primary a{gap:.7rem}.main-nav__utility{margin-top:auto;padding-top:.75rem;border-top:1px solid color-mix(in srgb,var(--ui-border) 72%,transparent)}.main-nav__utility .world-exit,.main-nav__utility .motion-preference-toggle,.main-nav__utility .theme-preference-toggle{margin-top:0;border-radius:var(--ui-radius-sm);text-align:left}.main-nav .motion-preference-toggle,.main-nav .theme-preference-toggle{margin-top:0;text-align:left}.app-shell--game .app-main{grid-row:2;grid-column:2;width:100%;min-height:0;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-gutter:stable;padding-bottom:clamp(1rem,2.5vw,2rem);scroll-margin-top:0;--mobile-sticky-header-height: 0px}}@media(min-width:64rem)and (max-height:48rem){.main-nav--desktop{gap:.75rem;padding-block:.5rem}.main-nav__primary,.main-nav__utility{gap:.25rem}.main-nav__section-label{padding-block:.1rem .35rem}.main-nav__primary a{min-height:2.25rem;padding-block:.4rem}.main-nav__utility{padding-top:.4rem}.main-nav__utility button{min-height:2rem;padding-block:.35rem;font-size:var(--text-sm)}}@media(min-width:64rem)and (max-height:36rem){.main-nav__section-label{display:none}.main-nav__primary a{min-height:2rem;padding-block:.3rem}}.map-page,.map-layout,.world-map{min-width:0}.world-map{background:var(--strategy-panel-fill);border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);box-shadow:var(--strategy-frame);padding:clamp(1rem,2.5vw,1.5rem)}.map-cell:not(:disabled):hover,.map-cell:not(:disabled):focus-visible{background:#b3a05c}.secondary-button{margin-top:1rem;width:100%}.movement-list{display:grid;gap:.75rem;list-style:none;margin:0;padding:0}.movement-list li{border-top:1px solid var(--ui-border);display:grid;gap:.2rem;padding-top:.75rem}.movement-list span,.movement-list time{color:var(--ui-muted);font-family:var(--font-ui);font-size:var(--text-ms)}.movement-type{border:0;margin:1rem 0 0;padding:0}.report-list-panel,.report-detail-panel{background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);box-shadow:var(--ui-shadow-sm);padding:clamp(1rem,2.5vw,1.5rem)}.report-data{border-top:1px solid var(--ui-border);margin:1rem 0 0;padding-top:.7rem}.notification-preferences{background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);margin-top:1rem;padding:clamp(1.25rem,3vw,2rem)}.notification-preferences__list{display:grid;gap:.6rem;list-style:none;margin:1rem 0 0;padding:0}.alliance-panel{background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);box-shadow:var(--ui-shadow-sm);padding:clamp(1rem,2.5vw,1.5rem)}.member-list,.invitations ol,.audit-log ol{display:grid;gap:.75rem;list-style:none;margin:1rem 0;padding:0}.member-list li,.invitations li{align-items:center;border-top:1px solid var(--ui-border);display:grid;gap:.35rem;grid-template-columns:1fr auto auto;padding-top:.7rem}.member-list span,.invitations span,.audit-log{color:var(--ui-muted);font-family:var(--font-ui);font-size:var(--text-ms)}.invitations{margin-top:1rem}.invitations li{grid-template-columns:1fr auto}.invitations li div{display:flex;gap:.5rem}@media(max-width:45rem){.member-list li,.invitations li{grid-template-columns:1fr}}.auth-page,.join-page{display:grid;gap:clamp(1.25rem,4vw,3rem);grid-template-columns:minmax(0,1fr) minmax(18rem,28rem);align-items:start}.auth-page__intro,.join-page .page-intro{max-width:42rem}.auth-card,.join-card{background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);box-shadow:var(--ui-shadow-md);display:grid;gap:.65rem;padding:clamp(1rem,3vw,1.5rem)}.auth-card label,.join-card label,.join-card legend{font-family:var(--font-ui);font-size:var(--text-sm);font-weight:700}.auth-card input,.join-card input{border:1px solid var(--ui-control-border);border-radius:var(--ui-radius-sm);background:var(--ui-control);color:var(--ui-text);font:inherit;min-height:2.8rem;padding:.55rem .65rem;width:100%}.auth-switch{display:grid;grid-template-columns:1fr 1fr;margin-bottom:.5rem}.auth-switch button{background:var(--ui-surface-muted);border:1px solid var(--ui-control-border);color:var(--ui-muted);cursor:pointer;min-height:2.75rem;padding:.5rem}.auth-switch button[aria-pressed=true]{background:var(--ui-accent-soft);color:var(--ui-text)}.form-note,.form-error{font-family:var(--font-ui);font-size:var(--text-sm);line-height:1.45;margin:.25rem 0}.form-error{color:var(--ui-danger)}.join-card fieldset{border:0;display:grid;gap:.75rem;margin:0;padding:0}.empty-state,.requirement-message{color:var(--ui-muted);font-family:var(--font-ui)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.contextual-help{background:var(--ui-surface-muted);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);margin:1rem auto 0;max-width:72rem}.contextual-help summary{cursor:pointer;display:list-item;font-weight:700;min-height:2.75rem;padding:.45rem .75rem}.contextual-help summary:focus-visible{outline:3px solid var(--ui-focus);outline-offset:-3px}.contextual-help p{margin:0;padding:0 .75rem .75rem}@media(max-width:45rem){.resource-bar{width:100%}.village-switcher select,.onboarding-checklist .text-button,.onboarding-checklist__steps a{min-height:2.75rem}.onboarding-checklist .text-button,.onboarding-checklist__steps a{align-items:center;display:inline-flex}.onboarding-checklist__steps a{padding:.35rem 0}.onboarding-checklist__heading,.onboarding-checklist__steps li{align-items:flex-start;flex-direction:column}.onboarding-checklist__heading{gap:.5rem}.app-shell--command-deck .onboarding-checklist:not(.is-expanded){width:100%}.village-switcher,.village-switcher select{width:100%;max-width:none}.auth-page,.join-page{grid-template-columns:1fr}}.panel-enter-active{animation:panel-enter var(--motion-panel) var(--motion-ease) both}.panel-leave-active{animation:panel-leave var(--motion-fast) var(--motion-ease-exit) both;pointer-events:none}@keyframes panel-enter{0%{opacity:0;transform:translate(var(--panel-shift-x, 0),var(--panel-shift-y, var(--context-window-shift, .5rem)))}}@keyframes panel-leave{to{opacity:0;transform:translate(var(--panel-shift-x, 0),var(--panel-shift-y, var(--context-window-shift, .5rem)))}}.list-item-enter-active,.list-item-leave-active{transition:opacity var(--motion-menu) var(--motion-ease),transform var(--motion-menu) var(--motion-ease)}.list-item-leave-active{transition-timing-function:var(--motion-ease-exit);pointer-events:none}.list-item-enter-from,.list-item-leave-to{opacity:0;transform:translateY(-.25rem)}.list-item-move{transition:transform var(--motion-menu) var(--motion-ease)}.motion-list{position:relative}html[data-reduced-motion] *,html[data-reduced-motion] *:before,html[data-reduced-motion] *:after{scroll-behavior:auto!important;transition-duration:0ms!important;transition-delay:0ms!important;animation:none!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:0ms!important;transition-delay:0ms!important;animation:none!important}}@media(max-width:63.999rem){.app-shell--command-deck .quick-navigation-trigger{top:calc(.5rem + env(safe-area-inset-top));right:.75rem;bottom:auto;width:2.75rem;height:2.75rem;justify-content:center;padding:.5rem;border-radius:999px}.app-shell--command-deck .quick-navigation-trigger span:nth-child(2),.app-shell--command-deck .quick-navigation-trigger kbd{display:none}.app-shell--command-deck .quick-navigation-trigger span:first-child{font-size:var(--text-lg)}}.game-panel,.building-interior,.report-category-rail,.report-list-panel,.report-detail-panel{min-width:0;border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);color:var(--ui-text);font-family:var(--font-ui);box-shadow:var(--ui-shadow-sm)}.game-control{min-width:0;min-height:2.75rem;box-sizing:border-box;border:1px solid var(--ui-control-border);border-radius:var(--ui-radius-sm);background:var(--ui-control);box-shadow:inset 0 1px 3px var(--shade-12);color:var(--ui-text);padding:.45rem .65rem;font:400 1rem/1.3 var(--font-ui)}.game-control:focus-visible{outline:3px solid var(--ui-focus);outline-offset:2px}.game-control:disabled{opacity:.65;cursor:not-allowed}.game-action-secondary,.secondary-button{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;border:1px solid var(--ui-control-border);border-radius:var(--ui-radius-sm);padding:.5rem .75rem;background:var(--ui-accent-soft);color:var(--ui-text);font:700 .875rem/1.2 var(--font-ui);text-align:center;text-decoration:none;cursor:pointer}.game-action-secondary:hover:not(:disabled),.secondary-button:hover:not(:disabled){background:var(--ui-surface-muted)}.game-action-secondary:disabled,.secondary-button:disabled{opacity:.65;cursor:not-allowed}.building-interior{--interior-paper: var(--theme-paper);--interior-ink: var(--theme-ink);--interior-muted: var(--theme-ink-muted);--interior-rule: var(--theme-rule);--interior-rule-dark: var(--theme-rule-strong);--interior-bronze: var(--theme-action);--interior-bronze-ink: var(--theme-action-ink);--interior-good: var(--theme-success);--interior-short: var(--theme-danger);--interior-radius: var(--ui-radius-lg, 1.2rem);overflow:clip;font-family:var(--font-ui)}.building-interior *,.building-interior *:before,.building-interior *:after{box-sizing:border-box}.building-interior .eyebrow{color:var(--interior-muted, #6c563d)}.interior-section{min-width:0;border-top:1px solid var(--interior-rule, #b7955f);padding:clamp(.75rem,2vw,1rem) clamp(.75rem,2.5vw,1.25rem);color:var(--interior-ink, #362719)}.interior-section>:first-child{margin-top:0}.interior-section>:last-child{margin-bottom:0}table.interior-table{display:table;overflow:visible;border-collapse:collapse}.game-table-wrap{width:fit-content;max-width:100%;min-width:0;overflow-x:auto;overscroll-behavior-inline:contain}.game-table-wrap--wide{width:100%}.game-progress{display:block;width:100%;height:.5rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;overflow:hidden;border:1px solid var(--ui-border);border-radius:.15rem;background:var(--ui-surface-muted);color:#7d9b45}.game-progress::-webkit-progress-bar{background:var(--ui-surface-muted)}.game-progress::-webkit-progress-value{background:linear-gradient(#a5b766,#718e38)}.game-progress::-moz-progress-bar{background:linear-gradient(#a5b766,#718e38)}@media(min-width:64rem){.app-shell--game .app-main{padding:.75rem 1rem}.interior-section{padding:.6rem 0}}.interior-queue{display:grid;gap:.3rem;min-width:0;border:1px solid var(--interior-rule, #b7955f);border-left:.25rem solid var(--interior-bronze, #725634);border-radius:var(--interior-radius, .1875rem);background:color-mix(in srgb,var(--interior-paper-raised, var(--theme-paper-raised)) 72%,transparent);color:var(--interior-ink, #362719);padding:.6rem .75rem}.interior-queue>*{margin:0}.interior-action:focus-visible,.interior-table:focus-visible{outline:.16rem solid var(--ui-focus, #f0ce90);outline-offset:.16rem}.building-recruitment__header,.building-recruitment__queue{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;margin-bottom:.65rem}.building-recruitment__identity .building-recruitment__governor-note{margin:.5rem 0 0}.building-recruitment__cost dt img{flex-basis:1.6rem;width:1.6rem;height:1.6rem}.building-recruitment__row--compact .m16-recruitment__detail{margin:0;font-size:var(--text-xs)}.interior-cost dt img{display:block;flex:0 0 1.2rem;width:1.2rem;height:1.2rem;object-fit:contain}@media(max-width:24rem){.interior-section{padding:.6rem}}@media(prefers-reduced-motion:reduce){.building-interior *,.building-interior *:before,.building-interior *:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.game-panel-grid{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:1rem}.game-panel-heading,.game-panel-footer,.game-setting-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem 1rem}.game-label{padding:.15rem .55rem;border:1px solid var(--ui-border);border-radius:2rem;color:var(--ui-muted);font-size:var(--text-xs);white-space:nowrap}@media(min-width:56rem){.game-panel-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}}.world-minimap__terrain--meadow{fill:var(--minimap-meadow)}.world-minimap__terrain--forest,.world-minimap__terrain--rocks,.world-minimap__terrain--pond{fill:var(--minimap-forest)}.world-minimap__site--own{fill:var(--minimap-own);stroke:var(--minimap-own-edge);stroke-width:.2}.world-minimap__site--ally{fill:var(--minimap-ally)}.world-minimap__site--neutral{fill:var(--minimap-neutral)}.world-minimap__site--other{fill:var(--minimap-other)}.world-minimap__site--peace{fill:var(--map-relation-peace)}.world-minimap__site--nap{fill:var(--map-relation-nap)}.world-minimap__site--enemy{fill:var(--map-relation-enemy)}.report-loss-dot[data-tone=unknown]{border-style:dashed;box-shadow:none}.game-page{width:100%;--game-page-max: 100rem;max-width:var(--game-page-max);margin-inline:auto;min-width:0;display:grid;gap:var(--space-4);align-content:start}.game-page-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);min-width:0;padding-block:var(--space-2) var(--space-3);border-bottom:1px solid var(--ui-border)}.game-page-header h1{margin:0;font:700 clamp(1.65rem,2.6vw,2.4rem)/1.15 var(--font-display)}.game-page-header p{margin:0}.game-page-header__description{max-width:72ch;margin-top:var(--space-2)!important;color:var(--ui-muted);font-size:var(--text-ms)}.game-page-header__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.game-section{min-width:0;padding:var(--space-3);border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:var(--ui-surface);color:var(--ui-text)}.game-section--flush{padding:0}.game-section>:first-child{margin-top:0}.game-section>:last-child{margin-bottom:0}.game-section-header{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2) var(--space-3);margin-bottom:var(--space-3);padding-bottom:0;border:0}.game-section-header__heading{min-width:0}.game-section-header h2,.game-section-header h3{margin:0;font:700 clamp(1.3rem,1.8vw,1.8rem)/1.2 var(--font-display);color:var(--ui-text);letter-spacing:0;text-transform:none}.game-section-header .eyebrow{margin:0 0 var(--space-1)}.game-section-header__icon{width:2.25rem;height:2.25rem;object-fit:contain}.game-section-header__description{margin:0 0 0 auto;max-width:65ch;font-size:.9rem;color:var(--ui-muted)}.game-section-header__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-left:auto}.game-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr));gap:var(--space-3) var(--space-4);margin:0;padding:0}.game-stat-grid--compact{gap:var(--space-2) var(--space-3)}.game-stat-item{min-width:0;padding-block:var(--space-1)}.game-stat-item dt{display:flex;align-items:center;gap:var(--space-2);color:var(--ui-muted);font-size:var(--text-xs)}.game-stat-item dt img{object-fit:contain;width:1.75rem;height:1.75rem;flex:none}.game-stat-item dd{margin:var(--space-1) 0 0;font-weight:700;font-size:1rem;font-variant-numeric:tabular-nums}.game-stat-item:has(dt img) dd{padding-left:2.25rem}.game-table{width:100%;border-collapse:collapse;font-family:var(--font-ui);color:var(--ui-text);font-size:var(--text-sm);font-variant-numeric:tabular-nums;line-height:1.35}.game-table :is(th,td){padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--ui-border);text-align:left;vertical-align:middle}.game-table thead th{background:var(--strategy-table-header);color:var(--ui-table-header-text);font-size:var(--text-sm);font-weight:750;text-transform:uppercase;letter-spacing:.035em}.game-table tbody tr:nth-child(2n){background:color-mix(in srgb,var(--ui-table-stripe) 55%,transparent)}.game-table tbody tr:hover{background:color-mix(in srgb,var(--ui-accent-soft) 35%,transparent)}.game-table tbody tr:last-child :is(th,td){border-bottom:0}.game-table .number{text-align:right}.game-table-wrap:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.game-progress{height:.55rem;border-radius:.15rem}.game-progress::-webkit-progress-value{background:linear-gradient(var(--ui-accent-soft),var(--ui-accent))}.game-progress::-moz-progress-bar{background:linear-gradient(var(--ui-accent-soft),var(--ui-accent))}.building-interior__heading h1{margin:0;font:700 clamp(2rem,3vw,2.8rem)/1.1 var(--font-display)}.construction-table .is-locked{color:var(--ui-muted)}.building-page__build-action .interior-requirements{margin-top:var(--space-2);border:0}.build-queue{width:100%;display:grid;gap:var(--space-3);container:construction-queue / inline-size}.build-queue .game-section-header{margin:0}.build-queue__building{grid-column:2;grid-row:1;min-width:0}.build-queue__progress,.build-queue__waiting-track{grid-column:1 / 3;width:100%}.construction-table .interior-cost--aligned .interior-cost__resource{grid-template-columns:auto auto;align-items:center;justify-content:center;column-gap:.25rem}@media(max-width:79.999rem){.construction-table .interior-cost--aligned .interior-cost__resource{display:grid;grid-template-columns:minmax(0,1fr)}}@media(max-width:48rem){.game-page-header{align-items:flex-start;flex-wrap:wrap}.game-section-header__description{flex-basis:100%;margin-left:0}}.relation-chip{display:inline-flex;align-items:center;border:1px solid currentcolor;border-radius:999px;padding:.05rem .55rem;font:700 var(--text-xs) / 1.5 var(--font-ui);white-space:nowrap}.relation-chip--peace{background:var(--ui-relation-peace-soft);color:var(--ui-relation-peace)}.relation-chip--nap{background:var(--ui-relation-nap-soft);color:var(--ui-relation-nap)}.relation-chip--enemy{background:var(--ui-relation-enemy-soft);color:var(--ui-relation-enemy)}.app-shell--interface-v2 .village-page{--v2-ink: #f5f1e6;--v2-muted: #d2c8ae}.app-shell--interface-v2 .village-page__header{position:relative;isolation:isolate;overflow:hidden;border-color:color-mix(in srgb,var(--ui-accent) 40%,var(--ui-border));background:linear-gradient(105deg,var(--scene-header-from),var(--scene-header-to));color:var(--v2-ink)}.app-shell--interface-v2 .village-page__header:after{position:absolute;z-index:-1;top:0;right:0;bottom:0;left:0;background:url(/assets/terrain/village/village_ground_v2_01.webp?v=20261006-interface-v2) center / cover;content:"";opacity:.26;mix-blend-mode:screen}.app-shell--interface-v2 .village-map-scene{border-color:color-mix(in srgb,var(--ui-accent) 42%,var(--ui-border));box-shadow:0 1rem 3rem var(--scene-shadow)}.game-page-header__actions>nav{display:flex;flex-wrap:wrap;gap:.5rem}.game-section-header__actions{display:flex;flex-wrap:wrap;gap:.5rem}.game-table th,.game-table td{vertical-align:middle}.game-stat-grid--compact{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr))}.research-technology-card__quote.game-stat-grid,.market-exchange__quote .game-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:30rem){.research-technology-card__quote.game-stat-grid,.market-exchange__quote .game-stat-grid{grid-template-columns:1fr}}.primary-button:active:not(:disabled),.interior-action:active:not(:disabled),.game-action-secondary:active:not(:disabled),.secondary-button:active:not(:disabled){box-shadow:inset 0 1px 3px var(--shade-25);filter:brightness(.96)}.game-page>.game-page-header+.game-section{margin-top:0}.game-section .game-progress{inline-size:100%}.village-supply-panel .game-stat-grid{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr))}.portal-world__card-copy{margin:0;color:var(--ui-muted)}.world-map .game-section-header{margin-bottom:var(--space-2);padding-bottom:var(--space-1)}.world-map .game-section-header h2{font-size:var(--text-lg)}.game-page.game-page--contained{--game-page-max: 68rem;max-width:var(--game-page-max)}:root{--strategy-table-header: linear-gradient( var(--ui-table-header), color-mix(in srgb, var(--ui-table-header) 88%, var(--ui-surface)) );--strategy-panel-fill: linear-gradient( 115deg, color-mix(in srgb, var(--ui-surface-raised) 30%, var(--ui-surface)), var(--ui-surface) 65% );--strategy-frame: inset 0 0 0 2px color-mix(in srgb, var(--ui-canvas) 80%, transparent), inset 0 0 0 3px color-mix(in srgb, var(--ui-border) 28%, transparent), 0 2px 5px rgb(0 0 0 / 14%);--strategy-action-top: #e6c48a;--strategy-action-bottom: #bd914d;--strategy-action-ink: #24190d}.app-shell--game .app-main{background:radial-gradient(ellipse at top right,color-mix(in srgb,var(--ui-accent-soft) 13%,transparent),transparent 65%)}.app-shell--command-deck{--ui-canvas: #0d1a1d;--ui-surface: #17282b;--ui-surface-raised: #21363a;--ui-surface-muted: #102124;--ui-text: #eef4ef;--ui-muted: #a9bbb2;--ui-border: #3d5f5a;--ui-control-border: #5e7d72;--ui-accent: #d6ad63;--ui-accent-contrast: #18201d;--ui-accent-soft: #3b4d43;--ui-success: #91d1a3;--ui-danger: #f0a18d;--ui-focus: #f1d28f;--ui-control: #122326;--ui-table-header: #2b514b;--ui-table-header-text: #f3f7ef;--ui-table-stripe: #1b3033;--ui-selected: #3b5147;--ui-nav-text: #a9bbb2;--ui-nav-active: #eef4ef;--theme-paper-texture: none;--strategy-panel-fill: linear-gradient(145deg, #1d3235, #142528 72%);--strategy-frame: inset 0 0 0 1px rgb(118 163 145 / 13%), 0 .5rem 1.5rem rgb(0 0 0 / 24%);--strategy-action-top: #e7c27b;--strategy-action-bottom: #bd8d45;--strategy-action-ink: #19221e;color-scheme:dark;background:var(--ui-canvas)}.app-shell--command-deck .app-header{background:var(--ui-surface);border-bottom-color:var(--ui-border);box-shadow:0 .5rem 1.5rem var(--shade-22)}.app-shell--command-deck .brand__eyebrow,.app-shell--command-deck .eyebrow{color:var(--ui-accent)}.app-shell--command-deck .brand__name,.app-shell--command-deck h1,.app-shell--command-deck h2,.app-shell--command-deck h3{letter-spacing:.01em}.app-shell--command-deck .main-nav{background:color-mix(in srgb,var(--ui-surface-muted) 94%,transparent);border-color:var(--ui-border)}.app-shell--command-deck .main-nav a,.app-shell--command-deck .main-nav .navigation-trigger,.app-shell--command-deck .main-nav .world-exit,.app-shell--command-deck .main-nav .motion-preference-toggle,.app-shell--command-deck .main-nav .theme-preference-toggle{color:var(--ui-nav-text)}.app-shell--command-deck .main-nav a.router-link-active,.app-shell--command-deck .main-nav .navigation-trigger--current{background:color-mix(in srgb,var(--ui-accent-soft) 84%,var(--ui-surface));color:var(--ui-nav-active);box-shadow:inset .2rem 0 var(--ui-accent),inset 0 0 0 1px var(--ui-border)}.app-shell--command-deck .main-nav__section-label{color:var(--ui-accent)}.app-shell--command-deck .app-main{width:min(96rem,100%);background:transparent}.app-shell--command-deck .game-section,.app-shell--command-deck .game-panel,.app-shell--command-deck .world-map{background-image:none;background-color:color-mix(in srgb,var(--ui-surface) 28%,transparent);border-color:var(--ui-border);box-shadow:var(--strategy-frame)}.app-shell--command-deck .resource-bar__item{background:color-mix(in srgb,var(--ui-surface-raised) 92%,transparent);border-color:var(--ui-border)}.app-shell--command-deck .primary-button,.app-shell--command-deck .interior-action{background:linear-gradient(var(--strategy-action-top),var(--strategy-action-bottom));border-color:var(--deck-action-edge);color:var(--strategy-action-ink);box-shadow:0 .35rem .9rem var(--shade-25)}.app-shell--command-deck .primary-button:hover:not(:disabled),.app-shell--command-deck .interior-action:hover:not(:disabled){background:linear-gradient(var(--deck-action-hover-from),var(--deck-action-hover-to));color:var(--deck-action-hover-ink)}@media(min-width:64rem){.app-shell--command-deck .app-header{min-height:5.75rem}.app-shell--command-deck .main-nav--desktop{padding:1rem .8rem;background:var(--deck-nav-bg)}}@media(max-width:63.999rem){.app-shell--command-deck .app-header{background:color-mix(in srgb,var(--ui-surface) 72%,transparent);box-shadow:0 .35rem 1rem var(--shade-24)}.app-shell--command-deck .app-header .brand{letter-spacing:.07em}.app-shell--command-deck .app-header__details-summary{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ui-border) 45%,transparent)}.app-shell--command-deck .app-header__details{grid-column:1 / -1;width:100%}.app-shell--command-deck .app-main{padding-inline:clamp(.65rem,3vw,1rem)}.app-shell--command-deck .game-page{gap:.65rem}}.game-section,.game-panel{background:var(--strategy-panel-fill);box-shadow:var(--strategy-frame);border-radius:.5rem}.game-section-header__icon{width:2.5rem;height:2.5rem}.game-section-header .game-label{font-size:var(--text-ms);padding:.2rem .8rem;border-radius:1rem;background:color-mix(in srgb,var(--ui-canvas) 40%,transparent)}.building-interior__actions .game-action-secondary{min-width:12rem;padding:.7rem 1rem;font-size:1rem;box-shadow:var(--strategy-frame);background:linear-gradient(var(--ui-surface-raised),var(--ui-accent-soft))}.primary-button,.interior-action{background:linear-gradient(var(--strategy-action-top),var(--strategy-action-bottom));color:var(--strategy-action-ink);border:1px solid var(--action-edge);box-shadow:inset 0 0 0 1px var(--action-glint),0 2px 3px var(--shade-20);border-radius:.4rem;text-decoration:none}.primary-button:hover:not(:disabled),.interior-action:hover:not(:disabled){background:linear-gradient(var(--action-hover-from),var(--action-hover-to));color:var(--strategy-action-ink)}.primary-button:disabled,.interior-action:disabled{opacity:1;background:linear-gradient(color-mix(in srgb,var(--ui-accent-soft) 45%,var(--ui-surface)),var(--ui-surface));border-color:var(--ui-border);color:var(--ui-muted);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ui-border) 20%,transparent);cursor:not-allowed}.build-queue__portrait{grid-column:1;grid-row:1 / 3;width:4.5rem;height:4.5rem;object-fit:contain}@media(max-width:24rem){.building-interior__portrait{width:min(3rem,48px);height:min(3rem,48px)}}@container construction-queue (max-width: 38rem){.build-queue__portrait{width:3.5rem;height:3.5rem;grid-row:1 / 3}}.game-page.residents-page{max-width:100rem}.residents-page .game-stat-grid,.building-page__effects-layout.is-farm .village-supply-panel .game-stat-grid{grid-template-columns:minmax(0,1fr);gap:.75rem}.residents-page .game-stat-item,.building-page__effects-layout.is-farm .village-supply-panel .game-stat-item{display:flex;align-items:center;justify-content:space-between;gap:1rem}.residents-page .game-stat-item :is(dt,dd),.building-page__effects-layout.is-farm .village-supply-panel .game-stat-item :is(dt,dd){font-size:1rem;margin:0}.game-page-header--illustrated{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) auto;min-height:10rem;padding:var(--space-4);border:1px solid var(--ui-border);border-radius:.5rem;background:var(--strategy-panel-fill);box-shadow:var(--strategy-frame)}.game-page-header--portrait{grid-template-columns:8rem minmax(0,1fr) auto}.game-page-header--illustrated:before{content:"";position:absolute;z-index:-1;top:0;right:0;bottom:0;left:0;background:var(--game-header-art, none) right center / cover no-repeat;opacity:.8;-webkit-mask-image:linear-gradient(to right,transparent 20%,#000 85%);mask-image:linear-gradient(to right,transparent 20%,#000 85%);pointer-events:none}.game-page-header__breadcrumbs{grid-column:1 / -1}.game-page-header__breadcrumbs .game-breadcrumbs{margin:0;padding:0}.game-page-header__portrait{width:8rem;height:8rem;object-fit:contain}.game-page-header__copy{min-width:0}.game-page-header--illustrated h1{font-size:clamp(2rem,3vw,2.8rem)}.game-page-header--illustrated .game-page-header__description{font-size:1rem;max-width:65ch}.game-page-header--illustrated .game-page-header__actions{justify-content:end}.building-page__scene{display:block;width:100%;max-height:22rem;object-fit:cover;object-position:right center;border:1px solid var(--ui-border);border-radius:.5rem}.research-tree--illustrated .research-tree__tab{min-height:4.25rem;padding:.5rem 1rem;font:700 1.15rem/1.2 var(--font-display)}.research-tree__group-heading:not(.sr-only){margin:0;padding:.25rem .75rem;font:700 1.125rem/1.3 var(--font-display);color:var(--ui-text)}.notification-preferences__icon{width:3.25rem;height:3.25rem;object-fit:contain}.notification-preferences__toggle{min-width:10rem}.map-page .game-page-header--illustrated{min-height:3.5rem;padding:.5rem 1rem}@media(max-width:63.999rem){.game-page-header--portrait{grid-template-columns:6rem minmax(0,1fr)}.game-page-header__portrait{width:6rem;height:6rem}.game-page-header--illustrated .game-page-header__actions{grid-column:1/-1;justify-content:start}}@media(max-width:45rem){.game-page-header--illustrated{min-height:0;grid-template-columns:minmax(0,1fr);padding:.75rem}.game-page-header--portrait{grid-template-columns:4.5rem minmax(0,1fr)}.game-page-header__portrait{width:4.5rem;height:4.5rem}.game-page-header--illustrated h1{font-size:1.8rem}.game-page-header--illustrated .game-page-header__description{font-size:var(--text-ms)}.research-tree--illustrated .research-tree__tab{font-size:var(--text-ms);padding:.5rem}}@media(min-width:64rem){.app-shell--game{grid-template-columns:clamp(16rem,18vw,17.5rem) minmax(0,1fr);grid-template-rows:4.7rem 5.75rem minmax(0,1fr)!important}.app-shell--game>.game-sidebar{display:flex;grid-column:1;grid-row:1 / -1;position:relative;z-index:12}.app-shell--game>.app-header{grid-column:2;grid-row:1;position:relative;z-index:10}.app-shell--game>.main-nav--desktop{display:none}.app-shell--game>.app-main{grid-column:2;grid-row:3;width:100%;max-width:none}}.app-shell--command-deck .app-header{min-height:4.25rem}.app-shell--command-deck .village-map-scene{display:none}.app-shell--command-deck.app-shell--interface-v2 .village-map-scene{display:grid}.app-shell--command-deck.app-shell--interface-v2 .village-overview{grid-template-columns:minmax(0,1fr)}.app-shell--command-deck .village-overview{grid-template-columns:minmax(0,1fr) minmax(19rem,23rem);align-items:start;gap:1rem}@media(max-width:80rem){.app-shell--command-deck .village-overview{grid-template-columns:minmax(0,1fr)}}html[data-theme=day] .app-shell--command-deck{--ui-canvas: #e7ece8;--ui-surface: #f4f7f1;--ui-surface-raised: #ffffff;--ui-surface-muted: #dbe6df;--ui-text: #182a29;--ui-muted: #526965;--ui-border: #a5bdb3;--ui-control-border: #718e82;--ui-accent: #a56e2c;--ui-accent-contrast: #fff9ed;--ui-accent-soft: #d7c19e;--ui-success: #236447;--ui-danger: #9a4939;--ui-focus: #8a5b22;--ui-control: #ffffff;--strategy-panel-fill: linear-gradient(145deg, #fbfcf8, #eef4ef 72%);--strategy-frame: inset 0 0 0 1px rgb(54 89 76 / 12%), 0 .55rem 1.5rem rgb(38 64 55 / 12%);--scene-overlay-strong: 25%;--scene-overlay-soft: 18%;color-scheme:light}html[data-theme=autumn] .app-shell--command-deck{--ui-canvas: #211817;--ui-surface: #33221f;--ui-surface-raised: #49302a;--ui-surface-muted: #291c1b;--ui-text: #fff0dc;--ui-muted: #d8bba4;--ui-border: #765046;--ui-control-border: #a06f51;--ui-accent: #e6a35f;--ui-accent-contrast: #2a1b16;--ui-accent-soft: #654332;--ui-success: #9dc08f;--ui-danger: #f2a18c;--ui-focus: #ffd19a;--ui-control: #281b1a;--strategy-panel-fill: linear-gradient(145deg, #412b26, #2b1d1c 72%);--strategy-frame: inset 0 0 0 1px rgb(239 181 127 / 14%), 0 .55rem 1.5rem rgb(0 0 0 / 30%);--scene-overlay-strong: 60%;--scene-overlay-soft: 50%;color-scheme:dark}html[data-theme=winter] .app-shell--command-deck{--ui-canvas: #111b27;--ui-surface: #18293a;--ui-surface-raised: #223a4e;--ui-surface-muted: #122230;--ui-text: #eaf5ff;--ui-muted: #a8c0d4;--ui-border: #426581;--ui-control-border: #6489a4;--ui-accent: #d6b66f;--ui-accent-contrast: #172333;--ui-accent-soft: #3a5164;--ui-success: #91d3bd;--ui-danger: #f1a4a4;--ui-focus: #f8d994;--ui-control: #142434;--strategy-panel-fill: linear-gradient(145deg, #20374a, #172a3b 72%);--strategy-frame: inset 0 0 0 1px rgb(162 204 230 / 14%), 0 .55rem 1.5rem rgb(0 0 0 / 30%);--scene-overlay-strong: 60%;--scene-overlay-soft: 50%;color-scheme:dark}html[data-theme=night] .app-shell--command-deck{--scene-overlay-strong: 60%;--scene-overlay-soft: 50%;color-scheme:dark}html[data-theme-mode=light] .app-shell--command-deck{--ui-canvas: #e7ece8;--ui-surface: #f4f7f1;--ui-surface-raised: #ffffff;--ui-surface-muted: #dbe6df;--ui-text: #182a29;--ui-muted: #526965;--ui-border: #a5bdb3;--ui-control-border: #718e82;--ui-accent-contrast: #fff9ed;--ui-control: #ffffff;--scene-overlay-strong: 25%;--scene-overlay-soft: 18%;color-scheme:light}html[data-theme=day][data-theme-mode=dark] .app-shell--command-deck{--ui-canvas: #151c1b;--ui-surface: #1d2d2c;--ui-surface-raised: #29403d;--ui-surface-muted: #172725;--ui-text: #f1f4ec;--ui-muted: #b8c7bf;--ui-border: #42625d;--ui-control-border: #6d8d80;--ui-accent: #e2bb78;--ui-accent-contrast: #24190d;--ui-accent-soft: #594329;--ui-success: #a6d1ac;--ui-danger: #ffb09b;--ui-focus: #ffda96;--ui-control: #181f1d;--strategy-panel-fill: linear-gradient(145deg, #1d3235, #142528 72%);--strategy-frame: inset 0 0 0 1px rgb(118 163 145 / 13%), 0 .5rem 1.5rem rgb(0 0 0 / 24%);--scene-overlay-strong: 60%;--scene-overlay-soft: 50%;color-scheme:dark}html[data-theme-mode=dark] .app-shell--command-deck{--strategy-panel-fill: linear-gradient(145deg, #1d3235, #142528 72%);--strategy-frame: inset 0 0 0 1px rgb(118 163 145 / 13%), 0 .5rem 1.5rem rgb(0 0 0 / 24%);--scene-overlay-strong: 60%;--scene-overlay-soft: 50%;color-scheme:dark}html[data-theme=autumn][data-theme-mode=dark] .app-shell--command-deck{--strategy-panel-fill: linear-gradient(145deg, #412b26, #2b1d1c 72%);--strategy-frame: inset 0 0 0 1px rgb(239 181 127 / 14%), 0 .55rem 1.5rem rgb(0 0 0 / 30%)}html[data-theme=winter][data-theme-mode=dark] .app-shell--command-deck{--strategy-panel-fill: linear-gradient(145deg, #20374a, #172a3b 72%);--strategy-frame: inset 0 0 0 1px rgb(162 204 230 / 14%), 0 .55rem 1.5rem rgb(0 0 0 / 30%)}.app-shell--command-deck .game-page-header--illustrated{background:color-mix(in srgb,var(--ui-surface) 84%,transparent);color:var(--ui-text)}.app-shell--command-deck .game-page-header--illustrated:before{opacity:.48}.app-shell--command-deck .game-page-header--illustrated h1{color:var(--ui-text);text-shadow:0 1px 1px color-mix(in srgb,var(--ui-canvas) 28%,transparent)}.app-shell--command-deck .game-page-header--illustrated .game-page-header__description{color:var(--ui-muted)}html[data-theme-mode=light] .app-shell--command-deck .game-page-header--illustrated{background:color-mix(in srgb,var(--ui-surface) 91%,transparent)}html[data-theme-mode=light] .app-shell--command-deck .game-page-header--illustrated:before{opacity:.2}.app-shell--command-deck .building-interior__header{background:color-mix(in srgb,var(--ui-surface) 84%,transparent);color:var(--ui-text)}html[data-background=scenery] .app-shell--command-deck{background-image:linear-gradient(90deg,color-mix(in srgb,var(--ui-canvas) var(--scene-overlay-strong, 60%),transparent),color-mix(in srgb,var(--ui-canvas) var(--scene-overlay-soft, 50%),transparent)),url(/assets/ui/strategy/settlement-panorama.webp?v=20261016-lossy);background-position:center;background-size:cover;background-attachment:fixed}html[data-background=none] .app-shell--command-deck{background-image:none}html[data-background-intensity=soft] .app-shell--command-deck{background-blend-mode:normal}html[data-background-intensity=subtle] .app-shell--command-deck{background-blend-mode:luminosity}.app-shell--command-deck .app-main{background:transparent}.settings-page .notification-preferences__intro{margin:0;color:var(--ui-muted)}.palette-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.settings-form--compact button{grid-column:1 / -1;justify-self:start}.settings-page .notification-preferences__status{display:grid;gap:.3rem;border-left:.25rem solid var(--ui-success);border-radius:var(--ui-radius-sm);background:var(--ui-surface-muted);color:var(--ui-muted);padding:.7rem .85rem}.settings-page .notification-preferences__status--error{border-color:var(--ui-danger)}@media(min-width:64rem){.app-shell--command-deck.app-shell--game{grid-template-columns:15.5rem minmax(0,1fr);grid-template-rows:3.5rem 4.15rem minmax(0,1fr)!important}.app-shell--command-deck>.game-sidebar{min-height:0;padding:1rem .7rem .8rem;background:var(--ui-surface-muted)}.app-shell--command-deck>.game-sidebar .game-sidebar__brand{padding-bottom:.85rem}.app-shell--command-deck>.game-sidebar .game-sidebar__footer a,.app-shell--command-deck>.game-sidebar .game-sidebar__footer button{min-height:2.2rem;padding-block:.36rem}.app-shell--command-deck>.app-header{display:flex;min-height:0;padding:0 1.35rem}.app-shell--command-deck>.app-header .app-header__breadcrumb{min-width:0}.app-shell--command-deck>.app-header .app-header__profile-link{display:flex;align-items:center;gap:.65rem;min-width:0;padding:.25rem .45rem;border-radius:.55rem;color:inherit;text-decoration:none;transition:background var(--motion-fast) var(--motion-ease)}.app-shell--command-deck>.app-header .app-header__profile-link:hover,.app-shell--command-deck>.app-header .app-header__profile-link:focus-visible{background:color-mix(in srgb,var(--ui-accent-soft) 45%,transparent)}.app-shell--command-deck .app-main{padding:1.05rem clamp(1.1rem,2.2vw,2.4rem) 2rem}.app-shell--command-deck .game-page-header--illustrated{min-height:5.8rem;grid-template-columns:minmax(0,1fr) auto;gap:.75rem;padding:.9rem 1rem}.app-shell--command-deck .game-page-header--illustrated.game-page-header--portrait{grid-template-columns:3.6rem minmax(0,1fr) auto}.app-shell--command-deck .game-page-header--illustrated:before{opacity:.35}.app-shell--command-deck .game-page-header--portrait .game-page-header__portrait{width:3.6rem;height:3.6rem}.app-shell--command-deck .game-page-header--illustrated h1{font-size:clamp(1.45rem,2vw,1.9rem)}.app-shell--command-deck .game-page-header--illustrated .game-page-header__description,.app-shell--command-deck .game-page-header__breadcrumbs{display:none}.app-shell--command-deck .village-issues{margin-top:.75rem;margin-bottom:.75rem}.app-shell--command-deck .village-issues--quiet{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;min-height:3.1rem;padding:.55rem .8rem}.app-shell--command-deck .village-issues--quiet .village-issues__heading-row{display:contents}.app-shell--command-deck .village-issues--quiet h2{font-size:var(--text-md);white-space:nowrap}.app-shell--command-deck .village-issues--quiet .village-issues__empty{margin:0;font-size:var(--text-xs)}.app-shell--command-deck .village-issues--quiet .village-calendar{margin-top:0;border-top:0}.app-shell--command-deck .village-issues--quiet .village-calendar__summary{padding:.4rem 0;border:0;white-space:nowrap}}@media(max-width:63.999rem){.app-shell--command-deck .app-main{padding-top:.8rem;padding-bottom:calc(6.5rem + env(safe-area-inset-bottom))}.app-shell--command-deck .game-page-header--illustrated{min-height:5.5rem;padding:.8rem}.app-shell--command-deck .game-page-header--illustrated .game-page-header__description,.app-shell--command-deck .game-page-header__breadcrumbs{display:none}.app-shell--command-deck .village-issues{margin-top:.65rem;margin-bottom:.65rem}.app-shell--command-deck .village-issues--quiet{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.25rem .75rem;padding:.65rem .75rem}.app-shell--command-deck .village-issues--quiet .village-issues__heading-row{display:contents}.app-shell--command-deck .village-issues--quiet .village-issues__empty{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.app-shell--command-deck .village-issues--quiet .village-calendar{grid-column:1 / -1;margin-top:.15rem}.app-shell--command-deck .village-issues--quiet .village-issues__empty{margin-top:.25rem;font-size:var(--text-xs)}}@media(prefers-reduced-motion:reduce){.app-shell--command-deck>.app-header .app-header__profile-link{transition:none}}.app-header__brand-cluster{display:flex;align-items:center;gap:.55rem;min-width:0}.app-header__population{display:inline-flex;align-items:center;gap:.4rem;min-width:max-content;color:var(--ui-text)}.app-header__population-icon{color:var(--ui-accent);font-size:1rem}.app-header__population span:last-child{display:grid;gap:.08rem}.app-header__population small{color:var(--ui-muted);font-size:var(--text-2xs)}.app-header__population strong{font-size:var(--text-xs);font-variant-numeric:tabular-nums}.app-header .quick-navigation-trigger{position:static;display:grid;width:2.35rem;height:2.35rem;min-height:2.35rem;margin:0;place-items:center;padding:0;border-radius:.6rem;box-shadow:none}.app-header .quick-navigation-trigger span:nth-child(2),.app-header .quick-navigation-trigger kbd{display:none}.app-header .quick-navigation-trigger span:first-child{font-size:var(--text-lg)}@media(max-width:63.999rem){.app-header .navigation-trigger--header{display:grid;width:2.35rem;height:2.35rem;min-height:2.35rem;place-items:center;padding:0;border-radius:.6rem;font-size:var(--text-lg);line-height:1}}@media(min-width:64rem){.app-shell--command-deck.app-shell--game{grid-template-rows:4.25rem minmax(0,1fr)!important}.app-shell--command-deck>.app-header{grid-row:1;gap:.75rem;padding-inline:1.35rem}.app-shell--command-deck>.app-main{grid-row:2;padding-top:1.05rem}.app-shell--command-deck .app-header__compact-resources.resource-bar--compact{display:flex!important;flex:1 1 auto;flex-wrap:nowrap;gap:.35rem;min-width:12rem;max-width:48rem}.app-shell--command-deck .app-header__compact-resources .resource-bar__item{min-height:2.35rem;padding:.3rem .45rem}.app-shell--command-deck .app-header__population{padding-left:.65rem;border-left:1px solid color-mix(in srgb,var(--ui-border) 72%,transparent)}.app-shell--command-deck .app-header__details,.app-shell--command-deck .app-header__command-context,.app-shell--command-deck .app-header__brand-cluster .brand{display:none}}@media(max-width:63.999rem){.app-shell--command-deck .app-header{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto}.app-shell--command-deck .app-header__command-context{display:none}.app-shell--command-deck .app-header__brand-cluster{grid-column:1;min-width:max-content}.app-shell--command-deck .app-header__brand-cluster .brand{flex:0 0 auto;white-space:nowrap}.app-shell--command-deck .app-header__brand-cluster .brand__name{overflow-wrap:normal;white-space:nowrap}.app-shell--command-deck .app-header__compact-resources.resource-bar--compact{display:grid;grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr));gap:.25rem;width:100%;overflow:visible}.app-shell--command-deck .app-header__compact-resources .resource-bar__item,.app-shell--command-deck .app-header__compact-resources .resource-bar__item--grain{min-width:0;padding-inline:.25rem}.app-shell--command-deck .app-header__compact-resources .resource-bar__amount{font-size:clamp(.75rem,2.5vw,.875rem);letter-spacing:-.02em;overflow-wrap:anywhere;white-space:normal}.app-shell--command-deck .app-header__compact-resources.resource-bar--compact .resource-bar__rate{font-size:clamp(.75rem,2.2vw,.82rem);letter-spacing:-.01em;overflow-wrap:anywhere;overflow:visible;padding-left:1.15rem;white-space:normal}.app-shell--command-deck .app-header__compact-resources .resource-bar__grain-breakdown{position:static;width:auto;max-width:none;margin-top:.2rem;overflow-wrap:anywhere}.app-shell--command-deck .app-header__details{grid-column:1 / -1}.app-shell--command-deck .app-header__population{grid-column:1 / -1;justify-self:end;padding-top:.15rem}}@media(min-width:26rem)and (max-width:63.999rem){.app-shell--command-deck .app-header__compact-resources.resource-bar--compact{grid-template-columns:repeat(4,minmax(0,1fr))}}.app-shell--command-deck .game-sidebar>.village-issues-launcher{display:flex;align-items:center;justify-content:space-between;gap:.6rem;width:100%;min-height:2.25rem;margin:0 0 .8rem;padding:.42rem .6rem;border:1px solid color-mix(in srgb,var(--ui-accent) 52%,var(--ui-border));border-radius:999px;background:color-mix(in srgb,var(--ui-accent-soft) 55%,var(--ui-surface));color:var(--ui-text);font:650 .76rem/1 var(--font-ui);cursor:pointer}.app-shell--command-deck .game-sidebar>.village-issues-launcher:hover,.app-shell--command-deck .game-sidebar>.village-issues-launcher:focus-visible{border-color:var(--ui-accent);outline:2px solid var(--ui-focus);outline-offset:2px}.village-issues-launcher strong{display:grid;min-width:1.35rem;min-height:1.35rem;place-items:center;border-radius:999px;background:var(--ui-accent);color:var(--ui-accent-contrast);font-size:var(--text-2xs);font-variant-numeric:tabular-nums}.village-issues-priority{display:flex;flex-wrap:wrap;gap:.3rem;margin:-.28rem 0 .75rem}.village-issues-priority__item{display:inline-flex;align-items:center;min-height:1.8rem;gap:.28rem;padding:.28rem .45rem;border:1px solid var(--ui-border);border-radius:999px;background:color-mix(in srgb,var(--ui-surface-raised) 78%,transparent);color:var(--ui-text);font:700 var(--text-2xs)/1 var(--font-ui);text-decoration:none;cursor:pointer}.village-issues-priority__item strong{min-width:1rem;color:var(--ui-accent);font-size:var(--text-2xs);font-variant-numeric:tabular-nums;text-align:center}.village-issues-priority__item--battle{border-color:color-mix(in srgb,var(--alert-battle-edge) 68%,var(--ui-border));background:color-mix(in srgb,var(--alert-battle-fill) 32%,var(--ui-surface-raised));color:var(--alert-battle-ink)}.village-issues-priority__item--battle strong,.village-issues-priority__item--incoming strong{color:var(--alert-strong)}.village-issues-priority__item--incoming{border-color:color-mix(in srgb,var(--alert-incoming-edge) 62%,var(--ui-border));color:var(--alert-incoming-ink)}.village-issues-priority__item:hover,.village-issues-priority__item:focus-visible{border-color:var(--ui-accent);outline:2px solid var(--ui-focus);outline-offset:1px}@media(min-width:64rem){.app-shell--command-deck>.game-sidebar .game-sidebar__brand{padding-bottom:.7rem}.app-shell--command-deck .app-header__compact-resources.resource-bar--compact{flex:0 1 42rem;width:min(42rem,100%);max-width:42rem;justify-content:flex-start}.app-shell--command-deck .app-header__compact-resources .resource-bar__item{flex:0 1 9.5rem;width:9.5rem;min-width:7.5rem;max-width:10.5rem}}@media(min-width:80rem){.app-shell--command-deck .village-overview{gap:1rem}}.village-issues-dialog{width:min(54rem,calc(100vw - 2rem));max-width:none;max-height:min(86dvh,48rem);padding:0;overflow:hidden;border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:var(--ui-surface);color:var(--ui-text);box-shadow:var(--ui-shadow-md)}.village-issues-dialog::backdrop{background:var(--backdrop-strong)}.village-issues-dialog__header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;border-bottom:1px solid var(--ui-border);color:var(--ui-accent);font:700 var(--text-2xs)/1 var(--font-ui);letter-spacing:.08em;text-transform:uppercase}.village-issues-dialog__header button{display:grid;width:2rem;height:2rem;place-items:center;border:1px solid var(--ui-border);border-radius:50%;background:transparent;color:var(--ui-text);font-size:var(--text-xl);cursor:pointer}.village-issues-dialog__header button:hover,.village-issues-dialog__header button:focus-visible{border-color:var(--ui-accent);outline:2px solid var(--ui-focus);outline-offset:2px}.village-issues-dialog>.village-issues{width:auto;max-height:calc(min(86dvh,48rem) - 3.5rem);margin:0;overflow:auto;border:0;border-radius:0;background:transparent}html[data-interface=v2] .village-issues-dialog{border-color:var(--v2-border);border-radius:var(--ui-radius-lg);background:var(--v2-surface-raised);color:var(--v2-ink)}html[data-interface=v2] .village-issues-dialog::backdrop{background:var(--backdrop-soft);-webkit-backdrop-filter:none;backdrop-filter:none}html[data-interface=v2] .village-issues-dialog__header{position:absolute;z-index:1;top:.6rem;right:1.25rem;padding:0;border-bottom:0}html[data-interface=v2] .village-issues-dialog__header>span{display:none}html[data-interface=v2] .village-issues-dialog__header button{border-color:var(--v2-border);background:var(--v2-surface);color:var(--v2-ink)}html[data-interface=v2] .village-issues-dialog__header button:hover,html[data-interface=v2] .village-issues-dialog__header button:focus-visible{border-color:var(--v2-accent);outline-color:var(--v2-accent)}html[data-interface=v2] .village-issues-dialog>.village-issues{max-height:min(86dvh,48rem);padding-block:.8rem 1rem}html[data-interface=v2] .village-issues-dialog :is(.village-issues__heading-row,.village-event-hub__heading-row){padding-right:2.75rem}@media(max-width:63.999rem){html[data-interface=v2] .village-issues-dialog>.village-issues{max-height:calc(100dvh - 1rem)}}.village-event-hub__categories{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem;margin-top:.65rem;padding-top:.6rem;border-top:1px solid color-mix(in srgb,var(--ui-border) 55%,transparent)}.village-event-hub__categories-label{margin-right:.15rem;color:var(--ui-muted);font-size:var(--text-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase}@media(max-width:63.999rem){.village-issues-dialog{width:calc(100vw - 1rem);max-height:calc(100dvh - 1rem)}.village-issues-dialog>.village-issues{max-height:calc(100dvh - 4.5rem)}}.app-shell--command-deck{--theme-paper: var(--ui-surface);--theme-paper-raised: var(--ui-surface-raised);--theme-paper-muted: var(--ui-surface-muted);--theme-ink: var(--ui-text);--theme-ink-muted: var(--ui-muted);--theme-rule: var(--ui-border);--theme-action: var(--ui-accent);--theme-danger: var(--ui-danger);--theme-paper-texture: none}.app-shell--command-deck .resource-bar__item--unavailable .resource-bar__rate{color:var(--ui-muted);font-size:clamp(var(--text-2xs),2vw,.78rem)}.village-queues{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);min-width:0}.village-queues__item{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label action" "title action" "meta action";align-items:center;column-gap:var(--space-3);row-gap:.1rem;min-width:0;padding:.55rem .75rem;border:1px solid var(--ui-border);border-left:.25rem solid color-mix(in srgb,var(--ui-border) 80%,transparent);border-radius:var(--ui-radius-sm);background:color-mix(in srgb,var(--ui-surface-raised) 72%,transparent);color:var(--ui-text)}.village-queues__item.is-active{border-left-color:var(--ui-accent)}.village-queues__label{grid-area:label;color:var(--ui-muted);font-size:var(--text-2xs);font-weight:750;letter-spacing:.04em;text-transform:uppercase}.village-queues__title{grid-area:title;min-width:0;font-size:.9rem;font-weight:700;line-height:1.25;overflow-wrap:anywhere}.village-queues__title small{margin-left:.25rem;color:var(--ui-muted);font-size:var(--text-xs)}.village-queues__title--free{color:var(--ui-muted);font-weight:650}.village-queues__meta{grid-area:meta;min-width:0;color:var(--ui-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.village-queues__list{display:grid;grid-area:title / title / meta / title;gap:.1rem;min-width:0;margin:0;padding:0;list-style:none}.village-queues__list li{display:grid;min-width:0}.village-queues__action{grid-area:action;justify-self:end}.village-queues__action.secondary-button{min-height:2.25rem;padding-inline:.75rem;font-size:var(--text-xs);white-space:nowrap}@media(max-width:45rem){.village-queues{grid-template-columns:minmax(0,1fr)}}html[data-theme=day] .app-shell--command-deck{--ui-text: #132623;--ui-muted: #304a44;--ui-nav-text: #29453e;--ui-nav-active: #132623}html[data-theme=day] .app-shell--command-deck .game-sidebar__footer a,html[data-theme=day] .app-shell--command-deck .game-sidebar__footer button{font-weight:650}html[data-theme=day] .app-shell--command-deck .app-header__population small{color:var(--ui-muted);font-size:var(--text-xs);font-weight:700}html[data-theme=day] .app-shell--command-deck .app-header__population strong,html[data-theme=day] .app-shell--command-deck .app-header .resource-bar__amount{font-weight:750}html[data-theme=day] .app-shell--command-deck .app-header .resource-bar__rate{color:var(--ui-success);font-weight:650}.development-page{--development-paper: var(--theme-paper);--development-ink: var(--theme-ink);--development-rule: var(--theme-rule);--interior-paper: var(--theme-paper);--interior-ink: var(--theme-ink);--interior-muted: var(--theme-ink-muted);--interior-rule: var(--theme-rule);--interior-bronze: var(--theme-action);--interior-bronze-ink: var(--theme-action-ink);--interior-rule-dark: var(--theme-rule-strong);display:grid;gap:.85rem;min-width:0;color:var(--development-ink)}.development-page__ledger p,.development-page__notice p{margin:0}.development-page h2{font-family:var(--font-display)}.development-page__status,.development-page__error,.development-page__notice,.development-page__ledger{margin:0;border:1px solid var(--development-rule);background:var(--strategy-panel-fill);padding:clamp(.7rem,1.5vw,.95rem)}.development-page>.game-section{display:grid;gap:.7rem}.development-page__error{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;border-color:var(--theme-danger);color:var(--theme-danger)}.development-page__notice,.development-page__ledger{display:grid;gap:.7rem}.development-page__notice h2{margin:0}.development-page__table-wrap{min-width:0;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;border:1px solid color-mix(in srgb,var(--development-rule) 38%,transparent)}.development-page table{min-width:33rem;width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}.development-page th,.development-page td{padding:.48rem .6rem;border-bottom:1px solid color-mix(in srgb,var(--development-rule) 34%,transparent);text-align:left}.development-page th{color:var(--ui-table-header-text);background:var(--strategy-table-header);font-size:var(--text-sm);letter-spacing:.06em;text-transform:uppercase}.development-page td:nth-child(1),.development-page td:nth-child(3),.development-page td:nth-child(4){font-weight:700}.development-page td a{color:var(--theme-action);font-weight:750}.development-page__empty{color:var(--theme-ink-muted)}.development-page__search-control input:focus-visible,.development-page__search-control button:focus-visible,.development-page__table-wrap:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.building-recruitment__group+.building-recruitment__group{margin-top:1rem}.movement-order-steps__item{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:.5rem;align-items:center;min-width:0;padding:.75rem;border:1px solid var(--ui-border);border-radius:var(--ui-radius-md);background:color-mix(in srgb,var(--ui-surface) 34%,transparent);color:var(--ui-muted)}.movement-unit{display:grid;grid-template-columns:minmax(0,1fr);gap:.5rem;align-items:center;align-content:start;justify-items:center;min-width:0;padding:.75rem;border:1px solid var(--ui-control-border);border-radius:var(--ui-radius-md);background:color-mix(in srgb,var(--ui-surface) 34%,transparent);text-align:center}.movement-unit .unit-art{width:var(--unit-art-card-width);height:var(--unit-art-card-height)}.movement-unit__identity{display:grid;min-width:0;gap:.2rem}.movement-unit__quantity{display:flex;gap:.4rem;align-items:center;min-width:0;width:100%;max-width:10rem}.movement-orders-page__confirmation>.movement-orders-page__section-heading,.movement-orders-page__confirmation>.movement-orders-page__decision{grid-column:1 / -1}.movement-orders-page__confirmation>.requirement-message,.movement-orders-page__confirmation>.status-message,.movement-orders-page__confirmation>.active-order,.movement-orders-page__forecast-status,.movement-orders-page__forecast-empty{grid-column:2}.movement-orders-page__confirmation .active-order{background:transparent;border:0;padding:var(--space-2) 0}.movement-orders-page__selected-force{min-width:0}.movement-orders-page__selected-force .eyebrow{margin-top:0;color:var(--ui-muted)}.movement-orders-page__actions>*{min-width:min(100%,12rem)}@media(max-width:45rem){.movement-orders-page__actions>*{width:100%}}@media(max-width:60rem){.movement-orders-page .movement-orders-page__confirmation>*{grid-column:1}}.market-page .building-interior__header{border-color:var(--ui-border);background:color-mix(in srgb,var(--ui-surface) 30%,transparent);color:var(--ui-text)}.residents-page .game-page-header__description{max-width:38rem;font-size:1.0625rem}.alliance-page .game-page-header--portrait{grid-template-columns:5.5rem minmax(0,1fr) auto;min-height:9.5rem;padding:1rem 1.3rem;gap:.5rem 1rem}.alliance-page .game-page-header__description{max-width:45rem}.alliance-page .page-intro>*{margin:0}.alliance-page__state--error strong,.alliance-page__state--error .text-button{color:var(--ui-danger)}.alliance-panel{margin:0;display:grid;align-content:start;gap:.7rem;min-width:0;padding:clamp(1rem,1.75vw,1.3rem)}.alliance-panel__heading{display:flex;align-items:start;gap:.75rem;justify-content:space-between}.alliance-panel__heading h2,.alliance-panel__heading .eyebrow,.alliance-panel>h2,.alliance-panel>.eyebrow,.alliance-panel__description,.alliance-create__intro{margin:0}.alliance-panel__heading .eyebrow,.alliance-panel>.eyebrow{margin-bottom:.2rem}.member-list,.invitations>ol,.audit-log>ol{display:grid;gap:0;list-style:none;margin:0;padding:0}.member-list li,.invitations li{display:grid;align-items:center;gap:.4rem .65rem;grid-template-columns:minmax(0,1fr) minmax(10rem,auto);border-top:1px solid color-mix(in srgb,var(--ui-border) 72%,transparent);padding:.5rem 0}.member-list__role{display:flex;flex-wrap:wrap;align-items:center;justify-content:end;gap:.35rem .5rem;min-width:0}.member-role-badge.is-founder,.member-role-badge.is-officer{color:var(--ui-accent)}.alliance-panel .member-menu-toggle{width:auto;min-height:2.6rem;padding:.35rem .7rem}.member-menu .member-remove{color:var(--ui-danger)}.audit-log summary{cursor:pointer;padding:.65rem 0;font-weight:700}.member-list span,.invitations span,.audit-log{color:var(--ui-muted);font-size:var(--text-ms)}.audit-log{display:grid;gap:.4rem;border-top:1px solid var(--ui-border);padding-top:.65rem}.audit-log h3{margin:0;color:var(--ui-text);font-size:var(--text-md)}.audit-log li{display:grid;gap:.35rem;padding:.18rem 0}.audit-log li .text-button{justify-self:start}.invitations{gap:.75rem}.invitations li{grid-template-columns:minmax(0,1fr) auto}.invitations li span,.invitations li div{grid-column:1 / -1}.invitations li div{display:flex;flex-wrap:wrap;gap:.5rem}@media(max-width:48rem){.alliance-page .game-page-header--portrait{grid-template-columns:3.5rem minmax(0,1fr);padding:.8rem;min-height:8rem}}@media(max-width:30rem){.member-list li,.invitations li{grid-template-columns:minmax(0,1fr)}.member-list li>*,.member-list__role{grid-column:1;justify-content:start}}.reports-workspace>.report-detail-panel.panel-leave-active{position:absolute;inset:0 0 auto;z-index:1}.report-filter{display:grid;gap:.25rem}.report-card[aria-current=true]{color:var(--ui-accent);box-shadow:inset 0 -1px var(--ui-accent)}@media(min-width:48.001rem){.report-detail-toolbar .secondary-button{flex:0 0 auto;width:auto;margin-top:0}}.report-losses-table-wrap:focus-visible{border-color:var(--ui-accent);outline:2px solid color-mix(in srgb,var(--ui-accent) 48%,transparent);outline-offset:2px}.report-losses-table{width:100%;min-width:18rem;overflow-wrap:normal;border-collapse:collapse;color:var(--ui-text);font-size:var(--text-ms);font-variant-numeric:tabular-nums}.report-state--error strong,.report-state--error .text-button{color:var(--ui-danger)}.forge-page__tab[aria-selected=true]{border-color:var(--ui-accent);background:color-mix(in srgb,var(--ui-accent) 15%,var(--ui-surface))}.research-tree-page h1{font:700 clamp(1.55rem,4vw,2.25rem)/1.1 Georgia,"Times New Roman",serif}@media(max-width:30rem){.market-exchange__action,.market-exchange__pending button{width:100%}}@media(min-width:64rem){.app-shell--command-deck .app-main{padding-inline:0}.app-shell--command-deck .game-page{width:min(100%,var(--game-page-max, 100rem));max-width:var(--game-page-max, 100rem);margin-inline:auto}.app-shell--command-deck>.game-sidebar{background:linear-gradient(180deg,color-mix(in srgb,var(--ui-surface-raised) 24%,transparent),transparent 34%),color-mix(in srgb,var(--ui-surface-muted) 82%,transparent);border-right-color:color-mix(in srgb,var(--ui-accent) 34%,var(--ui-border));box-shadow:inset -1px 0 color-mix(in srgb,var(--ui-text) 5%,transparent)}.app-shell--command-deck>.game-sidebar .game-sidebar__footer a,.app-shell--command-deck>.game-sidebar .game-sidebar__footer button{border-color:transparent;transition:background var(--motion-fast) var(--motion-ease),border-color var(--motion-fast) var(--motion-ease),color var(--motion-fast) var(--motion-ease),transform var(--motion-fast) var(--motion-ease)}.app-shell--command-deck>.game-sidebar .game-sidebar__footer a:hover,.app-shell--command-deck>.game-sidebar .game-sidebar__footer a:focus-visible,.app-shell--command-deck>.game-sidebar .game-sidebar__footer button:hover:not(:disabled),.app-shell--command-deck>.game-sidebar .game-sidebar__footer button:focus-visible:not(:disabled){background:color-mix(in srgb,var(--ui-accent-soft) 35%,transparent);border-color:color-mix(in srgb,var(--ui-accent) 36%,var(--ui-border));transform:translate(.12rem)}.app-shell--command-deck .app-main{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--ui-accent) 72%,var(--ui-border)) color-mix(in srgb,var(--ui-surface-muted) 58%,transparent)}.app-shell--command-deck .app-main::-webkit-scrollbar{width:.65rem}.app-shell--command-deck .app-main::-webkit-scrollbar-track{background:color-mix(in srgb,var(--ui-surface-muted) 58%,transparent)}.app-shell--command-deck .app-main::-webkit-scrollbar-thumb{border:.15rem solid transparent;border-radius:999px;background:color-mix(in srgb,var(--ui-accent) 72%,var(--ui-border));background-clip:padding-box}.app-shell--command-deck .app-main::-webkit-scrollbar-thumb:hover{background:var(--ui-accent);background-clip:padding-box}}.is-warning .command-overview__status-mark{background:var(--ui-accent)}.segmented-control{display:grid;gap:var(--space-1);min-width:0;margin:0;padding:0;border:0}.segmented-control__legend{padding:0;color:var(--ui-muted);font:700 .75rem/1.3 var(--font-ui)}.segmented-control__options{display:inline-flex;max-width:100%;overflow:hidden;border:1px solid var(--ui-control-border);border-radius:var(--ui-radius-sm);background:var(--ui-surface-raised)}.segmented-control--wrap .segmented-control__options{flex-wrap:wrap}.segmented-control__option{display:inline-flex;flex:1 1 auto;align-items:center;justify-content:center;gap:.35rem;min-width:0;min-height:2.75rem;margin:0;padding:.4rem .8rem;border:0;border-right:1px solid color-mix(in srgb,var(--ui-control-border) 60%,transparent);border-radius:0;background:transparent;color:var(--ui-text);font:700 .8125rem/1.2 var(--font-ui);white-space:nowrap;cursor:pointer;transition:background-color var(--motion-fast) var(--motion-ease),color var(--motion-fast) var(--motion-ease)}.segmented-control__option:last-child{border-right:0}.segmented-control__option img{width:1.25rem;height:1.25rem;object-fit:contain}.segmented-control__option:hover:not(:disabled):not(.is-selected){background:color-mix(in srgb,var(--ui-accent-soft) 45%,transparent)}.segmented-control__option:focus-visible{position:relative;z-index:1;outline:2px solid var(--ui-focus);outline-offset:-2px}.segmented-control__option.is-selected{background:color-mix(in srgb,var(--ui-accent) 24%,var(--ui-surface));box-shadow:inset 0 0 0 1px var(--ui-accent)}.segmented-control__option:disabled{cursor:not-allowed;opacity:.55}.segmented-control--sm .segmented-control__legend{font-size:var(--text-2xs)}.segmented-control--sm .segmented-control__option{min-height:2rem;padding:.25rem .6rem;font-size:var(--text-xs)}.segmented-control--sm .segmented-control__option img{width:1rem;height:1rem}.command-overview__panel-heading{padding-bottom:.75rem;border-bottom:1px solid var(--ui-border)}.command-overview__village+.command-overview__village{border-top:1px solid var(--ui-border);margin-top:1rem}.command-overview__table-heading{margin-inline:-1rem;padding:.7rem 1rem;color:var(--ui-muted);background:color-mix(in srgb,var(--ui-accent) 5%,transparent);font-size:var(--text-xs)}.command-overview__unit summary:hover,.command-overview__unit[open]{background:color-mix(in srgb,var(--ui-accent) 6%,transparent)}.command-overview__timeline .urgent,.command-overview__alerts .priority-blocked{border-color:var(--ui-danger)}.command-overview__alerts .priority-within-hour{border-color:var(--ui-accent)}.command-overview__balance.is-warning{color:var(--ui-accent)}.m16-battle__countdown.is-due{color:var(--ui-danger)}.m16-battle__side--attacker{border-top:3px solid var(--ui-danger)}.m16-battle__side--defender{border-top:3px solid var(--ui-success)}.village-incoming.is-empty{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem 1rem;padding-block:.55rem;background:var(--ui-surface)}.village-incoming__identity strong.is-attack,.village-incoming__identity strong.is-scout{background:color-mix(in srgb,var(--ui-danger) 14%,transparent);color:var(--ui-danger)}.village-incoming__countdown.is-due{color:var(--ui-danger)}@media(min-width:64rem){html:has(.app-shell--command-deck),body:has(.app-shell--command-deck),body:has(.app-shell--command-deck) #app{width:100%;max-width:none;margin:0;padding:0;border:0}.app-shell--command-deck.app-shell--game{width:100%;max-width:none;margin:0;padding:0;border:0}.app-shell--command-deck>.game-sidebar,.app-shell--command-deck>.app-header,.app-shell--command-deck>.app-main{margin:0;border-radius:0}.app-shell--command-deck>.app-main{width:100%;max-width:none;padding:0 0 calc(2rem + env(safe-area-inset-bottom))}.app-shell--command-deck .game-page{width:min(100%,var(--game-page-max, 100rem));max-width:var(--game-page-max, 100rem);margin-inline:auto}}@media(min-width:64rem){html:has(.app-shell--command-deck){overflow-x:hidden;overflow-y:auto}.app-shell--command-deck.app-shell--game{position:relative;inset:auto;width:100%;min-height:100dvh;height:auto;overflow:visible}.app-shell--command-deck>.game-sidebar{position:sticky!important;top:0;height:100dvh;min-height:100dvh;align-self:start}.app-shell--command-deck>.app-header{position:sticky!important;top:0}.app-shell--command-deck .app-main{min-height:calc(100dvh - 4.25rem);overflow:visible;overscroll-behavior-y:auto;scrollbar-gutter:auto}.app-shell--command-deck .app-main::-webkit-scrollbar{display:none}}@media(min-width:64rem){html:has(.app-shell--command-deck),body:has(.app-shell--command-deck),body:has(.app-shell--command-deck)>#app,.app-shell--command-deck.app-shell--game{box-sizing:border-box;display:block;inline-size:100%;min-inline-size:100%;max-inline-size:none;min-width:0;margin:0;padding:0;border:0;border-radius:0;gap:0}.app-shell--command-deck.app-shell--game{display:grid;width:100%!important}.app-shell--command-deck>.game-sidebar,.app-shell--command-deck>.app-header,.app-shell--command-deck>.app-main{margin:0;border-radius:0}}html[data-interface=v2],.app-shell--interface-v2{--v2-canvas: #071b1b;--v2-surface: #102c2a;--v2-surface-raised: #173b36;--v2-border: #315d53;--v2-border-soft: rgb(92 148 126 / 25%);--v2-ink: #f4f0dd;--v2-muted: #a9c0b3;--v2-accent: #d8b367;--v2-success: #8fd0a0;--v2-danger: #f0a18d;--v2-alarm-surface: #4a1b15;--v2-alarm-border: #c9614b;--v2-alarm-glow: rgb(240 120 92 / 45%)}.app-shell--interface-v2{background:var(--v2-canvas);color:var(--v2-ink)}html[data-interface=v2] :is(.village-issues-dialog,.game-context-menu,.help-dialog){--ui-surface: var(--v2-surface-raised);--ui-surface-raised: var(--v2-surface);--ui-surface-muted: var(--v2-canvas);--ui-text: var(--v2-ink);--ui-muted: var(--v2-muted);--ui-border: var(--v2-border);--ui-control-border: var(--v2-border);--ui-control: var(--v2-surface);--ui-accent: var(--v2-accent);--ui-accent-soft: var(--v2-surface);--ui-accent-contrast: #17251e;--ui-success: var(--v2-success);--ui-danger: var(--v2-danger);--ui-focus: var(--v2-accent);color-scheme:dark}.app-shell--interface-v2>.app-header,.app-shell--interface-v2 .scene-navigation,.app-shell--interface-v2 .village-page__header,.app-shell--interface-v2 .interface-v2-route-frame,.app-shell--interface-v2 .context-window-dock{--ui-canvas: var(--v2-canvas);--ui-surface: var(--v2-surface);--ui-surface-raised: var(--v2-surface-raised);--ui-surface-muted: var(--v2-canvas);--ui-text: var(--v2-ink);--ui-muted: var(--v2-muted);--ui-border: var(--v2-border);--ui-control-border: var(--v2-border);--ui-control: var(--v2-surface);--ui-accent: var(--v2-accent);--ui-accent-contrast: #17251e;--ui-success: var(--v2-success);--ui-danger: var(--v2-danger);--ui-focus: var(--v2-accent);--ui-accent-soft: #3b4d43;--ui-table-header: #2b514b;--ui-table-header-text: #f3f7ef;--ui-table-stripe: #1b3033;--ui-selected: #3b5147;--strategy-panel-fill: linear-gradient(145deg, #1d3235, #142528 72%);--strategy-frame: inset 0 0 0 1px rgb(118 163 145 / 13%), 0 .5rem 1.5rem rgb(0 0 0 / 24%);--theme-paper: var(--ui-surface);--theme-paper-raised: var(--ui-surface-raised);--theme-paper-muted: var(--ui-surface-muted);--theme-ink: var(--ui-text);--theme-ink-muted: var(--ui-muted);--theme-rule: var(--ui-border);--theme-rule-strong: var(--ui-control-border);--theme-action: var(--ui-accent);--theme-action-ink: var(--ui-accent-contrast);--theme-success: var(--ui-success);--theme-danger: var(--ui-danger);--theme-paper-texture: none;color-scheme:dark}@media(min-width:64rem){.app-shell.app-shell--interface-v2.app-shell--game{grid-template-columns:clamp(15rem,17vw,16.5rem) minmax(0,1fr);grid-template-rows:4rem 4.8rem minmax(0,1fr);background:var(--v2-canvas)}.app-shell--interface-v2>.game-sidebar{padding:1.15rem .75rem .9rem;background:#081f1e;border-right-color:var(--v2-border);box-shadow:.8rem 0 2.2rem #0000001f}.app-shell--interface-v2>.game-sidebar .game-sidebar__brand{padding-bottom:1.1rem}.app-shell--interface-v2>.game-sidebar .game-sidebar__footer a,.app-shell--interface-v2>.game-sidebar .game-sidebar__footer button{min-height:2.35rem;border-radius:.6rem;color:var(--v2-muted)}.app-shell--interface-v2>.app-header{display:grid!important;grid-template-columns:minmax(0,1fr) auto auto auto auto auto;grid-template-rows:4rem auto;align-items:center;gap:0 .65rem;padding:0 .85rem 0 1rem;background:#0a2423;border-bottom-color:var(--v2-border)}.app-shell--interface-v2>.app-header .app-header__brand-cluster,.app-shell--interface-v2>.app-header .app-header__command-context,.app-shell--interface-v2>.app-header .app-header__details{display:none}.app-shell--interface-v2>.app-header .app-header__breadcrumb{display:flex;grid-column:1;grid-row:1;align-items:center;gap:.65rem;min-width:0;color:var(--v2-muted)}.app-shell--interface-v2>.app-header .app-header__population{grid-column:5;grid-row:1;border-left:1px solid var(--v2-border-soft);padding-left:1rem}.app-shell--interface-v2>.app-header .onboarding-launcher{grid-column:3;grid-row:1;margin:0;max-width:none;min-height:2.55rem;border-radius:.65rem;border-color:var(--v2-border-soft);background:#12302d;color:var(--v2-muted)}.app-shell--interface-v2>.app-header .onboarding-launcher:hover,.app-shell--interface-v2>.app-header .onboarding-launcher:focus-visible{border-color:var(--v2-accent);color:var(--v2-ink)}.app-shell--interface-v2>.app-header .app-header__profile{display:flex;grid-column:6;grid-row:1}.app-shell--interface-v2>.app-header .app-header__compact-resources{display:grid!important;grid-column:1 / -1;grid-row:2;grid-template-columns:repeat(4,minmax(8rem,1fr));align-items:stretch;width:100%;max-width:none;min-width:0;gap:.55rem;margin:0;padding:.55rem 0;border-top:1px solid var(--v2-border-soft);background:transparent}.app-shell--interface-v2>.app-header .app-header__compact-resources .resource-bar__item{min-height:3rem;border-color:var(--v2-border);border-radius:.65rem;background:#12302d}.app-shell--interface-v2>.app-main{grid-column:2;grid-row:3;width:100%;max-width:none;min-height:calc(100dvh - 8.8rem);padding:2rem clamp(1.25rem,4vw,3.6rem) 3.5rem;background:radial-gradient(circle at 76% 0%,rgb(41 87 71 / 22%),transparent 32rem),var(--v2-canvas)}}.app-shell--interface-v2 .game-page{width:min(100%,72rem);max-width:72rem;margin-inline:auto;gap:1.15rem}.interface-v2-route-frame{display:grid;grid-template-rows:auto minmax(0,1fr);width:min(100%,78rem);height:100%;min-height:0;margin-inline:auto;overflow:hidden;border:1px solid var(--v2-border);border-radius:1rem;background:#0c2724f0;box-shadow:0 1.5rem 4rem #0000004d,inset 0 1px #ffffff0d}.interface-v2-route-frame__header{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:4rem;padding:.75rem 1.25rem;border-bottom:1px solid var(--v2-border-soft);background:linear-gradient(90deg,#19453bf5,#0f2f2bf5)}.interface-v2-route-frame__header>div{display:grid;gap:.2rem}.interface-v2-route-frame__header strong{color:var(--v2-ink);font:600 clamp(1.1rem,2vw,1.45rem)/1.1 var(--font-display)}.interface-v2-route-frame__controls{display:inline-flex;align-items:center;gap:.35rem;flex:0 0 auto}.interface-v2-route-frame__control{display:inline-grid;place-items:center;width:2.75rem;height:2.75rem;border:1px solid var(--v2-border);border-radius:.5rem;background:#09201eb8;color:var(--v2-accent);font-size:1.35rem;line-height:1}.interface-v2-route-frame__control:hover,.interface-v2-route-frame__control:focus-visible{border-color:var(--v2-accent);background:#354b30e5;color:var(--v2-ink)}.interface-v2-route-frame__control--close{color:#f0b0a1}.interface-v2-route-frame__control:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.interface-v2-route-frame__control .ui-icon{width:1.15rem;height:1.15rem}.interface-v2-route-frame__body{min-height:0;overflow:auto;overscroll-behavior:contain;padding:.75rem clamp(.8rem,2vw,1.8rem) 1rem;scrollbar-gutter:stable}@property --scroll-fade-top{syntax: "<length>"; inherits: false; initial-value: 0px;}@property --scroll-fade-bottom{syntax: "<length>"; inherits: false; initial-value: 0px;}@keyframes scroll-fade-top-in{0%{--scroll-fade-top: 0px}to{--scroll-fade-top: .9rem}}@keyframes scroll-fade-bottom-out{0%{--scroll-fade-bottom: 1.1rem}to{--scroll-fade-bottom: 0px}}.interface-v2-route-frame__body,html[data-interface=v2] .village-issues-dialog>.village-issues{scrollbar-width:thin;scrollbar-color:var(--v2-border) transparent}.interface-v2-route-frame__body::-webkit-scrollbar,html[data-interface=v2] .village-issues-dialog>.village-issues::-webkit-scrollbar{width:.5rem;height:.5rem}.interface-v2-route-frame__body::-webkit-scrollbar-track,html[data-interface=v2] .village-issues-dialog>.village-issues::-webkit-scrollbar-track{background:transparent}.interface-v2-route-frame__body::-webkit-scrollbar-thumb,html[data-interface=v2] .village-issues-dialog>.village-issues::-webkit-scrollbar-thumb{border:0;border-radius:999px;background:var(--v2-border)}@supports (animation-timeline: scroll(self)){.interface-v2-route-frame__body,html[data-interface=v2] .village-issues-dialog>.village-issues{animation:scroll-fade-top-in linear both,scroll-fade-bottom-out linear both;animation-timeline:scroll(self),scroll(self);animation-range:0px 1.1rem,calc(100% - 1.1rem) 100%;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 var(--scroll-fade-top),#000 calc(100% - var(--scroll-fade-bottom)),transparent);mask-image:linear-gradient(to bottom,transparent,#000 var(--scroll-fade-top),#000 calc(100% - var(--scroll-fade-bottom)),transparent)}}.interface-v2-route-frame__body:focus-visible{outline:2px solid var(--ui-focus);outline-offset:-2px}.interface-v2-route-frame__body>*{width:min(100%,72rem);margin-inline:auto}@media(max-width:63.999rem){html:has(.app-shell--context-route),body:has(.app-shell--context-route){overflow:hidden}.app-shell--interface-v2.app-shell--context-route{height:100dvh;min-height:100dvh;max-height:100dvh;grid-template-rows:auto minmax(0,1fr);overflow:hidden}.app-shell--interface-v2.app-shell--context-route>.app-main{height:100%;min-height:0;overflow:hidden}.interface-v2-route-frame{height:100%;min-height:0;border-radius:.75rem}.interface-v2-route-frame__header{align-items:flex-start;padding:.7rem .8rem}.interface-v2-route-frame__control{width:2.75rem;height:2.75rem}.context-window-dock{inset-inline:.65rem;bottom:calc(4.5rem + env(safe-area-inset-bottom));max-width:none}}.context-window-dock{position:fixed;z-index:20;right:1.25rem;bottom:1.25rem;left:clamp(16rem,18vw,18rem);display:grid;gap:.45rem;max-width:min(46rem,calc(100vw - 20rem));padding:.55rem;border:1px solid var(--v2-border);border-radius:.75rem;background:#071b1bf0;box-shadow:0 1rem 2.5rem #00000047}.context-window-dock__label{color:var(--v2-muted);font-size:var(--text-2xs);font-weight:700;letter-spacing:.09em;text-transform:uppercase}.context-window-dock__items{display:flex;flex-wrap:wrap;gap:.45rem}.context-window-dock__item{display:inline-flex;min-width:0;max-width:15rem;overflow:hidden;border:1px solid var(--v2-border);border-radius:.5rem;background:#12302d;animation:context-window-dock-item-enter var(--motion-menu) var(--motion-ease) both}@keyframes context-window-dock-item-enter{0%{opacity:0;transform:translateY(.35rem)}}.context-window-dock__restore,.context-window-dock__close{border:0;background:transparent;color:var(--v2-ink)}.context-window-dock__restore{display:inline-flex;align-items:center;justify-content:space-between;gap:.65rem;min-width:0;min-height:2.75rem;padding:.55rem .65rem;color:var(--v2-accent);font-weight:700;text-align:left}.context-window-dock__restore span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.context-window-dock__restore:hover,.context-window-dock__restore:focus-visible,.context-window-dock__close:hover,.context-window-dock__close:focus-visible{background:#1a443b;color:var(--v2-ink)}.context-window-dock__restore:focus-visible,.context-window-dock__close:focus-visible{outline:2px solid var(--ui-focus);outline-offset:-2px}.context-window-dock__close{width:2.75rem;min-height:2.75rem;border-left:1px solid var(--v2-border-soft);color:#f0b0a1;font-size:var(--text-lg)}.context-window-dock__restore .ui-icon,.context-window-dock__close .ui-icon{width:1rem;height:1rem;flex:0 0 auto}.app-shell--interface-v2>.app-main:has(.context-window-dock){padding-bottom:max(5.75rem,calc(5rem + env(safe-area-inset-bottom)))}@media(max-width:63.999rem){.context-window-dock{right:.65rem;bottom:calc(4.5rem + env(safe-area-inset-bottom));left:.65rem;max-width:none}.context-window-dock__items{flex-wrap:nowrap;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin}.context-window-dock__item{flex:0 0 min(15rem,78vw)}.app-shell--interface-v2>.app-main:has(.context-window-dock){padding-bottom:max(9rem,calc(8rem + env(safe-area-inset-bottom)))}}.app-shell--interface-v2 .game-page-header{min-height:5.2rem;padding:.25rem 0 .35rem;border:0;border-radius:0;background:transparent;box-shadow:none}.app-shell--interface-v2 .game-page-header h1,.app-shell--interface-v2 .game-page-header--illustrated h1{color:var(--v2-ink);font-size:clamp(1.9rem,3.5vw,2.65rem);letter-spacing:-.02em}.app-shell--interface-v2 .game-page-header__description{max-width:48rem;color:var(--v2-muted)}.app-shell--interface-v2 :is(.game-panel-note,.settings-intro,.game-page-header__description){color:var(--v2-muted)}.app-shell--interface-v2 :is(.game-action-primary,.primary-button,.interior-action){border-color:#ecd28f;background:linear-gradient(145deg,#e4bc70,#c9984d);color:#1d1a12;box-shadow:0 .45rem 1rem #00000038}.app-shell--interface-v2 :is(.game-action-secondary,.secondary-button,.text-button){color:var(--v2-accent)}.app-shell--interface-v2 .interface-v2-route-frame :is(.game-section,.game-panel,.alliance-panel,.report-list-panel,.report-detail-panel,.report-category-rail,.settings-group,.command-overview__main,.command-overview__readiness-panel,.movement-orders-page__panel,.research-tree__inspector):not(.game-section--flush):not(.market-page__operations):not(.market-page__history){padding:var(--panel-pad)}.app-shell--interface-v2 .interface-v2-route-frame :is(.game-page,.building-page__actions,.settings-page,.movement-orders-page,.market-page,.market-page__dispatch,.alliance-page,.alliance-layout,.alliance-start-layout,.reports-page,.reports-layout,.forge-page,.command-overview,.command-overview__columns,.command-overview__main,.research-tree){gap:var(--panel-gap)}.app-shell--interface-v2 .interface-v2-route-frame :is(.building-interior__description,.building-interior__level,.construction-table__level,.construction-table__duration,.construction-table .interior-cost--aligned dd,.building-recruitment__duration strong,.building-recruitment__identity p,.building-recruitment__population,.building-recruitment__order,.research-tree__bonus-comparison dd,.research-tree--illustrated .research-tree__bonus-comparison dd,.research-tree__node-identity small){font-size:var(--text-md)}.app-shell--interface-v2 .interface-v2-route-frame :is(small,.interior-cost dt,.interior-cost--aligned dt span,.report-category-rail__heading,.report-table__mobile-label,.interior-cost__shortfall,.construction-table .interior-cost--aligned .interior-cost__shortfall,.interior-requirements__state,.interior-requirements__kind,.interior-requirements__level,.building-recruitment__duration,.market-page__cargo-stock,.market-page__cargo-stock small,.market-page__cargo-max,.market-page__resources legend,.segmented-control--sm .segmented-control__legend,.research-tree__level-mark){font-size:var(--text-xs)}.app-shell--interface-v2 .interface-v2-route-frame :is(.game-control,input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]),select,.primary-button,.secondary-button,.game-action-primary,.game-action-secondary,.interior-action,.segmented-control__option,.report-category-button,.settings-tabs button,.building-recruitment__quantity-control,.building-recruitment__recruit,.command-overview__scope .secondary-button,.market-page__operations>summary,.market-page__history>summary){min-height:var(--control-h)}.app-shell--interface-v2 .interface-v2-route-frame :is(.game-control,input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]),select,textarea,.building-recruitment__quantity-control input,.rally-coordinate-picker input,.rally-coordinate-picker select,.alliance-panel input,.alliance-panel textarea,.settings-form input,.settings-form select,.market-page__form input,.market-page__form select){padding-block:.3rem;font-size:var(--text-md);line-height:1.3}.app-shell--interface-v2 .interface-v2-route-frame :is(textarea,.alliance-panel textarea){min-height:4.5rem}.app-shell--interface-v2 .interface-v2-route-frame :is(.primary-button,.secondary-button,.game-action-primary,.game-action-secondary,.interior-action,.building-recruitment__recruit,.report-category-button,.settings-tabs button,.command-overview__scope .secondary-button){padding-block:.3rem;font-size:var(--text-sm);line-height:1.2}.app-shell--interface-v2 .interface-v2-route-frame .segmented-control__option{padding-block:.25rem;font-size:var(--text-sm)}.app-shell--interface-v2 .interface-v2-route-frame .segmented-control--sm .segmented-control__option{min-height:var(--control-h-sm);font-size:var(--text-xs)}.app-shell--interface-v2 .interface-v2-route-frame :is(.construction-table,.report-list-panel table,.member-list,.command-overview__unit-grid,.market-page__history) :is(.primary-button,.secondary-button,.interior-action,select,input:not([type=checkbox]):not([type=radio]):not([type=range])){min-height:var(--control-h-sm);padding-block:.2rem}@media(max-width:63.999rem){.app-shell--interface-v2 .app-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:auto auto;gap:.45rem;padding:.55rem .75rem}.app-shell--interface-v2 .app-header__brand-cluster{display:flex;grid-column:1;grid-row:1}.app-shell--interface-v2 .app-header__breadcrumb{display:flex;grid-column:2;grid-row:1;min-width:0;overflow:hidden}.app-shell--interface-v2 .app-header__profile{display:flex;grid-column:3;grid-row:1}.app-shell--interface-v2 .app-header .onboarding-launcher{grid-column:1 / -1;grid-row:3;justify-self:start;margin:0}.app-shell--interface-v2 .app-header__compact-resources{display:flex;grid-column:1 / -1;grid-row:2;width:100%;max-width:100%;gap:.45rem;overflow-x:auto;padding:.35rem 0}.app-shell--interface-v2 .app-header__compact-resources .resource-bar__item{min-width:8.3rem;flex:0 0 auto;border-color:var(--v2-border);background:#12302d}.app-shell--interface-v2 .app-main{padding:1rem .75rem calc(4.5rem + env(safe-area-inset-bottom))}.app-shell--interface-v2 .game-page{width:100%;gap:.8rem}}html:has(.app-shell--interface-v2),body:has(.app-shell--interface-v2){overflow:hidden}.app-shell--interface-v2.app-shell--game{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100dvh;min-height:0;max-height:100dvh;overflow:hidden}.app-shell--interface-v2>.app-main{position:relative;min-height:0;height:100%;overflow:hidden}.interface-v2-primary-view{position:relative;z-index:0;width:100%;height:100%;min-height:0;overflow:hidden}.interface-v2-primary-view>.game-page{width:100%;max-width:none;height:100%;min-height:0;margin:0}.interface-v2-context-stage{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;min-height:0;overflow:hidden}.interface-v2-route-frame{position:relative;z-index:1;width:min(100%,78rem);max-height:100%}.interface-v2-route-frame.is-closing{animation:panel-leave var(--motion-fast) var(--motion-ease-exit) both;pointer-events:none}.app-shell--interface-v2{--context-window-shift: .5rem}@media(max-width:63.999rem){.app-shell--interface-v2{--context-window-shift: 1.5rem}}.app-shell--interface-v2 .app-main{padding-block:clamp(.65rem,1.8vw,1.5rem)}.app-shell--interface-v2 .interface-v2-primary-view>.game-page{display:block;height:100%;min-height:0}.app-shell--interface-v2 .interface-v2-primary-view .village-page{grid-template-rows:auto minmax(0,1fr);height:100%;min-height:0;overflow:hidden}.app-shell--interface-v2 .interface-v2-primary-view .village-queues{position:absolute;z-index:4;inset:auto auto 1rem 1rem;width:min(38rem,calc(100% - 2rem))}.app-shell--interface-v2 .interface-v2-primary-view .village-queues__item{border-color:var(--v2-border);background:color-mix(in srgb,var(--v2-surface) 82%,transparent);color:var(--v2-ink)}.app-shell--interface-v2 .interface-v2-primary-view .village-queues__item.is-active{border-left-color:var(--v2-accent)}.app-shell--interface-v2 .interface-v2-primary-view .village-queues__label,.app-shell--interface-v2 .interface-v2-primary-view .village-queues__meta,.app-shell--interface-v2 .interface-v2-primary-view .village-queues__title--free,.app-shell--interface-v2 .interface-v2-primary-view .village-queues__title small{color:var(--v2-muted)}@media(max-width:63.999rem){.app-shell--interface-v2 .interface-v2-primary-view .village-queues{display:none}}.app-shell--interface-v2 .interface-v2-primary-view .village-overview{display:block;height:100%;min-height:0;overflow:hidden}.app-shell--interface-v2 .interface-v2-primary-view .village-map-scene{display:grid;grid-template-rows:auto minmax(0,1fr);height:100%;min-height:0}.app-shell--interface-v2 .interface-v2-primary-view .village-map-scene__viewport{height:100%;aspect-ratio:auto}.app-shell--interface-v2 .interface-v2-primary-view .village-map-scene__canvas{width:100%;height:100%;aspect-ratio:auto}.app-shell--interface-v2 .interface-v2-primary-view .village-page__header{position:absolute;z-index:4;inset:1rem auto auto 1rem;width:min(24rem,calc(100% - 2rem));border-radius:0;pointer-events:none}.app-shell--interface-v2 .interface-v2-primary-view .village-overview{height:100%}.app-shell--interface-v2 .interface-v2-primary-view .village-map-scene,.app-shell--interface-v2 .interface-v2-primary-view .village-map-scene__viewport{border-radius:0;border-inline:0;box-shadow:none}.app-shell--interface-v2 .map-page.map-page--interface-v2{height:100%;min-height:0}.app-shell--interface-v2 .map-page.map-page--interface-v2 .world-map{border:0;border-radius:0;box-shadow:none}@media(max-width:63.999rem){.app-shell--interface-v2>.app-main{padding:.65rem .65rem calc(4.5rem + env(safe-area-inset-bottom))}.app-shell--interface-v2 .interface-v2-primary-view .village-page__header{min-height:5.25rem;padding:.5rem .75rem}.app-shell--interface-v2 .interface-v2-primary-view .village-page__portrait{width:3.8rem;height:3.8rem}}@media(min-width:64rem){.app-shell.app-shell--interface-v2.app-shell--game{grid-template-columns:4.75rem minmax(0,1fr)}.app-shell--interface-v2 .game-sidebar{width:4.75rem;align-items:center;padding:.75rem .55rem;background:linear-gradient(180deg,color-mix(in srgb,var(--ui-surface-raised) 30%,transparent),transparent 30%),color-mix(in srgb,var(--ui-surface-muted) 90%,transparent);border-right-color:color-mix(in srgb,var(--ui-accent) 46%,var(--ui-border))}.app-shell--interface-v2 .game-sidebar__brand{width:2.85rem;justify-content:center;padding:0 0 .85rem}.app-shell--interface-v2 .game-sidebar__brand>span:last-child,.app-shell--interface-v2 .game-sidebar__footer a>span,.app-shell--interface-v2 .game-sidebar__footer button>span,.app-shell--interface-v2 .game-sidebar .village-issues-launcher>span,.app-shell--interface-v2 .game-sidebar .village-issues-priority__item>span:not(.sidebar-icon){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.app-shell--interface-v2 .game-sidebar__footer a,.app-shell--interface-v2 .game-sidebar__footer button{position:relative;justify-content:center;width:2.85rem;min-height:2.85rem;padding:.65rem;border-radius:.65rem}.app-shell--interface-v2 .game-sidebar__footer a svg,.app-shell--interface-v2 .game-sidebar__footer button svg{width:1.25rem;height:1.25rem}.app-shell--interface-v2 .game-sidebar__footer{width:100%;justify-items:center;padding:.7rem 0 0}.app-shell--interface-v2 .game-sidebar .village-issues{display:none}.app-shell--interface-v2 .game-sidebar .village-issues-launcher{display:grid;width:2.85rem;min-height:2.85rem;place-items:center;gap:.15rem;margin:0 0 .65rem;padding:.4rem;border-radius:.65rem}.app-shell--interface-v2 .game-sidebar .village-issues-launcher .sidebar-icon{width:1.2rem;height:1.2rem}.app-shell--interface-v2 .game-sidebar .village-issues-priority{display:grid;width:100%;gap:.35rem;margin:0 0 .65rem}.app-shell--interface-v2 .game-sidebar .village-issues-priority__item{position:relative;display:grid;width:2.85rem;min-height:2.85rem;place-items:center;padding:.55rem;border-radius:.65rem}.app-shell--interface-v2 .game-sidebar .village-issues-priority__item .sidebar-icon{width:1.15rem;height:1.15rem}.app-shell--interface-v2 .game-sidebar .village-issues-priority__item strong{position:absolute;right:.2rem;bottom:.15rem;min-width:1rem;border-radius:999px;background:var(--ui-accent);color:var(--ui-accent-contrast);font-size:var(--text-2xs);line-height:1rem;text-align:center}}.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-page__header{position:absolute;inset:1rem auto auto 1rem;width:min(24rem,calc(100% - 2rem));border-radius:0;pointer-events:none}.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-map-scene,.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-map-scene__viewport,.app-shell.app-shell--interface-v2 .map-page.map-page--interface-v2 .world-map{border-radius:0;box-shadow:none}.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-page{display:block}@media(min-width:64rem){.app-shell.app-shell--interface-v2 .game-sidebar{display:flex;flex-direction:column;gap:.5rem;padding:.65rem .55rem .7rem;background:linear-gradient(180deg,#071f1dfa,#051717fa);border-right:1px solid color-mix(in srgb,var(--ui-accent) 35%,var(--ui-border))}.app-shell.app-shell--interface-v2 .game-sidebar__brand,.app-shell.app-shell--interface-v2 .game-sidebar__footer{width:100%;border:1px solid color-mix(in srgb,var(--ui-border) 78%,transparent);background:color-mix(in srgb,var(--ui-surface-raised) 56%,transparent);box-shadow:inset 0 1px #ffffff0a}.app-shell.app-shell--interface-v2 .game-sidebar__brand{min-height:3.1rem;border-radius:.7rem}.app-shell.app-shell--interface-v2 .game-sidebar__footer{display:grid;gap:.35rem;margin:0;padding:.45rem;border-top:1px solid color-mix(in srgb,var(--ui-border) 78%,transparent);border-radius:.7rem}.app-shell.app-shell--interface-v2 .village-map-scene{position:relative}}@media(min-width:64rem){.app-shell.app-shell--interface-v2>.app-header{display:grid;grid-template-columns:auto minmax(10rem,15rem) minmax(0,1fr) auto auto auto;grid-template-rows:4.7rem;align-items:center;gap:0 .65rem!important;padding:0 1rem 0 .85rem;overflow:visible}.app-shell.app-shell--interface-v2>.app-header .app-header__brand-cluster{display:flex;grid-column:1;grid-row:1;align-items:center;min-width:0}.app-shell.app-shell--interface-v2>.app-header .app-header__brand-cluster>.brand{display:inline-flex;flex-direction:row;align-items:baseline;gap:.35rem;min-width:max-content;color:var(--v2-ink)}.app-shell.app-shell--interface-v2>.app-header .app-header__brand-cluster>.brand .brand__eyebrow{color:var(--v2-accent);font-size:var(--text-2xs);letter-spacing:.12em;text-transform:uppercase}.app-shell.app-shell--interface-v2>.app-header .app-header__brand-cluster>.brand .brand__name{color:var(--v2-ink);font-family:var(--font-display);font-size:1.05rem;font-weight:700;letter-spacing:.02em}.app-shell.app-shell--interface-v2>.app-header .app-header__brand-cluster>.quick-navigation:not([open]),.app-shell.app-shell--interface-v2>.app-header .navigation-trigger--header{display:none}.app-shell.app-shell--interface-v2>.app-header .app-header__command-context,.app-shell.app-shell--interface-v2>.app-header .app-header__details,.app-shell.app-shell--interface-v2>.app-header .onboarding-launcher{display:none}.app-shell.app-shell--interface-v2>.app-header .app-header__breadcrumb{display:flex;grid-column:2;grid-row:1;align-items:center;gap:.42rem;min-width:0;overflow:hidden;color:var(--v2-muted);font-size:var(--text-xs);white-space:nowrap}.app-shell.app-shell--interface-v2>.app-header .app-header__breadcrumb strong{overflow:hidden;color:var(--v2-ink);text-overflow:ellipsis}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources{display:grid;grid-column:3;grid-row:1;grid-template-columns:repeat(4,minmax(7.25rem,8.8rem));justify-content:center;align-items:center;width:max-content;max-width:100%;min-width:0;gap:.35rem;margin:0 auto;padding:0;overflow:visible}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources .resource-bar__item{min-width:0;min-height:2.75rem;padding:.38rem .5rem;border-color:color-mix(in srgb,var(--ui-border) 90%,transparent);border-radius:.55rem;background:linear-gradient(155deg,#173b36eb,#0d2725e0);box-shadow:inset 0 1px #ffffff0d}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources .resource-bar__icon{width:1.15rem;height:1.15rem}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources .resource-bar__amount,.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources .resource-bar__rate{font-size:var(--text-xs)}.app-shell.app-shell--interface-v2>.app-header .app-header__population{display:inline-flex;grid-column:5;grid-row:1;align-items:center;gap:.42rem;min-height:2.75rem;margin:0;padding:.35rem .6rem;border:1px solid color-mix(in srgb,var(--ui-border) 90%,transparent);border-radius:.55rem;background:linear-gradient(155deg,#173b36eb,#0d2725e0)}.app-shell.app-shell--interface-v2>.app-header .app-header__population small{display:block;color:var(--v2-muted);font-size:var(--text-2xs);letter-spacing:.04em}.app-shell.app-shell--interface-v2>.app-header .app-header__population strong{display:block;color:var(--v2-ink);font-size:var(--text-xs);line-height:1.1}.app-shell.app-shell--interface-v2>.app-header .app-header__profile{display:block;grid-column:6;grid-row:1;position:relative;min-width:0}.app-shell.app-shell--interface-v2>.app-header .app-header__profile-menu>summary{list-style:none;cursor:pointer}.app-shell.app-shell--interface-v2>.app-header .app-header__profile-menu>summary::-webkit-details-marker{display:none}.app-shell.app-shell--interface-v2>.app-header .app-header__profile-link{display:inline-flex;align-items:center;gap:.48rem;min-width:0;padding:.28rem .35rem;border:1px solid transparent;border-radius:.55rem;color:var(--v2-ink)}.app-shell.app-shell--interface-v2>.app-header .app-header__profile-link:hover,.app-shell.app-shell--interface-v2>.app-header .app-header__profile-link:focus-visible,.app-shell.app-shell--interface-v2>.app-header .app-header__profile-menu[open]>summary{border-color:var(--v2-border);background:#173b36cc}.app-shell.app-shell--interface-v2>.app-header .app-header__profile-copy{min-width:0}.app-shell.app-shell--interface-v2>.app-header .app-header__profile-copy strong{display:block;max-width:8rem;overflow:hidden;color:var(--v2-ink);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap}.app-shell.app-shell--interface-v2>.app-header .app-header__profile-chevron{color:var(--v2-muted);font-size:var(--text-ms)}.app-shell.app-shell--interface-v2>.app-header .app-header__profile-menu-content{position:absolute;z-index:40;top:calc(100% + .45rem);right:0;display:grid;min-width:11rem;padding:.35rem;border:1px solid var(--v2-border);border-radius:.65rem;background:#071b1bfa;box-shadow:0 1rem 2rem #00000047}.app-shell.app-shell--interface-v2>.app-header .app-header__profile-menu-content :is(a,button){display:block;width:100%;padding:.58rem .65rem;border:0;border-radius:.4rem;background:transparent;color:var(--v2-ink);font:inherit;text-align:left;text-decoration:none}.app-shell.app-shell--interface-v2>.app-header .app-header__profile-menu-content :is(a,button):hover,.app-shell.app-shell--interface-v2>.app-header .app-header__profile-menu-content :is(a,button):focus-visible{background:#1a443b;color:var(--v2-accent)}}@media(max-width:78rem)and (min-width:64rem){.app-shell.app-shell--interface-v2>.app-header{grid-template-columns:auto minmax(8rem,11rem) minmax(0,1fr) auto auto auto!important;gap:0 .4rem!important;padding-inline:.55rem!important}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources{grid-template-columns:repeat(4,minmax(5.35rem,1fr));gap:.22rem}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources .resource-bar__item{padding-inline:.3rem}.app-shell.app-shell--interface-v2>.app-header .app-header__population{padding-inline:.35rem!important}}.village-status-rail{position:fixed;z-index:16;top:5.35rem;right:.7rem;bottom:.75rem;display:flex;flex-direction:column;align-items:center;gap:.45rem;width:3.85rem;pointer-events:none}.village-status-rail__group{display:grid;gap:.35rem;width:100%;pointer-events:auto}.village-status-rail__group--movements{padding-top:.45rem;border-top:1px solid rgb(216 179 103 / 35%)}.village-status-rail__tile{position:relative;display:grid;place-items:center;width:3.2rem;min-height:3.2rem;margin-inline:auto;padding:.28rem;border:1px solid color-mix(in srgb,var(--ui-border) 88%,transparent);border-radius:.55rem;background:#071c19e0;box-shadow:0 .35rem 1rem #0003,inset 0 1px #ffffff0d;color:var(--v2-ink);text-decoration:none;transition:border-color var(--motion-fast) var(--motion-ease),background var(--motion-fast) var(--motion-ease),transform var(--motion-fast) var(--motion-ease)}.village-status-rail__tile:hover,.village-status-rail__tile:focus-visible{border-color:var(--v2-accent);background:#1a443b;transform:translate(-.1rem)}.village-status-rail__tile img{width:2rem;height:2rem;object-fit:contain}.village-status-rail__tile--movement img{width:1.55rem;height:1.55rem}.village-status-rail__tile strong{position:absolute;right:.18rem;bottom:.13rem;min-width:1.05rem;padding:0 .18rem;border-radius:999px;background:#071c19eb;color:var(--v2-ink);font-size:var(--text-xs);line-height:1.05rem;text-align:center;font-variant-numeric:tabular-nums}.village-status-rail__tile--danger{border-color:#e07b68bf}.village-status-rail__tile--danger strong{background:#8c3d38}.village-status-rail__tile--accent strong{background:#76582e}.village-status-rail__tile--muted strong{background:#385c56}.village-status-rail__tile:after{position:absolute;right:calc(100% + .55rem);top:50%;width:max-content;max-width:16rem;padding:.45rem .55rem;border:1px solid var(--v2-border);border-radius:.4rem;background:#071b1bfa;color:var(--v2-ink);content:attr(data-tooltip);font-size:var(--text-xs);line-height:1.25;opacity:0;pointer-events:none;transform:translate(.25rem,-50%);transition:opacity var(--motion-fast) var(--motion-ease),transform var(--motion-fast) var(--motion-ease);white-space:normal}.village-status-rail__tile:hover:after,.village-status-rail__tile:focus-visible:after{opacity:1;transform:translateY(-50%)}.village-status-rail__sr-note{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}@media(max-width:63.999rem){.village-status-rail{display:none}}@media(prefers-reduced-motion:reduce){.village-status-rail__tile,.village-status-rail__tile:after{transition:none}}@media(min-width:64rem){.app-shell.app-shell--interface-v2 .game-sidebar__identity{display:grid;width:100%;border:1px solid color-mix(in srgb,var(--ui-border) 78%,transparent);border-radius:.7rem;background:color-mix(in srgb,var(--ui-surface-raised) 56%,transparent);box-shadow:inset 0 1px #ffffff0a}.app-shell.app-shell--interface-v2 .game-sidebar__identity .game-sidebar__brand{width:100%;min-height:3.1rem;border:0;border-radius:.7rem .7rem 0 0;background:transparent;box-shadow:none}.app-shell.app-shell--interface-v2 .village-map-scene{position:relative}.app-shell.app-shell--interface-v2 .village-map-scene__viewport{grid-row:1 / -1}}@media(max-width:63.999rem){.app-shell.app-shell--interface-v2 .village-map-scene{position:relative}}html:has(.app-shell.app-shell--interface-v2),body:has(.app-shell.app-shell--interface-v2){overflow:hidden}.app-shell.app-shell--interface-v2.app-shell--game{min-height:100dvh;height:100dvh;overflow:hidden}@media(min-width:64rem){.app-shell.app-shell--interface-v2.app-shell--game{grid-template-columns:4.75rem minmax(0,1fr);grid-template-rows:4.7rem minmax(0,1fr)}.app-shell.app-shell--interface-v2>.app-header{grid-column:2;grid-row:1;grid-template-columns:minmax(10rem,auto) minmax(0,1fr) auto auto auto;grid-template-rows:4.7rem}.app-shell.app-shell--interface-v2>.app-main{grid-column:2;grid-row:2;height:100%;min-height:0;max-height:100%;overflow:hidden;padding:0}.app-shell.app-shell--interface-v2 .interface-v2-primary-view,.app-shell.app-shell--interface-v2 .interface-v2-primary-view>.game-page,.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-page,.app-shell.app-shell--interface-v2 .interface-v2-primary-view .map-page{height:100%;min-height:0;max-height:100%;overflow:hidden}.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-page{display:block}.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-overview,.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-map-scene,.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-map-scene__viewport{height:100%;min-height:0;max-height:100%;overflow:hidden}.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-page__header{top:.85rem;left:.85rem;width:min(24rem,calc(100% - 1.7rem))}.app-shell.app-shell--interface-v2.app-shell--context-route>.app-main{position:relative;overflow:hidden}.app-shell.app-shell--interface-v2 .interface-v2-context-stage,.app-shell.app-shell--interface-v2 .interface-v2-route-frame{max-height:100%;min-height:0}.app-shell.app-shell--interface-v2 .interface-v2-route-frame__body{min-height:0;overflow-y:auto;overscroll-behavior:contain}}@media(max-width:63.999rem){.app-shell.app-shell--interface-v2.app-shell--game{grid-template-rows:auto minmax(0,1fr) auto;min-height:100dvh;height:100dvh}.app-shell.app-shell--interface-v2>.app-header{grid-column:1;grid-row:1}.app-shell.app-shell--interface-v2>.app-main{grid-column:1;grid-row:2;height:100%;min-height:0;max-height:100%;overflow:hidden;padding:0}.app-shell.app-shell--interface-v2>.main-nav--mobile{grid-column:1;grid-row:3}.app-shell.app-shell--interface-v2 .interface-v2-primary-view,.app-shell.app-shell--interface-v2 .interface-v2-primary-view>.game-page,.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-page,.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-overview,.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-map-scene,.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-map-scene__viewport,.app-shell.app-shell--interface-v2 .interface-v2-primary-view .map-page{height:100%;min-height:0;max-height:100%;overflow:hidden}.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-page__header{top:.55rem;left:.55rem;width:min(15.5rem,calc(100% - 1.1rem))}.app-shell.app-shell--interface-v2 .interface-v2-context-stage,.app-shell.app-shell--interface-v2 .interface-v2-route-frame{min-height:0;max-height:100%}.app-shell.app-shell--interface-v2 .interface-v2-route-frame__body{min-height:0;overflow-y:auto;overscroll-behavior:contain}}@media(prefers-reduced-motion:reduce){.app-shell.app-shell--interface-v2 *{scroll-behavior:auto!important}}@media(min-width:64rem){.app-shell.app-shell--interface-v2 .game-sidebar__brand>.game-sidebar__mark{position:relative;display:grid;width:2.85rem;height:2.85rem;overflow:visible;clip:auto;clip-path:none;color:var(--v2-accent);font-size:.88rem;white-space:normal}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources{grid-template-columns:repeat(4,minmax(9.5rem,max-content))!important;width:max-content;max-width:calc(100% - .25rem)!important;justify-content:start}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources .resource-bar__item{width:9.5rem;max-width:9.5rem}}@media(max-width:63.999rem){.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources{display:flex;flex-wrap:nowrap;gap:.25rem;width:100%;max-width:100%;overflow-x:auto}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources .resource-bar__item{flex:0 0 7.4rem;width:7.4rem;max-width:7.4rem}.app-shell.app-shell--interface-v2>.app-header .app-header__details{display:none}}.orientation-lock{display:none}@media(max-width:63.999rem)and (orientation:portrait){html:has(.app-shell.app-shell--game),body:has(.app-shell.app-shell--game){overflow:hidden}.app-shell.app-shell--game>*:not(.orientation-lock){visibility:hidden;pointer-events:none}.app-shell.app-shell--game>.orientation-lock{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:grid;place-content:center;justify-items:center;gap:.7rem;padding:2rem;color:var(--v2-ink, #f4ead7);text-align:center;background:radial-gradient(circle at 50% 35%,rgb(96 130 96 / 24%),transparent 42%),#071b1b}.orientation-lock__icon{display:grid;place-items:center;width:4.8rem;height:4.8rem;color:var(--v2-accent, #e6b85c);border:1px solid rgb(230 184 92 / 64%);border-radius:1.25rem;background:#183a34c2}.orientation-lock__icon .ui-icon{width:3.15rem;height:3.15rem}.orientation-lock strong{max-width:18rem;font-size:clamp(1.05rem,4.5vw,1.35rem)}.orientation-lock span{max-width:20rem;color:#f4ead7c2;font-size:.88rem;line-height:1.45}}@media(max-width:63.999rem)and (orientation:landscape){.app-shell.app-shell--interface-v2.app-shell--game{grid-template-columns:3rem minmax(0,1fr);grid-template-rows:3.5rem minmax(0,1fr);width:100%;padding:0;gap:0;border:0}.app-shell.app-shell--interface-v2>.game-sidebar{display:flex;grid-column:1;grid-row:1 / -1;width:3rem;min-width:0;padding:.35rem .2rem;flex-direction:column;justify-content:space-between;align-items:center}.app-shell.app-shell--interface-v2 .game-sidebar__identity,.app-shell.app-shell--interface-v2 .game-sidebar__brand{display:grid;width:2.5rem;min-height:2.5rem;padding:0;border:0;background:transparent}.app-shell.app-shell--interface-v2 .game-sidebar__brand>.game-sidebar__mark{position:static;display:grid;width:2.5rem;height:2.5rem;place-items:center;clip:auto;clip-path:none;overflow:visible;color:var(--v2-accent);font-size:var(--text-ms)}.app-shell.app-shell--interface-v2 .game-sidebar__footer{display:grid;gap:.3rem}.app-shell.app-shell--interface-v2 .game-sidebar__footer a,.app-shell.app-shell--interface-v2 .game-sidebar__footer button{display:grid;place-items:center;width:2.5rem;min-height:2.75rem;padding:0;color:var(--v2-ink)}.app-shell.app-shell--interface-v2 .game-sidebar__footer span{display:none}.app-shell.app-shell--interface-v2>.app-header{grid-column:2;grid-row:1;display:flex;flex-flow:row nowrap;align-items:center;gap:.35rem;min-height:0;height:3.5rem;padding:.3rem .4rem;overflow:hidden}.app-shell.app-shell--interface-v2 .app-header__breadcrumb{position:static;display:flex;flex:0 0 auto;gap:.3rem;order:0;font-size:var(--text-xs)}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources{order:1;flex:0 0 auto;width:max-content;gap:.2rem;margin:0;padding:0;overflow:visible}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources .resource-bar__item{flex:0 0 clamp(4.8rem,10vw,6.5rem);width:clamp(4.8rem,10vw,6.5rem);max-width:6.5rem;padding:.22rem .3rem;font-size:var(--text-xs)}.app-shell.app-shell--interface-v2>.app-header .app-header__population{order:2;flex:0 0 auto;margin:0;padding:0 .2rem;font-size:var(--text-xs)}.app-shell.app-shell--interface-v2 .app-header__brand-cluster{display:flex;order:4;margin-left:auto}.app-shell.app-shell--interface-v2 .app-header__brand-cluster>:not(.navigation-trigger){display:none}.app-shell.app-shell--interface-v2>.app-header .app-header__command-context,.app-shell.app-shell--interface-v2>.app-header .app-header__profile{display:none}.app-shell.app-shell--interface-v2>.app-main{grid-column:2;grid-row:2;width:100%;margin:0;border:0}.app-shell.app-shell--interface-v2>.main-nav--mobile{display:none}.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-page__header{top:auto;bottom:.5rem;width:8.6rem;padding:.4rem;min-height:0;pointer-events:none}.app-shell.app-shell--interface-v2 .village-page__header h1{font-size:1.3rem;margin:0}}@media(max-width:63.999rem)and (orientation:landscape){.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-page__header{width:13rem;height:auto;min-height:0;align-items:center;gap:.45rem;padding:.45rem}.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-page__portrait{width:4rem;height:4rem;flex:0 0 4rem}.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-page__header h1{font-size:1.65rem;line-height:1}.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-page__coordinates{margin:.12rem 0 0;font-size:var(--text-2xs)}}@media(max-width:63.999rem){html:has(.app-shell.app-shell--interface-v2),body:has(.app-shell.app-shell--interface-v2){width:100%;height:100%;min-height:100%;overflow:hidden;overscroll-behavior:none}.app-shell.app-shell--interface-v2.app-shell--game{display:block;position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100dvh;min-height:0;max-height:none;overflow:hidden;background:var(--v2-canvas)}.app-shell.app-shell--interface-v2.app-shell--game>*:not(.orientation-lock){visibility:visible;pointer-events:auto}.app-shell.app-shell--interface-v2 .orientation-lock{display:none}.app-shell.app-shell--interface-v2>.game-sidebar{position:fixed;z-index:36;inset:calc(.4rem + env(safe-area-inset-top)) auto auto calc(.4rem + env(safe-area-inset-left));display:block;width:2.7rem;height:auto;min-width:0;padding:0;border:0;background:transparent;box-shadow:none;pointer-events:none}.app-shell.app-shell--interface-v2 .game-sidebar__identity,.app-shell.app-shell--interface-v2 .game-sidebar__brand{display:grid;width:2.7rem;height:2.7rem;min-height:2.7rem;place-items:center;padding:0;border:1px solid color-mix(in srgb,var(--ui-accent) 72%,var(--ui-border));border-radius:.75rem;background:#071c19c7;box-shadow:0 .35rem 1rem #00000038,inset 0 1px #ffffff12;pointer-events:auto}.app-shell.app-shell--interface-v2 .game-sidebar__brand>.game-sidebar__mark{position:static;display:grid;width:2.1rem;height:2.1rem;place-items:center;overflow:visible;clip:auto;clip-path:none;color:var(--v2-accent);font-size:var(--text-xs);font-weight:800;letter-spacing:.02em}.app-shell.app-shell--interface-v2 .game-sidebar__footer{position:fixed;right:auto;bottom:calc(.45rem + env(safe-area-inset-bottom));left:calc(.45rem + env(safe-area-inset-left));display:flex;gap:.25rem;width:auto;padding:0;border:0;background:transparent;box-shadow:none;pointer-events:auto}.app-shell.app-shell--interface-v2 .game-sidebar__footer a,.app-shell.app-shell--interface-v2 .game-sidebar__footer button{display:grid;width:2.65rem;height:2.65rem;min-height:2.65rem;place-items:center;padding:0;border:1px solid color-mix(in srgb,var(--ui-border) 88%,transparent);border-radius:.75rem;background:#071c19c7;color:var(--v2-muted)}.app-shell.app-shell--interface-v2 .game-sidebar__footer a:hover,.app-shell.app-shell--interface-v2 .game-sidebar__footer a:focus-visible,.app-shell.app-shell--interface-v2 .game-sidebar__footer button:hover,.app-shell.app-shell--interface-v2 .game-sidebar__footer button:focus-visible{border-color:var(--v2-accent);color:var(--v2-ink);background:#19453bdb}.app-shell.app-shell--interface-v2 .game-sidebar__footer span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.app-shell.app-shell--interface-v2>.app-header{position:fixed;z-index:30;inset:0 0 auto 0;display:block;width:100%;height:5.1rem;min-height:0;padding:0;border:0;background:linear-gradient(180deg,rgb(4 22 22 / 91%),rgb(4 22 22 / 56%) 72%,transparent);box-shadow:none;pointer-events:none}.app-shell.app-shell--interface-v2>.app-header .app-header__brand-cluster{position:absolute;top:calc(.4rem + env(safe-area-inset-top));right:calc(.4rem + env(safe-area-inset-right));left:auto;display:block;width:auto;pointer-events:auto}.app-shell.app-shell--interface-v2>.app-header .app-header__brand-cluster>.brand,.app-shell.app-shell--interface-v2>.app-header .app-header__brand-cluster>.quick-navigation:not([open]){display:none}.app-shell.app-shell--interface-v2>.app-header .navigation-trigger--header{display:grid;width:2.65rem;height:2.65rem;place-items:center;padding:0;border:1px solid color-mix(in srgb,var(--ui-border) 92%,transparent);border-radius:.75rem;background:#071c19c7;color:var(--v2-ink)}.app-shell.app-shell--interface-v2>.app-header .app-header__breadcrumb{position:absolute;top:calc(.72rem + env(safe-area-inset-top));left:3.25rem;display:flex;align-items:center;gap:.35rem;max-width:calc(100% - 6.4rem);min-width:0;overflow:hidden;color:#f4f0ddc7;font-size:var(--text-xs);white-space:nowrap;pointer-events:auto}.app-shell.app-shell--interface-v2>.app-header .app-header__breadcrumb strong{overflow:hidden;color:var(--v2-ink);text-overflow:ellipsis}.app-shell.app-shell--interface-v2>.app-header .app-header__command-context,.app-shell.app-shell--interface-v2>.app-header .app-header__details,.app-shell.app-shell--interface-v2>.app-header .app-header__profile,.app-shell.app-shell--interface-v2>.app-header .onboarding-launcher{display:none}.app-shell.app-shell--interface-v2>.app-header .app-header__population{position:absolute;top:calc(.6rem + env(safe-area-inset-top));right:calc(6.35rem + env(safe-area-inset-right));display:inline-flex;align-items:center;gap:.2rem;padding:0;border:0;color:var(--v2-ink);font-size:var(--text-2xs);pointer-events:auto}.app-shell.app-shell--interface-v2>.app-header .app-header__population small{display:none}.app-shell.app-shell--interface-v2>.app-header .app-header__population strong{font-size:var(--text-xs);white-space:nowrap}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources{position:absolute;top:calc(3rem + env(safe-area-inset-top));right:calc(.4rem + env(safe-area-inset-right));left:calc(.4rem + env(safe-area-inset-left));display:flex;align-items:stretch;gap:.22rem;width:auto;max-width:none;height:2rem;min-width:0;padding:0;overflow:hidden;border:0;background:transparent;pointer-events:auto}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources .resource-bar__item{display:grid;flex:1 1 0;width:auto;min-width:0;max-width:none;min-height:2rem;padding:.2rem .28rem;border:1px solid rgb(92 148 126 / 42%)!important;border-radius:.55rem;background:#071c19cc;box-shadow:0 .25rem .7rem #00000029;font-size:var(--text-2xs);line-height:1.05}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources .resource-bar__item>*{min-width:0}.app-shell.app-shell--interface-v2>.app-main{position:fixed;z-index:1;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100dvh;min-height:0;max-height:none;margin:0;padding:0;overflow:hidden;background:var(--v2-canvas)}.app-shell.app-shell--interface-v2 .interface-v2-primary-view,.app-shell.app-shell--interface-v2 .interface-v2-primary-view>.game-page,.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-page,.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-overview,.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-map-scene,.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-map-scene__viewport,.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-map-scene__canvas,.app-shell.app-shell--interface-v2 .interface-v2-primary-view .map-page,.app-shell.app-shell--interface-v2 .interface-v2-primary-view .map-page .world-map{width:100%;height:100%;min-height:0;max-height:none;margin:0;overflow:hidden}.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-page,.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-map-scene{display:block;position:relative}.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-page__header{top:calc(6.05rem + env(safe-area-inset-top));left:calc(.45rem + env(safe-area-inset-left));width:min(10.8rem,calc(100% - .9rem));min-height:3rem;height:auto;padding:.35rem .45rem;gap:.35rem;border:1px solid rgb(255 239 180 / 42%);border-radius:.7rem;background:#071c19c7;box-shadow:0 .45rem 1rem #0003;pointer-events:none}.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-page__portrait{width:2.25rem;height:2.25rem;flex:0 0 2.25rem;border-radius:.45rem}.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-page__header h1{margin:0;font-size:1.08rem;line-height:1}.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-page__header>div{min-width:0}.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-page__coordinates{font-size:var(--text-2xs);line-height:1.15}.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-page__coordinates{margin-top:.1rem}.app-shell.app-shell--interface-v2>.main-nav--mobile{position:fixed;z-index:35;inset:auto 50% calc(.4rem + env(safe-area-inset-bottom)) auto;display:flex;width:auto;height:auto;min-height:0;margin:0;padding:0;gap:.22rem;border:0;background:transparent;box-shadow:none;transform:translate(50%);pointer-events:auto}.app-shell.app-shell--interface-v2>.main-nav--mobile a,.app-shell.app-shell--interface-v2>.main-nav--mobile .main-nav__menu{display:grid;width:3rem;height:2.85rem;min-height:2.85rem;place-items:center;gap:.14rem;padding:.35rem;border:1px solid rgb(255 239 180 / 38%);border-radius:.7rem;background:#071c19c7;color:var(--v2-muted);box-shadow:0 .35rem .9rem #0003}.app-shell.app-shell--interface-v2>.main-nav--mobile a:hover,.app-shell.app-shell--interface-v2>.main-nav--mobile a:focus-visible,.app-shell.app-shell--interface-v2>.main-nav--mobile .main-nav__menu:hover,.app-shell.app-shell--interface-v2>.main-nav--mobile .main-nav__menu:focus-visible,.app-shell.app-shell--interface-v2>.main-nav--mobile a.navigation-trigger--current{border-color:var(--v2-accent);background:#19453beb;color:var(--v2-ink)}.app-shell.app-shell--interface-v2>.main-nav--mobile .main-nav__icon{width:1.12rem;height:1.12rem}.app-shell.app-shell--interface-v2>.main-nav--mobile span{display:block;max-width:100%;overflow:hidden;color:inherit;font-size:var(--text-2xs);line-height:1;text-overflow:ellipsis;white-space:nowrap}.app-shell.app-shell--interface-v2.app-shell--context-route>.app-main{top:0;right:0;bottom:0;left:0;padding:0}.app-shell.app-shell--interface-v2 .interface-v2-context-stage{position:fixed;z-index:24;top:0;right:0;bottom:0;left:0;display:grid;place-items:stretch;padding:calc(3.75rem + env(safe-area-inset-top)) .45rem calc(.45rem + env(safe-area-inset-bottom));background:#030e0e61}.app-shell.app-shell--interface-v2 .interface-v2-route-frame{width:100%;height:100%;max-height:none;min-height:0;border-radius:.85rem;background:#0c2724f5}.app-shell.app-shell--interface-v2 .interface-v2-route-frame__header{min-height:3.55rem!important;padding:.55rem .65rem!important}.app-shell.app-shell--interface-v2 .interface-v2-route-frame__header strong{font-size:1rem!important}.app-shell.app-shell--interface-v2 .interface-v2-route-frame__body{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:.75rem .65rem 1rem!important}.app-shell.app-shell--interface-v2 .context-window-dock{right:.45rem!important;bottom:calc(3.8rem + env(safe-area-inset-bottom))!important;left:.45rem!important;max-width:none!important;padding:.35rem!important;border:1px solid rgb(255 239 180 / 38%)!important;border-radius:.7rem!important;background:#071c19e5!important}.app-shell.app-shell--interface-v2>.app-main:has(.context-window-dock){padding-bottom:0!important}}@media(min-width:64rem){.app-shell.app-shell--interface-v2 .village-status-rail{right:5.15rem;z-index:21}}@media(min-width:64rem){.app-shell.app-shell--interface-v2.app-shell--game{grid-template-columns:minmax(0,1fr);grid-template-rows:4.7rem minmax(0,1fr)!important}.app-shell.app-shell--interface-v2>.game-sidebar{display:none}.app-shell.app-shell--interface-v2>.app-header{grid-column:1;grid-row:1;position:sticky;display:grid;grid-template-columns:max-content minmax(9rem,13rem) minmax(0,1fr) max-content max-content max-content;align-items:center;gap:.55rem;min-width:0;padding-inline:1.05rem}.app-shell.app-shell--interface-v2>.app-header .app-header__brand-cluster{grid-column:1;grid-row:1;display:flex;align-items:center;min-width:max-content}.app-shell.app-shell--interface-v2>.app-header .app-header__brand-cluster>.brand{display:flex;align-items:baseline;gap:.42rem;min-width:max-content;text-decoration:none}.app-shell.app-shell--interface-v2>.app-header .app-header__brand-cluster>.quick-navigation:not([open]),.app-shell.app-shell--interface-v2>.app-header .navigation-trigger--header{display:none}.app-shell.app-shell--interface-v2>.app-header .app-header__breadcrumb{grid-column:2;grid-row:1;min-width:0;white-space:nowrap}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources{position:absolute;z-index:1;left:50%;grid-column:auto;grid-row:auto;display:grid;grid-template-columns:repeat(4,minmax(8.8rem,1fr));width:min(48rem,calc(100% - 34rem));min-width:34rem;max-width:48rem;margin:0;transform:translate(-50%)}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources .resource-bar__item,.app-shell.app-shell--interface-v2>.app-header .app-header__population{min-height:2.85rem;border:1px solid color-mix(in srgb,var(--v2-border) 92%,transparent);border-radius:.65rem;background:#10342feb;box-shadow:inset 0 1px #ffffff0f,0 .25rem .8rem #0000001f}.app-shell.app-shell--interface-v2>.app-header .app-header__population{grid-column:6;grid-row:1;display:inline-flex;align-items:center;gap:.35rem;min-width:8.5rem;padding:.35rem .7rem;border-left:1px solid color-mix(in srgb,var(--v2-border) 92%,transparent)}.app-shell.app-shell--interface-v2>.app-header .app-header__profile{grid-column:5;grid-row:1;z-index:70}.app-shell.app-shell--interface-v2>.app-header .app-header__command-context,.app-shell.app-shell--interface-v2>.app-header .app-header__details,.app-shell.app-shell--interface-v2>.app-header .onboarding-launcher{display:none}.app-shell.app-shell--interface-v2>.app-main{grid-column:1;grid-row:2}.app-shell.app-shell--interface-v2 .scene-navigation{position:fixed;z-index:38;top:5.35rem;left:50%;display:flex;align-items:stretch;gap:.22rem;padding:.35rem;border:1px solid color-mix(in srgb,var(--v2-border) 90%,transparent);border-radius:.8rem;background:#071c19eb;box-shadow:0 .75rem 1.8rem #00000040,inset 0 1px #ffffff0f;transform:translate(-50%)}.app-shell.app-shell--interface-v2 .scene-navigation__action{display:grid;grid-template-rows:2.35rem auto;place-items:center;gap:.12rem;min-width:4.55rem;min-height:4.25rem;padding:.25rem .18rem;border:1px solid transparent;border-radius:.62rem;background:transparent;color:var(--v2-muted);font-size:var(--text-2xs);font-weight:700;line-height:1;white-space:nowrap;text-decoration:none;cursor:pointer;transition:background var(--motion-menu) var(--motion-ease),border-color var(--motion-menu) var(--motion-ease),color var(--motion-menu) var(--motion-ease),transform var(--motion-menu) var(--motion-ease)}.app-shell.app-shell--interface-v2 .scene-navigation__action img{width:2.15rem;height:2.15rem;object-fit:contain;filter:drop-shadow(0 .18rem .3rem rgb(0 0 0 / 35%))}.app-shell.app-shell--interface-v2 .scene-navigation__action:hover,.app-shell.app-shell--interface-v2 .scene-navigation__action:focus-visible,.app-shell.app-shell--interface-v2 .scene-navigation__action.is-active{border-color:var(--v2-accent);background:#19453beb;color:var(--v2-ink);transform:translateY(-.08rem)}.app-shell.app-shell--interface-v2 .scene-navigation__action--secondary{min-width:3.85rem}.app-shell.app-shell--interface-v2 .village-status-rail{top:6.35rem;right:5.3rem;bottom:auto;width:8.4rem;align-items:stretch;gap:.38rem}.app-shell.app-shell--interface-v2 .village-status-rail__group{gap:.32rem}.app-shell.app-shell--interface-v2 .village-status-rail__tile{display:grid;grid-template-columns:2.25rem minmax(0,1fr);place-items:center start;width:8.4rem;min-height:2.65rem;padding:.2rem .35rem;border-radius:.4rem}.app-shell.app-shell--interface-v2 .village-status-rail__tile img{width:2rem;height:2rem}.app-shell.app-shell--interface-v2 .village-status-rail__tile strong{position:static;min-width:0;padding:0;background:transparent;font-size:var(--text-ms);line-height:1;text-align:left}.app-shell.app-shell--interface-v2 .village-status-rail__tile--movement{grid-template-columns:1.9rem minmax(0,1fr)}.app-shell.app-shell--interface-v2 .village-status-rail__tile--movement img{width:1.55rem;height:1.55rem}.app-shell.app-shell--interface-v2 .app-header__profile-menu-content{z-index:100;top:calc(100% + .7rem);right:0;min-width:12rem;padding:.35rem;border:1px solid var(--v2-accent);border-radius:.65rem;background:#071c19fa;box-shadow:0 1rem 2rem #00000061}.app-shell.app-shell--interface-v2 .app-header__profile-chevron{display:inline-grid;width:1.25rem;height:1.25rem;place-items:center;border:1px solid color-mix(in srgb,var(--v2-accent) 75%,transparent);border-radius:50%;color:var(--v2-accent);font-size:1rem;line-height:1;transition:transform var(--motion-menu) var(--motion-ease),background var(--motion-menu) var(--motion-ease)}.app-shell.app-shell--interface-v2 .app-header__profile-menu[open] .app-header__profile-chevron{background:#d6ad632e;transform:rotate(180deg)}}@media(prefers-reduced-motion:reduce){.app-shell.app-shell--interface-v2 .scene-navigation__action,.app-shell.app-shell--interface-v2 .app-header__profile-chevron{transition:none}}@media(min-width:64rem){.app-shell.app-shell--interface-v2 .village-status-rail,.app-shell.app-shell--interface-v2 .village-status-rail__tile{width:11.5rem}.app-shell.app-shell--interface-v2 .village-status-rail__tile--movement{grid-template-columns:1.9rem minmax(0,1fr) auto}.app-shell.app-shell--interface-v2 .village-status-rail__movement-copy{display:grid;min-width:0;gap:.08rem}.app-shell.app-shell--interface-v2 .village-status-rail__movement-label,.app-shell.app-shell--interface-v2 .village-status-rail__movement-copy time{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-shell.app-shell--interface-v2 .village-status-rail__movement-label{color:var(--v2-ink);font-size:var(--text-xs);font-weight:700}.app-shell.app-shell--interface-v2 .village-status-rail__movement-copy time{color:var(--v2-muted);font-size:var(--text-2xs);font-variant-numeric:tabular-nums}.app-shell.app-shell--interface-v2 .village-status-rail__tile--movement strong{min-width:1.25rem;color:var(--v2-ink);font-size:var(--text-xs);text-align:right}}.app-shell.app-shell--interface-v2 .interface-v2-route-frame__header{min-height:3rem;padding:.4rem .6rem .4rem 1rem;background:var(--v2-surface-raised)}.app-shell.app-shell--interface-v2 .interface-v2-route-frame__header .eyebrow{display:none}.app-shell.app-shell--interface-v2 .interface-v2-route-frame__header strong{font-size:var(--text-xl)}.app-shell.app-shell--interface-v2 .interface-v2-route-frame__control{width:2.1rem;height:2.1rem;font-size:var(--text-lg);border-radius:var(--ui-radius-sm)}.app-shell.app-shell--interface-v2 .interface-v2-route-frame__body{padding:.75rem clamp(.6rem,1.2vw,1rem) 1rem;font-size:var(--text-md)}.app-shell.app-shell--interface-v2 .interface-v2-route-frame__body .game-page{gap:var(--panel-gap)}.app-shell.app-shell--interface-v2 .interface-v2-route-frame__body .game-page-header{min-height:0;padding:.15rem 0 .25rem;gap:.35rem .75rem}.app-shell.app-shell--interface-v2 .interface-v2-route-frame__body .game-page-header:before{display:none}.app-shell.app-shell--interface-v2 .interface-v2-route-frame__body .game-page-header h1,.app-shell.app-shell--interface-v2 .interface-v2-route-frame__body .game-page-header--illustrated h1{font-size:1.2rem;letter-spacing:0}.app-shell.app-shell--interface-v2 .interface-v2-route-frame__body .game-page-header__portrait{width:2.75rem;height:2.75rem}.app-shell.app-shell--interface-v2 .interface-v2-route-frame__body .game-page-header__description{font-size:var(--text-sm)}.app-shell.app-shell--interface-v2 .interface-v2-route-frame__body .game-section-header{margin-bottom:var(--space-2)}.app-shell.app-shell--interface-v2 .interface-v2-route-frame__body .game-section-header h2,.app-shell.app-shell--interface-v2 .interface-v2-route-frame__body .game-section-header h3{font-size:var(--text-lg)}.app-shell.app-shell--interface-v2 .interface-v2-route-frame__body .game-section-header__icon{width:1.75rem;height:1.75rem}.app-shell.app-shell--interface-v2 .interface-v2-route-frame__body :is(th,td){padding-block:.4rem}.app-shell.app-shell--interface-v2 .village-page .village-page__identity h1{font-size:clamp(1.35rem,2vw,2rem);overflow-wrap:anywhere;text-wrap:balance}@media(min-width:64rem){.app-shell.app-shell--interface-v2 .interface-v2-context-stage{display:grid;place-items:start center;padding:6.2rem 1rem 1rem}.app-shell.app-shell--interface-v2 .interface-v2-route-frame{width:min(100%,64rem);height:auto;max-height:100%;border-radius:.75rem}}@media(min-width:80rem){.app-shell.app-shell--interface-v2 .interface-v2-context-stage{padding-inline-start:24rem}}.app-shell.app-shell--interface-v2 .interface-v2-route-frame__controls{display:inline-flex;flex-wrap:nowrap}.app-shell.app-shell--interface-v2 .interface-v2-route-frame__body .construction-table :is(th,td),.app-shell.app-shell--interface-v2 .interface-v2-route-frame__body .report-table :is(th,td){padding:.35rem .5rem}.app-shell.app-shell--interface-v2 .interface-v2-route-frame__body .game-page-header--chrome{padding:0}.app-shell.app-shell--interface-v2 .interface-v2-route-frame__body .game-page-header--chrome .game-page-header__description{margin:0}@media(min-width:64rem){.app-shell.app-shell--interface-v2.app-shell--game>.app-main:before{content:"";position:absolute;z-index:1;inset:0 0 auto;height:7.8rem;background:linear-gradient(180deg,#071c19b8,#071c1961 60%,#071c1900);pointer-events:none}.app-shell.app-shell--interface-v2.app-shell--game .village-status-rail__group--units{top:calc(var(--game-header-height, 4.7rem) + .7rem);transform:none}.app-shell.app-shell--interface-v2 .interface-v2-context-stage{padding-top:8.3rem}}.app-shell--interface-v2 .app-header__details-summary,.app-shell--interface-v2 .village-switcher select,.app-shell--interface-v2 .app-header .navigation-trigger--header,.app-shell--interface-v2 .app-header__profile-link,.app-shell--interface-v2 .app-header__profile-menu-content :is(a,button),:is(.app-shell--interface-v2,[data-interface=v2]) .mobile-navigation-drawer :is(.world-exit,.motion-preference-toggle,.theme-preference-toggle){transition:color var(--motion-fast) var(--motion-ease),background-color var(--motion-fast) var(--motion-ease),border-color var(--motion-fast) var(--motion-ease)}.app-shell--interface-v2 .app-header .brand .brand__name{transition:color var(--motion-fast) var(--motion-ease)}.app-shell--interface-v2 .app-header .brand:hover .brand__name,.app-shell--interface-v2 .app-header .brand:focus-visible .brand__name{color:var(--v2-accent)}.app-shell--interface-v2 .app-header__details-summary:hover,.app-shell--interface-v2 .village-switcher select:hover,:is(.app-shell--interface-v2,[data-interface=v2]) .mobile-navigation-drawer :is(.world-exit,.motion-preference-toggle,.theme-preference-toggle):hover:not(:disabled){border-color:var(--v2-accent);background-color:var(--v2-surface-raised);color:var(--v2-ink)}.app-shell--interface-v2 .app-header .navigation-trigger--header:hover{border-color:var(--v2-accent)!important;background:var(--v2-surface-raised)!important}:is(.app-shell--interface-v2,[data-interface=v2]) .mobile-navigation-drawer :is(.motion-preference-toggle,.theme-preference-toggle)[aria-pressed=true]:hover{background-color:var(--ui-accent-soft)}.app-shell.app-shell--interface-v2>.app-header,.app-shell.app-shell--interface-v2 .world-map,.app-shell.app-shell--interface-v2 .interface-v2-route-frame *{-webkit-backdrop-filter:none;backdrop-filter:none}.app-update-notice{position:fixed;z-index:10500;right:var(--space-4);bottom:calc(var(--scene-bottom-bar, env(safe-area-inset-bottom, 0px)) + var(--space-3));left:var(--space-4);display:flex;width:fit-content;align-items:center;gap:var(--space-3);margin-inline:auto;padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);border:1px solid var(--v2-border, #315d53);border-radius:var(--ui-radius-lg);background:var(--v2-surface-raised, #173b36);box-shadow:var(--ui-shadow-md);color:var(--v2-ink, #f4f0dd);font-family:var(--font-ui);font-size:var(--text-sm)}.app-update-notice__action{flex:none;min-height:var(--control-h-sm);padding:0 var(--space-3);border:1px solid var(--v2-accent, #d8b367);border-radius:var(--ui-radius-md);background:var(--v2-accent, #d8b367);color:var(--v2-canvas, #071b1b);font:inherit;font-weight:650;cursor:pointer}.app-update-notice__action:focus-visible{outline:2px solid var(--v2-accent, #d8b367);outline-offset:2px}.game-number--interactive{border-radius:var(--ui-radius-sm);cursor:help}.game-number--abbreviated{text-decoration:underline dotted color-mix(in srgb,currentColor 45%,transparent);text-underline-offset:.2em}.game-number--interactive:focus-visible{outline:2px solid var(--v2-accent, #d8b367);outline-offset:2px}.game-number-tooltip{position:fixed;z-index:12000;max-width:min(18rem,calc(100vw - 2 * var(--space-2)));padding:var(--space-1) var(--space-2);border:1px solid var(--v2-border, #315d53);border-radius:var(--ui-radius-md);background:var(--v2-surface-raised, #173b36);box-shadow:var(--ui-shadow-md);color:var(--v2-ink, #f4f0dd);font-family:var(--font-ui);font-size:var(--text-sm);font-variant-numeric:tabular-nums;line-height:1.35;pointer-events:none;transform:translate(-50%);white-space:nowrap;animation:game-number-tooltip-in var(--motion-fast) var(--motion-ease) both}@keyframes game-number-tooltip-in{0%{opacity:0}}.village-queues__title{animation:village-queue-state-in var(--motion-panel) var(--motion-ease) both}@keyframes village-queue-state-in{0%{opacity:0;transform:translateY(.15rem)}}.app-shell--interface-v2 .interface-v2-route-frame :is(.primary-button,.interior-action):disabled,.app-shell--interface-v2 .interface-v2-route-frame :is(.primary-button,.interior-action)[aria-disabled=true]{border-color:var(--v2-border);background:var(--v2-surface-raised);box-shadow:none;color:var(--v2-muted);cursor:not-allowed;opacity:1}.report-actions :is(.primary-button,.secondary-button){min-height:var(--control-h-sm);font-size:var(--text-sm);text-decoration:none}.village-page__name-row{display:flex;min-width:0;align-items:center;gap:var(--space-2)}.village-page__name-row h1{min-width:0}.app-header__village-switcher{color:var(--ui-text)}.app-shell.app-shell--interface-v2 .scene-navigation__action{position:relative}.scene-navigation__badge{position:absolute;top:.15rem;right:.2rem;display:inline-grid;min-width:1.1rem;height:1.1rem;place-items:center;padding:0 .25rem;border:1px solid var(--v2-surface, #102c2a);border-radius:999px;background:var(--v2-accent, #d8b367);color:var(--v2-canvas, #071b1b);font-size:var(--text-xs);font-weight:700;font-variant-numeric:tabular-nums;line-height:1;pointer-events:none}.app-header__economy{display:contents}.app-shell.app-shell--interface-v2>.app-header:has(.app-header__profile-menu[open]){z-index:11000!important;overflow:visible!important}.app-shell.app-shell--interface-v2 .village-issues-launcher--header{position:relative;inset:auto;display:grid;flex:0 0 auto;place-items:center;width:2.75rem;height:2.75rem;min-width:0;padding:0;border:1px solid var(--v2-border);border-radius:.65rem;background:var(--ui-surface-raised, #10342f);color:var(--v2-ink);transform:none;pointer-events:auto}.app-shell.app-shell--interface-v2 .village-issues-launcher--header>span{display:none}.app-shell.app-shell--interface-v2 .village-issues-launcher--header>strong{position:absolute;top:-.3rem;right:-.3rem;display:grid;place-items:center;min-width:1.15rem;min-height:1.15rem;padding:.08rem .22rem;border-radius:.4rem;background:var(--v2-accent);color:#17251e;font-size:var(--text-xs);font-variant-numeric:tabular-nums}.app-shell.app-shell--interface-v2 .village-status-rail{display:contents}.app-shell.app-shell--interface-v2 .village-status-rail__group{position:fixed;z-index:21;right:calc(.7rem + env(safe-area-inset-right));width:11.5rem;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.app-shell.app-shell--interface-v2 .village-status-rail__group--units{top:calc(50% + var(--game-header-height, 4.7rem) / 2);max-height:max(3rem,calc(100dvh - 20rem));transform:translateY(-50%)}.app-shell.app-shell--interface-v2 .village-status-rail__group--movements{top:calc(var(--game-header-height, 4.7rem) + .7rem);max-height:25dvh;padding-top:0;border-top:0}@media(min-width:64rem){.app-shell.app-shell--interface-v2>.app-header{grid-template-columns:max-content max-content minmax(0,1fr) max-content max-content!important}.app-shell.app-shell--interface-v2>.app-header .app-header__brand-cluster{gap:.65rem}.app-shell.app-shell--interface-v2>.app-header .app-header__economy{grid-column:3;grid-row:1;display:grid;grid-template-columns:minmax(0,1fr) max-content;align-items:center;gap:.35rem;width:min(100%,49rem);min-width:0;justify-self:center}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources{position:static;grid-column:1;grid-row:1;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;min-width:0;max-width:none;transform:none}.app-shell.app-shell--interface-v2>.app-header .app-header__population{grid-column:2;grid-row:1;min-width:7rem;white-space:nowrap}}@media(min-width:64rem)and (max-width:79.999rem){.app-shell.app-shell--interface-v2>.app-header{grid-template-columns:max-content minmax(0,1fr) max-content max-content!important;gap:.4rem;padding-inline:.65rem!important}.app-shell.app-shell--interface-v2>.app-header .app-header__breadcrumb{display:none!important}.app-shell.app-shell--interface-v2>.app-header .app-header__economy{grid-column:2}.app-shell.app-shell--interface-v2>.app-header .app-header__profile{grid-column:4!important}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources .resource-bar__item{padding-inline:.3rem}}@media(max-width:63.999rem){.app-shell.app-shell--interface-v2>.app-header .village-issues-launcher--header{position:fixed;top:calc(.4rem + env(safe-area-inset-top));left:calc(3.3rem + env(safe-area-inset-left));width:2.65rem;height:2.65rem}.app-shell.app-shell--interface-v2>.app-header .app-header__breadcrumb{left:calc(6.4rem + env(safe-area-inset-left));max-width:calc(100% - 18rem - env(safe-area-inset-left) - env(safe-area-inset-right))}.app-shell.app-shell--interface-v2>.app-header .app-header__economy{position:absolute;top:calc(3.25rem + env(safe-area-inset-top));right:calc(.4rem + env(safe-area-inset-right));left:calc(.4rem + env(safe-area-inset-left));display:grid;grid-template-columns:minmax(0,1fr) max-content;align-items:stretch;gap:.22rem;pointer-events:auto}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources{position:static;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible;height:auto}.app-shell.app-shell--interface-v2>.app-header .app-header__population{position:static;min-width:0;padding:.2rem .25rem;border:1px solid rgb(92 148 126 / 42%);border-radius:.55rem;background:#071c19cc}.app-shell.app-shell--interface-v2>.app-header .app-header__population-icon{display:none}.app-shell.app-shell--interface-v2>.app-header .app-header__population strong{font-size:var(--text-2xs)}.app-shell.app-shell--interface-v2 .village-status-rail__group{right:calc(.4rem + env(safe-area-inset-right));width:3.2rem}.app-shell.app-shell--interface-v2 .village-status-rail__group--units .village-status-rail__tile{width:3.2rem}.app-shell.app-shell--interface-v2 .village-status-rail__group--movements{width:8.4rem;top:calc(var(--scene-nav-bottom, 8.2rem) + .65rem)}.app-shell.app-shell--interface-v2 .village-status-rail__tile--movement{display:grid;grid-template-columns:1.5rem minmax(0,1fr) auto;gap:.2rem;width:100%;min-height:2.5rem;padding:.2rem}.app-shell.app-shell--interface-v2 .village-status-rail__movement-copy{display:grid;min-width:0;font-size:var(--text-2xs)}.app-shell.app-shell--interface-v2 .village-status-rail__movement-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-shell.app-shell--interface-v2 .village-status-rail__tile--movement strong{position:static;font-size:var(--text-xs)}}@media(max-width:63.999rem){.app-shell.app-shell--interface-v2>.app-header .app-header__brand-cluster{display:flex;align-items:flex-start;gap:.3rem}.app-shell.app-shell--interface-v2>.app-header .app-header__economy{display:contents}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources{position:absolute;top:calc(3.1rem + env(safe-area-inset-top));right:calc(.4rem + env(safe-area-inset-right));left:calc(.4rem + env(safe-area-inset-left));display:flex;flex-wrap:nowrap;gap:.22rem;height:2rem;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;pointer-events:auto}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources::-webkit-scrollbar{display:none}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources .resource-bar__item{flex:1 0 auto;align-content:center;min-width:4.9rem;padding:.15rem .3rem;font-size:var(--text-xs);font-variant-numeric:tabular-nums;white-space:nowrap;scroll-snap-align:start}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources .resource-bar__amount{font-size:var(--text-xs);line-height:1.15;font-variant-numeric:tabular-nums;overflow-wrap:normal;white-space:nowrap}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources .resource-bar__rate{padding-left:1.25rem;font-size:var(--text-xs);line-height:1.15;font-variant-numeric:tabular-nums;white-space:nowrap}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources .resource-bar__grain-breakdown{position:fixed;top:calc(var(--scene-nav-bottom) + .35rem);right:calc(.4rem + env(safe-area-inset-right));left:calc(.4rem + env(safe-area-inset-left));width:auto;max-width:none}.app-shell.app-shell--interface-v2>.app-header .app-header__population{position:absolute;top:calc(.65rem + env(safe-area-inset-top));right:calc(6.2rem + env(safe-area-inset-right));gap:.2rem!important;min-height:2.1rem;padding:0 .25rem;border:1px solid var(--v2-border)!important;border-radius:var(--ui-radius-sm);background:var(--v2-surface)}.app-shell.app-shell--interface-v2>.app-header .app-header__population-icon{display:inline-grid;place-items:center;color:var(--v2-accent)}.app-shell.app-shell--interface-v2>.app-header .app-header__population-icon .ui-icon{width:1rem;height:1rem}.app-shell.app-shell--interface-v2 .map-page.map-page--interface-v2 .map-v2-hud{top:calc(var(--scene-nav-bottom) + .5rem)}.app-shell.app-shell--interface-v2 .interface-v2-context-stage{padding-top:calc(var(--scene-nav-bottom) + .35rem)!important;padding-bottom:var(--scene-bottom-bar)!important}}@media(max-width:63.999rem){.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-page__header{top:calc(var(--scene-nav-bottom) + .35rem);bottom:auto;height:auto;align-items:center;width:fit-content;max-width:calc(100% - .9rem);min-height:0;padding:.25rem .5rem .25rem .3rem;gap:.4rem}.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-page__portrait{width:1.75rem;height:1.75rem;flex:0 0 1.75rem}.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-page__identity{display:flex;align-items:baseline;gap:.4rem;white-space:nowrap}.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-page__identity .eyebrow{display:none}.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-page__header h1{font-size:var(--text-md)}.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-page__coordinates{margin:0;font-size:var(--text-2xs)}.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-page__coordinates-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.app-shell.app-shell--interface-v2 .interface-v2-primary-view .village-page__coordinates-value:before{content:"·";margin-right:.4rem;color:var(--v2-muted)}}@media(min-width:64rem){.app-shell.app-shell--interface-v2.app-shell--game .village-status-rail{position:fixed;top:calc(var(--game-header-height, 4.7rem) + .7rem);right:calc(.7rem + env(safe-area-inset-right));z-index:21;display:flex;flex-direction:column;gap:.5rem;width:11.5rem;max-height:calc(100dvh - var(--game-header-height, 4.7rem) - 1.4rem);pointer-events:none}.app-shell.app-shell--interface-v2.app-shell--game .village-status-rail__group{position:static;width:100%;max-height:none;transform:none;pointer-events:auto}.app-shell.app-shell--interface-v2.app-shell--game .village-status-rail__group--movements{order:-1;flex:0 1 auto;max-height:30dvh}.app-shell.app-shell--interface-v2.app-shell--game .village-status-rail__group--units{flex:1 1 auto;min-height:0}}@media(max-width:63.999rem)and (max-height:30rem){.app-shell.app-shell--interface-v2{--scene-nav-height: 2.4rem}.app-shell.app-shell--interface-v2 .scene-navigation__action{grid-template-rows:1.5rem}.app-shell.app-shell--interface-v2 .scene-navigation__action>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}}.attack-alarm{position:fixed;z-index:60;top:calc(var(--mobile-sticky-header-height, var(--game-header-height, 3.5rem)) + var(--space-2));right:var(--space-4);left:var(--space-4);width:fit-content;max-width:calc(100vw - 2 * var(--space-2));margin-inline:auto;display:flex;flex-wrap:wrap;align-items:stretch;justify-content:center;gap:var(--space-2)}.attack-alarm__help{min-height:var(--control-h, 2.5rem);padding:var(--space-1) var(--space-3);border:1px solid var(--v2-accent);border-radius:var(--ui-radius-md);background:var(--v2-accent);box-shadow:var(--ui-shadow-md);color:var(--v2-canvas);font:700 var(--text-sm) / 1.25 var(--font-ui);cursor:pointer}.attack-alarm__help:hover{filter:brightness(1.08)}.attack-alarm__help:focus-visible{outline:2px solid var(--v2-ink);outline-offset:2px}.attack-alarm__help.is-sent{border-color:var(--v2-alarm-border);background:var(--v2-alarm-surface);color:var(--v2-ink)}.attack-alarm__link{position:relative;display:flex;align-items:center;gap:var(--space-2);min-height:var(--control-h, 2.5rem);padding:var(--space-1) var(--space-3);overflow:hidden;border:1px solid var(--v2-alarm-border);border-radius:var(--ui-radius-md);background:var(--v2-alarm-surface);box-shadow:var(--ui-shadow-md);color:var(--v2-ink);font-family:var(--font-ui);font-size:var(--text-sm);font-weight:650;line-height:1.25;text-decoration:none}.attack-alarm__link:after{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--v2-alarm-glow);content:"";opacity:0;pointer-events:none}.attack-alarm__link:hover,.attack-alarm__link:focus-visible{border-color:var(--v2-accent);outline:none}.attack-alarm__link:focus-visible{box-shadow:0 0 0 2px var(--v2-accent),var(--ui-shadow-md)}.attack-alarm__icon{flex:0 0 1.25rem;width:1.25rem;height:1.25rem;color:var(--v2-danger)}.attack-alarm__text{min-width:0;overflow-wrap:anywhere}.attack-alarm__countdown{color:var(--v2-danger);font-variant-numeric:tabular-nums;font-weight:750}.attack-alarm__more{flex:0 0 auto;padding:0 var(--space-2);border:1px solid var(--v2-alarm-border);border-radius:999px;color:var(--v2-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums;white-space:nowrap}.attack-alarm.is-signalling .attack-alarm__link{border-color:var(--v2-danger);box-shadow:0 0 0 2px var(--v2-danger),var(--ui-shadow-md)}.attack-alarm.is-signalling .attack-alarm__link:after{animation:attack-alarm-signal 1.1s var(--motion-ease) 2}@keyframes attack-alarm-signal{0%,to{opacity:0}35%{opacity:1}}.attack-alarm-enter-active,.attack-alarm-leave-active{transition:opacity var(--motion-panel) var(--motion-ease),transform var(--motion-panel) var(--motion-ease)}.attack-alarm-leave-active{transition-timing-function:var(--motion-ease-exit)}.attack-alarm-enter-from,.attack-alarm-leave-to{opacity:0;transform:translateY(-.5rem)}@media(min-width:64rem){.app-shell--interface-v2:has(>.scene-navigation) .attack-alarm{top:calc(5.35rem + 5.1rem + var(--space-2))}}@media(max-width:63.999rem){.attack-alarm{top:calc(var(--mobile-sticky-header-height, var(--game-header-height, 3.5rem)) + var(--space-1));right:var(--space-2);left:var(--space-2)}.app-shell--interface-v2:has(>.scene-navigation) .attack-alarm{top:calc(var(--scene-nav-bottom) + var(--space-1))}.attack-alarm__link{padding:var(--space-1) var(--space-2)}.attack-alarm{flex-wrap:nowrap}.attack-alarm__link{flex:1 1 auto;min-width:0}.attack-alarm__help{flex:none;padding-inline:var(--space-2);white-space:nowrap}}.app-shell.app-shell--interface-v2>.app-header .app-header__compact-resources .resource-bar__item.is-storage-warning{border-color:color-mix(in srgb,var(--v2-danger) 70%,transparent)}
