body:has(.app-shell){height:100dvh;overflow:hidden}.sidebar-layer{display:contents}html:has(.app-shell){scroll-padding:0}body:has(.app-shell){padding-bottom:0}.app-shell.app-shell{height:100dvh;min-height:0;padding-bottom:0;overflow:hidden}.app-shell .app-main{grid-template-rows:auto minmax(0,1fr);height:100%;min-height:0;display:grid}.app-shell #main-content{width:100%;max-width:none;height:100%;min-height:0;margin:0;padding:0;display:block;overflow:auto}.app-shell .route-loading{min-height:100%;color:var(--text-secondary);font-size:var(--font-small);place-items:center;margin:0;padding:24px;display:grid}@media (width>=1101px) and (aspect-ratio>16/9){.app-shell #main-content:has(:is(.scene-viewport-shell,.character-screen,.bank-screen)){max-width:calc(100dvh * 16 / 9 - var(--shell-sidebar-width));box-shadow:-1px 0 0 color-mix(in srgb, var(--line-brass) 50%, transparent), 1px 0 0 color-mix(in srgb, var(--line-brass) 50%, transparent), -18px 0 32px -18px #000000b8, 18px 0 32px -18px #000000b8;justify-self:center}.app-shell .app-main:has(>#main-content :is(.scene-viewport-shell,.character-screen,.bank-screen)){background-color:var(--timber-900);background-image:repeating-linear-gradient(0deg, transparent 0 3px, color-mix(in srgb, var(--line-soft) 20%, transparent) 3px 4px), repeating-linear-gradient(92deg, transparent 0 5px, color-mix(in srgb, var(--line-soft) 16%, transparent) 5px 6px), radial-gradient(ellipse at 50% 0, var(--surface-timber), transparent 75%);background-position:0 0;background-repeat:repeat;background-size:auto}}.app-shell #main-content>:is(.skills-screen,.combat-screen,.character-screen,.bank-screen,.shop-screen){aspect-ratio:auto;border-radius:0;width:100%;max-width:none;min-height:100%;margin:0}.app-shell #main-content.content--scene-first>:is(.combat-screen,.character-screen){scrollbar-gutter:auto;height:100%;overflow:auto}.app-shell #main-content>:is(.bank-screen,.shop-screen),.app-shell .skills-screen--farming{padding:16px}.app-shell #main-content.content--journey{overflow:hidden}.app-shell #main-content:has(.skills-screen:not(.skills-screen--farming)){overflow:hidden}.app-shell .sidebar{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line-brass) var(--surface-timber);height:100dvh;box-shadow:none;padding-top:0}.app-shell .sidebar>*{flex-shrink:0}.app-shell .sidebar nav .sidebar-skills__links a{min-height:44px}.sidebar-brand{border-bottom:1px solid var(--color-border);align-items:center;gap:12px;min-height:64px;margin-bottom:14px;display:flex}.sidebar-brand img{object-fit:contain}.sidebar-brand strong{font:600 1.4rem Cinzel,serif}.app-shell .sidebar-adventure{padding-top:0}.app-shell .sidebar-profile .player-portrait{flex-shrink:0}.app-shell .sidebar-profile{border-bottom:0;padding-bottom:4px}.app-shell .sidebar-profile--link{width:100%;min-height:0;color:var(--text-primary);cursor:pointer;background:0 0;border:0;padding-top:0}.app-shell .sidebar-profile--link .player-portrait{height:clamp(104px,15dvh,156px)}.sidebar-profile--link:focus-visible{outline:var(--focus-ring);outline-offset:3px}.sidebar-profile--link:hover .sidebar-profile__name strong{color:var(--color-accent-strong)}.sidebar-player__account{margin-top:4px}.sidebar-adventure-context{color:var(--text-secondary);font-size:var(--font-caption);margin-top:3px;display:block}.sidebar-travel-note,.sidebar-save-status{color:var(--text-muted);font-size:var(--font-caption);margin:0;padding:8px;line-height:1.5}.mobile-workshop{display:none}.workshop-activity{border-bottom:1px solid var(--color-border);gap:6px;padding:12px 8px;display:grid}.workshop-activity__open{min-height:44px;color:var(--text-primary);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:0;display:flex}.workshop-activity__open>span{flex:1;min-width:0;display:grid}.workshop-activity__open svg{width:16px;height:16px;color:var(--color-accent);flex:none}.workshop-activity__open small,.workshop-activity p{color:var(--text-secondary);font-size:var(--font-caption);margin:0}.workshop-activity__open strong{font-size:var(--font-small)}.workshop-activity .progress{height:6px}.workshop-activity .progress>span{display:none}.sidebar-activity-kind,.mobile-activity__kind{color:var(--text-muted);font-size:var(--font-caption);margin:0 0 4px}.sidebar-player{border-bottom:1px solid var(--color-border);padding-bottom:12px;display:grid}.sidebar-player__stats{border-bottom:1px solid var(--color-border);padding-bottom:8px;display:grid}.sidebar-player__gold{min-width:0;min-height:32px;font-size:var(--font-small);grid-template-columns:minmax(0,1fr) minmax(0,max-content);align-items:center;gap:8px;margin:0;padding:4px 28px 4px 8px;display:grid}.sidebar-player__gold dt{color:var(--text-secondary);align-items:center;gap:8px;display:flex}.sidebar-player__gold dt svg{width:16px;height:16px;color:var(--color-accent-strong);flex:none}.sidebar-player__gold dd{min-width:0;color:var(--color-accent-strong);font-variant-numeric:tabular-nums;text-align:right;overflow-wrap:anywhere;margin:0;font-weight:700}.sidebar-player__actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:12px;display:grid}.sidebar-player__actions>.sidebar-player__provisions{grid-column:1/-1}.sidebar-player__actions>.sidebar-player__equipment{gap:6px;padding:8px}.sidebar-player__actions>.sidebar-player__equipment>svg:last-child{display:none}.sidebar-player__equipment,.sidebar-player__provisions{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);width:100%;min-height:44px;color:var(--text-primary);font-size:var(--font-small);text-align:left;cursor:pointer;transition:background-color var(--duration-fast), border-color var(--duration-fast);background:0 0;align-items:center;gap:8px;padding:8px 12px;font-weight:600;display:flex}.sidebar-player__equipment>span,.sidebar-player__provisions>span{flex:1;min-width:0}.sidebar-player__actions svg{width:16px;height:16px;color:var(--color-accent);flex:none}.sidebar-player__equipment>svg:last-child,.sidebar-player__provisions>svg:last-child{width:14px;height:14px}.sidebar-player__equipment:hover,.sidebar-player__provisions:hover{border-color:var(--line-brass);background:var(--surface-timber-raised)}.sidebar-player__equipment:focus-visible,.sidebar-player__provisions:focus-visible{outline:var(--focus-ring);outline-offset:2px}.sidebar-player__provisions>span{gap:2px;display:grid}.sidebar-player__provisions strong{font:inherit}.sidebar-player__provisions small{color:var(--text-secondary);font-size:var(--font-caption);overflow-wrap:anywhere;font-weight:400}.sidebar-material-goal{color:var(--color-accent-strong);font-size:var(--font-caption);margin-top:3px;font-weight:400;display:block}.paused-trial-notice{border-top:1px solid var(--line-brass);flex-wrap:wrap;flex:1 0 100%;order:7;align-items:center;gap:8px 16px;padding-top:8px;display:flex}.paused-trial-notice>span{min-width:180px;font-size:var(--font-small);flex:1;gap:2px;display:grid}.paused-trial-notice small{color:var(--text-secondary);font-size:var(--font-caption)}.app-shell .sidebar-current{padding-block:16px}.app-shell .sidebar-current__label strong,.app-shell .sidebar-camp__detail small,.app-shell .sidebar-camp__detail strong{white-space:normal;overflow:visible}.app-shell .sidebar-camp{grid-template-rows:auto auto}.workspace-skill-status{border-block:1px solid var(--color-border);font-size:var(--font-small);padding:16px 8px}.workspace-skill-status>div:first-child{justify-content:space-between;align-items:center;gap:10px;display:flex}.workspace-skill-status .progress{height:6px;margin:8px 0}.workspace-skill-status .progress>span{display:none}.workspace-skill-status small{color:var(--text-secondary);font-size:var(--font-caption)}.sidebar-toggle,.sidebar-close,.sidebar-scrim{display:none}.topbar-objective{flex-basis:100%;min-width:0}.app-shell .topbar{z-index:15;background:var(--surface-timber);flex-wrap:wrap;gap:8px 14px;height:auto;min-height:72px;padding:8px 16px;display:flex;position:relative;top:auto}.location-navigation{flex:1;align-items:center;gap:12px;min-width:180px;display:flex}.location-navigation__copy{min-width:0}.location-navigation__copy>strong{overflow-wrap:anywhere;font:700 1.4rem/1.2 EB Garamond,serif}.location-trail{color:var(--text-muted);font-size:var(--font-caption);flex-wrap:wrap;align-items:center;gap:0 6px;display:flex}.location-trail>span{align-items:center;gap:6px;display:inline-flex}.location-trail button{min-height:24px;color:var(--color-accent-strong);cursor:pointer;font-size:inherit;background:0 0;border:0;padding:0}.location-trail button:hover{text-decoration:underline}.location-back{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);max-width:145px;min-height:44px;color:var(--text-secondary);font-size:var(--font-caption);cursor:pointer;text-align:left;background:0 0;flex:none;align-items:center;gap:5px;padding:5px 8px;display:flex}.location-back svg{flex:none;width:15px;height:15px;transform:rotate(180deg)}#workspace-controls{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.app-shell .topbar__right{gap:8px;margin-left:auto}.app-shell .topbar .connection-banner{flex-basis:100%;margin:0}.app-shell .topbar .mobile-activity{display:none}.app-shell #main-content .journey-screen:has(.scene-viewport-shell){width:100%;max-width:none;height:100%;min-height:0;margin:0;padding:0}.app-shell .journey-atlas{width:100%;height:100%;box-shadow:none;border:0;border-radius:0;overflow:hidden}.app-shell #main-content .skills-screen:not(.skills-screen--farming),.app-shell #main-content .skills-screen:not(.skills-screen--farming)>#skill-workspace,.app-shell #main-content :is(.profession-workspace,.profession-workspace__shell,.profession-scene,.mining-m1,.mining-m1__workspace,.mining-m1-scene,.smithing-m1,.smithing-m1__workspace,.smithing-m1-scene){width:100%;min-width:0;max-width:none;height:100%;min-height:0;box-shadow:none;border:0;border-radius:0;margin:0;padding:0}.app-shell #main-content :is(.profession-scene__world,.mining-m1-scene__world,.smithing-m1-scene__world){aspect-ratio:auto;width:100%;min-width:0;height:100%;min-height:0}.app-shell :is(.profession-scene__depth-label,.smithing-m1-scene__depth-label){display:none}.app-shell #main-content :is(.profession-inspector,.smithing-m1-inspector,.mining-m1-inspector){z-index:12;border:1px solid var(--line-brass);border-radius:var(--radius-md);background:#1c1a13f5;width:min(350px,100% - 40px);min-height:0;max-height:calc(100% - 40px);margin:0;padding:18px;position:absolute;inset:20px 20px auto auto;overflow:auto;box-shadow:0 14px 45px #0006}.app-shell #main-content :is(.profession-inspector__heading h3,.smithing-m1-inspector__heading h3,.mining-m1-inspector h3){font:700 1.5rem/1.2 EB Garamond,serif}.app-shell .combat-view-nav{display:none}.app-shell #main-content .combat-screen,.app-shell #main-content .character-screen{padding:16px}@media (width<=1500px){.app-shell .topbar{gap:6px 10px;padding:6px 12px}.app-shell .topbar__right>.harvest-indicator{width:44px}.location-navigation{min-width:220px}}@media (width<=1100px){.app-shell.app-shell{grid-template-columns:minmax(0,1fr);padding-bottom:0}.app-shell .app-main{grid-column:1}.app-shell .sidebar{z-index:51;width:min(310px,100vw - 40px);display:none}.app-shell .sidebar--open{display:flex}.app-shell .sidebar-profile .player-portrait{height:156px;display:block}.sidebar-toggle,.sidebar-close{border:1px solid var(--line-brass);border-radius:var(--radius-sm);min-height:44px;color:var(--text-primary);background:var(--surface-timber-raised);font-size:var(--font-small);justify-content:center;align-items:center;gap:6px;padding:6px 10px;display:inline-flex}.sidebar-toggle svg{width:16px}.sidebar-close{width:44px;margin-left:auto}.sidebar-scrim{z-index:50;background:#060c08aa;border:0;display:block;position:fixed;inset:0}.app-shell .topbar{gap:5px 8px;padding:6px 10px}.location-navigation{flex:calc(100% - 90px);gap:8px;min-width:0}.location-trail{display:none}.location-back{max-width:120px;font-size:12px}.location-navigation__copy>strong{font-size:1.25rem}#workspace-controls{flex-wrap:nowrap;flex:auto;order:2;min-width:max-content}#workspace-controls .workspace-control{padding-inline:8px;font-size:12px}.app-shell .topbar__right{display:none}.app-shell .topbar-objective{flex-basis:100%;order:4;display:block}.app-shell .topbar .mobile-activity{border:0;border-top:1px solid var(--color-border);width:100%;height:auto;min-height:54px;box-shadow:none;background:0 0;border-radius:0;flex-basis:100%;order:5;margin:0;padding:6px 0 0;display:flex;position:static}.app-shell .mobile-activity__summary{flex:1;min-width:0}.app-shell .mobile-activity__summary small{white-space:normal}.app-shell .mobile-activity .harvest-indicator{display:inline-flex}.app-shell .topbar .connection-banner{order:6}.app-shell .mobile-workshop:has(.workshop-activity){flex-basis:100%;order:6;display:block}.mobile-workshop .workshop-activity{border:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:4px 0}.mobile-workshop .workshop-activity .progress{grid-column:1/-1}.app-shell .toast{bottom:max(16px, env(safe-area-inset-bottom))}.app-shell .vault-inspector-drawer{max-height:calc(100dvh - 24px);bottom:10px}.app-shell #main-content :is(.profession-inspector,.smithing-m1-inspector,.mining-m1-inspector){width:auto;max-height:calc(100% - 20px);padding:14px;inset:auto 10px 10px}}@media (width<=480px){#workspace-controls .workspace-control{gap:4px}#workspace-controls .workspace-control svg{width:14px}}@media (width<=620px){.app-shell .topbar #workspace-controls{flex:0 auto}}@media (height<=500px){.app-shell .topbar{overscroll-behavior:contain;min-height:0;max-height:42dvh;overflow-y:auto}.app-shell .topbar .location-navigation{flex:190px}.app-shell .topbar #workspace-controls{flex:0 auto}.app-shell .journey-tracker{gap:6px 16px;padding-top:4px}.app-shell .journey-tracker__summary{flex-basis:240px}.app-shell .journey-tracker__next{font-size:var(--font-caption)}.app-shell .journey-tracker .objective-counts{font-size:var(--font-caption);gap:4px 12px}.app-shell .mobile-activity__kind,.app-shell .mobile-activity__summary>small{display:none}.app-shell .topbar .mobile-activity{min-height:44px;padding-top:0}.app-shell .mobile-workshop .workshop-activity{gap:2px}}.environment-scene{isolation:isolate;width:100%;min-width:0;height:100%;min-height:0;position:relative;overflow:hidden}.environment-scene__plane{transform-origin:0 0;pointer-events:none;position:absolute;top:0;left:0;overflow:visible}.environment-scene__background{z-index:-2147483647;object-fit:contain;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block;position:absolute;inset:0}.environment-scene__static-node,.environment-scene__static-effect{pointer-events:none;-webkit-user-select:none;user-select:none;display:block;position:absolute}.environment-scene__static-node[hidden],.environment-scene__static-effect[hidden],.environment-scene[data-renderer-status=ready] .environment-scene__static-node,.environment-scene[data-renderer-status=ready] .environment-scene__static-effect{display:none}.environment-scene__static-image,.environment-scene__static-particles,.environment-scene__static-tint{width:100%;height:100%;display:block;position:absolute;inset:0}.environment-scene__static-particles{overflow:visible}.environment-scene__static-image{object-fit:fill;-webkit-user-select:none;user-select:none}.environment-scene__static-tint{opacity:.72;mix-blend-mode:multiply;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.environment-scene__canvas{z-index:1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.environment-scene__canvas[hidden]{display:none}.environment-scene__canvas canvas{display:block;width:100%!important;height:100%!important}.environment-scene__anchors{z-index:2;pointer-events:none;position:absolute;inset:0}.environment-anchor{color:var(--text-primary);pointer-events:none;text-align:center;background:0 0;border:0;margin:0;padding:0;font:400 16px/1.5 "Source Sans 3",system-ui,sans-serif;position:absolute}button.environment-anchor:not(:disabled){cursor:pointer}.environment-anchor__hit{position:absolute;inset:0}button.environment-anchor>.environment-anchor__hit,button.environment-anchor>.environment-anchor__label{pointer-events:auto}.environment-anchor__outline{fill:#0000;stroke:#0000;stroke-width:2px;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.environment-anchor:hover>.environment-anchor__outline,.environment-anchor:focus-visible>.environment-anchor__outline,.environment-anchor[data-state=highlighted]>.environment-anchor__outline{fill:#d4b15d26;stroke:var(--color-accent)}.environment-anchor[data-state=disabled]{color:var(--text-muted)}.environment-anchor[data-state=disabled]>.environment-anchor__outline{fill:#0000;stroke:#0000}.environment-anchor:focus-visible{outline:none}.environment-anchor:focus-visible>.environment-anchor__label{outline:var(--focus-ring);outline-offset:3px}.environment-anchor:focus-visible:not(:has(.environment-anchor__label)){outline:var(--focus-ring);outline-offset:3px}.environment-anchor__label{white-space:nowrap;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:#121813f0;padding:5px 9px;font-size:clamp(12px,1.05vw,15px);position:absolute;transform:translate(-50%)}.environment-anchor__label strong{font-weight:400}.environment-anchor--label>.environment-anchor__label{transform:translate(-50%,-100%)}.environment-anchor--label>.environment-anchor__label:has(>span){white-space:normal;border-color:var(--line-brass);gap:2px;width:210px;max-width:min(210px,72vw);padding:8px 12px;display:grid;transform:translate(-50%)}.environment-anchor--label>.environment-anchor__label:has(>span) strong{overflow-wrap:anywhere;font:700 1.2rem EB Garamond,serif}@media (width<=700px),(height<=600px){.environment-anchor--label>.environment-anchor__label:has(>span){box-sizing:border-box;width:160px;padding:6px 8px}.environment-anchor--label>.environment-anchor__label:has(>span) strong{font-size:1.05rem}.environment-anchor--label:not(:hover):not(:focus)>.environment-anchor__label>span{display:none}}.environment-anchor[data-state=highlighted]>.environment-anchor__label{border-color:var(--color-accent)}.environment-anchor__marker{background:var(--color-accent-strong);width:30px;height:35px;color:var(--timber-900);border:2px solid var(--paper-100);border-radius:50%;font-size:23px;font-weight:700;position:absolute;top:-19px;left:calc(50% - 15px)}.environment-anchor--callout>.environment-anchor__outline{filter:drop-shadow(0 0 6px #d4b15d99);fill:#d4b15d16;stroke:var(--color-accent-strong)}.environment-anchor--callout:before{content:"";border:2px solid var(--timber-900);background:var(--color-accent-strong);border-radius:50%;width:12px;height:12px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 6px #ead28433}.environment-anchor--callout>.environment-anchor__label{border-color:var(--line-brass);white-space:normal;background:#121813f5;gap:2px;width:210px;padding:8px 12px;display:grid;box-shadow:0 6px 18px #0008}.environment-anchor--callout .environment-anchor__label strong{overflow-wrap:anywhere;font:700 1.2rem EB Garamond,serif}.environment-anchor__label small{color:var(--color-accent);font-size:var(--font-caption)}.environment-anchor__label>span{color:var(--text-secondary);font-size:var(--font-small)}@media (width<=700px){.environment-anchor--callout>.environment-anchor__label{width:184px}}.environment-scene__failure{z-index:2;color:#ffffffe0;max-width:min(28rem,100% - 1.5rem);font:inherit;pointer-events:none;background:#121416c2;border:1px solid #ffffff2e;border-radius:.35rem;margin:0;padding:.4rem .6rem;font-size:.75rem;line-height:1.3;position:absolute;bottom:.75rem;right:.75rem}@media (prefers-reduced-motion:reduce){.environment-scene *,.environment-scene :before,.environment-scene :after{transition:none!important;animation:none!important}}.scene-viewport-shell{width:100%;min-width:0;height:100%;min-height:0;position:relative;overflow:hidden}.scene-viewport{touch-action:pinch-zoom;width:100%;min-width:0;height:100%;min-height:0;overflow:clip}.scene-viewport:focus-visible{outline:var(--focus-ring);outline-offset:-4px}.scene-viewport__surface{width:100%;height:100%;position:relative}.scene-viewport__plane{isolation:isolate;-webkit-user-select:none;user-select:none;min-width:0;min-height:0;position:absolute}.scene-places{width:min(480px,100vw - 24px);max-height:85dvh;padding:20px;overflow:auto}.scene-places header{justify-content:space-between;align-items:center;gap:12px;display:flex}.scene-places p{color:var(--text-secondary);font-size:var(--font-small)}.scene-places__list{gap:8px;display:grid}.scene-places__list button{text-align:left;justify-content:space-between;gap:12px;display:flex}.scene-places__list small{max-width:45%;font-size:var(--font-caption)}.workspace-control{border:1px solid var(--line-brass);border-radius:var(--radius-sm);min-height:44px;color:var(--text-primary);background:var(--surface-timber-raised);font-size:var(--font-small);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:7px;padding:6px 10px;display:inline-flex}.workspace-control svg{width:17px;height:17px;color:var(--color-accent)}.content.content--journey{background:var(--surface-level-0);padding:0}.journey-screen--continent .scene-viewport{background:#00242b}.journey-screen{max-width:1500px;color:var(--text-primary);margin:auto;padding:16px 24px 24px}.journey-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;display:flex}.journey-heading>div{min-width:0}.journey-heading h1{overflow-wrap:anywhere;margin:0;font-size:clamp(1.7rem,3vw,2.25rem);line-height:1.15}.journey-breadcrumb{min-height:44px;color:var(--text-muted);font-size:var(--font-small);flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.journey-breadcrumb button{min-height:44px;color:var(--color-accent);cursor:pointer;background:0 0;border:0;padding:4px 0}.journey-breadcrumb button:hover{color:var(--color-accent-strong);text-decoration:underline}.journey-journal{flex-shrink:0}.journey-map-instruction{font-size:var(--font-small);align-items:center;gap:10px;margin-bottom:16px;display:flex}.journey-map-instruction svg{color:var(--color-accent)}.journey-map-instruction strong{color:var(--text-primary);font-weight:400}.journey-atlas{border:1px solid var(--line-brass);border-radius:var(--radius-md);overflow:hidden;box-shadow:0 12px 32px #0004}.journey-map-note{color:var(--text-muted);font-size:var(--font-small);margin:12px 0 0}.journey-tracker{border-top:1px solid var(--line-brass);flex-wrap:wrap;align-items:center;gap:8px 24px;padding:8px 0 2px;display:flex}.journey-tracker__summary{min-width:0;color:var(--text-primary);flex:240px;align-items:center;gap:10px;display:flex}.journey-tracker__summary svg{width:20px;height:20px;color:var(--color-accent);flex:none}.journey-tracker__summary span{overflow-wrap:anywhere;min-width:0;display:grid}.journey-tracker__summary small{font-size:var(--font-caption);color:var(--text-muted)}.journey-tracker__summary strong{font-size:var(--font-small)}.journey-tracker__next{color:var(--color-accent-strong);font-size:var(--font-small);margin-top:2px}.objective-counts{color:var(--text-secondary);font-size:var(--font-small);flex-wrap:wrap;gap:4px 16px;margin-top:8px;display:flex}.objective-counts strong{color:var(--color-accent-strong);white-space:nowrap;margin-left:6px}.objective-counts .is-complete,.objective-counts .is-complete strong{color:var(--color-success)}.journey-tracker .objective-counts{min-width:0;font-size:var(--font-small);flex:2 280px;grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));gap:8px 20px;margin:0;display:grid}.journey-tracker .objective-counts>span{overflow-wrap:anywhere;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:4px 8px;display:grid}.journey-tracker .objective-counts strong{font-variant-numeric:tabular-nums;margin:0}.journey-tracker progress{appearance:none;background:var(--surface-level-0);width:100%;height:4px;color:var(--color-accent);border:0;border-radius:2px;grid-column:1/-1;display:block;overflow:hidden}.journey-tracker progress::-webkit-progress-bar{background:var(--surface-level-0)}.journey-tracker progress::-webkit-progress-value{background:var(--color-accent)}.journey-tracker progress::-moz-progress-bar{background:var(--color-accent)}.journey-tracker .is-complete progress{color:var(--color-success)}.journey-tracker .is-complete progress::-webkit-progress-value{background:var(--color-success)}.journey-tracker .is-complete progress::-moz-progress-bar{background:var(--color-success)}.ember-guidance{border:1px solid var(--line-brass);border-radius:var(--radius-md);background:var(--surface-level-1);flex-wrap:wrap;align-items:start;gap:16px;margin-bottom:20px;padding:20px;display:flex}.ember-guidance__icon{width:44px;height:44px;color:var(--color-accent);background:var(--surface-timber-raised);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.ember-guidance>div{flex:1;min-width:min(100%,240px)}.ember-guidance h2{margin:4px 0 8px;font-size:1.5rem}.ember-guidance p{margin:0;line-height:1.6}.ember-guidance .eyebrow{color:var(--color-accent)}.ember-guidance>button{margin-left:auto}.ember-guidance .journey-result{color:var(--color-accent-strong);margin-top:14px}.journey-rewards{color:var(--text-secondary);font-size:var(--font-small);flex-wrap:wrap;gap:6px 22px;padding-left:20px;display:flex}.journey-preparation{color:var(--text-secondary);padding-left:20px;line-height:1.6}.journey-wayfinding{border-top:1px solid var(--line-brass);color:var(--text-secondary);margin-top:16px;padding-top:12px}.journey-wayfinding h3{font-size:var(--font-small);margin:0 0 8px}.journey-wayfinding p{font-size:var(--font-small);margin:0;line-height:1.6}.journey-wayfinding .journey-wayfinding__path{margin-bottom:8px;font-weight:600}.quest-journal.panel{width:min(850px,100vw - 2rem);min-width:0;max-width:100%;max-height:88dvh;padding:24px;overflow-y:auto}.quest-journal>header{justify-content:space-between;align-items:start;gap:12px;margin-bottom:20px;display:flex}.quest-journal>header>div{overflow-wrap:anywhere;min-width:0}.quest-journal details{color:var(--text-secondary);margin-top:24px}.quest-journal summary{cursor:pointer;padding:12px 0}.journal-progress{gap:10px;margin-bottom:20px;display:grid}.journal-progress>div{flex-wrap:wrap;justify-content:space-between;gap:4px 16px;display:flex}.journal-progress span{color:var(--color-accent-strong);font-size:var(--font-small)}.journal-progress progress{appearance:none;background:var(--surface-level-0);width:100%;height:8px;color:var(--color-accent);border:0;border-radius:4px;overflow:hidden}.journal-progress progress::-webkit-progress-bar{background:var(--surface-level-0)}.journal-progress progress::-webkit-progress-value{background:var(--color-accent)}.journal-progress progress::-moz-progress-bar{background:var(--color-accent)}.journal-journey{margin-block:24px}.journal-journey h3{margin-bottom:12px;font-size:1.3rem}.journal-journey ol{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0;list-style:none;display:grid}.journal-step{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--surface-level-0);align-items:center;gap:10px;padding:12px;display:flex}.journal-step__number{border:1px solid var(--color-border-strong);width:28px;height:28px;color:var(--text-secondary);font-size:var(--font-caption);border-radius:50%;flex:none;place-items:center;display:grid}.journal-step>div{overflow-wrap:anywhere;flex:1;min-width:0}.journal-step strong{font-size:var(--font-small);line-height:1.3;display:block}.journal-step small{color:var(--text-muted);font-size:var(--font-caption);margin-top:3px;display:block}.journal-step__state{font-size:var(--font-caption);color:var(--text-muted);flex:none}.journal-step--current{border-color:var(--color-accent);background:var(--surface-timber-raised)}.journal-step--current .journal-step__number{color:var(--timber-900);background:var(--color-accent-strong)}.journal-step--current .journal-step__state{color:var(--color-accent-strong)}.journal-step--complete .journal-step__state{color:var(--color-success)}.journal-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}@media (width<=1100px){nav.mobile-nav{grid-template-columns:none;grid-auto-columns:1fr;grid-auto-flow:column}}@media (width<=700px){.journey-screen{padding:10px 12px 20px}.journey-heading{align-items:end}.journey-heading .journey-journal{width:44px;padding:10px;font-size:0}.journey-journal svg{width:20px;height:20px}.journey-breadcrumb{font-size:var(--font-caption)}.journey-map-instruction{align-items:start}.journey-map-instruction strong{display:block}.journey-screen--continent .scene-viewport__hint{top:10px;bottom:auto}.ember-guidance{gap:12px;padding:16px}.ember-guidance__icon{display:none}.ember-guidance>div{flex-basis:100%}.ember-guidance>button{width:100%}.quest-journal.panel{padding:16px}.quest-journal>header{flex-wrap:wrap}.quest-journal>header>div{flex-basis:100%}.quest-journal>header>button{order:-1;margin-left:auto}.journal-journey ol{grid-template-columns:minmax(0,1fr)}.town-scroll{scroll-padding-inline:16px}}@media (width<=620px){header.topbar{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){.atlas-destination polygon{transition:none}}.frontier-screen{height:100%;min-height:0;position:relative;overflow:hidden}.frontier-screen>.scene-viewport{height:100%}.frontier-screen:has(.frontier-inspection,.frontier-battle,.frontier-commission) .scene-viewport__footer{display:none}.frontier-panels{z-index:4;pointer-events:none;flex-direction:column;gap:12px;width:min(420px,100% - 36px);display:flex;position:absolute;top:18px;bottom:18px;left:18px;overflow:auto}.frontier-panels>*{pointer-events:auto;box-sizing:border-box;overflow-wrap:anywhere;flex:none;width:100%;min-width:0}.frontier-commission,.frontier-introduction,.frontier-inspection{border:1px solid var(--border-strong,#8a7250);color:var(--text-primary,#f1e4cb);background:#161918f5;border-radius:8px;padding:18px;box-shadow:0 8px 25px #0007}.frontier-panels:has(.frontier-battle){width:min(520px,100% - 36px)}.frontier-panels:has(.frontier-trial){width:min(760px,100% - 36px)}.frontier-trial{background:var(--surface-level-1);border:1px solid var(--line-brass);border-radius:var(--radius-md);box-shadow:0 12px 30px #0009}.frontier-trial__close{margin:.5rem .75rem 0}.frontier-trial .active-challenge{box-shadow:none;border:0}.frontier-screen:has(.frontier-trial) .scene-viewport__footer{display:none}.frontier-battle{border:1px solid var(--line-brass);border-radius:var(--radius-md);background:var(--forest-800);padding:0;box-shadow:0 12px 30px #0009}.frontier-commission h2,.frontier-introduction h2,.frontier-inspection h2{font-family:var(--font-display,Georgia, serif);margin:0 0 8px}.frontier-commission p,.frontier-introduction p,.frontier-inspection p{margin:8px 0 12px;line-height:1.5}.frontier-inspection header{justify-content:space-between;align-items:start;gap:8px;display:flex}.frontier-inspection__identity{align-items:center;gap:12px;min-width:0;display:flex}.frontier-inspection__identity h2{margin:0}.frontier-inspection__portrait{object-fit:contain;border:1px solid var(--line-brass);border-radius:var(--radius-sm);background:#20201e;flex:none;width:88px;height:88px}.frontier-affinities{gap:5px;font-size:.9rem;display:grid}.frontier-affinities div{justify-content:space-between;gap:10px;display:flex}.frontier-affinities dt{text-transform:capitalize}.frontier-affinities dd{color:#d7c999;margin:0}.journey-atlas{position:relative}.journey-atlas>.frontier-commission{z-index:4;max-width:430px;max-height:65%;position:absolute;bottom:18px;left:18px;overflow:auto}.journey-chapter-links{flex-wrap:wrap;gap:8px;padding:12px;display:flex}@media (width<=700px){.frontier-panels{width:auto;max-height:60%;inset:auto 8px 8px}.frontier-panels:has(>.frontier-introduction:only-child){top:8px;bottom:auto}.frontier-introduction{padding:10px 14px}.frontier-introduction>.eyebrow,.frontier-introduction h2{display:none}.frontier-introduction p:last-child{font-size:var(--font-small);margin:0;line-height:1.35}.frontier-commission,.frontier-inspection{padding:14px}.frontier-panels:has(.frontier-battle){width:auto;max-height:75%}.frontier-panels:has(.frontier-trial){width:auto;max-height:88%}.frontier-inspection__portrait{width:72px;height:72px}.journey-atlas>.frontier-commission{max-width:none;max-height:60%;bottom:8px;left:8px;right:8px}}@media (height<=600px){.frontier-panels:has(>.frontier-introduction:only-child){display:none}.frontier-screen .scene-viewport__footer{display:none}}.ember-spirit{object-fit:contain;image-rendering:auto;flex:none;animation:4s ease-in-out infinite ember-hover;display:block}.guiding-ember-companion{z-index:calc(var(--z-nav) - 1);width:124px;position:fixed;bottom:auto;right:auto}.guiding-ember-companion[data-placement=header],.guiding-ember-prompt[data-visible=false]{visibility:hidden;pointer-events:none}.guiding-ember-compact{border:1px solid var(--line-brass);border-radius:var(--radius-sm);background:var(--surface-timber);max-width:144px;min-height:44px;color:var(--text-primary);font:inherit;cursor:pointer;align-items:center;gap:5px;padding:0 6px;display:flex}.guiding-ember-compact[hidden]{display:none}.guiding-ember-compact>.ember-spirit{width:25px;height:42px}.guiding-ember-compact>span{text-align:left;gap:1px;display:grid}.guiding-ember-compact strong{font-size:12px}.guiding-ember-compact small{color:var(--color-accent-strong);font-size:11px}.guiding-ember-compact:focus-visible{outline:var(--focus-ring);outline-offset:2px}.guiding-ember-compact:hover{background:var(--surface-timber-raised)}.guiding-ember-toggle[data-unread=true] .guiding-ember-toggle__caption,.guiding-ember-compact[data-unread=true]{border-color:var(--color-accent-strong)}.guiding-ember-toggle{border-radius:var(--radius-md);width:100%;color:var(--text-primary);cursor:pointer;text-align:center;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex-direction:column;align-items:center;gap:6px;padding:4px;display:flex}.guiding-ember-toggle>.ember-spirit{width:90px;height:154px}.guiding-ember-toggle__caption{border:1px solid var(--line-brass);border-radius:var(--radius-sm);background:var(--surface-timber);gap:2px;width:100%;padding:7px 5px;transition:border-color .16s,background-color .16s;display:grid;position:relative;box-shadow:0 4px 12px #0005}.guiding-ember-toggle__caption strong{font-size:var(--font-small)}.guiding-ember-toggle__caption small{font-size:var(--font-caption);color:var(--color-accent-strong)}.guiding-ember-toggle[data-unread=true] .guiding-ember-toggle__caption:after{content:"";border:2px solid var(--surface-timber);background:var(--color-accent-strong);border-radius:50%;width:9px;height:9px;position:absolute;top:-4px;right:-4px}.guiding-ember-toggle:hover .guiding-ember-toggle__caption,.guiding-ember-toggle[aria-expanded=true] .guiding-ember-toggle__caption{border-color:var(--color-accent-strong);background:var(--surface-timber-raised)}.guiding-ember-toggle:focus-visible{outline:2px solid var(--color-accent-strong);outline-offset:3px}.guiding-ember-prompt{overscroll-behavior:contain;border:1px solid var(--line-brass);border-radius:var(--radius-md) var(--radius-md) 2px var(--radius-md);background:var(--surface-timber);width:min(300px,100vw - 32px);max-height:min(320px,100dvh - 280px);color:var(--text-primary);font-size:var(--font-small);overflow-wrap:break-word;padding:4px 14px 10px;line-height:1.4;position:absolute;bottom:calc(100% + 10px);left:50%;overflow-y:auto;transform:translate(-50%);box-shadow:0 8px 24px #0006}.guiding-ember-prompt>header{color:var(--color-accent-strong);justify-content:space-between;align-items:center;gap:8px;display:flex}.guiding-ember-prompt>header>span{font-weight:700}.guiding-ember-prompt>header>button{width:44px;min-height:44px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;margin-right:-10px;display:grid}.guiding-ember-prompt svg{flex:none;width:16px;height:16px}.guiding-ember-prompt__message{margin:0 0 6px;font-size:1rem;font-weight:600}.guiding-ember-prompt__context{color:var(--text-secondary);margin:0 0 8px}.guiding-ember-prompt__read{border:1px solid var(--line-brass);border-radius:var(--radius-sm);background:var(--surface-timber-raised);width:100%;min-height:44px;color:var(--color-accent-strong);font:inherit;cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;font-weight:600;display:flex}.guiding-ember-prompt button:hover{color:var(--text-primary);background:var(--surface-timber-raised)}.guiding-ember-prompt button:focus-visible{outline:2px solid var(--color-accent-strong);outline-offset:2px}.ember-conversation{visibility:hidden;z-index:calc(var(--z-nav) + 1);overscroll-behavior:contain;border:1px solid var(--line-brass);border-radius:var(--radius-lg);background:var(--surface-timber);width:min(410px,100vw - 24px);color:var(--text-primary);font-size:var(--font-small);padding:16px;position:fixed;overflow-y:auto;box-shadow:0 12px 36px #0008}.ember-conversation__header{align-items:center;gap:12px;margin-bottom:12px;display:flex}.ember-conversation__header>.ember-spirit{width:48px;height:58px}.ember-conversation__header>div{flex:1;min-width:0}.ember-conversation__header .eyebrow{color:var(--text-muted);margin:0}.ember-conversation__header h2{margin:2px 0 0;font:700 1.5rem/1.15 EB Garamond,serif}.ember-conversation__close{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:44px;min-height:44px;color:var(--text-secondary);cursor:pointer;background:0 0;flex:none;place-items:center;padding:10px;display:grid}.ember-conversation__close svg{width:18px;height:18px}.ember-conversation__bubble{border:1px solid var(--color-border-strong);border-radius:2px var(--radius-md) var(--radius-md) var(--radius-md);background:var(--surface-timber-raised);overflow-wrap:anywhere;padding:14px;position:relative}.ember-conversation__bubble:before{content:"";border-left:1px solid var(--color-border-strong);border-top:1px solid var(--color-border-strong);background:var(--surface-timber-raised);width:12px;height:12px;position:absolute;top:-7px;left:22px;transform:rotate(45deg)}.ember-conversation__chapter{color:var(--color-accent-strong);font-size:var(--font-caption);margin:0 0 4px}.ember-conversation__bubble h3{margin:0 0 12px;font-size:1rem}.ember-conversation__answer{color:var(--text-secondary);line-height:1.55}.ember-conversation__answer p{margin:0 0 10px}.ember-conversation__voice{color:var(--text-primary);font-style:italic}.ember-conversation__next{color:var(--color-accent-strong)}.ember-conversation__answer .journey-wayfinding{border:0;margin:0;padding:0}.ember-conversation__questions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.ember-conversation__questions button{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);text-align:left;min-height:44px;color:var(--text-secondary);font:inherit;overflow-wrap:anywhere;cursor:pointer;background:0 0;padding:8px;line-height:1.3}.ember-conversation__questions button[aria-pressed=true]{border-color:var(--color-accent);color:var(--color-accent-strong);background:var(--surface-timber-raised)}.ember-conversation__questions button:hover,.ember-conversation__close:hover{background:var(--surface-timber-raised)}.ember-conversation__footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:12px;display:flex}.ember-conversation__footer button{font-size:var(--font-small)}@keyframes ember-hover{0%,to{transform:translateY(0)rotate(-2deg)}50%{transform:translateY(-2px)rotate(2deg)}}@media (width<=620px),(height<=500px){.guiding-ember-companion{width:108px}.guiding-ember-toggle>.ember-spirit{width:60px;height:104px}.guiding-ember-prompt{max-height:min(320px,100dvh - 220px)}.guiding-ember-toggle__caption{padding-block:5px}.guiding-ember-toggle__caption small{display:none}}@media (height<=500px){.guiding-ember-toggle>.ember-spirit{width:44px;height:76px}}@media (prefers-reduced-motion:reduce){.ember-spirit{animation:none}.guiding-ember-toggle__caption{transition:none}}.crafting-queue-action{grid-column:1/-1;gap:.45rem;min-width:0;display:grid}.crafting-queue-action__controls{flex-wrap:wrap;align-items:end;gap:.55rem;display:flex}.crafting-queue-action__controls label{font-size:var(--font-caption);color:var(--text-secondary);gap:.2rem;display:grid}.crafting-queue-action__controls input{border:1px solid var(--border-color,#6e5734);border-radius:var(--radius-sm);background:var(--bg-inset,#17140e);width:5rem;min-height:44px;color:var(--text-primary);padding:.4rem .55rem}.crafting-queue-action__controls .button{flex:1;min-height:44px}.crafting-queue-action>small,.workshop-progress>small{color:var(--text-muted);font-size:var(--font-caption)}.crafting-queue{min-width:0;margin:.75rem}.crafting-queue>p{color:var(--text-secondary);font-size:var(--font-small)}.crafting-queue ol{gap:.5rem;margin:.75rem 0 0;padding:0;list-style:none;display:grid}.crafting-queue li{border:1px solid var(--border-color,#6e5734);border-radius:var(--radius-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.65rem;display:flex}.crafting-queue li>div:first-child{flex:12rem;gap:.25rem;min-width:0;display:grid}.crafting-queue li small{color:var(--text-muted)}.crafting-queue__actions{flex-wrap:wrap;gap:.5rem;display:flex}.crafting-queue__actions .button{min-height:44px}.workshop-progress{gap:.2rem;min-width:0;display:grid}.profession-recipe>.crafting-queue-action{display:grid}.crafting-station-progress{z-index:11;border:1px solid var(--border-color,#8b7040);border-radius:var(--radius-sm);width:12rem;max-width:42%;color:var(--text-primary);pointer-events:none;background:#141810f0;gap:.2rem;padding:.4rem .55rem;display:grid;position:absolute;transform:translate(-50%,-100%);box-shadow:0 3px 12px #0006}.crafting-station-progress>strong{font-size:var(--font-caption);line-height:1.2}.crafting-station-progress .progress{height:1rem;min-height:1rem}.crafting-station-progress .progress span,.crafting-station-progress .workshop-progress>small{font-size:.65rem}@media (width<=680px){.crafting-station-progress{width:10.5rem}}.town-noticeboard{--notice-ink:#302718;--notice-muted:#655238;overscroll-behavior:contain;width:min(1080px,100vw - 40px);max-height:calc(100dvh - 40px);color:var(--text-primary);background:#231b12;border:1px solid #9c7944;border-radius:10px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 24px 80px #0009,inset 0 0 0 5px #432}.town-noticeboard__header{border-bottom:1px solid #80613a;flex:none;justify-content:space-between;align-items:start;gap:24px;padding:28px 32px 24px;display:flex}.town-noticeboard__header>div{min-width:0}.town-noticeboard__header h2{margin:3px 0 8px;font-size:clamp(1.8rem,3vw,2.4rem);line-height:1.1}.town-noticeboard__header h2:focus{outline:none}.town-noticeboard__header p{color:var(--text-secondary);margin:0}.town-noticeboard__header .eyebrow{color:var(--color-accent)}.town-noticeboard__header>button{white-space:nowrap;flex:none}.town-noticeboard__tabs{border-bottom:1px solid var(--line-brass);flex:none;gap:6px;padding:10px 24px;display:flex}.town-noticeboard__tabs>button{border-radius:var(--radius-sm);min-height:44px;color:var(--text-secondary);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;flex:1;padding:8px}.town-noticeboard__tabs>button[aria-selected=true]{border-color:var(--line-brass);background:var(--surface-timber-raised);color:var(--color-accent-strong)}.town-noticeboard__tabs>button:focus-visible{outline:var(--focus-ring);outline-offset:2px}.town-noticeboard__surface{overscroll-behavior:contain;background:linear-gradient(115deg,#463420,#302316 55%,#483523);grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:start;gap:28px;min-height:0;padding:32px;display:grid;overflow:auto}.town-noticeboard__surface--wide{grid-template-columns:minmax(0,1fr)}.frontier-project-board,.town-kitchen{min-width:0}.frontier-project-board__intro h3,.frontier-contracts>h3,.town-kitchen>header h3{margin:0 0 10px;font:700 1.6rem/1.2 EB Garamond,serif}.frontier-project-board__intro p,.frontier-contracts>p,.town-kitchen>header p{color:var(--text-secondary);line-height:1.5}.frontier-project-board__projects{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px;display:grid}.frontier-project-board__projects>article:first-child{grid-column:1/-1}.frontier-project-board__feedback{min-height:1.5em;color:var(--color-accent-strong)}.frontier-contracts{margin-top:28px}.frontier-project__supplies{border-block:1px solid #bda57c;gap:8px;margin:16px 0;padding:12px 0;list-style:none;display:grid}.frontier-project__supplies li{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.frontier-project__supplies li>span{flex:1;min-width:8rem}.frontier-project__supplies small{color:var(--notice-muted);font-size:var(--font-caption);display:block}.frontier-project__supplies strong{font-variant-numeric:tabular-nums}.town-kitchen__recipes{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.town-kitchen__recipe{border:1px solid var(--line-brass);border-radius:var(--radius-md);background:var(--surface-timber);min-width:0;padding:18px}.town-kitchen__recipe header{align-items:center;gap:12px;display:flex}.town-kitchen__recipe header>div{min-width:0}.town-kitchen__recipe h4{margin:0;font:700 1.35rem/1.2 EB Garamond,serif}.town-kitchen__recipe p{color:var(--text-secondary);font-size:var(--font-small);margin:6px 0 0}.town-kitchen__recipe ul{border-block:1px solid var(--color-border);font-size:var(--font-small);gap:8px;padding:12px 0;list-style:none;display:grid}.town-kitchen__recipe li{flex-wrap:wrap;justify-content:space-between;gap:12px;display:flex}.town-kitchen__recipe li span{color:var(--text-secondary)}.town-kitchen__locked{border:1px solid var(--line-brass);border-radius:var(--radius-md);background:var(--surface-timber);padding:16px}.notice-paper{--text-primary:#302718;--text-secondary:#655238;--text-muted:#655238;min-width:0;color:var(--notice-ink);overflow-wrap:anywhere;background:linear-gradient(135deg,#f2e5c7,#e4d0a8);border:1px solid #c4aa7a;border-radius:2px;padding:30px 26px 22px;position:relative;box-shadow:2px 6px 10px #160f0990}.notice-paper:before{content:"";background:#615035;border:1px solid #d0b478;border-radius:50%;width:10px;height:10px;position:absolute;top:10px;left:calc(50% - 5px);box-shadow:0 2px 2px #39251366}.notice-paper--record{background:#dcc7a0;margin-top:16px}.notice-paper__meta{color:var(--notice-muted);font-size:var(--font-small);border-bottom:1px solid #bda57c;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:18px;padding-bottom:14px;display:flex}.notice-paper__meta>span:first-child{font-family:var(--font-display);font-weight:700}.notice-paper__status{color:#334327;font-size:var(--font-caption);background:#d6ddbc;border:1px solid #889276;border-radius:3px;padding:3px 8px}.notice-paper h3,.notice-paper .frontier-commission h2{color:var(--notice-ink);margin:0 0 12px;font-family:EB Garamond,Georgia,serif;font-size:1.55rem;line-height:1.2}.notice-paper p{line-height:1.6}.notice-paper .eyebrow{color:var(--notice-muted);margin:0 0 8px}.notice-paper .frontier-commission{color:inherit;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.notice-paper .frontier-commission>.eyebrow{display:none}.notice-paper .frontier-commission>ul{padding-left:20px;line-height:1.7}.notice-paper .button{color:#302719;background:#ebdbb9;border-color:#8c734d}.notice-paper .button:hover:not(:disabled){background:#f9edcf;border-color:#5e4b30}.notice-paper .button--primary{color:#fff6df;background:#344a32;border-color:#344a32;margin-top:16px}.notice-paper .button--primary:hover:not(:disabled){color:#fff6df;background:#263f27}.notice-paper .button:disabled{opacity:1;color:#665a45;background:#cbbfa4;border-color:#9b8f76}.notice-paper .button:focus-visible{outline-offset:3px;outline:3px solid #314d70}.notice-paper .objective-counts{color:var(--notice-muted);border-block:1px solid #bda57c;gap:8px;margin:20px 0 4px;padding:14px 0;display:grid}.notice-paper .objective-counts>span{justify-content:space-between;gap:12px;display:flex}.notice-paper .objective-counts strong{color:var(--notice-ink)}.notice-paper .objective-counts .is-complete,.notice-paper .objective-counts .is-complete strong{color:#2e512d}.notice-paper__hint{font-size:var(--font-small);color:var(--notice-muted);margin-top:12px}.notice-paper__locations{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.notice-paper__locations .button{font-size:var(--font-small)}.notice-rewards{border-top:1px solid #bda57c;margin-top:22px;padding-top:18px}.notice-rewards h3{font-family:inherit;font-size:var(--font-small);font-weight:700}.notice-rewards ul{font-size:var(--font-small);flex-wrap:wrap;gap:6px 18px;margin:0;padding:0;list-style:none;display:flex}.notice-rewards__skill{text-transform:capitalize}.notice-paper__signature{color:var(--notice-muted);font-size:var(--font-small);border-top:1px solid #bda57c;align-items:center;gap:8px;margin-top:24px;padding-top:16px;font-style:italic;display:flex}.notice-paper__signature svg{flex:none;width:18px;height:18px}.notice-record{margin:18px 0;padding:0;list-style:none}.notice-record li{border-bottom:1px solid #b49b72;align-items:start;gap:10px;padding:12px 0;display:flex}.notice-record__seal{color:#3e542e;flex:none;width:16px}.notice-record li small{color:var(--notice-muted);margin-top:2px;display:block}.notice-record__empty,.notice-journal-link p{color:var(--notice-muted);font-size:var(--font-small)}.notice-journal-link{border-top:1px solid #b49b72;margin-top:28px;padding-top:16px}.notice-journal-link .button{width:100%}.town-board-prompt{z-index:4;text-align:left;align-items:center;gap:14px;max-width:min(420px,100% - 36px);padding:14px 18px;display:flex;position:absolute;bottom:18px;left:18px;box-shadow:0 6px 18px #0006}.town-board-prompt>svg{flex:none}.town-board-prompt>span:first-of-type{gap:4px;min-width:0;display:grid}.town-board-prompt small{color:var(--text-secondary);font-weight:400}@media (width<=700px){.town-noticeboard__tabs{padding-inline:10px}.frontier-project-board__projects,.town-kitchen__recipes{grid-template-columns:minmax(0,1fr)}.noticeboard-backdrop{padding:10px}.town-noticeboard{width:100%;max-height:calc(100dvh - 20px)}.town-noticeboard__header{flex-direction:column-reverse;gap:14px;padding:18px}.town-noticeboard__header>button{align-self:end}.town-noticeboard__header>div>p:last-child{display:none}.town-noticeboard__surface{grid-template-columns:minmax(0,1fr);gap:22px;padding:20px 14px}.notice-paper{padding:28px 18px 20px}.notice-paper--record{margin-top:0}.notice-paper__quest>.button,.notice-paper .frontier-commission>.button{width:100%}.town-board-prompt{max-width:calc(100% - 16px);padding:10px 14px;bottom:62px;left:8px}}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-3-latin-400-normal-DQi5PRDE.woff2)format("woff2"),url(/assets/source-sans-3-latin-400-normal-AFMiCETP.woff)format("woff")}@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/source-sans-3-latin-700-normal-CkzU-mV9.woff2)format("woff2"),url(/assets/source-sans-3-latin-700-normal-BBbVrHF_.woff)format("woff")}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cinzel-latin-600-normal-Dd5YO2UX.woff2)format("woff2"),url(/assets/cinzel-latin-600-normal-CH_LB4su.woff)format("woff")}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/eb-garamond-latin-600-normal-DHwxsLHv.woff2)format("woff2"),url(/assets/eb-garamond-latin-600-normal-xCe6GkOx.woff)format("woff")}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/eb-garamond-latin-700-normal-D7LhwqnD.woff2)format("woff2"),url(/assets/eb-garamond-latin-700-normal-DcHu0PDI.woff)format("woff")}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:600;src:url(/assets/eb-garamond-latin-600-italic-M3_Pd09c.woff2)format("woff2"),url(/assets/eb-garamond-latin-600-italic-CIBOInoq.woff)format("woff")}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;--ink-950:#090c09;--ink-900:#0e130f;--ink-850:#121813;--ink-800:#171e18;--ink-700:#202a22;--forest-900:#142219;--forest-800:#1b2d21;--forest-700:#25402e;--forest-600:#31593b;--forest-500:#4f7654;--timber-900:#17110d;--timber-800:#21170f;--timber-700:#302116;--timber-600:#4a3523;--brass-700:#8d7135;--brass-600:#b28f42;--brass-500:#d4b15d;--brass-400:#ead284;--paper-100:#f3ecda;--paper-200:#d7cfbc;--paper-300:#bbb5a7;--paper-400:#adb5a6;--river-500:#78a29c;--health-600:#b64f45;--health-500:#df7469;--warning-500:#d4a34e;--arcane-500:#9a8fcd;--success-500:#82aa72;--danger-surface:#432420;--line-soft:#e2d5b121;--line-medium:#e2d5b13d;--line-brass:#d4b15d9e;--font-caption:.75rem;--font-small:.875rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:18px;--duration-fast:.14s;--duration-normal:.22s;--ease-out:cubic-bezier(.2, .8, .2, 1);--z-sticky:30;--z-nav:50;--z-modal:100;--z-toast:120;--color-app:var(--ink-950);--color-world:#2d5538;--surface-level-0:var(--forest-900);--surface-level-1:var(--ink-800);--surface-level-1-alt:var(--forest-800);--surface-level-2:var(--ink-700);--surface-level-3:var(--ink-900);--surface-timber:var(--timber-800);--surface-timber-raised:var(--timber-700);--text-primary:var(--paper-100);--text-secondary:var(--paper-200);--text-muted:var(--paper-400);--color-accent:var(--brass-500);--color-accent-strong:var(--brass-400);--color-focus:var(--brass-400);--color-border:var(--line-soft);--color-border-strong:var(--line-medium);--color-danger:var(--health-500);--color-success:var(--success-500);--shell-sidebar-width:268px;--shell-topbar-height:64px;--button-height:44px;--button-radius:var(--radius-sm);--panel-radius:var(--radius-md);--panel-padding:var(--space-4);--modal-radius:var(--radius-lg);--focus-ring:3px solid var(--color-focus);--scene-first-chrome-height:152px}*{box-sizing:border-box}html{background:var(--color-app);scroll-behavior:smooth;min-height:100%}body{min-height:100vh;color:var(--text-primary);background:var(--color-app);margin:0;font:400 16px/1.5 "Source Sans 3",system-ui,sans-serif;overflow-x:hidden}button,input,select{font:inherit}button,a,input,select,summary,label{-webkit-tap-highlight-color:transparent}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:var(--focus-ring);outline-offset:3px}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{color:var(--text-primary);font-family:EB Garamond,Georgia,serif}h1{font-size:clamp(2rem,3vw,2.75rem)}h2{margin-bottom:.35rem;font-size:clamp(1.65rem,2.2vw,2.15rem);line-height:1.06}h3{margin-bottom:.45rem;font-size:1.3rem;line-height:1.15}h4{color:var(--text-primary);margin:0;font-size:.98rem}p{color:var(--text-secondary);margin-bottom:.75rem}small,.muted{color:var(--text-muted)}small{font-size:max(var(--font-caption), .8333em)}svg{flex:none;width:1.2rem;height:1.2rem}dt{color:var(--text-muted)}dd{color:var(--text-primary);font-variant-numeric:tabular-nums;margin:0}strong,output,.progress span{font-variant-numeric:tabular-nums}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:200;border-radius:var(--radius-sm);color:var(--timber-900);background:var(--color-focus);padding:.7rem 1rem;font-weight:700;position:fixed;top:.75rem;left:.75rem;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.eyebrow,.ledger-kicker{color:var(--color-accent);font:600 var(--font-caption)/1.3 Cinzel, serif;letter-spacing:.11em;text-transform:uppercase;margin:0 0 .25rem}.screen-stack{gap:.85rem;min-width:0;display:grid}.screen-stack>*{min-width:0;max-width:100%}.feature-error{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);min-height:12rem;color:var(--text-secondary);background:var(--surface-level-2);text-align:center;align-content:center;place-items:center;gap:.7rem;padding:1.2rem;display:grid}.feature-error h2,.feature-error p{margin:0}.panel{padding:var(--panel-padding);border:1px solid var(--color-border);border-radius:var(--panel-radius);background:var(--surface-level-1);position:relative;box-shadow:0 8px 24px #0000001f}.panel__header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.8rem;display:flex}.panel__header h3,.panel__header p{margin-bottom:0}.page-heading{justify-content:space-between;align-items:center;gap:2rem;min-height:70px;padding:.25rem .15rem .45rem;display:flex}.page-heading p:last-child{max-width:48rem;margin:0}.page-heading h2[tabindex="-1"]:focus{outline:0}.button{min-height:var(--button-height);border:1px solid var(--color-border-strong);border-radius:var(--button-radius);color:var(--text-primary);background:var(--surface-level-2);cursor:pointer;transition:color var(--duration-fast), background-color var(--duration-fast), border-color var(--duration-fast), transform var(--duration-fast);justify-content:center;align-items:center;gap:.5rem;padding:.55rem .9rem;font-size:.86rem;font-weight:700;display:inline-flex;box-shadow:0 2px 5px #0000002e}.button:hover:not(:disabled){border-color:var(--line-brass);background:var(--forest-700);transform:translateY(-1px)}.button:active:not(:disabled){transform:translateY(1px)}.button:disabled{color:#aeb0a8;background:var(--surface-level-1);cursor:not-allowed;border-style:dashed}.button--primary{color:var(--timber-900);border-color:var(--brass-400);background:var(--color-accent)}.button--primary:hover:not(:disabled){background:var(--color-accent-strong)}.button--ghost{box-shadow:none;background:0 0}.button--danger{color:#ffe6df;background:var(--danger-surface);border-color:#df74698c}.button--active{border-color:var(--forest-500);background:var(--forest-700)}.button--wide{width:100%}.button--icon-label{gap:.5rem}.button-row{flex-wrap:wrap;gap:.5rem;display:flex}.text-button{min-height:44px;color:var(--color-accent-strong);cursor:pointer;background:0 0;border:0;align-items:center;gap:.35rem;padding:.35rem;display:inline-flex}.callout{border-left:3px solid var(--color-accent);color:var(--text-secondary);background:var(--surface-level-2);padding:.65rem .75rem;font-size:.86rem}.progress{background:var(--surface-level-3);min-width:6rem;height:1.25rem;box-shadow:inset 0 0 0 1px var(--color-border-strong);border-radius:999px;position:relative;overflow:hidden}.progress__fill{transform-origin:0;background:var(--color-accent);transition:transform .24s linear;position:absolute;inset:0;transform:scaleX(0)}.progress--continuous .progress__fill{transition:none}.progress__fill--health{background:var(--health-500)}.progress__fill--arcane{background:var(--arcane-500)}.progress--complete .progress__fill{transform:scaleX(1)}.progress span{color:#fff9e9;font-size:var(--font-caption);text-shadow:0 1px 2px #000;place-items:center;font-weight:700;line-height:1.2;display:grid;position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.progress__fill{transition:none}}.app-shell{grid-template-columns:var(--shell-sidebar-width) minmax(0, 1fr);background:var(--color-world);min-height:100dvh;display:grid}.sidebar{z-index:20;width:var(--shell-sidebar-width);border-right:1px solid var(--line-brass);color:var(--text-primary);background:var(--surface-timber);flex-direction:column;padding:.7rem .75rem .85rem;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto;box-shadow:8px 0 26px #00000042}.sidebar-profile{border-bottom:1px solid var(--color-border);text-align:center;flex:none;grid-template-columns:minmax(0,1fr);align-content:center;justify-items:stretch;gap:.45rem;min-height:230px;padding:.35rem .15rem .55rem;display:grid}.sidebar-profile .player-portrait{border-color:var(--line-brass);width:100%;height:clamp(150px,20dvh,220px)}.sidebar-profile__name{justify-items:center;gap:.15rem;width:100%;min-width:0;display:grid}.sidebar-profile__name small{color:var(--color-accent);font:600 var(--font-caption) Cinzel, serif;letter-spacing:.1em;text-transform:uppercase}.sidebar-profile__name strong{max-width:100%;color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font:700 1.25rem EB Garamond,serif;overflow:hidden}.sidebar-current{border-bottom:1px solid var(--color-border);flex:none;grid-template-rows:44px minmax(0,1fr);gap:.45rem;height:178px;padding:.55rem .55rem .65rem;display:grid}.sidebar-current__row{justify-content:space-between;align-items:center;gap:.5rem;min-width:0;display:flex}.sidebar-current__label{align-items:center;gap:.5rem;min-width:0;display:flex}.sidebar-current__label>span:last-child{gap:.05rem;min-width:0;display:grid}.sidebar-current__label small{color:var(--color-accent);font-size:var(--font-caption);text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;line-height:1.15;overflow:hidden}.sidebar-current__label strong{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;line-height:1.25;overflow:hidden}.sidebar-current__stop{border-radius:var(--radius-sm);color:#f0dcd5;background:var(--danger-surface);min-height:36px;font-size:var(--font-caption);cursor:pointer;border:1px solid #df746966;align-items:center;gap:.35rem;padding:.32rem .6rem;font-weight:700;display:inline-flex}.sidebar-current__stop svg{width:.82rem;height:.82rem;color:var(--health-500)}.sidebar-current__camp-label{color:var(--color-accent);font:600 var(--font-caption)/1.2 Cinzel, serif;letter-spacing:.1em;text-transform:uppercase;flex:none}.sidebar-camp{grid-template-rows:minmax(0,1fr) 46px;gap:.45rem;min-width:0;min-height:0;display:grid}.sidebar-camp__record{align-items:center;gap:.65rem;min-width:0;display:flex}.sidebar-camp__emblem{border:1px solid var(--color-border-strong);width:34px;height:36px;color:var(--color-accent);background:linear-gradient(160deg, var(--surface-timber-raised), var(--surface-timber));box-shadow:inset 0 0 0 3px var(--surface-timber);border-radius:50% 50% 4px 4px;flex:none;place-items:center;display:grid}.sidebar-camp__emblem svg{stroke-width:1.2px;width:23px;height:23px}.sidebar-camp__detail{gap:.08rem;min-width:0;display:grid}.sidebar-camp__detail small{color:var(--text-muted);font:600 var(--font-caption)/1.3 Cinzel, serif;letter-spacing:.06em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;overflow:hidden}.sidebar-camp__detail strong{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font:600 1.05rem/1.2 EB Garamond,Georgia,serif;overflow:hidden}.sidebar-camp__resume{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);width:100%;min-width:0;color:var(--color-accent-strong);background:linear-gradient(110deg, var(--surface-timber-raised), var(--surface-timber));box-shadow:inset 0 1px 0 var(--color-border);text-align:left;cursor:pointer;transition:border-color var(--duration-fast), color var(--duration-fast);justify-content:space-between;align-items:center;gap:.5rem;padding:.4rem .65rem;font-size:.76rem;font-weight:700;line-height:1.3;display:flex}.sidebar-camp__resume svg{width:.9rem;height:.9rem;color:var(--color-accent)}.sidebar-camp__resume:hover:not(:disabled){border-color:var(--line-brass);color:var(--text-primary)}.sidebar-camp__resume:disabled{color:var(--text-muted);background:var(--surface-timber);box-shadow:none;cursor:not-allowed}.sidebar-camp__resume:disabled svg{opacity:.35}.sidebar-camp__actions{grid-template-columns:minmax(0,1fr);gap:.4rem;min-width:0;display:grid}.sidebar-camp__actions--split{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar-camp__actions--split .sidebar-camp__choose{box-shadow:none;color:var(--text-secondary);background:0 0}.sidebar-camp__choose svg{transform:rotate(90deg)}.sidebar-current .progress{width:min(100%,220px);height:6px;box-shadow:none}.sidebar-current .progress__fill{transition:none}.sidebar-current .progress span{clip:rect(0, 0, 0, 0);width:1px;height:1px;overflow:hidden}.sidebar-current__profession{align-content:center;gap:.34rem;min-width:0;display:grid}.sidebar-current__profession>span{color:var(--text-secondary);font-size:var(--font-caption);text-overflow:ellipsis;white-space:nowrap;line-height:1.2;overflow:hidden}.sidebar-current__bank{justify-content:space-between;align-items:baseline;gap:.4rem;min-width:0;display:flex}.sidebar-current__bank small{color:var(--color-accent-strong);font-size:var(--font-caption);text-transform:uppercase;flex:none}.sidebar-current__bank strong{color:var(--text-secondary);font-size:var(--font-caption);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar-current__combat{align-content:center;gap:.5rem;min-width:0;display:grid}.sidebar-current__vitals{align-content:center;gap:.4rem;min-width:0;display:grid}.sidebar-current__vital{gap:.22rem;min-width:0;display:grid}.sidebar-current__vital>div{justify-content:space-between;align-items:baseline;gap:.4rem;min-width:0;display:flex}.sidebar-current__vital span{color:var(--text-secondary);font-size:var(--font-caption);text-overflow:ellipsis;white-space:nowrap;font-weight:600;line-height:1.2;overflow:hidden}.sidebar-current__vital strong{color:#fff4de;font-variant-numeric:tabular-nums;flex:none;font-size:.75rem;line-height:1.2}.sidebar-current__vital .progress{height:6px}.sidebar-current__vital--enemy .progress__fill{background:#dc766b}.sidebar-current__session{border:1px solid var(--color-border);background:var(--color-border);border-radius:4px;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:1px;min-width:0;margin:.08rem 0 0;display:grid;overflow:hidden}.sidebar-current__session>div{background:#090c096b;justify-content:center;align-items:baseline;gap:.38rem;min-width:0;padding:.34rem .38rem;display:flex}.sidebar-current__session dt{color:var(--color-accent-strong);font-size:var(--font-caption);letter-spacing:.02em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-weight:600;line-height:1.2;overflow:hidden}.sidebar-current__session dd{color:#fff4de;flex:none;font-size:.75rem;font-weight:700;line-height:1.2}.activity-beacon{border:1px solid var(--color-border-strong);background:var(--text-muted);border-radius:50%;flex:none;width:.58rem;height:.58rem}.activity-beacon--live{background:var(--color-success);border-color:#cae2be;animation:2.4s infinite beacon;box-shadow:0 0 0 4px #82aa7221}@keyframes beacon{50%{box-shadow:0 0 0 7px #82aa7200}}.sidebar nav{gap:.8rem;padding:.8rem 0;display:grid}.sidebar-nav-group{gap:.18rem;display:grid}.sidebar-nav-group__label{color:#8f8b7d;font:600 var(--font-caption) Cinzel, serif;letter-spacing:.12em;text-transform:uppercase;margin:0;padding:.15rem .65rem}.sidebar nav a,.sidebar-skills__toggle{border-radius:var(--radius-sm);min-height:44px;color:var(--text-secondary);transition:color var(--duration-fast), background-color var(--duration-fast), box-shadow var(--duration-fast);grid-template-columns:1.25rem 1fr .8rem;align-items:center;gap:.7rem;padding:.55rem .65rem;text-decoration:none;display:grid}.sidebar-skills{min-width:0;display:grid}.sidebar-skills__toggle{width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0}.sidebar nav a:hover,.sidebar-skills__toggle:hover{color:var(--text-primary);background:#ffffff0a}.sidebar nav a.active,.sidebar-skills__toggle.active{color:#fff8e8;background:var(--forest-700);box-shadow:inset 3px 0 var(--color-accent)}.sidebar nav a>svg:first-child,.sidebar-skills__toggle>svg:first-child{color:var(--color-accent)}.sidebar nav a .nav-chevron,.sidebar-skills__toggle .nav-chevron{opacity:.42;width:.9rem;height:.9rem}.sidebar-skills__toggle .nav-chevron{transition:transform var(--duration-normal) var(--ease-out), opacity var(--duration-fast);transform:rotate(0)}.sidebar-skills--expanded .sidebar-skills__toggle .nav-chevron{opacity:.78;transform:rotate(90deg)}.sidebar-skills__links{border-left:1px solid var(--color-border-strong);gap:.08rem;min-width:0;margin:.18rem 0 .22rem .95rem;padding:.15rem 0 .15rem .42rem;display:grid}.sidebar-skills__links[hidden]{display:none}.sidebar nav .sidebar-skills__links a{border-radius:4px;grid-template-columns:1.05rem minmax(0,1fr) auto;gap:.52rem;min-height:42px;padding:.42rem .55rem;font-size:.78rem}.sidebar nav .sidebar-skills__links a>svg{width:1rem;height:1rem}.sidebar nav .sidebar-skills__links a>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar nav .sidebar-skills__links a>small{color:var(--text-muted);font-size:var(--font-caption);font-variant-numeric:tabular-nums;white-space:nowrap}.sidebar nav .sidebar-skills__links a.active{box-shadow:inset 2px 0 var(--color-accent);background:#31593bc2}.sidebar nav .sidebar-skills__links a.active>small{color:var(--color-accent-strong)}.sidebar__status{border:1px solid var(--color-border);border-radius:var(--radius-md);min-height:54px;color:var(--text-secondary);text-align:left;cursor:pointer;background:#00000024;grid-template-columns:auto 1fr auto;align-items:center;gap:.6rem;margin-top:auto;padding:.55rem .65rem;display:grid}.sidebar__status:hover{border-color:var(--line-brass)}.sidebar__status>svg:first-child{color:var(--color-accent)}.sidebar__status>svg:last-child{width:.9rem;color:var(--text-muted)}.sidebar__status small,.sidebar__status strong{display:block}.sidebar__status small{color:var(--color-accent);font-size:var(--font-caption);text-transform:uppercase}.sidebar__status strong{color:var(--text-secondary);margin-top:.1rem;font-size:.75rem}.app-main{background-color:var(--color-app);grid-column:2;min-width:0}.topbar{z-index:var(--z-sticky);min-height:var(--shell-topbar-height);border-bottom:1px solid var(--line-brass);background:#17110df7;justify-content:space-between;align-items:center;padding:.45rem clamp(1rem,2.4vw,1.8rem);display:flex;position:sticky;top:0;box-shadow:0 4px 14px #0003}.topbar__brand{align-items:center;gap:.7rem;min-width:0;display:flex}.topbar__crest{object-fit:contain;image-rendering:auto;filter:drop-shadow(0 2px 2px #00000059);flex:none;width:42px;height:42px;display:block}.topbar__wordmark{min-width:0;display:grid}.topbar__wordmark small{color:var(--color-accent);font:600 var(--font-caption) Cinzel, serif;letter-spacing:.18em;text-transform:uppercase}.topbar__wordmark strong{color:var(--text-primary);letter-spacing:.055em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font:700 1.17rem EB Garamond,serif;overflow:hidden}.topbar__mobile-identity{flex:1;align-items:center;gap:.65rem;min-width:0;display:none}.topbar__mobile-identity>div{min-width:0}.topbar__mobile-identity p{color:var(--text-muted);font-size:var(--font-caption);text-transform:uppercase;margin:0}.topbar__mobile-identity strong{text-overflow:ellipsis;white-space:nowrap;font:700 1.15rem EB Garamond,serif;display:block;overflow:hidden}.topbar__right{align-items:center;gap:.65rem;min-width:0;display:flex}.save-center-toggle{border:1px solid var(--line-brass);border-radius:var(--radius-sm);min-height:46px;color:var(--color-accent-strong);background:var(--surface-timber-raised);cursor:pointer;min-width:46px;place-items:center;gap:.05rem;padding:.25rem .45rem;display:grid}.save-center-toggle span{font-size:var(--font-caption);text-transform:uppercase}.mobile-activity{display:none}.harvest-indicator{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:9.75rem;min-height:44px;color:var(--text-muted);white-space:nowrap;background:0 0;flex:none;justify-content:center;align-items:center;gap:.4rem;padding:.4rem .55rem;font-size:.75rem;text-decoration:none;display:inline-flex;position:relative}.harvest-indicator svg{flex:none;width:1.15rem;height:1.15rem}.harvest-indicator--ready{color:#c8dfbd;background:var(--forest-800);border-color:#53614a}.harvest-indicator:hover{color:var(--text-primary);border-color:var(--line-brass)}.harvest-indicator--compact{width:44px;height:44px;padding:.4rem}.harvest-indicator--compact>span{display:none}.harvest-indicator--compact small{min-width:14px;color:var(--text-primary);background:var(--forest-800);font-size:var(--font-caption);text-align:center;border-radius:50%;line-height:1.3;position:absolute;top:1px;right:3px}.world-mast{background:0 0;place-items:center start;height:clamp(128px,11vw,176px);padding-inline:max(clamp(.9rem,2vw,1.5rem),50% - 840px + 1.5rem);display:grid;position:relative;overflow:hidden}.world-mast:after{content:"";pointer-events:none;background:linear-gradient(90deg,#090c0933,#0000 32% 76%,#090c0938);position:absolute;inset:0}.world-mast__plaque{z-index:1;color:var(--text-primary);text-shadow:0 2px 8px #000000f2,0 1px 2px #000000f2;justify-items:start;padding:.3rem 0;display:grid;position:relative}.world-mast__plaque small{color:var(--color-accent);font:600 var(--font-caption) Cinzel, serif;letter-spacing:.12em;text-transform:uppercase}.world-mast__plaque strong{letter-spacing:.06em;font:700 1.45rem EB Garamond,serif}.content{width:min(100%,1680px);margin:0 auto;padding:clamp(.9rem,2vw,1.5rem)}.content:not(.content--scene-first)>:is(.bank-screen,.shop-screen){width:100%;max-width:min(100%, calc((100dvh - var(--scene-first-chrome-height)) * 1.77778));margin-inline:auto}.content.content--scene-first{justify-content:center;width:100%;max-width:none;padding:0;display:flex}.content--scene-first>:is(.skills-screen,.combat-screen,.character-screen){width:100%;max-width:min(100%, calc((100dvh - var(--scene-first-chrome-height)) * 1.77778))}.content--scene-first>:is(.combat-screen,.character-screen){aspect-ratio:16/9;scrollbar-gutter:stable;border-radius:var(--radius-lg);min-height:0;overflow:auto}.content--scene-first>:is(.combat-screen,.character-screen):focus-visible{outline:var(--focus-ring);outline-offset:-3px}.mobile-nav{display:none}.mobile-skill-chooser{z-index:calc(var(--z-toast) + 1);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#050806c2;place-items:end center;padding:1rem;display:grid;position:fixed;inset:0}.mobile-skill-chooser__panel{border:1px solid var(--line-brass);border-radius:var(--radius-lg);background:linear-gradient(160deg, var(--surface-timber-raised), var(--surface-level-1) 44%);width:min(42rem,100%);max-height:min(82dvh,46rem);animation:skill-chooser-in var(--duration-normal) var(--ease-out);padding:1rem;overflow-y:auto;box-shadow:0 24px 70px #000000ad,inset 0 1px #f0d48714}.mobile-skill-chooser__header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-start;gap:1rem;padding:.15rem .15rem .85rem;display:flex}.mobile-skill-chooser__header h2{margin-bottom:.18rem;font-size:1.65rem}.mobile-skill-chooser__header p:last-child{color:var(--text-muted);margin:0;font-size:.82rem}.mobile-skill-chooser__close{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);width:44px;height:44px;color:var(--text-secondary);cursor:pointer;background:#0000002e;flex:none;place-items:center;display:grid}.mobile-skill-chooser__close:hover{color:var(--text-primary);border-color:var(--line-brass)}.mobile-skill-chooser__links{grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;padding-top:.8rem;display:grid}.mobile-skill-chooser__links a{border:1px solid var(--color-border);border-radius:var(--radius-sm);min-width:0;min-height:60px;color:var(--text-secondary);transition:color var(--duration-fast), border-color var(--duration-fast), background-color var(--duration-fast);background:#090c095c;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:.7rem;padding:.5rem .65rem;text-decoration:none;display:grid}.mobile-skill-chooser__links a:hover{color:var(--text-primary);border-color:var(--line-brass);background:#31593b59}.mobile-skill-chooser__links a.active{color:#fff8e8;border-color:var(--line-brass);background:var(--forest-700);box-shadow:inset 3px 0 var(--color-accent)}.mobile-skill-chooser__icon{border:1px solid var(--color-border-strong);width:40px;height:40px;color:var(--color-accent);background:var(--surface-level-3);border-radius:50% 50% 5px 5px;place-items:center;display:grid}.mobile-skill-chooser__icon svg{width:1.2rem;height:1.2rem}.mobile-skill-chooser__links a>span:nth-child(2){gap:.03rem;min-width:0;display:grid}.mobile-skill-chooser__links a>span:nth-child(2) strong,.mobile-skill-chooser__links a>span:nth-child(2) small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mobile-skill-chooser__links a>span:nth-child(2) strong{color:inherit;font-size:.86rem}.mobile-skill-chooser__links a>span:nth-child(2) small{color:var(--text-muted);font-size:var(--font-caption)}.mobile-skill-chooser__level{justify-items:end;min-width:2.3rem;display:grid}.mobile-skill-chooser__level small{color:var(--text-muted);font:600 var(--font-caption) Cinzel, serif;letter-spacing:.08em;text-transform:uppercase}.mobile-skill-chooser__level strong{color:var(--color-accent-strong);font-size:.82rem}@keyframes skill-chooser-in{0%{opacity:0;transform:translateY(.65rem)scale(.985)}}.player-portrait{isolation:isolate;border:1px solid var(--line-brass);border-radius:var(--radius-sm);background:radial-gradient(circle at 50% 30%,#d4b15d29,#0000 48%),#080c09;width:92px;height:136px;display:block;position:relative;overflow:hidden}.player-portrait:after{content:"";z-index:1;border-radius:inherit;pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #f0d48714,inset 0 -18px 28px #05080647}.player-portrait img{object-fit:contain;object-position:center;filter:drop-shadow(0 4px 4px #0000006b);width:96%;height:96%;display:block;position:absolute;inset:2%}.player-portrait--compact{width:42px;height:46px}.item-icon{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--surface-level-3);image-rendering:pixelated;flex:none;place-items:center;display:inline-grid;position:relative;overflow:hidden}.item-icon img{object-fit:cover;width:100%;height:100%;image-rendering:pixelated}.item-icon img[src*="/assets/items/equipment/"],.item-icon img[src*="/assets/items/bars/"],.item-icon img[src*="/assets/items/ores/"],.item-icon img[src*="/assets/items/tanning/"],.item-icon img[src*="/assets/items/supplies/"]{image-rendering:auto}.item-icon>span{color:var(--paper-100);font-size:var(--font-caption);background:#000000bf;border-radius:3px;padding:0 3px;font-weight:700;position:absolute;bottom:1px;right:2px}.item-icon--small{width:2.2rem;height:2.2rem}.item-icon--medium{width:3rem;height:3rem}.item-icon--large{width:4rem;height:4rem}.rarity-label{font-size:var(--font-caption);letter-spacing:.07em;text-transform:uppercase}.rarity-label--common{color:var(--text-muted)}.rarity-label--uncommon{color:#9ec690}.rarity-label--rare{color:#b4a9e8}.rarity--uncommon{box-shadow:inset 0 -2px #63805d}.rarity--rare{box-shadow:inset 0 -2px #766dab}.inventory-count{border-radius:var(--radius-sm);min-height:30px;color:var(--text-secondary);background:var(--surface-level-3);align-items:baseline;gap:.32rem;padding:.25rem .42rem;display:inline-flex}.inventory-count>span{color:var(--text-muted);font-size:var(--font-caption);text-transform:uppercase}.inventory-count strong{color:var(--color-accent-strong);font-size:.78rem}.ledger-character{border-radius:var(--radius-lg);background:var(--surface-level-1-alt);grid-template-columns:minmax(22rem,1fr) minmax(32rem,38rem);display:grid;overflow:hidden;box-shadow:0 14px 34px #0003}.ledger-profile{border-bottom:1px solid var(--color-border);background:var(--surface-level-1-alt);grid-column:1/-1;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.8rem 1rem;padding:.85rem 1rem;display:grid}.ledger-profile h2[tabindex="-1"]:focus{outline:0}.ledger-profile__portrait .player-portrait{border-style:solid;width:64px;height:82px}.ledger-profile__identity h2{margin:0 0 .15rem;font-size:clamp(1.55rem,2.6vw,2.15rem)}.ledger-profile__identity>p:last-child{margin:0;font-size:.9rem}.ledger-profile__record{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--surface-level-3);grid-template-columns:repeat(3,minmax(0,1fr));min-width:min(31rem,43vw);margin:0;display:grid;overflow:hidden;box-shadow:inset 0 0 0 1px #d4b15d09,0 2px 6px #0000002e}.ledger-profile__record>div{align-content:center;gap:.12rem;min-width:0;padding:.52rem .75rem;display:grid}.ledger-profile__record>div+div{border-left:1px solid var(--color-border)}.ledger-profile__record dt{color:var(--text-muted);font:600 var(--font-caption) Cinzel, serif;letter-spacing:.07em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;overflow:hidden}.ledger-profile__record dd{color:var(--text-primary);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;margin:0;font:700 .94rem "Source Sans 3",sans-serif;overflow:hidden}.ledger-profile__record>div:last-child dd{color:var(--color-accent-strong);font-family:EB Garamond,serif;font-size:1.25rem}.ledger-section{background:0 0;min-width:0}.ledger-section__heading{background:#0000001a;justify-content:space-between;align-items:center;gap:1rem;min-height:54px;padding:.6rem .85rem;display:flex}.ledger-section__heading h3,.ledger-section__heading p{margin:0}.ledger-action{border-radius:var(--radius-sm);min-height:42px;color:var(--color-accent-strong);cursor:pointer;background:0 0;border:0;align-items:center;gap:.3rem;padding:.4rem .55rem;text-decoration:none;display:inline-flex}.ledger-action:hover{background:#ffffff0a}.ledger-action svg{width:.95rem}.ledger-skills{border-right:1px solid var(--color-border)}.ledger-skills>.combat-power{border:0;border-left:3px solid var(--color-accent);border-bottom:1px solid var(--color-border);border-radius:0}.ledger-skills__rosters{padding:.25rem .85rem .8rem}.ledger-roster+.ledger-roster{margin-top:.4rem}.ledger-roster h4{color:var(--color-accent);font:600 var(--font-caption) Cinzel, serif;letter-spacing:.08em;text-transform:uppercase;margin:0;padding:.4rem .4rem .28rem}.ledger-roster table{border-collapse:collapse;width:100%}.ledger-roster thead th{color:var(--text-muted);font-size:var(--font-caption);text-align:left;padding:.25rem .4rem;font-weight:400}.ledger-roster__row{border-top:1px solid var(--color-border)}.ledger-roster__row>*{padding:.35rem .4rem}.ledger-roster__row th{text-align:left;width:24%}.ledger-roster__row th a{color:var(--text-primary);text-underline-offset:.2em;text-decoration-color:#d4b15d8c}.ledger-roster__locked{color:var(--text-muted);font-weight:400;display:grid}.ledger-roster__rank{width:4rem}.ledger-roster__rank small{display:none}.ledger-roster__rank strong{color:var(--color-accent-strong)}.ledger-roster__progress{width:56%}.ledger-roster__progress .progress{width:min(100%,32rem)}.ledger-equipment{align-self:start;container-type:inline-size}.ledger-equipment__body{background:radial-gradient(circle at 64% 48%,#d4b15d0e,#0000 52%);grid-template:"guide guide""stats paperdoll"/clamp(11rem,32cqi,13.5rem) max-content;justify-content:center;align-items:stretch;gap:.2rem .25rem;min-width:0;padding:.5rem;display:grid}.ledger-equipment__guide{grid-area:guide;grid-template-columns:subgrid;border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:linear-gradient(90deg, var(--surface-level-3), #0d1912eb 56%, var(--surface-level-3));align-items:center;min-height:1.55rem;display:grid;overflow:hidden;box-shadow:inset 0 1px #d4b15d0b,0 2px 8px #0000001f}.ledger-equipment__guide p{min-width:0;color:var(--text-muted);font-size:var(--font-caption);text-align:center;margin:0;padding:.25rem .6rem;line-height:1.25}.ledger-equipment__stats{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--surface-level-3);flex-direction:column;grid-area:stats;min-width:0;margin:0;padding:.7rem;display:flex;box-shadow:inset 0 0 0 1px #d4b15d09}.ledger-equipment__stats header{border-bottom:1px solid var(--color-border);padding-bottom:.55rem}.ledger-equipment__stats h4,.ledger-equipment__stats p{margin:0}.ledger-equipment__stats h4{margin-top:.08rem;font:700 1rem EB Garamond,serif}.ledger-equipment__stats dl{gap:.34rem;margin:.65rem 0;display:grid}.ledger-equipment__stats dl>div{border-radius:var(--radius-sm);background:#00000029;justify-content:space-between;align-items:center;gap:.6rem;min-height:36px;padding:.35rem .45rem;display:flex}.ledger-equipment__stats dt{color:var(--text-secondary);font-size:var(--font-caption);text-transform:uppercase}.ledger-equipment__stats dd{color:var(--color-accent-strong);font:700 1rem EB Garamond,serif}.ledger-equipment__gear{display:contents}.ledger-equipment .ledger-equipment__paperdoll{--equipment-slot-track:clamp(6rem, 20cqi, 7.6rem);background:0 0;grid-area:paperdoll;height:100%;padding:0}.ledger-equipment__paperdoll .equipment-slot-card{border-color:var(--color-border-strong);box-shadow:inset 0 0 0 1px #d4b15d0f,0 2px 6px #0000002e}.ledger-equipment__paperdoll .equipment-slot-card:hover,.ledger-equipment__paperdoll .equipment-slot-card--selected{border-color:var(--line-brass)}.ledger-equipment__paperdoll .equipment-slot-card--selected{box-shadow:inset 0 0 0 1px #d4b15d14,0 0 0 2px #d4b15d29}.ledger-journal{border-top:1px solid var(--color-border);grid-column:1/-1}.ledger-journal__entries{grid-template-columns:repeat(2,1fr);gap:0 1rem;margin:0;padding:.25rem .85rem .65rem;list-style:none;display:grid}.ledger-journal__entry{border-bottom:1px solid var(--color-border);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.55rem;min-height:38px;font-size:.82rem;display:grid}.ledger-journal__mark{background:var(--color-accent);border-radius:50%;width:6px;height:6px}.ledger-journal__entry[data-kind=combat] .ledger-journal__mark{background:var(--health-500)}.ledger-journal__entry time{color:var(--text-muted);font-size:var(--font-caption)}.ledger-journal__empty{min-height:56px;color:var(--text-muted);align-items:center;gap:.6rem;display:flex}.skill-index{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--surface-level-3);padding:.75rem;overflow:hidden;box-shadow:0 14px 34px #0000002e}.skill-index__header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:end;gap:1rem;padding:.15rem .1rem .75rem;display:flex}.skill-index__heading{min-width:0}.skill-index__heading .eyebrow{margin-bottom:.15rem}.skill-index__title-row{flex-wrap:wrap;align-items:baseline;gap:.35rem .65rem;display:flex}.skill-index__title-row h3{margin:0;font-size:1.18rem}.skill-index__count{color:var(--text-muted);font-size:var(--font-caption);font-variant-numeric:tabular-nums}.skill-index__search{gap:.25rem;width:min(19rem,100%);display:grid}.skill-index__search>span:first-child{color:var(--text-muted);font:600 var(--font-caption) Cinzel, serif;letter-spacing:.1em;text-transform:uppercase}.skill-index__search-field{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--ink-950);min-height:44px;transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.5rem;padding:0 .65rem;display:grid}.skill-index__search-field:focus-within{border-color:var(--line-brass);box-shadow:0 0 0 3px #d4b15d1f}.skill-index__search-field svg{width:1rem;height:1rem;color:var(--text-muted)}.skill-index__search-field input{width:100%;min-width:0;color:var(--text-primary);font:inherit;background:0 0;border:0;outline:0;padding:0;font-size:.82rem}.skill-index__search-field input::placeholder{color:var(--text-muted)}.skill-index__body{grid-template-columns:10.5rem minmax(0,1fr);gap:1rem;padding-top:.75rem;display:grid}.skill-index__filters{align-content:start;gap:.4rem;display:grid}.skill-index__filters button{border-radius:var(--radius-sm);min-height:42px;color:var(--text-secondary);font:inherit;text-align:left;cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out);background:0 0;border:1px solid #0000;justify-content:space-between;align-items:center;gap:.6rem;padding:.45rem .6rem;font-size:.76rem;display:flex}.skill-index__filters button:hover{color:var(--text-primary);background:#ffffff09}.skill-index__filters button.is-selected{border-color:var(--color-border-strong);color:var(--text-primary);background:var(--forest-700);box-shadow:inset 3px 0 var(--color-accent)}.skill-index__filters button strong{min-width:1.35rem;color:var(--color-accent-strong);font-size:var(--font-caption);font-variant-numeric:tabular-nums;text-align:center;background:#0000002e;border-radius:999px;padding:.08rem .3rem}.skill-index__results{min-width:0}.skill-index__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.skill-index__grid li{min-width:0}.skill-index__skill{border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;min-height:78px;color:var(--text-secondary);font:inherit;text-align:left;cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);background:#0000001a;grid-template-columns:2.5rem minmax(0,1fr) auto;align-items:center;gap:.65rem;padding:.55rem .65rem;display:grid}.skill-index__skill:hover{border-color:var(--color-border-strong);background:#ffffff06}.skill-index__skill.is-current{border-color:var(--line-brass);background:linear-gradient(100deg,#2c5b3c7a,#12241961);box-shadow:inset 0 0 0 1px #d4b15d14}.skill-index__icon{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:2.5rem;height:2.5rem;color:var(--color-accent-strong);background:var(--ink-950);place-items:center;display:grid}.skill-index__icon svg{width:1.35rem;height:1.35rem}.skill-index__copy{align-content:center;gap:.08rem;min-width:0;display:grid}.skill-index__copy>strong{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.skill-index__copy small{color:var(--text-muted);font-size:var(--font-caption)}.skill-index__viewing{color:#b8d4ad;width:fit-content;font-size:var(--font-caption);letter-spacing:.05em;text-transform:uppercase;margin-top:.12rem;font-weight:700}.skill-index__level{justify-items:end;gap:.04rem;min-width:2rem;display:grid}.skill-index__level small{color:var(--text-muted);font-size:var(--font-caption);letter-spacing:.06em;text-transform:uppercase}.skill-index__level strong{color:var(--color-accent-strong);font-variant-numeric:tabular-nums;font:700 1rem Cinzel,serif}.skill-index__empty{border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);min-height:166px;color:var(--text-muted);text-align:center;place-content:center;justify-items:center;gap:.25rem;padding:1.25rem;display:grid}.skill-index__empty>svg{width:1.5rem;height:1.5rem;color:var(--color-accent);margin-bottom:.2rem}.skill-index__empty h4,.skill-index__empty p{margin:0}.skill-index__empty p{font-size:var(--font-caption)}.skill-index__empty .button{min-height:40px;margin-top:.45rem}.skill-badge{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--surface-level-3);min-width:9rem;padding:.6rem .7rem}.skill-badge__header{justify-content:space-between;align-items:center;gap:.6rem;font-size:.78rem;display:flex}.skill-badge__header strong{color:var(--color-accent-strong)}.skill-badge--compact .progress{display:none}.workbench{border-radius:var(--radius-lg);background:var(--surface-level-1-alt);border:0;padding:0;overflow:hidden;box-shadow:0 14px 34px #0000002e}.workbench>.panel__header{background:#0000001a;margin:0;padding:.75rem 1rem}.workbench>.progress{margin:.6rem 1rem}.content-card,.recipe-row{background:0 0}.recipe-row.selected{background:var(--forest-800);box-shadow:inset 3px 0 var(--color-accent)}.stat-list div{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:1rem;min-height:28px;padding-bottom:.18rem;font-size:.78rem;display:flex}.recipe-list{display:grid}.skill-task-list{padding:.2rem .9rem .75rem}.recipe-row{border:0;border-top:1px solid var(--color-border);grid-template-columns:5.5rem minmax(0,1fr) 8.5rem;align-items:center;gap:.8rem;min-height:112px;padding:.75rem .25rem;display:grid}.recipe-row>.item-icon--large{width:5.25rem;height:5.25rem}.recipe-row__main{justify-content:space-between;align-items:center;gap:1rem;min-width:0;display:flex}.recipe-summary{justify-items:start;gap:.18rem;min-width:10rem;display:grid}.recipe-summary>span{color:var(--text-muted);font-size:var(--font-caption)}.skill-task-row__description{max-width:34rem;color:var(--text-secondary);text-align:right;margin:0;font-size:.78rem;line-height:1.4}.ingredients{flex-wrap:wrap;justify-content:flex-end;gap:.25rem;display:flex}.ingredients>span{border-radius:var(--radius-sm);font-size:var(--font-caption);background:#ffffff09;padding:.2rem .35rem}.ingredients .available{color:#b8d4ad}.ingredients .missing{color:#e3a099;background:#b64f451f}.recipe-row>.task-progress{grid-column:1/-1}.task-progress{border-radius:var(--radius-sm);background:var(--forest-800);padding:.45rem .55rem .5rem}.content-card .task-progress{margin-bottom:.6rem}.task-progress__status{justify-content:space-between;align-items:center;gap:.8rem;margin-bottom:.3rem;line-height:1.5;display:flex}.task-progress__status span{color:#c8dfbd;font-size:var(--font-caption);text-transform:uppercase;font-weight:700}.task-progress__status i{background:var(--color-success);border-radius:50%;width:.4rem;height:.4rem;margin-right:.2rem;animation:2.4s infinite beacon;display:inline-block}.task-progress__status strong{color:var(--text-secondary);font-size:var(--font-caption)}.task-progress .progress{height:.95rem}.task-progress__status>span,.task-progress__status>strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.task-progress__status>strong{font-variant-numeric:tabular-nums;flex:none}.task-progress--idle{background:#0000001a}.task-progress--idle .task-progress__status span,.task-progress__idle span{color:var(--text-muted)}.task-progress--idle .task-progress__status i{background:var(--text-muted);animation:none}.bar-bank-adjuster{border-radius:var(--radius-sm);background:var(--surface-level-3);grid-template-columns:40px 52px 40px;padding:.2rem;display:grid}.bar-bank-adjuster button{border-radius:var(--radius-sm);min-height:40px;color:var(--color-accent-strong);background:var(--surface-level-2);cursor:pointer;border:0}.bar-bank-adjuster output{place-content:center;justify-items:center;display:grid}.bar-bank-adjuster output small{font-size:var(--font-caption);text-transform:uppercase}.bar-bank-adjuster output strong{color:var(--color-accent-strong)}.homestead-board{border-radius:var(--radius-lg);background:var(--surface-level-1-alt);padding:.65rem;box-shadow:0 14px 34px #0000002e}.homestead-board__header{box-shadow:none;background:0 0;border:0}.farming-intro{justify-content:space-between;align-items:center;gap:2rem;display:flex}.farming-intro h3,.farming-intro p:last-child{margin-bottom:0}.plot-grid{grid-template-columns:repeat(3,1fr);gap:.65rem;display:grid}.plot{background:var(--surface-level-1);overflow:hidden}.plot--ready{box-shadow:inset 0 0 0 1px #82aa72a6}.plot__soil{border-bottom:1px solid var(--color-border);background:linear-gradient(#11180e0d,#11180e38),url(/assets/farming/soil.webp) 50%/cover;place-items:end center;height:10rem;margin:-1rem -1rem .8rem;display:grid;position:relative;overflow:hidden}.plot__plant{object-fit:contain;object-position:center bottom;image-rendering:auto;filter:drop-shadow(0 3px 3px #0000004d);width:10rem;height:10rem;display:block}.plot__soil--sprouting .plot__plant{width:6rem;height:6rem;margin-bottom:.5rem}.plot__soil--growing .plot__plant{width:7.5rem;height:7.5rem;margin-bottom:.25rem}.plot__stage{border-radius:var(--radius-sm);color:#e7e1c6;font-size:var(--font-caption);background:#121a10e0;padding:.2rem .45rem;position:absolute;bottom:.55rem;right:.65rem}.plot__soil--ready .plot__stage{color:#e4efbf;box-shadow:inset 0 0 0 1px #bddfa973}.plot__heading{justify-content:space-between;align-items:center;gap:.6rem;display:flex}.plot__heading h3{margin-bottom:0}.seed-buttons{gap:.35rem;display:grid}.seed-buttons button{border-radius:var(--radius-sm);min-height:52px;color:var(--text-primary);background:var(--surface-level-2);text-align:left;cursor:pointer;border:0;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.6rem;padding:.45rem .55rem;display:grid}.seed-buttons button:disabled{color:var(--text-muted);background:var(--surface-level-1);cursor:not-allowed}.seed-choice__copy{gap:.1rem;min-width:0;display:grid}.seed-choice__copy>span,.seed-choice__copy>small{color:var(--text-secondary);font-size:var(--font-caption)}.combat-readiness{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--surface-level-1-alt);grid-template-columns:minmax(16rem,1.2fr) minmax(22rem,1fr) auto;align-items:center;gap:.75rem 1rem;padding:.75rem .9rem;display:grid}.combat-readiness--warning{background:linear-gradient(90deg, #84372833, transparent 48%), var(--surface-level-1-alt);border-color:#be704b9e}.combat-readiness__summary{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.65rem;min-width:0;display:grid}.combat-readiness__summary>svg{width:1.75rem;height:1.75rem;color:var(--color-accent)}.combat-readiness--warning .combat-readiness__summary>svg{color:#e5a088}.combat-readiness__summary h3,.combat-readiness__summary p{margin:0}.combat-readiness__summary h3{font-size:1.08rem}.combat-readiness__summary p:last-child{color:var(--text-secondary);font-size:var(--font-caption);margin-top:.12rem;line-height:1.35}.combat-readiness__facts{border:1px solid var(--color-border);border-radius:var(--radius-sm);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.combat-readiness__facts>div{border-right:1px solid var(--color-border);gap:.08rem;min-width:0;padding:.45rem .55rem;display:grid}.combat-readiness__facts>div:last-child{border-right:0}.combat-readiness__facts dt{color:var(--text-muted);font-size:var(--font-caption);letter-spacing:.05em;text-transform:uppercase}.combat-readiness__facts dd{color:var(--text-primary);font-size:var(--font-caption);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.combat-readiness__actions{flex-wrap:wrap;justify-content:flex-end;gap:.4rem;display:flex}.combat-readiness__actions .button{white-space:nowrap;min-height:44px}.combat-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:.75rem;display:grid}.combat-layout>section.panel{border-radius:var(--radius-lg);background:var(--surface-level-1-alt);border:0;padding:0;overflow:hidden}.combat-layout>section.panel>.panel__header{background:#0000001a;margin:0;padding:.75rem .9rem}.combat-layout>section.panel .monster-list{padding:.25rem .75rem .75rem}.monster-list{display:grid}.monster-row{border:0;border-top:1px solid var(--color-border);background:0 0;grid-template-columns:7rem minmax(0,1fr) 8.5rem;align-items:center;gap:.8rem;min-height:124px;padding:.65rem .2rem;display:grid}.monster-row.selected{background:var(--forest-800);box-shadow:inset 3px 0 var(--color-accent)}.monster-row>img{aspect-ratio:1;object-fit:contain;border:1px solid var(--line-brass);border-radius:var(--radius-sm);background:var(--surface-level-3);width:7rem;box-shadow:inset 0 0 0 1px #f0d4871f,0 2px 6px #0000003d}.monster-row__main{min-width:0}.monster-row__main>div:first-child{justify-content:space-between;gap:.5rem;display:flex}.monster-row__main span,.monster-row__main p{font-size:.76rem}.monster-row__main p{margin:.2rem 0;line-height:1.35}.monster-affinities{flex-wrap:wrap;gap:.3rem .6rem;margin:.3rem 0;display:flex}.monster-affinities>div{align-items:center;gap:.3rem;min-width:0;display:flex}.monster-affinities dt{color:var(--text-muted);font-size:var(--font-caption);letter-spacing:.04em;text-transform:uppercase;font-weight:700}.monster-affinities dd{flex-wrap:wrap;gap:.2rem;margin:0;display:flex}.monster-affinities dd>span{border:1px solid var(--color-border);color:var(--text-secondary);background:#0000001f;border-radius:999px;padding:.12rem .3rem;line-height:1.2}.monster-affinities dd small{font-size:var(--font-caption);font-weight:700}.monster-affinities__weak dd small{color:#b5d9a6}.monster-affinities__resist dd small{color:#e8bd87}.loot-preview{flex-wrap:wrap;gap:.22rem;display:flex}.loot-preview>span{border-radius:var(--radius-sm);background:#00000024;gap:.05rem;min-height:34px;padding:.18rem .32rem;display:grid}.loot-preview>span>span{color:var(--text-secondary)}.loot-preview small{color:#9fb098;font-size:var(--font-caption)}.loot-details-toggle{min-height:44px;color:var(--color-accent-strong);cursor:pointer;background:0 0;border:0;align-items:center;gap:.35rem;padding:.2rem 0;font-size:.75rem;display:inline-flex}.loot-details-toggle:hover{text-underline-offset:.2em;text-decoration:underline}.loot-details-toggle svg{width:.8rem;height:.8rem}.monster-loot{z-index:calc(var(--z-nav) + 10);visibility:hidden;overscroll-behavior:contain;border:1px solid var(--line-brass);border-radius:var(--radius-md);width:min(19rem,100% - 24px);max-height:min(420px,100dvh - 24px);color:var(--text-primary);background:var(--surface-level-1);padding:.5rem .75rem .75rem;position:fixed;overflow-y:auto;box-shadow:0 8px 24px #0006}.monster-loot__header{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.monster-loot__header h2{margin:0;font-size:1.2rem;line-height:1.2}.monster-loot__close{border-radius:var(--radius-sm);width:44px;height:44px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;display:grid}.monster-loot__close:hover{background:var(--surface-level-2);color:var(--text-primary)}.monster-loot__gold{color:var(--color-accent-strong);align-items:center;gap:.4rem;margin:.25rem 0 .5rem;font-size:.8rem;display:flex}.monster-loot__gold svg{width:1rem;height:1rem}.monster-loot__items{margin:0;padding:0;list-style:none}.monster-loot__items li{border-top:1px solid var(--color-border);grid-template-columns:2.2rem minmax(0,1fr) auto;align-items:center;gap:.5rem;padding:.5rem 0;display:grid}.monster-loot__items li>div{gap:.15rem;min-width:0;display:grid}.monster-loot__items strong{font-size:.8rem;line-height:1.3}.monster-loot__items small{color:var(--text-muted);font-size:var(--font-caption)}.monster-loot__chance{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:.8rem}.monster-loot__hint{border-top:1px solid var(--color-border);color:var(--text-muted);font-size:var(--font-caption);margin:.5rem 0 0;padding-top:.5rem}.monster-row__action{gap:.35rem;display:grid}.danger{border-radius:var(--radius-sm);min-height:24px;font-size:var(--font-caption);text-transform:uppercase;place-items:center;display:grid}.danger--low{color:#b5d9a6;background:#82aa721a}.danger--mid{color:#ebcc7b;background:#d4a34e1c}.danger--high{color:#f0aaa2;background:#b64f451f}.stat-list{gap:.25rem;margin:0;display:grid}.combat-skill-panel{border-radius:var(--radius-lg);background:var(--surface-level-1-alt);border:0;padding:0;overflow:hidden}.combat-skill-panel>.panel__header{background:#0000001a;margin:0;padding:.75rem 1rem}.combat-skill-table-wrap{overflow-x:auto}.combat-skill-table{table-layout:fixed;border-collapse:collapse;width:100%}.combat-skill-table thead{background:#0000001f}.combat-skill-table th,.combat-skill-table td{border-bottom:1px solid var(--color-border);vertical-align:middle;padding:.55rem .7rem}.combat-skill-table thead th{color:var(--text-muted);font-size:var(--font-caption);text-align:left;text-transform:uppercase;font-weight:700}.combat-skill-table thead th:first-child{width:27%}.combat-skill-table thead th:nth-child(2){width:10%}.combat-skill-table thead th:nth-child(3){width:43%}.combat-skill-table thead th:nth-child(4){width:20%}.combat-skill-table tbody tr:last-child>*{border-bottom:0}.combat-skill-table tbody th{text-align:left;white-space:nowrap}.combat-skill-icon{width:1.9rem;height:1.9rem;color:var(--color-accent);background:var(--surface-level-3);vertical-align:middle;border-radius:50%;place-items:center;margin-right:.5rem;display:inline-grid}.combat-skill-table tbody th>span:last-child{vertical-align:middle;display:inline-grid}.combat-skill-table tbody th small,.combat-skill-next small{font-size:var(--font-caption)}.combat-skill-rank{text-align:center}.combat-skill-rank small,.combat-skill-rank strong,.combat-skill-next strong,.combat-skill-next small{display:block}.combat-skill-rank small{font-size:var(--font-caption);text-transform:uppercase}.combat-skill-rank strong{color:var(--color-accent-strong);font-size:1.05rem}.combat-skill-next strong{font-size:var(--font-caption)}.combat-skill-table .progress{width:100%}.vital-rail{width:min(100%,21rem);color:var(--text-primary);gap:.28rem;display:grid}.vital-rail__meta{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.5rem;display:grid}.vital-rail__label{min-width:0;font-size:var(--font-caption);align-items:center;gap:.3rem;font-weight:700;display:inline-flex}.vital-rail__label svg{width:.95rem;height:.95rem;color:var(--health-500);fill:#df746929}.vital-rail--enemy .vital-rail__label svg{color:var(--color-accent);fill:#d4b15d1f}.vital-rail__status{color:#c9d7bf;font-size:var(--font-caption);text-transform:uppercase}.vital-rail--wounded .vital-rail__status{color:#e0b879}.vital-rail--critical .vital-rail__status,.vital-rail--defeated .vital-rail__status{color:#f09a8f}.vital-rail__value{color:#fff4de;text-align:right;min-width:4.3rem;font-size:.8rem}.vital-rail__track{background:var(--surface-level-3);min-height:18px;box-shadow:inset 0 0 0 1px var(--color-border-strong);border-radius:999px;padding:3px 4px}.vital-rail__segments{grid-template-columns:repeat(12,1fr);gap:2px;height:12px;display:grid}.vital-rail__segment{background:#241713;border-radius:2px;position:relative;overflow:hidden}.vital-rail__segment>span{width:var(--vital-segment-fill);background:var(--health-600);position:absolute;inset:0}.vital-rail--player .vital-rail__segment:nth-child(3n)>span{background:#c4584e}.vital-rail--critical .vital-rail__segment>span{background:var(--health-500)}.vital-rail--defeated .vital-rail__segment>span{background:#65514a}.bank-count{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--surface-level-3);justify-items:center;min-width:8rem;padding:.55rem .8rem;display:grid}.bank-count strong{color:var(--color-accent-strong);font:700 1.6rem EB Garamond,serif}.bank-count span{color:var(--text-muted);font-size:var(--font-caption);text-transform:uppercase}.page-heading.vault-heading{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--surface-level-1);padding:.85rem 1rem}.vault-frame{border-radius:var(--radius-lg);background:var(--surface-level-1-alt);overflow:clip;box-shadow:0 14px 34px #0003}.vault-ledger{top:var(--shell-topbar-height);z-index:10;background:#171e18fa;padding:.65rem .8rem;position:sticky;box-shadow:0 7px 15px #00000026}.vault-ledger__identity{grid-template-columns:auto 1fr auto;align-items:center;gap:.6rem;margin-bottom:.5rem;display:grid}.vault-ledger__identity>svg{width:1.55rem;height:1.55rem;color:var(--color-accent)}.vault-ledger__identity h3,.vault-ledger__identity p{margin:0}.vault-ledger__identity>span{color:var(--text-muted);font-size:var(--font-caption)}.vault-ledger__query{grid-template-columns:minmax(14rem,1fr) auto auto;gap:.45rem;display:grid}.search-field{border-radius:var(--radius-sm);background:var(--surface-level-3);min-height:44px;box-shadow:inset 0 0 0 1px var(--color-border-strong);grid-template-columns:auto 1fr;align-items:center;gap:.45rem;padding:0 .65rem;display:grid}.search-field svg{color:var(--text-muted)}.search-field input{width:100%;min-height:44px;color:var(--text-primary);background:0 0;border:0;outline:0;font-size:1rem}.sort-field{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:linear-gradient(180deg, #d4b15d09, transparent), var(--surface-level-3);cursor:pointer;min-width:9.5rem;min-height:44px;transition:border-color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto;align-content:center;gap:0 .55rem;padding:.28rem .7rem .3rem;display:grid;position:relative}.sort-field:hover{border-color:var(--line-brass);background:linear-gradient(180deg, #d4b15d13, transparent), var(--surface-level-3)}.sort-field:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 3px #d4b15d1f}.sort-field:after{content:"";z-index:1;border-right:2px solid var(--color-accent-strong);border-bottom:2px solid var(--color-accent-strong);pointer-events:none;grid-area:1/2/3;align-self:center;width:.42rem;height:.42rem;margin-top:-.2rem;transform:rotate(45deg)}.sort-field span{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;grid-area:1/1;font-size:.64rem;font-weight:700;line-height:1}.sort-field select{width:100%;min-width:0;color:var(--text-primary);cursor:pointer;appearance:none;background:0 0;border:0;outline:0;grid-area:2/1/auto/3;align-self:end;padding:.08rem 1.35rem 0 0;font:700 .84rem/1.15 "Source Sans 3",sans-serif}.sort-field select option{color:var(--text-primary);background:var(--surface-level-3)}.vault-inline-confirm{border-radius:var(--radius-sm);color:#f1d8d3;background:var(--danger-surface);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.45rem;margin-top:.45rem;padding:.5rem;display:grid}.vault-inline-confirm>span{font-size:.8rem;font-weight:700}.vault-inline-confirm--stack{grid-template-columns:1fr 1fr}.vault-inline-confirm--stack>span{grid-column:1/-1}.filter-row{gap:.25rem;display:flex}.vault-filter-rail{scrollbar-width:thin;margin-top:.45rem;padding-bottom:.12rem;overflow-x:auto}.filter-row button{border-radius:var(--radius-sm);min-width:44px;min-height:44px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;flex:none;padding:.4rem .65rem}.filter-row button:hover{background:#ffffff0a}.filter-row button.active{color:var(--text-primary);background:var(--forest-700);box-shadow:inset 0 -2px var(--color-accent)}.vault-body{grid-template-columns:minmax(0,1fr);align-items:start;display:grid}.vault-body--inspecting{grid-template-columns:minmax(0,1fr) minmax(20rem,24rem)}.vault-collection{min-width:0;padding:.65rem}.vault-shelves{gap:.6rem;display:grid}.vault-shelf{border-radius:var(--radius-md);background:#0000001a;min-width:0}.vault-shelf__header{justify-content:space-between;align-items:center;min-height:38px;padding:.35rem .6rem;display:flex}.vault-shelf__header h3{color:var(--color-accent-strong);margin:0;font-size:.96rem}.vault-shelf__header span{color:var(--text-muted);font-size:var(--font-caption)}.vault-shelf__rail{border-radius:0 0 var(--radius-md) var(--radius-md);background:var(--color-border);grid-template-columns:repeat(auto-fill,minmax(8.3rem,1fr));gap:1px;display:grid;overflow:hidden}.bank-tile{min-width:0;min-height:108px;color:var(--text-primary);background:var(--surface-level-3);cursor:pointer;border:0;align-content:center;justify-items:center;gap:.2rem;padding:.55rem .38rem;display:grid;position:relative}.bank-tile:hover{background:var(--surface-level-2)}.bank-tile.selected{background:var(--forest-700);box-shadow:inset 3px 0 var(--color-accent)}.bank-tile__quantity{border-radius:var(--radius-sm);color:var(--color-accent-strong);font-size:var(--font-caption);background:#0000008c;padding:.13rem .28rem;position:absolute;top:.35rem;right:.35rem}.vault-item__copy{justify-items:center;min-width:0;display:grid}.vault-item__copy strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.78rem;overflow:hidden}.vault-item__copy small{font-size:var(--font-caption)}.vault-item__markers{flex-wrap:wrap;justify-content:center;gap:.2rem;display:flex}.vault-item__markers em{color:#d6eacc;font-size:var(--font-caption);font-style:normal}.vault-inspector-drawer{--inspector-top:calc(var(--shell-topbar-height) + var(--vault-ledger-height,11rem) + .5rem);top:var(--inspector-top);min-width:0;max-height:calc(100dvh - var(--inspector-top) - 1rem);overscroll-behavior:contain;border-left:1px solid var(--color-border);background:var(--surface-level-1);padding:.8rem;position:sticky;overflow-y:auto}.vault-inspector__header{z-index:1;border-bottom:1px solid var(--color-border);background:var(--surface-level-1);grid-template-columns:minmax(0,1fr) auto;gap:.55rem;padding-block:.4rem .65rem;display:grid;position:sticky;top:-.8rem}.vault-inspector__identity{align-items:center;gap:.6rem;min-width:0;display:flex}.vault-inspector__identity h3{margin:.15rem 0 0}.vault-inspector__identity strong{color:var(--color-accent-strong);font-size:.78rem}.vault-inspector__close{align-self:start;width:44px;min-width:44px;height:44px;padding:0}.vault-inspector__body{padding:.7rem 0}.vault-inspector__body p{font-size:.84rem}.vault-inspector__actions{gap:.4rem;display:grid}.equipment-comparison{min-width:0;margin-block:.65rem}.equipment-comparison__context{color:var(--color-accent-strong);margin:0 0 .4rem;font-size:.8rem}.equipment-comparison table{border-collapse:collapse;width:100%;font-size:.8rem}.equipment-comparison th,.equipment-comparison td{border-bottom:1px solid var(--color-border);text-align:right;padding:.3rem .2rem}.equipment-comparison th:first-child{text-align:left}.equipment-comparison thead{color:var(--text-secondary);font-size:var(--font-caption)}.equipment-comparison td:last-child{font-variant-numeric:tabular-nums;font-weight:700}.equipment-comparison__meta,.equipment-requirements{color:var(--text-secondary);font-size:var(--font-caption);margin:.45rem 0}.equipment-comparison__warning{color:#f0b7a6;margin:.45rem 0;font-size:.76rem}.equipment-requirements{padding-left:1.15rem}.equipment-requirements span{color:var(--text-secondary)}.stat-gain{color:#bddfa9}.stat-loss{color:#f0b7a6}.stat-unchanged{color:var(--text-muted)}.equipment-candidate{border:1px solid var(--color-border);border-radius:var(--radius-sm);min-width:0}.equipment-candidate>summary{cursor:pointer;list-style:none}.equipment-candidate>summary::-webkit-details-marker{display:none}.equipment-candidate[open]>summary{background:var(--forest-800)}.equipment-candidate__details{padding:0 .65rem .65rem}.empty-state{text-align:center;align-content:center;place-items:center;gap:.45rem;min-height:15rem;padding:2rem;display:grid}.empty-state>svg{width:2rem;height:2rem;color:var(--color-accent)}.empty-state p{margin-bottom:.4rem}.shop-screen{width:100%;max-width:75rem;margin-inline:auto;container:market-page/inline-size}.market-ledger{border-radius:var(--radius-lg);background:var(--surface-level-1-alt);border:0;overflow:hidden;box-shadow:0 18px 42px #00000042,inset 0 1px #ffffff06}.market-ledger__masthead{border-bottom:1px solid var(--color-border-strong);background:linear-gradient(105deg, #d4b15d12, transparent 42%), var(--surface-level-1);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1.5rem;min-height:104px;padding:1rem 1.25rem;display:grid}.market-ledger__title{min-width:0}.market-ledger__title h2,.market-ledger__title p{margin:0}.market-ledger__title h2[tabindex="-1"]:focus{outline:0}.market-ledger__title h2{font-size:clamp(1.75rem,3vw,2.15rem)}.market-ledger__title>p:last-child{max-width:40rem;color:var(--text-secondary);margin-top:.18rem;font-size:.9rem}.market-ledger__tools{align-items:stretch;gap:.75rem;display:flex}.market-switcher{background:0 0;border:0;align-items:center;gap:.15rem;width:fit-content;padding:0;display:flex}.market-switcher button{border-radius:var(--radius-sm);min-height:44px;color:var(--text-secondary);white-space:nowrap;cursor:pointer;transition:color var(--duration-fast), background-color var(--duration-fast), box-shadow var(--duration-fast);background:#ffffff0b;border:0;padding:.5rem .9rem;box-shadow:inset 0 -2px #ffffff0e}.market-switcher button:hover{color:var(--text-primary);background:#ffffff16;box-shadow:inset 0 -2px #d4b15d6b}.market-switcher button.active{color:var(--color-accent-strong);background:var(--forest-700);box-shadow:inset 0 -2px var(--color-accent)}.merchant-seal{border-left:1px solid var(--line-brass);min-width:10.5rem;color:var(--text-secondary);background:linear-gradient(90deg,#d4b15d0e,#0000);grid-template-columns:auto 1fr;align-items:center;gap:.12rem .55rem;padding:.55rem .75rem;display:grid}.merchant-seal svg{color:var(--color-accent);grid-row:1/3}.merchant-seal span{color:var(--text-muted);font-size:var(--font-caption);text-transform:uppercase}.merchant-seal strong{color:var(--color-accent-strong);font:700 1rem EB Garamond,serif}.market-board{background:var(--surface-level-1-alt);grid-template-columns:minmax(17rem,min(32%,23rem)) minmax(0,1fr);display:grid;overflow:hidden}.merchant-stall{border-right:1px solid var(--color-border-strong);background:linear-gradient(180deg, #d4b15d09, transparent 65%), var(--surface-level-1);flex-direction:column;gap:.75rem;min-width:0;padding:1.25rem;display:flex}.merchant-stall__identity{text-align:center;justify-items:center;gap:.65rem;min-width:0;margin:0;display:grid}.merchant-stall__identity figcaption{width:100%}.merchant-stall__role{color:var(--color-accent);font:600 var(--font-caption)/1.3 Cinzel, serif;letter-spacing:.12em;text-transform:uppercase;margin:0 0 .22rem}.merchant-stall__name{color:var(--text-primary);margin:0;font:700 2rem/1 EB Garamond,Georgia,serif}.merchant-stall__portrait{aspect-ratio:5/6;border-radius:var(--radius-sm);background:var(--surface-level-3);width:min(100%,18rem);box-shadow:0 0 0 1px var(--line-brass), 0 0 0 4px var(--surface-level-3), 0 10px 20px #00000038;margin:0;overflow:hidden}.merchant-stall__portrait img{object-fit:contain;width:100%;height:100%;display:block}.merchant-stall__copy{border-top:1px solid var(--color-border);text-align:center;padding-top:.65rem}.merchant-stall__copy blockquote{max-width:25ch;color:var(--text-secondary);text-wrap:balance;margin:0 auto;font:italic 600 1.075rem/1.35 EB Garamond,Georgia,serif}.merchant-stall>.button{margin-top:auto}.merchant-stall__confirm{border-radius:var(--radius-sm);background:var(--danger-surface);gap:.4rem;padding:.6rem;display:grid}.merchant-stall__confirm>span{color:#f1d8d3;font-size:.78rem}.stock-ledger{grid-template-rows:auto 1fr;min-width:0;display:grid}.stock-ledger__header{background:#0000001a;align-content:center;min-height:116px;padding:1.1rem 1.25rem;display:grid}.stock-ledger__header h3,.stock-ledger__header p{margin:0}.stock-ledger__header h3{font-size:1.5rem}.stock-ledger__header>p{color:var(--paper-300);margin-top:.35rem;font-size:.84rem}.stock-ledger__list{grid-template-rows:repeat(4,minmax(112px,1fr));margin:0;padding:0 1.25rem;list-style:none;display:grid}.stock-row{border-bottom:1px solid var(--color-border);grid-template-columns:minmax(0,1fr) 20.5rem;align-items:center;gap:1rem;min-width:0;min-height:112px;padding:.85rem 0;display:grid}.stock-row:last-child{border-bottom:0}.stock-row__item{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.65rem;min-width:0;display:grid}.stock-row__item .item-icon{width:68px;height:68px}.stock-row__item .item-icon img{object-fit:contain}.stock-row__item h4,.stock-row__item p{margin:0}.stock-row__item p{margin-top:.15rem;font-size:.78rem;line-height:1.4}.stock-row__facts{flex-wrap:wrap;gap:.1rem .8rem;margin:.4rem 0 0;display:flex}.stock-row__facts>div{font-size:var(--font-caption);gap:.3rem;display:flex}.stock-row__facts dt{color:var(--paper-300)}.stock-row__facts dd{color:var(--text-secondary)}.stock-row__purchase{grid-template-columns:9.5rem 4.5rem 5.5rem;align-items:center;gap:.5rem;min-width:0;display:grid}.quantity-stepper{border-radius:var(--radius-sm);background:var(--surface-level-3);min-height:44px;box-shadow:inset 0 0 0 1px var(--color-border-strong);grid-template-columns:44px 1fr 44px;align-items:center;display:grid}.quantity-stepper button{border-radius:var(--radius-sm);min-width:44px;min-height:44px;color:var(--text-primary);cursor:pointer;background:0 0;border:0}.quantity-stepper button:hover:not(:disabled){background:var(--forest-700)}.quantity-stepper output{text-align:center}.stock-row__total{justify-items:end;width:4.5rem;display:grid}.stock-row__total span{color:var(--text-muted);font-size:var(--font-caption);text-transform:uppercase}.stock-row__total strong{color:var(--color-accent-strong);white-space:nowrap;font-size:.95rem}.market-sale__header{grid-template-columns:minmax(11rem,.75fr) minmax(18rem,1.25fr);align-items:end;gap:1rem}.market-sale__header>div>p:last-child{color:var(--paper-300);margin-top:.25rem;font-size:.78rem}.market-sale__filters{grid-template-columns:minmax(12rem,1fr) auto;gap:.45rem;display:grid}.market-sale__list{grid-template-rows:none;grid-auto-rows:minmax(112px,auto)}.market-quantity-control{grid-template-columns:minmax(0,1fr);gap:.35rem;min-width:0;height:44px;display:grid}.market-quantity-control--with-max{grid-template-columns:minmax(0,1fr) 44px}.market-quantity-control .quantity-stepper{width:100%;min-width:0}.market-quantity-max{width:44px;min-width:44px;min-height:44px;font-size:var(--font-caption);padding:.25rem}.market-row__submit{width:5.5rem;min-width:5.5rem;height:44px;min-height:44px;padding-inline:.35rem;font-size:.8rem;line-height:1.05}.market-sale__reserved{color:#bddfa9;font-size:var(--font-caption);margin-top:.3rem;display:block}.market-sale__confirm{border-radius:var(--radius-sm);background:var(--danger-surface);grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.45rem;padding:.55rem;display:grid}.market-sale__confirm>span{color:#f1d8d3;font-size:.78rem;font-weight:700}.market-sale__empty{min-height:24rem}.economy-note{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--surface-level-1-alt);padding:0}.economy-note summary{min-height:48px;color:var(--text-primary);cursor:pointer;justify-content:space-between;align-items:center;padding:.6rem .8rem;list-style:none;display:flex}.economy-note summary::-webkit-details-marker{display:none}.economy-note[open] summary svg{transform:rotate(90deg)}.economy-note p{padding:0 .8rem .8rem}.market-board__notice{border:0;border-top:1px solid var(--color-border-strong);background:linear-gradient(90deg, #d4b15d0b, transparent 38%), var(--surface-level-1);border-radius:0}.market-board__notice summary{min-height:58px;padding:.65rem 1.25rem}.market-board__notice summary>span{gap:.05rem;display:grid}.market-board__notice summary small{color:var(--color-accent);font:600 var(--font-caption)/1.3 Cinzel, serif;letter-spacing:.11em;text-transform:uppercase}.market-board__notice summary svg{color:var(--color-accent);transition:transform var(--duration-fast)}.market-board__notice-copy{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;padding:0 1.25rem 1rem;display:grid}.market-board__notice-copy p{color:var(--text-secondary);margin:0;padding:0;font-size:.78rem;line-height:1.5}.creation-shell{background:var(--color-app);place-items:center;min-height:100dvh;padding:clamp(1rem,4vw,3rem);display:grid;position:relative;overflow:hidden}.creation-horizon{background:linear-gradient(to bottom, #090d0a0a, #090d0ab3 68%, var(--color-app) 100%), var(--world-backdrop-image) center / cover no-repeat;position:absolute;inset:0}.creation-card{border-color:var(--line-brass);border-radius:var(--radius-lg);background:#121812f5;width:min(100%,650px);padding:clamp(1.3rem,4vw,2rem);position:relative}.creation-identity{text-align:left;justify-content:center;align-items:center;gap:.9rem;margin-bottom:1.3rem;display:flex}.creation-mark{object-fit:contain;image-rendering:auto;filter:drop-shadow(0 2px 2px #00000059);width:60px;height:60px;display:block}.creation-identity small,.creation-identity span{color:var(--color-accent);font:600 var(--font-caption) Cinzel, serif;letter-spacing:.16em;text-transform:uppercase}.creation-identity h1{text-transform:uppercase;margin:0;font-size:2rem}.creation-copy{border-radius:var(--radius-md);background:var(--surface-level-3);grid-template-columns:auto 1fr;align-items:center;gap:.8rem;padding:.8rem;display:grid}.creation-copy .player-portrait{width:66px;height:88px}.creation-copy h2{margin-bottom:.25rem;font-size:1.5rem}.creation-copy p:last-child{margin:0;font-size:.87rem}.creation-card form{margin-top:1rem;display:grid}.creation-gender{border:0;min-width:0;margin:0 0 .8rem;padding:0}.creation-gender legend{color:var(--text-primary);margin-bottom:.4rem;font-size:.88rem}.creation-gender__options{grid-template-columns:repeat(2,1fr);gap:.5rem;display:grid}.creation-gender__options label{border-radius:var(--radius-md);color:var(--text-secondary);background:var(--surface-level-3);cursor:pointer;justify-items:center;gap:.28rem;padding:.45rem;display:grid;position:relative}.creation-gender__options label:hover{background:var(--surface-level-2)}.creation-gender__options label.selected{box-shadow:inset 0 0 0 1px var(--line-brass);background:var(--forest-900)}.creation-gender__options label:focus-within{outline:var(--focus-ring);outline-offset:2px}.creation-gender__options input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}.creation-gender__options strong{font:600 .77rem Cinzel,serif}.creation-card label{font-size:.88rem}.creation-card>form>input{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);min-height:48px;color:var(--text-primary);background:var(--surface-level-3);margin-top:.35rem;padding:0 .75rem}.creation-card form small{margin:.35rem 0 .65rem;font-size:.78rem;display:block}.creation-footnote{color:var(--text-muted);text-align:center;margin:.8rem 0 0;font-size:.76rem}.toast{z-index:var(--z-toast);border:1px solid var(--line-brass);border-radius:var(--radius-md);max-width:min(24rem,100vw - 2rem);min-height:52px;color:var(--text-primary);background:var(--surface-level-2);grid-template-columns:1fr auto;align-items:center;gap:.7rem;padding:.55rem .55rem .55rem .8rem;display:grid;position:fixed;bottom:1rem;right:1rem;box-shadow:0 14px 32px #0000006b}.toast--error{background:var(--danger-surface);border-color:#df7469a6}.toast--warning{background:linear-gradient(135deg, #533e18f5, var(--surface-level-2));border-color:#e0b879b8}.toast>button{border-radius:var(--radius-sm);min-width:44px;min-height:44px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.toast>button:hover{background:#ffffff0d}.modal-backdrop{z-index:var(--z-modal);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#050806d6;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.provisions-dialog{width:min(34rem,100vw - 2rem);max-height:min(44rem,100dvh - 2rem);padding:1rem;overflow:auto}.provisions-dialog__header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:.65rem;display:flex}.provisions-dialog__header h2{margin:0;font-size:1.45rem}.provisions-dialog__description{color:var(--text-secondary);margin:.7rem 0;font-size:.88rem;line-height:1.45}.provisions-current{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--surface-level-2);grid-template-columns:auto minmax(0,1fr);gap:.75rem;padding:.8rem;display:grid}.provisions-current__empty{border:1px dashed var(--color-border-strong);border-radius:var(--radius-sm);width:64px;height:64px;color:var(--text-muted);place-items:center;display:grid}.provisions-current__empty svg{width:1.8rem;height:1.8rem}.provisions-current__copy{align-self:center;min-width:0}.provisions-current__copy>span{color:var(--color-accent);font-size:var(--font-caption);letter-spacing:.08em;text-transform:uppercase}.provisions-current__copy h3{margin:.1rem 0;font-size:1.15rem}.provisions-current__copy p{color:var(--text-secondary);margin:0;font-size:.8rem;line-height:1.35}.provisions-current__health{border-top:1px solid var(--color-border);grid-column:1/-1;gap:.35rem;padding-top:.65rem;display:grid}.provisions-current__health>span{justify-content:space-between;gap:.5rem;display:flex}.provisions-current__health small{color:var(--text-muted);text-transform:uppercase}.provisions-current__health strong{font-variant-numeric:tabular-nums}.provisions-current__health .progress{width:100%}.provisions-dialog__actions{grid-template-columns:1fr 1fr;gap:.5rem;margin-top:.7rem;display:grid}.provisions-dialog__actions .button{min-height:44px}.auto-eat-settings{border:1px solid var(--color-border);border-radius:var(--radius-md);background:#0000001f;grid-template-columns:minmax(0,1fr) 11rem;align-items:center;gap:.75rem 1rem;margin-top:.8rem;padding:.85rem;display:grid}.auto-eat-settings h3{margin:.12rem 0;font-size:1.08rem}.auto-eat-settings p{color:var(--text-secondary);margin:0;font-size:.8rem;line-height:1.4}.auto-eat-settings__field{gap:.25rem;display:grid}.auto-eat-settings__field span{color:var(--text-muted);font-size:var(--font-caption);text-transform:uppercase}.auto-eat-settings__field select{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);width:100%;min-height:44px;color:var(--text-primary);background:var(--surface-level-3);font:inherit}.auto-eat-settings__note{border-top:1px solid var(--color-border);grid-column:1/-1;padding-top:.6rem}.modal{border-color:var(--line-brass);border-radius:var(--modal-radius);background:var(--surface-level-1);width:min(36rem,100%);max-height:90dvh;padding:1.25rem;overflow:auto;box-shadow:0 22px 60px #0000008c}.modal h2{font-size:1.4rem}.modal>.button{margin-top:.8rem}.activity-picker{z-index:calc(var(--z-nav) + 10);visibility:hidden;overscroll-behavior:contain;border:1px solid var(--line-brass);border-radius:var(--radius-md);width:min(19rem,100% - 24px);max-height:min(420px,100dvh - 24px);color:var(--text-primary);background:var(--surface-level-1);padding:.5rem .75rem .75rem;position:fixed;overflow-y:auto;box-shadow:0 8px 24px #0006}.activity-picker__header{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.activity-picker__header h2{margin:0;font-size:1.2rem;line-height:1.2}.activity-picker__close{border-radius:var(--radius-sm);width:44px;height:44px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;display:grid}.activity-picker__close:hover{background:var(--surface-level-2);color:var(--text-primary)}.activity-picker__description{color:var(--text-secondary);margin:0 0 .65rem;font-size:.75rem;line-height:1.4}.activity-picker__label{color:var(--text-muted);font:600 var(--font-caption)/1.4 Cinzel, serif;letter-spacing:.06em;text-transform:uppercase;margin:0 0 .35rem}.activity-picker__recents{margin:0;padding:0;list-style:none}.activity-picker__recent{border-top:1px solid var(--color-border);grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:.45rem;min-width:0;padding:.45rem 0;display:grid}.activity-picker__icon{width:20px;color:var(--color-accent);place-items:center;display:grid}.activity-picker__icon svg{stroke-width:1.4px;width:20px;height:20px}.activity-picker__detail{overflow-wrap:anywhere;gap:.15rem;min-width:0;display:grid}.activity-picker__detail strong{color:var(--text-primary);font:600 1rem/1.2 EB Garamond,Georgia,serif}.activity-picker__detail>span{color:var(--text-muted);font-size:.75rem;line-height:1.35}.activity-picker__reason{color:var(--color-accent-strong);font-size:.75rem;line-height:1.4}.activity-picker__action{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);min-width:76px;min-height:44px;color:var(--color-accent-strong);background:var(--surface-level-2);cursor:pointer;justify-content:center;align-items:center;gap:.3rem;padding:.3rem .4rem;font-size:.75rem;font-weight:700;display:inline-flex}.activity-picker__action svg{flex:none;width:13px;height:13px}.activity-picker__action--view{color:var(--text-secondary);background:0 0}.activity-picker__action:hover{border-color:var(--line-brass);color:var(--text-primary)}.activity-picker__empty{color:var(--text-muted);margin:0;padding:.35rem 0 .65rem;font-size:.8rem;line-height:1.4}.activity-picker__feedback{color:var(--color-accent-strong);margin:.5rem 0;font-size:.8rem}.activity-picker__browse{border-top:1px solid var(--color-border-strong);margin-top:.35rem;padding-top:.6rem}.activity-picker__paths{grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;display:grid}.activity-picker__paths a{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);min-width:0;min-height:44px;color:var(--text-primary);background:var(--surface-level-2);transition:border-color var(--duration-fast);align-items:center;gap:.4rem;padding:.4rem .5rem;text-decoration:none;display:flex}.activity-picker__paths a:hover{border-color:var(--line-brass)}.activity-picker__paths a>svg{width:18px;height:18px;color:var(--color-accent);stroke-width:1.5px}.activity-picker__paths strong{font-size:.8rem}.activity-picker__paths .activity-picker__path-arrow{width:12px;height:12px;margin-left:auto}.offline-grid{grid-template-columns:repeat(2,1fr);gap:.35rem;margin:.8rem 0;display:grid}.offline-grid div{border-radius:var(--radius-sm);background:var(--surface-level-3);font-size:var(--font-caption);justify-content:space-between;gap:.7rem;padding:.5rem .6rem;display:flex}.offline-grid strong{color:var(--color-accent-strong)}.save-center-dialog{width:min(44rem,100%);max-height:min(92dvh,54rem)}.save-center-dialog .button{margin-top:0}.save-center-dialog h2,.save-center-dialog h3,.save-center-dialog p{margin-bottom:.25rem}.save-center-dialog__header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:.65rem;display:flex}.save-center-dialog__description{margin:.7rem 0}.save-center-status{border-radius:var(--radius-md);background:var(--forest-800);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.8rem;display:flex}.save-center-status__time{border-radius:var(--radius-sm);background:var(--surface-level-3);align-items:center;gap:.55rem;min-width:13rem;padding:.55rem .65rem;display:flex}.save-center-status__time small{margin-top:.1rem;display:block}.save-center-status__dot{background:var(--color-success);border-radius:50%;flex:none;width:.6rem;height:.6rem}.save-center-feedback{border-radius:var(--radius-sm);margin-top:.65rem;padding:.6rem .7rem}.save-center-feedback--success{background:var(--forest-800)}.save-center-feedback--error{color:#ffe4df;background:var(--danger-surface)}.save-center-actions{grid-template-columns:repeat(2,1fr);gap:.6rem;margin-top:.65rem;display:grid}.save-center-action,.save-center-section{border-radius:var(--radius-md);background:var(--surface-level-3);gap:.65rem;padding:.8rem;display:grid}.save-center-action{align-content:space-between}.save-center-section{margin-top:.65rem}.save-center-file-label{font-weight:700}.save-center-file-input{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);width:100%;min-height:44px;color:var(--text-primary);background:var(--surface-level-2);padding:.45rem}.save-center-preview{border-radius:var(--radius-md);background:var(--surface-level-1);box-shadow:inset 0 0 0 1px var(--line-brass);gap:.6rem;padding:.7rem;display:grid}.save-center-preview__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;display:flex}.save-center-preview__header small{display:block}.save-center-preview__facts{gap:.3rem;margin:0;display:grid}.save-center-preview__facts>div{border-bottom:1px solid var(--color-border);justify-content:space-between;gap:1rem;padding-bottom:.25rem;display:flex}.save-center-warning{border-left:3px solid var(--warning-500);background:var(--surface-level-2);padding:.6rem .7rem;margin:0!important}.save-center-developer{border-radius:var(--radius-md);background:var(--surface-level-3);margin-top:.65rem;padding:.65rem .8rem}.save-center-developer summary{cursor:pointer;align-items:center;min-height:44px;font-weight:700;display:flex}.save-center-developer>div{flex-wrap:wrap;gap:.5rem;padding-top:.5rem;display:flex}.save-center-danger{border-radius:var(--radius-md);background:#2c1f1d;gap:.65rem;margin-top:.65rem;padding:.8rem;display:grid}.save-center-danger .eyebrow{color:#e5a096}.save-center-reset{gap:.6rem;display:grid}.save-center-reset>div{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.equipment-dialog-backdrop{z-index:calc(var(--z-modal) + 10);padding:4.6rem 1.4rem 1rem calc(var(--shell-sidebar-width) + 1rem);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#050806d1;justify-content:flex-end;align-items:flex-start;display:flex;position:fixed;inset:0}.equipment-dialog{border:1px solid var(--line-brass);border-radius:var(--radius-lg);background:var(--surface-level-1);width:min(29rem,100%);max-height:calc(100dvh - 5.6rem);animation:sheet-in var(--duration-normal) var(--ease-out);padding:.85rem;overflow:auto;box-shadow:0 22px 60px #0000008c}.equipment-dialog--inspecting{width:min(50rem,100%)}@keyframes sheet-in{0%{opacity:0;transform:translateY(-.4rem)scale(.99)}}.equipment-dialog__header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:.6rem;display:flex}.equipment-dialog__header h2{margin:0;font-size:1.22rem}.equipment-dialog__header p{margin-bottom:.15rem}.equipment-dialog__close,.equipment-inspector header button{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);min-width:44px;min-height:44px;color:var(--text-primary);background:var(--surface-level-3);cursor:pointer;padding:0;font-size:1.15rem}.equipment-dialog__content{align-items:start;display:grid}.equipment-dialog__content--inspecting{grid-template-columns:minmax(17rem,20rem) 27.175rem;grid-template-areas:"inspector paperdoll";justify-content:end;align-items:stretch;gap:.4rem;height:31.3rem}.equipment-dialog__content--inspecting .equipment-paperdoll{grid-area:paperdoll}.equipment-dialog__content--inspecting .equipment-inspector{grid-area:inspector;margin-right:-.3rem}.equipment-paperdoll{grid-template-columns:repeat(3, var(--equipment-slot-track,minmax(6.4rem, 7.6rem)));grid-template-rows:repeat(4,7.2rem);justify-content:center;gap:.2rem;height:100%;padding:1rem 0 .65rem;display:grid}.equipment-paperdoll__slot--amulet{grid-area:1/1}.equipment-paperdoll__slot--head{grid-area:1/2}.equipment-paperdoll__slot--backpack{grid-area:1/3}.equipment-paperdoll__slot--mainHand{grid-area:2/1}.equipment-paperdoll__slot--body{grid-area:2/2}.equipment-paperdoll__slot--offHand{grid-area:2/3}.equipment-paperdoll__slot--gloves{grid-area:3/1}.equipment-paperdoll__slot--legs{grid-area:3/2}.equipment-paperdoll__slot--cape{grid-area:3/3}.equipment-paperdoll__slot--ringOne{grid-area:4/1}.equipment-paperdoll__slot--boots{grid-area:4/2}.equipment-paperdoll__slot--ringTwo{grid-area:4/3}.equipment-slot-card{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--surface-level-3);cursor:pointer;place-items:center;width:100%;height:100%;min-height:112px;padding:.4rem;display:grid;position:relative;overflow:hidden}.equipment-slot-card:hover,.equipment-slot-card--selected{border-color:var(--line-brass);background:var(--forest-900);transform:translateY(-1px)}.equipment-slot-card--selected{box-shadow:0 0 0 2px #d4b15d29}.equipment-slot-card__item-art{object-fit:contain;width:calc(100% - .44rem);height:calc(100% - .44rem);position:absolute;inset:.22rem}.equipment-slot-card--empty i{opacity:.48;filter:saturate(.4)sepia(.1);background-position:50%;background-repeat:no-repeat;background-size:contain;display:block;position:absolute;inset:.5rem}.equipment-slot-card--empty:hover i,.equipment-slot-card--selected i{opacity:.72}.equipment-slot-card--empty i[data-empty-slot=amulet]{background-image:url(/assets/items/equipment-slots/amulet.webp)}.equipment-slot-card--empty i[data-empty-slot=head]{background-image:url(/assets/items/equipment-slots/head.webp)}.equipment-slot-card--empty i[data-empty-slot=backpack]{background-image:url(/assets/items/equipment-slots/backpack.webp)}.equipment-slot-card--empty i[data-empty-slot=mainHand]{background-image:url(/assets/items/equipment-slots/main-hand.webp)}.equipment-slot-card--empty i[data-empty-slot=body]{background-image:url(/assets/items/equipment-slots/body.webp)}.equipment-slot-card--empty i[data-empty-slot=offHand]{background-image:url(/assets/items/equipment-slots/off-hand.webp)}.equipment-slot-card--empty i[data-empty-slot=gloves]{background-image:url(/assets/items/equipment-slots/gloves.webp)}.equipment-slot-card--empty i[data-empty-slot=legs]{background-image:url(/assets/items/equipment-slots/legs.webp)}.equipment-slot-card--empty i[data-empty-slot=cape]{background-image:url(/assets/items/equipment-slots/cape.webp)}.equipment-slot-card--empty i[data-empty-slot=ringOne]{background-image:url(/assets/items/equipment-slots/ring-one.webp)}.equipment-slot-card--empty i[data-empty-slot=boots]{background-image:url(/assets/items/equipment-slots/boots.webp)}.equipment-slot-card--empty i[data-empty-slot=ringTwo]{background-image:url(/assets/items/equipment-slots/ring-two.webp)}.equipment-inspector{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--surface-level-3);flex-direction:column;min-width:0;min-height:0;margin:1rem 0 .9rem;padding:.7rem;display:flex;overflow:hidden;box-shadow:inset 0 0 0 1px #d4b15d09,0 2px 6px #0000002e}.equipment-inspector>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-start;gap:.6rem;padding-bottom:.55rem;display:flex}.equipment-inspector>header h3{margin:.1rem 0 0;font-size:.92rem}.equipment-details{gap:.55rem;padding:.65rem 0;display:grid}.equipment-details__identity{grid-template-columns:auto 1fr;align-items:center;gap:.55rem;display:grid}.equipment-details__identity p{font-size:var(--font-caption);margin:.15rem 0 0;line-height:1.35}.equipment-details dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:.22rem .6rem;margin:0;display:grid}.equipment-details dl div{border-radius:var(--radius-sm);font-size:var(--font-caption);background:#00000026;flex-wrap:wrap;justify-content:space-between;gap:.25rem;padding:.28rem .35rem;display:flex}.equipment-details dd{color:var(--color-accent-strong);font-weight:700}.equipment-details__meta{color:#b9aa7d;font-size:var(--font-caption);margin:0}.equipment-inspector__empty,.equipment-inspector__none{border-radius:var(--radius-sm);color:var(--text-muted);font-size:var(--font-caption);text-align:center;background:#0000001f;padding:.55rem}.equipment-inspector__unequip{width:100%;margin-bottom:.6rem}.equipment-inspector__choices{border-top:1px solid var(--color-border);flex-direction:column;flex:1;width:100%;min-width:0;min-height:0;padding-top:.6rem;display:flex}.equipment-inspector__choices h4{color:var(--text-muted);font:700 var(--font-caption) "Source Sans 3", sans-serif;text-transform:uppercase;margin:0 0 .4rem}.equipment-inspector__choice-list{width:100%;max-height:12rem;overflow-y:auto}.equipment-choice{border:0;border-top:1px solid var(--color-border);width:100%;min-height:4rem;color:var(--text-primary);text-align:left;cursor:pointer;background:0 0;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.5rem;padding:.35rem;display:grid}.equipment-choice:hover{background:#ffffff0a}.equipment-choice span{min-width:0;display:grid}.equipment-choice strong,.equipment-choice small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.equipment-choice strong{font-size:var(--font-small)}.equipment-choice small{color:var(--text-muted);font-size:var(--font-caption)}.equipment-choice__quantity{font-size:var(--font-caption)}.equipment-choice em{color:var(--color-accent-strong);font-size:var(--font-caption);font-style:normal}.equipment-inspector--expanded{margin:0}.equipment-inspector--expanded .equipment-inspector__equipped{border-bottom:1px solid var(--color-border);grid-template-columns:minmax(0,1fr) minmax(9.5rem,auto);align-items:center;gap:.65rem;min-width:0;padding:.6rem 0;display:grid}.equipment-inspector--expanded .equipment-inspector__equipped .equipment-details{grid-template-columns:minmax(0,1.35fr) minmax(9rem,.85fr);gap:.35rem .65rem;min-width:0;padding:0}.equipment-inspector--expanded .equipment-inspector__equipped .equipment-details__meta{grid-column:1/-1}.equipment-inspector--expanded .equipment-inspector__unequip{margin:0}.equipment-inspector__workspace{flex:1;grid-template-columns:minmax(11.5rem,.72fr) minmax(16rem,1.28fr);gap:.65rem;min-width:0;min-height:0;padding-top:.65rem;display:grid}.equipment-inspector--expanded .equipment-inspector__choices{border-top:0;padding-top:0}.equipment-inspector--expanded .equipment-inspector__choices h4{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.equipment-inspector--expanded .equipment-inspector__choices h4 span{min-width:1.45rem;color:var(--color-accent-strong);text-align:center;background:#d4b15d1a;border-radius:999px;padding:.12rem .3rem}.equipment-inspector--expanded .equipment-inspector__choice-list{overscroll-behavior:contain;border:1px solid var(--color-border);border-radius:var(--radius-sm);flex:1;min-height:0;max-height:none;overflow-y:auto}.equipment-inspector--expanded .equipment-choice--expanded{border-top:0;border-bottom:1px solid var(--color-border);grid-template-columns:auto minmax(0,1fr) auto;gap:.45rem;min-height:4rem}.equipment-inspector--expanded .equipment-choice--expanded:last-child{border-bottom:0}.equipment-inspector--expanded .equipment-choice--selected{background:var(--forest-800);box-shadow:inset 3px 0 var(--color-accent)}.equipment-inspector--expanded .equipment-choice__quantity{align-self:start;padding-top:.2rem}.equipment-inspector--expanded .equipment-choice em{font-size:var(--font-caption);grid-column:2/-1}.equipment-inspector__comparison{border:1px solid var(--line-brass);border-radius:var(--radius-md);background:linear-gradient(145deg, #d4b15d0e, transparent 48%), var(--surface-level-1);flex-direction:column;min-width:0;min-height:0;padding:.65rem;display:flex;overflow:hidden}.equipment-inspector__comparison-heading{border-bottom:1px solid var(--color-border);align-items:center;gap:.55rem;padding-bottom:.5rem;display:flex}.equipment-inspector__comparison-heading .eyebrow{margin:0 0 .08rem;line-height:1.1}.equipment-inspector__comparison-heading h4{margin:0;font-size:.86rem;line-height:1.15}.equipment-inspector__comparison-heading small{color:var(--text-muted);font-size:var(--font-caption);margin-top:.08rem;line-height:1.2;display:block}.equipment-inspector__comparison .equipment-comparison{flex:1;margin-block:.5rem}.equipment-inspector__comparison .equipment-comparison__context{font-size:var(--font-caption);margin-bottom:.25rem}.equipment-inspector__comparison .equipment-comparison table{font-size:var(--font-caption)}.equipment-inspector__comparison .equipment-comparison th,.equipment-inspector__comparison .equipment-comparison td{padding:.22rem .18rem}.equipment-inspector__comparison .equipment-comparison__meta,.equipment-inspector__comparison .equipment-requirements,.equipment-inspector__comparison .equipment-comparison__warning{font-size:var(--font-caption);margin:.3rem 0}.equipment-inspector__comparison--empty{color:var(--text-muted);font-size:var(--font-caption);text-align:center;justify-content:center;place-items:center}.equipment-dialog__hint{border-top:1px solid var(--color-border);color:var(--text-muted);font-size:var(--font-caption);text-align:center;margin:0;padding-top:.55rem}.equipment-slot-dialog-backdrop{z-index:calc(var(--z-modal) + 20);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#050806d1;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.equipment-slot-dialog{border:1px solid var(--line-brass);border-radius:var(--radius-lg);background:var(--surface-level-1);width:min(58rem,100%);max-height:calc(100dvh - 2rem);animation:slot-dialog-in var(--duration-normal) var(--ease-out);padding:.75rem;overflow:hidden;box-shadow:0 22px 60px #0009}.equipment-slot-dialog .equipment-inspector{height:min(33rem,100dvh - 3.5rem);margin:0}@keyframes slot-dialog-in{0%{opacity:0;transform:translateY(.5rem)scale(.98)}}@media (width>=1500px){.vault-shelf__rail{grid-template-columns:repeat(auto-fill,minmax(9rem,1fr))}}@media (width<=1250px){.work-order{grid-template-columns:minmax(11rem,.9fr) minmax(12rem,1.1fr) minmax(10rem,.7fr) minmax(7rem,.5fr)}}@media (width<=1100px){:root{--shell-topbar-height:64px;--mobile-activity-height:4.25rem;--scene-first-chrome-height:190px}html{scroll-padding-bottom:calc(70px + var(--mobile-activity-height) + env(safe-area-inset-bottom) + 12px)}body{padding-bottom:calc(70px + var(--mobile-activity-height) + env(safe-area-inset-bottom))}.app-shell{display:block}.sidebar{display:none}.app-main{min-width:0}.topbar__brand{display:none}.topbar__mobile-identity{display:flex}.topbar .harvest-indicator{display:none}.mobile-activity{z-index:var(--z-nav);inset:auto 0 calc(70px + env(safe-area-inset-bottom));height:var(--mobile-activity-height);border-top:1px solid var(--line-brass);background:var(--surface-level-1);align-items:center;gap:.5rem;padding:.5rem .7rem;display:flex;position:fixed;box-shadow:0 -4px 16px #0003}.mobile-activity__summary{flex:1;gap:.12rem;min-width:0;display:grid}.mobile-activity__summary>strong,.mobile-activity__summary>small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mobile-activity__summary>strong{font-size:.8rem;line-height:1.3}.mobile-activity__summary>small{color:var(--text-secondary);font-size:var(--font-caption);font-variant-numeric:tabular-nums;line-height:1.3}.mobile-activity__summary .progress{min-width:0;height:4px;margin-top:.2rem}.mobile-activity__summary .progress>span{display:none}.mobile-activity__actions{flex:none;align-items:center;gap:.3rem;display:flex}.mobile-activity__actions>button{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--surface-level-2);cursor:pointer;min-height:44px}.mobile-activity__actions>button:hover:not(:disabled){border-color:var(--line-brass)}.mobile-activity__primary{width:4rem;color:var(--color-accent-strong);padding:.4rem;font-size:.75rem;font-weight:700}.mobile-activity__actions>.mobile-activity__stop{color:#ecc0b3;border-color:#b64f4566}.mobile-activity__choose{width:44px;color:var(--color-accent);place-items:center;display:grid}.mobile-activity__choose svg{width:20px;height:20px}.mobile-nav{z-index:var(--z-nav);height:calc(70px + env(safe-area-inset-bottom));padding:.22rem .3rem env(safe-area-inset-bottom);border-top:1px solid var(--line-brass);background:#0e130ffa;grid-template-columns:repeat(5,1fr);gap:.2rem;display:grid;position:fixed;inset:auto 0 0}.mobile-nav a,.mobile-nav button{border-radius:var(--radius-sm);min-width:0;min-height:58px;color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:0;align-content:center;place-items:center;gap:.12rem;padding:0;text-decoration:none;display:grid}.mobile-nav a svg,.mobile-nav button svg{width:1.3rem;height:1.3rem}.mobile-nav a span,.mobile-nav button span{font-size:var(--font-caption)}.mobile-nav a:hover,.mobile-nav button:hover{color:var(--text-primary);background:#ffffff09}.mobile-nav a.active,.mobile-nav button.active{color:var(--color-accent-strong);background:var(--forest-700)}.toast{bottom:calc(70px + var(--mobile-activity-height) + env(safe-area-inset-bottom) + 12px)}.equipment-dialog-backdrop{padding-left:1rem}}@media (width<=860px){.ledger-character,.combat-layout{grid-template-columns:1fr}.ledger-skills{border-right:0;border-bottom:1px solid var(--color-border)}.plot-grid,.vault-body,.vault-body--inspecting{grid-template-columns:1fr}.vault-inspector-drawer{z-index:55;inset:auto .6rem calc(70px + var(--mobile-activity-height) + env(safe-area-inset-bottom)) .6rem;max-height:min(calc(100dvh - 70px - var(--mobile-activity-height) - var(--shell-topbar-height) - env(safe-area-inset-bottom) - 12px), 38rem);border:1px solid var(--line-brass);border-radius:var(--radius-lg);position:fixed;overflow:auto;box-shadow:0 -10px 30px #0000008c}.combat-readiness{grid-template-columns:1fr}.combat-readiness__actions{justify-content:flex-start}.skill-index__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=620px){:root{--shell-topbar-height:112px}.provisions-dialog{width:100%;max-height:calc(100dvh - 1rem);padding:.8rem}.provisions-dialog__actions,.auto-eat-settings{grid-template-columns:1fr}.auto-eat-settings__note{grid-column:1}.mobile-skill-chooser{padding:0}.mobile-skill-chooser__panel{width:100%;max-height:min(86dvh,46rem);padding:.85rem .75rem calc(.85rem + env(safe-area-inset-bottom));border-radius:var(--radius-lg) var(--radius-lg) 0 0;border-width:1px 0 0}.mobile-skill-chooser__links{grid-template-columns:1fr;gap:.32rem}.topbar{gap:.4rem;min-height:60px;padding:.4rem .7rem}.topbar__right{gap:.35rem}.topbar__mobile-identity{gap:.45rem}.topbar__mobile-identity .player-portrait{width:38px;height:42px}.topbar__mobile-identity p{display:none}.topbar__mobile-identity strong{max-width:7.5rem;font-size:1rem}.save-center-toggle{min-width:44px;min-height:44px;padding:.3rem}.save-center-toggle span{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.app-main{background-position:0 0,top;background-size:100% 100%,cover}.world-mast{height:64px}.world-mast__plaque{padding:0}.world-mast__plaque small{display:none}.world-mast__plaque strong{font-size:1.05rem}.content{padding:.7rem}.content--scene-first>:is(.combat-screen,.character-screen){border-radius:var(--radius-md)}.screen-stack{gap:.65rem}.page-heading{gap:.5rem;min-height:0;padding:.15rem .1rem .3rem;display:grid}.page-heading>:last-child{justify-self:stretch;width:100%}.page-heading h2{font-size:1.65rem}.page-heading p:last-child{font-size:.84rem;line-height:1.35}.panel{padding:.8rem}.ledger-character{border-radius:var(--radius-md);margin-inline:-.1rem}.ledger-profile{grid-template-columns:minmax(0,1fr);padding:.7rem .75rem}.ledger-profile__portrait{display:none}.ledger-profile__identity h2{font-size:1.55rem}.ledger-profile__identity>p:last-child{display:none}.ledger-profile__record{width:100%;min-width:0}.ledger-profile__record>div{text-align:center;justify-items:center;padding:.45rem .35rem}.ledger-profile__record dt{font-size:var(--font-caption);letter-spacing:.035em}.ledger-profile__record dd{font-size:.78rem}.ledger-profile__record>div:last-child dd{font-size:1rem}.ledger-skills__rosters{padding-inline:.45rem}.ledger-roster table,.ledger-roster tbody,.ledger-roster tr,.ledger-roster th,.ledger-roster td{width:100%;display:block}.ledger-roster thead{display:none}.ledger-roster__row{grid-template-columns:1fr auto;gap:.3rem;padding:.45rem .3rem;display:grid}.ledger-roster__row>*{padding:0}.ledger-roster__progress{grid-column:1/-1}.ledger-equipment__body{grid-template-columns:minmax(0,1fr);grid-template-areas:"guide""stats""paperdoll";gap:.4rem}.ledger-equipment__guide{grid-template-columns:1fr}.ledger-equipment__stats{margin:0}.ledger-equipment__stats dl{grid-template-columns:repeat(2,minmax(0,1fr))}.ledger-journal__entries{grid-template-columns:1fr}.skill-index{border-radius:var(--radius-md);padding:.65rem}.skill-index__header{flex-direction:column;align-items:stretch}.skill-index__search{width:100%}.skill-index__search-field input{font-size:1rem}.skill-index__body{grid-template-columns:minmax(0,1fr);gap:.65rem}.skill-index__filters{grid-template-columns:repeat(2,minmax(0,1fr))}.skill-index__grid{grid-template-columns:minmax(0,1fr)}.workbench{border-radius:var(--radius-md)}.workbench>.panel__header{padding:.65rem .75rem}.recipe-row{grid-template-columns:4.5rem 1fr}.recipe-row__main{gap:.45rem;display:grid}.skill-task-row__description{text-align:left}.ingredients{justify-content:flex-start}.recipe-row>.button{grid-column:1/-1}.farming-intro{display:grid}.combat-screen>.page-heading p:last-child{display:none}.combat-readiness{gap:.55rem;padding:.65rem}.combat-readiness__facts{grid-template-columns:1fr}.combat-readiness__facts>div{border-right:0;border-bottom:1px solid var(--color-border);grid-template-columns:6.5rem minmax(0,1fr);align-items:center}.combat-readiness__facts>div:last-child{border-bottom:0}.combat-readiness__facts dd{white-space:normal}.combat-readiness__actions{grid-template-columns:1fr;display:grid}.monster-row{grid-template-columns:5.5rem minmax(0,1fr)}.monster-row>img{width:5.5rem}.monster-row__action{grid-column:1/-1;grid-template-columns:1fr 1fr}.loot-preview{scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.combat-skill-table-wrap{overflow:visible}.combat-skill-table,.combat-skill-table tbody,.combat-skill-table tr,.combat-skill-table th,.combat-skill-table td{width:100%;display:block}.combat-skill-table thead{display:none}.combat-skill-table tbody{gap:.4rem;padding:.5rem;display:grid}.combat-skill-table tbody tr{border-radius:var(--radius-sm);background:var(--surface-level-3);grid-template-columns:1fr auto;gap:.4rem;padding:.55rem;display:grid}.combat-skill-table tbody th,.combat-skill-table tbody td{border:0;padding:0}.combat-skill-table tbody td:nth-child(3),.combat-skill-table tbody td:nth-child(4){grid-column:1/-1}.vault-ledger{padding:.6rem;position:static}.vault-ledger__identity{grid-template-columns:auto 1fr}.vault-ledger__identity>span{grid-column:2}.vault-ledger__query{grid-template-columns:1fr}.vault-inline-confirm{grid-template-columns:1fr 1fr}.vault-inline-confirm>span{grid-column:1/-1}.vault-filter-rail{scrollbar-width:none;margin-inline:-.6rem;padding-inline:.6rem}.vault-collection{padding:.4rem}.vault-shelf__rail{grid-template-columns:repeat(2,1fr)}.bank-tile{min-height:116px}.creation-shell{align-items:end;padding:1rem}.creation-card{padding:1rem}.creation-identity{justify-content:flex-start;margin-bottom:.8rem}.creation-copy{grid-template-columns:1fr}.creation-copy .player-portrait{display:none}.save-center-dialog{max-height:calc(100dvh - 1rem);padding:.85rem}.save-center-actions{grid-template-columns:1fr}.save-center-status__time{width:100%;min-width:0}.save-center-reset>div{grid-template-columns:1fr;display:grid}.equipment-dialog-backdrop{padding:.5rem .4rem calc(.5rem + env(safe-area-inset-bottom));align-items:end}.equipment-dialog{max-height:calc(100dvh - 1rem)}.equipment-dialog__content--inspecting{grid-template-columns:1fr;grid-template-areas:"paperdoll""inspector";height:auto}.equipment-dialog__content--inspecting .equipment-inspector{margin-top:0;margin-right:0}.equipment-slot-dialog{overflow-y:auto}.equipment-slot-dialog .equipment-inspector{height:auto}.equipment-inspector--expanded .equipment-inspector__equipped,.equipment-inspector__workspace{grid-template-columns:1fr}.equipment-inspector--expanded .equipment-inspector__choice-list{max-height:16rem}.equipment-paperdoll{grid-template-rows:repeat(4,6.6rem);grid-template-columns:repeat(3,minmax(5.2rem,1fr));gap:.18rem}.equipment-slot-card{min-height:100px}}@media (width<=620px),(height<=620px){.content--scene-first>:is(.combat-screen,.character-screen){aspect-ratio:auto;scrollbar-gutter:auto;max-width:100%;overflow:visible}}@media (width<=380px){.topbar__mobile-identity strong{max-width:6rem}.mobile-nav a span,.mobile-nav button span{font-size:var(--font-caption)}.creation-identity h1{font-size:1.7rem}.vault-shelf__rail{grid-template-columns:repeat(2,minmax(0,1fr))}}@container market-page (width<=56rem){.market-ledger__masthead{grid-template-columns:1fr;gap:.8rem}.market-ledger__tools{justify-content:space-between}.market-board{grid-template-columns:1fr}.merchant-stall{border-right:0;border-bottom:1px solid var(--color-border-strong);grid-template-columns:160px minmax(0,1fr) auto;align-items:center;gap:1.25rem;display:grid}.merchant-stall__portrait{aspect-ratio:4/5;width:144px}.merchant-stall__role{font-size:var(--font-caption);letter-spacing:.08em}.merchant-stall__name{font-size:1.75rem}.merchant-stall__copy{border-top:0;border-left:1px solid var(--color-border);text-align:left;padding:0 0 0 1rem}.merchant-stall__copy blockquote{margin-inline:0}.merchant-stall>.button{margin-top:0}.market-sale__header{grid-template-columns:minmax(11rem,.75fr) minmax(18rem,1.25fr)}}@container market-page (width<=40rem){.market-ledger__masthead{gap:.7rem;min-height:0;padding:.85rem}.market-ledger__title h2{font-size:1.65rem}.market-ledger__title>p:last-child{font-size:.8rem;line-height:1.35}.market-ledger__tools{grid-template-columns:minmax(0,1fr) auto;gap:.5rem;display:grid}.merchant-seal{justify-content:flex-end;gap:.4rem;min-width:0;padding:.35rem 0 .35rem .65rem;display:flex}.merchant-seal span{display:none}.merchant-seal svg{width:1rem;height:1rem;display:block}.merchant-stall{grid-template-columns:minmax(128px,42%) minmax(0,1fr);gap:.8rem;padding:1rem .85rem}.merchant-stall__portrait{width:128px}.merchant-stall__name{font-size:1.65rem}.merchant-stall__copy{padding-left:.75rem}.merchant-stall__copy blockquote{font-size:1.025rem}.merchant-stall>.button,.merchant-stall__confirm{grid-column:1/-1}.stock-ledger__header{min-height:0;padding:.85rem}.stock-ledger__header h3{font-size:1.35rem}.stock-ledger__header>p{font-size:.78rem}.stock-ledger__list{grid-template-rows:none;padding:0 .75rem}.stock-row{grid-template-columns:1fr;gap:.75rem;padding:.85rem 0}.stock-row__item .item-icon{width:60px;height:60px}.stock-row__purchase{grid-template-columns:minmax(8.5rem,1fr) 4.25rem 5.5rem;gap:.375rem}.stock-row__purchase>.button{padding-inline:.4rem;font-size:.8rem}.stock-row__total strong{font-size:.88rem}.market-switcher{width:100%}.market-switcher button{flex:1;padding-inline:.4rem;font-size:.78rem}.market-board__notice summary{padding-inline:.85rem}.market-board__notice-copy{grid-template-columns:1fr;gap:.65rem;padding:0 .85rem .85rem}.market-sale__header{grid-template-columns:1fr;align-items:stretch}.market-sale__filters{grid-template-columns:1fr}.market-sale__confirm{grid-template-columns:1fr 1fr}.market-sale__confirm>span{grid-column:1/-1}}@container market-page (width<=22rem){.stock-row__purchase{grid-template-columns:minmax(8rem,1fr) 5.5rem}.stock-row__total{grid-area:2/1;justify-items:start}.market-row__submit{grid-area:2/2}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.activity-beacon--live,.task-progress__status i{animation:none}}.account-entry__card{max-width:32rem}.account-entry__card h2{margin-bottom:.65rem}.account-entry__card>p:not(.eyebrow){line-height:1.65}.account-form{gap:.65rem;margin-block:1.5rem;display:grid}.account-form label{font-weight:650}.account-form input,.account-form select{color:#f4e5bd;background:#101b15;border:1px solid #73684c;border-radius:5px;width:100%;min-height:46px;padding:.75rem}.account-form input:focus-visible{outline-offset:2px;outline:2px solid #d4b15a}.account-form button{margin-top:.5rem}.account-feedback{color:#f3e6c4;background:#28382b;border-left:3px solid #d4b15a;padding:.75rem 1rem}.account-entry__actions{flex-wrap:wrap;gap:.75rem;margin-block:1rem;display:flex}.connection-banner{color:#cdd5bd;background:#14251c;border-bottom:1px solid #4d5838;justify-content:space-between;gap:1rem;padding:.5rem 1.25rem;font-size:.8rem;display:flex}.connection-banner--offline{color:#ffe0a1;background:#422b18}.admin-tools{border-top:1px solid #4d5838;margin-top:1.5rem;padding-top:1rem}.save-center-dialog details{border-top:1px solid #4d5838;margin-block:1rem;padding-block:.75rem}.save-center-dialog summary{cursor:pointer;padding:.5rem 0;font-weight:650}@media (width<=600px){.connection-banner{flex-direction:column;gap:.25rem}.account-entry__card{padding:1.25rem}}.developer-tools-backdrop{z-index:calc(var(--z-modal) + 15);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#040705e6;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.developer-tools-dialog{border:1px solid var(--line-brass);border-radius:var(--radius-xl);width:min(70rem,100%);max-height:min(94dvh,58rem);color:var(--text-primary);background:radial-gradient(circle at 8% 0%, #d4b15d17, transparent 24rem), linear-gradient(145deg, var(--surface-level-1), var(--surface-level-3));animation:developer-console-in var(--duration-normal) var(--ease-out);grid-template-rows:auto auto auto minmax(0,1fr) auto;display:grid;overflow:hidden;box-shadow:0 32px 90px #000000b8,inset 0 1px #ead28424}@keyframes developer-console-in{0%{opacity:0;transform:translateY(.65rem)scale(.985)}}.developer-tools-header{border-bottom:1px solid var(--color-border);background:#080c096b;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.9rem;padding:1rem 1.15rem;display:grid}.developer-tools-header__mark{border:1px solid var(--line-brass);width:46px;height:46px;color:var(--color-accent-strong);background:radial-gradient(circle,#d4b15d38,#142219a6);border-radius:50%;place-items:center;display:grid;box-shadow:0 0 22px #d4b15d1f}.developer-tools-header__mark svg{width:24px;height:24px}.developer-tools-header h2{margin:0;font-size:1.65rem}.developer-tools-header p:last-child{max-width:48rem;margin:.16rem 0 0;font-size:.82rem}.developer-tools-close{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);width:44px;height:44px;color:var(--text-secondary);background:var(--surface-level-2);cursor:pointer;place-items:center;display:grid}.developer-tools-close:hover{color:var(--text-primary);border-color:var(--line-brass)}.developer-tools-safety{color:var(--text-secondary);background:#31593b38;border-bottom:1px solid #82aa7233;align-items:center;gap:.65rem;padding:.58rem 1.15rem;font-size:.75rem;display:flex}.developer-tools-safety--online{background:#4a352373;border-bottom-color:#d4a34e47}.developer-tools-safety>svg{color:var(--color-success)}.developer-tools-safety--online>svg{color:var(--warning-500)}.developer-tools-safety span{gap:.5rem;min-width:0;display:flex}.developer-tools-safety strong{color:var(--text-primary);flex:none}.developer-tools-tabs{border-bottom:1px solid var(--color-border);scrollbar-width:none;gap:.3rem;padding:.55rem 1rem 0;display:flex;overflow-x:auto}.developer-tools-tabs button{min-height:42px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:none;padding:.45rem .9rem;font-size:.8rem;font-weight:700}.developer-tools-tabs button:hover{color:var(--text-primary)}.developer-tools-tabs button.active{color:var(--color-accent-strong);border-bottom-color:var(--color-accent)}.account-management{gap:1rem;min-width:0;display:grid}.account-management .developer-section-heading{align-items:start;margin:0}.account-management .developer-section-heading p:last-child{margin:.25rem 0 0;font-size:.85rem}.account-management h4{margin:0;font-size:1.1rem}.account-management-badge{color:var(--color-accent-strong);border:1px solid var(--line-brass);border-radius:var(--radius-sm);flex:none;align-items:center;gap:.35rem;padding:.45rem .6rem;font-size:.72rem;display:flex}.account-management-auth{border:1px solid var(--line-brass);border-radius:var(--radius-md);background:#5c421e29;gap:.8rem;padding:1rem;display:grid}.account-management-auth>div:first-child{align-items:start;gap:.65rem;display:flex}.account-management-auth svg{color:var(--color-accent);flex:none}.account-management-auth p{margin:.2rem 0 0;font-size:.8rem}.account-management-auth--confirmed{border-color:var(--color-success);background:#31593b2e}.account-management-auth__form{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.7rem;display:grid}.account-management-switch{flex-wrap:wrap;gap:.4rem;display:flex}.account-management-switch button{min-height:44px;color:var(--text-secondary);background:var(--surface-level-2);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);cursor:pointer;padding:.5rem .75rem;font-size:.8rem;font-weight:700}.account-management-switch button[aria-pressed=true]{color:var(--color-accent-strong);border-color:var(--line-brass);background:var(--surface-level-3)}.account-management-switch button:last-child{margin-left:auto}.account-management button:disabled{opacity:.5;cursor:not-allowed}.account-management-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:start;gap:1.25rem;display:grid}.account-management-create fieldset{border:0;gap:.9rem;min-width:0;margin:0;padding:0;display:grid}.account-management .developer-field{font-size:.8rem}.account-management .developer-field small{color:var(--text-muted);font-size:.75rem;font-weight:400;line-height:1.45}.account-management-create details{border-top:1px solid var(--color-border);padding-top:.3rem}.account-management-create summary{cursor:pointer;min-height:44px;padding-block:.65rem;font-size:.8rem}.account-management-guide{padding:.5rem .5rem .5rem 0}.account-management-guide ol{margin:1.25rem 0;padding-left:1.8rem;list-style:decimal-leading-zero}.account-management-guide li{color:var(--color-accent);padding:0 0 1.15rem .4rem}.account-management-guide li strong{color:var(--text-primary);font-size:.85rem;display:block}.account-management-guide li span{color:var(--text-secondary);margin-top:.3rem;font-size:.8rem;line-height:1.5;display:block}.account-management-admins{border-top:1px solid var(--color-border);color:var(--text-muted);overflow-wrap:anywhere;padding-top:.8rem;font-size:.75rem}.account-management-feedback{border:1px solid var(--color-success);border-radius:var(--radius-sm);color:var(--text-primary);overflow-wrap:anywhere;background:#31593b33;margin:0;padding:.85rem 1rem;font-size:.85rem}.account-management-feedback--error{border-color:var(--color-danger);background:#792e2633}.account-management-manage{max-width:42rem}.account-management-player{gap:1rem;display:grid}.account-management-player p{margin:.35rem 0 .75rem;font-size:.8rem}.account-management-player form,.account-management-access{border-top:1px solid var(--color-border);padding-top:1rem}.account-management-entry{border:1px solid var(--line-brass);border-radius:var(--radius-md);background:var(--surface-level-2);gap:.75rem;margin-block:1rem;padding:1rem;display:grid}.account-management-entry h3,.account-management-entry p{margin:.2rem 0}.account-management-entry p:last-child{font-size:.85rem}@media (width<=650px){.account-management-grid,.account-management-auth__form{grid-template-columns:minmax(0,1fr)}.account-management .developer-section-heading{flex-direction:column;gap:.6rem}.account-management-badge{font-size:.7rem}.account-management-guide{padding:.5rem}.account-management-switch button:last-child{margin-left:0}.account-management input{font-size:16px}}.developer-tools-content{min-height:0;padding:1rem;overflow:auto}.developer-tools-content h3{margin-bottom:.25rem}.developer-inventory{grid-template-columns:minmax(19rem,.95fr) minmax(20rem,1.05fr);gap:1rem;min-height:31rem;display:grid}.developer-item-browser{grid-template-rows:auto auto auto minmax(0,1fr);gap:.65rem;min-width:0;display:grid}.developer-search{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--surface-level-3);grid-template-columns:auto 1fr;align-items:center;gap:.5rem;min-height:44px;padding:0 .7rem;display:grid}.developer-search svg{color:var(--text-muted)}.developer-search input{width:100%;min-width:0;height:42px;color:var(--text-primary);background:0 0;border:0;outline:0;padding:0}.developer-item-list{align-content:start;gap:.3rem;min-height:12rem;max-height:25rem;padding-right:.25rem;display:grid;overflow:auto}.developer-item-list button{border:1px solid var(--color-border);border-radius:var(--radius-sm);min-width:0;min-height:52px;color:var(--text-secondary);text-align:left;cursor:pointer;background:#090c0975;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.5rem .65rem;display:grid}.developer-item-list button:hover{border-color:var(--color-border-strong);background:var(--surface-level-2)}.developer-item-list button.active{border-color:var(--line-brass);background:linear-gradient(90deg,#31593b7a,#171e18e6)}.developer-item-list button span{min-width:0;display:grid}.developer-item-list strong,.developer-item-list small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.developer-item-list strong{color:var(--text-primary);font-size:.84rem}.developer-item-list small{text-transform:capitalize;font-size:.67rem}.developer-item-list b{min-width:3rem;color:var(--color-accent-strong);text-align:right}.developer-empty{color:var(--text-muted);text-align:center;margin:1rem}.developer-editor-card{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:linear-gradient(145deg,#202a22d1,#0e130ff2);flex-direction:column;align-self:start;gap:.65rem;min-width:0;padding:1rem;display:flex;box-shadow:inset 0 1px #ffffff06}.developer-editor-card>svg{width:26px;height:26px;color:var(--color-accent)}.developer-editor-card>h3,.developer-editor-card>p{margin:0}.developer-editor-card>p{font-size:.8rem}.developer-editor-card--wide{grid-column:1/-1}.developer-current-value{border-block:1px solid var(--color-border);grid-template-columns:repeat(2,1fr);margin:.35rem 0;display:grid}.developer-current-value>div{border-right:1px solid var(--color-border);padding:.65rem}.developer-current-value>div:last-child{border-right:0}.developer-current-value dt{text-transform:uppercase;font-size:.66rem}.developer-current-value dd{text-transform:capitalize;margin-top:.15rem;font-weight:700}.developer-field{min-width:0;color:var(--text-secondary);gap:.28rem;font-size:.72rem;font-weight:700;display:grid}.developer-field input,.developer-field select{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);width:100%;min-width:0;min-height:44px;color:var(--text-primary);background:var(--surface-level-3);padding:.5rem .65rem}.developer-field select{cursor:pointer}.developer-quick-values{flex-wrap:wrap;gap:.35rem;display:flex}.developer-quick-values button,.developer-heading-actions button,.developer-time-actions button,.developer-tools-footer>button{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);min-height:40px;color:var(--text-secondary);background:var(--surface-level-2);cursor:pointer;padding:.4rem .7rem;font-size:.75rem;font-weight:700}.developer-quick-values button:hover:not(:disabled),.developer-heading-actions button:hover:not(:disabled),.developer-time-actions button:hover:not(:disabled),.developer-tools-footer>button:hover{color:var(--text-primary);border-color:var(--line-brass)}.developer-primary-action{border:1px solid var(--brass-400);border-radius:var(--radius-sm);min-height:44px;color:var(--timber-900);background:var(--color-accent);cursor:pointer;padding:.55rem .85rem;font-size:.8rem;font-weight:700}.developer-primary-action:hover:not(:disabled){background:var(--color-accent-strong)}.developer-primary-action:disabled,.developer-quick-values button:disabled,.developer-heading-actions button:disabled,.developer-time-actions button:disabled{opacity:.48;cursor:not-allowed}.developer-section-heading{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:.8rem;display:flex}.developer-section-heading h3{margin:0;font-size:1.45rem}.developer-heading-actions{gap:.4rem;display:flex}.developer-skill-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}.developer-skill-grid article{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#090c0966;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;min-width:0;padding:.65rem .75rem;display:grid}.developer-skill-grid article>div:first-child{grid-template-columns:1fr auto;gap:.05rem .6rem;min-width:0;display:grid}.developer-skill-grid article span{color:var(--text-secondary);font-size:.76rem}.developer-skill-grid article strong{color:var(--color-accent-strong);font-size:.78rem}.developer-skill-grid article small{grid-column:1/-1;font-size:.64rem}.developer-inline-form{border:1px solid var(--color-border);border-radius:var(--radius-md);background:#14221947;grid-template-columns:minmax(11rem,1fr) minmax(8rem,.5fr) auto;align-items:end;gap:.65rem;margin-top:.8rem;padding:.75rem;display:grid}.developer-inline-form .developer-primary-action{min-width:8rem}.developer-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.developer-form-row{grid-template-columns:minmax(12rem,1fr) minmax(9rem,.55fr);gap:.65rem;display:grid}.developer-time-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;display:grid}.developer-time-actions button{min-height:48px;color:var(--color-accent-strong)}.developer-tools-footer{border-top:1px solid var(--color-border);background:#080c098a;justify-content:space-between;align-items:center;gap:1rem;min-height:58px;padding:.65rem 1rem;display:flex}.developer-tools-footer p{color:var(--text-muted);margin:0;font-size:.72rem}.developer-tools-footer>button{min-width:8rem}.sidebar__utilities{gap:.45rem;margin-top:auto;display:grid}.sidebar__utilities .sidebar__status{margin-top:0}.developer-tools-toggle{border-radius:var(--radius-md);min-height:48px;color:var(--text-secondary);text-align:left;cursor:pointer;background:linear-gradient(110deg,#31593b59,#17110da6);border:1px solid #d4b15d57;grid-template-columns:auto 1fr auto;align-items:center;gap:.6rem;padding:.48rem .65rem;display:grid}.developer-tools-toggle:hover{border-color:var(--line-brass)}.developer-tools-toggle>svg:first-child{color:var(--color-accent-strong)}.developer-tools-toggle>svg:last-child{width:.85rem;color:var(--text-muted)}.developer-tools-toggle span{display:grid}.developer-tools-toggle small{color:var(--color-accent);font:600 var(--font-caption) Cinzel, serif;letter-spacing:.08em;text-transform:uppercase}.developer-tools-toggle strong{font-size:.75rem}.developer-tools-topbar{border:1px solid var(--line-brass);border-radius:var(--radius-sm);min-width:46px;min-height:46px;color:var(--color-accent-strong);background:linear-gradient(145deg, var(--forest-700), var(--surface-level-3));cursor:pointer;place-items:center;padding:.3rem;display:grid}.developer-tools-topbar span{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=760px){.developer-tools-backdrop{padding:.5rem .35rem calc(.5rem + env(safe-area-inset-bottom));place-items:end center}.developer-tools-dialog{max-height:calc(100dvh - 1rem - env(safe-area-inset-bottom));border-radius:var(--radius-lg) var(--radius-lg) var(--radius-md) var(--radius-md)}.developer-tools-header{align-items:start;padding:.8rem}.developer-tools-header__mark{display:none}.developer-tools-header{grid-template-columns:minmax(0,1fr) auto}.developer-tools-header h2{font-size:1.4rem}.developer-tools-header p:last-child{font-size:.73rem;line-height:1.35}.developer-tools-safety{align-items:flex-start;padding:.5rem .8rem}.developer-tools-safety span{gap:.05rem;display:grid}.developer-tools-tabs{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:.1rem;padding-inline:.55rem;display:grid}.developer-tools-tabs button{min-height:44px;padding:.45rem .2rem;font-size:.75rem}.developer-tools-content{padding:.7rem}.developer-inventory{grid-template-columns:1fr;min-height:auto}.developer-item-list{max-height:14rem}.developer-skill-grid{grid-template-columns:1fr}.developer-inline-form{grid-template-columns:1fr 1fr}.developer-inline-form .developer-primary-action{grid-column:1/-1}.developer-card-grid{grid-template-columns:1fr}.developer-editor-card--wide{grid-column:auto}.developer-form-row{grid-template-columns:1fr}.developer-tools-footer{flex-direction:column;align-items:stretch;gap:.45rem}.developer-tools-footer>button{width:100%}}@media (width<=620px){.developer-tools-topbar{min-width:44px;min-height:44px}.developer-section-heading{flex-direction:column;align-items:stretch}.developer-heading-actions{grid-template-columns:1fr 1fr;display:grid}.developer-skill-grid article{grid-template-columns:1fr}.developer-skill-grid article .developer-quick-values{justify-content:stretch}.developer-skill-grid article .developer-quick-values button{flex:1}}@media (prefers-reduced-motion:reduce){.developer-tools-dialog{animation:none}}
