:root{--app-mobile-frame-width: 440px;--app-mobile-frame-height: 920px;--app-wide-frame-width: 1080px;--app-wide-frame-height: 760px;--app-wide-side-rail-width: 84px;--app-wide-drawer-width: clamp(420px, 24vw, 500px);--app-bottom-nav-offset: 0px;--app-bottom-control-footprint: 64px;--focus-ring: var(--border-regular) solid var(--color-text-accent);background:var(--color-canvas)}::selection{background:color-mix(in oklch,var(--color-text-accent) 36%,transparent);color:var(--ink-50)}body{min-width:320px}@media(hover:none)and (pointer:coarse){input,select,textarea{font-size:max(16px,1em)}}button,a,[role=button]{-webkit-tap-highlight-color:transparent}.app-main{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;gap:0;padding-bottom:calc(var(--app-bottom-control-footprint) + var(--space-medium) + env(safe-area-inset-bottom))}.app-shell[data-shell-mode=drilldown] .app-main{overflow:hidden;padding-bottom:0}.app-main,.app-bottom-sheet,.app-bottom-sheet-scroll,.app-character-sheet .app-mobile-list,.app-npc-dialog-flow .mf-scroll{scrollbar-width:none;-ms-overflow-style:none}.app-main::-webkit-scrollbar,.app-bottom-sheet::-webkit-scrollbar,.app-bottom-sheet-scroll::-webkit-scrollbar,.app-character-sheet .app-mobile-list::-webkit-scrollbar,.app-npc-dialog-flow .mf-scroll::-webkit-scrollbar{display:none;width:0;height:0}.app-shell-header{position:sticky;top:0;z-index:4;display:flex;flex-direction:column;justify-content:center;gap:0;flex:0 0 auto;width:100%;min-height:calc(54px + env(safe-area-inset-top));box-sizing:border-box;isolation:isolate;padding:calc(env(safe-area-inset-top) + 10px) 14px 10px;background:var(--bg-primary)}.app-shell-header:before,.app-shell-header:after{content:none}.app-shell-header-content{display:flex;flex-direction:row;align-items:center;gap:12px;width:100%;min-width:0;flex:1 1 auto}.app-shell-header-identity{display:flex;flex:1 1 auto;flex-direction:column;gap:4px;min-width:0}.app-shell-header-identity-meta{display:flex;align-items:baseline;gap:8px;min-width:0}.app-shell-header-name{margin:0;min-width:0;color:var(--color-text-primary);font-family:var(--font-display);font-size:var(--app-type-emphasis);font-weight:500;letter-spacing:1.5px;line-height:1.1;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.app-shell-header-level{flex:0 0 auto;color:var(--color-currency-gold);font-family:var(--font-label);font-size:9px;font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:.5px;text-transform:uppercase}.app-shell-header-meta-sep{flex:0 0 auto;color:var(--color-text-tertiary);font-family:var(--font-label);font-size:9px;line-height:1}.app-shell-header-account-action{appearance:none;display:inline-flex;flex:0 1 auto;min-width:0;max-width:126px;min-height:28px;align-items:center;justify-content:center;gap:5px;box-sizing:border-box;padding:0 8px;border:1px solid var(--line-secondary);border-radius:var(--radius-sm);background:var(--surface-100);color:var(--color-text-secondary);cursor:pointer;font-family:var(--font-label);font-size:9px;font-weight:500;letter-spacing:0;line-height:1;text-transform:uppercase;transition:border-color var(--motion-fast) var(--motion-change-ease),color var(--motion-fast) var(--motion-change-ease),background var(--motion-fast) var(--motion-change-ease)}.app-shell-header-account-action:hover{border-color:color-mix(in oklch,var(--color-text-accent) 48%,var(--line-secondary));background:color-mix(in oklch,var(--color-text-accent) 10%,var(--surface-100));color:var(--color-text-accent)}.app-shell-header-account-action:focus-visible{outline:1px solid var(--ember-500);outline-offset:2px}.app-shell-header-account-action span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-shell-header-bars{display:flex;flex:0 0 auto;flex-direction:row;align-items:center;gap:8px;margin-left:auto}.app-shell-header-buffs{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin:4px 0 0;padding:0;list-style:none;width:100%}.app-shell-header-buff{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;font-size:10px;line-height:1;letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary);background:var(--surface-card-secondary, rgba(255, 255, 255, .04));border:1px solid var(--line-secondary);border-radius:999px;white-space:nowrap}.app-shell-header-buff-time{color:var(--text-tertiary, var(--text-secondary));font-variant-numeric:tabular-nums}.app-shell-header-buff--cooldown{color:var(--text-warning, #c5945a);border-color:var(--text-warning, #c5945a)}.app-shell-header-bar-row{display:flex;flex-direction:row;align-items:center;gap:6px}.app-shell-header-bar{position:relative;display:block;overflow:hidden;box-sizing:border-box;flex:0 0 auto;width:72px;height:8px;border:1px solid var(--line-secondary);border-radius:1px;background:var(--surface-100);--bar-tone-color: var(--color-text-secondary)}.app-shell-header-bar[data-tone=hp-success],.app-shell-header-bar[data-tone=hp-danger]{--bar-tone-color: var(--color-health-friendly)}.app-shell-header-bar[data-tone=mana],.app-shell-header-bar[data-tone=resource]{--bar-tone-color: var(--resource-mana)}.app-shell-header-bar[data-tone=rage]{--bar-tone-color: var(--resource-rage)}.app-shell-header-bar[data-tone=energy]{--bar-tone-color: var(--resource-energy)}@media(min-width:900px){.app-shell-header-bars{gap:24px}.app-shell-header-bar{width:144px}}.app-shell-header-bar-fill{position:absolute;inset:0;border-radius:0;background:var(--color-text-secondary);transform:scaleX(var(--app-shell-header-bar-scale, 0));transform-origin:left center;transition:transform var(--motion-regular) var(--motion-change-ease)}.app-shell-header-bar[data-tone=hp-success] .app-shell-header-bar-fill{background:var(--color-health-friendly)}.app-shell-header-bar[data-tone=hp-danger] .app-shell-header-bar-fill{background:var(--color-danger)}.app-shell-header-bar[data-tone=resource] .app-shell-header-bar-fill,.app-shell-header-bar[data-tone=mana] .app-shell-header-bar-fill{background:var(--resource-mana)}.app-shell-header-bar[data-tone=rage] .app-shell-header-bar-fill{background:var(--resource-rage)}.app-shell-header-bar[data-tone=energy] .app-shell-header-bar-fill{background:var(--resource-energy)}.app-shell-header-bar[data-regen=true]{animation:app-shell-header-bar-regen-pulse 1.8s cubic-bezier(.4,0,.6,1) infinite}.app-shell-header-bar-sheen{position:absolute;inset:0;pointer-events:none;background:linear-gradient(100deg,transparent 30%,color-mix(in oklch,var(--bar-tone-color) 55%,transparent) 50%,transparent 70%);background-size:200% 100%;background-position:100% 0;mix-blend-mode:screen;opacity:.7;animation:app-shell-header-bar-sheen 1.8s cubic-bezier(.4,0,.6,1) infinite}@keyframes app-shell-header-bar-regen-pulse{0%,to{box-shadow:0 0 3px color-mix(in oklch,var(--bar-tone-color) 35%,transparent),inset 0 0 0 1px color-mix(in oklch,var(--bar-tone-color) 25%,transparent)}50%{box-shadow:0 0 10px 1px color-mix(in oklch,var(--bar-tone-color) 70%,transparent),inset 0 0 0 1px color-mix(in oklch,var(--bar-tone-color) 55%,transparent)}}@keyframes app-shell-header-bar-sheen{0%{background-position:200% 0}to{background-position:-100% 0}}.app-shell-header-bar.is-burst{animation-name:app-shell-header-bar-burst;animation-duration:.7s;animation-timing-function:cubic-bezier(.16,1,.3,1);animation-fill-mode:none}.app-shell-header-bar[data-regen=true].is-burst{animation:app-shell-header-bar-regen-pulse 1.8s cubic-bezier(.4,0,.6,1) infinite,app-shell-header-bar-burst .7s cubic-bezier(.16,1,.3,1)}@keyframes app-shell-header-bar-burst{0%{filter:drop-shadow(0 0 0 transparent)}20%{filter:drop-shadow(0 0 10px color-mix(in oklch,var(--bar-tone-color) 85%,transparent))}to{filter:drop-shadow(0 0 0 transparent)}}.app-shell-header-bar-value{flex:0 0 auto;font-family:var(--font-label);font-size:9px;font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:.5px;line-height:1;text-align:right;color:var(--color-text-secondary)}.app-shell-header-bar-value[data-tone=hp-success]{color:color-mix(in oklch,var(--color-health-friendly) 78%,var(--color-text-primary))}.app-shell-header-bar-value[data-tone=hp-danger]{color:color-mix(in oklch,var(--color-danger) 78%,var(--color-text-primary))}.app-shell-header-bar-value[data-tone=resource],.app-shell-header-bar-value[data-tone=mana]{color:color-mix(in oklch,var(--resource-mana) 78%,var(--color-text-primary))}.app-shell-header-bar-value[data-tone=rage]{color:color-mix(in oklch,var(--resource-rage) 78%,var(--color-text-primary))}.app-shell-header-bar-value[data-tone=energy]{color:color-mix(in oklch,var(--resource-energy) 78%,var(--color-text-primary))}.app-shell-header-bar-value{display:inline-block;transform-origin:right center;transition:color .2s cubic-bezier(.22,1,.36,1)}.app-shell-header-bar-value.is-tick{animation:app-shell-header-bar-value-tick .52s cubic-bezier(.16,1,.3,1)}@keyframes app-shell-header-bar-value-tick{0%{transform:scale(1);text-shadow:0 0 0 transparent}35%{transform:scale(1.22);text-shadow:0 0 10px currentColor}to{transform:scale(1);text-shadow:0 0 0 transparent}}@media(prefers-reduced-motion:reduce){.app-shell-header-bar[data-regen=true],.app-shell-header-bar[data-regen=true].is-burst,.app-shell-header-bar.is-burst{animation:none;box-shadow:0 0 4px color-mix(in oklch,var(--bar-tone-color) 50%,transparent)}.app-shell-header-bar-sheen{animation:none;opacity:0}.app-shell-header-bar-value.is-tick{animation:none}}.app-shell-header-location{flex:0 1 auto;min-width:0;color:var(--color-text-tertiary);font-family:var(--font-label);font-size:9px;font-weight:400;letter-spacing:2px;line-height:1;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-shell-header-xp{position:absolute;left:0;right:0;bottom:0;display:block;overflow:hidden;height:1px;background:var(--brass-900)}.app-shell-header-xp-fill{position:absolute;inset:0;background:var(--brass-600);transform:scaleX(var(--app-shell-header-xp-scale, 0));transform-origin:left center;transition:transform var(--motion-regular) var(--motion-change-ease)}.app-shell[data-shell-mode=drilldown] .app-shell-header{flex:0 0 auto;height:auto;min-height:54px;flex-shrink:0;padding:calc(var(--space-small) + env(safe-area-inset-top)) var(--space-snug) var(--space-small)}.app-shell-drilldown-header{display:grid;grid-template-columns:38px minmax(0,1fr) 38px;align-items:center;gap:var(--space-small);width:100%}.app-shell-back-button{width:38px;height:38px;display:grid;place-items:center;padding:0;border:var(--border-thin) solid var(--surface-border-regular);border-radius:var(--radius-12);background:var(--surface-fill-slot);color:var(--color-text-primary);box-shadow:inset 0 1px 0 var(--color-highlight-soft);transition:border-color var(--motion-fast) var(--motion-change-ease),background-color var(--motion-fast) var(--motion-change-ease),color var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-press-ease)}.app-shell-back-button:hover{border-color:var(--surface-border-accent);color:var(--color-currency-gold)}.app-shell-back-button:active{transform:scale(var(--motion-press-scale))}.app-shell-drilldown-copy{min-width:0;display:grid;justify-items:center;gap:3px;text-align:center}.app-shell-drilldown-eyebrow,.app-shell-drilldown-title{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-shell-drilldown-eyebrow{max-width:100%;color:var(--color-currency-gold);font-family:var(--font-label);font-size:var(--app-type-kicker);font-weight:400;letter-spacing:.16em;text-transform:uppercase}.app-shell-drilldown-title{max-width:100%;color:var(--color-text-primary);font-family:var(--font-display);font-size:var(--app-type-emphasis);font-weight:600;letter-spacing:.08em;line-height:1.05;text-transform:uppercase}.app-shell-drilldown-spacer{width:38px;height:38px}.app-shell:not([data-layout=wide])[data-screen=character] .app-main>.app-shell-header{display:none}.app-shell[data-screen-chrome-hidden=true] .app-main{overflow:hidden;padding-bottom:0}.app-shell[data-screen-chrome-hidden=true] .app-main>.app-shell-header{display:none}.app-shell[data-screen-chrome-hidden=true] .app-screen{flex:1;min-height:0;gap:0;padding:0;animation:none}@media(max-width:360px){.app-shell-header{padding-inline:var(--space-snug)}.app-shell-header-content{gap:10px}.app-shell-header-bars{gap:6px}.app-shell-header-bar{width:60px}.app-shell-header-location{letter-spacing:1.4px}.app-shell-header-name{font-size:var(--app-type-compact-title);letter-spacing:1.2px}}.app-header{display:flex;flex-direction:column;gap:var(--space-small)}.app-header-row,.app-section-head,.app-list-row,.app-character-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-small)}.app-title{margin:0;font-size:var(--type-40);line-height:.95;color:var(--color-text-primary);text-shadow:0 0 22px color-mix(in oklch,var(--color-text-accent) 18%,transparent)}.app-section-title{margin:0;font-size:var(--type-26);line-height:1;color:var(--color-text-primary)}.app-copy{color:var(--color-text-secondary)}.app-subsection-title{margin:0;font-size:var(--type-24);line-height:1;color:var(--color-text-primary)}.app-chip-row,.app-button-row{display:flex;flex-wrap:wrap;gap:var(--space-small)}.app-guidance-card,.app-signal-card,.app-subpanel,.app-plan-row{display:flex;flex-direction:column;gap:var(--space-tight);padding:var(--space-small);border:var(--border-thin) solid color-mix(in oklch,var(--color-frame-border) 22%,var(--color-border-tertiary));border-radius:var(--radius-16);background:linear-gradient(180deg,color-mix(in oklch,var(--color-surface-elevated) 80%,black),color-mix(in oklch,var(--color-surface) 92%,black));box-shadow:inset 0 1px 0 var(--color-highlight-medium)}.app-guidance-card{border-color:color-mix(in oklch,var(--color-text-accent) 32%,var(--color-frame-border));background:radial-gradient(circle at top right,color-mix(in oklch,var(--color-text-accent) 16%,transparent),transparent 34%),linear-gradient(180deg,color-mix(in oklch,var(--color-text-accent) 8%,var(--color-surface-elevated)),color-mix(in oklch,var(--color-surface) 92%,black))}.app-guidance-card .ds-button{align-self:flex-start}.app-signal-grid,.app-plan-list,.app-step-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-small)}.app-opportunity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-small)}.app-pane-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:var(--space-small)}.app-pane-stack,.app-event-list,.app-guidance-list{display:flex;flex-direction:column;gap:var(--space-small)}.app-guidance-row,.app-event-card,.app-step-card{padding:var(--space-small);border:var(--border-thin) solid color-mix(in oklch,var(--color-frame-border) 18%,var(--color-border-secondary));border-radius:var(--radius-12);background:color-mix(in oklch,var(--color-surface-elevated) 80%,black)}.app-signal-card strong,.app-event-card strong,.app-step-card strong,.app-plan-row strong{font-weight:400;color:var(--color-text-primary)}.app-signal-card strong{font-size:var(--type-24)}.app-stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-small)}.app-stat-card{display:flex;flex-direction:column;gap:var(--space-tight);padding:var(--space-small);border:var(--border-thin) solid color-mix(in oklch,var(--color-frame-border) 18%,var(--color-border-tertiary));border-radius:var(--radius-12);background:color-mix(in oklch,var(--color-surface-elevated) 80%,black)}.app-stat-card strong,.app-list-row strong,.app-inline-note strong{font-weight:400;color:var(--color-text-primary)}.app-risk-badge{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:calc(var(--space-section) * 2);padding:var(--space-small);border:var(--border-thin) solid color-mix(in oklch,var(--color-frame-border) 28%,var(--color-border-primary));border-radius:var(--radius-pill);background:color-mix(in oklch,var(--color-surface-elevated) 84%,black);text-transform:uppercase;letter-spacing:.12em}.app-risk-badge[data-risk=low]{color:var(--color-success)}.app-risk-badge[data-risk=medium]{color:var(--color-warning)}.app-risk-badge[data-risk=high]{color:var(--color-danger)}.app-inline-note{display:flex;flex-direction:column;gap:var(--space-tight);padding:var(--space-small);border:var(--border-thin) solid var(--color-border-secondary);background:var(--color-highlight-faint)}.app-list,.app-list-group{display:flex;flex-direction:column;gap:var(--space-small)}.app-list-row{padding:var(--space-small);border:var(--border-thin) solid var(--color-border-tertiary);background:color-mix(in oklch,var(--color-canvas) 30%,transparent)}.app-list-row-with-marker{justify-content:flex-start;align-items:center}.app-list-row-content{flex:1;min-width:0;display:flex;align-items:center;gap:var(--space-small)}.app-progress-track{position:relative;width:100%;height:calc(var(--space-small) + var(--border-regular));border-radius:var(--radius-pill);overflow:hidden;background:color-mix(in oklch,var(--color-text-primary) 8%,transparent)}.app-progress-track>span{display:block;height:100%;width:100%;transform:scaleX(var(--app-progress-scale, 1));transform-origin:left center;border-radius:inherit;background:var(--color-info);transition:transform var(--motion-regular) var(--motion-change-ease)}.app-progress-track[data-tone=enemy]>span{background:var(--color-danger)}.app-inline-button{min-width:0;padding-inline:var(--space-medium)}.app-pill-group{display:flex;flex-wrap:wrap;gap:var(--space-tight)}.app-pill-button{padding:var(--space-tight) var(--space-small);border:var(--border-thin) solid color-mix(in oklch,var(--color-frame-border) 24%,var(--color-border-secondary));border-radius:var(--radius-pill);background:color-mix(in oklch,var(--color-surface-elevated) 76%,black);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:var(--tracking-ui);font-size:var(--type-14);transition:color var(--motion-fast) var(--motion-change-ease),border-color var(--motion-fast) var(--motion-change-ease),background-color var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-change-ease)}.app-pill-button:hover{color:var(--color-text-secondary);border-color:var(--color-border-primary)}.app-pill-button:active{transform:translateY(1px)}.app-pill-button[aria-pressed=true]{color:var(--color-text-accent);border-color:var(--color-text-accent);background:color-mix(in oklch,var(--color-text-accent) 16%,var(--color-surface-elevated))}.app-portrait{width:calc(var(--space-section) * 3);aspect-ratio:4 / 5;display:grid;place-items:center;flex-shrink:0}.app-portrait-glyph{position:relative;z-index:1;font-size:var(--type-42);color:var(--color-text-accent);text-shadow:0 0 20px color-mix(in oklch,var(--color-text-accent) 28%,transparent);transition:color var(--motion-regular) var(--motion-change-ease),text-shadow var(--motion-regular) var(--motion-change-ease)}.app-portrait[data-class=warrior] .app-portrait-glyph{color:var(--color-class-warrior);text-shadow:0 0 22px color-mix(in oklch,var(--color-class-warrior) 34%,transparent)}.app-portrait[data-class=mage] .app-portrait-glyph{color:var(--color-class-mage);text-shadow:0 0 22px color-mix(in oklch,var(--color-class-mage) 34%,transparent)}.app-portrait[data-class=priest] .app-portrait-glyph{color:var(--color-class-priest);text-shadow:0 0 22px color-mix(in oklch,var(--color-class-priest) 30%,transparent)}.app-portrait[data-class=rogue] .app-portrait-glyph{color:var(--color-class-rogue);text-shadow:0 0 22px color-mix(in oklch,var(--color-class-rogue) 34%,transparent)}@keyframes app-fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes app-slide-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes app-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes app-pulse{0%,to{opacity:1}50%{opacity:.45}}.app-screen{display:flex;flex-direction:column;gap:var(--space-medium);animation:app-fade-up var(--motion-regular) var(--motion-enter-ease) both}.app-shell[data-shell-mode=drilldown] .app-screen{flex:1;min-height:0;gap:0;padding:0;animation-name:app-drilldown-in}@keyframes app-drilldown-in{0%{opacity:.94;transform:translate(18px)}to{opacity:1;transform:translate(0)}}@keyframes app-fade-in{0%{opacity:0}to{opacity:1}}@keyframes app-fade-out{0%{opacity:1}to{opacity:0}}@keyframes app-slide-up-plain{0%{opacity:0;transform:translate3d(0,14px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes app-flourish{0%{transform:scale(.96);opacity:0}60%{transform:scale(1.015);opacity:1}to{transform:scale(1);opacity:1}}@keyframes app-tick-up{0%{opacity:0;transform:translate3d(0,-4px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes app-flash{0%{background-color:color-mix(in oklch,var(--color-text-accent) 28%,transparent)}to{background-color:transparent}}.app-fade-in{animation:app-fade-in var(--motion-regular) var(--motion-enter-ease) both}.app-enter{animation:app-fade-up var(--motion-regular) var(--motion-enter-ease) both}.app-enter-soft{animation:app-slide-up-plain var(--motion-regular) var(--motion-enter-ease) both}.app-flourish{animation:app-flourish .38s var(--motion-enter-ease) both}.app-tick{animation:app-tick-up var(--motion-regular) var(--motion-enter-ease) both}.app-flash{animation:app-flash .6s var(--motion-change-ease) both}.app-stagger>*{animation:app-fade-up var(--motion-regular) var(--motion-enter-ease) both}.app-stagger>*:nth-child(1){animation-delay:30ms}.app-stagger>*:nth-child(2){animation-delay:60ms}.app-stagger>*:nth-child(3){animation-delay:90ms}.app-stagger>*:nth-child(4){animation-delay:.12s}.app-stagger>*:nth-child(5){animation-delay:.15s}.app-stagger>*:nth-child(6){animation-delay:.18s}.app-stagger>*:nth-child(7){animation-delay:.21s}.app-stagger>*:nth-child(8){animation-delay:.23s}.app-stagger>*:nth-child(9){animation-delay:.25s}.app-stagger>*:nth-child(10){animation-delay:.27s}.app-stagger>*:nth-child(11){animation-delay:285ms}.app-stagger>*:nth-child(n+12){animation-delay:.3s}.app-pressable{transition:transform var(--motion-fast) var(--motion-press-ease),border-color var(--motion-fast) var(--motion-change-ease),background-color var(--motion-fast) var(--motion-change-ease),color var(--motion-fast) var(--motion-change-ease),box-shadow var(--motion-fast) var(--motion-change-ease)}.app-pressable:active:not(:disabled):not([aria-disabled=true]){transform:scale(var(--motion-press-scale))}.app-status-dot{display:inline-flex;align-items:center;gap:var(--space-small)}.app-status-dot:before{content:"";width:8px;height:8px;border-radius:var(--radius-pill);background:var(--color-text-tertiary);box-shadow:0 0 6px transparent;transition:background var(--motion-fast) var(--motion-change-ease),box-shadow var(--motion-fast) var(--motion-change-ease)}.app-status-dot[data-state=online]:before{background:var(--color-success);box-shadow:0 0 10px color-mix(in oklch,var(--color-success) 60%,transparent)}.app-status-dot[data-state=connecting]:before{background:var(--color-warning-bright);box-shadow:0 0 10px color-mix(in oklch,var(--color-warning-bright) 45%,transparent);animation:app-pulse var(--motion-ambient) var(--motion-change-ease) infinite}.app-status-dot[data-state=offline]:before{background:var(--color-danger);box-shadow:0 0 10px color-mix(in oklch,var(--color-danger) 50%,transparent)}.app-status-dot[data-state=idle]:before{background:var(--color-text-tertiary);box-shadow:none}.app-progress-track[data-tone=travel]>span{background-image:linear-gradient(90deg,var(--color-info),var(--color-info-bright) 50%,var(--color-info));background-size:200% 100%;animation:app-shimmer var(--motion-ambient) linear infinite}.app-progress-track[data-tone=friendly]>span{background-image:linear-gradient(180deg,var(--color-success-bright),var(--color-health-friendly))}.app-progress-track[data-tone=enemy]>span{background-image:linear-gradient(180deg,var(--color-danger-bright),var(--color-danger))}.ds-chip[data-tone=risk-low]{color:var(--color-success);border-color:color-mix(in oklch,var(--color-success) 46%,transparent)}.ds-chip[data-tone=risk-medium]{color:var(--color-warning);border-color:color-mix(in oklch,var(--color-warning) 48%,transparent)}.ds-chip[data-tone=risk-high]{color:var(--color-danger);border-color:color-mix(in oklch,var(--color-danger) 52%,transparent)}.ds-chip[data-tone=reward]{color:var(--color-text-primary);border-color:color-mix(in oklch,var(--color-text-primary) 32%,transparent)}.ds-chip[data-tone=reward-xp]{color:var(--color-xp);border-color:color-mix(in oklch,var(--color-xp) 46%,transparent)}.ds-chip[data-tone=reward-gold]{color:var(--color-currency-gold);border-color:color-mix(in oklch,var(--color-currency-gold) 48%,transparent)}.ds-button{transition:transform var(--motion-fast) var(--motion-press-ease),border-color var(--motion-fast) var(--motion-change-ease),background-color var(--motion-fast) var(--motion-change-ease),color var(--motion-fast) var(--motion-change-ease),box-shadow var(--motion-fast) var(--motion-change-ease)}.ds-button:active:not(:disabled){transform:translateY(0) scale(var(--motion-press-scale))}.ds-button:focus-visible,.app-inline-action:focus-visible,.app-filter-button:focus-visible,.app-shell-back-button:focus-visible,.ds-input:focus-visible{outline:var(--border-regular) solid var(--color-text-accent);outline-offset:2px}.app-toast-dismiss:focus-visible{outline:var(--border-regular) solid var(--color-text-accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-delay:0s!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}@media(max-width:420px){.app-header-row,.app-section-head,.app-list-row,.app-character-head{flex-direction:column}.app-stats-grid,.app-step-grid,.app-opportunity-grid,.app-signal-grid,.app-plan-list,.app-pane-grid{grid-template-columns:1fr}.app-setup-class-grid,.app-setup-stat-row{grid-template-columns:1fr;display:grid}}@media(max-width:860px){.app-opportunity-grid,.app-step-grid,.app-signal-grid,.app-plan-list,.app-pane-grid{grid-template-columns:1fr}}.app-top-shell{position:sticky;top:0;z-index:12;display:flex;flex-direction:column;gap:var(--space-small)}.app-player-bar{border-color:color-mix(in oklch,var(--color-text-accent) 30%,var(--color-frame-border));box-shadow:0 16px 38px color-mix(in oklch,var(--color-canvas) 50%,transparent);background:radial-gradient(circle at top right,color-mix(in oklch,var(--color-text-accent) 12%,transparent),transparent 26%),linear-gradient(180deg,color-mix(in oklch,var(--color-surface-elevated) 88%,black),color-mix(in oklch,var(--color-surface) 96%,black))}.app-comms-stack{display:flex;flex-direction:column;gap:var(--space-small);min-width:0}.app-comms-stack{gap:var(--space-medium)}.app-guidance-card[data-active=true]{border-color:color-mix(in oklch,var(--color-text-accent) 44%,var(--color-frame-border));background:linear-gradient(180deg,color-mix(in oklch,var(--color-text-accent) 12%,var(--color-surface-elevated)),color-mix(in oklch,var(--color-surface) 94%,black))}.app-guidance-card[data-active=true]{text-align:left}@media(max-width:520px){.app-shell{padding:0}}.app-shell{--app-type-kicker: 10px;--app-type-helper: 11px;--app-type-body: 13px;--app-type-compact-title: 14px;--app-type-emphasis: 16px;--app-type-entity: 22px;--app-type-map-title: 18px;--app-bottom-nav-clearance: calc(64px + env(safe-area-inset-bottom)) ;width:min(100%,var(--app-mobile-frame-width));height:100dvh;min-height:0;margin:0 auto;padding:0;display:flex;flex-direction:column;gap:0;position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(180deg,var(--color-surface),transparent 16%),var(--color-canvas);font-family:var(--font-body);color:var(--color-text-primary)}.app-shell:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(90deg,transparent,color-mix(in oklch,var(--color-frame-border) 20%,transparent),transparent),linear-gradient(180deg,transparent 58%,color-mix(in oklch,var(--color-canvas) 46%,transparent) 100%);opacity:.7}.app-shell>*{position:relative;z-index:1}.app-wide-layout{--app-wide-inspector-width: 0px;flex:1 1 auto;min-height:0;display:grid;grid-template-columns:var(--app-wide-side-rail-width) minmax(0,1fr) var(--app-wide-inspector-width);grid-template-rows:auto minmax(0,1fr);overflow:hidden;background:var(--bg-deep)}.app-wide-layout[data-inspector-open=true]{--app-wide-inspector-width: var(--app-wide-drawer-width)}.app-wide-side-rail{grid-column:1;grid-row:2;min-width:0;min-height:0;display:flex;flex-direction:column;align-items:stretch;gap:var(--space-2);padding:var(--space-3) var(--space-2);border-right:var(--border-thin) solid var(--line-secondary);background:linear-gradient(180deg,var(--surface-150),var(--bg-tertiary))}.app-wide-player-frame{position:relative;grid-column:1 / -2;grid-row:1;z-index:3;min-width:0;min-height:calc(54px + env(safe-area-inset-top));box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;gap:0;padding:calc(env(safe-area-inset-top) + 10px) 14px 10px;border-radius:0;background:var(--bg-primary);color:var(--color-text-primary)}.app-wide-side-tabs{display:flex;flex:1 1 auto;min-height:0;flex-direction:column;gap:var(--space-2)}.app-wide-side-tab{min-width:0;min-height:58px;display:grid;justify-items:center;align-content:center;gap:5px;padding:var(--space-2) var(--space-1);border:var(--border-thin) solid transparent;border-radius:var(--radius-12);background:transparent;color:var(--icon-tertiary);font-family:var(--font-label);font-size:var(--type-9);font-weight:var(--weight-medium);letter-spacing:.08em;line-height:var(--leading-tight);text-transform:uppercase;transition:border-color var(--motion-fast) var(--motion-change-ease),background-color var(--motion-fast) var(--motion-change-ease),color var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-press-ease)}.app-wide-side-tab:hover{border-color:var(--line-primary);background:var(--surface-150);color:var(--icon-secondary)}.app-wide-side-tab:active{transform:scale(var(--motion-press-scale))}.app-wide-side-tab:focus-visible,.app-wide-drawer-close:focus-visible{outline:var(--focus-ring);outline-offset:2px}.app-wide-side-tab[data-active=true]{border-color:var(--surface-border-accent);background:var(--brass-950);color:var(--color-currency-gold);box-shadow:inset 0 1px 0 var(--color-highlight-soft)}.app-wide-side-tab-icon,.app-wide-side-tab-glyph{width:22px;height:22px;color:currentColor}.app-wide-side-tab-glyph,.app-wide-side-tab-image-frame{display:inline-grid;place-items:center}.app-wide-side-tab-icon-frame{position:relative;display:inline-grid;place-items:center}.app-wide-side-tab-badge{position:absolute;top:-3px;right:-4px;width:9px;height:9px;border-radius:50%;background:var(--color-currency-gold);box-shadow:0 0 0 2px var(--bg-tertiary);pointer-events:none}.app-wide-side-tab-image{display:block;max-width:24px;max-height:24px;object-fit:contain}.app-wide-drawer{grid-column:2;grid-row:2;z-index:2;justify-self:start;width:min(var(--app-wide-drawer-width),100%);min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden;border-right:var(--border-thin) solid var(--line-secondary);background:var(--bg-primary);box-shadow:12px 0 24px color-mix(in oklch,var(--bg-deep) 72%,transparent);opacity:0;transform:translate3d(-18px,0,0);transition:opacity var(--motion-slow) var(--motion-enter-ease),transform var(--motion-slow) var(--motion-enter-ease),box-shadow var(--motion-slow) var(--motion-enter-ease);will-change:transform,opacity}.app-wide-drawer[data-state=open]{opacity:1;transform:translateZ(0)}.app-wide-drawer[data-state=closed]{opacity:0;transform:translate3d(-18px,0,0);box-shadow:12px 0 18px color-mix(in oklch,var(--bg-deep) 0%,transparent);transition:opacity var(--motion-regular) var(--motion-exit-ease),transform var(--motion-regular) var(--motion-exit-ease),box-shadow var(--motion-regular) var(--motion-exit-ease);pointer-events:none}.app-wide-drawer[data-state=open] .app-wide-drawer-head,.app-wide-drawer[data-state=open] .app-wide-drawer-body{animation:app-drawer-content-rise var(--motion-slow) var(--motion-enter-ease) both}.app-wide-drawer[data-state=open] .app-wide-drawer-body{animation-delay:60ms}@keyframes app-drawer-content-rise{0%{opacity:0;transform:translate3d(0,6px,0)}to{opacity:1;transform:translateZ(0)}}@media(prefers-reduced-motion:reduce){.app-wide-drawer,.app-wide-drawer[data-state=open],.app-wide-drawer[data-state=closed]{transform:none;transition:opacity var(--motion-fast) linear}.app-wide-drawer[data-state=open] .app-wide-drawer-head,.app-wide-drawer[data-state=open] .app-wide-drawer-body{animation:none}}.app-wide-drawer-head{flex:0 0 auto;min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:var(--border-thin) solid var(--line-secondary);background:var(--surface-150)}.app-wide-drawer-copy{min-width:0;display:grid;gap:4px}.app-wide-drawer-copy span{color:var(--color-currency-gold);font-family:var(--font-label);font-size:var(--type-9);font-weight:var(--weight-medium);letter-spacing:var(--tracking-widest);line-height:var(--leading-tight);text-transform:uppercase}.app-wide-drawer-copy h2{margin:0;overflow:hidden;color:var(--ink-50);font-family:var(--font-display);font-size:var(--type-title);font-weight:var(--weight-bold);letter-spacing:var(--tracking-normal);line-height:var(--leading-snug);text-overflow:ellipsis;white-space:nowrap}.app-wide-drawer-close{flex:0 0 auto;width:34px;height:34px;display:grid;place-items:center;padding:0;border:var(--border-thin) solid var(--line-primary);border-radius:var(--radius-12);background:var(--surface-fill-slot);color:var(--icon-secondary);transition:border-color var(--motion-fast) var(--motion-change-ease),color var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-press-ease)}.app-wide-drawer-close:hover{border-color:var(--surface-border-accent);color:var(--color-currency-gold)}.app-wide-drawer-close:active{transform:scale(var(--motion-press-scale))}.app-wide-drawer-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:var(--line-primary) transparent;scrollbar-width:thin}.app-wide-drawer-body .char06-screen{min-height:auto;overflow:visible}.app-wide-drawer-body .app-inventory-screen,.app-wide-drawer-body .app-screen-cluster--quests,.app-wide-drawer-body .social-hub,.app-wide-drawer-body .app-quest-log{min-height:100%}.app-wide-stage{grid-column:2;grid-row:2;position:relative;min-width:0;min-height:0;overflow:hidden;background:var(--bg-deep)}.app-wide-location-inspector{grid-column:-2 / -1;grid-row:1 / -1;position:relative;min-width:0;min-height:0;overflow:hidden;background:var(--bg-primary)}.app-wide-location-inspector__stack{display:flex;flex-direction:column;height:100%;min-height:0}.app-wide-location-inspector__sheet{position:relative;flex:1 1 auto;min-height:0;overflow:hidden}.app-wide-stage>.app-field-map-screen{width:100%;height:100%;min-height:0}.app-shell .ds-chip,.app-shell .ds-kicker,.app-shell .app-copy,.app-shell .app-section-title,.app-shell .app-subsection-title,.app-shell .app-title{font-family:var(--font-body)}.app-shell .ds-chip,.app-shell .ds-kicker{letter-spacing:.14em}.app-shell .app-section-title{font-size:var(--app-type-entity);line-height:1.05;font-weight:600}.app-shell .app-subsection-title{font-size:var(--app-type-emphasis);line-height:1.2;font-weight:600}.app-shell .app-title{font-family:var(--font-display);letter-spacing:var(--tracking-ui);text-transform:uppercase}.app-shell .app-copy{color:var(--color-text-secondary);font-size:var(--app-type-body);line-height:1.52}.app-shell .ds-kicker{color:var(--color-text-tertiary);font-family:var(--font-label);font-size:var(--app-type-kicker);font-weight:400;letter-spacing:.2em;text-transform:uppercase}.app-shell .ds-button{min-width:160px;height:var(--hit-target-comfortable);min-height:var(--hit-target-comfortable);padding:calc(var(--space-2) + var(--stroke-2)) var(--space-3);border:var(--border-thin) solid var(--line-primary);border-radius:var(--radius-12);background:var(--bg-secondary);color:var(--color-text-secondary);font-family:var(--font-mono);font-size:var(--type-label);font-weight:var(--weight-medium);line-height:var(--leading-tight);letter-spacing:var(--tracking-button);box-shadow:none;text-transform:none}.app-shell .ds-button:hover:not(:disabled){color:var(--ink-100);border-color:color-mix(in oklch,var(--line-primary) 82%,var(--ink-100));background:color-mix(in oklch,var(--bg-secondary) 92%,var(--ink-100))}.app-shell .ds-button:disabled{opacity:.5}.app-shell .ds-button:is(.app-primary-button,.ds-button--primary){padding-inline:var(--space-4);border-color:var(--ember-700);background:var(--ember-800);color:var(--ink-100);font-family:var(--font-display);font-size:var(--type-title);box-shadow:none}.app-shell .ds-button:is(.app-primary-button,.ds-button--primary):hover:not(:disabled){border-color:color-mix(in oklch,var(--ember-700) 78%,var(--ink-100));background:color-mix(in oklch,var(--ember-800) 90%,var(--ink-100));color:var(--ink-100);box-shadow:none}.app-shell .ds-button:is(.app-primary-button,.ds-button--primary):active:not(:disabled){background:var(--ember-900)}.app-shell .ds-chip,.app-mini-chip{min-height:1.75rem;padding:.3rem .56rem;border:var(--border-thin) solid var(--surface-border-regular);border-radius:var(--radius-pill);background:var(--surface-fill-muted);color:var(--color-text-secondary);font-family:var(--font-label);font-size:var(--app-type-helper);font-weight:400;letter-spacing:.14em;text-transform:uppercase}.app-section-title--hero{font-size:var(--type-26);line-height:1}.app-section-title--map,.app-subsection-title--map{font-size:var(--app-type-map-title);line-height:1.1;font-weight:700}.app-section-title--result{font-size:var(--type-36);line-height:1}.app-mobile-topbar-row,.app-card-eyebrow-row,.app-topbar-name-row,.app-topbar-progress-labels,.app-mobile-actions,.app-filter-row,.app-character-summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-small)}.app-topbar-ident,.app-topbar-copy,.app-mobile-stack,.app-npc-copy,.app-character-copy,.app-mobile-list,.app-skill-copy,.app-mobile-bar-group,.app-setup-screen,.app-setup-field{display:flex;flex-direction:column;gap:6px;min-width:0}.app-topbar-ident{flex:1;flex-direction:row;align-items:center}.app-topbar-avatar,.app-character-avatar,.app-npc-icon,.app-profession-icon,.app-skill-icon{display:grid;place-items:center;border-radius:var(--radius-12);flex-shrink:0}.app-topbar-avatar{width:28px;height:28px;border:var(--border-thin) solid var(--color-danger);color:var(--color-danger-bright);background:var(--color-surface-elevated)}.app-topbar-avatar svg{width:16px;height:16px}.app-topbar-copy strong{font-size:var(--app-type-emphasis);font-weight:600;letter-spacing:.02em}.app-topbar-copy span,.app-character-subtitle,.app-card-meta,.app-feed-time{color:var(--color-text-muted);font-size:var(--app-type-helper)}.app-topbar-location{color:var(--color-text-primary);font-size:var(--app-type-body);font-weight:600}.app-topbar-subline{display:flex;flex-wrap:wrap;align-items:center;gap:6px;color:var(--color-text-muted);font-size:var(--app-type-helper)}.app-topbar-level{color:var(--color-currency-gold);font-size:var(--app-type-body);font-weight:600}.app-topbar-actions{display:flex;align-items:center;gap:var(--space-small)}.app-topbar-pill{min-height:32px;padding:0 var(--space-snug);border:var(--border-thin) solid var(--surface-border-subtle);border-radius:var(--radius-pill);background:var(--surface-fill-muted);color:var(--color-text-primary);display:inline-flex;align-items:center;gap:6px;font-family:var(--font-label);font-size:var(--app-type-helper);font-weight:400;letter-spacing:.14em;text-transform:uppercase;box-shadow:inset 0 1px 0 var(--color-highlight-faint);transition:transform var(--motion-fast) var(--motion-change-ease),border-color var(--motion-fast) var(--motion-change-ease),background-color var(--motion-fast) var(--motion-change-ease),color var(--motion-fast) var(--motion-change-ease),box-shadow var(--motion-fast) var(--motion-change-ease)}.app-topbar-pill[data-kind=currency] svg{color:var(--color-currency-gold)}.app-topbar-pill[data-kind=net]{border-color:var(--surface-border-info)}.app-topbar-pill:hover:not(:disabled){border-color:var(--surface-border-accent);background:var(--surface-fill-accent-soft);box-shadow:inset 0 1px 0 var(--color-highlight-soft),var(--surface-shadow-soft);transform:translateY(var(--motion-hover-lift))}.app-topbar-pill:focus-visible{outline:var(--border-regular) solid var(--surface-border-accent);outline-offset:2px}.app-topbar-pill:active:not(:disabled){transform:translateY(0);background:var(--surface-fill-accent-soft);box-shadow:inset 0 1px 0 var(--color-highlight-faint)}.app-topbar-progress{display:flex;flex-direction:column;gap:6px}.app-topbar-progress-labels span{color:var(--color-text-muted);font-size:var(--app-type-kicker);font-weight:600}.app-topbar-progress-labels strong{color:var(--color-text-primary);font-size:var(--app-type-kicker)}.app-topbar-rail{display:flex;flex-wrap:wrap;gap:var(--space-small)}.app-topbar-badge{min-height:22px;padding:0 var(--space-small);border:var(--border-thin) solid var(--surface-border-subtle);border-radius:var(--radius-pill);background:var(--surface-fill-muted);color:var(--color-text-secondary);display:inline-flex;align-items:center;gap:var(--space-small);font-family:var(--font-label);font-size:var(--app-type-helper);font-weight:400;letter-spacing:.14em;text-transform:uppercase;box-shadow:inset 0 1px 0 var(--color-highlight-faint)}.app-topbar-badge[data-kind=screen]{color:var(--color-text-primary)}.app-topbar-badge[data-kind=danger-low]{color:var(--color-success-bright)}.app-topbar-badge[data-kind=danger-medium]{color:var(--color-warning-bright)}.app-topbar-badge[data-kind=danger-high]{color:var(--color-danger-bright)}.app-topbar-badge[data-kind=connection]{min-width:0}.app-topbar-badge .app-status-dot{gap:6px}.app-screen{padding:var(--space-small) var(--space-medium) 0;gap:var(--space-snug)}.app-shell[data-screen=character] .app-screen{gap:0;padding:0}.app-mobile-card,.app-bottom-sheet,.app-map-stage{position:relative;border:var(--border-thin) solid var(--surface-border-regular);border-radius:var(--radius-12);background:var(--surface-fill-panel);box-shadow:inset 0 1px 0 var(--color-highlight-soft),var(--surface-shadow-soft)}.app-mobile-card.ds-panel:before,.app-bottom-sheet:before,.app-map-stage:before{display:none;content:none}.app-mobile-card .ds-panel-body{padding:var(--space-medium)}.app-mobile-stack{gap:var(--space-snug)}.app-mobile-actions{flex-wrap:wrap;justify-content:flex-start}.app-mobile-actions--stack{flex-direction:column;align-items:stretch}.app-mobile-actions--stack>*{width:100%}.app-mobile-actions--stack .ds-button{justify-content:center}.app-screen-actions{position:sticky;bottom:var(--app-bottom-nav-clearance, 0px);z-index:5;display:flex;flex-direction:column;align-items:stretch;gap:10px;width:100%;margin-top:auto;padding:14px 16px;border-top:1px solid var(--surface-divider);background:var(--color-surface-elevated, var(--surface-100))}.app-shell:not([data-nav-hidden=true]) .app-screen-actions{padding-bottom:0}.app-screen-actions>.ds-button{width:100%;justify-content:center}@keyframes app-sheet-overlay-enter{0%{opacity:0}to{opacity:1}}@keyframes app-sheet-overlay-exit{0%{opacity:1}to{opacity:0}}@keyframes app-bottom-sheet-enter{0%{opacity:0;transform:translate3d(0,calc(var(--app-sheet-drag-offset, 0px) + 34px),0) scale(.985)}58%{opacity:1}to{opacity:1;transform:translate3d(0,var(--app-sheet-drag-offset, 0px),0) scale(1)}}@keyframes app-bottom-sheet-exit{0%{opacity:1;transform:translate3d(0,var(--app-sheet-drag-offset, 0px),0) scale(1)}to{opacity:0;transform:translate3d(0,calc(var(--app-sheet-drag-offset, 0px) + 36px),0) scale(.985)}}@keyframes app-bottom-sheet-enter-wide{0%{opacity:0;transform:translate3d(-50%,calc(-50% + 18px),0) scale(.985)}58%{opacity:1}to{opacity:1;transform:translate3d(-50%,-50%,0) scale(1)}}@keyframes app-bottom-sheet-exit-wide{0%{opacity:1;transform:translate3d(-50%,-50%,0) scale(1)}to{opacity:0;transform:translate3d(-50%,calc(-50% + 18px),0) scale(.985)}}.app-sheet-overlay{position:absolute;inset:0;z-index:40;border:0;background:color-mix(in oklch,var(--color-canvas) 86%,transparent);animation:app-sheet-overlay-enter .18s var(--motion-enter-ease) both}.app-sheet-overlay[data-overlay=dim]{background:color-mix(in oklch,var(--color-canvas) 86%,transparent)}.app-sheet-overlay[data-overlay=transparent]{background:transparent}.app-sheet-overlay[data-sheet-exiting=true]{pointer-events:none;animation:app-sheet-overlay-exit .18s var(--motion-exit-ease) both}.app-bottom-sheet{position:absolute;left:0;right:0;bottom:0;z-index:41;width:min(100%,var(--app-mobile-frame-width));margin:0 auto;max-height:min(78dvh,720px);box-sizing:border-box;padding:var(--space-snug) var(--space-snug) calc(var(--space-shell) + env(safe-area-inset-bottom));display:flex;flex-direction:column;overflow:hidden;overscroll-behavior:contain;touch-action:pan-y;will-change:transform;transform:translate3d(0,var(--app-sheet-drag-offset, 0px),0);transition:transform var(--motion-regular) var(--motion-enter-ease)}.app-bottom-sheet[data-sheet-entering=true]{animation:app-bottom-sheet-enter .26s var(--motion-enter-ease) both}.app-bottom-sheet[data-sheet-exiting=true]{pointer-events:none;animation:app-bottom-sheet-exit .22s var(--motion-exit-ease) both}.app-bottom-sheet[data-sheet-dragging=true]{transition:none;-webkit-user-select:none;user-select:none}.app-bottom-sheet[data-surface=primary]{max-height:min(90dvh,760px);padding:0 0 calc(24px + env(safe-area-inset-bottom));border:0;border-top:1px solid var(--line-primary);border-radius:10px 10px 0 0;background:var(--bg-primary);box-shadow:0 -16px 32px color-mix(in oklch,var(--color-canvas) 74%,transparent);color:var(--ink-200)}.app-bottom-sheet[data-surface=primary].app-bottom-sheet--with-footer{padding-bottom:0}.app-bottom-sheet-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch}.app-bottom-sheet-footer{flex:0 0 auto;min-width:0;padding-bottom:env(safe-area-inset-bottom)}.app-bottom-sheet--with-footer.app-bottom-sheet--footer-inline .app-bottom-sheet-scroll{padding-bottom:var(--space-4)}.app-bottom-sheet--footer-overlay .app-bottom-sheet-footer{position:absolute;right:0;bottom:0;left:0;z-index:4}.app-bottom-sheet--footer-overlay.app-bottom-sheet--quest .app-bottom-sheet-scroll{padding-bottom:77px}.app-bottom-sheet>*:not(.app-bottom-sheet-scroll){flex-shrink:0}.app-sheet-title,.app-bottom-sheet-title{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-bottom-sheet-body{min-width:0}.app-bottom-sheet-handle{display:flex;justify-content:center;padding:0 0 var(--space-snug);touch-action:none}.app-bottom-sheet[data-surface=primary] .app-bottom-sheet-handle,[data-sheet-surface=primary]>.app-bottom-sheet-handle{min-height:20px;box-sizing:border-box;padding:8px 0;background:var(--surface-100)}.app-bottom-sheet-grip{width:42px;height:4px;border-radius:var(--radius-pill);background:var(--surface-divider);opacity:1}.app-bottom-sheet[data-surface=primary] .app-bottom-sheet-grip,[data-sheet-surface=primary] .app-bottom-sheet-grip{width:44px;border-radius:2px;background:var(--ink-700)}.app-bottom-sheet-close{display:grid;place-items:center;width:18px;height:18px;padding:0;border:0;background:transparent;color:var(--ink-300);cursor:pointer}.app-bottom-sheet-close svg{display:block;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.app-bottom-sheet-close:hover,.app-bottom-sheet-close:focus-visible{color:var(--ink-50)}.app-bottom-sheet-close:focus-visible{outline:2px solid var(--color-text-accent);outline-offset:3px}.app-bottom-sheet-header{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;box-sizing:border-box;padding:14px 20px;border-bottom:1px solid var(--surface-600);background:var(--surface-150);color:var(--text-quiet);font-family:var(--font-label);font-size:10px;font-weight:400;letter-spacing:.2em;line-height:1;text-transform:uppercase;touch-action:none}.app-bottom-sheet-header__meta{display:inline-flex;align-items:center;gap:10px;color:var(--ink-300)}.sheet-page-header{position:relative;display:grid;grid-template-columns:18px minmax(0,1fr) 18px;align-items:center;gap:12px;width:100%;box-sizing:border-box;padding:14px 20px;border-bottom:1px solid var(--surface-600);background:var(--surface-150);color:var(--text-quiet);font-family:var(--font-label);font-size:10px;font-weight:400;letter-spacing:.2em;line-height:1;text-transform:uppercase;touch-action:none}.sheet-page-header__lead,.sheet-page-header__trail{display:grid;place-items:center;width:18px;height:18px}.sheet-page-header__lead{justify-self:start}.sheet-page-header__trail{justify-self:end}.sheet-page-header__back,.sheet-page-header__close{display:grid;place-items:center;width:18px;height:18px;padding:0;border:0;background:transparent;color:var(--ink-300);cursor:pointer;border-radius:var(--radius-md, 4px);transition:color var(--motion-fast) var(--motion-change-ease)}.sheet-page-header__back:hover,.sheet-page-header__close:hover{color:var(--color-text-primary)}.sheet-page-header__back:focus-visible,.sheet-page-header__close:focus-visible{outline:2px solid var(--color-text-accent);outline-offset:2px}.sheet-page-header__title-stack{position:relative;display:grid;grid-template-areas:"title";align-items:center;justify-items:center;min-height:14px;text-align:center;overflow:hidden;color:var(--color-text-primary)}.sheet-page-header__title{grid-area:title;display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.sheet-page-header__title--active{animation:sheet-page-header-enter .28s var(--motion-change-ease) both}.sheet-page-header__title--leaving{animation:sheet-page-header-leave .28s var(--motion-change-ease) both}.sheet-page-header[data-direction=forward] .sheet-page-header__title--active{--sheet-page-header-from-x: 24px}.sheet-page-header[data-direction=forward] .sheet-page-header__title--leaving{--sheet-page-header-to-x: -24px}.sheet-page-header[data-direction=back] .sheet-page-header__title--active{--sheet-page-header-from-x: -24px}.sheet-page-header[data-direction=back] .sheet-page-header__title--leaving{--sheet-page-header-to-x: 24px}@keyframes sheet-page-header-enter{0%{opacity:0;transform:translate3d(var(--sheet-page-header-from-x, 24px),0,0)}to{opacity:1;transform:translateZ(0)}}@keyframes sheet-page-header-leave{0%{opacity:1;transform:translateZ(0)}to{opacity:0;transform:translate3d(var(--sheet-page-header-to-x, -24px),0,0)}}@media(prefers-reduced-motion:reduce){.sheet-page-header__title--active,.sheet-page-header__title--leaving{animation:none!important}}.sheet-page-stack{position:relative;width:100%;min-height:var(--sheet-page-stack-min-height, 0px);overflow:hidden;isolation:isolate;background:var(--sheet-page-stack-surface, var(--bg-primary))}.sheet-page-stack__page{position:relative;box-sizing:border-box;width:100%;min-height:var(--sheet-page-stack-min-height, 0px);min-width:0;background:var(--sheet-page-stack-surface, var(--bg-primary));backface-visibility:hidden;transform:translateZ(0);will-change:transform,opacity}.sheet-page-stack__page--active{z-index:2}.sheet-page-stack[data-direction=back] .sheet-page-stack__page--active{z-index:1}.sheet-page-stack[data-transitioning=true] .sheet-page-stack__page--active{animation:sheet-page-stack-enter .28s var(--motion-change-ease) both}.sheet-page-stack__page--leaving{position:absolute;inset:0;z-index:3;overflow:hidden;pointer-events:none;animation:sheet-page-stack-leave .28s var(--motion-change-ease) both}.sheet-page-stack[data-direction=back] .sheet-page-stack__page--leaving{z-index:3}.sheet-page-stack[data-direction=forward] .sheet-page-stack__page--active{--sheet-page-stack-from-x: 24px;--sheet-page-stack-from-opacity: 0}.sheet-page-stack[data-direction=forward] .sheet-page-stack__page--leaving{--sheet-page-stack-to-x: -24px;--sheet-page-stack-to-opacity: 0}.sheet-page-stack[data-direction=back] .sheet-page-stack__page--active{--sheet-page-stack-from-x: -24px;--sheet-page-stack-from-opacity: 0}.sheet-page-stack[data-direction=back] .sheet-page-stack__page--leaving{--sheet-page-stack-to-x: 24px;--sheet-page-stack-to-opacity: 0}@keyframes sheet-page-stack-enter{0%{opacity:var(--sheet-page-stack-from-opacity, 0);transform:translate3d(var(--sheet-page-stack-from-x, 24px),0,0)}to{opacity:1;transform:translateZ(0)}}@keyframes sheet-page-stack-leave{0%{opacity:1;transform:translateZ(0)}to{opacity:var(--sheet-page-stack-to-opacity, 0);transform:translate3d(var(--sheet-page-stack-to-x, -24px),0,0)}}@media(prefers-reduced-motion:reduce){.sheet-page-stack[data-transitioning=true] .sheet-page-stack__page--active,.sheet-page-stack__page--leaving{animation:none!important}.sheet-page-stack__page--leaving{display:none}}.sheet-page-footer-stack{position:relative;width:100%;min-height:var(--sheet-page-footer-stack-min-height, 0px);overflow:hidden;isolation:isolate;background:transparent}.sheet-page-footer-stack__page{position:relative;box-sizing:border-box;width:100%;min-height:var(--sheet-page-footer-stack-min-height, 0px);min-width:0;background:var(--sheet-page-stack-surface, var(--bg-primary));backface-visibility:hidden;transform:translateZ(0);will-change:transform,opacity}.sheet-page-footer-stack__page--active{z-index:2}.sheet-page-footer-stack[data-direction=back] .sheet-page-footer-stack__page--active{z-index:1}.sheet-page-footer-stack[data-transitioning=true] .sheet-page-footer-stack__page--active{animation:sheet-page-stack-enter .28s var(--motion-change-ease) both;pointer-events:none}.sheet-page-footer-stack[data-direction=forward][data-transitioning=true] .sheet-page-footer-stack__page--active{animation-delay:80ms;animation-duration:.2s}.sheet-page-footer-stack__page--leaving{position:absolute;inset:0;z-index:3;overflow:hidden;pointer-events:none;animation:sheet-page-stack-leave .28s var(--motion-change-ease) both}.sheet-page-footer-stack[data-direction=back] .sheet-page-footer-stack__page--leaving{z-index:3}.sheet-page-footer-stack[data-direction=forward] .sheet-page-footer-stack__page--active{--sheet-page-stack-from-x: 24px;--sheet-page-stack-from-opacity: 0}.sheet-page-footer-stack[data-direction=forward] .sheet-page-footer-stack__page--leaving{--sheet-page-stack-to-x: -24px;--sheet-page-stack-to-opacity: 0}.sheet-page-footer-stack[data-direction=back] .sheet-page-footer-stack__page--active{--sheet-page-stack-from-x: -24px;--sheet-page-stack-from-opacity: 0}.sheet-page-footer-stack[data-direction=back] .sheet-page-footer-stack__page--leaving{--sheet-page-stack-to-x: 24px;--sheet-page-stack-to-opacity: 0}@media(prefers-reduced-motion:reduce){.sheet-page-footer-stack[data-transitioning=true] .sheet-page-footer-stack__page--active,.sheet-page-footer-stack__page--leaving{animation:none!important}.sheet-page-footer-stack__page--leaving{display:none}}.sheet-page-header--auth{grid-template-columns:24px minmax(0,1fr) 24px;padding:14px 20px;font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:.22em}.sheet-page-header--auth .sheet-page-header__lead,.sheet-page-header--auth .sheet-page-header__trail{width:24px;height:24px}.sheet-page-header--auth .sheet-page-header__back,.sheet-page-header--auth .sheet-page-header__close{width:24px;height:24px;color:var(--ink-300)}.sheet-page-header--auth .sheet-page-header__back:hover,.sheet-page-header--auth .sheet-page-header__close:hover,.sheet-page-header--auth .sheet-page-header__title{color:var(--color-text-primary)}.app-bottom-sheet-hero{position:relative;isolation:isolate;min-height:180px;overflow:hidden;border-bottom:1px solid var(--surface-600);background:radial-gradient(circle at 24% 16%,color-mix(in oklch,var(--color-danger) 24%,transparent),transparent 34%),linear-gradient(180deg,var(--brass-950) 0%,var(--bg-primary) 100%);touch-action:none}.app-bottom-sheet-hero--text{min-height:90px}.app-bottom-sheet-hero[data-has-image=true]:before{position:absolute;inset:-18px;z-index:0;content:"";background-image:var(--app-bottom-sheet-hero-image);background-position:center;background-size:cover;filter:blur(14px) saturate(1.15);opacity:.72;transform:scale(1.1)}.app-bottom-sheet-hero:after{position:absolute;inset:0;z-index:0;content:"";background:linear-gradient(180deg,transparent 0%,rgb(16 20 26 / .2) 42%,var(--bg-primary) 100%),linear-gradient(90deg,rgb(11 14 19 / .72),transparent 56%)}.app-bottom-sheet-hero>*{position:relative;z-index:1}.app-bottom-sheet-hero__grip{position:absolute;top:8px;left:50%;width:44px;height:4px;border-radius:2px;background:color-mix(in oklch,var(--color-text-primary) 58%,transparent);margin:0;opacity:1;transform:translate(-50%)}.app-bottom-sheet-hero .app-bottom-sheet-close{position:absolute;top:10px;right:10px;width:30px;height:30px;border:1px solid var(--line-primary);border-radius:999px;background:color-mix(in oklch,var(--surface-100) 82%,transparent);color:var(--ink-300)}.app-bottom-sheet-hero__copy{position:absolute;right:20px;bottom:16px;left:20px;display:grid;gap:8px;align-items:end}.app-bottom-sheet-hero--with-thumbnail .app-bottom-sheet-hero__copy{grid-template-columns:56px minmax(0,1fr)}.app-bottom-sheet-hero__thumbnail{display:grid;width:56px;height:42px;place-items:center;overflow:hidden;border:1px solid var(--ink-700);border-radius:3px;background:var(--surface-100);color:var(--brass-500);font-family:var(--font-display);font-size:18px}.app-bottom-sheet-hero__thumbnail img{width:100%;height:100%;object-fit:cover}.app-bottom-sheet-hero__text{min-width:0}.app-bottom-sheet-hero__text h2{margin:0;color:var(--ink-50);font-family:var(--font-display);font-size:24px;font-weight:600;letter-spacing:0;line-height:1.12}.app-bottom-sheet-hero__text p{margin:6px 0 0;color:var(--ink-300);font-family:var(--font-label);font-size:9px;font-weight:400;letter-spacing:.18em;line-height:1.25;text-transform:uppercase}.app-shell[data-layout=wide] .app-sheet-overlay[data-overlay=dim]{background:color-mix(in oklch,var(--color-canvas) 72%,transparent)}.app-shell[data-layout=wide] .app-bottom-sheet{inset:50% auto auto 50%;width:min(640px,calc(100vw - 64px));max-height:min(84dvh,760px);margin:0;padding:var(--space-snug);border-radius:var(--radius-12);touch-action:auto;transform:translate3d(-50%,-50%,0);box-shadow:0 24px 72px color-mix(in oklch,var(--bg-deep) 76%,transparent),inset 0 1px 0 var(--color-highlight-soft)}.app-shell[data-layout=wide] .app-bottom-sheet[data-sheet-entering=true]{animation-name:app-bottom-sheet-enter-wide}.app-shell[data-layout=wide] .app-bottom-sheet[data-sheet-exiting=true]{animation-name:app-bottom-sheet-exit-wide}.app-shell[data-layout=wide] .app-bottom-sheet[data-sheet-dragging=true]{transform:translate3d(-50%,-50%,0)}.app-shell[data-layout=wide] .app-bottom-sheet[data-surface=primary]{width:min(680px,calc(100vw - 64px));max-height:min(86dvh,800px);padding:0;border:1px solid var(--line-primary);border-radius:10px;box-shadow:0 24px 72px color-mix(in oklch,var(--bg-deep) 78%,transparent),inset 0 1px 0 var(--color-highlight-soft)}.app-shell[data-layout=wide] .app-bottom-sheet--action-flow{width:min(760px,calc(100vw - var(--space-section) - var(--space-section)));max-height:min(86dvh,820px)}.app-shell[data-layout=wide] .app-bottom-sheet--action-flow .app-bottom-sheet-scroll{display:flex;min-height:0;flex-direction:column}.app-shell[data-layout=wide] .app-bottom-sheet--action-flow .app-route-progress-screen,.app-shell[data-layout=wide] .app-bottom-sheet--action-flow .app-combat-screen,.app-shell[data-layout=wide] .app-bottom-sheet--action-flow .app-encounter-reveal-flow,.app-shell[data-layout=wide] .app-bottom-sheet--action-flow .app-combat-intent-screen,.app-shell[data-layout=wide] .app-bottom-sheet--action-flow .app-encounter-result-flow{flex:0 1 auto;min-height:0}.app-shell[data-layout=wide] .app-bottom-sheet--action-flow .app-route-progress-flow,.app-shell[data-layout=wide] .app-bottom-sheet--action-flow .app-local-progress-flow,.app-shell[data-layout=wide] .app-bottom-sheet--action-flow .app-encounter-reveal-flow,.app-shell[data-layout=wide] .app-bottom-sheet--action-flow .app-encounter-result-flow{min-height:0}.app-shell[data-layout=wide] .app-bottom-sheet--action-flow:has(.app-combat-screen) .app-bottom-sheet-scroll{overflow:hidden}.app-shell[data-layout=wide] .app-bottom-sheet--action-flow .app-combat-screen{height:min(76dvh,720px)}.app-shell[data-layout=wide] .app-bottom-sheet--action-flow .app-combat-intent-view{min-height:min(72dvh,680px)}.app-shell[data-layout=wide] .app-bottom-sheet-scroll{touch-action:auto}.app-shell[data-layout=wide] .app-bottom-sheet-handle,.app-shell[data-layout=wide] .app-bottom-sheet-hero__grip,.app-shell[data-layout=wide] .app-bank-hero-grip,.app-shell[data-layout=wide] .app-corpse-loot-hero-grip{display:none}.app-shell[data-layout=wide] .app-bottom-sheet-header,.app-shell[data-layout=wide] .app-bottom-sheet-hero{touch-action:auto}.app-shell[data-layout=wide] .app-bottom-sheet-hero .app-bottom-sheet-close{top:var(--space-3)}@media(prefers-reduced-motion:reduce){.app-sheet-overlay,.app-bottom-sheet[data-sheet-entering=true],.app-bottom-sheet[data-sheet-exiting=true],.app-shell[data-layout=wide] .app-bottom-sheet[data-sheet-entering=true],.app-shell[data-layout=wide] .app-bottom-sheet[data-sheet-exiting=true]{animation:none}}@media(max-width:380px){.app-bottom-sheet[data-surface=primary] .app-bottom-sheet-header{padding-inline:16px}.app-bottom-sheet-hero__copy{right:16px;left:16px}}.app-inline-action{min-height:32px;padding:0 var(--space-snug);border:var(--border-thin) solid var(--surface-border-subtle);border-radius:var(--radius-pill);background:var(--surface-fill-slot);color:var(--color-text-primary);font-size:var(--app-type-compact-title);font-weight:600;transition:transform var(--motion-fast) var(--motion-press-ease),border-color var(--motion-fast) var(--motion-change-ease),background-color var(--motion-fast) var(--motion-change-ease),color var(--motion-fast) var(--motion-change-ease)}.app-inline-action:disabled{opacity:.45}.app-inline-action:hover:not(:disabled){border-color:var(--surface-border-accent)}.app-inline-action:active:not(:disabled){transform:scale(var(--motion-press-scale))}.app-mobile-bar-group span{color:var(--color-text-secondary);font-size:var(--app-type-helper);font-weight:500}.app-mobile-bar-group--hero{padding:var(--space-snug) var(--space-snug);border:var(--border-thin) solid var(--surface-border-subtle);border-radius:var(--radius-12);background:var(--surface-fill-muted)}.app-progress-track{height:8px;padding:1px;border:var(--border-thin) solid var(--surface-border-subtle);border-radius:var(--radius-pill);background:color-mix(in oklch,var(--color-bar-background) 88%,black);overflow:hidden}.app-progress-track>span{height:100%;width:100%;transform:scaleX(var(--app-progress-scale, 1));transform-origin:left center;border-radius:inherit}.app-progress-track[data-tone=travel]{background:color-mix(in oklch,var(--color-info) 12%,var(--color-bar-background))}.app-progress-track[data-tone=travel]>span{background:var(--color-info)}.app-progress-track[data-tone=friendly]>span{background:var(--color-success)}.app-progress-track[data-tone=enemy]>span{background:var(--color-danger-bright)}.app-npc-card,.app-skill-row,.app-action-card{display:flex;align-items:center;gap:var(--space-snug);width:100%;padding:var(--space-snug);border:var(--border-thin) solid var(--surface-border-subtle);border-radius:var(--radius-12);background:var(--surface-fill-muted);box-shadow:inset 0 1px 0 var(--color-highlight-faint);text-align:left}.app-action-card{flex-direction:column;align-items:stretch}.app-action-card strong,.app-npc-copy strong,.app-skill-copy strong{font-size:var(--app-type-compact-title);font-weight:600;color:var(--color-text-primary)}.app-action-card span,.app-npc-copy span,.app-skill-copy span{color:var(--color-text-muted);font-size:var(--app-type-helper)}.app-action-card:focus-visible,.app-npc-card:focus-visible,.app-skill-row:focus-visible{outline:var(--focus-ring);outline-offset:2px}.app-npc-icon{width:28px;height:28px;border:var(--border-thin) solid var(--surface-border-subtle);background:var(--surface-fill-slot);color:var(--color-text-primary);font-size:.8rem;font-weight:700}.app-npc-icon[data-kind=trainer]{border-color:var(--color-success);color:var(--color-success)}.app-feed-row{display:grid;grid-template-columns:34px minmax(0,1fr);gap:var(--space-small);color:var(--color-text-muted);font-size:var(--app-type-body);line-height:1.45}.app-feed-row[data-tone=player]{color:var(--color-text-primary)}.app-feed-row[data-tone=enemy]{color:var(--color-danger-bright)}.app-feed-row[data-tone=system]{color:var(--color-success)}.app-plan-cell .ds-metric-value{color:var(--color-text-primary);font-family:inherit;font-size:var(--app-type-helper);font-weight:700;letter-spacing:.12em;text-transform:uppercase}.app-plan-cell .ds-metric-description{font-size:var(--app-type-body);line-height:1.45}.app-callout-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-snug)}.app-callout-row span{min-width:0}.app-danger-button{border-color:color-mix(in oklch,var(--color-danger) 42%,var(--color-frame-border));background:linear-gradient(180deg,color-mix(in oklch,var(--color-danger) 14%,var(--color-surface-elevated)),color-mix(in oklch,var(--color-surface) 88%,black));color:var(--color-danger-bright)}.app-filter-row{flex-wrap:wrap;justify-content:flex-start}.app-filter-button{min-height:30px;padding:0 var(--space-snug);border:var(--border-thin) solid var(--surface-border-subtle);border-radius:var(--radius-pill);background:var(--surface-fill-slot);color:var(--color-text-secondary);font-size:var(--app-type-helper);font-weight:600;transition:transform var(--motion-fast) var(--motion-press-ease),border-color var(--motion-fast) var(--motion-change-ease),background-color var(--motion-fast) var(--motion-change-ease),color var(--motion-fast) var(--motion-change-ease)}.app-filter-button:active:not(:disabled){transform:scale(var(--motion-press-scale))}.app-filter-button[aria-pressed=true]{color:var(--color-text-primary);border-color:var(--surface-border-accent);background:var(--surface-fill-accent-soft)}.app-mobile-list{gap:6px}.app-skill-row,.app-npc-card{justify-content:space-between}.app-skill-icon,.app-profession-icon{width:37px;height:28px;border:var(--border-thin) solid var(--color-border-secondary);background:var(--color-surface-elevated);color:var(--color-success);font-size:.85rem;overflow:hidden;padding:3px}.app-item-sprite{width:100%;height:100%;aspect-ratio:75 / 54;object-fit:contain;pointer-events:none;display:block}.app-item-sprite-fallback{color:inherit;font-size:inherit;font-weight:inherit}.app-screen-cluster,.app-screen-rail{display:flex;flex-direction:column;gap:var(--space-snug)}.app-bottom-nav{position:fixed;left:50%;bottom:0;z-index:13;width:min(100%,var(--app-mobile-frame-width));min-height:calc(64px + env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;padding:0 12px;padding-bottom:env(safe-area-inset-bottom);border:0;border-top:1px solid var(--line-secondary);border-radius:0;background:var(--bg-tertiary);box-shadow:none;transform:translate(-50%);transition:opacity var(--motion-fast) var(--motion-change-ease),transform var(--motion-regular) var(--motion-change-ease);will-change:opacity,transform}.app-shell[data-nav-hidden=true]{--app-bottom-nav-clearance: env(safe-area-inset-bottom)}.app-shell[data-nav-hidden=true] .app-bottom-nav{opacity:0;pointer-events:none;transform:translate(-50%) translateY(calc(100% + env(safe-area-inset-bottom) + 12px))}.app-bottom-tab{min-width:0;min-height:50px;display:grid;place-items:center;padding:0;border:1px solid transparent;border-radius:2px;background:transparent;color:var(--icon-tertiary);font-family:var(--font-label);transition:color var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-press-ease)}.app-bottom-tab:hover{color:var(--icon-secondary)}.app-bottom-tab:active{transform:scale(var(--motion-press-scale))}.app-bottom-tab:focus-visible{outline:2px solid var(--brass-500);outline-offset:2px}.app-bottom-tab[aria-pressed=true]{color:var(--color-currency-gold)}.app-bottom-tab-icon{width:20px;height:20px;color:currentColor}.app-bottom-tab-icon-frame{position:relative;display:inline-grid;place-items:center}.app-bottom-tab-badge{position:absolute;top:-2px;right:-3px;width:8px;height:8px;border-radius:50%;background:var(--color-currency-gold);box-shadow:0 0 0 2px var(--bg-tertiary);pointer-events:none}.app-bottom-tab-glyph{display:inline-grid;place-items:center;width:20px;height:20px;color:currentColor;font-size:20px;font-weight:400;letter-spacing:0}@media(min-width:640px){.app-shell{width:var(--app-mobile-frame-width)}}@media(min-width:900px){body{min-height:100dvh;padding:var(--space-large);background:linear-gradient(180deg,color-mix(in oklch,var(--color-surface) 72%,var(--color-canvas)),var(--color-canvas))}body:has(.auth-scene){background:radial-gradient(ellipse 80% 70% at 50% 50%,color-mix(in srgb,var(--color-canvas) 28%,transparent) 0%,color-mix(in srgb,var(--color-canvas) 70%,transparent) 55%,var(--color-canvas) 100%),var(--asset-auth-splash-desktop, url(/auth/splash-hero-desktop.jpg)) center / cover no-repeat,var(--color-canvas)}#root{width:100%;min-height:calc(100dvh - 48px);display:grid;place-items:center}.app-shell{width:var(--app-mobile-frame-width);height:min(var(--app-mobile-frame-height),calc(100dvh - 48px));min-height:0;padding-bottom:0;border:var(--border-thin) solid var(--color-border-secondary);border-radius:var(--radius-12);overflow:hidden;background:var(--color-canvas);box-shadow:0 30px 80px #0102038c,0 0 0 10px color-mix(in oklch,var(--color-text-primary) 2%,transparent),inset 0 0 0 1px color-mix(in oklch,var(--color-text-primary) 3%,transparent)}.app-shell[data-layout=wide]{--app-bottom-nav-clearance: 0px;width:100vw;height:100dvh;border:0;border-radius:0;box-shadow:none}body:has(.app-shell[data-layout=wide]){padding:0;overflow:hidden}body:has(.app-shell[data-layout=wide]) #root{min-height:100dvh;place-items:stretch}.app-shell[data-layout=wide] .app-main{padding-bottom:0}.app-shell[data-layout=wide] .app-shell-header{min-height:64px;padding:calc(var(--space-3) + env(safe-area-inset-top)) var(--space-4) var(--space-3)}.app-shell[data-layout=wide] .app-shell-header-name{font-size:var(--type-title)}.app-shell[data-layout=wide] .app-shell-header-location{max-width:42%}.app-shell[data-layout=wide] .app-toast-stack{width:min(420px,calc(100% - var(--space-section)))}.app-shell[data-layout=wide] .app-toast-bar{top:calc(8px + env(safe-area-inset-top));width:min(340px,calc(100% - var(--space-section)));margin-inline:auto;border:1px solid var(--line-primary);border-radius:var(--radius-lg)}.app-bottom-nav{position:absolute;bottom:0}.app-mobile-comms{position:absolute}.app-mobile-comms-backdrop{background:#01020394}}@media(min-width:900px)and (max-width:1179px)and (max-height:800px){body{padding:var(--space-snug)}#root{min-height:calc(100dvh - 24px)}.app-shell{height:min(var(--app-mobile-frame-height),calc(100dvh - 24px))}.app-shell[data-layout=wide]{--app-wide-side-rail-width: 76px;--app-wide-drawer-width: 420px;width:100vw;height:100dvh}body:has(.app-shell[data-layout=wide]){padding:0}body:has(.app-shell[data-layout=wide]) #root{min-height:100dvh}.app-shell[data-layout=wide] .app-wide-side-tab{min-height:52px;font-size:var(--type-xxs)}.app-shell[data-layout=wide] .app-wide-player-frame{padding:var(--space-2) var(--space-3)}}.app-screen-meta-rail{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;padding:var(--space-snug) 0;border-top:var(--border-thin) solid var(--surface-divider);border-bottom:var(--border-thin) solid var(--surface-divider)}.app-screen-meta-rail-item{min-width:0;display:flex;flex-direction:column;gap:2px;padding:0 var(--space-snug);border-left:var(--border-thin) solid var(--surface-divider)}.app-screen-meta-rail-item:first-child{border-left:0;padding-left:2px}.app-screen-meta-rail-item:last-child{padding-right:2px}.app-screen-meta-rail-item dt{margin:0;color:var(--color-text-tertiary);font-size:var(--app-type-kicker);font-weight:700;letter-spacing:.18em;text-transform:uppercase}.app-screen-meta-rail-item dd{margin:0;color:var(--color-text-primary);font-size:var(--app-type-compact-title);font-weight:600;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-screen-meta-rail-item dd[data-tone=warn]{color:var(--color-warning-bright)}.app-screen-meta-rail-item dd[data-tone=ok]{color:var(--color-success-bright)}.app-screen-meta-rail-item dd[data-tone=accent]{color:var(--color-text-accent)}.app-toast-bar{--toast-icon-bg: var(--surface-150);--toast-icon-border: var(--line-primary);--toast-icon-color: var(--color-text-secondary);--toast-icon-glow: transparent;position:absolute;top:calc(54px + env(safe-area-inset-top));left:0;right:0;z-index:14;display:flex;align-items:center;gap:10px;box-sizing:border-box;height:44px;padding:8px;border:0;border-bottom:1px solid var(--line-primary);border-radius:0 0 var(--radius-lg) var(--radius-lg);background:var(--bg-secondary);color:var(--color-text-primary);pointer-events:auto;animation:app-toast-bar-in var(--motion-regular) var(--motion-enter-ease) both;contain:layout paint;will-change:transform,opacity}.app-toast-bar[data-state=exit]{animation:app-toast-bar-out var(--motion-fast) var(--motion-exit-ease) both}.app-toast-bar[data-tone=accent]{--toast-icon-bg: var(--brass-950);--toast-icon-border: var(--brass-700);--toast-icon-color: var(--brass-500);--toast-icon-glow: color-mix(in oklch, var(--brass-500) 28%, transparent)}.app-toast-bar[data-tone=success]{--toast-icon-bg: var(--sage-950);--toast-icon-border: var(--sage-700);--toast-icon-color: var(--sage-500);--toast-icon-glow: color-mix(in oklch, var(--sage-500) 28%, transparent)}.app-toast-bar[data-tone=warning]{--toast-icon-bg: var(--brass-950);--toast-icon-border: var(--brass-600);--toast-icon-color: var(--brass-400);--toast-icon-glow: color-mix(in oklch, var(--brass-400) 32%, transparent)}.app-toast-bar[data-tone=danger]{--toast-icon-bg: var(--ember-950);--toast-icon-border: var(--ember-700);--toast-icon-color: var(--ember-500);--toast-icon-glow: color-mix(in oklch, var(--ember-500) 38%, transparent)}.app-toast-bar[data-tone=info]{--toast-icon-bg: var(--frost-950);--toast-icon-border: var(--frost-700);--toast-icon-color: var(--frost-500);--toast-icon-glow: color-mix(in oklch, var(--frost-500) 28%, transparent)}.app-toast-bar[data-tone=neutral]{--toast-icon-bg: var(--bg-primary);--toast-icon-border: var(--line-secondary);--toast-icon-color: var(--color-text-accent);--toast-icon-glow: transparent}.app-toast-bar-icon{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--toast-icon-border);border-radius:2px;background:var(--toast-icon-bg);color:var(--toast-icon-color);transform-origin:center;animation:app-toast-icon-settle var(--motion-slow) var(--motion-enter-ease) 80ms both}.app-toast-bar-icon svg{width:14px;height:14px}.app-toast-bar[data-tone=danger] .app-toast-bar-icon{animation:app-toast-icon-settle var(--motion-slow) var(--motion-enter-ease) 80ms both,app-toast-icon-pulse 1.6s var(--motion-change-ease) .32s 1 both}.app-toast-bar-copy{flex:1 1 auto;min-width:0}.app-toast-bar-title{margin:0;font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:var(--tracking-wide);line-height:1.2;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-toast-bar-button{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:24px;height:24px;margin:0;padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-tertiary);cursor:pointer;transition:color var(--motion-fast) var(--motion-change-ease),background-color var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-press-ease)}.app-toast-bar-button:hover{color:var(--color-text-primary);background:var(--color-highlight-soft)}.app-toast-bar-button:active{transform:scale(var(--motion-press-scale))}.app-toast-bar-button:focus-visible{outline:var(--border-regular) solid var(--color-text-accent);outline-offset:1px}.app-toast-bar-button svg{width:13px;height:13px}@keyframes app-toast-icon-settle{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@keyframes app-toast-icon-pulse{0%{box-shadow:0 0 0 0 var(--toast-icon-glow)}60%{box-shadow:0 0 0 6px transparent}to{box-shadow:0 0 0 0 transparent}}.app-toast-stack{position:absolute;left:50%;top:calc(var(--space-medium) + env(safe-area-inset-top));z-index:20;transform:translate(-50%);width:min(calc(100% - var(--space-section)),calc(var(--app-mobile-frame-width) - var(--space-section)));display:flex;flex-direction:column;gap:var(--space-2);pointer-events:none}.app-toast{--toast-icon-bg: var(--surface-150);--toast-icon-border: var(--line-primary);--toast-icon-color: var(--color-text-secondary);--toast-icon-glow: transparent;position:relative;display:grid;grid-template-columns:28px minmax(0,1fr) 24px;align-items:center;gap:var(--space-2);padding:8px 10px 8px 8px;border:var(--border-thin) solid var(--line-primary);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--color-text-primary);pointer-events:auto;animation:app-toast-in var(--motion-regular) var(--motion-enter-ease) both;contain:layout paint;will-change:transform,opacity}.app-toast[data-state=exit]{animation:app-toast-out var(--motion-fast) var(--motion-exit-ease) both}.app-toast[data-tone=accent]{--toast-icon-bg: var(--brass-950);--toast-icon-border: var(--brass-700);--toast-icon-color: var(--brass-500);--toast-icon-glow: color-mix(in oklch, var(--brass-500) 28%, transparent)}.app-toast[data-tone=success]{--toast-icon-bg: var(--sage-950);--toast-icon-border: var(--sage-700);--toast-icon-color: var(--sage-500);--toast-icon-glow: color-mix(in oklch, var(--sage-500) 28%, transparent)}.app-toast[data-tone=warning]{--toast-icon-bg: var(--brass-950);--toast-icon-border: var(--brass-600);--toast-icon-color: var(--brass-400);--toast-icon-glow: color-mix(in oklch, var(--brass-400) 32%, transparent)}.app-toast[data-tone=danger]{--toast-icon-bg: var(--ember-950);--toast-icon-border: var(--ember-700);--toast-icon-color: var(--ember-500);--toast-icon-glow: color-mix(in oklch, var(--ember-500) 38%, transparent)}.app-toast[data-tone=info]{--toast-icon-bg: var(--frost-950);--toast-icon-border: var(--frost-700);--toast-icon-color: var(--frost-500);--toast-icon-glow: color-mix(in oklch, var(--frost-500) 28%, transparent)}.app-toast[data-tone=neutral]{--toast-icon-bg: var(--surface-150);--toast-icon-border: var(--line-primary);--toast-icon-color: var(--color-text-secondary);--toast-icon-glow: transparent}.app-toast-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:var(--border-thin) solid var(--toast-icon-border);border-radius:var(--radius-md);background:var(--toast-icon-bg);color:var(--toast-icon-color);transform-origin:center;animation:app-toast-icon-settle var(--motion-slow) var(--motion-enter-ease) 80ms both}.app-toast-icon svg{width:14px;height:14px}.app-toast[data-tone=danger] .app-toast-icon{animation:app-toast-icon-settle var(--motion-slow) var(--motion-enter-ease) 80ms both,app-toast-icon-pulse 1.6s var(--motion-change-ease) .32s 1 both}.app-toast-copy{display:flex;flex-direction:column;gap:1px;min-width:0}.app-toast-title{margin:0;font-family:var(--font-display);font-size:var(--type-md);font-weight:var(--weight-medium);letter-spacing:var(--tracking-wide);line-height:var(--leading-snug);color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-toast-meta{font-family:var(--font-mono);font-size:9px;font-weight:var(--weight-regular);letter-spacing:var(--tracking-wide);line-height:1.25;color:var(--color-text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-toast-dismiss{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;margin:0;padding:0;border:var(--border-thin) solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--color-text-tertiary);cursor:pointer;transition:color var(--motion-fast) var(--motion-change-ease),background-color var(--motion-fast) var(--motion-change-ease),border-color var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-press-ease)}.app-toast-dismiss:hover{color:var(--color-text-primary);background:var(--color-highlight-soft);border-color:var(--color-highlight-medium)}.app-toast-dismiss:active{transform:scale(var(--motion-press-scale))}.app-toast-dismiss svg{width:13px;height:13px}.app-toast-scrim{position:fixed;inset:0;z-index:19;background:var(--color-overlay);animation:app-toast-scrim-in var(--motion-regular) var(--motion-enter-ease) both;cursor:pointer;will-change:opacity}.app-toast-stack.is-expanded>.app-toast{pointer-events:auto;animation:app-toast-expand-in var(--motion-regular) var(--motion-enter-ease) both}.app-toast-stack.is-expanded>.app-toast:nth-child(2){animation-delay:30ms}.app-toast-stack.is-expanded>.app-toast:nth-child(3){animation-delay:60ms}.app-toast-stack.is-expanded>.app-toast:nth-child(4){animation-delay:90ms}.app-toast-stack.is-expanded>.app-toast:nth-child(5){animation-delay:.12s}.app-toast-stack.is-expanded>.app-toast:nth-child(6){animation-delay:.15s}.app-toast-foot{pointer-events:auto;display:flex;align-items:center;justify-content:space-between;padding:8px 4px 0;font-family:var(--font-mono);font-size:9px;letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--color-text-tertiary);animation:app-toast-expand-in var(--motion-regular) var(--motion-enter-ease) .18s both}.app-toast-foot-clear{margin:0;padding:4px 8px;border:0;background:transparent;color:var(--ember-500);font:inherit;text-transform:uppercase;cursor:pointer;transition:color var(--motion-fast) var(--motion-change-ease)}.app-toast-foot-clear:hover{color:var(--ember-400)}.app-toast-foot-clear:focus-visible{outline:2px solid var(--surface-border-accent);outline-offset:2px;border-radius:var(--radius-md)}@keyframes app-toast-bar-in{0%{opacity:0;transform:translateY(-12px);filter:blur(2px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes app-toast-bar-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}@keyframes app-toast-in{0%{opacity:0;transform:translateY(-10px) scale(.97);filter:blur(2px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@keyframes app-toast-out{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-8px) scale(.96)}}@keyframes app-toast-scrim-in{0%{opacity:0}to{opacity:1}}@keyframes app-toast-expand-in{0%{opacity:0;transform:translateY(-8px) scale(.97);filter:blur(2px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@media(prefers-reduced-motion:reduce){.app-toast-bar,.app-toast,.app-toast-scrim,.app-toast-stack.is-expanded>.app-toast,.app-toast-foot{animation-name:app-toast-fade-in;animation-duration:var(--motion-fast);animation-delay:0ms}.app-toast-bar[data-state=exit],.app-toast[data-state=exit]{animation-name:app-toast-fade-out}.app-toast-bar .app-toast-bar-icon,.app-toast-bar[data-tone=danger] .app-toast-bar-icon,.app-toast .app-toast-icon,.app-toast[data-tone=danger] .app-toast-icon{animation:none;opacity:1;transform:none;box-shadow:none}}@keyframes app-toast-fade-in{0%{opacity:0}to{opacity:1}}@keyframes app-toast-fade-out{0%{opacity:1}to{opacity:0}}.app-screen-meta-rail-item dd,.app-card-meta,.app-feed-time,.app-skill-copy strong,.app-travel-progress-labels strong,.app-travel-eta-card strong,.app-travel-status-card span,.app-scout-hero-card strong,.app-mobile-bar-group span,.app-topbar-pill span,.app-mini-chip,.app-explore-recent-count{font-variant-numeric:tabular-nums}.app-copy,.ds-section-heading-description,.app-explore-recent-empty,.app-inline-note span{max-width:65ch}.sheet-skeleton{position:fixed;inset:0;z-index:1100;display:flex;flex-direction:column;justify-content:flex-end;pointer-events:none}.sheet-skeleton__backdrop{position:absolute;inset:0;background:var(--color-overlay-soft);animation:ds-skeleton-breathe var(--motion-ambient) cubic-bezier(.45,0,.55,1) infinite alternate}.sheet-skeleton__sheet{position:relative;display:flex;flex-direction:column;gap:12px;width:100%;max-width:var(--app-mobile-frame-width, 440px);align-self:center;padding:12px 18px calc(22px + env(safe-area-inset-bottom,0px));border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl);border:var(--border-thin) solid var(--line-primary);border-bottom:0;background:var(--color-surface-elevated);box-shadow:var(--surface-shadow-panel)}.sheet-skeleton__handle{align-self:center;width:44px;height:4px;border-radius:var(--radius-pill);background:color-mix(in oklch,var(--ink-300) 30%,transparent)}.sheet-skeleton__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-small);padding-bottom:6px;border-bottom:var(--border-thin) solid var(--line-tertiary)}.sheet-skeleton__body{display:flex;flex-direction:column;gap:8px}.sheet-skeleton__row{display:flex;align-items:center;gap:10px;padding:10px 8px;border:var(--border-thin) solid var(--line-tertiary);border-radius:var(--radius-md);background:var(--bg-secondary)}.sheet-skeleton__row-copy{flex:1;display:flex;flex-direction:column;gap:6px;min-width:0}@media(prefers-reduced-motion:reduce){.sheet-skeleton__backdrop{animation:none;opacity:.5}}.app-shell[data-screen=explore],.app-explore-hero,.app-explore-situation,.app-explore-secondary-flow,.app-explore-ledger-flow,.app-explore-map-entry,.app-explore-service-band,.app-explore-local-map-panel,.app-explore-town-flow,.app-explore-town-panel,.app-explore-town-actions{--explore-panel-0: var(--surface-50);--explore-panel-1: var(--surface-150);--explore-panel-2: var(--bg-primary);--explore-panel-3: var(--bg-secondary);--explore-rule: var(--line-primary);--explore-rule-strong: var(--ink-700);--explore-brass: var(--color-currency-gold);--explore-ember: var(--color-danger-bright)}.app-explore-hero,.app-explore-situation{width:min(100%,440px);margin-inline:auto;border-color:var(--explore-rule-strong);border-radius:6px;background:linear-gradient(180deg,var(--explore-panel-2),var(--explore-panel-1));box-shadow:inset 0 1px #ffffff09,inset 0 -1px #0000008c}.app-explore-hero .ds-panel-body,.app-explore-situation .ds-panel-body{padding-block:var(--space-medium)}.app-route-button{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-tight);position:relative;padding-right:calc(var(--space-section) + var(--space-small));text-align:left}.app-route-button:not(:disabled):hover{border-color:var(--explore-brass, var(--color-text-accent));background:var(--explore-panel-3, var(--color-highlight-soft))}.app-route-button:after{content:"›";position:absolute;top:50%;right:var(--space-medium);transform:translateY(-50%);color:var(--explore-brass, var(--color-text-tertiary));font-size:var(--type-32);line-height:1;transition:color var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-press-ease)}.app-route-button:not(:disabled):hover:after{color:var(--explore-brass, var(--color-text-accent));transform:translate(3px,-50%)}.app-shell .ds-button.app-route-button{font-size:var(--app-type-emphasis);gap:var(--space-small)}.app-shell .ds-button.app-route-button svg{flex-shrink:0;color:var(--color-currency-gold)}.app-explore-hero .app-card-eyebrow-row+.app-section-title,.app-explore-hero .app-card-eyebrow-row+.app-section-title--hero,.app-explore-hero .app-card-eyebrow-row+.app-section-title--result{margin-top:-8px}.app-explore-hero .app-section-title+.app-copy,.app-explore-hero .app-section-title--hero+.app-copy{margin-top:-4px}.app-explore-hero .app-section-title--result+.app-chip-row{margin-top:var(--space-tight)}.app-explore-hero .app-copy+.app-subview-entry,.app-explore-hero .app-subview-entry+.app-chip-row,.app-explore-hero .app-subview-entry+.app-mobile-actions,.app-explore-hero .app-chip-row+.app-mobile-actions,.app-explore-hero .app-copy+.app-mobile-actions,.app-explore-hero .app-inline-note+.app-chip-row{margin-top:6px}.app-explore-secondary-flow{display:flex;flex-direction:column;gap:8px;width:min(100%,440px);margin-inline:auto;padding-bottom:calc(76px + env(safe-area-inset-bottom))}.app-explore-location-hero{display:flex;flex-direction:column;gap:8px;padding:0 0 var(--space-snug)}.app-explore-location-eyebrow{align-items:baseline}.app-explore-location-title{margin:0;color:color-mix(in oklch,var(--color-text-primary) 84%,var(--explore-brass));font-size:var(--type-3xl);line-height:1;text-wrap:balance}.app-explore-location-summary{margin:0;color:var(--color-text-secondary);max-width:60ch}.app-explore-location-lead{margin-top:2px}.app-explore-location-lead strong{color:color-mix(in oklch,var(--color-text-primary) 90%,var(--color-text-accent));font-size:var(--app-type-body);font-weight:600;line-height:1.3}.app-explore-location-chip-row{gap:6px;margin-top:0}.app-explore-location-chip{display:inline-flex;align-items:center;justify-content:center;line-height:1;border-color:var(--explore-rule);border-radius:4px;background:var(--explore-panel-0);color:var(--color-text-tertiary);font-size:var(--app-type-kicker);font-weight:800;letter-spacing:.12em;text-transform:uppercase}.app-explore-location-eyebrow .app-mini-chip{border-color:color-mix(in oklch,var(--color-text-accent) 28%,var(--color-frame-border));color:var(--color-text-primary)}.app-npc-quest-marker{color:var(--explore-brass);font-size:var(--type-24);font-weight:800;line-height:1;text-shadow:none}.app-npc-quest-marker[data-marker=ready-turn-in]{color:var(--explore-brass);text-shadow:none}.app-npc-quest-marker[data-marker=active]{color:var(--color-text-muted);font-size:var(--app-type-body);letter-spacing:0}.app-subview-entry{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-tight);padding:var(--space-snug) var(--space-medium);border:1px solid var(--explore-rule);border-radius:6px;background:var(--explore-panel-2);box-shadow:inset 0 1px #ffffff09;text-align:left;transition:border-color var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-change-ease),background-color var(--motion-fast) var(--motion-change-ease)}.app-subview-entry--map{border-color:color-mix(in oklch,var(--explore-brass) 38%,var(--explore-rule));background:linear-gradient(180deg,var(--explore-panel-3),var(--explore-panel-1))}.app-subview-entry strong{color:var(--color-text-primary);font-size:var(--app-type-emphasis);font-weight:600}.app-subview-entry>span:last-child{color:var(--color-text-muted);font-size:var(--app-type-body);line-height:1.5}.app-subview-entry:hover{border-color:var(--explore-rule-strong);transform:translateY(-1px)}.app-subview-entry:focus-visible{outline:var(--focus-ring);outline-offset:2px}.app-travel-cancel:focus-visible{outline:var(--focus-ring);outline-offset:2px}.app-explore-field-orders{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:var(--space-small)}.app-explore-field-order:first-child{grid-column:auto}.app-explore-field-order{min-width:0}.app-explore-field-order .ds-button{width:100%;min-height:46px;height:100%;flex-direction:column;gap:4px;padding:6px 3px;border-radius:4px;font-size:var(--app-type-helper);line-height:1.05;text-align:center;white-space:normal}.app-explore-field-orders>.ds-button{width:100%;height:100%;justify-content:center}.app-shell .ds-button.app-explore-primary-action,.app-shell .ds-button.app-explore-route-button,.app-shell .ds-button.app-explore-map-button,.app-shell .ds-button.app-explore-comms-button{width:100%;justify-content:center;gap:4px}.app-shell .ds-button.app-explore-primary-action svg,.app-shell .ds-button.app-explore-route-button svg,.app-shell .ds-button.app-explore-map-button svg,.app-shell .ds-button.app-explore-comms-button svg{flex-shrink:0}.app-shell .ds-button.app-explore-map-button{color:var(--color-text-secondary)}.app-shell .ds-button.app-explore-comms-button[data-emphasis=true]{border-color:color-mix(in oklch,var(--color-info-bright) 34%,var(--color-frame-border));color:var(--color-info-bright)}.app-explore-map-entry{position:relative;overflow:hidden;padding:0;border:1px solid var(--explore-rule);border-radius:6px;background:var(--explore-panel-1)}.app-explore-map-entry[data-open=true]{border-color:color-mix(in oklch,var(--explore-brass) 34%,var(--explore-rule-strong))}.app-explore-map-entry__body{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-snug);align-items:center;padding:var(--space-snug) var(--space-medium);border-top:1px solid var(--explore-rule-strong);border-bottom:1px solid var(--explore-rule)}.app-explore-map-entry-copy{display:flex;flex-direction:column;gap:3px;min-width:0}.app-explore-map-entry-eyebrow,.app-explore-map-entry-title,.app-explore-map-entry-copy .app-copy{margin:0}.app-explore-map-entry-eyebrow{grid-column:1 / -1}.app-explore-map-entry-title{color:color-mix(in oklch,var(--color-text-primary) 86%,var(--explore-brass));font-size:var(--app-type-compact-title);font-weight:700}.app-shell .ds-button.app-explore-map-entry-button{width:auto;min-height:38px;align-self:center;justify-content:center;gap:var(--space-small);white-space:nowrap;flex-wrap:nowrap}.app-shell .ds-button.app-explore-map-entry-button svg{flex-shrink:0}.app-explore-local-map-drawer{padding:2px var(--space-medium) var(--space-snug);border-top:1px solid var(--explore-rule);background:linear-gradient(180deg,var(--explore-panel-0),var(--explore-panel-1))}.app-explore-npc-list{display:flex;flex-direction:column}.app-explore-npc-list .app-npc-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:var(--space-snug);position:relative;padding:var(--space-snug) 0;border:0;border-top:1px solid var(--explore-rule);border-radius:0;background:transparent;box-shadow:none;transition:border-color var(--motion-fast) var(--motion-change-ease),background-color var(--motion-fast) var(--motion-change-ease)}.app-explore-situation-head+.app-explore-npc-list .app-npc-card:first-child,.app-explore-local-map-drawer .app-explore-npc-list .app-npc-card:first-child,.app-explore-situation-head+.app-explore-action-list .app-explore-action-card:first-child{border-top:0}.app-explore-npc-list .app-npc-card[data-marker=available]{background:color-mix(in oklch,var(--explore-brass) 7%,var(--explore-panel-1))}.app-explore-npc-list .app-npc-card[data-marker=ready-turn-in]{background:color-mix(in oklch,var(--explore-brass) 9%,var(--explore-panel-1))}.app-explore-npc-list .app-npc-card[data-marker=active]{background:color-mix(in oklch,var(--color-info) 6%,var(--explore-panel-1))}.app-explore-npc-summary{display:flex;align-items:center;gap:var(--space-snug);min-width:0}.app-explore-npc-list .app-npc-copy{min-width:0;flex:1}.app-explore-npc-list .app-npc-copy strong,.app-explore-npc-list .app-npc-copy span{display:block}.app-explore-npc-list .app-npc-role-line{color:var(--color-text-tertiary-strong)}.app-explore-npc-list .app-npc-quest-line{color:var(--color-text-muted);line-height:1.35}.app-explore-npc-list .app-npc-quest-line b{color:var(--color-text-secondary);font-weight:700}.app-explore-npc-list .app-npc-quest-line[data-marker=available] b,.app-explore-npc-list .app-npc-quest-line[data-marker=ready-turn-in] b{color:var(--color-currency-gold)}.app-explore-npc-list .app-npc-quest-line[data-marker=active] b{color:var(--color-info-bright)}.app-explore-npc-list .app-npc-icon{flex-shrink:0}.app-explore-npc-list .app-npc-icon[data-marker=available],.app-explore-npc-list .app-npc-icon[data-marker=ready-turn-in]{border-color:color-mix(in oklch,var(--color-currency-gold) 42%,var(--color-frame-border));border-radius:5px;background:var(--explore-panel-0)}.app-explore-npc-list .app-npc-icon[data-marker=active]{border-color:color-mix(in oklch,var(--color-info) 34%,var(--color-frame-border))}.app-explore-npc-action{justify-self:end;white-space:nowrap}.app-explore-npc-action[data-marker=available],.app-explore-npc-action[data-marker=ready-turn-in]{border-color:color-mix(in oklch,var(--color-currency-gold) 36%,var(--color-frame-border));color:color-mix(in oklch,var(--color-text-primary) 86%,var(--color-currency-gold));border-radius:5px;background:var(--explore-panel-0)}.app-explore-npc-action[data-marker=active]{border-color:color-mix(in oklch,var(--color-info) 28%,var(--color-frame-border));color:var(--color-info-bright)}.app-explore-situation-head{min-height:28px}.app-explore-action-list{display:flex;flex-direction:column;gap:0}.app-explore-action-card{position:relative;gap:var(--space-tight);padding:var(--space-snug) calc(var(--space-section) + var(--space-tight)) var(--space-snug) 0;border:0;border-top:1px solid var(--explore-rule);border-radius:0;background:transparent;box-shadow:none}.app-explore-action-card:after{content:"›";position:absolute;top:50%;right:var(--space-small);color:var(--color-text-tertiary);font-size:var(--type-24);line-height:1;transform:translateY(-50%);transition:color var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-change-ease)}.app-explore-action-card:hover:after,.app-explore-action-card:focus-visible:after{color:var(--color-text-accent);transform:translate(2px,-50%)}.app-explore-action-card[data-static=true]:after{content:none}.app-explore-action-card__label{color:var(--color-text-tertiary);font-size:var(--app-type-kicker);font-weight:800;letter-spacing:.12em;line-height:1;text-transform:uppercase}.app-explore-action-card[data-tone=route] .app-explore-action-card__label{color:var(--explore-brass)}.app-explore-action-card[data-risk=high] .app-explore-action-card__label{color:var(--explore-ember)}.app-explore-action-card[data-tone=quest] .app-explore-action-card__label{color:var(--color-info-bright)}.app-explore-action-card[data-tone=search] strong{color:color-mix(in oklch,var(--color-text-primary) 88%,var(--color-currency-gold))}.app-explore-recent{position:relative;overflow:hidden}.app-explore-recent:before{content:"";position:absolute;inset:0 0 auto;height:1px;background:color-mix(in oklch,var(--color-text-accent) 16%,transparent)}.app-explore-recent-list{gap:2px}.app-explore-recent-list .app-feed-row{align-items:start;padding-right:var(--space-tight);padding-left:0}.app-explore-recent-list .app-feed-time{padding-top:1px}.app-road-threat-card{gap:var(--space-tight);padding:var(--space-medium);border-color:color-mix(in oklch,var(--explore-ember) 34%,var(--explore-rule));border-radius:6px;background:color-mix(in oklch,var(--explore-ember) 7%,var(--explore-panel-1))}.app-road-threat-card strong{color:var(--color-text-primary);font-size:var(--app-type-emphasis);line-height:1.25}.app-road-threat-card span{color:var(--color-text-muted);font-size:var(--app-type-body);line-height:1.45}.app-screen[data-screen=explore]:has(.app-explore-ledger-flow),.app-screen[data-screen=explore]:has(.app-explore-town-flow),.app-screen[data-screen=explore]:has(.app-field-map-screen){flex:1;min-height:0;gap:0;padding:0}.app-shell[data-screen=explore]:has(.app-field-map-screen) .app-main{padding-bottom:var(--app-bottom-nav-clearance)}.app-shell[data-screen=explore]:has(.app-explore-ledger-flow) .app-main,.app-shell[data-screen=explore]:has(.app-explore-town-flow) .app-main{background:var(--explore-panel-2)}.app-explore-ledger-flow{display:flex;flex:1 1 auto;flex-direction:column;gap:0;min-height:100%;background:var(--explore-panel-2)}.app-explore-ledger-context-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 20px 16px;border-bottom:1px solid var(--explore-rule);background:var(--surface-150);color:var(--ink-400);font-family:var(--font-label);font-size:10px;font-weight:500;letter-spacing:0;line-height:1}.app-explore-ledger-context-row span{min-width:0}.app-explore-ledger-context-row span:last-child{flex:0 0 auto;color:var(--ink-300);text-align:right}.app-explore-screen-tab-panel{display:contents}.app-explore-screen-tab-bar{position:sticky;bottom:0;z-index:2;display:flex;gap:8px;margin-top:auto;padding:16px;border-top:1px solid var(--surface-600);background:var(--explore-panel-0)}.app-explore-screen-tab{display:inline-flex;flex:1 1 0;min-width:0;align-items:center;justify-content:center;gap:8px;height:44px;padding:12px 20px;border:1px solid var(--explore-rule);border-radius:2px;background:var(--explore-panel-2);color:var(--ink-400);font-family:var(--font-label);font-size:10px;font-weight:400;letter-spacing:.05em;line-height:1;text-transform:uppercase;cursor:pointer;transition:color var(--motion-fast) var(--motion-change-ease),border-color var(--motion-fast) var(--motion-change-ease),background var(--motion-fast) var(--motion-change-ease)}.app-explore-screen-tab:hover{color:var(--ink-50);border-color:var(--explore-rule-strong)}.app-explore-screen-tab[data-active=true]{color:var(--ink-50);border-color:var(--explore-rule-strong);background:var(--explore-panel-3)}.app-explore-screen-tab:focus-visible{outline:var(--focus-ring);outline-offset:-3px}.app-explore-screen-tab-check{flex-shrink:0;color:inherit}.app-explore-ledger-flow .app-explore-location-hero{position:relative;overflow:hidden;gap:14px;justify-content:flex-end;min-height:236px;padding:92px 24px 24px;border-bottom:1px solid var(--explore-rule);background:linear-gradient(180deg,var(--brass-950),var(--explore-panel-2))}.app-explore-ledger-flow .app-explore-location-hero[data-has-image=true]{background-color:var(--explore-panel-2);background-image:linear-gradient(180deg,#080a0e33,#080a0e94 46%,#080a0ef0),var(--explore-location-hero-image);background-position:center 42%;background-size:cover}.app-explore-ledger-flow .app-explore-location-hero[data-has-image=true]:after,.app-explore-town-hero:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(8,10,14,.7),transparent 48%,rgba(8,10,14,.42)),linear-gradient(180deg,transparent 68%,rgba(8,10,14,.68))}.app-explore-ledger-flow .app-explore-location-hero>*,.app-explore-town-hero>*{position:relative;z-index:1}.app-explore-location-pill-row{display:flex;flex-wrap:wrap;gap:8px}.app-explore-location-pill{display:inline-flex;align-items:center;min-height:20px;padding:4px 8px;border:1px solid var(--explore-rule-strong);border-radius:1px;background:var(--explore-panel-2);color:var(--ink-300);font-family:var(--font-label);font-size:9px;letter-spacing:.2em;line-height:1;text-transform:uppercase}.app-explore-location-pill[data-tone=danger]{border-color:var(--ember-700);background:var(--ember-900);color:var(--ember-500)}.app-explore-ledger-flow .app-explore-location-title{color:var(--ink-50);font-family:var(--font-display);font-size:26px;font-weight:600;line-height:1.1}.app-explore-location-kicker{margin:0;color:var(--ink-500);font-family:var(--font-body);font-size:11px;letter-spacing:.09em;line-height:1.2}.app-explore-ledger-flow .app-explore-location-summary{color:var(--ink-200);font-family:var(--font-quote);font-size:13px;font-style:italic;line-height:1.55}.app-explore-ledger-flow .app-explore-location-lead{display:none}.app-explore-ledger-flow .app-explore-map-entry{border:0;border-bottom:1px solid var(--explore-rule);border-radius:0;background:var(--explore-panel-3)}.app-explore-ledger-flow .app-explore-map-entry[data-open=true]{border-color:var(--explore-rule)}.app-explore-ledger-flow .app-explore-map-entry__body{width:100%;display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:16px 20px;border:0;background:var(--explore-panel-3);color:inherit;text-align:left}.app-explore-map-entry__body:hover{background:color-mix(in oklch,var(--explore-panel-3) 88%,var(--explore-brass))}.app-explore-map-entry__body:focus-visible{outline:var(--focus-ring);outline-offset:-3px}.app-explore-map-entry-head,.app-explore-map-entry-count{display:flex;align-items:center}.app-explore-map-entry-head{justify-content:space-between;gap:var(--space-small)}.app-explore-map-entry-count{gap:8px;color:var(--explore-brass);font-family:var(--font-label);font-size:9px;letter-spacing:.2em;line-height:1;text-transform:uppercase}.app-explore-map-entry-dot{width:4px;height:4px;border-radius:7px;background:var(--explore-brass)}.app-explore-map-entry-more{color:var(--ink-500);font-family:var(--font-label);font-size:9px;letter-spacing:.2em;line-height:1;text-transform:uppercase}.app-explore-ledger-flow .app-explore-map-entry-title{margin:0;color:var(--ink-50);font-family:var(--font-display);font-size:17px;font-weight:600;line-height:1.2;text-transform:uppercase}.app-explore-ledger-flow .app-explore-map-entry-copy{display:block;color:var(--ink-300);font-size:12px;line-height:1.35}.app-explore-ledger-flow .app-explore-local-map-drawer{padding:0 20px 12px;border-top:1px solid var(--explore-rule);background:var(--explore-panel-3)}.app-explore-local-map-panel{padding:16px 20px 17px;border-bottom:1px solid var(--explore-rule);background:var(--explore-panel-1)}.app-explore-town-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.app-explore-local-map-meta-row{display:flex;align-items:center;justify-content:space-between;gap:12px;font-family:var(--font-label);font-size:9px;font-weight:500;letter-spacing:.18em;line-height:1;text-transform:uppercase}.app-explore-local-map-meta-row span:first-child{color:var(--brass-600)}.app-explore-local-map-meta-row span:last-child{flex:0 0 auto;color:var(--ink-400);text-align:right}.app-explore-local-map-title{margin:10px 0 0;color:var(--ink-50);font-family:var(--font-display);font-size:16px;font-weight:600;line-height:1;text-transform:uppercase}.app-explore-local-map-copy{margin:7px 0 0;color:var(--ink-400);font-size:11px;line-height:1.35}.app-explore-local-map-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:11px}.app-explore-local-map-action{width:100%;min-width:0;min-height:48px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 9px 8px 10px;border:1px solid var(--explore-rule);border-radius:2px;background:var(--surface-100);color:inherit;text-align:left;box-shadow:none;cursor:pointer;transition:border-color var(--motion-fast) var(--motion-change-ease),background var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-change-ease)}.app-explore-local-map-action:disabled,.app-explore-local-map-action[aria-disabled=true]{opacity:.62}.app-explore-local-map-action:disabled:hover,.app-explore-local-map-action[aria-disabled=true]:hover{border-color:var(--explore-rule);background:var(--surface-100);transform:none}.app-explore-local-map-action:hover{border-color:color-mix(in oklch,var(--explore-brass) 44%,var(--explore-rule-strong));background:var(--surface-300);transform:translateY(-1px)}.app-explore-local-map-action:focus-visible{outline:var(--focus-ring);outline-offset:2px}.app-explore-local-map-action-copy{display:flex;min-width:0;flex-direction:column;gap:5px}.app-explore-local-map-action-copy strong{color:var(--ink-50);font-family:var(--font-body);font-size:11px;font-weight:700;line-height:1.1}.app-explore-local-map-action-copy span{color:var(--ink-500);font-family:var(--font-label);font-size:7px;letter-spacing:.16em;line-height:1;text-transform:uppercase}.app-explore-local-map-action[data-tone=utility] .app-explore-local-map-action-copy span{color:var(--sage-400)}.app-explore-local-map-action[data-tone=quest] .app-explore-local-map-action-copy span{color:var(--brass-600)}.app-explore-local-map-action-arrow,.app-explore-town-row-arrow{color:var(--ink-500);font-family:var(--font-body);font-size:18px;line-height:1}.app-explore-local-map-note{margin:12px 0 0;color:var(--ink-400);font-family:var(--font-quote);font-size:11px;font-style:italic;line-height:1.35}.app-explore-town-flow{display:flex;flex:1 1 auto;flex-direction:column;min-height:100%;background:var(--explore-panel-2)}.app-explore-town-context-row{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:53px;padding:14px 20px;border-bottom:1px solid var(--explore-rule);background:var(--surface-150);color:var(--ink-400);font-family:var(--font-label);font-size:10px;letter-spacing:0;line-height:1;text-transform:uppercase}.app-explore-town-context-row>span{color:var(--ink-300);text-align:right}.app-explore-town-back{display:inline-flex;align-items:center;gap:7px;min-height:28px;padding:0;border:0;background:transparent;color:var(--ink-300);font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer}.app-explore-town-back:hover{color:var(--explore-brass)}.app-explore-town-back:focus-visible{outline:var(--focus-ring);outline-offset:3px}.app-explore-town-hero{position:relative;overflow:hidden;display:flex;height:217px;min-height:217px;flex-direction:column;justify-content:flex-end;gap:9px;padding:64px 20px 16px;border-bottom:1px solid var(--explore-rule);background-color:var(--explore-panel-2);background-image:linear-gradient(180deg,#080a0e33,#080a0e8f 48%,#080a0ef0),var(--explore-town-hero-image, linear-gradient(180deg, var(--brass-950), var(--bg-primary)));background-position:center 45%;background-size:cover}.app-explore-town-title{margin:0;color:var(--ink-50);font-family:var(--font-display);font-size:24px;font-weight:600;line-height:1.1}.app-explore-town-hero .app-explore-location-kicker{color:var(--ink-300);font-size:11px;letter-spacing:.09em}.app-explore-town-hero .app-explore-location-summary{color:var(--ink-100);font-family:var(--font-quote);font-size:12px;font-style:italic;line-height:1.45}.app-explore-town-panel{padding:20px;border-bottom:1px solid var(--explore-rule);background:var(--explore-panel-2)}.app-explore-town-panel-head{align-items:center;color:var(--ink-400);font-family:var(--font-label);font-size:9px;letter-spacing:.2em;line-height:1;text-transform:uppercase;padding:8px 0}.app-explore-town-panel-head span:last-child{flex:0 0 auto;color:var(--ink-300);text-align:right}.app-explore-town-panel--npcs{background:var(--explore-panel-3)}.app-explore-town-panel--npcs .app-explore-town-panel-head span:last-child{color:var(--explore-brass)}.app-explore-town-list,.app-explore-town-player-list{display:flex;flex-direction:column;gap:0;margin-top:0}.app-explore-town-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;width:100%;min-height:50px;padding:12px 0;border:0;border-top:1px solid var(--explore-rule);border-radius:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.app-explore-town-row:hover{background:color-mix(in oklch,var(--explore-panel-3) 86%,var(--explore-brass))}.app-explore-town-row:focus-visible{outline:var(--focus-ring);outline-offset:2px}.app-explore-town-row-copy,.app-explore-town-player-copy{display:flex;min-width:0;flex-direction:column;gap:5px}.app-explore-town-row-copy strong,.app-explore-town-player-copy strong{overflow:hidden;color:var(--ink-50);font-size:11px;font-weight:700;line-height:1.18;text-overflow:ellipsis;white-space:nowrap}.app-explore-town-row-copy span,.app-explore-town-player-copy span{overflow:hidden;color:var(--ink-300);font-size:9px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.app-explore-town-row-chip{display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:20px;padding:5px 7px;border:1px solid var(--explore-rule-strong);border-radius:1px;background:var(--bg-primary);color:var(--ink-200);font-family:var(--font-label);font-size:7px;letter-spacing:.14em;line-height:1;text-transform:uppercase}.app-explore-town-row[data-chip=quest] .app-explore-town-row-chip{border-color:var(--brass-700);background:var(--brass-950);color:var(--explore-brass)}.app-explore-town-panel--players{flex:1 1 auto;background:var(--explore-panel-1)}.app-explore-town-player-row{display:grid;grid-template-columns:7px minmax(0,1fr);align-items:center;gap:11px;min-height:43px;padding:12px 0;border-top:1px solid var(--explore-rule)}.app-explore-town-player-dot{width:7px;height:7px;border-radius:50%;background:var(--sage-400)}.app-explore-town-player-row:nth-child(2) .app-explore-town-player-dot{background:var(--explore-brass)}.app-explore-town-player-row:nth-child(3) .app-explore-town-player-dot{background:var(--ink-500)}.app-explore-town-actions{padding:16px 20px 20px;border-bottom:1px solid var(--explore-rule);background:var(--surface-100)}.app-explore-town-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:13px}.app-shell .ds-button.app-explore-town-action-button{width:100%;min-height:42px;justify-content:center;gap:8px;border-color:var(--explore-rule);border-radius:2px;background:var(--explore-panel-2);color:var(--ink-100);font-size:12px;font-weight:600;letter-spacing:0;text-transform:none;box-shadow:none}.app-shell .ds-button.app-explore-town-action-button:hover{border-color:color-mix(in oklch,var(--explore-brass) 38%,var(--explore-rule-strong))}.app-explore-service-band{display:flex;flex-wrap:wrap;gap:8px;padding:14px 20px;border-bottom:1px solid var(--explore-rule);background:var(--explore-panel-1)}.app-explore-service-pill{display:inline-flex;align-items:center;gap:6px;min-height:25px;padding:6px 10px;border:1px solid var(--explore-rule);border-radius:1px;background:var(--surface-500);color:var(--ink-100);font-size:11px;line-height:1}.app-explore-service-pill svg{flex:0 0 auto;color:var(--ink-300)}.app-explore-ledger-flow .app-explore-recent{flex:1 1 auto;gap:10px;margin:0;padding:16px 20px;background:var(--explore-panel-2)}.app-explore-ledger-flow .app-explore-recent:before{content:none}.app-explore-ledger-flow .app-explore-recent-head{min-height:auto;padding:0;border:0}.app-explore-ledger-flow .app-explore-recent-count{display:none}.app-explore-ledger-flow .app-explore-recent-list{gap:0}.app-explore-ledger-flow .app-explore-recent-list .app-feed-row{display:flex;align-items:center;gap:10px;padding:6px 0;border:0;color:var(--ink-200);font-size:12px;line-height:1.35}.app-explore-ledger-flow .app-explore-recent-list .app-feed-row:before{content:none}.app-explore-ledger-flow .app-explore-recent-list .app-feed-row>span:last-child{display:flex;align-items:center;gap:10px;min-width:0}.app-explore-ledger-flow .app-explore-recent-list .app-feed-row>span:last-child:before{content:"";width:4px;height:4px;flex:0 0 auto;border-radius:2px;background:var(--explore-rule-strong)}.app-explore-ledger-flow .app-feed-time{flex:0 0 auto;padding:0;color:var(--ink-500);font-family:var(--font-label);font-size:11px;line-height:1}.app-explore-ledger-flow .app-explore-recent-empty{padding:0;color:var(--ink-200);font-size:12px}.app-explore-ledger-flow .app-explore-field-orders{width:100%;box-sizing:border-box;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:16px;border-top:1px solid var(--explore-rule);border-bottom:1px solid var(--surface-100);background:var(--surface-100);box-shadow:inset 0 1px #ffffff09}.app-explore-ledger-flow .app-explore-field-order .ds-button{min-height:38px;flex-direction:row;gap:8px;padding:10px 12px;border-radius:1px;font-size:11px;font-weight:400;letter-spacing:1px;line-height:1;text-transform:none;box-shadow:none}.app-explore-ledger-flow .app-explore-field-order:nth-child(-n+2) .ds-button{min-height:43px;padding:12px;font-size:12px;font-weight:600}.app-explore-ledger-flow .app-explore-field-order:nth-child(1) .ds-button{border-color:var(--explore-brass);background:var(--explore-brass);color:var(--brass-950)}.app-explore-ledger-flow .app-explore-field-order:nth-child(2) .ds-button{border-color:var(--explore-rule-strong);background:var(--surface-600);color:var(--ink-100)}.app-explore-ledger-flow .app-explore-field-order:nth-child(n+3) .ds-button{border-color:var(--explore-rule);background:var(--explore-panel-2);color:var(--ink-300)}.app-explore-route-arrow-icon{transform:rotate(180deg)}@media(prefers-reduced-motion:reduce){.app-subview-entry,.app-route-button:after,.app-explore-action-card:after{transition:none}}@media(max-width:420px){.app-explore-map-entry__body{grid-template-columns:1fr}.app-shell .ds-button.app-explore-map-entry-button{width:100%}}@media(max-width:379px){.app-explore-npc-list .app-npc-card{grid-template-columns:minmax(0,1fr);row-gap:var(--space-tight)}.app-explore-npc-action{justify-self:start;margin-left:calc(28px + var(--space-snug))}}.app-explore-situation .app-npc-card,.app-explore-situation .app-action-card{border:0;border-radius:0;background:transparent;box-shadow:none;padding:var(--space-snug) 0}.app-explore-situation .app-npc-card+.app-npc-card,.app-explore-situation .app-action-card+.app-action-card,.app-explore-situation .app-action-card+.app-npc-card,.app-explore-situation .app-npc-card+.app-action-card{border-top:var(--border-thin) solid var(--surface-divider)}.app-explore-situation .ds-panel-body.app-mobile-stack{gap:0}.app-explore-situation .app-card-eyebrow-row{margin-bottom:6px}.app-explore-situation .app-action-card{gap:var(--space-tight)}.app-explore-recent{display:flex;flex-direction:column;gap:var(--space-snug);padding:var(--space-tight) var(--space-medium) 0;margin-top:-2px}.app-explore-recent-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-small);padding-bottom:var(--space-small);border-bottom:var(--border-thin) solid var(--surface-divider)}.app-explore-recent-count{color:var(--color-text-tertiary);font-size:var(--app-type-kicker);font-weight:700;letter-spacing:.18em}.app-explore-recent-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.app-explore-recent-list .app-feed-row{padding:var(--space-small) 0;border-bottom:var(--border-thin) solid var(--surface-divider)}.app-explore-recent-list .app-feed-row:last-child{border-bottom:0}.app-explore-recent-empty{margin:0;padding:6px 0 4px;color:var(--color-text-tertiary);font-size:var(--app-type-helper);line-height:1.5}.app-explore-hostile-panel[data-tone=hostile]{border-color:var(--ember-600, var(--color-danger-bright));background:linear-gradient(180deg,rgba(120,30,30,.18),var(--explore-panel-1))}.app-explore-hostile-kicker{color:var(--color-danger-bright, var(--ember-500));letter-spacing:var(--tracking-wide)}.app-explore-hostile-card[data-tone=hostile]{border-color:var(--ember-600, var(--color-danger-bright))}.app-explore-hostile-card[data-tone=hostile] .app-npc-icon{background:var(--ember-700);color:var(--ink-50);border-color:var(--ember-500)}.app-explore-hostile-card[data-tone=hostile] .app-npc-quest-line[data-tone=hostile] b{color:var(--color-danger-bright, var(--ember-500))}.app-explore-hostile-card[data-tone=defeated]{opacity:.7;border-color:var(--line-primary)}.app-explore-hostile-card[data-tone=defeated] .app-npc-icon{background:var(--surface-150);color:var(--ink-400);filter:grayscale(.6)}.app-explore-hostile-card[data-tone=defeated] .app-npc-quest-line[data-tone=defeated] b{color:var(--ink-400)}.app-inline-action[data-tone=hostile]{background:var(--ember-700);border-color:var(--ember-500);color:var(--ink-50)}.app-inline-action[data-tone=hostile]:hover:not(:disabled){background:var(--ember-600);border-color:var(--ember-500)}.app-bottom-sheet.app-hostile-confirm{background:linear-gradient(180deg,rgba(80,20,20,.4),transparent 38%),var(--bg-primary);border-color:var(--ember-600, var(--color-danger-bright))}.app-hostile-confirm__body-pad{display:flex;flex-direction:column;gap:var(--space-small);padding:var(--space-medium)}.app-hostile-confirm__title{margin:0;font-family:var(--font-display);font-size:var(--type-lg);line-height:1.2;color:var(--ink-50)}.app-hostile-confirm__body{margin:0;font-size:var(--type-sm);line-height:1.5;color:var(--ink-200)}.app-hostile-confirm__actions{display:flex;gap:var(--space-tight);padding:var(--space-medium);border-top:1px solid var(--line-secondary)}.app-hostile-confirm__action{flex:1;padding-block:var(--space-small);padding-inline:var(--space-medium);border-radius:4px;border:1px solid var(--line-primary);background:var(--surface-150);color:var(--ink-100);font-family:var(--font-display);font-size:var(--type-sm);letter-spacing:var(--tracking-wide);text-transform:uppercase;cursor:pointer}.app-hostile-confirm__action:hover{background:var(--surface-200)}.app-hostile-confirm__action--engage{background:var(--ember-700);border-color:var(--ember-500);color:var(--ink-50)}.app-hostile-confirm__action--engage:hover{background:var(--ember-600);border-color:var(--ember-500)}.app-resource-meter{position:relative;display:block;width:100%;min-width:0;height:var(--app-resource-meter-height, 6px);overflow:hidden;border-radius:var(--app-resource-meter-radius, 1px);background:var(--app-resource-meter-track, var(--surface-100));box-shadow:inset 0 0 0 1px var(--app-resource-meter-border, var(--surface-600))}.app-resource-meter__fill{position:absolute;inset:0 auto 0 0;width:100%;max-width:100%;transform:scaleX(var(--app-resource-meter-scale, 0));transform-origin:left center;background:var(--app-resource-meter-fill, var(--resource-hp));transition:transform var(--motion-regular) var(--motion-change-ease)}.app-resource-meter[data-kind=enemy-health]{--app-resource-meter-fill: var(--ember-600)}.app-resource-meter[data-kind=friendly-health]{--app-resource-meter-fill: var(--sage-500)}.app-resource-meter[data-kind=health]{--app-resource-meter-fill: var(--resource-hp)}.app-resource-meter[data-kind=mana],.app-resource-meter[data-kind=resource]{--app-resource-meter-fill: var(--resource-mana)}.app-resource-meter[data-kind=rage]{--app-resource-meter-fill: var(--resource-rage)}.app-resource-meter[data-kind=energy]{--app-resource-meter-fill: var(--resource-energy)}.app-resource-meter[data-kind=xp]{--app-resource-meter-fill: var(--resource-xp)}.app-resource-meter{--meter-tone-color: var(--app-resource-meter-fill, var(--resource-hp))}.app-resource-meter[data-regen=true]{animation:app-resource-meter-regen-pulse 1.8s cubic-bezier(.4,0,.6,1) infinite}.app-resource-meter__sheen{position:absolute;inset:0;pointer-events:none;background:linear-gradient(100deg,transparent 30%,color-mix(in oklch,var(--meter-tone-color) 55%,transparent) 50%,transparent 70%);background-size:200% 100%;background-position:100% 0;mix-blend-mode:screen;opacity:.7;animation:app-resource-meter-sheen 1.8s cubic-bezier(.4,0,.6,1) infinite}.app-resource-meter.is-burst{animation:app-resource-meter-burst .7s cubic-bezier(.16,1,.3,1)}.app-resource-meter[data-regen=true].is-burst{animation:app-resource-meter-regen-pulse 1.8s cubic-bezier(.4,0,.6,1) infinite,app-resource-meter-burst .7s cubic-bezier(.16,1,.3,1)}@keyframes app-resource-meter-regen-pulse{0%,to{box-shadow:0 0 4px color-mix(in oklch,var(--meter-tone-color) 35%,transparent),inset 0 0 0 1px color-mix(in oklch,var(--meter-tone-color) 25%,transparent)}50%{box-shadow:0 0 12px 1px color-mix(in oklch,var(--meter-tone-color) 70%,transparent),inset 0 0 0 1px color-mix(in oklch,var(--meter-tone-color) 55%,transparent)}}@keyframes app-resource-meter-sheen{0%{background-position:200% 0}to{background-position:-100% 0}}@keyframes app-resource-meter-burst{0%{filter:drop-shadow(0 0 0 transparent)}20%{filter:drop-shadow(0 0 12px color-mix(in oklch,var(--meter-tone-color) 85%,transparent))}to{filter:drop-shadow(0 0 0 transparent)}}@media(prefers-reduced-motion:reduce){.app-resource-meter[data-regen=true],.app-resource-meter[data-regen=true].is-burst,.app-resource-meter.is-burst{animation:none;box-shadow:0 0 4px color-mix(in oklch,var(--meter-tone-color) 50%,transparent)}.app-resource-meter__sheen{animation:none;opacity:0}}.app-combat-intent-screen{flex:1 1 auto;display:flex;min-height:0}.app-shell[data-screen=explore]:has(.app-combat-intent-screen) .app-screen{flex:1 1 auto;min-height:0;gap:0;padding:0;animation:none}.app-shell[data-screen=explore]:has(.app-combat-intent-screen) .app-main{padding-bottom:var(--app-bottom-nav-clearance)}.app-combat-intent-screen .app-combat-intent-view{flex:1 1 auto;width:100%;margin:0;border:0;border-radius:0;box-shadow:none}.app-combat-intent-view{--combat-intent-action-bar: var(--bg-primary);--combat-intent-brass: var(--brass-500);--combat-intent-brass-panel: var(--brass-950);--combat-intent-brass-rule: var(--brass-700);--combat-intent-canvas: var(--bg-primary);--combat-intent-ember: var(--ember-500);--combat-intent-ember-panel: var(--ember-700);--combat-intent-ember-rule: var(--ember-700);--combat-intent-green: var(--sage-500);--combat-intent-green-panel: var(--sage-950);--combat-intent-green-rule: var(--sage-700);--combat-intent-muted: var(--ink-500);--combat-intent-panel: var(--surface-400);--combat-intent-resource: var(--frost-500);--combat-intent-rule: var(--line-primary);--combat-intent-soft-rule: var(--surface-600);--combat-intent-track: var(--surface-600);--combat-intent-text: var(--ink-50);--combat-intent-text-muted: var(--ink-300);--combat-intent-text-soft: var(--ink-200);width:100%;min-height:100%;margin:0;display:flex;flex-direction:column;overflow:hidden;border:0;border-radius:0;background:var(--combat-intent-canvas);color:var(--combat-intent-text);box-shadow:none}.app-combat-intent-view *,.app-combat-intent-view *:before,.app-combat-intent-view *:after{min-width:0;box-sizing:border-box}.app-combat-intent-hud{position:relative;display:grid;grid-template-columns:minmax(118px,.82fr) minmax(0,1.18fr);align-items:center;min-height:74px;gap:12px;padding:12px 16px 8px;border-bottom:1px solid var(--combat-intent-rule);background:var(--combat-intent-canvas)}.app-combat-intent-hud:after{width:min(300px,calc(100% - 32px));height:1px;position:absolute;bottom:-1px;left:16px;content:"";background:var(--combat-intent-brass-rule)}.app-combat-intent-hud__identity{display:flex;flex-direction:column;gap:3px;text-transform:uppercase}.app-combat-intent-hud__identity strong{color:var(--combat-intent-text);font-family:Cinzel,serif;font-size:13px;font-weight:600;letter-spacing:1.5px;line-height:1}.app-combat-intent-hud__identity span,.app-combat-intent-context-row,.app-combat-intent-tab,.app-combat-intent-detail__identity span,.app-combat-intent-status,.app-combat-intent-deltas h3,.app-combat-intent-delta-row,.app-combat-intent-bottom-nav__item strong{font-family:JetBrains Mono,monospace}.app-combat-intent-hud__identity span{color:var(--combat-intent-muted);font-size:9px;letter-spacing:1.5px}.app-combat-intent-hud__meters{width:min(190px,100%);display:flex;flex-direction:column;gap:6px;justify-self:end}.app-combat-intent-resource{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px}.app-combat-intent-resource__value{color:var(--combat-intent-muted);font-family:JetBrains Mono,monospace;font-size:9px;letter-spacing:1.5px;line-height:1;text-transform:uppercase;white-space:nowrap}.app-combat-intent-resource__label{width:1px;height:1px;position:absolute;overflow:hidden;clip-path:inset(50%)}.app-combat-intent-resource__value{color:var(--combat-intent-text-muted);letter-spacing:0;text-align:right}.app-combat-intent-resource__track{height:6px;overflow:hidden;border-radius:1px;background:var(--combat-intent-track)}.app-combat-intent-resource__track span{width:calc(var(--app-combat-intent-resource-ratio, 0) * 100%);height:100%;display:block;background:var(--combat-intent-resource)}.app-combat-intent-resource[data-tone=health] .app-combat-intent-resource__track span{background:var(--combat-intent-green)}.app-combat-intent-context-row{display:none;justify-content:space-between;gap:8px;padding:16px 20px;border-bottom:1px solid var(--combat-intent-soft-rule);background:var(--combat-intent-panel);color:var(--combat-intent-muted);font-size:10px;letter-spacing:2px;line-height:1;text-transform:uppercase}.app-combat-intent-context-row span:first-child{color:var(--combat-intent-brass)}.app-combat-intent-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;background:var(--combat-intent-canvas)}.app-combat-intent-intro{display:flex;flex-direction:column;gap:6px;padding:16px 16px 12px;background:var(--combat-intent-canvas)}.app-combat-intent-intro h2,.app-combat-intent-detail h3,.app-combat-intent-empty h3{margin:0;font-family:Cinzel,serif;font-weight:600;text-transform:none}.app-combat-intent-intro h2{color:var(--combat-intent-text);font-size:18px;line-height:1.15}.app-combat-intent-intro p,.app-combat-intent-detail p,.app-combat-intent-empty p{margin:0;color:var(--combat-intent-text-muted);font-family:Lora,serif;font-size:12px;font-style:italic;line-height:1.5}.app-combat-intent-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;padding:8px 16px 16px;border-bottom:1px solid var(--combat-intent-rule);background:var(--combat-intent-canvas)}.app-combat-intent-tab{min-height:36px;display:grid;place-items:center;border:1px solid var(--combat-intent-rule);border-radius:0;background:var(--bg-eyebrow);color:var(--combat-intent-text-muted);cursor:pointer;font-size:10px;font-weight:600;letter-spacing:.15em;line-height:1;text-transform:uppercase;transition:background-color var(--motion-fast) var(--motion-change-ease),border-color var(--motion-fast) var(--motion-change-ease),color var(--motion-fast) var(--motion-change-ease)}.app-combat-intent-tab+.app-combat-intent-tab{margin-left:-1px}.app-combat-intent-tab:hover:not(:disabled),.app-combat-intent-tab:focus-visible{border-color:color-mix(in oklch,var(--combat-intent-brass) 48%,var(--combat-intent-rule));color:var(--combat-intent-text)}.app-combat-intent-tab:focus-visible{position:relative;z-index:1;outline:var(--focus-ring, 2px solid var(--combat-intent-brass));outline-offset:2px}.app-combat-intent-tab[aria-pressed=true]{position:relative;z-index:1;border-color:var(--combat-intent-brass-rule);background:var(--combat-intent-brass-panel);color:var(--combat-intent-brass)}.app-combat-intent-tab:disabled{cursor:not-allowed;opacity:.5}.app-combat-intent-detail{display:flex;flex-direction:column;gap:10px;padding:20px 20px 8px;background:var(--combat-intent-panel)}.app-combat-intent-detail__head{display:flex;align-items:center;justify-content:space-between;gap:8px}.app-combat-intent-detail__identity{display:flex;align-items:center;gap:10px}.app-combat-intent-detail__icon{width:36px;height:36px;display:grid;flex:0 0 auto;place-items:center;border:1px solid color-mix(in oklch,var(--combat-intent-brass) 48%,var(--combat-intent-rule));border-radius:2px;background:var(--combat-intent-brass-panel);color:var(--combat-intent-brass)}.app-combat-intent-detail h3{color:var(--combat-intent-text);font-size:18px;line-height:1.05}.app-combat-intent-detail__identity span:not(.app-combat-intent-detail__icon){display:block;margin-top:4px;color:var(--text-quiet);font-size:9px;letter-spacing:.18em;line-height:1;text-transform:uppercase}.app-combat-intent-status{min-height:24px;display:inline-flex;flex:0 0 auto;align-items:center;gap:6px;padding:5px 8px;border:1px solid var(--combat-intent-rule);border-radius:2px;background:var(--combat-intent-panel);color:var(--combat-intent-text-muted);font-size:9px;letter-spacing:.14em;line-height:1;text-transform:uppercase}.app-combat-intent-status[data-tone=safe]{border-color:var(--combat-intent-green-rule);background:var(--combat-intent-green-panel);color:var(--combat-intent-green)}.app-combat-intent-status[data-tone=warning]{border-color:var(--combat-intent-brass-rule);background:var(--combat-intent-brass-panel);color:var(--combat-intent-brass)}.app-combat-intent-status[data-tone=danger]{border-color:var(--combat-intent-ember-rule);background:var(--combat-intent-ember-panel);color:var(--combat-intent-ember)}.app-combat-intent-status[data-tone=accent]{border-color:var(--combat-intent-brass-rule);background:var(--combat-intent-brass-panel);color:var(--combat-intent-brass)}.app-combat-intent-detail p{color:var(--combat-intent-text-soft);font-size:13px;line-height:1.55}.app-combat-intent-deltas{display:flex;flex-direction:column;gap:6px;padding:12px 20px 20px;border-bottom:1px solid var(--combat-intent-rule);background:var(--combat-intent-panel)}.app-combat-intent-deltas h3{width:1px;height:1px;position:absolute;overflow:hidden;margin:-1px;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.app-combat-intent-deltas__list{display:flex;flex-direction:column;gap:6px}.app-combat-intent-delta-row{min-height:35px;display:grid;grid-template-columns:minmax(0,1fr) minmax(112px,auto);align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--combat-intent-rule);border-radius:2px;background:transparent;color:var(--combat-intent-text-soft);font-size:11px;letter-spacing:.08em}.app-combat-intent-delta-row__label,.app-combat-intent-delta-row__value{display:flex;align-items:center;gap:8px}.app-combat-intent-delta-row__label svg{flex:0 0 auto;color:var(--combat-intent-muted)}.app-combat-intent-delta-row[data-tone=info] .app-combat-intent-delta-row__label svg{color:var(--combat-intent-resource)}.app-combat-intent-delta-row[data-tone=warning] .app-combat-intent-delta-row__label svg{color:var(--combat-intent-brass)}.app-combat-intent-delta-row[data-tone=danger] .app-combat-intent-delta-row__label svg{color:var(--combat-intent-ember)}.app-combat-intent-delta-row[data-tone=safe] .app-combat-intent-delta-row__label svg{color:var(--combat-intent-green)}.app-combat-intent-delta-row__value{justify-content:flex-end}.app-combat-intent-delta-row__value strong{width:48px;color:var(--combat-intent-text-muted);font-size:9px;font-weight:600;letter-spacing:.12em;line-height:1;text-align:right;text-transform:uppercase}.app-combat-intent-delta-meter{width:80px;height:4px;display:block;overflow:hidden;border-radius:1px;background:var(--combat-intent-track)}.app-combat-intent-delta-meter span{width:var(--app-combat-intent-meter-value, 0%);height:100%;display:block;background:var(--color-text-tertiary)}.app-combat-intent-delta-row[data-tone=info] .app-combat-intent-delta-meter span{background:var(--combat-intent-resource)}.app-combat-intent-delta-row[data-tone=warning] .app-combat-intent-delta-meter span{background:var(--combat-intent-brass)}.app-combat-intent-delta-row[data-tone=danger] .app-combat-intent-delta-meter span{background:var(--combat-intent-ember)}.app-combat-intent-delta-row[data-tone=safe] .app-combat-intent-delta-meter span{background:var(--combat-intent-green)}.app-combat-intent-prep{display:flex;flex-direction:column;gap:8px;padding:16px 20px 12px;background:var(--bg-eyebrow)}.app-combat-intent-prep__heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.app-combat-intent-prep__heading h3,.app-combat-intent-prep__heading span,.app-combat-intent-prep-card__meta,.app-combat-intent-prep-card__foot{font-family:JetBrains Mono,monospace}.app-combat-intent-prep__heading h3{margin:0;color:var(--combat-intent-brass);font-size:9px;font-weight:600;letter-spacing:2px;line-height:1;text-transform:uppercase}.app-combat-intent-prep__heading span{color:var(--combat-intent-muted);font-size:8px;font-weight:600;letter-spacing:.1em;line-height:1;text-align:right;text-transform:uppercase;white-space:nowrap}.app-combat-intent-prep__carousel{display:grid;grid-auto-columns:min(176px,calc((100% - 8px)/2));grid-auto-flow:column;gap:8px;margin-inline:-20px;min-height:190px;overflow-x:auto;padding:0 20px 3px;scroll-padding-inline:20px;scroll-snap-type:x proximity}.app-combat-intent-prep-card{height:190px;position:relative;display:grid;grid-template-rows:136px 54px;gap:0;overflow:hidden;border:1px solid var(--combat-intent-soft-rule);border-radius:2px;background:var(--bg-tertiary);color:var(--combat-intent-text);cursor:pointer;padding:0;scroll-snap-align:start;text-align:left;transition:border-color var(--motion-fast) var(--motion-change-ease),background-color var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-press-ease)}.app-combat-intent-prep-card:hover:not(:disabled),.app-combat-intent-prep-card:focus-visible{border-color:color-mix(in oklch,var(--combat-intent-brass) 54%,var(--combat-intent-rule))}.app-combat-intent-prep-card:focus-visible{outline:var(--focus-ring, 2px solid var(--combat-intent-brass));outline-offset:2px}.app-combat-intent-prep-card:active:not(:disabled){transform:scale(var(--motion-press-scale))}.app-combat-intent-prep-card:disabled{cursor:default}.app-combat-intent-prep-card[data-armed=true]{border-color:var(--combat-intent-brass-rule);background:var(--bg-tertiary)}.app-combat-intent-prep-card__check{width:24px;height:24px;position:absolute;z-index:2;top:8px;right:8px;display:grid;place-items:center;border:1px solid var(--combat-intent-soft-rule);border-radius:999px;background:color-mix(in oklch,var(--combat-intent-canvas) 84%,transparent);color:var(--combat-intent-muted)}.app-combat-intent-prep-card[data-armed=true] .app-combat-intent-prep-card__check{border-color:var(--combat-intent-green-rule);background:var(--combat-intent-green-panel);color:var(--combat-intent-green)}.app-combat-intent-prep-card__art{display:grid;place-items:center;border-bottom:1px solid var(--combat-intent-rule);background:var(--bg-tertiary)}.app-combat-intent-prep-card__art .app-item-sprite{width:100%;height:100%;object-fit:cover}.app-combat-intent-prep-card__art .app-item-sprite-fallback{width:64px;height:64px;display:grid;place-items:center;border:1px solid var(--combat-intent-rule);border-radius:2px;background:var(--combat-intent-panel);color:var(--combat-intent-brass);font-family:Cinzel,serif;font-size:24px}.app-combat-intent-prep-card__body{position:relative;display:flex;flex-direction:column;justify-content:center;gap:4px;padding:12px 40px 12px 12px}.app-combat-intent-prep-card__name{color:var(--combat-intent-text);font-family:Cinzel,serif;font-size:13px;font-weight:600;letter-spacing:0;line-height:1}.app-combat-intent-prep-card__meta,.app-combat-intent-prep-card__foot{display:flex;align-items:center;gap:6px;color:var(--combat-intent-muted);font-size:8px;font-weight:600;letter-spacing:.1em;line-height:1;text-transform:uppercase}.app-combat-intent-prep-card__meta{flex-wrap:wrap}.app-combat-intent-prep-card__meta span:first-child{color:var(--combat-intent-muted)}.app-combat-intent-prep-card__meta span:nth-child(2){color:var(--combat-intent-ember)}.app-combat-intent-prep-card[data-tone=mana] .app-combat-intent-prep-card__meta span:nth-child(2){color:var(--combat-intent-resource)}.app-combat-intent-prep-card__foot{position:absolute;top:12px;right:10px;justify-content:flex-end;margin:0}.app-combat-intent-prep-card__foot>span{display:none}.app-combat-intent-prep-card__foot strong{color:var(--combat-intent-text-muted);font-size:11px;font-weight:600;letter-spacing:0}.app-combat-intent-empty{display:flex;flex-direction:column;gap:8px;padding:24px 20px;border-bottom:1px solid var(--combat-intent-rule)}.app-combat-intent-empty h3{color:var(--combat-intent-text);font-size:17px}.app-combat-intent-actions{display:flex;flex-direction:row;gap:8px;padding:16px;border-top:1px solid var(--combat-intent-soft-rule);background:var(--combat-intent-action-bar)}.app-combat-intent-bottom-nav__item:focus-visible{outline:var(--focus-ring, 2px solid var(--combat-intent-brass));outline-offset:2px}.app-combat-intent-actions .ds-button,.app-shell .app-combat-intent-actions .ds-button{height:44px;min-height:44px;border-radius:2px}.app-combat-intent-lock{flex:1 1 auto;min-width:0;letter-spacing:.5px}.app-shell .app-combat-intent-actions .ds-button.app-combat-intent-lock{flex:1 1 auto;min-width:0;padding-inline:16px;border-color:var(--ember-700);background:var(--ember-800);color:var(--ink-100);font-family:var(--font-display);font-size:14px;font-weight:600;letter-spacing:.5px}.app-combat-intent-back{flex:0 0 56px;order:-1;width:56px}.app-shell .app-combat-intent-actions .ds-button.app-combat-intent-back{width:56px;min-width:0;flex:0 0 56px;padding:0;border-color:var(--combat-intent-rule);background:var(--combat-intent-canvas);color:var(--combat-intent-text-muted)}.app-combat-intent-bottom-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;padding:2px 8px 8px;border-top:1px solid var(--combat-intent-rule);background:var(--color-bar-background)}.app-combat-intent-bottom-nav__item{min-height:54px;display:grid;place-items:center;gap:4px;padding:6px 2px;border:0;border-radius:2px;background:transparent;color:var(--color-text-tertiary);cursor:pointer;transition:background-color var(--motion-fast) var(--motion-change-ease),color var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-press-ease)}.app-combat-intent-bottom-nav__item strong{font-size:9px;font-weight:600;letter-spacing:.1em;line-height:1;text-transform:uppercase}.app-combat-intent-bottom-nav__item span{color:currentColor;font-size:15px;line-height:1}.app-combat-intent-bottom-nav__item:hover:not(:disabled){background:var(--surface-fill-muted);color:var(--color-text-secondary)}.app-combat-intent-bottom-nav__item:active:not(:disabled){transform:scale(var(--motion-press-scale))}.app-combat-intent-bottom-nav__item[data-active=true]{background:color-mix(in oklch,var(--combat-intent-brass) 12%,var(--combat-intent-panel));color:var(--combat-intent-brass)}.app-combat-intent-bottom-nav__item:disabled{cursor:not-allowed;opacity:.45}@media(max-width:390px){.app-combat-intent-hud{grid-template-columns:minmax(108px,.78fr) minmax(0,1.22fr)}.app-combat-intent-context-row{flex-direction:column;gap:6px}.app-combat-intent-intro{padding-inline:18px}.app-combat-intent-tabs{padding-inline:10px}.app-combat-intent-detail,.app-combat-intent-deltas,.app-combat-intent-prep{padding-inline:14px}.app-combat-intent-prep__carousel{grid-auto-columns:min(176px,calc((100% - 8px)/2));gap:8px;margin-inline:-14px;padding-inline:14px;scroll-padding-inline:14px}}.app-flow-eyebrow,.app-local-progress-flow,.app-route-progress-flow,.app-local-progress-hero,.app-route-travel-log,.app-travel-map-card,.app-travel-eta-card,.app-travel-tone-strip,.app-travel-log-card,.app-travel-status-card,.app-travel-cancel,.app-scout-route-card,.app-scout-signals,.app-scout-hero-card,.app-encounter-reveal,.app-combat-stage,.app-encounter-result,.app-combat-result-hints,.app-combat-result-hint,.app-combat-action-detail,.app-combat-action-bar{--explore-panel-0: var(--surface-50);--explore-panel-1: var(--surface-150);--explore-panel-2: var(--bg-primary);--explore-panel-3: var(--bg-secondary);--explore-rule: var(--line-primary);--explore-rule-strong: var(--ink-700);--explore-brass: var(--color-currency-gold);--explore-ember: var(--color-danger-bright)}.app-flow-eyebrow{display:inline-flex;align-items:center;gap:var(--space-small);color:var(--color-danger-bright);font-size:var(--app-type-kicker);font-weight:700;letter-spacing:.18em;text-transform:uppercase}.app-flow-eyebrow strong{color:var(--color-text-muted);font:inherit}.app-flow-eyebrow-dot{width:7px;height:7px;border:1px solid color-mix(in oklch,var(--explore-ember) 64%,var(--explore-rule));border-radius:2px;background:var(--explore-ember)}@keyframes app-threat-reveal{0%{opacity:0;transform:scale(.82)}to{opacity:1;transform:scale(1)}}@keyframes app-commit-action{0%{transform:scale(.98)}to{transform:scale(1)}}@keyframes app-result-resolve{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes app-travel-log-enter{0%{opacity:0;transform:translate3d(0,-6px,0)}64%{opacity:1}to{opacity:1;transform:translateZ(0)}}@keyframes app-travel-log-rule-enter{0%{opacity:0;transform:scaleY(0)}to{opacity:1;transform:scaleY(1)}}@keyframes app-travel-log-content-enter{0%{opacity:0;transform:translate3d(0,5px,0)}to{opacity:1;transform:translateZ(0)}}.app-screen[data-screen=explore]:has(.app-route-progress-flow),.app-screen[data-screen=explore]:has(.app-local-progress-flow){flex:1;min-height:0;gap:0;padding:0}.app-shell[data-screen=explore]:has(.app-route-progress-flow) .app-main,.app-shell[data-screen=explore]:has(.app-local-progress-flow) .app-main{padding-bottom:calc(var(--app-bottom-control-footprint) + var(--app-bottom-nav-offset) + env(safe-area-inset-bottom));background:var(--bg-primary)}.app-route-progress-flow,.app-local-progress-flow{display:flex;flex:1 1 auto;flex-direction:column;gap:0;min-height:100%;background:var(--bg-primary)}.app-local-progress-hero{position:relative;overflow:hidden;justify-content:flex-end;min-height:322px;padding:74px 24px 24px;border-bottom:1px solid var(--line-primary);background:linear-gradient(180deg,rgb(10 12 16 / .16) 0%,rgb(10 12 16 / .78) 46%,var(--surface-50) 100%),linear-gradient(180deg,var(--brass-950),var(--bg-primary))}.app-local-progress-hero[data-has-image=true]{background-color:var(--bg-primary);background-image:linear-gradient(180deg,#080a0e33,#080a0e94 46%,#080a0ef0),var(--app-route-progress-hero-image);background-position:center 42%;background-size:cover}.app-local-progress-hero[data-has-image=true]:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(8,10,14,.7),transparent 48%,rgba(8,10,14,.42)),linear-gradient(180deg,transparent 68%,rgb(8 10 14 / .68))}.app-local-progress-hero>*{position:relative;z-index:1}.app-local-progress-hero .app-explore-location-pill{min-height:20px;border-color:var(--ink-700);background:#10141acc;color:var(--ink-300);font-size:9px;letter-spacing:.16em}.app-local-progress-hero .app-local-progress-pill--active{border-color:var(--brass-700);background:#1a1410cc;color:var(--brass-500)}.app-local-progress-hero .app-explore-location-title{margin:0;color:var(--ink-50);font-family:var(--font-display);font-size:25px;font-weight:600;line-height:1.08;text-wrap:balance}.app-local-progress-hero .app-explore-location-kicker{margin:0;color:var(--ink-300);font-family:var(--font-body);font-size:11px;letter-spacing:.09em;line-height:1.2}.app-local-progress-hero .app-explore-location-summary{max-width:60ch;margin:0;color:var(--ink-100);font-family:var(--font-quote);font-size:12px;font-style:italic;line-height:1.45}.app-route-progress-screen{display:flex;flex:1 1 auto;min-height:100%}.app-route-progress-context-row{display:flex;align-items:center;justify-content:flex-end;gap:16px;padding:18px 20px;border-bottom:1px solid var(--line-primary);background:var(--surface-150);color:var(--ink-500);font-family:var(--font-label);font-size:10px;font-weight:400;letter-spacing:2px;line-height:13px;text-transform:uppercase}.app-route-progress-head{display:flex;flex-direction:column;gap:8px;padding:24px 24px 12px;background:var(--bg-primary)}.app-route-progress-hero{position:relative;isolation:isolate;display:flex;min-height:300px;flex-direction:column;justify-content:flex-end;overflow:hidden;padding:18px 24px 22px;border-bottom:1px solid var(--line-primary);background:linear-gradient(180deg,var(--brass-950),var(--bg-primary)),var(--bg-primary)}.app-route-progress-hero[data-has-image=true]{background-color:var(--bg-primary);background-image:linear-gradient(180deg,#080a0e33,#080a0e94 46%,#080a0ef0),var(--app-route-progress-hero-image);background-position:center 42%;background-size:cover}.app-route-progress-hero[data-has-image=true]:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(8,10,14,.7),transparent 48%,rgba(8,10,14,.42)),linear-gradient(180deg,transparent 68%,rgba(8,10,14,.68))}.app-route-progress-hero.app-local-progress-hero[data-has-image=true]{background-image:linear-gradient(180deg,#080a0e14,#080a0e47 46%,#080a0ebd),var(--app-route-progress-hero-image)}.app-route-progress-hero.app-local-progress-hero[data-has-image=true]:after{background:linear-gradient(90deg,rgba(8,10,14,.34),transparent 52%,rgba(8,10,14,.18)),linear-gradient(180deg,transparent 74%,rgba(8,10,14,.42))}.app-route-progress-origin-mark{position:relative;z-index:1;isolation:isolate;display:flex;width:fit-content;flex-direction:column;gap:4px;margin-top:auto}.app-route-progress-origin-mark span{color:var(--ink-300);font-family:var(--font-label);font-size:9px;font-weight:600;letter-spacing:2px;line-height:12px;text-transform:uppercase}.app-route-progress-origin-mark strong{color:var(--ink-50);font-family:var(--font-display);font-size:18px;font-weight:600;line-height:22px;text-shadow:0 2px 10px color-mix(in oklch,var(--bg-deep) 78%,transparent)}.app-route-progress-hero-topline{display:flex;align-items:center;justify-content:space-between;gap:14px;color:var(--ink-500);font-family:var(--font-label);font-size:9px;font-weight:600;letter-spacing:2px;line-height:12px;text-transform:uppercase}.app-route-progress-hero-topline span:first-child{color:var(--brass-500)}.app-route-progress-hero-topline span:last-child{overflow:hidden;max-width:52%;text-align:right;text-overflow:ellipsis;white-space:nowrap}.app-route-progress-kicker,.app-route-progress-place span,.app-route-progress-remaining span,.app-route-progress-ticks,.app-route-progress-risk-row>span:first-child,.app-route-progress-status-label{color:var(--ink-500);font-family:var(--font-label);font-size:9px;font-weight:400;letter-spacing:2px;line-height:12px;text-transform:uppercase}.app-route-progress-kicker{width:100%;color:var(--brass-500);font-size:10px;letter-spacing:3px;line-height:13px}.app-route-progress-from-to{display:grid;grid-template-columns:max-content minmax(0,1fr) max-content;align-items:center;gap:14px}.app-route-progress-from-to--hero{align-items:end;margin-top:auto}.app-route-progress-place{display:flex;flex-direction:column;gap:2px;min-width:0}.app-route-progress-place strong{overflow:hidden;color:var(--ink-100);font-family:var(--font-display);font-size:18px;font-weight:600;line-height:24px;text-overflow:ellipsis;white-space:nowrap}.app-route-progress-place--destination{align-items:flex-end}.app-route-progress-place--destination strong{color:var(--ink-50)}.app-route-progress-from-to--hero .app-route-progress-place strong{color:var(--ink-50);font-size:24px;line-height:29px;text-shadow:0 2px 10px color-mix(in oklch,var(--bg-deep) 78%,transparent)}.app-route-progress-from-to--hero .app-route-progress-place span{color:var(--ink-300)}.app-route-progress-hero-summary{max-width:64ch;margin:14px 0 0;color:var(--ink-100);font-family:var(--font-quote);font-size:12px;font-style:italic;line-height:1.45;text-shadow:0 1px 8px color-mix(in oklch,var(--bg-deep) 84%,transparent)}.app-route-progress-arrow{display:flex;justify-content:center;color:var(--brass-500)}.app-route-progress-arrow svg{transform:rotate(180deg)}.app-route-progress-map-wrap{position:relative;padding:12px 20px 16px;background:var(--bg-primary)}.app-route-progress-map{display:block;width:100%;height:160px;overflow:hidden;box-sizing:border-box;border:1px solid var(--line-primary);border-radius:1px;background:var(--surface-50)}.app-route-progress-grid-line{stroke:var(--surface-600);stroke-width:1}.app-route-progress-road{fill:none;stroke:var(--ink-700);stroke-linecap:round;stroke-width:2}.app-route-progress-road--done{stroke:var(--brass-500);transition:stroke-dashoffset var(--motion-regular) var(--motion-change-ease)}.app-route-progress-dot{fill:var(--surface-50);stroke-width:2}.app-route-progress-dot--start{stroke:var(--brass-500)}.app-route-progress-dot--end{stroke:var(--ink-50)}.app-route-progress-map-label{fill:var(--ink-300);font-family:var(--font-label);font-size:9px;font-weight:400;letter-spacing:1px}.app-route-progress-map-label--end{fill:var(--ink-100)}.app-route-progress-traveler-ring{fill:transparent;stroke:#c9a86a80;stroke-width:1}.app-route-progress-traveler-mark{transition:transform var(--motion-fast) var(--motion-change-ease);will-change:transform}.app-route-progress-traveler{fill:var(--brass-500);stroke:var(--brass-950);stroke-width:2}.app-route-progress-compass{position:absolute;top:20px;left:28px;display:grid;place-items:center;width:42px;height:18px;border:1px solid var(--line-primary);border-radius:1px;background:var(--bg-primary);color:var(--ink-300);font-family:var(--font-label);font-size:9px;font-weight:400;letter-spacing:2px;line-height:12px}.app-route-progress-meter{display:flex;flex-direction:column;gap:10px;padding:16px 20px;border-top:1px solid var(--line-primary);border-bottom:1px solid var(--line-primary);background:var(--bg-primary)}.app-route-progress-hero+.app-route-progress-meter{border-top:0}.app-route-progress-meter-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.app-route-progress-percent{display:flex;align-items:flex-end;gap:6px}.app-route-progress-percent strong{color:var(--ink-50);font-family:var(--font-display);font-size:32px;font-weight:600;line-height:43px}.app-route-progress-percent span{padding-bottom:7px;color:var(--ink-300);font-family:var(--font-label);font-size:14px;font-weight:400;line-height:18px}.app-route-progress-remaining{display:flex;flex-direction:column;align-items:flex-end;gap:2px;padding-bottom:5px}.app-route-progress-remaining strong{color:var(--ink-100);font-family:var(--font-label);font-size:18px;font-weight:400;line-height:24px}.app-route-progress-track{position:relative;overflow:hidden;height:6px;border:1px solid var(--line-primary);border-radius:1px;background:var(--surface-50)}.app-route-progress-track span{position:absolute;inset:0 auto 0 0;display:block;width:100%;transform:scaleX(var(--app-route-progress-scale, 0));transform-origin:left center;background:var(--brass-500);will-change:transform}.app-route-progress-ticks{display:flex;justify-content:space-between;gap:16px}.app-route-progress-ticks span{max-width:46%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-route-progress-risk{display:flex;box-sizing:border-box;flex:0 0 76px;flex-direction:column;justify-content:center;gap:8px;height:76px;padding:12px 20px;border-top:1px solid var(--line-secondary);border-bottom:0;background:var(--bg-primary)}.app-route-progress-flow>.app-route-progress-risk:last-child{border-top-color:var(--line-secondary);border-bottom:0}.app-route-progress-risk-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.app-route-progress-risk-pill{display:inline-flex;align-items:center;gap:8px;padding:0;border:0;border-radius:1px;background:transparent;color:var(--brass-500);font-family:var(--font-label);font-size:9px;font-weight:400;letter-spacing:1px;line-height:12px;text-transform:uppercase}.app-route-progress-risk-row>span:first-child{color:var(--ink-300)}.app-route-progress-risk-pill svg{width:10px;height:10px;flex:0 0 10px;color:currentColor}.app-route-progress-flow[data-risk=medium] .app-route-progress-risk-pill,.app-local-progress-flow[data-risk=medium] .app-route-progress-risk-pill{color:var(--color-warning-bright)}.app-route-progress-flow[data-risk=high] .app-route-progress-risk-pill,.app-local-progress-flow[data-risk=high] .app-route-progress-risk-pill{color:var(--ember-500)}.app-route-progress-risk-bars{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.app-route-progress-risk-bars span{height:4px;border-radius:1px;background:var(--line-secondary)}.app-route-progress-risk-bars span[data-active=true]{background:var(--brass-500)}.app-route-progress-flow[data-risk=medium] .app-route-progress-risk-bars span[data-active=true],.app-local-progress-flow[data-risk=medium] .app-route-progress-risk-bars span[data-active=true]{background:var(--color-warning-bright)}.app-route-progress-flow[data-risk=high] .app-route-progress-risk-bars span[data-active=true],.app-local-progress-flow[data-risk=high] .app-route-progress-risk-bars span[data-active=true]{background:var(--ember-700)}.app-route-travel-log{display:flex;flex:1 1 auto;flex-direction:column;gap:16px;min-height:0;overflow:hidden;padding:14px 20px 20px;background:var(--bg-secondary)}.app-route-travel-log-head,.app-route-travel-log-live,.app-route-travel-log-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.app-route-travel-log-head>span:first-child,.app-route-travel-log-actions>span{color:var(--ink-500);font-family:var(--font-label);font-size:9px;font-weight:600;letter-spacing:2px;line-height:12px;text-transform:uppercase}.app-route-travel-log-live{justify-content:flex-end;color:var(--ember-500);font-family:var(--font-label);font-size:9px;font-weight:600;letter-spacing:2px;line-height:12px;text-transform:uppercase}.app-route-travel-log-list{display:flex;flex:1 1 auto;flex-direction:column;justify-content:flex-start;gap:12px;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-bottom:2px;scrollbar-width:none}.app-route-travel-log-list::-webkit-scrollbar{display:none;width:0;height:0}.app-route-travel-log-entry{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr);align-items:start;flex:0 0 auto;gap:10px;min-height:0;padding:2px 10px;border:0;border-radius:1px;background:transparent;animation:app-travel-log-enter .28s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(var(--app-travel-log-index, 0) * 34ms);transform-origin:top center}.app-route-travel-log-entry:before{content:"";position:absolute;inset:2px auto 2px 0;width:2px;background:var(--line-secondary);transform:scaleY(0);transform-origin:top center;animation:app-travel-log-rule-enter .3s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(var(--app-travel-log-index, 0) * 34ms + 70ms)}.app-route-travel-log-entry[data-current=true]{animation:app-travel-log-enter .28s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(var(--app-travel-log-index, 0) * 34ms);background:transparent}.app-route-travel-log-entry[data-current=true]:before{background:var(--brass-700)}.app-route-travel-log-entry[data-tone=danger][data-current=true]:before{background:var(--ember-500)}.app-route-travel-log-entry[data-tone=arrival][data-current=true]:before{background:var(--ink-50)}.app-route-travel-log-time{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;width:34px;min-width:0;padding-top:3px;color:var(--ink-500);font-family:var(--font-label);letter-spacing:1px;line-height:12px;text-align:center;animation:app-travel-log-content-enter .26s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(var(--app-travel-log-index, 0) * 34ms + 54ms)}.app-route-travel-log-entry[data-current=true] .app-route-travel-log-time{color:var(--brass-500)}.app-route-travel-log-entry[data-tone=danger][data-current=true] .app-route-travel-log-time{color:var(--ember-400)}.app-route-travel-log-time span{font-size:9px;font-weight:600}.app-route-travel-log-entry p{display:block;overflow:visible;min-width:0;margin:0;color:var(--ink-300);font-family:var(--font-quote);font-size:12px;font-style:italic;line-height:1.5;animation:app-travel-log-content-enter .3s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(var(--app-travel-log-index, 0) * 34ms + 86ms)}.app-route-travel-log-entry[data-current=true] p{color:var(--ink-100)}.app-route-travel-log-actions{margin-top:auto;padding-top:4px}.app-route-travel-log-actions .app-inline-button{width:fit-content;min-width:0;height:44px;min-height:44px;padding:8px 20px;border-color:var(--line-primary);border-radius:var(--radius-md);background:var(--surface-300);color:var(--ink-100);font-family:var(--font-label);font-size:9px;font-weight:500;letter-spacing:1.5px;line-height:12px;text-transform:uppercase}.app-route-travel-log-actions .app-inline-button svg{color:var(--ink-300)}.app-route-progress-status{display:flex;flex:1 1 auto;flex-direction:column;gap:8px;min-height:0;padding:16px 20px;background:var(--bg-primary)}.app-route-progress-status-body{display:grid;grid-template-columns:2px minmax(0,1fr);gap:10px;max-width:100%}.app-route-progress-status-body>span{width:2px;min-height:60px;background:var(--brass-500)}.app-route-progress-status-body div{display:flex;flex-direction:column;gap:4px;min-width:0}.app-route-progress-status-body p{margin:0;font-family:var(--font-quote);font-style:italic;line-height:1.5}.app-route-progress-status-body p:first-child{color:var(--ink-50);font-size:13px}.app-route-progress-status-body p:last-of-type{color:var(--ink-300);font-size:12px}.app-route-progress-status-body .app-inline-button{align-self:flex-start;margin-top:6px}@media(prefers-reduced-motion:reduce){.app-route-travel-log-entry,.app-route-travel-log-entry:before,.app-route-travel-log-entry p,.app-route-travel-log-time{animation:none}}.app-travel-map-card,.app-travel-eta-card,.app-travel-tone-strip,.app-travel-log-card,.app-scout-route-card,.app-scout-signals{border:1px solid var(--explore-rule);border-radius:6px;background:var(--explore-panel-1);box-shadow:inset 0 1px #ffffff09}.app-travel-map-card{overflow:hidden;background:linear-gradient(90deg,rgba(58,66,80,.14) 1px,transparent 1px),linear-gradient(180deg,rgba(58,66,80,.14) 1px,transparent 1px),var(--explore-panel-0);background-size:24px 24px;border-color:var(--explore-rule-strong)}.app-travel-map{display:block;width:100%;height:auto}.app-travel-map-terrain{fill:var(--explore-panel-2)}.app-travel-map-path{fill:none;stroke:var(--explore-rule-strong);stroke-width:2}.app-travel-map-node{fill:var(--explore-panel-3);stroke-width:2}.app-travel-map-node--origin{stroke:var(--explore-brass)}.app-travel-map-node--destination{stroke:var(--explore-ember)}.app-travel-map-label{font-size:10px;font-weight:700}.app-travel-map-label--origin{fill:var(--color-text-muted)}.app-travel-map-label--destination{fill:var(--color-text-primary)}.app-travel-map-traveler-glow{fill:color-mix(in oklch,var(--explore-ember) 16%,transparent)}.app-travel-map-traveler{fill:var(--explore-ember);stroke:var(--color-text-primary);stroke-width:1.5}.app-travel-eta-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:var(--space-medium)}.app-travel-meta-label,.app-travel-log-title,.app-scout-signals-title{color:var(--color-text-tertiary);font-size:var(--app-type-kicker);font-weight:700;letter-spacing:.18em;text-transform:uppercase}.app-travel-eta-card strong{color:color-mix(in oklch,var(--color-text-primary) 84%,var(--explore-brass));font-size:var(--type-36);font-weight:700;line-height:1}.app-travel-eta-card span:last-child{color:var(--color-text-muted);font-size:var(--app-type-body);text-align:center}.app-travel-eta-card[data-risk=high]{border-color:color-mix(in oklch,var(--explore-ember) 36%,var(--explore-rule));background:color-mix(in oklch,var(--explore-ember) 8%,var(--explore-panel-1))}.app-travel-eta-card[data-risk=medium]{border-color:color-mix(in oklch,var(--explore-brass) 34%,var(--explore-rule))}.app-travel-progress-block,.app-travel-tone-copy,.app-scout-signal-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.app-travel-progress-labels,.app-scout-route-head,.app-scout-route-tone,.app-travel-status-card{display:flex;align-items:center;justify-content:space-between;gap:var(--space-small)}.app-travel-progress-labels span{color:var(--color-text-tertiary);font-size:var(--app-type-kicker);font-weight:700;letter-spacing:.14em;text-transform:uppercase}.app-travel-progress-labels strong{color:var(--color-text-primary);font-size:var(--app-type-helper);font-weight:700}.app-travel-tone-strip{display:flex;align-items:center;gap:var(--space-snug);padding:var(--space-snug) var(--space-snug)}.app-travel-tone-strip[data-risk=high]{border-color:color-mix(in oklch,var(--explore-ember) 36%,var(--explore-rule))}.app-travel-tone-strip[data-risk=medium]{border-color:color-mix(in oklch,var(--explore-brass) 34%,var(--explore-rule))}.app-travel-tone-icon{width:16px;height:16px;flex-shrink:0;border:1px solid color-mix(in oklch,var(--explore-brass) 46%,var(--explore-rule));border-radius:3px;background:var(--explore-panel-0)}.app-travel-tone-copy strong,.app-scout-signal-copy strong{color:var(--color-text-primary);font-size:var(--app-type-kicker);font-weight:600}.app-travel-tone-copy span,.app-travel-log-message,.app-scout-route-tone,.app-scout-signal-copy span{color:var(--color-text-muted);font-size:var(--app-type-body);line-height:1.45}.app-travel-log-card,.app-scout-signals{display:flex;flex-direction:column;gap:var(--space-small);padding:var(--space-snug) var(--space-snug)}.app-travel-log-row{display:grid;grid-template-columns:34px minmax(0,1fr);gap:var(--space-small)}.app-travel-log-time{color:var(--color-text-tertiary);font-size:var(--app-type-helper)}.app-travel-status-card{min-height:44px;justify-content:center;border:1px solid var(--explore-rule);border-radius:5px;background:var(--explore-panel-2);color:var(--color-text-muted);font-size:var(--app-type-compact-title);font-weight:600}.app-travel-status-clock{position:relative;width:12px;height:12px;border:1.5px solid var(--color-text-muted);border-radius:3px;flex-shrink:0}.app-travel-status-clock:before,.app-travel-status-clock:after{content:"";position:absolute;left:50%;top:50%;background:var(--color-text-muted);transform-origin:center bottom}.app-travel-status-clock:before{width:1.5px;height:4px;transform:translate(-50%,-100%)}.app-travel-status-clock:after{width:1.5px;height:3px;transform:translate(-50%,-70%) rotate(50deg)}.app-travel-cancel{min-height:40px;padding:0 var(--space-medium);border:1px solid var(--explore-rule);border-radius:5px;background:var(--explore-panel-0);color:var(--explore-ember);font:inherit;font-size:var(--app-type-compact-title);font-weight:600;transition:border-color var(--motion-fast) var(--motion-change-ease),color var(--motion-fast) var(--motion-change-ease)}.app-travel-cancel:hover{border-color:var(--explore-ember)}.app-scout-route-card{display:flex;flex-direction:column;gap:var(--space-small);padding:var(--space-snug) var(--space-snug)}.app-scout-route-col{display:flex;flex:1;flex-direction:column;gap:2px;min-width:0}.app-scout-route-col[data-align=end]{align-items:flex-end;text-align:right}.app-scout-route-col span{color:var(--color-text-tertiary);font-size:var(--app-type-kicker);font-weight:700;letter-spacing:.14em;text-transform:uppercase}.app-scout-route-col strong{color:var(--color-text-primary);font-size:var(--app-type-compact-title);font-weight:600}.app-scout-route-arrow{color:var(--explore-brass);font-size:var(--app-type-emphasis);font-weight:700}.app-scout-route-tone-dot,.app-scout-signal-dot{width:8px;height:8px;border-radius:2px;flex-shrink:0}.app-scout-route-tone-dot{background:var(--color-currency-gold)}.app-scout-hero-card{display:flex;flex-direction:column;align-items:center;gap:var(--space-snug);padding:var(--space-large) var(--space-shell);border:1px solid color-mix(in oklch,var(--explore-ember) 42%,var(--explore-rule));border-radius:6px;background:linear-gradient(180deg,var(--explore-panel-2),var(--explore-panel-1));box-shadow:inset 0 1px #ffffff09}.app-scout-hero-disc{display:grid;place-items:center;width:120px;height:120px;border:1px solid color-mix(in oklch,var(--explore-ember) 56%,var(--explore-rule));border-radius:8px;background:var(--explore-panel-0);color:var(--explore-ember)}.app-scout-hero-card strong{color:var(--color-text-primary);font-size:var(--type-32);font-weight:700;line-height:1}.app-scout-hero-card p{width:100%;margin:0;color:var(--color-text-muted);font-size:var(--app-type-body);line-height:1.5;text-align:center}.app-scout-signal-row{display:flex;align-items:center;gap:var(--space-snug);padding:var(--space-snug) var(--space-snug);border:1px solid var(--explore-rule);border-radius:5px;background:var(--explore-panel-2)}.app-scout-signal-dot[data-tone=danger]{background:var(--explore-ember)}.app-scout-signal-dot[data-tone=reward]{background:var(--color-currency-gold)}.app-scout-signal-dot[data-tone=travel]{background:var(--color-success)}.app-encounter-reveal,.app-combat-stage,.app-encounter-result{display:flex;flex-direction:column;gap:var(--space-snug);padding:var(--space-snug);border:1px solid var(--explore-rule);border-radius:6px;background:linear-gradient(180deg,var(--explore-panel-2),var(--explore-panel-1));box-shadow:inset 0 1px #ffffff09}.app-encounter-reveal{border-color:color-mix(in oklch,var(--explore-ember) 36%,var(--explore-rule))}.app-encounter-reveal[data-risk=medium]{border-color:color-mix(in oklch,var(--color-warning-bright) 34%,var(--surface-border-subtle))}.app-encounter-reveal[data-risk=low]{border-color:color-mix(in oklch,var(--color-info) 28%,var(--surface-border-subtle))}.app-combat-stage{gap:var(--space-small);border-color:var(--explore-rule-strong)}.app-combat-stage[data-risk=high]{border-color:color-mix(in oklch,var(--explore-ember) 34%,var(--explore-rule))}.app-encounter-result[data-outcome=defeat]{border-color:color-mix(in oklch,var(--explore-ember) 42%,var(--explore-rule))}.app-shell[data-screen=explore]:has(.app-encounter-result-flow) .app-screen{min-height:0}.app-screen[data-screen=explore]:has(.app-encounter-result-flow){flex:1;min-height:0;gap:0;padding:0}.app-shell[data-screen=explore]:has(.app-encounter-result-flow) .app-main{background:var(--bg-primary)}.app-encounter-result-flow{display:flex;flex:1 1 auto;flex-direction:column;gap:0;min-height:100%;background:var(--bg-primary)}.app-encounter-result{flex:0 0 auto;gap:0;overflow:hidden;padding:0;border:0;border-radius:0;background:var(--bg-primary);box-shadow:none}.app-encounter-result__status-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-small);padding:18px 20px;border-bottom:1px solid var(--explore-rule);background:var(--surface-150);color:var(--ink-500);font-family:var(--font-label);font-size:10px;font-weight:400;letter-spacing:.2em;line-height:1.3;text-transform:uppercase}.app-shell[data-screen-chrome-hidden=true] .app-encounter-result__status-row{padding-top:calc(env(safe-area-inset-top) + 18px)}.app-encounter-result__status-row span:first-child{color:var(--sage-500)}.app-encounter-result__status-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-encounter-result[data-outcome=defeat] .app-encounter-result__status-row span:first-child{color:var(--explore-ember)}.app-encounter-result__hero{display:flex;flex-direction:column;align-items:center;gap:8px;padding:28px 24px 24px;border-bottom:1px solid var(--explore-rule);background:radial-gradient(circle at 50% 40%,var(--sage-900) 0,var(--bg-primary) 100%);text-align:center}.app-encounter-result:not([data-outcome=defeat]) .app-encounter-result__hero{background:radial-gradient(circle at 50% 42%,color-mix(in oklch,var(--color-success) 12%,transparent),transparent 38%),linear-gradient(180deg,var(--sage-900) 0%,var(--bg-primary) 100%)}.app-encounter-result[data-outcome=defeat] .app-encounter-result__hero{background:radial-gradient(circle at 50% 40%,color-mix(in oklch,var(--explore-ember) 14%,transparent),transparent 36%),linear-gradient(180deg,color-mix(in oklch,var(--explore-ember) 10%,var(--explore-panel-2)),var(--explore-panel-2))}.app-encounter-result__seal{width:64px;height:64px;display:grid;place-items:center;border:1px solid var(--sage-800);border-radius:50%;background:var(--sage-950);color:var(--sage-500)}.app-encounter-result[data-outcome=defeat] .app-encounter-result__seal{border-color:color-mix(in oklch,var(--explore-ember) 44%,var(--explore-rule));background:color-mix(in oklch,var(--explore-ember) 10%,var(--explore-panel-1));color:var(--explore-ember)}.app-encounter-result__hero .app-section-title{color:var(--ink-50);font-size:24px;line-height:1.2;text-align:center}.app-encounter-result__hero .app-copy{width:100%;max-width:392px;color:var(--ink-300);font-family:var(--font-quote);font-size:13px;font-style:italic;line-height:1.55;text-align:center}.app-encounter-result__reward-summary{display:flex;flex-direction:column;gap:8px;padding:14px 20px 16px;border-bottom:1px solid var(--explore-rule);background:var(--bg-primary)}.app-encounter-result__summary-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-small);color:var(--ink-500);font-family:var(--font-label);font-size:9px;font-weight:400;letter-spacing:.2em;line-height:12px;text-transform:uppercase}.app-encounter-result__summary-heading strong{color:var(--brass-500);font:inherit;letter-spacing:.16em}.app-encounter-result__reward-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:8px}.app-encounter-result__reward-cell{min-height:45px;display:flex;flex-direction:column;gap:2px;justify-content:center;min-width:0;padding:6px 10px;border:1px solid var(--explore-rule);border-radius:1px;background:var(--surface-500)}.app-encounter-result__reward-cell[data-tone=loot]{border-color:var(--brass-700);background:var(--brass-950)}.app-encounter-result:has(.app-encounter-result__reward-cell[data-tone=loot]) .app-encounter-result__summary-heading strong{color:var(--color-warning-bright)}.app-encounter-result__reward-cell>span{overflow:hidden;color:var(--ink-500);font-family:var(--font-label);font-size:8px;letter-spacing:.2em;line-height:11px;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.app-encounter-result__reward-cell>strong{overflow:hidden;color:var(--ink-50);font-family:var(--font-display);font-size:15px;font-weight:600;line-height:20px;text-overflow:ellipsis;white-space:nowrap}.app-encounter-result__reward-cell[data-tone=loot]>strong{color:var(--explore-brass)}.app-encounter-result__reward-cell[data-tone=xp]>strong,.app-encounter-result__reward-cell[data-tone=coin]>strong{color:var(--brass-400)}.app-encounter-result-updates{display:flex;flex-direction:column;gap:10px;padding:20px;border-bottom:1px solid var(--explore-rule);background:var(--bg-secondary)}.app-encounter-result-updates__heading{color:var(--ink-500);font-family:var(--font-label);font-size:9px;font-weight:400;letter-spacing:.2em;line-height:12px;text-transform:uppercase}.app-encounter-result-updates__list{display:flex;flex-direction:column;gap:10px}.app-encounter-result-update{display:grid;grid-template-columns:14px minmax(0,1fr);align-items:start;gap:10px;min-height:29px;color:var(--brass-500)}.app-encounter-result-update[data-tone=success]{color:var(--sage-500)}.app-encounter-result-update__copy{display:flex;flex-direction:column;gap:1px;min-width:0}.app-encounter-result-update__copy strong{color:var(--ink-50);font-size:12px;font-weight:600;line-height:15px}.app-encounter-result-update__copy span{color:var(--ink-300);font-size:11px;line-height:13px}.app-encounter-result-update[data-tone=success] .app-encounter-result-update__copy span{color:var(--sage-500)}.app-encounter-result-defeat-note{display:grid;flex:1 1 auto;grid-template-columns:13px minmax(0,1fr);align-items:start;gap:10px;min-height:92px;padding:12px 20px;border-bottom:1px solid var(--explore-rule);background:var(--bg-primary);color:var(--ink-500)}.app-encounter-result-flow:has(.app-encounter-result[data-outcome=defeat]) .app-encounter-result-defeat-note{border-color:color-mix(in oklch,var(--explore-ember) 26%,var(--explore-rule));background:color-mix(in oklch,var(--explore-ember) 6%,var(--bg-primary));color:color-mix(in oklch,var(--explore-ember) 64%,var(--ink-300))}.app-encounter-result-defeat-note span{font-family:var(--font-label);font-size:10px;font-weight:400;letter-spacing:.1em;line-height:1.3}.app-encounter-result-actions{flex-direction:row;align-items:stretch;gap:8px;padding:16px;border-top:0;background:var(--bg-tertiary)}.app-encounter-result-flow>.app-encounter-result-actions{position:sticky;bottom:var(--app-bottom-nav-clearance, 0px);z-index:12;width:100%}.app-shell:not([data-nav-hidden=true]) .app-encounter-result-flow>.app-screen-actions.app-encounter-result-actions{padding-bottom:12px}.app-encounter-result-flow>*:nth-last-child(2){padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}.app-encounter-result-actions .ds-button{min-width:0;justify-content:center;min-height:44px;height:44px;padding:10px 16px;border-radius:2px;box-shadow:none;font-family:var(--font-body);line-height:1;overflow:hidden;text-overflow:ellipsis;text-transform:none;white-space:nowrap}.app-shell .app-screen-actions.app-encounter-result-actions>.ds-button.app-encounter-result-actions__primary{flex:1 1 auto;width:auto;padding-inline:16px;border-color:var(--ember-700);background:var(--ember-800);color:var(--ink-100);font-family:var(--font-display);font-size:14px;font-weight:600;letter-spacing:.5px}.app-shell .ds-button.app-encounter-result-actions__primary:hover:not(:disabled),.app-shell .ds-button.app-encounter-result-actions__primary:focus-visible{border-color:var(--ember-600);background:var(--ember-700);color:var(--ink-100);transform:none}.app-encounter-result-actions__secondary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;width:100%}.app-encounter-result-actions__secondary .ds-button{width:100%;min-width:0}.app-shell .ds-button.app-encounter-result-actions__continue{border-color:var(--line-primary);background:var(--bg-primary);color:var(--ink-100);font-size:11px;font-weight:400;letter-spacing:.08em}.app-shell .ds-button.app-encounter-result-actions__continue:hover:not(:disabled),.app-shell .ds-button.app-encounter-result-actions__continue:focus-visible{border-color:var(--brass-700);color:var(--explore-brass)}.app-shell .ds-button.app-encounter-result-actions__quiet{border-color:var(--line-primary);background:var(--bg-primary);color:var(--ink-300);font-size:11px;font-weight:400;letter-spacing:.08em}.app-shell .ds-button.app-encounter-result-actions__quiet:hover:not(:disabled),.app-shell .ds-button.app-encounter-result-actions__quiet:focus-visible{border-color:var(--line-primary);background:var(--bg-primary);color:var(--ink-100);transform:none}.app-encounter-result-hero{display:flex;flex:1 1 auto;flex-direction:column;justify-content:flex-end;gap:8px;min-height:220px;padding:20px 20px 18px;border-bottom:1px solid var(--explore-rule);background:linear-gradient(180deg,var(--ember-950) 0%,var(--bg-primary) 100%)}.app-encounter-result-hero__gain{display:inline-flex;align-items:baseline;gap:6px;color:var(--brass-400);font-family:var(--font-display);font-size:36px;font-weight:700;letter-spacing:0;line-height:1;transform-origin:left center;transform:scale(.78);opacity:0;text-shadow:0 0 0 transparent;transition:transform .46s cubic-bezier(.22,1,.36,1) 40ms,opacity .36s cubic-bezier(.22,1,.36,1) 40ms,text-shadow .72s cubic-bezier(.22,1,.36,1) .12s}.app-encounter-result-hero[data-revealed=true] .app-encounter-result-hero__gain{transform:scale(1);opacity:1;text-shadow:0 0 16px color-mix(in oklch,var(--brass-400) 38%,transparent),0 0 2px color-mix(in oklch,var(--brass-300) 80%,transparent)}.app-encounter-result-hero__gain-suffix{color:var(--brass-500);font-size:14px;font-weight:600;letter-spacing:.18em;text-transform:uppercase}@media(prefers-reduced-motion:reduce){.app-encounter-result-hero__gain{transform:none;opacity:1;text-shadow:none;transition:none}}.app-encounter-result-hero__bar{position:relative;width:100%;height:6px;border:1px solid var(--line-secondary);border-radius:1px;background:var(--surface-100);overflow:hidden}.app-encounter-result-hero__bar-current,.app-encounter-result-hero__bar-gained{position:absolute;top:0;height:100%;transition:width var(--motion-change, .25s) var(--motion-change-ease, cubic-bezier(.76, 0, .24, 1))}.app-encounter-result-hero__bar-current{left:0;background:var(--brass-600)}.app-encounter-result-hero__bar-gained{background:var(--brass-400);transform-origin:left center;transform:scaleX(0);transition:transform .76s cubic-bezier(.22,1,.36,1) .24s;box-shadow:0 0 12px color-mix(in oklch,var(--brass-400) 0%,transparent)}.app-encounter-result-hero[data-revealed=true] .app-encounter-result-hero__bar-gained{transform:scaleX(1);box-shadow:0 0 14px color-mix(in oklch,var(--brass-400) 45%,transparent)}@media(prefers-reduced-motion:reduce){.app-encounter-result-hero__bar-gained{transform:scaleX(1);transition:none;box-shadow:none}}.app-encounter-result-hero__cap{display:flex;align-items:center;justify-content:space-between;gap:12px}.app-encounter-result-hero__cap-meta{color:var(--ink-500);font-family:var(--font-mono);font-size:9px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.app-encounter-result-hero__cap-pct{display:inline-flex;align-items:center;gap:4px}.app-encounter-result-hero__cap-pct svg{color:var(--brass-400)}.app-encounter-result-hero__pct-prev{color:var(--ink-500);font-family:var(--font-mono);font-size:9px;letter-spacing:.04em}.app-encounter-result-hero__pct-next{color:var(--brass-300);font-family:var(--font-mono);font-size:9px;font-weight:700;letter-spacing:.04em}.app-encounter-result-quests{display:flex;flex:0 0 auto;flex-direction:column;gap:14px;padding:20px 20px 24px;border-bottom:1px solid var(--explore-rule);background:var(--bg-primary)}.app-encounter-result-quests__head{display:flex;align-items:center;justify-content:space-between}.app-encounter-result-quests__head span{color:var(--brass-500);font-family:var(--font-mono);font-size:9px;font-weight:600;letter-spacing:.2em;text-transform:uppercase}.app-encounter-result-quests__list{display:flex;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none}.app-encounter-result-quest{display:flex;flex-direction:column;gap:6px}.app-encounter-result-quest__row{display:flex;align-items:center;justify-content:space-between;gap:12px}.app-encounter-result-quest__title{min-width:0;overflow:hidden;color:var(--ink-100);font-family:var(--font-body);font-size:14px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.app-encounter-result-quest[data-tone=passive] .app-encounter-result-quest__title{color:var(--ink-300)}.app-encounter-result-quest__count{flex-shrink:0;color:var(--brass-400);font-family:var(--font-mono);font-size:12px;font-weight:600;letter-spacing:.04em}.app-encounter-result-quest[data-tone=passive] .app-encounter-result-quest__count{color:var(--ink-300)}.app-encounter-result-quest__bar{position:relative;width:100%;height:6px;border:1px solid var(--line-secondary);border-radius:1px;background:var(--surface-100);overflow:hidden}.app-encounter-result-quest__bar-current,.app-encounter-result-quest__bar-gain{position:absolute;top:0;height:100%}.app-encounter-result-quest__bar-current{left:0;background:var(--brass-600)}.app-encounter-result-quest__bar-gain{background:var(--brass-300);transform-origin:left center;transform:scaleX(0);transition:transform .72s cubic-bezier(.22,1,.36,1) var(--quest-bar-delay, .32s)}.app-encounter-result-quests[data-revealed=true] .app-encounter-result-quest__bar-gain{transform:scaleX(1)}.app-encounter-result-quest[data-tone=passive] .app-encounter-result-quest__bar-current{background:var(--ink-500)}.app-encounter-result-quest[data-tone=passive] .app-encounter-result-quest__bar-gain{background:var(--ink-300)}.app-encounter-result-quest[data-quest-state=ready] .app-encounter-result-quest__bar-gain{background:var(--brass-300);box-shadow:0 0 10px color-mix(in oklch,var(--brass-300) 45%,transparent)}.app-encounter-result-quest__count{display:inline-flex;align-items:center;gap:8px}.app-encounter-result-quest__count-value{display:inline-block;min-width:36px;text-align:right}.app-encounter-result-quest__delta{display:inline-flex;align-items:center;padding:2px 6px;border:1px solid color-mix(in oklch,var(--brass-400) 50%,transparent);border-radius:999px;background:color-mix(in oklch,var(--brass-400) 10%,transparent);color:var(--brass-300);font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;opacity:0;transform:translateY(-4px) scale(.85);transition:opacity .36s cubic-bezier(.22,1,.36,1) var(--quest-bar-delay, .32s),transform .42s cubic-bezier(.22,1,.36,1) var(--quest-bar-delay, .32s)}.app-encounter-result-quests[data-revealed=true] .app-encounter-result-quest__delta{opacity:1;transform:translateY(0) scale(1)}@media(prefers-reduced-motion:reduce){.app-encounter-result-quest__bar-gain{transform:scaleX(1);transition:none}.app-encounter-result-quest__delta{opacity:1;transform:none;transition:none}}.app-encounter-result-spoils{display:flex;flex:0 0 auto;flex-direction:column;justify-content:flex-end;gap:8px;padding:14px 20px;border-bottom:1px solid var(--explore-rule);background:var(--surface-150)}.app-encounter-result-spoils__head{display:flex;align-items:center;justify-content:space-between;gap:12px}.app-encounter-result-spoils__head span:first-child{color:var(--brass-500);font-family:var(--font-mono);font-size:9px;font-weight:600;letter-spacing:.2em;text-transform:uppercase}.app-encounter-result-spoils__count{color:var(--ink-300);font-family:var(--font-mono);font-size:9px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.app-encounter-result-spoils__carousel{display:flex;gap:8px;margin:0 -20px;padding:0 20px;overflow-anchor:none;overflow-x:auto;overscroll-behavior-x:contain;scroll-padding-left:20px;scroll-snap-type:x mandatory;scrollbar-width:none}.app-encounter-result-spoils__carousel::-webkit-scrollbar{display:none}.app-encounter-result-loot-card{--encounter-loot-accent: var(--ink-600);--encounter-loot-accent-strong: var(--ink-300);--encounter-loot-border: var(--line-primary);--encounter-loot-image-panel: color-mix(in oklch, var(--ink-700) 14%, var(--surface-200));--encounter-loot-panel: var(--bg-primary);position:relative;display:flex;flex:0 0 auto;flex-direction:column;width:176px;height:229px;padding:0;border:1px solid var(--encounter-loot-border);border-radius:2px;background:var(--encounter-loot-panel);overflow:hidden;scroll-snap-align:start;transform:translateZ(0);transform-origin:center;backface-visibility:hidden;contain:paint}.app-encounter-result-loot-card__button{display:flex;width:100%;height:100%;min-width:0;min-height:0;flex-direction:column;padding:0;border:0;background:transparent;color:inherit;cursor:pointer;font:inherit;text-align:left}.app-encounter-result-loot-card__button:disabled{cursor:default;opacity:1}.app-encounter-result-loot-card__button:focus-visible{outline:var(--focus-ring);outline-offset:3px}@media(hover:hover){.app-encounter-result-loot-card:has(.app-encounter-result-loot-card__button:not(:disabled):hover){border-color:var(--encounter-loot-accent);background:color-mix(in oklch,var(--encounter-loot-accent) 8%,var(--encounter-loot-panel))}}.app-encounter-result-loot-card[data-quality=poor]{--encounter-loot-accent: var(--line-primary);--encounter-loot-accent-strong: var(--ink-500);--encounter-loot-border: var(--line-primary);--encounter-loot-image-panel: color-mix(in oklch, var(--ink-700) 22%, var(--surface-200))}.app-encounter-result-loot-card[data-quality=common]{--encounter-loot-accent: var(--line-primary);--encounter-loot-accent-strong: var(--ink-300);--encounter-loot-border: var(--line-primary);--encounter-loot-image-panel: color-mix(in oklch, var(--ink-700) 12%, var(--surface-200))}.app-encounter-result-loot-card[data-quality=currency]{--encounter-loot-accent: var(--brass-700);--encounter-loot-accent-strong: var(--brass-400);--encounter-loot-border: color-mix(in oklch, var(--brass-700) 56%, var(--line-primary));--encounter-loot-image-panel: color-mix(in oklch, var(--brass-950) 44%, var(--surface-200));--encounter-loot-panel: color-mix(in oklch, var(--brass-950) 24%, var(--bg-primary))}.app-encounter-result-loot-card[data-denomination=silver]{--encounter-loot-accent: var(--ink-300);--encounter-loot-accent-strong: var(--ink-100);--encounter-loot-border: color-mix(in oklch, var(--ink-300) 44%, var(--line-primary));--encounter-loot-image-panel: color-mix(in oklch, var(--ink-700) 28%, var(--surface-200));--encounter-loot-panel: color-mix(in oklch, var(--ink-700) 20%, var(--bg-primary))}.app-encounter-result-loot-card[data-denomination=copper]{--encounter-loot-accent: var(--ember-700);--encounter-loot-accent-strong: var(--ember-400);--encounter-loot-border: color-mix(in oklch, var(--ember-700) 48%, var(--line-primary));--encounter-loot-image-panel: color-mix(in oklch, var(--ember-950) 40%, var(--surface-200));--encounter-loot-panel: color-mix(in oklch, var(--ember-950) 22%, var(--bg-primary))}.app-encounter-result-loot-card[data-quality=uncommon]{--encounter-loot-accent: var(--sage-600);--encounter-loot-accent-strong: var(--sage-300);--encounter-loot-border: color-mix(in oklch, var(--sage-600) 64%, var(--line-primary));--encounter-loot-image-panel: linear-gradient( 180deg, color-mix(in oklch, var(--sage-800) 72%, var(--surface-100)), color-mix(in oklch, var(--sage-950) 86%, var(--surface-50)) );--encounter-loot-panel: color-mix(in oklch, var(--sage-900) 40%, var(--bg-primary))}.app-encounter-result-loot-card[data-quality=rare]{--encounter-loot-accent: var(--frost-700);--encounter-loot-accent-strong: var(--frost-400);--encounter-loot-border: color-mix(in oklch, var(--frost-700) 58%, var(--line-primary));--encounter-loot-image-panel: color-mix(in oklch, var(--frost-950) 58%, var(--surface-200));--encounter-loot-panel: color-mix(in oklch, var(--frost-950) 24%, var(--bg-primary))}.app-encounter-result-loot-card[data-quality=epic]{--encounter-loot-accent: var(--purple-700);--encounter-loot-accent-strong: var(--purple-400);--encounter-loot-border: color-mix(in oklch, var(--purple-700) 58%, var(--line-primary));--encounter-loot-image-panel: color-mix(in oklch, var(--purple-950) 58%, var(--surface-200));--encounter-loot-panel: color-mix(in oklch, var(--purple-950) 28%, var(--bg-primary))}.app-encounter-result-loot-card[data-quality=legendary]{--encounter-loot-accent: var(--brass-700);--encounter-loot-accent-strong: var(--brass-400);--encounter-loot-border: color-mix(in oklch, var(--brass-700) 62%, var(--line-primary));--encounter-loot-image-panel: color-mix(in oklch, var(--brass-950) 56%, var(--surface-200));--encounter-loot-panel: color-mix(in oklch, var(--brass-950) 30%, var(--bg-primary))}.app-encounter-result-loot-card__image{position:relative;flex:0 0 auto;display:grid;place-items:center;width:100%;height:176px;background:var(--encounter-loot-image-panel);overflow:hidden}.app-encounter-result-loot-card__image:after{content:"";position:absolute;inset:0;background:transparent;pointer-events:none}.app-encounter-result-loot-card[data-quality=uncommon] .app-encounter-result-loot-card__image:after{background:radial-gradient(circle at 50% 42%,color-mix(in oklch,var(--sage-500) 18%,transparent),transparent 58%),linear-gradient(180deg,color-mix(in oklch,var(--sage-800) 22%,transparent),color-mix(in oklch,var(--sage-950) 38%,transparent))}.app-encounter-result-loot-card__image--currency{isolation:isolate;background:radial-gradient(circle at 50% 45%,color-mix(in oklch,var(--encounter-loot-accent) 22%,transparent) 0%,transparent 54%),var(--encounter-loot-image-panel)}.app-encounter-result-loot-card__image .app-item-sprite{width:100%;height:100%;object-fit:cover}.app-encounter-result-loot-card__currency-art{display:block;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(1.02) contrast(1.02)}.app-encounter-result-loot-card__image .app-item-sprite-fallback{color:var(--ink-300);font-family:var(--font-display);font-size:22px;font-weight:700}.app-encounter-result-loot-card__info{appearance:none;position:absolute;top:8px;right:8px;display:grid;place-items:center;width:24px;height:24px;padding:0;border:0;border-radius:var(--radius-full);background:transparent;box-shadow:none;color:var(--ink-100);cursor:pointer;font:inherit;z-index:2}.app-encounter-result-loot-card__info:disabled{cursor:default;opacity:.48}.app-encounter-result-loot-card__info:focus-visible{outline:var(--focus-ring);outline-offset:2px}@media(hover:hover){.app-encounter-result-loot-card__info:not(:disabled):hover{color:var(--encounter-loot-accent-strong)}}.app-encounter-result-loot-card__meta{display:grid;grid-template-areas:"name qty" "rarity qty";grid-template-columns:minmax(0,1fr) auto;grid-template-rows:13px 12px;column-gap:8px;row-gap:4px;align-items:start;min-width:0;min-height:53px;padding:12px}.app-encounter-result-loot-card__name{grid-area:name;overflow:hidden;color:var(--ink-100);font-family:var(--font-display);font-size:13px;font-weight:600;letter-spacing:0;line-height:1;text-overflow:ellipsis;white-space:nowrap}.app-encounter-result-loot-card__row{display:contents}.app-encounter-result-loot-card__qty{grid-area:qty;color:var(--ink-100);font-family:var(--font-mono);font-size:11px;font-weight:600}.app-encounter-result-loot-card__rarity{grid-area:rarity;font-family:var(--font-mono);font-size:9px;font-weight:600;letter-spacing:.2em;text-transform:uppercase}.app-encounter-result-loot-card[data-quality=poor] .app-encounter-result-loot-card__rarity,.app-encounter-result-loot-card[data-quality=common] .app-encounter-result-loot-card__rarity{color:var(--ink-500)}.app-encounter-result-loot-card[data-quality=currency] .app-encounter-result-loot-card__rarity{color:var(--encounter-loot-accent-strong)}.app-encounter-result-loot-card[data-quality=uncommon] .app-encounter-result-loot-card__rarity{color:var(--sage-400)}.app-encounter-result-loot-card[data-quality=rare] .app-encounter-result-loot-card__rarity{color:var(--frost-400)}.app-encounter-result-loot-card[data-quality=epic] .app-encounter-result-loot-card__rarity{color:var(--purple-400)}.app-encounter-result-loot-card[data-quality=legendary] .app-encounter-result-loot-card__rarity{color:var(--brass-400)}.app-encounter-loot-flight{--encounter-loot-accent: var(--ink-600);--encounter-loot-accent-strong: var(--ink-300);position:fixed;left:var(--loot-flight-x);top:var(--loot-flight-y);z-index:70;display:grid;place-items:center;width:44px;height:44px;padding:3px;border:1px solid var(--encounter-loot-accent);border-radius:2px;background:color-mix(in oklch,var(--encounter-loot-accent) 16%,var(--bg-primary));box-shadow:0 8px 24px color-mix(in oklch,var(--bg-deep) 70%,transparent);opacity:0;pointer-events:none;transform:translate3d(-50%,-50%,0) scale(.72);backface-visibility:hidden;will-change:opacity,transform,filter;animation:app-encounter-loot-flight 1.12s cubic-bezier(.22,1,.36,1) both}.app-encounter-loot-flight[data-quality=poor]{--encounter-loot-accent: var(--ink-700);--encounter-loot-accent-strong: var(--ink-500)}.app-encounter-loot-flight[data-quality=common]{--encounter-loot-accent: var(--ink-600);--encounter-loot-accent-strong: var(--ink-300)}.app-encounter-loot-flight[data-quality=uncommon]{--encounter-loot-accent: var(--sage-700);--encounter-loot-accent-strong: var(--sage-400)}.app-encounter-loot-flight[data-quality=rare]{--encounter-loot-accent: var(--frost-700);--encounter-loot-accent-strong: var(--frost-400)}.app-encounter-loot-flight[data-quality=epic]{--encounter-loot-accent: var(--purple-700);--encounter-loot-accent-strong: var(--purple-400)}.app-encounter-loot-flight[data-quality=legendary],.app-encounter-loot-flight[data-quality=currency]{--encounter-loot-accent: var(--brass-700);--encounter-loot-accent-strong: var(--brass-400)}.app-encounter-loot-flight[data-denomination=silver]{--encounter-loot-accent: var(--ink-300);--encounter-loot-accent-strong: var(--ink-100)}.app-encounter-loot-flight[data-denomination=copper]{--encounter-loot-accent: var(--ember-700);--encounter-loot-accent-strong: var(--ember-400)}.app-encounter-loot-flight .app-item-sprite,.app-encounter-loot-flight .app-item-sprite-fallback,.app-encounter-loot-flight__coin{width:100%;height:100%;border-radius:1px}.app-encounter-loot-flight .app-item-sprite,.app-encounter-loot-flight__coin img{object-fit:cover;filter:saturate(1.08) contrast(1.04)}.app-encounter-loot-flight__coin{display:grid;place-items:center;overflow:hidden;background:color-mix(in oklch,var(--encounter-loot-accent) 16%,var(--surface-200));color:var(--encounter-loot-accent-strong)}.app-encounter-loot-flight__coin img{display:block;width:100%;height:100%;object-position:center;opacity:1}.app-encounter-loot-flight .app-item-sprite-fallback{display:grid;place-items:center;background:var(--surface-200);color:var(--encounter-loot-accent-strong);font-family:var(--font-display);font-size:15px;font-weight:700}@keyframes app-encounter-loot-flight{0%{opacity:0;transform:translate3d(-50%,-50%,0) translateZ(0) scale(.58);filter:saturate(.9)}9%{opacity:1;transform:translate3d(-50%,-50%,0) translateZ(0) scale(1);filter:saturate(1.04)}20%{opacity:1;transform:translate3d(-50%,-50%,0) translate3d(0,-7px,0) scale(.92);filter:saturate(1.08)}56%{opacity:1;transform:translate3d(-50%,-50%,0) translate3d(var(--loot-flight-settle-x),var(--loot-flight-settle-y),0) scale(.64);filter:saturate(1.06)}72%{opacity:1;transform:translate3d(-50%,-50%,0) translate3d(var(--loot-flight-settle-x),var(--loot-flight-settle-y),0) scale(.6);filter:saturate(1.02)}to{opacity:0;transform:translate3d(-50%,-50%,0) translate3d(var(--loot-flight-translate-x),var(--loot-flight-translate-y),0) scale(.16);filter:saturate(.96)}}@media(prefers-reduced-motion:reduce){.app-encounter-loot-flight{animation:app-encounter-loot-flight-reduced .24s var(--motion-change-ease) both}}@keyframes app-encounter-loot-flight-reduced{0%{opacity:0;transform:translate3d(-50%,-50%,0) scale(.9)}45%{opacity:1}to{opacity:0;transform:translate3d(-50%,-50%,0) scale(.82)}}.app-shell .ds-button.app-encounter-result-actions__arrive{flex:0 0 auto;min-width:0;width:auto;padding:10px 20px;border-color:var(--line-primary);background:var(--bg-primary);color:var(--ink-100);font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.app-shell .ds-button.app-encounter-result-actions__arrive:hover:not(:disabled),.app-shell .ds-button.app-encounter-result-actions__arrive:focus-visible{border-color:var(--brass-700);color:var(--brass-300)}.app-encounter-reveal-flow,.app-encounter-reveal-actions{--explore-panel-0: var(--surface-50);--explore-panel-1: var(--surface-150);--explore-panel-2: var(--bg-primary);--explore-panel-3: var(--bg-secondary);--explore-rule: var(--line-primary);--explore-rule-strong: var(--ink-700);--explore-brass: var(--color-currency-gold);--explore-ember: var(--color-danger-bright)}.app-screen[data-screen=explore]:has(.app-encounter-reveal-flow){flex:0 0 auto;min-height:100%;gap:0;padding:0}.app-shell[data-screen=explore]:has(.app-encounter-reveal-flow) .app-main{background:var(--bg-primary)}.app-encounter-reveal-flow{display:flex;flex:0 0 auto;flex-direction:column;gap:0;min-height:100%;background:var(--bg-primary)}.app-encounter-reveal{display:flex;flex:0 0 auto;flex-direction:column;gap:0;min-height:0;overflow:visible;padding:0;border:0;border-radius:0;background:var(--bg-primary);box-shadow:none}.app-encounter-reveal__status-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-small);min-height:49px;padding:18px 20px;border-bottom:1px solid var(--explore-rule);background:var(--surface-150);color:var(--ink-500);font-family:var(--font-label);font-size:10px;font-weight:400;letter-spacing:.2em;line-height:13px;text-transform:uppercase}.app-shell[data-screen-chrome-hidden=true] .app-encounter-reveal__status-row{padding-top:calc(env(safe-area-inset-top) + 18px)}.app-encounter-reveal__status-row span:first-child{color:var(--ember-500)}.app-encounter-reveal__art{position:relative;display:flex;align-items:flex-start;gap:4px;flex:0 0 auto;box-sizing:border-box;aspect-ratio:16 / 9;min-height:0;padding:14px 16px;border-bottom:1px solid var(--explore-rule);overflow:hidden;background:radial-gradient(circle at 55% 60%,var(--ember-900) 0,var(--surface-50) 100%)}.app-encounter-reveal__art[data-has-image=false]{min-height:200px}.app-encounter-reveal__image{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;object-position:center}.app-encounter-reveal__art:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#0a0d112e,#0a0d110f 48%,#0a0d1157),linear-gradient(90deg,rgba(10,13,17,.42),transparent 40%,rgba(10,13,17,.24))}.app-encounter-reveal__badge{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;min-width:60px;height:24px;padding:3px 8px;border:1px solid var(--ember-700);border-radius:1px;background:#0e1218cc;color:var(--ember-500);font-family:var(--font-label);font-size:11px;font-weight:400;letter-spacing:.18em;line-height:15px;text-transform:uppercase}.app-encounter-reveal__badge--muted{min-width:80px;border-color:var(--ink-700);color:var(--brass-500)}.app-encounter-reveal__identity{display:flex;flex:0 0 83px;flex-direction:column;gap:6px;justify-content:start;padding:20px 24px 12px;background:var(--bg-primary)}.app-encounter-reveal__identity .app-section-title{margin:0;color:var(--ink-50);font-family:var(--font-display);font-size:24px;font-weight:600;letter-spacing:0;line-height:32px;text-transform:none}.app-encounter-reveal__type-row{display:flex;align-items:center;gap:8px;min-width:0;color:var(--ink-500);font-family:var(--font-label);font-size:10px;font-weight:400;letter-spacing:.2em;line-height:13px;text-transform:uppercase}.app-encounter-reveal__type-row span:first-child{color:var(--ink-300)}.app-encounter-reveal__scene{flex:0 0 87px;padding:8px 24px 16px;border-bottom:1px solid var(--explore-rule);background:var(--bg-primary)}.app-encounter-reveal__scene p{margin:0;color:var(--ink-200);font-family:var(--font-quote);font-size:13px;font-style:italic;font-weight:400;line-height:1.6}.app-encounter-reveal__field-read{display:flex;flex:0 0 93px;flex-direction:column;gap:8px;padding:14px 20px;border-bottom:1px solid var(--explore-rule);background:var(--bg-secondary)}.app-encounter-reveal__section-label{color:var(--ink-500);font-family:var(--font-label);font-size:9px;font-weight:400;letter-spacing:.2em;line-height:12px;text-transform:uppercase}.app-encounter-reveal__fact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.app-encounter-reveal__fact-cell{display:flex;flex-direction:column;gap:2px;justify-content:center;min-width:0;height:45px;padding:8px 10px;border:1px solid var(--explore-rule);border-radius:1px;background:var(--bg-primary)}.app-encounter-reveal__fact-cell span{color:var(--ink-500);font-family:var(--font-label);font-size:8px;font-weight:400;letter-spacing:.2em;line-height:11px;text-transform:uppercase}.app-encounter-reveal__fact-cell strong{overflow:hidden;color:var(--ink-300);font-size:13px;font-weight:600;line-height:16px;text-overflow:ellipsis;white-space:nowrap}.app-encounter-reveal__fact-cell:first-child strong{color:var(--brass-500)}.app-encounter-reveal__fact-cell[data-state=unknown] strong{color:var(--ink-500);font-weight:500}.app-encounter-reveal__fact-cell:last-child strong{color:var(--ember-500)}.app-encounter-reveal__reward-hint{display:flex;flex:0 0 auto;flex-direction:column;gap:8px;padding:14px 20px;background:var(--bg-primary)}.app-encounter-reveal__reward-chips{display:flex;flex-wrap:wrap;gap:6px;min-width:0}.app-encounter-reveal__reward-chip{display:inline-flex;align-items:center;gap:5px;min-width:0;max-width:100%;min-height:23px;padding:4px 8px;border:1px solid var(--explore-rule);border-radius:1px;background:var(--surface-500);color:var(--ink-100);font-family:var(--font-label);font-size:11px;font-weight:400;line-height:15px;white-space:normal;overflow-wrap:anywhere}.app-encounter-reveal__reward-chip[data-tone=xp]{border-color:var(--brass-800);background:var(--brass-950);color:var(--brass-500)}.app-encounter-reveal__reward-chip[data-tone=route]{border-color:var(--sage-800);background:var(--sage-950);color:var(--sage-500)}.app-encounter-reveal__spacer{flex:0 0 auto;min-height:24px;background:var(--bg-primary)}.app-encounter-reveal-actions{border-top-color:var(--explore-rule);background:var(--surface-100)}.app-encounter-reveal-actions__primary-row,.app-encounter-reveal-actions__secondary-row{display:grid;gap:8px;width:100%}.app-encounter-reveal-actions__secondary-row{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.app-encounter-reveal-actions .ds-button{justify-content:center;width:100%;min-width:0;border-radius:1px;box-shadow:none;font-family:var(--font-body);text-transform:none;transform:none}.app-shell .ds-button.app-encounter-reveal-actions__primary{height:44px;min-height:44px;padding:14px 12px;border-color:var(--ember-600);background:var(--ember-700);color:var(--brass-100);font-size:13px;font-weight:700;letter-spacing:.08em}.app-shell .ds-button.app-encounter-reveal-actions__primary:hover:not(:disabled),.app-shell .ds-button.app-encounter-reveal-actions__primary:focus-visible{border-color:var(--ember-600);background:var(--ember-700);color:var(--brass-100);transform:none}.app-shell .ds-button.app-encounter-reveal-actions__secondary-button{height:40px;min-height:40px;padding:10px 12px;border-color:var(--ink-700);background:var(--bg-primary);color:var(--ink-100);font-size:11px;font-weight:400;letter-spacing:.08em}.app-shell .ds-button.app-encounter-reveal-actions__secondary-button--muted{border-color:var(--line-primary);color:var(--ink-300)}.app-shell .ds-button.app-encounter-reveal-actions__secondary-button:hover:not(:disabled),.app-shell .ds-button.app-encounter-reveal-actions__secondary-button:focus-visible{border-color:var(--brass-700);background:var(--bg-primary);color:var(--brass-500);transform:none}.app-encounter-reveal__hero,.app-combat-stage__hero{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-snug);align-items:start}.app-combat-stage__hero{grid-template-columns:minmax(0,1fr) auto;align-items:end}.app-encounter-reveal__copy{display:flex;flex-direction:column;gap:4px}.app-encounter-reveal__copy .app-section-title,.app-encounter-reveal__copy .app-copy,.app-combat-stage__hero .app-section-title,.app-combat-stage__hero .app-copy,.app-encounter-result__hero .app-section-title,.app-encounter-result__hero .app-copy{margin:0}.app-encounter-reveal__seal{width:42px;height:42px;border:1px solid color-mix(in oklch,var(--explore-ember) 50%,var(--explore-rule));border-radius:6px;background:linear-gradient(90deg,transparent 46%,color-mix(in oklch,var(--explore-ember) 50%,transparent) 47% 53%,transparent 54%),linear-gradient(180deg,transparent 46%,color-mix(in oklch,var(--explore-ember) 50%,transparent) 47% 53%,transparent 54%),var(--explore-panel-0);box-shadow:none}.app-encounter-reveal[data-risk=high] .app-encounter-reveal__seal{animation:app-threat-reveal .52s var(--motion-enter-ease) both}.app-encounter-reveal__threat{display:flex;flex-direction:column;gap:3px;padding:var(--space-snug);border:1px solid color-mix(in oklch,var(--explore-ember) 34%,var(--explore-rule));border-radius:5px;background:color-mix(in oklch,var(--explore-ember) 8%,var(--explore-panel-1))}.app-encounter-reveal__facts{display:flex;flex-wrap:wrap;gap:6px}.app-encounter-reveal__facts span{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border:1px solid color-mix(in oklch,var(--explore-ember) 24%,var(--explore-rule));border-radius:4px;background:var(--explore-panel-0);color:var(--color-text-muted);font-size:var(--app-type-kicker);font-weight:800;letter-spacing:.08em;text-transform:uppercase}.app-encounter-reveal__label,.app-combatant-card__label,.app-combat-stage__status span{color:var(--color-text-tertiary);font-size:var(--app-type-kicker);font-weight:800;letter-spacing:.12em;text-transform:uppercase}.app-encounter-reveal__threat strong{color:var(--color-text-primary);font-size:var(--app-type-emphasis);font-weight:700;line-height:1.1}.app-encounter-reveal__threat span:last-child{color:var(--color-text-muted);font-size:var(--app-type-body);line-height:1.4}.app-combat-stage__status{display:flex;min-width:112px;flex-direction:column;gap:4px;align-items:flex-end;padding:8px 10px;border:1px solid var(--explore-rule-strong);border-radius:5px;background:var(--explore-panel-0);text-align:right}.app-combat-stage__status strong{color:var(--explore-brass);font-size:var(--app-type-kicker);font-weight:800;letter-spacing:.08em;text-transform:uppercase}.app-mobile-combat-row,.app-combat-duel{display:grid;grid-template-columns:1fr;gap:var(--space-small)}.app-combat-duel__divider{display:grid;place-items:center}.app-combat-duel__divider span{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 10px;border:1px solid color-mix(in oklch,var(--explore-ember) 34%,var(--explore-rule));border-radius:4px;background:color-mix(in oklch,var(--color-canvas) 58%,black);color:var(--color-danger-bright);font-size:var(--app-type-kicker);font-weight:800;letter-spacing:.16em;text-transform:uppercase}.app-combatant-card,.app-combat-log-card{border:1px solid var(--explore-rule);border-radius:5px;background:var(--explore-panel-1);box-shadow:inset 0 1px #ffffff09}.app-combatant-card{display:flex;flex-direction:column;gap:6px;padding:var(--space-snug)}.app-combatant-card[data-side=player]{border-color:color-mix(in oklch,var(--explore-brass) 30%,var(--explore-rule))}.app-combatant-card[data-side=enemy]{border-color:color-mix(in oklch,var(--explore-ember) 34%,var(--explore-rule))}.app-combatant-card[data-pressure=wounded]{background:color-mix(in oklch,var(--explore-brass) 7%,var(--explore-panel-1))}.app-combatant-card[data-pressure=critical]{border-color:color-mix(in oklch,var(--explore-ember) 46%,var(--explore-rule));background:color-mix(in oklch,var(--explore-ember) 10%,var(--explore-panel-1))}.app-combatant-card__head,.app-combat-log-card__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-small)}.app-combatant-card__head span{min-width:0;overflow:hidden;color:var(--color-text-primary);font-size:var(--app-type-compact-title);font-weight:700;text-overflow:ellipsis;white-space:nowrap}.app-combatant-card__head strong{flex-shrink:0;color:var(--color-text-muted);font-size:var(--app-type-kicker);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.app-combatant-card__label{margin-top:-2px}.app-combat-log-card{display:flex;flex-direction:column;gap:var(--space-small);min-height:92px;padding:var(--space-snug)}.app-combat-action-bar{display:flex;flex-direction:column;gap:var(--space-snug);padding:var(--space-snug);border:1px solid var(--explore-rule-strong);border-radius:6px;background:var(--explore-panel-2);box-shadow:inset 0 1px #ffffff0a}.app-combat-action-bar__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-small)}.app-combat-action-bar__head>div{display:flex;flex-direction:column;gap:3px}.app-combat-action-bar__head strong{color:var(--color-text-primary);font-size:var(--app-type-body);font-weight:700;line-height:1.1}.app-combat-action-bar__status{display:inline-flex;align-items:center;min-height:26px;padding:0 var(--space-small);border:1px solid var(--explore-rule);border-radius:4px;background:var(--explore-panel-0);color:var(--explore-brass);font-size:var(--app-type-kicker);font-weight:800;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.app-combat-action-bar__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.app-combat-action-button{position:relative;min-width:0;min-height:108px;aspect-ratio:auto;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:8px;padding:28px 10px 10px;overflow:hidden;text-align:left;touch-action:manipulation}.app-combat-action-button:disabled,.app-combat-action-button[aria-disabled=true]{opacity:.58}.app-combat-action-button[data-available=false] .app-combat-action-button__copy span{color:var(--color-warning-bright)}.app-combat-action-button[data-tone=primary]{border-color:color-mix(in oklch,var(--color-text-accent) 42%,var(--surface-border-regular))}.app-combat-action-button[data-tone=defensive]{border-color:color-mix(in oklch,var(--color-info) 36%,var(--surface-border-regular))}.app-combat-action-button[data-tone=recovery]{border-color:color-mix(in oklch,var(--color-success) 36%,var(--surface-border-regular))}.app-combat-action-button[data-selected=true]{background:color-mix(in oklch,var(--explore-brass) 12%,var(--explore-panel-2));border-color:color-mix(in oklch,var(--explore-brass) 52%,var(--explore-rule));animation:app-commit-action .34s var(--motion-change-ease) both}.app-combat-action-button[data-selected=true]:after{position:absolute;inset:5px;pointer-events:none;border:1px solid color-mix(in oklch,var(--explore-brass) 48%,transparent);border-radius:4px;content:""}.app-combat-action-button__slot{position:absolute;top:5px;left:6px;right:6px;display:flex;align-items:center;justify-content:space-between;gap:4px;color:var(--color-text-tertiary);font-size:9px;font-weight:800;letter-spacing:.08em;line-height:1;text-transform:uppercase}.app-combat-action-button__slot kbd{min-width:17px;padding:2px 4px;border:1px solid var(--explore-rule);border-radius:3px;background:var(--explore-panel-0);color:var(--color-text-primary);font:inherit;text-align:center;box-shadow:inset 0 -1px color-mix(in oklch,var(--color-highlight-medium) 70%,transparent)}.app-combat-action-button__icon{display:inline-flex;align-items:center;justify-content:center;width:51px;height:38px;border:1px solid var(--explore-rule-strong);border-radius:5px;background:var(--explore-panel-0);color:var(--explore-brass);font-size:var(--type-18);font-weight:800;line-height:1;text-transform:uppercase;overflow:hidden}.app-combat-action-button__icon img{display:block;width:100%;height:100%;border-radius:inherit;object-fit:cover}.app-combat-action-button[data-tone=defensive] .app-combat-action-button__icon{color:var(--color-info-bright)}.app-combat-action-button[data-tone=recovery] .app-combat-action-button__icon{color:var(--color-success)}.app-combat-action-button:disabled .app-combat-action-button__icon,.app-combat-action-button[aria-disabled=true] .app-combat-action-button__icon{color:var(--color-text-tertiary)}.app-combat-action-button__cooldown{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:30px;min-height:18px;padding:0 5px;border:1px solid var(--explore-rule);border-radius:3px;background:var(--explore-panel-0);color:var(--color-text-muted);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.app-combat-action-button__cooldown[data-ready=true]{color:var(--color-success)}.app-combat-action-button__copy{display:flex;width:100%;min-width:0;flex-direction:column;align-items:flex-start;gap:4px;text-align:left}.app-combat-action-button__copy strong{color:var(--color-text-primary);font-size:var(--app-type-kicker);font-weight:800;line-height:1.1;letter-spacing:.08em;text-transform:uppercase}.app-combat-action-button__copy span{display:-webkit-box;max-width:100%;min-height:28px;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;color:var(--color-text-muted);font-size:10px;line-height:1.2}.app-combat-action-button__state{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:4px;min-height:18px;width:100%;margin-top:auto}.app-combat-action-button__resource{color:var(--color-info-bright);font-size:9px;font-weight:800;letter-spacing:.08em;line-height:1;text-transform:uppercase}.app-combat-action-detail{display:flex;flex-direction:column;gap:0;background:var(--bg-primary)}.app-combat-action-detail__chips{display:flex;flex-wrap:wrap;gap:8px;padding:12px 20px 14px;border-bottom:1px solid var(--surface-600);background:var(--bg-primary)}.app-combat-action-detail__chip{display:inline-flex;align-items:center;min-height:24px;padding:0 9px;border:1px solid var(--surface-600);border-radius:4px;background:var(--bg-secondary);color:var(--ink-300);font-family:var(--font-label);font-size:9px;font-weight:400;letter-spacing:.14em;text-transform:uppercase}.app-combat-action-detail__prose{padding:16px 24px 18px;border-bottom:1px solid var(--surface-600);background:var(--bg-primary)}.app-combat-action-detail__prose p{margin:0;color:var(--ink-200);font-family:var(--font-quote);font-size:13px;font-style:italic;line-height:1.6}.app-combat-action-detail__details{padding:14px 20px 16px;border-bottom:1px solid var(--surface-600);background:var(--bg-primary)}.app-combat-action-detail__details h3{margin:0 0 10px;color:var(--ink-500);font-family:var(--font-label);font-size:9px;font-weight:400;letter-spacing:.2em;line-height:1;text-transform:uppercase}.app-combat-action-detail__detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.app-combat-action-detail__detail-cell{display:flex;min-width:0;flex-direction:column;gap:6px;padding:10px 12px;border:1px solid var(--surface-600);border-radius:4px;background:var(--bg-secondary)}.app-combat-action-detail__detail-cell span{color:var(--ink-500);font-family:var(--font-label);font-size:8px;font-weight:400;letter-spacing:.16em;line-height:1;text-transform:uppercase}.app-combat-action-detail__detail-cell strong{overflow:hidden;color:var(--ink-100);font-family:var(--font-label);font-size:13px;font-weight:400;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.app-combat-action-detail__status{display:grid;gap:8px;padding:14px 20px 16px;border-top:1px solid var(--brass-700);border-bottom:1px solid var(--brass-700);background:var(--brass-950)}.app-combat-action-detail__status span{color:var(--brass-500);font-family:var(--font-label);font-size:9px;font-weight:400;letter-spacing:.2em;line-height:1;text-transform:uppercase}.app-combat-action-detail__status p{margin:0;color:var(--ink-200);font-size:13px;line-height:1.45}.app-combat-action-detail__status[data-status=unavailable] span{color:var(--color-danger-bright)}.app-combat-action-detail__actions{padding:16px;border-top:1px solid var(--line-primary);background:var(--surface-100)}.app-shell .app-combat-action-detail__actions .ds-button{min-height:44px}.app-combat-enemy-hints{display:flex;flex-wrap:wrap;gap:6px}.app-combat-enemy-hint{display:inline-flex;align-items:center;gap:5px;min-height:24px;padding:0 8px;border:1px solid var(--explore-rule);border-radius:4px;background:var(--explore-panel-0);color:var(--color-text-muted);font-size:var(--app-type-kicker);font-weight:800;letter-spacing:.08em;text-transform:uppercase}.app-combat-enemy-hint strong{color:var(--color-text-primary);font:inherit}.app-combat-enemy-hint[data-tone=danger]{border-color:color-mix(in oklch,var(--color-danger-bright) 34%,var(--surface-border-subtle));color:var(--color-danger-bright)}.app-combat-enemy-hint[data-tone=ready]{border-color:color-mix(in oklch,var(--color-success) 34%,var(--surface-border-subtle));color:var(--color-success)}.app-combat-enemy-hint[data-tone=warning]{border-color:color-mix(in oklch,var(--color-warning-bright) 34%,var(--surface-border-subtle));color:var(--color-warning-bright)}.app-combat-result-hints{display:grid;grid-template-columns:1fr;gap:var(--space-small)}.app-combat-result-hint{display:flex;flex-direction:column;gap:3px;padding:var(--space-small) var(--space-snug);border:1px solid var(--explore-rule);border-radius:5px;background:var(--explore-panel-1)}.app-combat-result-hint strong{color:var(--color-text-primary);font-size:var(--app-type-body);font-weight:700}.app-combat-result-hint span{color:var(--color-text-muted);font-size:var(--app-type-label);line-height:1.35}.app-combat-result-hint[data-tone=loot]{border-color:color-mix(in oklch,var(--explore-brass) 36%,var(--explore-rule))}.app-combat-result-hint[data-tone=quest]{border-color:color-mix(in oklch,var(--color-info-bright) 30%,var(--explore-rule))}.app-combat-result-hint[data-tone=warning]{border-color:color-mix(in oklch,var(--explore-brass) 38%,var(--explore-rule))}.app-shell .ds-button.app-combat-flee-button{color:var(--color-warning-bright)}.app-combat-log-entry{color:var(--color-text-muted);font-size:var(--app-type-body);line-height:1.5;padding:var(--space-small) 0 0;border-top:1px solid var(--explore-rule)}.app-combat-log-entry[data-tone=player]{color:var(--color-text-primary)}.app-combat-log-entry[data-tone=enemy]{color:var(--color-danger-bright)}.app-combat-log-entry[data-tone=system]{color:var(--color-success)}.app-encounter-result__rewards{gap:6px}.app-encounter-result,.app-combat-result-hints,.app-encounter-result__rewards{animation:app-result-resolve .32s var(--motion-enter-ease) both}@media(min-width:420px){.app-combat-duel{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:stretch}.app-combat-action-bar__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:359px){.app-combat-action-bar__grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.app-encounter-reveal[data-risk=high] .app-encounter-reveal__seal,.app-combat-action-button[data-selected=true],.app-encounter-result,.app-combat-result-hints,.app-encounter-result__rewards{animation:none}}.app-shell[data-screen=explore]:has(.app-combat-screen){background:var(--bg-primary)}.app-shell[data-screen=explore]:has(.app-combat-screen) .app-main{overflow:hidden}.app-shell[data-screen=explore]:has(.app-combat-screen) .app-screen{flex:1 1 auto;min-height:0;gap:0;padding:0;animation:none}.app-combat-screen{display:flex;width:100%;height:100%;min-height:0;flex-direction:column;overflow:hidden;background:var(--bg-primary)}.app-combat-screen *,.app-encounter-result-flow *{min-width:0}.app-combat-screen .app-combat-stage{display:flex;flex:1 1 auto;min-height:0;flex-direction:column;gap:0;padding:0;border:0;border-radius:0;background:var(--bg-primary);box-shadow:none}@keyframes app-combat-enter-banner{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes app-combat-enter-fade{0%{opacity:0}to{opacity:1}}@keyframes app-combat-enter-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.app-combat-stage[data-combat-entering=true] .app-combat-enemy-panel{animation:app-combat-enter-banner .38s var(--motion-enter-ease, ease-out) both;transform-origin:center top}.app-combat-stage[data-combat-entering=true] .app-combat-log-card{animation:app-combat-enter-fade .28s var(--motion-enter-ease, ease-out) .12s both}.app-combat-player-panel[data-combat-entering=true]{animation:app-combat-enter-rise .28s var(--motion-enter-ease, ease-out) .24s both}.app-combat-action-bar--screen.is-combat-entering{animation:app-combat-enter-rise .32s var(--motion-enter-ease, ease-out) .34s both}@media(prefers-reduced-motion:reduce){.app-combat-stage[data-combat-entering=true] .app-combat-enemy-panel,.app-combat-stage[data-combat-entering=true] .app-combat-log-card,.app-combat-player-panel[data-combat-entering=true],.app-combat-action-bar--screen.is-combat-entering{animation:none}}.app-combat-status-row{display:flex;flex:0 0 43px;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--surface-600);background:var(--surface-150);color:var(--ink-100);font-family:var(--font-label);font-size:11px;font-weight:600;letter-spacing:2px;line-height:1;text-transform:uppercase}.app-shell[data-screen-chrome-hidden=true] .app-combat-status-row{flex-basis:auto;padding-top:calc(env(safe-area-inset-top) + 14px)}.app-combat-status-row__left{display:flex;min-width:0;align-items:center;gap:8px}.app-combat-status-row__left span:first-child{color:var(--ink-100)}.app-combat-status-row strong{flex:0 0 auto;color:var(--ember-500);font:inherit;letter-spacing:2px}.app-combat-enemy-panel{position:relative;display:flex;flex:0 0 224px;min-height:0;flex-direction:column;justify-content:flex-end;gap:16px;isolation:isolate;overflow:hidden;padding:14px 22px 16px;border-bottom:1px solid var(--surface-600);background:linear-gradient(180deg,var(--ember-950) 0%,var(--bg-primary) 100%)}.app-combat-enemy-panel:before,.app-combat-enemy-panel:after{position:absolute;inset:0;z-index:-1;content:"";pointer-events:none}.app-combat-enemy-panel:before{background:linear-gradient(180deg,color-mix(in oklch,var(--bg-primary) 8%,transparent) 0%,transparent 36%,color-mix(in oklch,var(--bg-primary) 54%,transparent) 80%,var(--bg-primary) 100%),linear-gradient(0deg,color-mix(in oklch,var(--bg-primary) 86%,transparent) 0%,color-mix(in oklch,var(--bg-primary) 46%,transparent) 28%,transparent 64%)}.app-combat-enemy-panel:after{background:linear-gradient(0deg,color-mix(in oklch,var(--ember-950) 72%,transparent) 0%,color-mix(in oklch,var(--ember-950) 24%,transparent) 38%,transparent 72%);opacity:.64}.app-combat-enemy-panel__art{position:absolute;inset:0 0 auto;z-index:-2;display:block;width:100%;height:190px;object-fit:cover;object-position:center top;filter:saturate(.96) contrast(1.06) brightness(.92)}.app-combat-enemy-panel__atmosphere{position:absolute;inset:0;z-index:0;width:100%;height:100%;pointer-events:none;mix-blend-mode:screen;opacity:.85}.app-combat-enemy-panel__identity{position:relative;z-index:1;display:flex;align-items:flex-end;gap:12px;min-width:0}.app-combat-enemy-panel__portrait{display:grid;width:36px;height:36px;flex:0 0 36px;place-items:center;border:1px solid var(--ember-700);border-radius:1px;background:var(--ember-950);color:var(--ember-500)}.app-combat-enemy-panel[data-rank=elite],.app-combat-enemy-panel[data-rank=rare],.app-combat-enemy-panel[data-rank=boss]{box-shadow:inset 0 0 0 2px var(--rank-frame, transparent)}.app-combat-enemy-panel[data-rank=elite]{--rank-frame: color-mix(in oklch, var(--citrine-500) 70%, transparent)}.app-combat-enemy-panel[data-rank=rare]{--rank-frame: color-mix(in oklch, var(--frost-200) 70%, transparent)}.app-combat-enemy-panel[data-rank=rare-elite]{box-shadow:inset 0 0 0 2px color-mix(in oklch,var(--frost-200) 75%,transparent),inset 0 0 0 4px color-mix(in oklch,var(--citrine-500) 65%,transparent)}.app-combat-enemy-panel[data-rank=boss]{--rank-frame: color-mix(in oklch, var(--ember-600) 78%, transparent)}.app-combat-enemy-panel[data-rank=elite] .app-combat-enemy-panel__portrait,.app-combat-enemy-panel[data-rank=rare-elite] .app-combat-enemy-panel__portrait{border-color:color-mix(in oklch,var(--citrine-500) 65%,var(--ember-700));color:color-mix(in oklch,var(--citrine-500) 70%,var(--ember-500))}.app-combat-enemy-panel[data-rank=rare] .app-combat-enemy-panel__portrait{border-color:color-mix(in oklch,var(--frost-200) 60%,var(--ember-700));color:color-mix(in oklch,var(--frost-200) 65%,var(--ember-500))}.app-combat-enemy-panel[data-rank=boss] .app-combat-enemy-panel__portrait{border-color:color-mix(in oklch,var(--ember-600) 70%,var(--ember-700));color:color-mix(in oklch,var(--ember-600) 75%,var(--ember-500))}.app-combat-enemy-panel__copy{display:flex;min-width:0;flex:1 1 auto;flex-direction:column;gap:6px}.app-combat-enemy-panel__copy>div:first-child{display:flex;min-width:0;flex-direction:column;gap:3px}.app-combat-enemy-panel__copy h2,.app-combat-player-panel__identity h2{min-width:0;margin:0;overflow:hidden;color:var(--ink-50);font-family:var(--font-display);line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.app-combat-enemy-panel__copy h2{font-size:16px;font-weight:600;letter-spacing:0;line-height:1.35}.app-combat-enemy-panel__copy span,.app-combat-enemy-panel__copy p,.app-combat-player-panel__identity span,.app-combat-meter-block__label,.app-combat-player-meter__label,.app-combat-log-card__title{margin:0;color:var(--ink-500);font-family:var(--font-label);font-size:9px;font-weight:400;letter-spacing:2px;line-height:1.3;text-transform:uppercase}.app-combat-enemy-panel__copy p{color:var(--ink-300)}.app-combat-meter-block{position:relative;z-index:1;display:grid;grid-template-columns:16px minmax(0,1fr) auto;min-width:0;align-items:center;gap:8px}.app-combat-meter-block__labels{display:flex;align-items:center;justify-content:space-between;gap:10px}.app-combat-meter-block__labels strong,.app-combat-meter-block>strong,.app-combat-player-meter strong{flex:0 0 auto;color:var(--ink-100);font-family:var(--font-label);font-size:11px;font-weight:400;font-variant-numeric:tabular-nums;line-height:1.3;white-space:nowrap}.app-combat-meter{flex:1 1 auto;--app-resource-meter-height: 6px;--app-resource-meter-track: var(--surface-100);--app-resource-meter-border: var(--surface-600)}.app-combat-enemy-cast{display:flex;min-width:0;flex-direction:column;gap:4px}.app-combat-enemy-cast>div{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:8px}.app-combat-enemy-cast>div>span,.app-combat-enemy-cast strong{overflow:hidden;color:var(--ember-500);font-family:var(--font-label);font-size:10px;font-weight:600;letter-spacing:1.5px;line-height:1;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.app-combat-enemy-cast svg{flex:0 0 auto;color:var(--ember-500)}.app-combat-enemy-cast strong{align-self:flex-end;color:var(--brass-500);font-size:9px;font-weight:400}.app-combat-screen .app-combat-enemy-hints{display:flex;min-width:0;gap:6px;overflow:hidden}.app-combat-screen .app-combat-enemy-hint{display:inline-flex;min-height:18px;flex:0 1 auto;align-items:center;gap:6px;padding:3px 7px;border:1px solid var(--surface-700);border-radius:1px;background:var(--surface-150);color:var(--ink-300);font-family:var(--font-label);font-size:9px;font-weight:600;letter-spacing:1px;line-height:1;text-transform:uppercase;white-space:nowrap}.app-combat-screen .app-combat-enemy-hint svg{width:9px;height:9px;flex:0 0 9px;color:currentColor}.app-combat-screen .app-combat-enemy-hint span{color:inherit;font:inherit;letter-spacing:inherit}.app-combat-screen .app-combat-enemy-hint[data-tone=danger]{border-color:var(--ember-700);background:var(--ember-950);color:var(--ember-500)}.app-combat-screen .app-combat-enemy-hint[data-tone=warning],.app-combat-screen .app-combat-enemy-hint[data-tone=ready]{border-color:var(--brass-800);background:var(--surface-150);color:var(--brass-500)}.app-combat-screen .app-combat-log-card{display:flex;flex:1 1 auto;min-height:0;flex-direction:column;gap:16px;padding:14px 22px 16px;border:0;border-radius:0;background:var(--bg-secondary);box-shadow:none;overflow:hidden}.app-combat-screen .app-combat-log-card__head{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:12px;color:var(--text-quiet);font-family:var(--font-label);font-size:9px;font-weight:600;letter-spacing:2px;line-height:1;text-transform:uppercase}.app-combat-screen .app-combat-log-card__head span{color:inherit;font:inherit}.app-combat-log-card__entries{display:flex;flex:1 1 auto;min-height:0;flex-direction:column;justify-content:flex-end;gap:15px;overscroll-behavior:contain;overflow-y:auto;scrollbar-width:none}.app-combat-log-card__entries::-webkit-scrollbar{display:none}.app-combat-screen .app-combat-log-entry{display:grid;flex:0 0 auto;grid-template-columns:38px 12px minmax(0,1fr);align-items:center;gap:8px;padding:0;border:0;color:var(--ink-200);font-family:var(--font-label);font-size:12px;font-style:normal;font-weight:400;letter-spacing:0;line-height:15px}.app-combat-screen .app-combat-log-entry[data-newest=true]{animation:app-combat-log-entry-in .18s var(--motion-enter-ease) both;will-change:transform,opacity}.app-combat-log-entry__turn{display:block;color:var(--ink-700);font-family:var(--font-label);font-size:10px;font-style:normal;font-weight:300;line-height:13px}.app-combat-log-entry__icon{display:inline-flex;width:12px;height:12px;align-items:center;justify-content:center;color:var(--brass-500);transform-origin:center}.app-combat-screen .app-combat-log-entry[data-newest=true] .app-combat-log-entry__icon{animation:app-combat-log-icon-in .18s var(--motion-enter-ease) both;animation-delay:42ms}.app-combat-log-entry__text{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-combat-screen .app-combat-log-entry[data-tone=player],.app-combat-screen .app-combat-log-entry[data-tone=enemy]{color:var(--ink-200)}.app-combat-screen .app-combat-log-entry[data-tone=system],.app-combat-screen .app-combat-log-entry[data-log-kind=damage] .app-combat-log-entry__icon,.app-combat-screen .app-combat-log-entry[data-log-kind=damage] .app-combat-log-entry__turn{color:var(--brass-500)}.app-combat-screen .app-combat-log-entry[data-log-kind=enemy] .app-combat-log-entry__icon,.app-combat-screen .app-combat-log-entry[data-log-kind=dot] .app-combat-log-entry__icon{color:var(--ember-500)}.app-combat-screen .app-combat-log-entry[data-log-kind=enemy] .app-combat-log-entry__text,.app-combat-screen .app-combat-log-entry[data-log-kind=dot] .app-combat-log-entry__text{color:var(--ember-400)}.app-combat-screen .app-combat-log-entry[data-log-kind=control] .app-combat-log-entry__icon{color:var(--ember-500)}.app-combat-screen .app-combat-log-entry[data-log-kind=control] .app-combat-log-entry__text{color:var(--ink-50)}.app-combat-screen .app-combat-log-entry[data-log-kind=defense] .app-combat-log-entry__icon,.app-combat-screen .app-combat-log-entry[data-log-kind=healing] .app-combat-log-entry__icon{color:var(--sage-500)}.app-combat-screen .app-combat-log-entry[data-log-kind=defense] .app-combat-log-entry__text,.app-combat-screen .app-combat-log-entry[data-log-kind=healing] .app-combat-log-entry__text{color:var(--sage-300)}.app-combat-screen .app-combat-log-entry[data-log-kind=status] .app-combat-log-entry__icon{color:var(--frost-500)}.app-combat-screen .app-combat-log-entry[data-log-kind=finish] .app-combat-log-entry__icon,.app-combat-screen .app-combat-log-entry[data-log-kind=finish] .app-combat-log-entry__text{color:var(--brass-500)}@keyframes app-combat-player-buffs-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.app-combat-player-panel{position:relative;display:flex;flex:0 0 96px;min-height:0;flex-direction:column;gap:12px;justify-content:center;padding:12px 20px;border-top:1px solid var(--surface-600);border-bottom:0;background:var(--bg-primary);transition:flex-basis .22s var(--motion-change-ease),gap .22s var(--motion-change-ease)}.app-combat-player-panel__cast{position:absolute;top:-1px;left:0;right:0;height:1px;transform:scaleX(0);transform-origin:left center;animation:app-combat-cast-fill var(--combat-cast-duration, 1.5s) linear forwards;pointer-events:none;z-index:2}.app-combat-player-panel__cast[data-cast-tone=player]{background:var(--brass-500);box-shadow:0 0 6px #d0a85c73}.app-combat-player-panel__cast[data-cast-tone=enemy]{background:var(--ember-500);box-shadow:0 0 6px #d6604073;transform-origin:right center}@keyframes app-combat-cast-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media(prefers-reduced-motion:reduce){.app-combat-player-panel__cast{animation:none;transform:scaleX(1)}}.app-combat-player-panel[data-has-buffs=true]{flex-basis:124px;gap:16px}.app-combat-player-panel__top{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:12px}.app-combat-player-meter{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:6px}.app-combat-player-panel__identity{display:flex;min-width:0;flex:1 1 auto;flex-direction:row;align-items:baseline;justify-content:space-between;gap:12px}.app-combat-player-panel__identity h2{font-size:12px}.app-combat-player-panel__tempo{display:none;min-height:20px;flex:0 0 auto;align-items:center;gap:6px;padding:4px 8px;border:1px solid var(--sage-800);border-radius:1px;background:var(--sage-950);color:var(--sage-500);font-family:var(--font-label);font-size:9px;font-weight:400;letter-spacing:1.2px;line-height:1;text-transform:uppercase}.app-combat-player-panel__tempo span{width:6px;height:6px;border-radius:3px;background:var(--sage-500)}.app-combat-player-panel__meters{display:flex;min-width:0;flex-direction:column;gap:8px}.app-combat-player-meter__label{width:15px;flex:0 0 15px}.app-combat-player-meter strong{width:auto;min-width:10ch;flex-basis:10ch;color:var(--ink-300);font-size:9px;text-align:right}.app-combat-player-status{display:flex;min-width:0;gap:6px;overflow:hidden;animation:app-combat-player-buffs-in .18s var(--motion-enter-ease) both;transform-origin:top left}.app-combat-player-status span{display:inline-flex;min-height:18px;flex:0 1 auto;align-items:center;padding:3px 7px;border:1px solid var(--ink-700);border-radius:2px;background:var(--surface-150);color:var(--ink-300);font-family:var(--font-label);font-size:9px;font-weight:600;letter-spacing:1px;line-height:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-combat-player-status span[data-tone=ready]{border-color:var(--sage-700);background:var(--sage-950);color:var(--sage-500)}.app-combat-player-status span[data-tone=warning]{border-color:var(--brass-700);background:var(--surface-150);color:var(--brass-500)}.app-combat-player-status span[data-tone=danger]{border-color:var(--ember-700);background:var(--ember-950);color:var(--ember-500)}.app-combat-action-bar--screen{--combat-action-slot-gap: 8px;--combat-action-slot-size: 88px;flex:0 0 calc(154px + env(safe-area-inset-bottom));gap:var(--combat-action-slot-gap);overflow:hidden;padding:12px 18px calc(14px + env(safe-area-inset-bottom));border:0;border-radius:0;background:var(--bg-primary);box-shadow:none}.app-combat-action-bar--screen .app-combat-action-bar__head{padding:0;color:var(--ink-500);font-family:var(--font-label);font-size:9px;font-weight:600;letter-spacing:2px;line-height:12px;text-transform:uppercase}.app-combat-action-bar--screen .app-combat-action-bar__head>div{gap:0}.app-combat-action-bar--screen .app-combat-action-bar__head span,.app-combat-action-bar--screen .app-combat-action-bar__head strong{color:inherit;font:inherit}.app-combat-action-bar--screen .app-combat-action-bar__heading,.app-combat-action-bar--screen .app-combat-action-bar__priority-order{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-combat-action-bar--screen .app-combat-action-bar__priority-order{display:none}.app-combat-action-bar--screen .app-combat-action-bar__status{display:block;min-height:0;padding:0;border:0;border-radius:0;background:transparent;color:var(--brass-500);font:inherit;font-weight:400;letter-spacing:2px;line-height:12px}.app-combat-action-bar--screen .app-combat-action-bar__flow-status{max-width:50%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-combat-action-bar__head>.app-combat-action-bar__flow-meta,.app-combat-action-bar--screen .app-combat-action-bar__head>.app-combat-action-bar__flow-meta{display:inline-flex;flex-direction:row;align-items:center;gap:12px;white-space:nowrap}.app-combat-action-bar--screen .app-combat-action-bar__flow-meta .app-combat-action-bar__flow-status{max-width:none}.app-combat-action-bar__mode{display:inline-flex;align-items:center;gap:6px;padding:0;border:0;background:transparent;color:var(--brass-500);font:inherit;font-weight:400;letter-spacing:2px;line-height:12px;cursor:pointer;transition:color .12s ease}.app-combat-action-bar__mode:hover{color:var(--ink-50)}.app-combat-action-bar__mode-dot{width:6px;height:6px;border-radius:50%;background:var(--ink-400);transition:background-color .12s ease,box-shadow .12s ease}.app-combat-action-bar__mode[data-mode=auto] .app-combat-action-bar__mode-dot{background:var(--sage-500);box-shadow:0 0 6px color-mix(in srgb,var(--sage-500) 70%,transparent)}.app-combat-action-bar--screen .app-combat-action-bar__grid{display:grid;width:100%;grid-auto-flow:column;grid-auto-columns:var(--combat-action-slot-size);grid-template-columns:none;grid-template-rows:var(--combat-action-slot-size);gap:var(--combat-action-slot-gap);align-items:start;justify-content:start;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;scroll-padding-inline:18px;padding-bottom:2px}.app-combat-action-bar--screen .app-combat-action-bar__grid::-webkit-scrollbar{display:none}.app-combat-action-bar--screen .app-combat-action-bar__grid>*{scroll-snap-align:start}.app-combat-action-bar--screen .app-combat-action-button{--app-combat-action-opacity: 1;--app-combat-action-scale: 1;--app-combat-action-y: 0px;display:grid;width:var(--combat-action-slot-size);height:var(--combat-action-slot-size);min-width:var(--combat-action-slot-size);min-height:var(--combat-action-slot-size);aspect-ratio:1 / 1;grid-template-columns:1fr;grid-template-rows:1fr;grid-template-areas:"slot";gap:0;align-self:start;align-items:stretch;justify-items:stretch;padding:0;border-color:var(--line-primary);border-radius:1px;background:var(--surface-150);box-shadow:none;opacity:var(--app-combat-action-opacity);text-align:center;transform:translateY(var(--app-combat-action-y)) scale(var(--app-combat-action-scale));transition:border-color var(--motion-regular) var(--motion-change-ease),opacity var(--motion-regular) var(--motion-change-ease),transform var(--motion-regular) var(--motion-change-ease)}.app-combat-action-bar--screen .app-combat-action-button{--app-combat-action-opacity: 1;--app-combat-action-y: 0;--app-combat-action-scale: 1;border-color:var(--surface-600);background:var(--bg-primary);box-shadow:none}.app-combat-action-bar--screen .app-combat-action-button:not(:disabled):active{--app-combat-action-scale: .985;transition-duration:90ms}.app-combat-action-bar--screen .app-combat-action-button[aria-disabled=true],.app-combat-action-bar--screen .app-combat-action-button:disabled{border-color:var(--surface-600);background:var(--bg-primary);opacity:1}.app-combat-action-bar--screen .app-combat-action-button[data-selected=true]{border-color:var(--brass-500);background:var(--bg-primary)}.app-combat-action-bar--screen .app-combat-action-button[data-selected=true]:after{content:none}.app-combat-action-bar--screen .app-combat-action-button__slot{position:relative;inset:auto;grid-area:slot;display:flex;width:100%;height:100%;min-width:0;min-height:0;align-items:center;justify-content:center;gap:0;color:var(--ink-500);font-family:var(--font-label);font-size:8px;font-weight:400;letter-spacing:1px}.app-combat-action-bar--screen .app-combat-action-button__slot-label{position:absolute;top:4px;left:6px;z-index:3;display:block;padding:0;border:0;background:transparent;color:var(--ink-300);font-family:var(--font-label);font-size:9px;font-weight:700;letter-spacing:.08em;line-height:1;overflow:visible;text-align:left;text-shadow:0 1px 2px rgba(0,0,0,.75);white-space:nowrap;pointer-events:none}.app-combat-action-bar--screen .app-combat-action-button[data-selected=true] .app-combat-action-button__slot-label{color:var(--brass-300)}.app-combat-action-bar--screen .app-combat-action-button[aria-disabled=true] .app-combat-action-button__slot-label{color:var(--ink-600)}.app-combat-action-bar--screen .app-combat-action-button__slot kbd{display:none}.app-combat-action-bar--screen .app-combat-action-button__icon{position:relative;display:flex;width:calc(var(--combat-action-slot-size) - 10px);height:calc(var(--combat-action-slot-size) - 10px);min-width:0;min-height:0;aspect-ratio:1;flex:0 0 calc(var(--combat-action-slot-size) - 10px);align-items:center;justify-content:center;border:0;border-radius:1px;background:var(--bg-primary);color:var(--brass-500);font-size:13px;overflow:hidden;transform-origin:center;transition:filter var(--motion-regular) var(--motion-change-ease),transform var(--motion-regular) var(--motion-change-ease)}.app-combat-action-bar--screen .app-combat-action-button__icon img{width:100%;height:100%;object-fit:cover;filter:saturate(1.08) contrast(1.06)}@property --cooldown-elapsed-angle{syntax: "<angle>"; inherits: true; initial-value: 360deg;}.app-combat-action-button__cooldown-mask{position:absolute;inset:0;pointer-events:none;background:conic-gradient(from 0deg,transparent 0deg var(--cooldown-elapsed-angle, 360deg),rgba(8,10,14,.62) var(--cooldown-elapsed-angle, 360deg) 360deg);transition:--cooldown-elapsed-angle .32s var(--motion-change-ease);z-index:1}.app-combat-action-button__lockout-wash{position:absolute;inset:0;background:#8c26266b;mix-blend-mode:multiply;opacity:0;pointer-events:none;transition:opacity .18s var(--motion-change-ease);z-index:1}.app-combat-action-button[data-lockout=true]:not([data-cooldown-active=true]) .app-combat-action-button__lockout-wash{opacity:1}.app-combat-action-bar--screen .app-combat-action-button[data-selected=true] .app-combat-action-button__icon{animation:app-combat-action-current .7s var(--motion-enter-ease) both}.app-combat-action-bar--screen .app-combat-action-button[data-selected=true] .app-combat-action-button__icon img{filter:saturate(1.14) contrast(1.08)}.app-combat-action-bar--screen .app-combat-action-button__state{display:none}.app-combat-action-bar--screen .app-combat-action-button__resource,.app-combat-action-bar--screen .app-combat-action-button__cooldown{min-width:0;min-height:0;padding:0;border:0;background:transparent;color:currentColor;font-size:8px;font-weight:400;letter-spacing:0;line-height:10px}.app-combat-action-bar--screen .app-combat-action-button__cooldown[data-ready=true]{color:color-mix(in oklch,var(--color-success) 64%,var(--ink-500))}.app-combat-action-bar--screen .app-combat-action-button__copy{display:none}.app-combat-action-bar--screen .app-combat-action-button__copy strong{max-width:100%;overflow:hidden;color:var(--ink-50);font-family:var(--font-body);font-size:10px;font-weight:600;letter-spacing:0;line-height:12px;text-overflow:ellipsis;text-transform:none;white-space:nowrap}.app-combat-action-bar--screen .app-combat-action-button__copy span{display:none}.app-combat-action-bar--screen .app-combat-action-button[aria-disabled=true] .app-combat-action-button__copy strong,.app-combat-action-bar--screen .app-combat-action-button[aria-disabled=true] .app-combat-action-button__copy span,.app-combat-action-bar--screen .app-combat-action-button[aria-disabled=true] .app-combat-action-button__slot{color:var(--ink-700)}.app-combat-action-bar__foot{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:8px;padding:0;color:var(--ink-500);font-family:var(--font-label);font-size:9px;font-weight:400;letter-spacing:2px;line-height:12px;text-transform:uppercase}.app-combat-action-bar__foot-label{flex:0 0 auto}.app-combat-action-bar__foot strong{min-width:0;overflow:hidden;color:var(--ink-300);font:inherit;letter-spacing:1px;text-align:right;text-overflow:ellipsis;white-space:nowrap}@keyframes app-combat-log-entry-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes app-combat-log-icon-in{0%{opacity:.45;transform:scale(.72)}to{opacity:1;transform:scale(1)}}@keyframes app-combat-action-current-slot{0%{transform:translate(8px) translateY(0) scale(.98)}to{transform:translate(0) translateY(var(--app-combat-action-y)) scale(var(--app-combat-action-scale))}}@keyframes app-combat-action-current{0%{filter:brightness(.96)}42%{filter:brightness(1.08)}to{filter:brightness(1)}}@media(prefers-reduced-motion:reduce){.app-combat-screen .app-combat-log-entry[data-newest=true],.app-combat-screen .app-combat-log-entry[data-newest=true] .app-combat-log-entry__icon,.app-combat-player-panel,.app-combat-player-status,.app-combat-action-bar--screen .app-combat-action-button,.app-combat-action-bar--screen .app-combat-action-button__icon{transition:none;animation:none}}.app-combat-control-row{background:var(--surface-100)}.app-combat-control-row .ds-button.app-combat-control-row__button{min-width:0;min-height:44px;height:44px;justify-content:center;gap:8px;border-color:var(--ember-700);border-radius:1px;background:var(--ember-950);color:var(--ember-500);font-family:var(--font-display);font-size:13px;font-weight:600;letter-spacing:.5px;line-height:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-combat-control-row .ds-button.app-combat-control-row__button:hover:not(:disabled),.app-combat-control-row .ds-button.app-combat-control-row__button:focus-visible{border-color:var(--brass-700);color:var(--brass-500)}.app-combat-control-row .ds-button.app-combat-control-row__button--danger{color:var(--ember-500)}.app-combat-control-row .ds-button.app-combat-control-row__button--danger:hover:not(:disabled),.app-combat-control-row .ds-button.app-combat-control-row__button--danger:focus-visible{border-color:var(--ember-700);color:var(--ember-500)}@media(max-width:379px){.app-combat-status-row,.app-combat-enemy-panel,.app-combat-log-card,.app-combat-player-panel,.app-combat-action-bar--screen,.app-combat-control-row{padding-right:14px;padding-left:14px}.app-combat-enemy-panel__copy h2,.app-combat-player-panel__identity h2{font-size:12px}.app-combat-action-bar--screen{--combat-action-slot-gap: 6px;--combat-action-slot-size: 74px}.app-combat-action-bar--screen .app-combat-action-button{padding:0}}.app-anchored-sheet{--sheet-offset: calc(100% - var(--sheet-collapsed-visible, 68px));position:fixed;bottom:0;left:50%;width:min(100%,var(--app-mobile-frame-width));z-index:15;display:flex;flex-direction:column;height:calc(100dvh - 20px);max-height:calc(100dvh - 20px);outline:none;overflow:hidden;touch-action:pan-y;transform:translate3d(-50%,var(--sheet-offset),0);transition:transform var(--motion-slow) var(--motion-enter-ease);will-change:transform}.app-anchored-sheet[data-snap=collapsed],.app-anchored-sheet[data-snap=collapsed] .app-anchored-sheet-scroll{touch-action:none}.app-anchored-sheet[data-snap=medium]{--sheet-offset: var(--sheet-medium-offset-percent, 45%)}.app-anchored-sheet[data-snap=expanded]{--sheet-offset: 0px}.app-anchored-sheet[data-dragging=true]{--sheet-offset: var(--sheet-drag-offset);transition:none;-webkit-user-select:none;user-select:none}.app-anchored-sheet[data-snap=medium] .app-anchored-sheet-scroll,.app-anchored-sheet[data-snap=expanded] .app-anchored-sheet-scroll{touch-action:pan-y}.app-anchored-sheet[data-dragging=true] .app-anchored-sheet-scroll{touch-action:none}.app-anchored-sheet>.app-anchored-sheet-handle,.app-anchored-sheet>.sheet-page-header{flex-shrink:0;touch-action:none}.app-anchored-sheet-handle{display:flex;align-items:center;justify-content:center;padding:var(--space-2) 0}.app-anchored-sheet-grip{width:44px;height:4px;background:var(--ink-700);border-radius:var(--radius-md);pointer-events:none}.app-anchored-sheet-scroll{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.app-anchored-sheet[data-docked=true]{--sheet-offset: 0px;position:absolute;bottom:0;left:0;width:100%;height:100%;max-height:none;transform:translateZ(0);touch-action:pan-y}.app-anchored-sheet[data-docked=true][data-dragging=true]{transform:translateZ(0);-webkit-user-select:auto;user-select:auto}.app-anchored-sheet[data-docked=true] .app-anchored-sheet-handle{display:none}.app-morph-fab{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));height:44px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--ember-700);border-radius:var(--radius-md);background:var(--ember-800);color:var(--ink-100);cursor:pointer;z-index:200;overflow:hidden;box-shadow:0 6px 18px #0000008c,inset 0 1px #ffffff0f;transition:width .22s var(--motion-change-ease),background var(--motion-fast) var(--motion-change-ease),border-color var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-change-ease)}.app-morph-fab[data-mode=icon]{width:44px}.app-morph-fab[data-mode=text]{width:64px}.app-morph-fab[data-docked=true]{position:absolute}.app-morph-fab[data-docked=true][data-mode=icon]{width:132px}.app-morph-fab[data-docked=true][data-mode=text]{width:96px}.app-morph-fab[data-docked=true] .app-morph-fab-content--icon{gap:var(--space-2)}.app-morph-fab-content{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;transition:opacity .22s var(--motion-change-ease),filter .22s var(--motion-change-ease);will-change:opacity,filter}.app-morph-fab-content[data-active=false]{opacity:0;filter:blur(8px)}.app-morph-fab-content[data-active=true]{opacity:1;filter:blur(0)}.app-morph-fab-content--text{font-family:var(--font-display);font-size:14px;font-weight:var(--weight-medium);letter-spacing:.5px;line-height:normal;text-transform:uppercase;color:var(--ink-100)}.app-morph-fab-label{display:none;font-family:var(--font-display);font-size:14px;font-weight:var(--weight-medium);letter-spacing:.5px;line-height:1;text-transform:uppercase;color:var(--ink-100)}.app-morph-fab[data-docked=true] .app-morph-fab-label{display:inline-flex}.app-morph-fab:hover{background:color-mix(in oklch,var(--ember-800) 70%,var(--ember-700) 30%);border-color:var(--ember-500)}.app-morph-fab:active{transform:translateY(1px)}.app-morph-fab:focus-visible{outline:2px solid var(--ember-500);outline-offset:2px}.app-morph-fab:disabled{opacity:.4;cursor:default}.app-route-sheet{gap:0;background:var(--bg-primary)}.app-route-sheet__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-5);background:var(--surface-150);border-bottom:1px solid var(--line-secondary)}.app-route-sheet__header-title{flex:1 1 auto;text-align:center;color:var(--ink-100);font-family:var(--font-mono);font-size:var(--type-xs);font-weight:var(--weight-medium);letter-spacing:.18em;text-transform:uppercase}.app-route-sheet__header-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;background:transparent;color:var(--ink-300);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--motion-fast, .16s) ease}.app-route-sheet__header-icon:hover,.app-route-sheet__header-icon:focus-visible{color:var(--ink-100);outline:none}.app-route-sheet__section{padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-3);border-bottom:1px solid var(--line-secondary);background:var(--bg-primary)}.app-route-sheet__section--strip{padding:var(--space-3)}.app-route-sheet__section-head{display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-1);color:var(--ink-300);font-family:var(--font-mono);font-size:9px;font-weight:var(--weight-medium);letter-spacing:.18em;text-transform:uppercase}.app-route-sheet__section-head strong{color:var(--ink-700);font-weight:var(--weight-medium)}.app-route-sheet__choices{display:flex;flex-direction:column;gap:var(--space-2)}.app-route-sheet__choice{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--line-secondary);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--ink-100);cursor:pointer;text-align:left;transition:background-color var(--motion-fast, .16s) ease,border-color var(--motion-fast, .16s) ease}.app-route-sheet__choice[data-selected=true]{background:var(--brass-950);border-color:var(--brass-800)}.app-route-sheet__choice[disabled]{opacity:.5;cursor:not-allowed}.app-route-sheet__choice:focus-visible{outline:2px solid var(--brass-500);outline-offset:2px}.app-route-sheet__choice-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:32px;height:32px;border:1px solid var(--brass-700);border-radius:var(--radius-sm);background:var(--brass-tile);color:var(--brass-500)}.app-route-sheet__choice-text{display:flex;flex-direction:column;gap:3px;flex:1 1 auto;min-width:0}.app-route-sheet__choice-title{color:var(--ink-100);font-family:var(--font-mono);font-size:12px;font-weight:var(--weight-medium);letter-spacing:.5px}.app-route-sheet__choice-summary{color:var(--ink-300);font-family:var(--font-body);font-size:var(--type-xs);font-style:italic;line-height:var(--leading-normal)}.app-route-sheet__choice-meta{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex:0 0 auto}.app-route-sheet__choice-time{color:var(--ink-300);font-family:var(--font-mono);font-size:10px;font-weight:var(--weight-bold)}.app-route-sheet__choice-risk{display:inline-flex;align-items:center;gap:4px;padding:2px 4px;border:1px solid var(--line-primary);border-radius:var(--radius-sm);background:var(--surface-150);color:var(--ink-300);font-family:var(--font-mono);font-size:8px;font-weight:var(--weight-medium);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}.app-route-sheet__choice-risk[data-tone=ember]{background:var(--ember-900);border-color:var(--ember-700);color:var(--ember-300)}.app-route-sheet__choice-risk[data-tone=sage]{background:var(--sage-tile);border-color:var(--sage-border);color:var(--sage-bright)}.app-route-sheet__pace{display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-1);color:var(--ink-300);font-family:var(--font-mono);font-size:9px;font-weight:var(--weight-medium);letter-spacing:.18em;text-transform:uppercase}.app-route-sheet__pace-label{color:var(--ink-300)}.app-route-sheet__pace-delta{color:var(--ink-700)}.app-route-sheet__footer{padding:var(--space-3);background:var(--bg-primary)}.app-route-sheet__cta{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;height:44px;padding:var(--space-2) var(--space-4);border:1px solid var(--ember-700);border-radius:var(--radius-md);background:var(--ember-800);color:var(--ink-100);cursor:pointer;font-family:var(--font-display);font-size:var(--type-md);font-weight:var(--weight-medium);letter-spacing:.05em;transition:background-color var(--motion-fast, .16s) ease,border-color var(--motion-fast, .16s) ease}.app-route-sheet__cta:hover:not([disabled]),.app-route-sheet__cta:focus-visible:not([disabled]){background:var(--ember-700);border-color:var(--ember-500);outline:none}.app-route-sheet__cta[disabled]{opacity:.4;cursor:not-allowed}.app-location-sheet{--ls-brass: var(--brass-500);--ls-brass-bright: var(--brass-400);--ls-brass-border: var(--brass-700);--ls-brass-tile: var(--color-surface-tinted);--ls-sage-bright: var(--sage-400);--ls-sage-border: var(--sage-700);--ls-sage-tile: var(--sage-950);--ls-ember-bright: var(--ember-500);--ls-frost: var(--frost-500);--ls-purple: var(--purple-500);--ls-purple-border: var(--purple-700);--ls-purple-tile: var(--purple-950);--ls-text-display: var(--ink-50);--ls-text-emphasis: var(--ink-100);--ls-text-primary: var(--ink-200);--ls-text-secondary: rgba(255, 255, 255, .5);--ls-text-tertiary: var(--ink-400);--ls-text-muted: var(--ink-500);--ls-text-quiet: var(--text-quiet);--ls-text-faint: var(--ink-700);--ls-surface-base: var(--bg-primary);--ls-surface-alt: var(--surface-500);--ls-divider: var(--surface-600);--ls-divider-strong: var(--line-primary);--ls-scrim-soft: rgba(16, 20, 26, .6);--ls-map-scrim: rgba(16, 20, 26, calc(var(--sheet-progress, 0) * .86));height:calc(100dvh - 146px - env(safe-area-inset-top));max-height:calc(100dvh - 146px - env(safe-area-inset-top));z-index:10;border-radius:var(--radius-2xl) var(--radius-2xl) 0 0;background:var(--ls-surface-base);border-top:1px solid var(--ls-divider-strong);box-shadow:0 -100dvh 0 100dvh var(--ls-map-scrim),0 -8px 32px #00000080,inset 0 1px #ffffff0a}.app-location-sheet--preview{--ls-map-scrim: transparent;box-shadow:0 -8px 32px #00000080,inset 0 1px #ffffff0a;height:max-content;max-height:calc(100dvh - 20px)}.app-location-sheet .app-bottom-sheet-scroll{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-bottom:28px}.app-location-sheet--preview .app-bottom-sheet-scroll{flex:0 1 auto;padding-bottom:76px}.app-location-sheet[data-snap=collapsed] .app-bottom-sheet-scroll{touch-action:none}.app-location-sheet[data-snap=medium] .app-bottom-sheet-scroll,.app-location-sheet[data-snap=expanded] .app-bottom-sheet-scroll{touch-action:pan-y}.app-location-sheet[data-dragging=true] .app-bottom-sheet-scroll{touch-action:none}.app-location-sheet>*:not(.app-bottom-sheet-scroll){flex-shrink:0}.app-location-sheet .app-anchored-sheet-handle,.app-location-sheet .app-bottom-sheet-header{touch-action:none}.app-location-sheet .app-anchored-sheet-handle{background:var(--surface-100)}.app-location-sheet .app-bottom-sheet-close svg{fill:currentColor;stroke:none}.app-location-sheet-stack{display:flex;flex-direction:column;flex-shrink:0}.app-visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-shell[data-layout=wide] .app-wide-location-inspector .app-location-sheet{inset:0;width:100%;height:100%;border-top:0;border-left:1px solid var(--ls-divider-strong);border-radius:0;box-shadow:-18px 0 30px color-mix(in oklch,var(--bg-deep) 68%,transparent),inset 1px 0 #ffffff0a;transform:translateZ(0);touch-action:pan-y}.app-shell[data-layout=wide] .app-wide-location-inspector .app-location-sheet[data-dragging=true]{transform:translateZ(0);-webkit-user-select:auto;user-select:auto}.app-shell[data-layout=wide] .app-wide-location-inspector .app-location-sheet .app-anchored-sheet-handle{display:none}.app-shell[data-layout=wide] .app-wide-location-inspector .app-location-sheet .app-bottom-sheet-header{min-height:46px;padding-inline:var(--space-4);touch-action:auto}.app-shell[data-layout=wide] .app-wide-location-inspector .app-location-sheet .app-bottom-sheet-close{display:none}.app-shell[data-layout=wide] .app-wide-location-inspector .app-location-sheet .app-bottom-sheet-scroll{padding-bottom:var(--space-5)}.app-location-sheet-docked-head{position:relative;flex:0 0 auto;display:flex;flex-direction:column;gap:6px;padding:var(--space-4) var(--space-4) var(--space-4);border-bottom:1px solid var(--ls-divider-strong);background:var(--surface-150)}.app-location-sheet-docked-back{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;height:26px;margin-bottom:6px;padding:0 10px;border:1px solid var(--ls-divider-strong);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--ink-300);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-regular);letter-spacing:var(--tracking-wide);text-transform:uppercase;cursor:pointer;transition:border-color var(--motion-fast) var(--motion-change-ease),color var(--motion-fast) var(--motion-change-ease)}.app-location-sheet-docked-back:hover,.app-location-sheet-docked-back:focus-visible{border-color:var(--brass-700);color:var(--brass-500)}.app-location-sheet-docked-back:focus-visible{outline:1px solid var(--brass-500);outline-offset:2px}.app-location-sheet-docked-copy{min-width:0;display:flex;flex-direction:column;gap:6px;padding-right:44px}.app-location-sheet-docked-eyebrow{color:var(--ink-500);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-regular);letter-spacing:var(--tracking-widest);line-height:var(--leading-tight);text-transform:uppercase}.app-location-sheet-docked-title{margin:0;color:var(--ink-50);font-family:var(--font-display);font-size:var(--type-2xl);font-weight:var(--weight-bold);letter-spacing:0;line-height:1.08;overflow-wrap:anywhere}.app-location-sheet-docked-close{position:absolute;top:var(--space-3);right:var(--space-3);width:34px;height:34px;display:grid;place-items:center;padding:0;border:var(--border-thin) solid var(--line-primary);border-radius:var(--radius-12);background:var(--surface-fill-slot);color:var(--icon-secondary);cursor:pointer;transition:border-color var(--motion-fast) var(--motion-change-ease),color var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-press-ease)}.app-location-sheet-docked-close:hover{border-color:var(--surface-border-accent);color:var(--color-currency-gold)}.app-location-sheet-docked-close:active{transform:scale(var(--motion-press-scale))}.app-location-sheet-docked-close:focus-visible{outline:1px solid var(--brass-500);outline-offset:2px}.app-location-sheet-preview{display:flex;flex-direction:column}.app-location-sheet-lore-row{padding:16px;border-bottom:1px solid var(--line-secondary)}.app-location-sheet-lore-text{margin:0;color:var(--ink-300);font-family:var(--font-quote);font-size:12px;font-style:italic;font-weight:var(--weight-regular);line-height:1.5}.app-location-sheet-tags{display:flex;align-items:center;gap:6px;padding:12px 16px;background:var(--bg-primary);border-bottom:1px solid var(--line-secondary);overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.app-location-sheet-tags::-webkit-scrollbar{display:none}.app-location-sheet-tag{display:inline-flex;align-items:center;gap:6px;padding:3px 7px;border:1px solid var(--line-primary);border-radius:var(--radius-md);background:var(--surface-150);color:var(--ls-text-secondary);font-family:var(--font-mono);font-size:var(--type-xxs);font-weight:var(--weight-medium);letter-spacing:.1em;line-height:var(--leading-tight);text-transform:uppercase;white-space:nowrap;flex:0 0 auto}.app-location-sheet-tag svg,.app-location-sheet-tag [data-icon]{color:var(--brass-500)}.app-location-sheet-tag[data-tone=ember]{background:var(--ember-900);border-color:var(--ember-700);color:var(--ember-300)}.app-location-sheet-tag[data-tone=ember] svg,.app-location-sheet-tag[data-tone=ember] [data-icon]{color:var(--ember-300)}.app-location-sheet-tag[data-tone=brass]{background:var(--ls-brass-tile);border-color:var(--ls-brass-border);color:var(--ls-brass)}.app-location-sheet-tag[data-tone=brass] svg,.app-location-sheet-tag[data-tone=brass] [data-icon]{color:var(--ls-brass)}.app-location-sheet-tag[data-tone=sage]{background:var(--sage-tile, var(--ls-sage-tile));border-color:var(--sage-border, var(--ls-sage-border));color:var(--ls-sage-bright)}.app-location-sheet-tag[data-tone=sage] svg,.app-location-sheet-tag[data-tone=sage] [data-icon]{color:var(--ls-sage-bright)}.app-location-sheet-gallery{display:flex;gap:10px;padding:10px 16px 14px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;border-bottom:1px solid var(--line-secondary);background:var(--bg-primary)}.app-location-sheet-gallery::-webkit-scrollbar{display:none}.app-location-sheet-gallery:after{flex:0 0 1px;content:""}.app-location-sheet-gallery-card{flex:0 0 auto;width:200px;height:200px;border:1px solid var(--line-secondary);border-radius:var(--radius-lg);background-color:var(--surface-100);background-position:center;background-size:cover;background-repeat:no-repeat;scroll-snap-align:start}.app-location-sheet-gallery-card:first-child{width:284px}.app-location-sheet-risk{flex:0 0 auto;display:flex;flex-direction:column;gap:8px;padding:16px;background:var(--bg-primary);border-top:1px solid var(--line-secondary)}.app-location-sheet-risk-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.app-location-sheet-risk-label{color:var(--ink-300);font-family:var(--font-mono);font-size:9px;font-weight:var(--weight-medium);letter-spacing:1px;line-height:normal;text-transform:uppercase}.app-location-sheet-risk-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 7px;border:1px solid var(--brass-700);border-radius:var(--radius-sm);background:var(--ls-brass-tile);color:var(--brass-500);font-family:var(--font-mono);font-size:9px;font-weight:var(--weight-medium);letter-spacing:.12em;line-height:var(--leading-tight);text-transform:uppercase;white-space:nowrap}.app-location-sheet-risk-pill[data-tone=ember]{border-color:var(--ember-700);background:var(--ember-900);color:var(--ember-300)}.app-location-sheet-risk-pill[data-tone=sage]{border-color:var(--sage-700);background:var(--sage-950);color:var(--sage-400)}.app-location-sheet-risk-bars{display:flex;align-items:center;gap:8px}.app-location-sheet-risk-bars>span{flex:1 1 auto;height:4px;border-radius:1px;background:var(--surface-600);transition:background-color var(--motion-fast) ease}.app-location-sheet-risk-bars>span[data-active=true]{background:var(--brass-500)}.app-location-sheet-risk-bars>span[data-active=true][data-tone=ember]{background:var(--ember-500)}.app-location-sheet-risk-bars>span[data-active=true][data-tone=sage]{background:var(--sage-400)}.app-location-sheet-zones{display:flex;flex-direction:column;gap:14px;padding:14px 16px 28px;background:var(--bg-primary)}.app-location-sheet-zone{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line-secondary);border-radius:var(--radius-lg);background:var(--bg-secondary)}.app-location-sheet-zone-eyebrow{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 14px;background:transparent;border-bottom:1px solid var(--line-secondary);font-family:var(--font-mono);font-size:9px;font-weight:var(--weight-medium);letter-spacing:1px;line-height:normal;text-transform:uppercase}.app-location-sheet-zone-eyebrow>span:first-child{color:var(--ink-100)}.app-location-sheet-zone-eyebrow>span:last-child{color:var(--ink-500);white-space:nowrap}.app-location-sheet-zone-eyebrow--pressable{width:100%;border-top:0;border-right:0;border-left:0;background:transparent;cursor:pointer;text-align:left;text-transform:inherit}.app-location-sheet-zone-eyebrow--pressable:hover .app-location-sheet-zone-eyebrow-info,.app-location-sheet-zone-eyebrow--pressable:focus-visible .app-location-sheet-zone-eyebrow-info{color:var(--ink-100)}.app-location-sheet-zone-eyebrow-label{display:inline-flex;align-items:center;gap:4px;color:var(--ink-100)}.app-location-sheet-zone-eyebrow-info{color:var(--ink-500)}.app-location-sheet-sublocation-info{padding:16px 20px 24px}.app-location-sheet-sublocation-info-summary{margin:0;color:var(--ink-300);font-family:var(--font-quote);font-size:14px;font-style:italic;font-weight:var(--weight-regular);line-height:1.5}.app-location-sheet-row-list{display:flex;flex-direction:column}.app-location-sheet-row{display:flex;align-items:center;gap:12px;width:100%;min-width:0;padding:12px;border:0;border-bottom:1px solid var(--line-secondary);background:transparent;color:inherit;text-align:left}.app-location-sheet-row-list>.app-location-sheet-row:last-child{border-bottom:0}.app-location-sheet-row--clickable,.app-location-sheet-row--objective{cursor:pointer;transition:background var(--motion-fast) var(--motion-change-ease)}.app-location-sheet-row--clickable:hover,.app-location-sheet-row--objective:hover{background:color-mix(in oklch,var(--ls-surface-alt) 70%,var(--ls-brass) 30%)}.app-location-sheet-row--clickable:focus-visible,.app-location-sheet-row--objective:focus-visible{outline:1px solid var(--ls-brass);outline-offset:-2px}.app-location-sheet-row[aria-disabled=true]{opacity:.62;cursor:default}.app-location-sheet-row[aria-disabled=true]:hover{background:transparent}.app-location-sheet-row-avatar,.app-location-sheet-row-sigil{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border:1px solid var(--line-secondary);border-radius:var(--radius-lg);background-color:var(--surface-150);background-position:center;background-size:cover;background-repeat:no-repeat;color:var(--ls-text-muted);overflow:hidden}.app-location-sheet-row-sigil{background-size:contain;background-color:transparent;border:0}.app-location-sheet-row-icon-tile{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--line-secondary);border-radius:var(--radius-lg);background:var(--bg-primary);color:var(--ls-text-display)}.app-location-sheet-row-icon-tile[data-tone=ember]{color:var(--ls-ember-bright)}.app-location-sheet-row-icon-tile[data-tone=sage]{color:var(--ls-sage-bright)}.app-location-sheet-row-icon-tile[data-tone=frost]{color:var(--frost-400)}.app-location-sheet-row-icon-tile[data-tone=brass]{color:var(--ls-brass)}.app-location-sheet-row-icon-tile[data-tone=muted]{color:var(--ls-text-muted)}.app-location-sheet-row--quest .app-location-sheet-row-icon-tile{background:var(--brass-950);border-color:var(--brass-800);color:var(--brass-500);box-shadow:0 0 7px #e2d2a133}.app-location-sheet-row-quest-indicator{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px}.app-location-sheet-row-quest-flag{color:var(--brass-500)}.app-location-sheet-row-mid{flex:1 1 auto;display:flex;min-width:0;flex-direction:column;gap:2px}.app-location-sheet-row-title{color:var(--ls-text-emphasis);font-family:var(--font-mono);font-size:11px;font-weight:var(--weight-medium);letter-spacing:.5px;line-height:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-location-sheet-row-subtitle{color:var(--ls-brass);font-family:var(--font-mono);font-size:8px;font-weight:var(--weight-regular);letter-spacing:1px;line-height:normal;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-location-sheet-row-subtitle[data-tone=muted]{color:var(--ls-text-tertiary)}.app-location-sheet-row-subtitle[data-tone=ember]{color:var(--ls-ember-bright)}.app-location-sheet-row-subtitle[data-tone=sage]{color:var(--ls-sage-bright)}.app-location-sheet-row-subtitle[data-tone=frost]{color:var(--frost-400)}.app-location-sheet-row-subtitle[data-tone=brass]{color:var(--ls-brass)}.app-location-sheet-row-status{flex:0 0 auto}.app-location-sheet-row-status[data-tone=brass]{color:var(--ls-brass)}.app-location-sheet-row-status[data-tone=sage]{color:var(--ls-sage-bright)}.app-location-sheet-row-status[data-tone=muted]{color:var(--ls-text-tertiary)}.app-location-sheet-row-caret{flex:0 0 auto;color:var(--ls-text-faint)}.app-location-sheet-view-all{display:flex;align-items:center;justify-content:flex-end;gap:4px;width:100%;padding:12px 16px;border:0;background:transparent;color:var(--ls-text-secondary);font-family:var(--font-mono);font-size:9px;font-weight:var(--weight-medium);letter-spacing:1px;line-height:normal;text-transform:uppercase;cursor:pointer;transition:color var(--motion-fast) var(--motion-change-ease)}.app-location-sheet-view-all:hover{color:var(--ls-text-emphasis)}.app-location-sheet-view-all:focus-visible{outline:1px solid var(--ls-brass);outline-offset:-2px}.app-location-sheet-route-strip{display:flex;gap:8px;padding:14px 0 14px 16px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;overscroll-behavior-x:contain;scrollbar-width:none;border-bottom:1px solid var(--line-secondary)}.app-location-sheet-route-strip::-webkit-scrollbar{display:none}.app-location-sheet-route-strip:after{flex:0 0 8px;content:""}.app-location-sheet-route-card{position:relative;flex:0 0 144px;display:flex;height:184px;flex-direction:column;justify-content:space-between;overflow:hidden;padding:10px 12px;border:1px solid var(--line-secondary);border-radius:var(--radius-lg);background-color:var(--surface-100);background-image:var(--location-route-cover);background-position:center;background-size:cover;color:inherit;text-align:left;cursor:pointer;scroll-snap-align:start;transition:border-color var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-change-ease)}.app-location-sheet-route-card:hover{border-color:color-mix(in oklch,var(--ls-brass) 42%,var(--line-secondary))}.app-location-sheet-route-card:focus-visible{outline:1px solid var(--ls-brass);outline-offset:-2px}.app-location-sheet-route-card[data-tone=ember]{border-color:var(--ls-brass-border)}.app-location-sheet-route-scrim{position:absolute;inset:0;background:linear-gradient(180deg,transparent 0%,rgba(16,20,26,.4) 40%,var(--color-overlay-heavy, rgba(16, 20, 26, .92)) 100%);pointer-events:none}.app-location-sheet-route-pill,.app-location-sheet-route-copy{position:relative;z-index:1}.app-location-sheet-route-pill{align-self:flex-end;padding:2px 6px;border:1px solid var(--line-secondary);border-radius:var(--radius-sm);background:var(--surface-100);color:var(--ls-text-tertiary);font-family:var(--font-mono);font-size:9px;font-weight:var(--weight-medium);letter-spacing:var(--tracking-wider);line-height:var(--leading-tight);text-transform:uppercase}.app-location-sheet-route-card[data-tone=ember] .app-location-sheet-route-pill{border-color:var(--ls-brass-border);background:var(--ls-brass-tile);color:var(--ls-brass)}.app-location-sheet-route-card[data-tone=sage] .app-location-sheet-route-pill{border-color:var(--ls-sage-border);background:var(--ls-sage-tile);color:var(--ls-sage-bright)}.app-location-sheet-route-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.app-location-sheet-route-copy>span:first-child{color:var(--ls-text-emphasis);font-family:var(--font-display);font-size:var(--type-md);font-weight:var(--weight-medium);letter-spacing:var(--tracking-wide);line-height:var(--leading-snug)}.app-location-sheet-route-copy>span:last-child{font-family:var(--font-mono);font-size:9px;font-weight:var(--weight-medium);letter-spacing:var(--tracking-wider);line-height:var(--leading-tight);text-transform:uppercase;color:var(--ls-text-tertiary)}.app-location-sheet-route-card[data-tone=sage] .app-location-sheet-route-copy>span:last-child{color:var(--ls-sage-bright)}.app-location-sheet-route-card[data-tone=ember] .app-location-sheet-route-copy>span:last-child{color:var(--ember-400)}.app-location-sheet-route-card[data-tone=frost] .app-location-sheet-route-copy>span:last-child{color:var(--frost-400)}.app-location-sheet-town,.app-location-sheet-town-body{display:flex;flex-direction:column}.app-town-counts{flex-shrink:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2);padding:var(--space-3) var(--space-5);background:var(--bg-primary);border-bottom:1px solid var(--ls-divider)}.app-town-count-cell{display:flex;flex-direction:column;align-items:center;gap:2px}.app-town-count-num{color:var(--ls-text-display);font-family:var(--font-display);font-size:var(--type-2xl);font-weight:var(--weight-medium);line-height:var(--leading-tight)}.app-town-count-label{color:var(--ls-text-quiet);font-family:var(--font-mono);font-size:var(--type-xxs);font-weight:var(--weight-medium);letter-spacing:var(--tracking-wider);line-height:var(--leading-tight);text-transform:uppercase}.app-town-section{padding:var(--space-3) var(--space-5) var(--space-2)}.app-town-section--npcs{background:var(--ls-surface-alt);border-bottom:1px solid var(--ls-divider)}.app-town-section--players{background:var(--ls-surface-base)}.app-town-section-label{display:flex;align-items:center;justify-content:space-between;padding:var(--space-1) 0;font-family:var(--font-mono);font-size:var(--type-xxs);font-weight:var(--weight-medium);letter-spacing:var(--tracking-wider);line-height:var(--leading-tight);text-transform:uppercase;color:var(--ls-text-quiet)}.app-town-section-meta{font-size:var(--type-9);letter-spacing:var(--tracking-wider);color:var(--ls-text-muted)}.app-town-section-meta[data-tone=brass]{color:var(--ls-brass)}.app-town-row-list{display:flex;flex-direction:column}.app-town-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) 0;border:0;border-top:1px solid var(--ls-divider);background:transparent;color:inherit;text-align:left;cursor:pointer;transition:background var(--motion-fast) var(--motion-change-ease)}.app-town-row:hover{background:color-mix(in oklch,var(--ls-surface-alt) 70%,var(--ls-brass) 30%)}.app-town-row:focus-visible{outline:1px solid var(--ls-brass);outline-offset:-2px}.app-town-row-stack{display:flex;flex-direction:column;gap:3px;min-width:0}.app-town-row-name{color:var(--ls-text-display);font-family:var(--font-body);font-size:var(--type-md);font-weight:var(--weight-medium);line-height:var(--leading-snug);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-town-row-desc{color:var(--ls-text-muted);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-regular);letter-spacing:var(--tracking-wide);line-height:var(--leading-snug);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-town-row-chip{display:inline-flex;align-items:center;justify-content:center;padding:3px 7px;border:1px solid var(--ls-text-faint);border-radius:var(--radius-md);background:var(--ls-surface-base);color:var(--ls-text-secondary);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-medium);letter-spacing:var(--tracking-wider);line-height:var(--leading-tight);white-space:nowrap}.app-town-section--players .app-town-row-chip{border-color:var(--ls-divider-strong);background:var(--bg-primary)}.app-town-row-chip[data-tone=brass]{border-color:var(--ls-brass-border);background:var(--ls-brass-tile);color:var(--ls-brass)}.app-town-row-arrow{color:var(--ls-text-muted);flex-shrink:0}.app-town-empty{margin:var(--space-3) 0;color:var(--ls-text-secondary);font-family:var(--font-body);font-size:var(--type-sm);font-style:italic}.app-screen[data-screen=quests]{flex:1;gap:0;padding:0}.app-screen-cluster--quests{min-height:100%;margin:0;gap:0}.app-quest-row:focus-visible,.app-quest-action:focus-visible{outline:var(--focus-ring);outline-offset:2px}.app-quest-log{min-height:calc(100svh - 74px - var(--app-bottom-control-footprint) - var(--app-bottom-nav-offset));overflow:hidden;border-right:0;border-left:0;border-color:var(--line-secondary);border-radius:0;background:var(--bg-primary);box-shadow:none}.app-quest-log:before{display:none}.app-quest-log__body{min-height:inherit;display:flex;flex-direction:column;gap:0;padding:0}.app-quest-log.app-mobile-card .app-quest-log__body{padding:0}.app-quest-log__rail,.app-quest-list__head,.app-quest-log .app-card-meta,.app-quest-pill,.app-quest-row__badge,.app-quest-row__progress{font-family:var(--font-mono);letter-spacing:var(--tracking-widest);text-transform:uppercase}.app-quest-log__rail{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--line-secondary);background:var(--surface-150);color:var(--ink-400);font-size:var(--type-xs);font-weight:var(--weight-regular);line-height:var(--leading-tight);letter-spacing:.2em}.app-quest-log__rail span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-quest-log__rail span:last-child{text-align:right}.app-quest-hero{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-6);border-bottom:1px solid var(--line-secondary);background:linear-gradient(180deg,var(--brass-950),var(--bg-primary))}.app-quest-hero__pills{display:flex;flex-wrap:wrap;gap:var(--space-2)}.app-quest-pill{min-height:19px;display:inline-flex;align-items:center;padding:4px 8px;border:1px solid var(--ink-700);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--ink-200);font-size:var(--type-9);font-weight:var(--weight-medium);letter-spacing:var(--tracking-widest);line-height:var(--leading-tight)}.app-quest-pill[data-tone=ready]{border-color:var(--brass-700);background:var(--brass-950);color:var(--brass-500)}.app-quest-hero h2{margin:0;color:var(--ink-50);font-family:var(--font-display);font-size:var(--type-24);font-weight:var(--weight-medium);line-height:1.02;letter-spacing:var(--tracking-wide);text-wrap:balance}.app-quest-hero__meta,.app-quest-hero__quote{margin:0;max-width:48ch;text-wrap:pretty}.app-quest-hero__meta{color:var(--ink-400);font-family:var(--font-body);font-size:var(--type-label);letter-spacing:.09em;line-height:1.35}.app-quest-hero__quote{color:var(--ink-200);font-family:var(--font-quote);font-size:13px;font-style:italic;line-height:1.55}.app-quest-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--line-secondary);background:var(--surface-150)}.app-quest-counts div{min-width:0;display:flex;flex-direction:column;align-items:center;gap:2px;padding:0 var(--space-2)}.app-quest-counts div+div{border-left:1px solid var(--line-secondary)}.app-quest-counts dt,.app-quest-counts dd{margin:0}.app-quest-counts dt{color:var(--ink-50);font-family:var(--font-display);font-size:var(--type-2xl);font-weight:var(--weight-medium);line-height:var(--leading-tight)}.app-quest-counts dd{color:var(--ink-600);font-family:var(--font-mono);font-size:var(--type-xxs);font-weight:var(--weight-medium);letter-spacing:var(--tracking-widest);line-height:var(--leading-tight);text-transform:uppercase}.app-quest-counts div[data-tone=ready] dt,.app-quest-counts div[data-tone=ready] dd{color:var(--brass-500)}.app-quest-list{display:flex;flex-direction:column;background:var(--bg-primary)}.app-quest-list__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-5) var(--space-2);color:var(--ink-600);font-size:var(--type-xxs);font-weight:var(--weight-medium);letter-spacing:.18em;line-height:var(--leading-tight)}.app-quest-list__head span:last-child{color:var(--ink-300);letter-spacing:.2em}.app-quest-row{width:100%;min-height:74px;display:grid;grid-template-columns:8px minmax(0,1fr);align-items:center;gap:14px;padding:var(--space-3) var(--space-5);border:0;border-top:1px solid var(--line-secondary);border-radius:0;background:var(--bg-primary);box-shadow:none;color:inherit;text-align:left;transition:background-color var(--motion-fast) var(--motion-change-ease),box-shadow var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-press-ease)}.app-quest-row:hover{background:var(--bg-secondary)}.app-quest-row:active{transform:translateY(1px)}.app-quest-row__sigil{width:8px;height:48px;display:block;background:var(--ember-700)}.app-quest-row[data-ready=true] .app-quest-row__sigil,.app-quest-row[data-active=true] .app-quest-row__sigil{background:var(--brass-500)}.app-quest-row:not([data-ready=true]):not([data-active=true]):nth-of-type(2n) .app-quest-row__sigil{background:var(--ink-700)}.app-quest-row[data-active=true]{background:color-mix(in oklch,var(--brass-500) 8%,var(--bg-primary));box-shadow:inset 0 1px color-mix(in oklch,var(--brass-500) 24%,transparent),inset 0 -1px color-mix(in oklch,var(--brass-500) 16%,transparent)}.app-quest-row__content{min-width:0;display:flex;flex-direction:column;gap:var(--space-1)}.app-quest-row__head,.app-quest-row__head-meta{min-width:0;display:flex;align-items:center;gap:var(--space-2)}.app-quest-row__head{justify-content:space-between}.app-quest-row__head-meta{justify-content:flex-end;flex-shrink:0;gap:6px}.app-quest-row__head strong{min-width:0;overflow:hidden;color:var(--ink-50);font-family:var(--font-display);font-size:13px;font-weight:var(--weight-medium);line-height:1.05;letter-spacing:var(--tracking-wide);text-overflow:ellipsis;white-space:nowrap}.app-quest-row[data-ready=true] .app-quest-row__head strong,.app-quest-row[data-active=true] .app-quest-row__head strong{color:var(--brass-500)}.app-quest-row__head-meta .app-card-meta,.app-quest-row__badge{min-height:18px;display:inline-flex;align-items:center;padding:0 7px;border:1px solid var(--ink-700);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--ink-200);font-size:var(--type-9);font-weight:var(--weight-medium);letter-spacing:var(--tracking-widest);line-height:16px}.app-quest-row__badge{border-color:var(--brass-700);background:var(--brass-950);color:var(--brass-500)}.app-quest-row__summary{overflow:hidden;color:var(--ink-300);font-family:var(--font-body);font-size:var(--type-label);letter-spacing:.04em;line-height:1.35;text-overflow:ellipsis;text-transform:none;white-space:nowrap}.app-quest-row__progress{display:flex;align-items:center;gap:var(--space-2);color:var(--ink-400);font-size:var(--type-9);font-weight:var(--weight-medium);letter-spacing:var(--tracking-widest);line-height:var(--leading-tight)}.app-quest-row__track{width:min(72px,24vw);height:4px;display:inline-flex;overflow:hidden;border-radius:var(--radius-sm);background:var(--surface-500)}.app-quest-row__track span{min-width:3px;background:var(--brass-500)}.app-quest-log__spacer{flex:1 1 auto;min-height:24px;border-top:1px solid var(--line-secondary);background:var(--bg-primary)}.app-quest-actions{display:flex;flex-direction:column;gap:10px;padding:var(--space-4);border-top:1px solid var(--line-secondary);background:var(--surface-100)}.app-quest-actions__primary,.app-quest-actions__secondary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.app-quest-action{min-width:0;min-height:var(--hit-target-comfortable);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:10px 16px;border:1px solid var(--line-primary);border-radius:var(--radius-sm);background:var(--surface-150);color:var(--ink-50);font-family:var(--font-mono);font-size:12px;font-weight:var(--weight-medium);line-height:var(--leading-tight);letter-spacing:.1em;transition:background-color var(--motion-fast) var(--motion-change-ease),border-color var(--motion-fast) var(--motion-change-ease),color var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-press-ease)}.app-quest-action:hover:not(:disabled){border-color:var(--brass-700);background:var(--bg-secondary)}.app-quest-action:active:not(:disabled){transform:translateY(1px)}.app-quest-action:disabled{cursor:not-allowed;opacity:.45}.app-quest-action--primary{border-color:color-mix(in oklch,var(--ember-600) 65%,var(--ember-700));background:var(--ember-700);color:var(--ink-50);font-family:var(--font-display);font-size:14px;letter-spacing:.04em}.app-quest-action--primary:hover:not(:disabled){border-color:color-mix(in oklch,var(--ember-600) 72%,var(--ink-50));background:color-mix(in oklch,var(--ember-700) 88%,var(--ink-50))}.app-quest-action--quiet{min-height:var(--hit-target-comfortable);background:var(--surface-150)}.app-bottom-sheet--quest,.app-quest-detail,.app-quest-detail-actionbar{--quest-divider: var(--line-secondary);--quest-divider-strong: var(--line-primary);--quest-surface: var(--bg-primary);--quest-surface-card: var(--bg-secondary);--quest-surface-tile: var(--surface-150);--quest-surface-spoils: var(--surface-150);--quest-surface-bar: var(--bg-tertiary)}.app-bottom-sheet--quest{display:flex;flex-direction:column;max-height:min(90dvh,760px)}.app-quest-detail{display:flex;flex-direction:column;width:100%;background:var(--quest-surface);font-family:var(--font-body)}.app-quest-detail-objective-count,.app-quest-detail-chip-label,.app-quest-detail-reward-card-count{font-variant-numeric:tabular-nums}.app-quest-detail-hero{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-5) var(--space-6);background:linear-gradient(180deg,var(--brass-950) 0%,var(--bg-primary) 100%);border-bottom:1px solid var(--quest-divider)}.app-quest-detail-hero-title{margin:0;color:var(--ink-100);font-family:var(--font-display);font-size:var(--type-2xl);font-weight:var(--weight-medium);letter-spacing:0;line-height:1.1;text-wrap:balance}.app-quest-detail-hero-quote{margin:0;color:var(--ink-300);font-family:var(--font-quote);font-size:var(--type-md);font-style:italic;font-weight:var(--weight-regular);line-height:1.5;text-wrap:pretty}.app-quest-detail-source{display:flex;align-items:center;gap:10px;padding:14px var(--space-5);background:var(--quest-surface);border-bottom:1px solid var(--quest-divider)}.app-quest-detail-source-icon{flex:0 0 auto;color:var(--brass-500)}.app-quest-detail-source-text{display:flex;flex:1 1 auto;flex-direction:column;gap:2px;min-width:0}.app-quest-detail-source-name{color:var(--ink-100);font-family:var(--font-quote);font-size:var(--type-md);font-weight:var(--weight-medium);line-height:1.2}.app-quest-detail-source-meta{color:var(--ink-500);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-regular);letter-spacing:1px;line-height:var(--leading-tight);text-transform:uppercase}.app-quest-detail-objectives{display:flex;flex-direction:column;gap:var(--space-2);padding:14px var(--space-5) var(--space-5);background:var(--quest-surface);border-bottom:1px solid var(--quest-divider)}.app-quest-detail-section-label{color:var(--ink-500);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-medium);letter-spacing:2px;line-height:var(--leading-tight);text-transform:uppercase}.app-quest-detail-objective-list{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding:0;list-style:none}.app-quest-detail-objective{display:flex;align-items:center;gap:var(--space-2);color:var(--ink-100);font-family:var(--font-quote);font-size:var(--type-md);font-weight:var(--weight-regular);line-height:1.4}.app-quest-detail-objective-checkbox{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:16px;height:16px;border:1px solid var(--ink-500);border-radius:var(--radius-sm);background:transparent;color:var(--bg-primary);transition:background var(--motion-fast) var(--motion-change-ease),border-color var(--motion-fast) var(--motion-change-ease)}.app-quest-detail-objective[data-complete=true] .app-quest-detail-objective-checkbox{border-color:var(--sage-500);background:var(--sage-500);color:var(--bg-primary)}.app-quest-detail-objective-label{flex:1 1 auto;min-width:0}.app-quest-detail-objective[data-complete=true] .app-quest-detail-objective-label{color:var(--sage-500)}.app-quest-detail-objective-count{flex:0 0 auto;color:var(--brass-500);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-bold);letter-spacing:0}.app-quest-detail-spoils{display:flex;flex-direction:column;gap:var(--space-4);padding:14px var(--space-5);background:var(--quest-surface-spoils)}.app-quest-detail-spoils-section{display:flex;flex-direction:column;gap:var(--space-2)}.app-quest-detail-spoils-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.app-quest-detail-spoils-label{color:var(--brass-500);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-medium);letter-spacing:2px;line-height:var(--leading-tight);text-transform:uppercase}.app-quest-detail-spoils-meta{color:var(--ink-500);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-regular);letter-spacing:1px;line-height:var(--leading-tight);text-transform:uppercase}.app-quest-detail-chips{display:flex;flex-wrap:wrap;gap:6px}.app-quest-detail-chip{display:inline-flex;align-items:center;gap:6px;padding:3px 7px;border:1px solid var(--line-primary);border-radius:var(--radius-md);background:var(--surface-150);color:var(--ink-100);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-medium);letter-spacing:1px;text-transform:uppercase}.app-quest-detail-chip-icon{color:var(--brass-500)}.app-quest-detail-chip-label{color:var(--ink-100)}.app-quest-detail-carousel{display:flex;gap:var(--space-2);overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;margin:0 calc(-1 * var(--space-5));padding:0 var(--space-5)}.app-quest-detail-carousel::-webkit-scrollbar{display:none}.app-quest-detail-reward-card{display:flex;flex:0 0 auto;flex-direction:column;width:140px;border:1px solid var(--line-secondary);border-radius:var(--radius-md);background:var(--surface-100);scroll-snap-align:start;overflow:hidden}.app-quest-detail-reward-card-image{position:relative;display:grid;place-items:center;width:100%;height:140px;border-bottom:1px solid var(--line-secondary);background:var(--surface-200);overflow:hidden}.app-quest-detail-reward-card-image .app-item-sprite{width:80%;height:80%;object-fit:contain}.app-quest-detail-reward-card-meta{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-1);padding:var(--space-3)}.app-quest-detail-reward-card-text{display:flex;flex:1 1 auto;flex-direction:column;gap:2px;min-width:0}.app-quest-detail-reward-card-rarity{color:var(--ink-500);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-medium);letter-spacing:2px;line-height:var(--leading-tight);text-transform:uppercase}.app-quest-detail-reward-card[data-quality=uncommon] .app-quest-detail-reward-card-rarity{color:var(--sage-500)}.app-quest-detail-reward-card[data-quality=rare] .app-quest-detail-reward-card-rarity{color:var(--frost-500)}.app-quest-detail-reward-card[data-quality=epic] .app-quest-detail-reward-card-rarity{color:var(--purple-500)}.app-quest-detail-reward-card-name{color:var(--ink-100);font-family:var(--font-display);font-size:13px;font-weight:var(--weight-medium);letter-spacing:0;line-height:var(--leading-tight);overflow-wrap:anywhere}.app-quest-detail-reward-card-count{flex:0 0 auto;color:var(--ink-100);font-family:var(--font-mono);font-size:var(--type-11);font-weight:var(--weight-medium);line-height:var(--leading-tight)}.app-quest-detail-actionbar{display:flex;gap:var(--space-2);padding:var(--space-4);background:var(--quest-surface-bar);border-top:1px solid var(--quest-divider);transition:gap .24s var(--motion-change-ease)}.app-quest-detail-actionbar[data-confirming=true]{gap:0}.app-quest-detail-accept{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);flex:1 1 auto;height:44px;max-width:100%;padding:var(--space-2) var(--space-4);border:1px solid var(--ember-700);border-radius:var(--radius-md);background:var(--ember-800);color:var(--ink-100);font-family:var(--font-display);font-size:var(--type-md);font-weight:var(--weight-medium);letter-spacing:.5px;white-space:nowrap;overflow:hidden;cursor:pointer;transition:max-width .24s var(--motion-change-ease),padding-inline .24s var(--motion-change-ease),border-inline-width .24s var(--motion-change-ease),opacity .2s var(--motion-change-ease),background var(--motion-fast) var(--motion-change-ease),border-color var(--motion-fast) var(--motion-change-ease),color var(--motion-fast) var(--motion-change-ease)}.app-quest-detail-actionbar[data-confirming=true] .app-quest-detail-accept{max-width:0;padding-inline:0;border-inline-width:0;opacity:0;pointer-events:none}.app-quest-detail-accept:hover:not(:disabled){background:var(--ember-700);border-color:var(--ember-600);color:var(--ink-50)}.app-quest-detail-accept:focus-visible{outline:2px solid var(--brass-500);outline-offset:2px}.app-quest-detail-accept:disabled{opacity:.55;cursor:not-allowed}.app-quest-detail-abandon{flex:0 1 auto;min-width:0;transition:flex-grow .24s var(--motion-change-ease),transform var(--motion-fast) var(--motion-press-ease),background-color var(--motion-fast) var(--motion-change-ease),border-color var(--motion-fast) var(--motion-change-ease),color var(--motion-fast) var(--motion-change-ease),box-shadow var(--motion-fast) var(--motion-change-ease)}.app-quest-detail-abandon[data-confirming=true]{flex-grow:1;border-color:var(--ember-600);background:color-mix(in oklch,var(--bg-secondary) 78%,var(--ember-800));color:var(--ember-200)}@media(prefers-reduced-motion:reduce){.app-quest-detail-actionbar,.app-quest-detail-accept,.app-quest-detail-abandon{transition:none}}@media(prefers-reduced-motion:reduce){.app-quest-row{transition:none}.app-quest-row:active{transform:none}}.app-morph-label{position:relative;display:inline-flex;align-items:center;justify-content:center}.app-morph-label-current{display:inline-flex;align-items:center;justify-content:center}.app-morph-label-current[data-animate=true]{animation:app-morph-label-in .22s var(--motion-change-ease) both;will-change:opacity,filter}.app-morph-label-outgoing{position:absolute;inset:0;display:inline-flex;align-items:center;justify-content:center;pointer-events:none;white-space:nowrap;animation:app-morph-label-out .22s var(--motion-change-ease) both;will-change:opacity,filter}@keyframes app-morph-label-in{0%{opacity:0;filter:blur(8px)}to{opacity:1;filter:blur(0)}}@keyframes app-morph-label-out{0%{opacity:1;filter:blur(0)}to{opacity:0;filter:blur(8px)}}@media(prefers-reduced-motion:reduce){.app-morph-label-current,.app-morph-label-outgoing{animation:none}.app-morph-label-outgoing{opacity:0}}.char-create-screen{--cc-bg: var(--color-canvas);--cc-panel: color-mix(in oklch, var(--color-surface) 96%, black);--cc-panel-strong: color-mix(in oklch, var(--color-surface-elevated) 94%, black);--cc-surface: var(--cc-panel);--cc-surface-elevated: var(--cc-panel-strong);--cc-surface-deep: oklch(14% .012 32);--cc-border: color-mix(in oklch, var(--color-frame-border) 30%, var(--color-border-secondary));--cc-border-strong: color-mix(in oklch, var(--color-text-accent) 48%, var(--color-frame-border));--cc-text: var(--color-text-primary);--cc-muted: var(--color-text-muted);--cc-muted-strong: var(--color-text-tertiary);--cc-accent: var(--color-text-accent);--cc-accent-strong: var(--color-frame-border);--cc-primary: var(--color-frame-border);--cc-success: var(--color-success);--cc-danger: var(--color-danger-bright);--cc-shadow: color-mix(in oklch, var(--color-canvas) 44%, transparent);--overlay-0: color-mix(in srgb, var(--color-canvas) 0%, transparent);--overlay-30: color-mix(in srgb, var(--color-canvas) 30%, transparent);--overlay-strong: color-mix(in srgb, var(--color-canvas) 80%, transparent);--overlay-deep: color-mix(in srgb, var(--color-canvas) 90%, transparent);width:min(100%,var(--app-mobile-frame-width, 520px));min-height:min(var(--app-mobile-frame-height, 844px),100svh);display:flex;flex-direction:column;position:relative;overflow:hidden;border:1px solid var(--line-primary);border-radius:var(--radius-xl);background:radial-gradient(circle at 18% -8%,color-mix(in oklch,var(--cc-accent) 18%,transparent),transparent 34%),radial-gradient(circle at 82% 108%,color-mix(in oklch,var(--cc-accent) 8%,transparent),transparent 38%),linear-gradient(180deg,color-mix(in oklch,var(--color-surface-elevated) 86%,black),var(--cc-bg));box-shadow:0 18px 42px #01000057;color:var(--cc-text);font-family:var(--font-quote)}.char-create-screen *{box-sizing:border-box}.char-create-screen button,.char-create-screen input,.char-create-screen select{font:inherit}.char-create-screen button{cursor:pointer}.char-create-screen :is(button,input,select):focus-visible{outline:var(--border-regular) solid var(--surface-border-accent);outline-offset:2px}.char-create-screen__body{flex:1;min-height:0;display:flex;flex-direction:column;gap:var(--space-snug);overflow-y:auto;overscroll-behavior:contain}.char-create-screen--flow .char-create-screen__body{gap:0;padding:0 0 calc(var(--space-shell) + env(safe-area-inset-bottom))}.char-create-screen__body--name{min-height:100%}.char-create-screen--welcome .char-create-screen__body,.char-create-screen--login .char-create-screen__body{padding:calc(40px + env(safe-area-inset-top)) var(--space-section) calc(var(--space-section) + env(safe-area-inset-bottom))}.char-create-screen--welcome{background:radial-gradient(circle at 50% 22%,color-mix(in oklch,var(--cc-accent) 24%,transparent),transparent 38%),radial-gradient(circle at 18% -8%,color-mix(in oklch,var(--cc-accent) 14%,transparent),transparent 34%),radial-gradient(circle at 82% 108%,color-mix(in oklch,var(--cc-accent) 10%,transparent),transparent 38%),linear-gradient(180deg,color-mix(in oklch,var(--color-surface-elevated) 86%,black),var(--cc-bg))}.char-create-screen--login{background:radial-gradient(circle at 50% 12%,color-mix(in oklch,var(--cc-accent) 20%,transparent),transparent 36%),radial-gradient(circle at 18% -8%,color-mix(in oklch,var(--cc-accent) 14%,transparent),transparent 34%),linear-gradient(180deg,color-mix(in oklch,var(--color-surface-elevated) 86%,black),var(--cc-bg))}.char-create-screen--signup .char-create-screen__body{padding:calc(var(--space-shell) + env(safe-area-inset-top)) var(--space-shell) calc(var(--space-large) + env(safe-area-inset-bottom))}.cc-screen-welcome,.cc-screen-auth,.cc-screen-signup{justify-content:space-between}.cc-welcome-stack,.cc-auth-top{display:flex;flex-direction:column;align-items:center}.cc-welcome-stack,.cc-auth-top{gap:var(--space-section)}.cc-brand{display:inline-flex;align-items:center;gap:var(--space-snug);color:var(--cc-muted);font-family:var(--font-mono);font-size:var(--type-label);font-weight:var(--weight-medium);letter-spacing:.24em;text-transform:uppercase}.cc-brand--compact{gap:6px;font-size:var(--type-9);letter-spacing:.18em}.cc-brand__mark{color:var(--cc-accent)}.cc-seal{width:200px;height:200px;display:grid;place-items:center;border-radius:var(--radius-pill);border:var(--border-regular) solid var(--cc-accent);background:radial-gradient(circle at 50% 28%,color-mix(in oklch,var(--cc-accent) 22%,transparent),transparent 62%),linear-gradient(180deg,color-mix(in oklch,var(--cc-panel-strong) 92%,black),color-mix(in oklch,var(--cc-panel) 96%,black));color:var(--cc-accent);box-shadow:0 0 0 1px color-mix(in oklch,var(--cc-accent) 28%,transparent),0 8px 18px color-mix(in oklch,var(--color-text-accent) 22%,transparent),inset 0 1px color-mix(in oklch,var(--cc-accent) 22%,transparent)}.cc-seal--compact{width:130px;height:130px;border-width:var(--border-thin);box-shadow:0 0 0 1px color-mix(in oklch,var(--cc-accent) 22%,transparent),0 6px 14px color-mix(in oklch,var(--color-text-accent) 16%,transparent),inset 0 1px color-mix(in oklch,var(--cc-accent) 18%,transparent)}.cc-screen-copy{width:100%;display:flex;flex-direction:column;gap:var(--space-tight)}.cc-screen-copy--center{align-items:center;text-align:center}.cc-eyebrow{color:var(--cc-muted-strong);font-family:var(--font-mono);font-size:var(--type-xs);font-weight:var(--weight-medium);letter-spacing:.22em;text-transform:uppercase}.cc-eyebrow--accent{color:var(--cc-accent)}.cc-title{margin:0;color:var(--cc-text);font-family:var(--font-display);font-size:var(--type-24);line-height:1.05;font-weight:var(--weight-medium);letter-spacing:.06em;text-transform:uppercase}.cc-title--compact{font-size:var(--type-22);line-height:1.05}.char-create-screen--welcome .cc-title{font-size:var(--type-32);line-height:1.2}.cc-subtitle{margin:0;color:var(--cc-muted);font-size:var(--type-sm);line-height:var(--line-body)}.char-create-screen--welcome .cc-subtitle{font-size:13px;line-height:1.6}.cc-trait-card{width:100%;padding:var(--space-medium) var(--space-shell);border:var(--border-thin) solid var(--cc-border);border-radius:var(--radius-12);background:linear-gradient(180deg,color-mix(in oklch,var(--cc-panel-strong) 86%,black),color-mix(in oklch,var(--cc-panel) 94%,black));text-align:center}.cc-trait-card__eyebrow{display:block;margin-bottom:var(--space-small);color:var(--cc-muted-strong);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-medium);letter-spacing:.18em;text-transform:uppercase}.cc-trait-card p,.cc-option-card__copy p,.cc-option-card__body,.cc-summary-card__identity-copy span,.cc-footnote{margin:0;color:var(--cc-muted);font-size:var(--type-label);line-height:1.45}.cc-screen-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-snug);padding:var(--space-snug) var(--space-medium);border-bottom:var(--border-thin) solid var(--cc-border);background:var(--cc-panel-strong)}.cc-screen-header__spacer{width:32px;height:32px;flex-shrink:0}.cc-icon-button{width:32px;height:32px;display:inline-grid;place-items:center;border:var(--border-thin) solid var(--cc-border);border-radius:var(--radius-pill);background:linear-gradient(180deg,color-mix(in oklch,var(--cc-panel-strong) 84%,black),color-mix(in oklch,var(--cc-panel) 92%,black));color:var(--cc-muted);transition:border-color var(--motion-fast) var(--motion-change-ease),background-color var(--motion-fast) var(--motion-change-ease),color var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-press-ease)}.cc-progress{flex:1;display:flex;align-items:center;gap:6px}.cc-progress__segment{flex:1;height:1px;background:var(--cc-border);transition:background-color var(--motion-regular) var(--motion-change-ease)}.cc-progress__segment.is-active{background:var(--cc-accent)}.char-create-screen--flow .cc-screen-copy{padding:var(--space-large) var(--space-large) 28px;border-bottom:var(--border-thin) solid var(--cc-border);background:linear-gradient(180deg,color-mix(in oklch,var(--color-surface-tinted) 50%,black),color-mix(in oklch,var(--cc-surface) 92%,black))}.char-create-screen--flow .cc-field-block{padding:var(--space-medium) var(--space-shell) 0}.char-create-screen--flow .cc-field-row{padding-inline:var(--space-shell)}.char-create-screen--flow .cc-chip-row{padding:var(--space-medium) var(--space-shell);border-bottom:var(--border-thin) solid var(--cc-border);background:var(--cc-surface)}.char-create-screen--flow .cc-summary-card{margin:var(--space-medium) var(--space-shell)}.cc-option-list,.cc-auth-form,.cc-auth-form__fields{display:flex;flex-direction:column;gap:var(--space-snug)}.cc-option-list{flex:1;gap:0;border-bottom:var(--border-thin) solid var(--cc-border);background:var(--cc-surface)}.cc-option-card{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-snug);min-height:86px;padding:var(--space-medium) var(--space-shell);border:0;border-bottom:var(--border-thin) solid var(--cc-border);border-radius:0;background:linear-gradient(180deg,color-mix(in oklch,var(--cc-panel-strong) 84%,black),color-mix(in oklch,var(--cc-panel) 94%,black));color:inherit;text-align:left;transition:border-color var(--motion-fast) var(--motion-change-ease),background-color var(--motion-fast) var(--motion-change-ease),box-shadow var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-press-ease)}.cc-option-card:hover{background:linear-gradient(180deg,color-mix(in oklch,var(--cc-panel-strong) 92%,black),color-mix(in oklch,var(--cc-panel) 88%,black))}.cc-option-card:active{transform:scale(var(--motion-press-scale))}.cc-option-card.is-selected{padding:var(--space-medium) var(--space-shell);border-color:var(--cc-border-strong);border-top:var(--border-thin) solid var(--cc-border-strong);border-bottom:var(--border-thin) solid var(--cc-border-strong);background:linear-gradient(180deg,color-mix(in oklch,var(--cc-accent) 9%,var(--cc-panel-strong)),color-mix(in oklch,var(--cc-panel) 92%,black));box-shadow:inset 0 1px color-mix(in oklch,var(--cc-accent) 18%,transparent);flex-direction:column;align-items:stretch}.cc-option-card.is-selected[data-class=warrior]{border-color:color-mix(in oklch,var(--color-class-warrior) 70%,var(--cc-border))}.cc-option-card.is-selected[data-class=mage]{border-color:color-mix(in oklch,var(--color-class-mage) 70%,var(--cc-border))}.cc-option-card.is-selected[data-class=priest]{border-color:color-mix(in oklch,var(--color-class-priest) 62%,var(--cc-border))}.cc-option-card.is-selected[data-class=rogue]{border-color:color-mix(in oklch,var(--color-class-rogue) 64%,var(--cc-border))}.cc-option-card--spec.is-selected{gap:var(--space-small)}.cc-option-card__top,.cc-option-card__content,.cc-option-card__heading,.cc-option-card__content--top{display:flex}.cc-option-card__content{align-items:center;gap:var(--space-snug);width:100%;min-width:0}.cc-option-card__content--top{align-items:flex-start}.cc-option-card__heading{align-items:center;gap:var(--space-small);flex-wrap:wrap}.cc-option-card__copy{min-width:0;display:flex;flex-direction:column;gap:4px}.cc-option-card__copy strong{color:var(--cc-text);font-size:15px;font-weight:var(--weight-bold)}.cc-option-card.is-selected:not(.cc-option-card--spec) .cc-option-card__copy strong{font-size:var(--type-lg)}.cc-option-card--spec:not(.is-selected) .cc-option-card__copy strong{font-size:var(--type-body)}.cc-summary-card__identity-copy strong{color:var(--cc-text);font-size:var(--type-xl);font-weight:var(--weight-bold)}.cc-option-card__chevron{flex-shrink:0;color:var(--cc-muted-strong)}.cc-option-card__icon{width:40px;height:40px;flex-shrink:0;display:grid;place-items:center;border:var(--border-thin) solid var(--cc-border);border-radius:var(--radius-12);background:color-mix(in oklch,var(--cc-surface-deep) 72%,black);color:var(--cc-muted)}.cc-option-card__icon.is-selected{background:linear-gradient(180deg,color-mix(in oklch,var(--cc-accent) 18%,var(--cc-surface-deep)),color-mix(in oklch,var(--cc-surface-deep) 88%,black));border-color:color-mix(in oklch,var(--color-text-accent) 90%,transparent);color:var(--cc-accent);box-shadow:0 0 var(--space-snug) color-mix(in srgb,var(--cc-accent) 24%,transparent)}.cc-selected-pill{display:inline-flex;align-items:center;padding:2px 5px;border:var(--border-thin) solid color-mix(in oklch,var(--cc-accent) 42%,var(--cc-border));border-radius:var(--radius-pill);background:color-mix(in oklch,var(--color-text-accent) 10%,transparent);color:var(--cc-accent);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-medium);letter-spacing:.14em}.cc-tag-row,.cc-chip-row,.cc-provider-row{display:flex;gap:6px}.cc-tag-row,.cc-provider-row{width:100%}.cc-chip-row{flex-wrap:wrap}.cc-tag,.cc-chip{display:inline-flex;align-items:center;justify-content:center;padding:4px 7px;border:var(--border-thin) solid var(--cc-border);border-radius:var(--radius-pill);background:color-mix(in oklch,var(--cc-panel-strong) 84%,black);color:var(--cc-muted);font-family:var(--font-mono);font-size:var(--type-xs);line-height:1}.cc-chip{border-radius:var(--radius-12);padding:var(--space-tight) 9px;cursor:pointer;transition:border-color var(--motion-fast) var(--motion-change-ease),background-color var(--motion-fast) var(--motion-change-ease),color var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-press-ease)}button.cc-chip:hover{border-color:color-mix(in oklch,var(--cc-accent) 36%,var(--cc-border));color:var(--cc-text);background:color-mix(in oklch,var(--cc-accent) 10%,var(--cc-panel-strong))}button.cc-chip:active{transform:scale(var(--motion-press-scale))}button.cc-chip:focus-visible{outline:var(--focus-ring);outline-offset:2px}.cc-option-card__body{font-size:var(--type-sm);line-height:var(--line-body)}.cc-spec-boot,.cc-inline-row,.cc-field-row,.cc-summary-card__header,.cc-summary-card__identity,.cc-summary-card__row,.cc-primary-button,.cc-provider-button,.cc-text-action,.cc-divider{display:flex;align-items:center}.cc-spec-boot{gap:var(--space-small);padding:var(--space-small) var(--space-snug);border:var(--border-thin) solid var(--cc-border);border-radius:var(--radius-12);background:linear-gradient(180deg,color-mix(in oklch,var(--cc-panel-strong) 86%,black),color-mix(in oklch,var(--cc-surface-deep) 92%,black))}.cc-spec-boot__icon{color:var(--color-currency-gold)}.cc-spec-boot__eyebrow{color:var(--cc-muted-strong);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-medium);letter-spacing:.14em}.cc-spec-boot__value{color:var(--cc-text);font-size:var(--type-label);font-weight:var(--weight-medium)}.cc-footer{width:100%;display:flex;flex-direction:column;gap:var(--space-small);margin-top:auto;padding:var(--space-medium);border-top:var(--border-thin) solid var(--cc-border);background:linear-gradient(180deg,transparent,color-mix(in oklch,var(--cc-surface-deep) 88%,black))}.cc-primary-button{justify-content:center;gap:var(--space-small);width:100%;min-height:var(--hit-target-comfortable);border:var(--border-thin) solid var(--cc-accent);border-radius:var(--radius-12);padding:var(--space-snug) var(--space-shell);background:linear-gradient(180deg,color-mix(in oklch,var(--cc-accent) 38%,var(--cc-panel-strong)),color-mix(in oklch,var(--cc-primary) 78%,var(--cc-panel)));color:var(--cc-text);font-family:var(--font-display);font-size:var(--type-body);font-weight:var(--weight-bold);letter-spacing:var(--tracking-wide);box-shadow:inset 0 1px color-mix(in oklch,var(--cc-accent) 28%,transparent),0 0 var(--space-snug) color-mix(in srgb,var(--cc-accent) 22%,transparent);transition:border-color var(--motion-fast) var(--motion-change-ease),background-color var(--motion-fast) var(--motion-change-ease),box-shadow var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-press-ease)}.cc-primary-button:hover:not(:disabled){border-color:color-mix(in oklch,var(--color-currency-gold) 78%,var(--cc-accent));background:linear-gradient(180deg,color-mix(in oklch,var(--cc-accent) 50%,var(--cc-panel-strong)),color-mix(in oklch,var(--cc-primary) 88%,var(--cc-panel)));box-shadow:inset 0 1px color-mix(in oklch,var(--cc-accent) 38%,transparent),0 6px 14px color-mix(in oklch,var(--color-text-accent) 22%,transparent)}.cc-primary-button:active:not(:disabled){transform:scale(var(--motion-press-scale))}.cc-primary-button:disabled,.cc-provider-button:disabled,.cc-icon-button:disabled{opacity:.5;cursor:default}.cc-text-action,.cc-link-button{padding:0;border:0;background:transparent;color:var(--cc-muted);font-size:var(--type-label);font-weight:var(--weight-regular);line-height:1;justify-content:center;gap:var(--space-tight)}.cc-link-button{display:inline-flex;align-items:center;font-size:var(--type-label);font-weight:var(--weight-medium);white-space:nowrap;cursor:pointer;transition:color var(--motion-fast) var(--motion-change-ease)}.cc-link-button:hover{color:color-mix(in oklch,var(--cc-accent) 80%,var(--cc-text));text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.cc-link-button:focus-visible{outline:var(--focus-ring);outline-offset:3px;border-radius:var(--radius-12)}.cc-text-action{font-size:var(--type-sm);line-height:1.2}.cc-text-action span,.cc-link-button,.cc-password-strength{color:var(--cc-accent)}.cc-text-action--muted{color:var(--cc-muted-strong);font-size:var(--type-label)}.cc-footnote{text-align:center;color:var(--cc-muted-strong);font-size:var(--type-xs)}.cc-field-block{display:flex;flex-direction:column;gap:6px}.cc-field-label,.cc-password-strength{font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-medium);letter-spacing:.16em;text-transform:uppercase}.cc-field-label{color:var(--cc-muted-strong)}.cc-field-row{justify-content:space-between;gap:var(--space-snug)}.cc-field-row--top{align-items:flex-end}.cc-input-shell{display:flex;align-items:center;gap:var(--space-snug);min-height:46px;padding:var(--space-snug) var(--space-snug);border:var(--border-thin) solid var(--cc-border);border-radius:var(--radius-12);background:linear-gradient(180deg,color-mix(in oklch,var(--cc-panel-strong) 86%,black),color-mix(in oklch,var(--cc-panel) 94%,black));transition:border-color var(--motion-fast) var(--motion-change-ease),box-shadow var(--motion-fast) var(--motion-change-ease)}.cc-input-shell:focus-within{border-color:var(--cc-accent);box-shadow:inset 0 0 0 var(--border-thin) color-mix(in oklch,var(--cc-accent) 30%,transparent),0 0 var(--space-snug) color-mix(in srgb,var(--cc-accent) 18%,transparent)}.cc-input-shell--large{min-height:58px}.cc-input-shell--password input{font-size:var(--type-lg);font-weight:var(--weight-bold)}.cc-input-shell input,.cc-input-shell select{width:100%;min-width:0;padding:0;border:0;outline:0;background:transparent;color:var(--cc-text);font-size:var(--type-body);font-weight:var(--weight-medium)}.cc-input-shell--large input{--touch-control-font-size: var(--type-xl);font-size:var(--type-xl);font-weight:var(--weight-bold)}.cc-input-shell select{color:var(--cc-text);appearance:none;cursor:pointer}.cc-input-shell input::placeholder{color:var(--cc-muted-strong);font-weight:var(--weight-medium);opacity:.58}.cc-input-shell:focus-within input::placeholder{opacity:.38}.cc-input-shell__icon,.cc-field-toggle{flex-shrink:0;color:var(--cc-muted-strong)}.cc-field-toggle{width:32px;height:32px;display:inline-grid;place-items:center;padding:0;border:0;border-radius:var(--radius-pill);background:color-mix(in oklch,var(--cc-surface-deep) 72%,transparent);cursor:pointer;transition:color var(--motion-fast) var(--motion-change-ease),background-color var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-press-ease)}.cc-field-toggle:hover{color:var(--cc-text);background:color-mix(in oklch,var(--cc-surface-deep) 86%,transparent)}.cc-field-toggle:active{transform:scale(var(--motion-press-scale))}.cc-field-toggle[aria-pressed=true]{color:var(--cc-accent)}.cc-field-toggle:focus-visible{outline:var(--focus-ring);outline-offset:2px}.cc-field-hint{color:var(--cc-muted-strong);font-size:var(--type-xs)}.cc-field-hint.is-success{color:var(--cc-success)}.cc-field-hint.is-danger{color:var(--cc-danger)}.cc-auth-error,.cc-auth-status{margin:2px 2px 0;line-height:1.35}.cc-auth-status[data-tone=success]{color:var(--cc-success)}.cc-reset-panel{display:flex;flex-direction:column;gap:var(--space-snug);padding:var(--space-snug);border:var(--border-thin) solid var(--cc-border);border-radius:var(--radius-12);background:linear-gradient(180deg,color-mix(in oklch,var(--cc-panel-strong) 86%,black),color-mix(in oklch,var(--cc-panel) 94%,black))}.cc-reset-panel__header,.cc-reset-panel__copy,.cc-reset-panel__fields{display:flex}.cc-reset-panel__header{align-items:flex-start;justify-content:space-between;gap:var(--space-snug)}.cc-reset-panel__copy,.cc-reset-panel__fields{flex-direction:column}.cc-reset-panel__copy{gap:var(--space-tight)}.cc-reset-panel__copy strong{color:var(--cc-text);font-family:var(--font-mono);font-size:var(--type-xs);font-weight:var(--weight-medium);letter-spacing:.16em;text-transform:uppercase}.cc-reset-panel__copy span,.cc-provider-hint{margin:0;color:var(--cc-muted);font-size:var(--type-xs);line-height:1.45}.cc-reset-panel__fields{gap:var(--space-snug)}.char-create-screen__body--name .cc-link-button{font-size:var(--type-xs);font-weight:var(--weight-regular)}.cc-status-icon--success{color:var(--cc-success)}.cc-summary-card{display:flex;flex-direction:column;gap:var(--space-snug);padding:var(--space-snug);border:var(--border-thin) solid var(--cc-border-strong);border-radius:var(--radius-12);background:linear-gradient(180deg,color-mix(in oklch,var(--cc-accent) 8%,var(--cc-panel-strong)),color-mix(in oklch,var(--cc-panel) 92%,black));box-shadow:inset 0 1px color-mix(in oklch,var(--cc-accent) 20%,transparent),0 8px 18px color-mix(in oklch,var(--color-text-accent) 14%,transparent)}.cc-summary-card__header{justify-content:space-between}.cc-summary-card__eyebrow{color:var(--cc-accent);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-medium);letter-spacing:.16em;text-transform:uppercase}.cc-summary-card__flame{color:var(--cc-accent-strong)}.cc-summary-card__portrait{width:56px;height:56px;display:grid;place-items:center;flex-shrink:0;border:var(--border-thin) solid var(--cc-accent);border-radius:var(--radius-12);background:radial-gradient(circle at 50% 32%,color-mix(in oklch,var(--cc-accent) 22%,transparent),transparent 68%),color-mix(in oklch,var(--cc-surface-deep) 78%,black);color:var(--cc-accent);box-shadow:0 0 0 1px color-mix(in oklch,var(--cc-accent) 24%,transparent),0 0 var(--space-snug) color-mix(in srgb,var(--cc-accent) 22%,transparent)}.cc-summary-card__identity{gap:var(--space-snug)}.cc-summary-card__identity-copy{display:flex;flex-direction:column;gap:var(--space-tight)}.cc-summary-card__rows{display:flex;flex-direction:column;gap:var(--space-small)}.cc-summary-card__divider{width:100%;height:1px;background:var(--cc-border)}.cc-summary-card__row{justify-content:space-between;gap:var(--space-snug)}.cc-summary-card__row span,.cc-summary-card__row strong{font-size:var(--type-label)}.cc-summary-card__row span{color:var(--cc-muted)}.cc-summary-card__row strong{color:var(--cc-text);font-weight:var(--weight-medium);text-align:right}.cc-auth-form{flex:1;justify-content:space-between}.cc-auth-form--signup{margin-top:var(--space-snug)}.char-create-screen--login .cc-inline-row .cc-link-button{font-size:var(--type-xs);font-weight:var(--weight-medium)}.char-create-screen--login .cc-inline-row .cc-checkbox-row__copy{font-size:var(--type-xs)}.char-create-screen--login .cc-provider-button{min-height:38px;font-size:var(--type-label)}.char-create-screen--login .cc-text-action{font-size:var(--type-label);line-height:1.1}.cc-inline-row{justify-content:space-between;gap:var(--space-snug);padding:var(--space-tight) 2px}.cc-checkbox-row{display:flex;align-items:center;gap:var(--space-small);color:var(--cc-muted);cursor:pointer}.cc-checkbox-row--terms{align-items:flex-start;gap:var(--space-snug);padding:var(--space-small) var(--space-tight)}.cc-checkbox-row input{position:absolute;opacity:0;pointer-events:none}.cc-checkbox-row input:focus-visible+.cc-checkbox{outline:var(--border-regular) solid var(--surface-border-accent);outline-offset:2px}.cc-checkbox{width:14px;height:14px;flex-shrink:0;display:inline-grid;place-items:center;border:var(--border-thin) solid var(--cc-border);border-radius:var(--radius-12);background:linear-gradient(180deg,color-mix(in oklch,var(--cc-panel-strong) 86%,black),color-mix(in oklch,var(--cc-panel) 92%,black))}.cc-checkbox--accent{width:16px;height:16px;color:var(--cc-text);border-color:var(--cc-accent);background:linear-gradient(180deg,color-mix(in oklch,var(--cc-accent) 26%,var(--cc-panel-strong)),color-mix(in oklch,var(--cc-primary) 78%,var(--cc-panel)));box-shadow:inset 0 1px color-mix(in oklch,var(--cc-accent) 30%,transparent)}.cc-checkbox-row__copy{font-size:var(--type-label);line-height:1}.cc-divider{gap:var(--space-small);padding:var(--space-tight) 0}.cc-divider span{flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--cc-border) 30%,var(--cc-border) 70%,transparent)}.cc-divider strong{color:var(--cc-muted-strong);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-bold);letter-spacing:.18em}.cc-provider-row{gap:var(--space-small)}.cc-provider-button{flex:1;justify-content:center;gap:6px;min-height:44px;border:var(--border-thin) solid var(--cc-border);border-radius:var(--radius-12);background:linear-gradient(180deg,color-mix(in oklch,var(--cc-panel-strong) 86%,black),color-mix(in oklch,var(--cc-panel) 94%,black));color:var(--cc-text);font-size:var(--type-sm);font-weight:var(--weight-bold);transition:border-color var(--motion-fast) var(--motion-change-ease),background-color var(--motion-fast) var(--motion-change-ease),box-shadow var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-press-ease)}.cc-provider-button:hover:not(:disabled),.cc-icon-button:hover:not(:disabled){border-color:color-mix(in oklch,var(--cc-accent) 42%,var(--cc-border));background:linear-gradient(180deg,color-mix(in oklch,var(--cc-accent) 12%,var(--cc-panel-strong)),color-mix(in oklch,var(--cc-panel) 90%,black));color:var(--cc-text);box-shadow:0 0 var(--space-small) color-mix(in srgb,var(--cc-accent) 18%,transparent)}.cc-provider-button:active:not(:disabled),.cc-icon-button:active:not(:disabled){transform:scale(var(--motion-press-scale))}.cc-provider-button--wide{width:100%}.cc-provider-hint{text-align:center}.cc-provider-button__icon--discord{color:var(--purple-400)}.cc-password-meter{display:flex;gap:var(--space-tight)}.cc-password-meter__segment{flex:1;height:3px;border-radius:var(--radius-pill);background:var(--cc-border);transition:background-color var(--motion-regular) var(--motion-change-ease),box-shadow var(--motion-regular) var(--motion-change-ease)}.cc-password-meter__segment.is-active{background:var(--cc-success);box-shadow:0 0 6px color-mix(in srgb,var(--cc-success) 36%,transparent)}@media(max-width:480px){.char-create-screen{width:100%;min-height:100svh;border-width:0;border-radius:0}.cc-title,.cc-title--compact{font-size:var(--type-22)}}@media(max-height:760px){.char-create-screen--welcome .char-create-screen__body,.char-create-screen--login .char-create-screen__body{padding-top:var(--space-section)}.cc-welcome-stack{gap:var(--space-large)}.cc-auth-top{gap:var(--space-shell)}.cc-seal{width:168px;height:168px}.cc-seal--compact{width:112px;height:112px}}.char-create-screen--scene{--cc-scene-active-band: var(--cc-scene-band);--cc-scene-image: none;--cc-scene-shift: center 28%;--cc-scene-size: cover;--cc-scene-band: 100%}.char-create-screen--scene:before,.char-create-screen--scene:after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none}.char-create-screen--scene:before{background-color:var(--cc-bg);background-image:var(--cc-scene-image);background-position:var(--cc-scene-shift);background-size:var(--cc-scene-size);background-repeat:no-repeat}.char-create-screen--scene:after{background:linear-gradient(180deg,color-mix(in oklch,var(--color-canvas) 16%,transparent) 0%,color-mix(in oklch,var(--color-canvas) 42%,transparent) calc(var(--cc-scene-active-band) * .42),color-mix(in oklch,var(--color-canvas) 86%,transparent) calc(var(--cc-scene-active-band) - 6%),var(--cc-bg) var(--cc-scene-active-band))}.char-create-screen--scene>.char-create-screen__body{position:relative;z-index:1}.cc-brand-mark{position:relative;z-index:2;display:inline-flex;align-items:center;gap:6px;align-self:flex-start;padding:4px 9px;border:var(--border-thin) solid var(--cc-border);border-radius:var(--radius-pill);background:linear-gradient(180deg,color-mix(in oklch,var(--cc-panel-strong) 86%,black),color-mix(in oklch,var(--cc-panel) 94%,black));color:var(--cc-text);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-bold);letter-spacing:.22em;text-transform:uppercase}.cc-brand-mark__mark{color:var(--cc-accent);animation:cc-brand-flame var(--motion-ambient) var(--motion-change-ease) infinite}@keyframes cc-brand-flame{0%,to{opacity:1;text-shadow:0 0 6px color-mix(in srgb,var(--cc-accent) 28%,transparent)}50%{opacity:.78;text-shadow:0 0 10px color-mix(in srgb,var(--cc-accent) 48%,transparent)}}.cc-hero-overlay{position:relative;z-index:2;display:flex;flex-direction:column;gap:var(--space-snug);margin-top:auto;max-width:38ch}.cc-hero-kicker{color:var(--cc-accent);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-bold);letter-spacing:.24em;text-transform:uppercase;text-shadow:0 1px 14px color-mix(in oklch,var(--color-canvas) 70%,transparent)}.cc-hero-title{margin:0;color:var(--ink-100);font-family:var(--font-display);font-size:var(--type-28, 28px);line-height:1;font-weight:var(--weight-bold);letter-spacing:.04em;text-transform:uppercase;text-shadow:0 2px 22px color-mix(in oklch,var(--color-canvas) 70%,transparent)}.cc-hero-flavor{margin:0;color:color-mix(in oklch,var(--cc-text) 88%,var(--cc-muted));font-family:var(--font-quote);font-size:var(--type-sm);font-style:italic;line-height:1.62;text-shadow:0 1px 14px color-mix(in oklch,var(--color-canvas) 62%,transparent)}.cc-context-strip{position:relative;z-index:2;display:flex;align-items:center;gap:var(--space-snug);padding:var(--space-snug) var(--space-shell);border-bottom:var(--border-thin) solid var(--cc-border);background:linear-gradient(180deg,color-mix(in oklch,var(--cc-panel-strong) 92%,black),color-mix(in oklch,var(--cc-panel) 96%,black));font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-bold);letter-spacing:.18em;text-transform:uppercase}.cc-context-strip__back{width:28px;height:28px;flex-shrink:0;display:inline-grid;place-items:center;border:var(--border-thin) solid var(--cc-border);border-radius:var(--radius-pill);background:linear-gradient(180deg,color-mix(in oklch,var(--cc-panel-strong) 84%,black),color-mix(in oklch,var(--cc-panel) 92%,black));color:var(--cc-muted);cursor:pointer;transition:border-color var(--motion-fast) var(--motion-change-ease),color var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-press-ease)}.cc-context-strip__back:hover{border-color:color-mix(in oklch,var(--cc-accent) 42%,var(--cc-border));color:var(--cc-text)}.cc-context-strip__back:active{transform:scale(var(--motion-press-scale))}.cc-context-strip__back:focus-visible{outline:var(--focus-ring);outline-offset:2px}.cc-context-strip__step{color:var(--cc-accent);font-variant-numeric:tabular-nums}.cc-context-strip__sep{color:var(--cc-muted-strong);opacity:.7}.cc-context-strip__label{flex:1;color:var(--cc-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cc-form-sheet{position:relative;z-index:2;margin-top:auto;display:flex;flex-direction:column;gap:var(--space-medium);padding:18px var(--space-shell) calc(var(--space-medium) + env(safe-area-inset-bottom));border-top:var(--border-thin) solid color-mix(in oklch,var(--cc-accent) 70%,var(--cc-border-strong));border-radius:var(--radius-16) var(--radius-16) 0 0;background:linear-gradient(180deg,color-mix(in oklch,var(--cc-panel-strong) 96%,black),color-mix(in oklch,var(--cc-panel) 98%,black));box-shadow:inset 0 1px color-mix(in oklch,var(--cc-accent) 24%,transparent),0 -16px 36px color-mix(in oklch,var(--color-canvas) 55%,transparent);animation:cc-sheet-rise var(--motion-slow) var(--motion-enter-ease) both}.cc-form-sheet__kicker{color:var(--cc-accent);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-bold);letter-spacing:.22em;text-transform:uppercase}.cc-form-sheet__title{margin:0;color:var(--cc-text);font-family:var(--font-display);font-size:var(--type-22);line-height:1.08;font-weight:var(--weight-bold);letter-spacing:.04em;text-transform:uppercase}.cc-form-sheet__line{margin:0;color:var(--cc-muted);font-family:var(--font-quote);font-size:12px;font-style:italic;line-height:1.55;max-width:36ch}.cc-form-sheet__fields,.cc-form-sheet__footer{display:flex;flex-direction:column;gap:var(--space-snug)}@keyframes cc-sheet-rise{0%{opacity:0;transform:translate3d(0,14%,0)}to{opacity:1;transform:translateZ(0)}}@media(prefers-reduced-motion:reduce){.cc-form-sheet,.char-create-screen--scene:before,.char-create-screen--scene:after,.cc-brand-mark__mark{animation:none}}.cc-cta-strip{position:relative;z-index:2;display:flex;flex-direction:column;gap:var(--space-small);margin-top:var(--space-medium);padding-top:var(--space-medium);border-top:var(--border-thin) solid color-mix(in oklch,var(--cc-accent) 36%,var(--cc-border))}.cc-list-card{width:100%;display:flex;align-items:stretch;gap:var(--space-snug);padding:var(--space-snug) var(--space-shell);border:0;border-bottom:var(--border-thin) solid var(--cc-border);border-radius:0;background:linear-gradient(180deg,color-mix(in oklch,var(--cc-panel-strong) 84%,black),color-mix(in oklch,var(--cc-panel) 94%,black));color:inherit;text-align:left;cursor:pointer;transition:border-color var(--motion-fast) var(--motion-change-ease),background-color var(--motion-fast) var(--motion-change-ease),box-shadow var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-press-ease)}.cc-list-card:hover{background:linear-gradient(180deg,color-mix(in oklch,var(--cc-panel-strong) 92%,black),color-mix(in oklch,var(--cc-panel) 88%,black))}.cc-list-card:active{transform:scale(var(--motion-press-scale))}.cc-list-card.is-selected{background:linear-gradient(180deg,color-mix(in oklch,var(--cc-list-card-accent, var(--cc-accent)) 14%,var(--cc-panel-strong)),color-mix(in oklch,var(--cc-panel) 92%,black));box-shadow:inset 0 1px color-mix(in oklch,var(--cc-list-card-accent, var(--cc-accent)) 26%,transparent),inset 2px 0 0 var(--cc-list-card-accent, var(--cc-accent))}.cc-list-card__icon{width:44px;height:44px;flex-shrink:0;display:grid;place-items:center;align-self:flex-start;margin-top:2px;border:var(--border-thin) solid var(--cc-border);border-radius:var(--radius-12);background:linear-gradient(180deg,color-mix(in oklch,var(--cc-panel-strong) 90%,black),color-mix(in oklch,var(--cc-surface-deep) 92%,black));color:var(--cc-muted);transition:border-color var(--motion-fast) var(--motion-change-ease),color var(--motion-fast) var(--motion-change-ease),box-shadow var(--motion-fast) var(--motion-change-ease)}.cc-list-card.is-selected .cc-list-card__icon{border-color:var(--cc-list-card-accent, var(--cc-accent));color:var(--cc-list-card-accent, var(--cc-accent));box-shadow:0 0 var(--space-snug) color-mix(in srgb,var(--cc-list-card-accent, var(--cc-accent)) 32%,transparent)}.cc-list-card__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.cc-list-card__name{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-snug)}.cc-list-card__name strong{font-family:var(--font-display);font-size:var(--type-lg);font-weight:var(--weight-bold);letter-spacing:.03em;color:var(--cc-text)}.cc-list-card.is-selected .cc-list-card__name strong{color:var(--cc-list-card-accent, var(--cc-text))}.cc-list-card__starter{font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-bold);letter-spacing:.16em;text-transform:uppercase;color:color-mix(in oklch,var(--cc-list-card-accent, var(--cc-accent)) 80%,var(--cc-muted));white-space:nowrap}.cc-list-card__summary{margin:0;color:var(--cc-muted);font-size:var(--type-sm);line-height:1.45}.cc-list-card__tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:2px}.cc-list-card__tag{display:inline-flex;align-items:center;padding:2px 6px;border:var(--border-thin) solid var(--cc-border);border-radius:var(--radius-pill);background:color-mix(in oklch,var(--cc-panel-strong) 86%,black);color:var(--cc-muted);font-family:var(--font-mono);font-size:var(--type-9);letter-spacing:.14em;text-transform:uppercase}.cc-list-card__tail{flex:0 0 auto;align-self:center;color:var(--cc-muted-strong);opacity:.7}.cc-list-card.is-selected .cc-list-card__tail{display:none}.cc-provider-rail{display:flex;gap:var(--space-small)}.cc-provider-pill{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:0 var(--space-snug);border:var(--border-thin) solid var(--cc-border);border-radius:var(--radius-12);background:linear-gradient(180deg,color-mix(in oklch,var(--cc-panel-strong) 86%,black),color-mix(in oklch,var(--cc-panel) 94%,black));color:var(--cc-text);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-bold);letter-spacing:.18em;text-transform:uppercase;cursor:pointer;transition:border-color var(--motion-fast) var(--motion-change-ease),background-color var(--motion-fast) var(--motion-change-ease),color var(--motion-fast) var(--motion-change-ease),box-shadow var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-press-ease)}.cc-provider-pill:hover{border-color:color-mix(in oklch,var(--cc-accent) 42%,var(--cc-border));background:linear-gradient(180deg,color-mix(in oklch,var(--cc-accent) 12%,var(--cc-panel-strong)),color-mix(in oklch,var(--cc-panel) 90%,black));box-shadow:0 0 var(--space-small) color-mix(in srgb,var(--cc-accent) 18%,transparent)}.cc-provider-pill:active:not(:disabled){transform:scale(var(--motion-press-scale))}.cc-provider-pill:focus-visible{outline:var(--focus-ring);outline-offset:2px}.cc-provider-pill:disabled{opacity:.45;cursor:default}.cc-provider-pill__discord{color:var(--purple-400)}.cc-provider-rail__hint{margin:0;text-align:center;color:var(--cc-muted-strong);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-medium);letter-spacing:.18em;text-transform:uppercase}.cc-form-meta{display:flex;align-items:center;justify-content:space-between;gap:var(--space-snug);padding:2px 0}.cc-switch-action{display:inline-flex;align-items:center;justify-content:center;gap:6px;align-self:center;padding:var(--space-tight) var(--space-snug);border:0;background:transparent;color:var(--cc-muted);font-family:var(--font-quote);font-size:var(--type-sm);cursor:pointer}.cc-switch-action strong{color:var(--cc-accent);font-weight:var(--weight-bold)}.cc-switch-action:hover strong{color:color-mix(in oklch,var(--cc-accent) 80%,var(--cc-text));text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.cc-switch-action:focus-visible{outline:var(--focus-ring);outline-offset:4px;border-radius:var(--radius-12)}.char-create-screen--scene>.char-create-screen__body{padding:calc(var(--space-medium) + env(safe-area-inset-top)) var(--space-shell) calc(var(--space-medium) + env(safe-area-inset-bottom));gap:var(--space-medium)}.char-create-screen--scene-form>.char-create-screen__body{padding:0;gap:0;display:flex;flex-direction:column}.char-create-screen--scene-form .cc-scene-top{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:var(--space-snug);padding:calc(var(--space-medium) + env(safe-area-inset-top)) var(--space-shell) var(--space-snug)}.char-create-screen--scene-form .cc-form-sheet{border-radius:var(--radius-16) var(--radius-16) 0 0}.cc-scene-top__back{width:32px;height:32px;display:inline-grid;place-items:center;border:var(--border-thin) solid var(--cc-border);border-radius:var(--radius-pill);background:linear-gradient(180deg,color-mix(in oklch,var(--cc-panel-strong) 86%,black),color-mix(in oklch,var(--cc-panel) 94%,black));color:var(--cc-muted);cursor:pointer;transition:border-color var(--motion-fast) var(--motion-change-ease),color var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-press-ease)}.cc-scene-top__back:hover{border-color:color-mix(in oklch,var(--cc-accent) 42%,var(--cc-border));color:var(--cc-text)}.cc-scene-top__back:active{transform:scale(var(--motion-press-scale))}.cc-scene-top__spacer{width:32px;height:32px;flex-shrink:0}.cc-scene-top__crumb{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;border:var(--border-thin) solid var(--cc-border);border-radius:var(--radius-pill);background:linear-gradient(180deg,color-mix(in oklch,var(--cc-panel-strong) 86%,black),color-mix(in oklch,var(--cc-panel) 94%,black));color:var(--cc-text);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-bold);letter-spacing:.18em;text-transform:uppercase}.cc-scene-top__step{color:var(--cc-accent)}.cc-scene-top__sep{color:var(--cc-muted-strong);opacity:.7}.char-create-screen--hud>.char-create-screen__body{padding:0;gap:0}.cc-hud-intro{position:relative;z-index:2;display:flex;flex-direction:column;gap:6px;padding:var(--space-medium) var(--space-shell)}.cc-hud-intro__title{margin:0;color:var(--cc-text);font-family:var(--font-display);font-size:var(--type-22);line-height:1.1;font-weight:var(--weight-bold);letter-spacing:.03em;text-transform:uppercase}.cc-hud-intro__sub{margin:0;color:var(--cc-muted);font-family:var(--font-quote);font-size:12px;font-style:italic;line-height:1.55;max-width:42ch}.cc-hud-list{display:flex;flex-direction:column;border-top:var(--border-thin) solid var(--cc-border)}.cc-hud-footer{display:flex;flex-direction:column;gap:var(--space-small);margin-top:auto;padding:var(--space-medium) var(--space-shell) calc(var(--space-medium) + env(safe-area-inset-bottom));border-top:var(--border-thin) solid var(--cc-border);background:linear-gradient(180deg,transparent,color-mix(in oklch,var(--cc-surface-deep) 88%,black))}.cc-list-card[data-class=warrior]{--cc-list-card-accent: var(--color-class-warrior)}.cc-list-card[data-class=mage]{--cc-list-card-accent: var(--color-class-mage)}.cc-list-card[data-class=priest]{--cc-list-card-accent: var(--color-class-priest)}.cc-list-card[data-class=rogue]{--cc-list-card-accent: var(--color-class-rogue)}@media(max-height:720px){.cc-hero-title{font-size:var(--type-28)}.cc-form-sheet{padding-top:var(--space-snug);gap:var(--space-snug)}}.app-setup-topbar{gap:var(--space-small)}.app-setup-title-row,.app-setup-class-head,.app-setup-class-stats,.app-setup-stat-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-small)}.app-setup-input{min-height:42px;padding:var(--space-snug) var(--space-medium);border:1px solid var(--line-secondary);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--ink-100);font:inherit}.app-setup-input::placeholder{color:var(--ink-500)}.app-setup-class-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-small)}.app-setup-class-card,.app-setup-stat-card{border:1px solid var(--line-secondary);border-radius:var(--radius-lg);background:color-mix(in oklch,var(--color-surface-elevated) 84%,black)}.app-setup-class-card{padding:var(--space-snug);text-align:left;display:flex;flex-direction:column;gap:var(--space-snug);color:inherit;font:inherit;cursor:pointer}.app-setup-class-card[aria-pressed=true]{border-color:var(--color-danger-bright);background:linear-gradient(180deg,color-mix(in oklch,var(--color-danger) 45%,transparent),color-mix(in oklch,var(--color-canvas) 96%,transparent))}.app-setup-class-card:hover{border-color:var(--color-danger-bright)}.app-setup-class-card[data-class=warrior][aria-pressed=true]{border-color:var(--color-class-warrior)}.app-setup-class-card[data-class=mage][aria-pressed=true]{border-color:var(--color-class-mage)}.app-setup-class-card[data-class=priest][aria-pressed=true]{border-color:var(--color-class-priest)}.app-setup-class-card[data-class=rogue][aria-pressed=true]{border-color:var(--color-class-rogue)}.app-setup-class-head{align-items:flex-start}.app-setup-class-head strong,.app-setup-stat-card strong{color:var(--color-text-primary);font-size:.84rem}.app-setup-class-head span,.app-setup-class-stats span,.app-setup-stat-card span{color:var(--color-text-muted);font-size:.72rem}.app-setup-class-stats{justify-content:flex-start;flex-wrap:wrap}.app-setup-stat-row{align-items:stretch}.app-setup-stat-card{flex:1;min-width:0;padding:var(--space-snug);display:flex;flex-direction:column;gap:5px}.app-setup-submit{width:100%;justify-content:center}.char-create-screen--s00{--cc-s00-sheet-fill: var(--surface-400);--cc-s00-sheet-bar: var(--surface-150);--cc-s00-sheet-handle: var(--surface-100);--cc-s00-input-fill: var(--surface-300);--cc-s00-input-border: var(--line-primary);--cc-s00-cta-fill: var(--ember-800);--cc-s00-cta-border: var(--ember-700);--cc-s00-brass-top: var(--brass-700);--cc-s00-brass-glow: color-mix(in srgb, var(--cc-accent) 14%, transparent)}.char-create-screen--s00.char-create-screen--scene:after{background:radial-gradient(ellipse 110% 60% at 50% 36%,var(--cc-s00-brass-glow) 0%,transparent 64%),linear-gradient(180deg,transparent 0%,transparent 30%,color-mix(in oklch,var(--color-canvas) 78%,transparent) 40%,var(--cc-bg) calc(var(--cc-scene-active-band) - 4%),var(--cc-bg) var(--cc-scene-active-band))}.char-create-screen--s00 .cc-scene-top{padding:calc(var(--space-medium) + env(safe-area-inset-top)) var(--space-shell) 0}.char-create-screen--s00 .cc-brand-mark{padding:var(--space-tight) var(--space-small);border-radius:var(--radius-md);background:var(--cc-s00-sheet-fill);font-size:var(--type-9);letter-spacing:.22em}.char-create-screen--s00 .cc-form-sheet--auth{margin:0;gap:var(--space-snug);padding:0;background:transparent;box-shadow:none;border:0;border-radius:0}.char-create-screen--s00 .cc-form-sheet__hero{display:flex;flex-direction:column;gap:var(--space-tight);padding:var(--space-medium) var(--space-shell) 0}.char-create-screen--s00 .cc-form-sheet__title{margin:0;font-family:var(--font-display);font-size:var(--type-22);line-height:1.1;font-weight:var(--weight-bold);letter-spacing:.04em;text-transform:uppercase;color:var(--cc-text)}.char-create-screen--s00 .cc-form-sheet__line{margin:0;color:var(--cc-muted);font-family:var(--font-quote);font-size:var(--type-sm);font-style:italic;line-height:1.5;max-width:38ch}.char-create-screen--s00 .cc-form-sheet__fields{display:flex;flex-direction:column;gap:var(--space-snug);padding:var(--space-medium) var(--space-shell) 0}.char-create-screen--s00 .cc-field-block{gap:var(--space-small)}.char-create-screen--s00 .cc-field-label,.char-create-screen--s00 .cc-password-strength{font-family:var(--font-mono);font-size:var(--type-11);font-weight:var(--weight-medium);letter-spacing:.16em;text-transform:uppercase}.char-create-screen--s00 .cc-field-label{color:var(--ink-300)}.char-create-screen--s00 .cc-input-shell{min-height:40px;padding:0 var(--space-snug);gap:var(--space-small);border-radius:var(--radius-md);border:var(--border-thin) solid var(--cc-s00-input-border);background:var(--cc-s00-input-fill);box-shadow:none}.char-create-screen--s00 .cc-input-shell:focus-within{border-color:color-mix(in oklch,var(--cc-accent) 70%,var(--cc-s00-input-border))}.char-create-screen--s00 .cc-input-shell input,.char-create-screen--s00 .cc-input-shell select{font-family:var(--font-quote);font-size:var(--type-md);color:var(--cc-text)}.char-create-screen--s00 .cc-input-shell[data-filled=false] input{color:var(--ink-500)}.char-create-screen--s00 .cc-input-shell[data-filled=true] input{color:var(--ink-100)}.char-create-screen--s00 .cc-input-shell input::placeholder{color:var(--ink-500)}.char-create-screen--s00 .cc-input-shell__icon,.char-create-screen--s00 .cc-field-toggle{color:var(--cc-muted)}.char-create-screen--s00 .cc-password-strength{color:var(--status-positive);font-size:var(--type-9);letter-spacing:.16em}.char-create-screen--s00 .cc-password-meter{display:flex;gap:var(--space-tight);margin-top:2px}.char-create-screen--s00 .cc-password-meter__segment{flex:1;height:4px;border-radius:var(--radius-md);background:var(--line-secondary);transition:background-color var(--motion-fast) var(--motion-change-ease)}.char-create-screen--s00 .cc-password-meter__segment.is-active{background:var(--cc-accent)}.char-create-screen--s00 .cc-form-meta{padding:0}.char-create-screen--s00 .cc-form-meta .cc-checkbox{width:14px;height:14px;border-radius:var(--radius-md);border:var(--border-thin) solid var(--brass-500);background:var(--brass-700);color:var(--ink-50)}.char-create-screen--s00 .cc-form-meta .cc-checkbox-row input:not(:checked)+.cc-checkbox{border-color:var(--cc-s00-input-border);background:var(--cc-s00-input-fill)}.char-create-screen--s00 .cc-form-meta .cc-checkbox-row__copy{font-family:var(--font-quote);font-size:var(--type-sm);color:var(--ink-300);letter-spacing:0;text-transform:none}.char-create-screen--s00 .cc-form-meta .cc-link-button{font-family:var(--font-quote);font-size:var(--type-sm);font-weight:var(--weight-regular);color:var(--cc-accent);text-transform:none;letter-spacing:0}.char-create-screen--s00 .cc-checkbox-row--terms{align-items:flex-start;gap:var(--space-small);padding-top:var(--space-tight)}.char-create-screen--s00 .cc-checkbox-row--terms .cc-checkbox--accent{width:14px;height:14px;border-radius:var(--radius-md);background:var(--brass-700);border:var(--border-thin) solid var(--brass-500);display:inline-grid;place-items:center;flex-shrink:0;margin-top:2px}.char-create-screen--s00 .cc-checkbox-row--terms .cc-checkbox-row__copy{font-family:var(--font-quote);font-size:var(--type-sm);line-height:1.5;color:var(--ink-300);letter-spacing:0;text-transform:none}.char-create-screen--s00 .cc-auth-cta-stack{display:flex;flex-direction:column;gap:var(--space-medium);padding:var(--space-medium) var(--space-shell) calc(var(--space-large) + env(safe-area-inset-bottom))}.char-create-screen--s00 .cc-auth-cta-copy{min-height:18px;margin:0;align-self:center;justify-content:center;padding:0 var(--space-snug);text-align:center;color:var(--ink-300);font-family:var(--font-quote);font-size:var(--type-md);font-style:normal;line-height:1.25}.auth-scene{position:relative;isolation:isolate;overflow:hidden;container-type:inline-size}.auth-scene>.char-create-screen__body,.auth-scene .char-create-screen__body{display:none}.auth-scene.char-create-screen--scene:before,.auth-scene.char-create-screen--scene:after{display:none}.app-auth-backdrop{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:calc(32px + env(safe-area-inset-top)) 0 0 var(--space-shell)}.app-auth-backdrop__scrim{position:absolute;inset:0;pointer-events:none}.app-auth-backdrop__hero{position:absolute;top:var(--app-auth-backdrop-top, 0px);left:50%;width:auto;height:var(--app-auth-backdrop-height, 100%);aspect-ratio:var(--app-auth-backdrop-ratio, 768 / 1376);background-color:var(--color-canvas);overflow:hidden;z-index:0;transform:translate3d(-50%,var(--auth-sheet-image-offset, 0px),0);transition:transform var(--motion-slow) var(--motion-change-ease);will-change:transform,opacity}.app-auth-backdrop__hero img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center}.app-auth-backdrop__hero--active{z-index:1;animation:app-auth-backdrop-enter .52s var(--motion-enter-ease) both}.auth-scene:has(.app-auth-sheet[data-dragging=true]) .app-auth-backdrop__hero{transition:none}.app-auth-backdrop__hero--leaving{z-index:0}@keyframes app-auth-backdrop-enter{0%{opacity:0;transform:translate3d(-50%,var(--auth-sheet-image-offset, 0px),0) scale(1.04)}to{opacity:1;transform:translate3d(-50%,var(--auth-sheet-image-offset, 0px),0) scale(1)}}@media(prefers-reduced-motion:reduce){.app-auth-backdrop__hero--active{animation:none!important}}.app-auth-backdrop__scrim{z-index:1;background-color:transparent;background-image:linear-gradient(180deg,color-mix(in oklch,var(--color-canvas) 26%,transparent),color-mix(in oklch,var(--color-canvas) 4%,transparent) 32%,color-mix(in oklch,var(--color-canvas) 30%,transparent) 62%,color-mix(in oklch,var(--color-canvas) 78%,transparent));transition:background-color var(--motion-slow) var(--motion-change-ease)}.char-create-screen--signup .app-auth-backdrop__scrim,.char-create-screen--welcome .app-auth-backdrop__scrim,.char-create-screen--class .app-auth-backdrop__scrim,.char-create-screen--name .app-auth-backdrop__scrim,.char-create-screen--awakening .app-auth-backdrop__scrim{background-color:transparent;background-image:linear-gradient(180deg,color-mix(in oklch,var(--color-canvas) 18%,transparent),color-mix(in oklch,var(--color-canvas) 2%,transparent),color-mix(in oklch,var(--color-canvas) 34%,transparent) 68%,color-mix(in oklch,var(--color-canvas) 82%,transparent))}.app-auth-backdrop__brand{position:relative;z-index:2;display:inline-flex;align-items:center;gap:6px;min-height:22px;padding:5px 8px;border:var(--border-thin) solid color-mix(in oklch,var(--line-primary) 82%,transparent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--bg-deep) 76%,transparent);color:var(--ink-300);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-bold);letter-spacing:.22em;line-height:1;text-transform:uppercase}.app-auth-backdrop__brand-mark{width:8px;height:8px;flex:0 0 auto;border:var(--border-thin) solid var(--brass-500);transform:rotate(45deg)}.app-auth-step-header{position:absolute;inset:0 0 auto;z-index:3;height:120px;pointer-events:none}.app-auth-step-header__scrim{position:absolute;inset:0;background:linear-gradient(180deg,var(--overlay-strong) 0%,var(--overlay-30) 55%,var(--overlay-0) 100%)}.app-auth-step-header__label{position:absolute;top:18px;left:0;width:100%;color:var(--ink-100);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-bold);letter-spacing:2px;line-height:1;text-align:center;text-transform:uppercase}.app-auth-sheet{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;flex-direction:column;width:100%;height:auto;max-height:none;box-sizing:border-box;padding:0;border:var(--border-thin) solid var(--line-primary);border-bottom:0;border-radius:var(--radius-xl) var(--radius-xl) 0 0;background:var(--cc-s00-sheet-fill, var(--bg-primary));box-shadow:0 -16px 32px color-mix(in oklch,var(--color-canvas) 74%,transparent);color:var(--ink-200);overflow:hidden;touch-action:pan-y;will-change:transform;transform:translate3d(0,var(--auth-sheet-drag-offset, 0px),0);transition:transform var(--motion-slow) var(--motion-change-ease);animation:app-auth-sheet-rise .62s var(--motion-enter-ease) both}.char-create-screen--s00 .sheet-page-header--auth .sheet-page-header__title{text-transform:uppercase}.app-auth-sheet-bg{position:absolute;inset:0;z-index:0;background-position:center top;background-size:cover;background-repeat:no-repeat;pointer-events:none;animation:app-auth-sheet-bg-fade .36s var(--motion-enter-ease) both}.app-auth-sheet-bg:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,color-mix(in oklch,var(--bg-primary) 30%,transparent) 0%,color-mix(in oklch,var(--bg-primary) 0%,transparent) 25%,color-mix(in oklch,var(--bg-primary) 35%,transparent) 50%,color-mix(in oklch,var(--bg-primary) 85%,transparent) 70%,var(--bg-primary) 88%,var(--bg-primary) 100%)}@keyframes app-auth-sheet-bg-fade{0%{opacity:0;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.app-auth-sheet-bg{animation:none!important}}.app-auth-sheet>.app-bottom-sheet-handle,.app-auth-sheet>.sheet-page-header,.app-auth-sheet>.app-auth-sheet-scroll{position:relative;z-index:1}@keyframes app-auth-sheet-rise{0%{transform:translate3d(0,100%,0)}to{transform:translate3d(0,var(--auth-sheet-drag-offset, 0px),0)}}.app-auth-sheet[data-dragging=true]{transition:none;animation:none;-webkit-user-select:none;user-select:none}.app-auth-sheet[data-snap=collapsed]{--auth-sheet-drag-offset: calc(100% - 88px) }.auth-scene{--auth-sheet-drag-offset: var(--sheet-drag-offset, 0px);--auth-sheet-progress: var(--sheet-progress, 1);--auth-sheet-image-offset: calc( (1 - var(--auth-sheet-progress)) * var(--auth-backdrop-pull-distance, 0px) )}@media(min-width:900px)and (min-height:640px){body:has(.auth-scene){padding:var(--space-large);overflow:hidden;background:linear-gradient(180deg,color-mix(in srgb,var(--color-canvas) 56%,transparent),color-mix(in srgb,var(--color-canvas) 34%,transparent) 42%,color-mix(in srgb,var(--color-canvas) 64%,transparent)),radial-gradient(ellipse 86% 76% at 50% 50%,color-mix(in srgb,var(--color-canvas) 30%,transparent) 0%,color-mix(in srgb,var(--color-canvas) 70%,transparent) 62%,var(--color-canvas) 100%),var(--asset-auth-crater-bowl, url(/auth/auth-bg-crater-bowl-up.jpg)) center / cover no-repeat,var(--color-canvas);background-attachment:scroll,scroll,fixed,scroll;background-blend-mode:normal}body:has(.auth-scene) #root{min-height:calc(100dvh - 48px);display:grid;place-items:center}.char-create-screen.auth-scene{width:min(393px,calc(100vw - 48px));height:min(700px,calc(100dvh - 48px));min-height:0;max-width:393px;border:var(--border-thin) solid var(--line-primary);border-radius:var(--radius-2xl);box-shadow:0 40px 120px color-mix(in oklch,var(--color-canvas) 90%,transparent),0 18px 48px color-mix(in oklch,var(--color-canvas) 88%,transparent),0 0 0 1px color-mix(in oklch,var(--ink-50) 8%,transparent);background:var(--color-canvas)}.auth-scene .app-auth-sheet{inset:auto 0 0;width:100%;height:auto;max-height:none;border:var(--border-thin) solid var(--line-primary);border-bottom:0;border-radius:var(--radius-xl) var(--radius-xl) 0 0;box-shadow:0 -16px 32px color-mix(in oklch,var(--color-canvas) 74%,transparent);transform:translate3d(0,var(--auth-sheet-drag-offset, 0px),0);animation:app-auth-sheet-rise .62s var(--motion-enter-ease) both}.auth-scene .app-auth-sheet>.app-bottom-sheet-handle{display:flex}.auth-scene .app-auth-sheet,.auth-scene .app-auth-sheet[data-dragging=true],.auth-scene .app-auth-sheet[data-snap=collapsed]{transform:translate3d(0,var(--auth-sheet-drag-offset, 0px),0)}.app-auth-backdrop__hero{aspect-ratio:var(--app-auth-backdrop-ratio, 768 / 1376);top:var(--app-auth-backdrop-top, 0px);height:var(--app-auth-backdrop-height, 100%)}}@keyframes app-auth-sheet-modal-in{0%{opacity:0;transform:translate3d(-50%,-45%,0) scale(.96)}to{opacity:1;transform:translate3d(-50%,-50%,0) scale(1)}}.app-auth-sheet-stack{position:relative;display:flex;flex-direction:column;min-height:0;width:100%;overflow:visible}.app-auth-sheet-page{display:block;width:100%;transition:transform var(--motion-regular) var(--motion-change-ease),opacity var(--motion-regular) var(--motion-change-ease);will-change:transform,opacity}.app-auth-sheet-page[data-page=char-welcome],.app-auth-sheet-page[data-page=char-class],.app-auth-sheet-page[data-page=char-awakening]{display:flex;flex-direction:column}.app-auth-sheet-page[aria-hidden=true]{pointer-events:none;opacity:0;transform:translate3d(24px,0,0)}.app-auth-sheet-page[aria-hidden=false]{transform:translateZ(0);opacity:1}.app-auth-sheet-stack[data-page=sign-up] .app-auth-sheet-page[data-page=login],.app-auth-sheet-stack[data-page=char-welcome] .app-auth-sheet-page[data-page=login],.app-auth-sheet-stack[data-page=char-welcome] .app-auth-sheet-page[data-page=sign-up],.app-auth-sheet-stack[data-page=char-class] .app-auth-sheet-page[data-page=login],.app-auth-sheet-stack[data-page=char-class] .app-auth-sheet-page[data-page=sign-up],.app-auth-sheet-stack[data-page=char-class] .app-auth-sheet-page[data-page=char-welcome],.app-auth-sheet-stack[data-page=char-name] .app-auth-sheet-page[data-page=login],.app-auth-sheet-stack[data-page=char-name] .app-auth-sheet-page[data-page=sign-up],.app-auth-sheet-stack[data-page=char-name] .app-auth-sheet-page[data-page=char-welcome],.app-auth-sheet-stack[data-page=char-name] .app-auth-sheet-page[data-page=char-class],.app-auth-sheet-stack[data-page=char-awakening] .app-auth-sheet-page[data-page=login],.app-auth-sheet-stack[data-page=char-awakening] .app-auth-sheet-page[data-page=sign-up],.app-auth-sheet-stack[data-page=char-awakening] .app-auth-sheet-page[data-page=char-welcome],.app-auth-sheet-stack[data-page=char-awakening] .app-auth-sheet-page[data-page=char-class],.app-auth-sheet-stack[data-page=char-awakening] .app-auth-sheet-page[data-page=char-name]{transform:translate3d(-24px,0,0)}.app-auth-sheet-page[aria-hidden=true]{position:absolute;inset:0}.app-auth-sheet-scroll{flex:0 0 auto;min-height:auto;overflow:visible;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y}.app-auth-sheet>.app-bottom-sheet-handle,.app-auth-sheet>.app-bottom-sheet-header{flex-shrink:0}@media(prefers-reduced-motion:reduce){.app-auth-sheet{animation:none!important;transition:none!important}}.auth-flow-crossfade{position:relative;display:grid;grid-template:"stack" 1fr / 1fr;width:min(100%,480px);height:min(var(--app-mobile-frame-height, 700px),100svh);min-height:0;margin:0 auto;border:var(--border-thin) solid var(--line-primary);border-radius:var(--radius-md);background:var(--color-canvas);overflow:hidden;container-type:inline-size;transition:width var(--auth-flow-crossfade-ms, .32s) var(--motion-change-ease),height var(--auth-flow-crossfade-ms, .32s) var(--motion-change-ease),border-color var(--auth-flow-crossfade-ms, .32s) var(--motion-change-ease),border-radius var(--auth-flow-crossfade-ms, .32s) var(--motion-change-ease)}.auth-flow-crossfade[data-immersive=true]{opacity:0;pointer-events:none;transition:opacity .9s var(--motion-exit-ease)}@media(min-width:900px){.auth-flow-crossfade{width:min(100%,600px);height:min(850px,calc(100dvh - 48px));box-shadow:0 36px 96px #01020399,0 0 0 10px color-mix(in oklch,var(--color-text-primary) 3%,transparent),inset 0 0 0 1px color-mix(in oklch,var(--color-text-primary) 4%,transparent)}}.auth-flow-crossfade__layer{grid-area:stack;display:flex;flex-direction:column;align-items:stretch;width:100%;min-width:0}.auth-flow-crossfade__layer .auth-cinematic-welcome,.auth-flow-crossfade__layer .auth-cinematic-login,.auth-flow-crossfade__layer .auth-cinematic-signup,.auth-flow-crossfade__layer .auth-cinematic-step{width:100%;height:100%;min-height:100%;border:0;border-radius:0;background:transparent;box-shadow:none;container-type:normal}@container (min-width: 480px){.auth-flow-crossfade__layer .auth-cinematic-welcome__content{padding-block:88px;padding-inline:0;max-width:400px;margin-inline:auto}.auth-flow-crossfade__layer .auth-cinematic-login__content{bottom:88px;left:0;right:0;max-width:400px;margin-inline:auto}.auth-flow-crossfade__layer .auth-cinematic-signup__content{inset:88px 0;max-width:400px;margin-inline:auto}.auth-flow-crossfade__layer .auth-cinematic-step__content{left:0;right:0;bottom:127px;max-width:400px;margin-inline:auto}.auth-flow-crossfade__layer .auth-cinematic-step__content--name{bottom:123px}.auth-flow-crossfade__layer .auth-cinematic-go-back{bottom:88px}.auth-flow-crossfade__layer .auth-cinematic-step .app-auth-backdrop__hero{width:100%;height:100%;aspect-ratio:auto;left:0;transform:none}.auth-flow-crossfade__layer .auth-cinematic-step .app-auth-backdrop__hero--active{animation-name:auth-flow-step-backdrop-enter}.auth-flow-crossfade__layer .cc-class-desktop-arrow{display:none}}@keyframes auth-flow-step-backdrop-enter{0%{opacity:0;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}.auth-awakening-fullscreen{position:fixed;inset:0;z-index:60;background:var(--color-canvas);overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(40px,6vh,88px) clamp(24px,5vw,64px);animation:auth-awakening-fullscreen-enter .9s var(--motion-enter-ease) both}.auth-awakening-fullscreen__art{position:absolute;inset:0;z-index:0;background:var(--color-canvas) var(--asset-auth-awakening-mobile, url(/auth/awakening-mobile-v11.jpg)) center top / cover no-repeat;animation:auth-awakening-art-rise 1.6s var(--motion-enter-ease) both;will-change:opacity,transform}@media(min-width:900px)and (min-height:640px){.auth-awakening-fullscreen__art{background-image:var(--asset-auth-awakening-desktop, url(/auth/awakening-desktop-v11.jpg));background-position:center center}}.auth-awakening-fullscreen__scrim{position:absolute;inset:0;z-index:1;background:radial-gradient(ellipse 70% 55% at 50% 78%,color-mix(in oklch,var(--color-canvas) 70%,transparent) 0%,color-mix(in oklch,var(--color-canvas) 40%,transparent) 45%,transparent 100%),linear-gradient(180deg,color-mix(in oklch,var(--color-canvas) 8%,transparent),color-mix(in oklch,var(--color-canvas) 24%,transparent) 35%,color-mix(in oklch,var(--color-canvas) 60%,transparent) 60%,color-mix(in oklch,var(--color-canvas) 88%,transparent));pointer-events:none}.auth-awakening-fullscreen__content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-medium);max-width:540px;margin:0 auto}.auth-awakening-fullscreen__kicker{font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-bold);letter-spacing:.24em;text-transform:uppercase;color:var(--brass-500);text-shadow:0 1px 14px color-mix(in oklch,var(--color-canvas) 70%,transparent)}.auth-awakening-fullscreen__title{margin:0;font-family:var(--font-display);font-size:var(--type-3xl);line-height:1.05;font-weight:var(--weight-bold);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-50);text-shadow:0 2px 22px color-mix(in oklch,var(--color-canvas) 70%,transparent)}.auth-awakening-fullscreen__flavor{margin:0;max-width:38ch;color:var(--ink-200);font-family:var(--font-quote);font-size:var(--type-md);font-style:italic;line-height:var(--leading-normal)}.auth-awakening-fullscreen__actions{display:flex;margin-top:var(--space-medium)}.auth-awakening-fullscreen__begin{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-small);height:48px;min-width:220px;padding:0 var(--space-large);border:var(--border-thin) solid color-mix(in oklch,var(--ember-500) 70%,var(--ember-700));border-radius:var(--radius-md);background:linear-gradient(180deg,var(--ember-700),var(--ember-800));color:var(--ink-50);font-family:var(--font-display);font-size:var(--type-md);font-weight:var(--weight-medium);letter-spacing:.04em;cursor:pointer;transition:background var(--motion-fast) var(--motion-change-ease),border-color var(--motion-fast) var(--motion-change-ease),box-shadow var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-press-ease)}.auth-awakening-fullscreen__begin:hover:not(:disabled){background:linear-gradient(180deg,var(--ember-600),var(--ember-700));border-color:var(--ember-500);box-shadow:0 0 32px color-mix(in oklch,var(--ember-500) 28%,transparent)}.auth-awakening-fullscreen__begin:active:not(:disabled){transform:scale(var(--motion-press-scale))}.auth-awakening-fullscreen__begin:disabled{opacity:.55;cursor:default}.auth-awakening-fullscreen__kicker,.auth-awakening-fullscreen__title,.auth-awakening-fullscreen__flavor,.auth-awakening-fullscreen__actions{animation:auth-awakening-line-rise .7s var(--motion-enter-ease) both;will-change:opacity,transform}.auth-awakening-fullscreen__kicker{animation-delay:.7s}.auth-awakening-fullscreen__title{animation-delay:1.1s;animation-duration:.9s}.auth-awakening-fullscreen__flavor{animation-delay:1.8s;animation-duration:.8s}.auth-awakening-fullscreen__actions{animation-delay:2.5s;animation-duration:.6s}@keyframes auth-awakening-fullscreen-enter{0%{opacity:0}to{opacity:1}}@keyframes auth-awakening-art-rise{0%{opacity:0;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes auth-awakening-line-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.auth-game-veil{position:fixed;inset:0;z-index:200;background:var(--surface-50);opacity:0;pointer-events:none;transition:opacity .7s var(--motion-change-ease)}.auth-game-veil[data-stage=leaving]{opacity:0;transition-delay:1s}.auth-game-veil[data-stage=covered],.auth-game-veil[data-stage=cinematic]{opacity:1;pointer-events:auto}.auth-game-veil[data-stage=arriving]{opacity:0}body[data-game-entry-stage=leaving] .auth-awakening-fullscreen__kicker,body[data-game-entry-stage=leaving] .auth-awakening-fullscreen__title,body[data-game-entry-stage=leaving] .auth-awakening-fullscreen__flavor,body[data-game-entry-stage=leaving] .auth-awakening-fullscreen__actions{animation:auth-awakening-line-fade .4s var(--motion-exit-ease) forwards}body[data-game-entry-stage=leaving] .auth-awakening-fullscreen__art,body[data-game-entry-stage=covered] .auth-awakening-fullscreen__art{animation:auth-awakening-art-hold 1.7s var(--motion-change-ease) forwards}@keyframes auth-awakening-line-fade{to{opacity:0;transform:translateY(-4px)}}@keyframes auth-awakening-art-hold{0%{transform:scale(1)}to{transform:scale(1.05)}}@media(prefers-reduced-motion:reduce){.auth-awakening-fullscreen,.auth-awakening-fullscreen__art,.auth-awakening-fullscreen__kicker,.auth-awakening-fullscreen__title,.auth-awakening-fullscreen__flavor,.auth-awakening-fullscreen__actions{animation:none!important}.auth-game-veil{transition-duration:.01ms!important}}.auth-flow-crossfade__layer--current{z-index:1;animation:auth-flow-crossfade-enter .32s var(--motion-enter-ease) both;will-change:opacity,transform}.auth-flow-crossfade__layer--leaving{z-index:0;pointer-events:none;animation:auth-flow-crossfade-leave .24s var(--motion-exit-ease) both;will-change:opacity,transform}.auth-flow-crossfade__layer--current[data-immersive=true]{animation-name:auth-flow-crossfade-enter-immersive;animation-duration:1.1s}.auth-flow-crossfade__layer--leaving[data-immersive=true]{animation-name:auth-flow-crossfade-leave-immersive;animation-duration:.9s}@keyframes auth-flow-crossfade-enter{0%{opacity:0;transform:scale(1.012)}to{opacity:1;transform:scale(1)}}@keyframes auth-flow-crossfade-leave{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.992)}}@keyframes auth-flow-crossfade-enter-immersive{0%{opacity:0;transform:scale(1.04)}35%{opacity:.2}to{opacity:1;transform:scale(1)}}@keyframes auth-flow-crossfade-leave-immersive{0%{opacity:1;transform:scale(1)}60%{opacity:.4}to{opacity:0;transform:scale(.96)}}@media(prefers-reduced-motion:reduce){.auth-flow-crossfade__layer--current{animation:none!important}.auth-flow-crossfade__layer--leaving{animation:none!important;opacity:0}}.char-create-screen--s00 .cc-primary-button{min-height:44px;border-radius:var(--radius-md);border:var(--border-thin) solid var(--cc-s00-cta-border);background:var(--cc-s00-cta-fill);font-family:var(--font-display);font-size:var(--type-md);font-weight:var(--weight-medium);letter-spacing:.04em;text-transform:none;box-shadow:none}.char-create-screen--s00 .cc-primary-button:hover:not(:disabled){background:color-mix(in oklch,var(--cc-s00-cta-fill) 80%,var(--ember-600));border-color:var(--ember-600);box-shadow:0 0 var(--space-medium) color-mix(in srgb,var(--ember-600) 22%,transparent)}.char-create-screen--s00 .cc-provider-rail{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--space-small)}.char-create-screen--s00 .cc-provider-pill{min-height:36px;padding:0 var(--space-snug);border-radius:var(--radius-md);border:var(--border-thin) solid var(--cc-s00-input-border);background:var(--cc-s00-input-fill);font-family:var(--font-quote);font-size:var(--type-sm);font-weight:var(--weight-medium);letter-spacing:0;text-transform:none;color:var(--cc-text);box-shadow:none}.char-create-screen--s00 .cc-provider-pill:hover:not(:disabled){border-color:color-mix(in oklch,var(--cc-accent) 38%,var(--cc-s00-input-border));background:color-mix(in oklch,var(--cc-s00-input-fill) 80%,var(--cc-accent));box-shadow:none}.auth-cinematic-welcome,.auth-cinematic-login,.auth-cinematic-signup{width:min(100%,393px);height:min(var(--app-mobile-frame-height, 700px),100svh);min-height:0;border:var(--border-thin) solid var(--line-primary);border-radius:var(--radius-md);background:var(--color-canvas);box-shadow:none;container-type:inline-size}.auth-cinematic-welcome__image,.auth-cinematic-welcome__scrim,.auth-cinematic-login__image,.auth-cinematic-login__scrim,.auth-cinematic-signup__image,.auth-cinematic-signup__scrim{position:absolute;inset:0;pointer-events:none}.auth-cinematic-welcome__image{z-index:0;background:var(--color-canvas) var(--asset-auth-welcome-hero, url(/auth/welcome-hero-v10.jpg)) center top / cover no-repeat}.auth-cinematic-login__image{z-index:0;background:var(--color-canvas) var(--asset-auth-login-hero, url(/auth/login-hero-v10.jpg)) center top / cover no-repeat}.auth-cinematic-welcome__scrim{z-index:1;background:radial-gradient(ellipse at 50% 50%,color-mix(in srgb,var(--color-canvas) 0%,transparent),color-mix(in srgb,var(--color-canvas) 24%,transparent) 70%,color-mix(in srgb,var(--color-canvas) 48%,transparent))}.auth-cinematic-login__scrim{z-index:1;background:linear-gradient(180deg,var(--overlay-30) 0%,var(--overlay-30) 31%,var(--overlay-strong) 48%,var(--overlay-deep) 100%)}.auth-cinematic-signup__image{z-index:0;background:var(--color-canvas) var(--asset-auth-signup-hero, url(/auth/signup-hero-v10.jpg)) center top / cover no-repeat}.auth-cinematic-signup__scrim{z-index:1;background:linear-gradient(180deg,var(--overlay-30) 0%,var(--overlay-30) 16%,var(--overlay-strong) 32%,var(--overlay-deep) 56%,var(--overlay-deep) 100%)}.auth-cinematic-welcome__content{position:relative;z-index:2;width:100%;height:100%;min-height:inherit;display:flex;flex-direction:column;align-items:center;padding:40px 24px;box-sizing:border-box}.auth-cinematic-welcome__logo{position:static;display:block;width:clamp(260px,70cqw,460px);height:auto;aspect-ratio:1024 / 639;margin-block:auto;object-fit:contain;filter:drop-shadow(0 12px 28px color-mix(in oklch,var(--color-canvas) 72%,transparent))}.auth-cinematic-welcome__actions{position:static;width:100%;display:flex;flex-direction:column;gap:36px}.auth-cinematic-welcome__primary{display:flex;flex-direction:column;gap:var(--space-small);align-items:center}.auth-cinematic-welcome .cc-primary-button{height:44px;min-height:44px;box-sizing:border-box;padding:var(--space-small) var(--space-medium)}.auth-cinematic-welcome__flavor{max-width:303px;margin:0;color:var(--ink-200);font-family:var(--font-quote);font-size:var(--type-md);font-style:italic;line-height:var(--leading-normal);text-align:center}.auth-cinematic-welcome__bind{display:flex;flex-direction:column;gap:23px}.auth-cinematic-welcome__divider{display:flex;align-items:center;gap:var(--space-snug);width:100%}.auth-cinematic-welcome__divider span{flex:1;height:1px;background:color-mix(in srgb,var(--ink-50) 8%,transparent)}.auth-cinematic-welcome__divider strong{flex-shrink:0;color:var(--ink-200);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-bold);letter-spacing:2px;line-height:1}.auth-cinematic-welcome__providers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-small)}.auth-cinematic-welcome .auth-cinematic-welcome__provider{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-small);height:36px;min-width:0;padding:0 var(--space-snug);border:var(--border-thin) solid var(--line-primary);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--ink-100);font-family:var(--font-quote);font-size:var(--type-sm);font-weight:var(--weight-medium);line-height:1;cursor:pointer}.auth-cinematic-welcome .auth-cinematic-welcome__provider img{width:12px;height:12px;flex:0 0 auto;object-fit:contain}.auth-cinematic-welcome .auth-cinematic-welcome__provider:hover:not(:disabled){border-color:color-mix(in oklch,var(--brass-500) 45%,var(--line-primary))}.auth-cinematic-welcome .auth-cinematic-welcome__provider:disabled{cursor:default;opacity:.52}.auth-cinematic-welcome .auth-cinematic-welcome__signin{gap:var(--space-tight);min-height:auto;margin-top:-16px;padding:0;color:var(--ink-200);font-family:var(--font-quote);font-size:var(--type-sm);font-weight:var(--weight-regular);line-height:1}.auth-cinematic-welcome .auth-cinematic-welcome__signin strong{color:var(--brass-400);font-weight:var(--weight-medium)}.auth-cinematic-login__content{position:absolute;bottom:40px;left:24px;right:24px;z-index:2}.auth-cinematic-signup__content{position:absolute;inset:24px;z-index:2;display:flex;flex-direction:column;justify-content:flex-end;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--ink-200) 32%,transparent) transparent}.auth-cinematic-signup__content::-webkit-scrollbar{width:4px}.auth-cinematic-signup__content::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--ink-200) 32%,transparent);border-radius:4px}.cc-login-app-icon{display:none}.cc-form-sheet__hero-text{display:flex;flex-direction:column;align-items:center;gap:var(--space-tight);width:100%}.auth-cinematic-login .cc-form-sheet--auth,.auth-cinematic-signup .cc-form-sheet--auth{width:100%;gap:var(--space-large);margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;animation:none}.auth-cinematic-signup .cc-form-sheet--auth{gap:var(--space-medium)}.auth-cinematic-login .cc-form-sheet__hero,.auth-cinematic-signup .cc-form-sheet__hero{align-items:center;gap:var(--space-large);width:100%;padding:0;text-align:center}.auth-cinematic-signup .cc-form-sheet__hero{gap:var(--space-snug)}.auth-cinematic-login .cc-form-sheet__hero-text,.auth-cinematic-signup .cc-form-sheet__hero-text{gap:0}.auth-cinematic-signup .cc-form-sheet__hero-text{gap:var(--space-tight)}.auth-cinematic-login .cc-login-app-icon{display:block;width:clamp(80px,32cqw,180px);height:auto;aspect-ratio:1;object-fit:cover}.auth-cinematic-login .cc-form-sheet__title,.auth-cinematic-signup .cc-form-sheet__title{color:var(--ink-50);font-size:var(--type-3xl);letter-spacing:.5px;line-height:1}.auth-cinematic-signup .cc-form-sheet__title{font-size:var(--type-2xl)}.auth-cinematic-login .cc-form-sheet__line,.auth-cinematic-signup .cc-form-sheet__line{width:100%;max-width:none;color:var(--ink-200);font-size:var(--type-md);line-height:var(--leading-normal);text-align:center}.auth-cinematic-signup .cc-form-sheet__line{font-size:var(--type-sm)}.auth-cinematic-login .cc-form-sheet__fields,.auth-cinematic-signup .cc-form-sheet__fields{gap:var(--space-snug);width:100%;padding:0}.auth-cinematic-signup .cc-form-sheet__fields{gap:var(--space-small)}.auth-cinematic-signup .cc-checkbox-row--terms{padding-top:0}.auth-cinematic-login .cc-form-meta{width:100%;padding:0 var(--space-tight)}.auth-cinematic-login .cc-form-sheet__footer,.auth-cinematic-signup .cc-form-sheet__footer{gap:var(--space-medium);width:100%;padding:0}.auth-cinematic-signup .cc-form-sheet__footer{gap:var(--space-snug)}.auth-cinematic-login .cc-provider-rail,.auth-cinematic-signup .cc-provider-rail{width:100%;gap:var(--space-small)}.auth-cinematic-login .cc-provider-pill,.auth-cinematic-signup .cc-provider-pill{min-height:36px;height:36px;padding:0 var(--space-snug);border-color:var(--line-primary);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--ink-100);font-family:var(--font-quote);font-size:var(--type-sm);font-weight:var(--weight-bold);letter-spacing:0;line-height:1;text-transform:none}.auth-cinematic-login .cc-provider-rail__hint,.auth-cinematic-signup .cc-provider-rail__hint{display:none}.cc-provider-pill img{width:14px;height:14px;flex:0 0 auto;object-fit:contain}.auth-cinematic-login .cc-primary-button,.auth-cinematic-signup .cc-primary-button{height:44px;min-height:44px;box-sizing:border-box;padding:var(--space-small) var(--space-medium)}.auth-cinematic-login .cc-auth-cta-copy,.auth-cinematic-signup .cc-auth-cta-copy{min-height:auto;margin-top:var(--space-tight);padding:0;color:var(--ink-200);font-family:var(--font-quote);font-size:var(--type-sm);font-weight:var(--weight-regular);line-height:1}.auth-cinematic-login .cc-auth-cta-copy strong,.auth-cinematic-signup .cc-auth-cta-copy strong{color:var(--brass-400)}.auth-cinematic-step{min-height:min(var(--app-mobile-frame-height, 700px),100svh);background:var(--color-canvas);container-type:inline-size}.auth-cinematic-step .app-auth-backdrop{padding:0}.auth-cinematic-step .app-auth-backdrop__hero{top:0;height:100%;aspect-ratio:768 / 1376;transform:translate3d(-50%,0,0)}.auth-cinematic-step .app-auth-backdrop__hero img{object-fit:cover;object-position:center center}.auth-cinematic-step .app-auth-backdrop__scrim{background-color:transparent;background-image:linear-gradient(180deg,transparent 0%,color-mix(in oklch,var(--color-canvas) 2%,transparent) 50%,color-mix(in oklch,var(--color-canvas) 8%,transparent) 64%,color-mix(in oklch,var(--color-canvas) 22%,transparent) 75%,color-mix(in oklch,var(--color-canvas) 44%,transparent) 84%,color-mix(in oklch,var(--color-canvas) 68%,transparent) 92%,color-mix(in oklch,var(--color-canvas) 85%,transparent) 100%)}.auth-cinematic-step .app-auth-step-header{height:120px}.auth-cinematic-step__content{position:absolute;left:24px;right:24px;bottom:79px;z-index:2}.auth-cinematic-step__content--name{bottom:75px}.auth-cinematic-step .cc-form-sheet--auth{margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;animation:none}.auth-cinematic-step .cc-class-page{gap:var(--space-large);min-height:0;padding:0;justify-content:flex-start}.auth-cinematic-step .cc-anointed-copy{gap:var(--space-large);padding:0}.auth-cinematic-step .cc-anointed-sigil{width:calc(100cqw * 180 / 393);height:calc(100cqw * 180 / 393);object-fit:cover;object-position:center;margin-bottom:var(--space-large)}.auth-cinematic-step .cc-anointed-dots,.auth-cinematic-step .cc-anointed-footer{padding:0}.auth-cinematic-step .cc-name-page{gap:0}.auth-cinematic-step .cc-name-page .cc-form-sheet__hero,.auth-cinematic-step .cc-name-page .cc-form-sheet__fields{gap:var(--space-small);margin-bottom:20px;padding:0}.auth-cinematic-step .cc-name-page .cc-field-label{display:none}.auth-cinematic-step .cc-name-page .cc-field-block{gap:var(--space-small)}.auth-cinematic-step .cc-name-page .cc-input-shell--large{min-height:40px}.auth-cinematic-step .cc-dice-button{width:40px;height:40px}.auth-cinematic-step .cc-name-status{min-height:15px;color:var(--ink-300);font-family:var(--font-quote);font-size:var(--type-md);font-weight:var(--weight-regular);letter-spacing:0;line-height:1.25;text-transform:none}.auth-cinematic-step .cc-name-status__icon{display:none}.auth-cinematic-step .cc-name-status--success{color:var(--sage-500)}.auth-cinematic-step .cc-name-status--danger{color:var(--ember-500)}.auth-cinematic-step .cc-name-helper,.auth-cinematic-step .cc-name-page .cc-chip-row{display:none}.auth-cinematic-step .cc-name-page .cc-auth-cta-stack{gap:var(--space-medium);padding:0}.auth-cinematic-step .cc-awakening-page{gap:var(--space-large);padding:0}.auth-cinematic-step .cc-awakening-page__hero{gap:var(--space-medium)}.auth-cinematic-step .cc-anointed-name{gap:var(--space-small)}.auth-cinematic-step .cc-awakening-page__actions{padding:0}.auth-cinematic-step .cc-primary-button{height:44px;min-height:44px;box-sizing:border-box;padding:var(--space-small) var(--space-medium)}.auth-cinematic-step .cc-class-page__footer{margin-top:var(--space-small)}.auth-cinematic-step .cc-awakening-page__actions{margin-top:var(--space-tight)}.auth-cinematic-go-back{position:absolute;left:0;bottom:40px;z-index:3;width:100%;height:15px;min-height:15px;padding:0;border:0;background:transparent;color:var(--ink-200);font-family:var(--font-quote);font-size:var(--type-sm);font-weight:var(--weight-regular);line-height:15px;text-align:center;cursor:pointer}.auth-cinematic-go-back:hover{color:var(--brass-400)}body:has(.auth-cinematic-step),body:has(.auth-cinematic-welcome),body:has(.auth-cinematic-login),body:has(.auth-cinematic-signup){overscroll-behavior:none}@media(min-width:900px)and (min-height:640px){body:has(.auth-cinematic-login),body:has(.auth-cinematic-welcome),body:has(.auth-cinematic-signup),body:has(.auth-cinematic-step){padding:var(--space-large);overflow:hidden;background:linear-gradient(180deg,color-mix(in srgb,var(--color-canvas) 56%,transparent),color-mix(in srgb,var(--color-canvas) 34%,transparent) 42%,color-mix(in srgb,var(--color-canvas) 64%,transparent)),radial-gradient(ellipse 86% 76% at 50% 50%,color-mix(in srgb,var(--color-canvas) 30%,transparent) 0%,color-mix(in srgb,var(--color-canvas) 70%,transparent) 62%,var(--color-canvas) 100%),var(--asset-auth-crater-bowl, url(/auth/auth-bg-crater-bowl-up.jpg)) center / cover no-repeat,var(--color-canvas);background-attachment:scroll,scroll,fixed,scroll;background-blend-mode:normal}body:has(.auth-cinematic-login) #root,body:has(.auth-cinematic-welcome) #root,body:has(.auth-cinematic-signup) #root,body:has(.auth-cinematic-step) #root{min-height:calc(100dvh - 48px);display:grid;place-items:center}.auth-cinematic-login,.auth-cinematic-welcome,.auth-cinematic-signup{width:min(393px,calc(100vw - 48px));height:min(700px,calc(100dvh - 48px));border-radius:var(--radius-2xl);box-shadow:0 40px 120px color-mix(in oklch,var(--color-canvas) 90%,transparent),0 18px 48px color-mix(in oklch,var(--color-canvas) 88%,transparent),0 0 0 1px color-mix(in oklch,var(--ink-50) 8%,transparent)}.auth-cinematic-step{width:min(393px,calc(100vw - 48px));height:min(700px,calc(100dvh - 48px));min-height:0;border:var(--border-thin) solid var(--line-primary);border-radius:var(--radius-2xl);box-shadow:0 40px 120px color-mix(in oklch,var(--color-canvas) 90%,transparent),0 18px 48px color-mix(in oklch,var(--color-canvas) 88%,transparent),0 0 0 1px color-mix(in oklch,var(--ink-50) 8%,transparent)}}.char-create-screen--s00 .cc-name-page{gap:var(--space-medium);padding:var(--space-medium) 0 calc(var(--space-section) + env(safe-area-inset-bottom))}.char-create-screen--s00 .cc-name-page .cc-form-sheet__hero{gap:var(--space-tight);padding:0 var(--space-shell)}.char-create-screen--s00 .cc-name-page .cc-form-sheet__title{line-height:1;letter-spacing:.5px}.char-create-screen--s00 .cc-name-page .cc-form-sheet__fields{gap:18px;padding:var(--space-shell) var(--space-shell) 0}.char-create-screen--s00 .cc-name-page .cc-field-block{gap:var(--space-small)}.char-create-screen--s00 .cc-name-input-row{display:flex;align-items:center;gap:var(--space-small);width:100%}.char-create-screen--s00 .cc-input-shell--large{min-height:48px}.char-create-screen--s00 .cc-name-page .cc-input-shell--large{flex:1 1 auto;min-width:0;padding:0 var(--space-snug) 0 var(--space-medium);border-color:var(--brass-500)}.char-create-screen--s00 .cc-input-shell--large input{font-family:var(--font-display);font-size:var(--type-xl);font-weight:var(--weight-medium);letter-spacing:.5px;text-transform:none}.char-create-screen--s00 .cc-dice-button{width:44px;height:44px;flex-shrink:0;display:inline-grid;place-items:center;padding:0;border:var(--border-thin) solid var(--line-primary);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--brass-400);cursor:pointer;transition:border-color var(--motion-fast) var(--motion-change-ease),background-color var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-press-ease)}.char-create-screen--s00 .cc-dice-button:hover{border-color:color-mix(in oklch,var(--brass-500) 72%,var(--line-primary));background:color-mix(in oklch,var(--bg-primary) 82%,var(--brass-950))}.char-create-screen--s00 .cc-dice-button:active{transform:scale(var(--motion-press-scale))}.char-create-screen--s00 .cc-dice-button:focus-visible{outline:var(--focus-ring);outline-offset:2px}.char-create-screen--s00 .cc-roll-button{display:inline-flex;align-items:center;gap:var(--space-tight);padding:0;border:0;background:transparent;color:var(--brass-500);font-family:var(--font-quote);font-size:var(--type-md);font-weight:var(--weight-regular);line-height:1;cursor:pointer;text-transform:none;letter-spacing:0;transition:color var(--motion-fast) var(--motion-change-ease)}.char-create-screen--s00 .cc-roll-button:hover{color:var(--brass-400)}.char-create-screen--s00 .cc-roll-button:focus-visible{outline:var(--focus-ring);outline-offset:2px;border-radius:var(--radius-md)}.char-create-screen--s00 .cc-field-row{align-items:center}.char-create-screen--s00 .cc-name-status{min-height:12px;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-tight);width:100%;color:var(--ink-300);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-bold);letter-spacing:2px;line-height:1;text-align:center}.char-create-screen--s00 .cc-name-status--idle{visibility:hidden}.char-create-screen--s00 .cc-name-status--success{color:var(--sage-500)}.char-create-screen--s00 .cc-name-status--danger{color:var(--ember-500)}.char-create-screen--s00 .cc-name-status__icon{flex-shrink:0}.char-create-screen--s00 .cc-name-status__icon.is-spinning{animation:cc-name-status-spin .9s linear infinite}.char-create-screen--s00 .cc-name-helper{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@keyframes cc-name-status-spin{to{transform:rotate(360deg)}}.char-create-screen--s00 .cc-chip-row{gap:var(--space-small);padding:0 var(--space-shell);flex-wrap:wrap}.char-create-screen--s00 .cc-chip{min-height:26px;padding:var(--space-tight) var(--space-snug);border:var(--border-thin) solid var(--surface-700);border-radius:var(--radius-md);background:var(--surface-500);color:var(--ink-200);font-family:var(--font-quote);font-size:var(--type-sm);font-weight:var(--weight-regular);letter-spacing:0;text-transform:none}.char-create-screen--s00 button.cc-chip:hover{border-color:color-mix(in oklch,var(--cc-accent) 50%,var(--surface-700));background:color-mix(in oklch,var(--surface-500) 80%,var(--cc-accent));color:var(--cc-text)}.char-create-screen--s00 .cc-status-icon--success{color:var(--status-positive)}.char-create-screen--s00 .cc-footnote{font-family:var(--font-quote);font-size:var(--type-md);font-style:normal;color:var(--ink-300);text-align:center}.char-create-screen--s00 .cc-name-page .cc-auth-cta-stack{padding:0 var(--space-shell)}.char-create-screen--s00 .cc-name-page .cc-primary-button{min-height:48px}.char-create-screen--s00 .cc-awakening-page{gap:var(--space-large);padding:var(--space-large) var(--space-shell) calc(var(--space-section) + env(safe-area-inset-bottom))}.char-create-screen--s00 .cc-awakening-page__hero{display:flex;flex-direction:column;align-items:center;gap:var(--space-small);width:100%;text-align:center}.char-create-screen--s00 .cc-awakening-page__kicker{color:var(--brass-500);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-bold);letter-spacing:2px;line-height:1;text-transform:uppercase}.char-create-screen--s00 .cc-awakening-page__title{width:100%;margin:0;color:var(--ink-50);font-family:var(--font-display);font-size:var(--type-3xl);font-weight:var(--weight-bold);letter-spacing:.5px;line-height:1;text-align:center;text-transform:uppercase}.char-create-screen--s00 .cc-awakening-page__flavor{width:100%;margin:0;color:var(--ink-200);font-family:var(--font-quote);font-size:var(--type-md);font-style:italic;line-height:1.5;text-align:center}.char-create-screen--s00 .cc-awakening-page__actions{width:100%;padding:0}.char-create-screen--s00 .cc-awakening-page .cc-primary-button{min-height:48px}.cc-class-page{display:flex;flex-direction:column;justify-content:flex-end;gap:var(--space-large);padding:var(--space-large) 0 0;outline:none;cursor:grab;touch-action:pan-y}.cc-class-page.is-dragging{cursor:grabbing;user-select:none;-webkit-user-select:none;touch-action:none}.cc-class-desktop-arrow{display:none}.cc-class-page:focus-visible{outline:var(--focus-ring);outline-offset:-3px}.cc-class-page__copy,.cc-class-page__footer{margin-top:0}.cc-anointed-copy{display:flex;flex-direction:column;gap:var(--space-shell);padding:0 var(--space-shell);align-items:center;text-align:center;animation:cc-anointed-copy-in .42s var(--motion-enter-ease) both}.cc-anointed-sigil{display:block;width:min(96px,22cqw);height:min(96px,22cqw);object-fit:contain}.cc-anointed-sigil-icon{color:var(--brass-500)}.cc-anointed-name{display:flex;flex-direction:column;align-items:center;gap:var(--space-snug)}.cc-anointed-title{margin:0;font-family:var(--font-display);font-size:var(--type-36);line-height:1;font-weight:var(--weight-bold);letter-spacing:.04em;color:var(--ink-50);text-shadow:0 2px 18px color-mix(in oklch,var(--color-canvas) 70%,transparent)}.cc-anointed-text-block{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:var(--space-large);width:100%}.cc-anointed-text-block__inner{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-snug)}.cc-anointed-title-arrow{flex:0 0 auto;display:none;place-items:center;width:80px;height:80px;padding:0;border:0;background:transparent;color:color-mix(in oklch,var(--ink-300) 70%,transparent);cursor:pointer;opacity:.5;transition:color var(--motion-regular) var(--motion-change-ease),opacity var(--motion-regular) var(--motion-change-ease),transform var(--motion-fast) var(--motion-press-ease)}@container (min-width: 480px){.cc-anointed-title-arrow{display:inline-grid}}.cc-anointed-title-arrow:hover:not(:disabled),.cc-anointed-title-arrow:focus-visible:not(:disabled){color:var(--ember-500);opacity:1;transform:translate(var(--cc-anointed-title-arrow-hover-x, 0))}.cc-anointed-title-arrow:active:not(:disabled){transform:scale(var(--motion-press-scale))}.cc-anointed-title-arrow--previous{--cc-anointed-title-arrow-hover-x: -3px}.cc-anointed-title-arrow--next{--cc-anointed-title-arrow-hover-x: 3px}.cc-anointed-title-arrow:focus-visible{outline:var(--focus-ring);outline-offset:3px}.cc-anointed-kicker{font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-bold);letter-spacing:.24em;color:var(--brass-500);text-shadow:0 1px 12px color-mix(in oklch,var(--color-canvas) 70%,transparent)}.cc-anointed-lore{margin:0;max-width:32ch;font-family:var(--font-quote);font-size:var(--type-md);font-style:italic;line-height:1.5;color:var(--ink-200);text-shadow:0 1px 14px color-mix(in oklch,var(--color-canvas) 60%,transparent)}.cc-anointed-dots{display:flex;align-items:center;justify-content:center;gap:var(--space-small);min-height:10px;padding:0 var(--space-shell)}.cc-anointed-dot{width:8px;height:8px;transform:scale(1);border:0;border-radius:999px;background:var(--ink-700);cursor:pointer;transition:transform var(--motion-fast) var(--motion-change-ease),background-color var(--motion-fast) var(--motion-change-ease);padding:0}.cc-anointed-dot.is-active{transform:scale(1.25);background:var(--brass-500)}.cc-anointed-dot:focus-visible{outline:var(--focus-ring);outline-offset:3px}.cc-anointed-footer{display:flex;flex-direction:column;padding:0 var(--space-shell) calc(var(--space-section) + env(safe-area-inset-bottom))}.cc-class-page__footer .cc-primary-button{min-height:48px}@media(min-width:900px)and (min-height:640px){.cc-class-desktop-arrow{--cc-class-arrow-size: 48px;--cc-class-arrow-offset: 88px;position:fixed;top:50%;z-index:8;display:inline-grid;place-items:center;width:var(--cc-class-arrow-size);height:var(--cc-class-arrow-size);padding:0;border:var(--border-thin) solid color-mix(in oklch,var(--line-secondary) 84%,transparent);border-radius:var(--radius-md);background:linear-gradient(180deg,color-mix(in oklch,var(--bg-secondary) 62%,var(--bg-deep)),color-mix(in oklch,var(--bg-deep) 96%,var(--bg-secondary)));color:var(--ink-300);box-shadow:inset 0 1px color-mix(in oklch,var(--ink-50) 8%,transparent),0 18px 44px color-mix(in oklch,var(--color-canvas) 86%,transparent),0 0 0 1px color-mix(in oklch,var(--color-canvas) 48%,transparent);cursor:pointer;opacity:.92;transform:translate3d(0,-50%,0);transition:border-color var(--motion-fast) var(--motion-change-ease),box-shadow var(--motion-fast) var(--motion-change-ease),color var(--motion-fast) var(--motion-change-ease),opacity var(--motion-fast) var(--motion-change-ease),transform var(--motion-fast) var(--motion-press-ease);animation:cc-class-arrow-enter .36s var(--motion-enter-ease);will-change:transform,opacity}.cc-class-desktop-arrow--previous{--cc-class-arrow-enter-x: 10px;--cc-class-arrow-hover-x: -2px;left:calc(50vw - (min(393px,calc(100vw - 48px)) / 2) - var(--cc-class-arrow-offset))}.cc-class-desktop-arrow--next{--cc-class-arrow-enter-x: -10px;--cc-class-arrow-hover-x: 2px;right:calc(50vw - (min(393px,calc(100vw - 48px)) / 2) - var(--cc-class-arrow-offset))}.cc-class-desktop-arrow:hover:not(:disabled){border-color:color-mix(in oklch,var(--ink-300) 42%,var(--line-primary));color:var(--ink-100);opacity:1;transform:translate3d(var(--cc-class-arrow-hover-x, 0),-50%,0) scale(1.04);box-shadow:inset 0 1px color-mix(in oklch,var(--ink-50) 12%,transparent),0 24px 60px color-mix(in oklch,var(--color-canvas) 90%,transparent),0 0 0 1px color-mix(in oklch,var(--ink-300) 10%,transparent)}.cc-class-desktop-arrow:active:not(:disabled){transform:translate3d(0,-50%,0) scale(var(--motion-press-scale))}.cc-class-desktop-arrow:disabled{color:var(--ink-600);cursor:default;opacity:.34}.cc-class-desktop-arrow:focus-visible{outline:var(--focus-ring);outline-offset:3px}}@keyframes cc-class-arrow-enter{0%{opacity:0;transform:translate3d(var(--cc-class-arrow-enter-x, 0),-50%,0) scale(.94)}to{opacity:.92;transform:translate3d(0,-50%,0) scale(1)}}@keyframes cc-anointed-copy-in{0%{opacity:0;transform:translate3d(0,12px,0)}60%{opacity:1}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.cc-anointed-copy,.cc-class-desktop-arrow{animation:none!important;transition:none!important}}.cc-welcome-page{display:flex;flex-direction:column;justify-content:flex-start;gap:0;padding:0 0 calc(var(--space-section) + env(safe-area-inset-bottom))}.cc-welcome-page__hero{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-snug);padding:var(--space-section)}.cc-welcome-page__hero .cc-hero-kicker,.cc-welcome-page__hero .cc-hero-title,.cc-welcome-page__hero .cc-hero-flavor{width:100%;text-align:center}.cc-welcome-page__hero .cc-hero-title{letter-spacing:.5px}.cc-welcome-page__hero .cc-hero-flavor{line-height:1.5;color:var(--ink-200)}.cc-welcome-page__cta{margin-top:0;gap:var(--space-medium);padding:0 var(--space-shell);border-top:var(--border-thin) solid var(--line-secondary)}.cc-welcome-page__cta .cc-switch-action{min-height:15px;padding:0;color:var(--ink-300);font-family:var(--font-quote);font-size:var(--type-md);font-style:normal;line-height:1.25}.char-create-screen--s00.auth-cinematic-step .cc-form-sheet--auth{margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.char-create-screen--s00.auth-cinematic-step .cc-name-page{gap:0;padding:0}.char-create-screen--s00.auth-cinematic-step .cc-name-page .cc-form-sheet__hero{align-items:center;gap:var(--space-small);margin-bottom:60px;padding:0;text-align:center}.char-create-screen--s00.auth-cinematic-step .cc-name-page .cc-form-sheet__title,.char-create-screen--s00.auth-cinematic-step .cc-name-page .cc-form-sheet__line{width:100%;text-align:center}.char-create-screen--s00.auth-cinematic-step .cc-name-page .cc-form-sheet__title{font-size:var(--type-36);line-height:1;color:var(--ink-50);text-shadow:0 2px 18px color-mix(in oklch,var(--color-canvas) 70%,transparent)}.char-create-screen--s00.auth-cinematic-step .cc-name-page .cc-form-sheet__line{max-width:32ch;margin-inline:auto;color:var(--ink-200);font-size:var(--type-md);text-shadow:0 1px 14px color-mix(in oklch,var(--color-canvas) 60%,transparent)}.char-create-screen--s00.auth-cinematic-step .cc-name-page .cc-form-sheet__fields{gap:var(--space-small);margin-bottom:20px;padding:0}.char-create-screen--s00.auth-cinematic-step .cc-name-page .cc-field-label{display:none}.char-create-screen--s00.auth-cinematic-step .cc-name-page .cc-auth-cta-stack{gap:var(--space-medium);padding:0}.char-create-screen--s00.auth-cinematic-step .cc-name-status{color:var(--ink-300);font-family:var(--font-quote);font-size:var(--type-md);font-weight:var(--weight-regular);letter-spacing:0;line-height:1.25;text-transform:none}.char-create-screen--s00.auth-cinematic-step .cc-name-status--success{color:var(--sage-500)}.char-create-screen--s00.auth-cinematic-step .cc-name-status--danger{color:var(--ember-500)}.char-create-screen--s00.auth-cinematic-step .cc-name-page .cc-auth-cta-copy{display:none}.char-create-screen--s00.auth-cinematic-step .cc-awakening-page{gap:var(--space-large);padding:0}.char-create-screen--s00.auth-cinematic-step .cc-awakening-page__hero{gap:var(--space-medium)}.char-create-screen--s00.auth-cinematic-step .cc-anointed-name{gap:var(--space-small)}.char-create-screen--s00.auth-cinematic-step .cc-awakening-page__actions{margin-top:var(--space-tight);padding:0}.char-create-screen--s00.auth-cinematic-step .cc-class-page__footer{margin-top:var(--space-small)}.char-create-screen--s00.auth-cinematic-step .cc-primary-button{height:44px;min-height:44px;box-sizing:border-box;padding:var(--space-small) var(--space-medium)}.char-create-screen--s00.auth-cinematic-step .cc-name-page .cc-input-shell--large{min-height:40px;height:40px}.char-create-screen--s00.auth-cinematic-step .cc-name-page .cc-dice-button{width:40px;height:40px;border-color:color-mix(in oklch,var(--brass-950) 60%,var(--line-primary));background:var(--bg-primary);color:var(--brass-400)}.char-create-screen--s00.auth-cinematic-step .cc-name-page .cc-dice-button:hover{border-color:color-mix(in oklch,var(--brass-500) 60%,var(--brass-950));background:color-mix(in oklch,var(--bg-primary) 82%,var(--brass-950))}.char-create-screen--s00.auth-cinematic-step .cc-name-page .cc-name-status{display:inline-flex;align-items:center;justify-content:flex-start;gap:4px;width:100%;padding:0 4px;text-align:left}.char-create-screen--s00.auth-cinematic-step .cc-name-page .cc-name-status__icon{display:inline-flex;flex-shrink:0;color:currentColor}.bind-required-modal__body{display:flex;flex-direction:column;min-height:0}.bind-required-modal__hero{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:36px var(--space-large);border-bottom:var(--border-thin) solid var(--line-secondary);background:var(--surface-150);transition:padding var(--motion-regular) var(--motion-change-ease),gap var(--motion-regular) var(--motion-change-ease)}.bind-required-modal__ring{display:grid;width:64px;height:64px;place-items:center;border:var(--border-thin) solid var(--brass-700);border-radius:var(--radius-full);background:var(--brass-950);color:var(--brass-500);line-height:var(--leading-tight)}.bind-required-modal__title{margin:0;color:var(--ink-100);font-family:var(--font-display);font-size:var(--type-2xl);font-weight:var(--weight-bold);letter-spacing:0;line-height:var(--leading-snug);text-align:center;text-transform:none}.bind-required-modal__tagline{width:100%;max-width:345px;margin:0;color:var(--ink-300);font-family:var(--font-quote);font-size:var(--type-sm);line-height:1.45;text-align:center}.bind-required-modal__chip{display:inline-flex;align-items:center;justify-content:center;min-height:26px;margin-top:var(--space-1);padding:5px 10px;border:var(--border-thin) solid var(--line-primary);border-radius:var(--radius-sm);background:var(--surface-200);color:var(--ink-700);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-bold);letter-spacing:2px;line-height:var(--leading-tight)}.bind-required-modal__body[data-options-open=true] .bind-required-modal__hero{gap:var(--space-2);padding:18px var(--space-large)}.bind-required-modal__body[data-options-open=true] .bind-required-modal__ring{width:44px;height:44px}.bind-required-modal__body[data-options-open=true] .bind-required-modal__ring svg{width:20px;height:20px}.bind-required-modal__body[data-options-open=true] .bind-required-modal__title{font-size:var(--type-lg)}.bind-required-modal__body[data-options-open=true] .bind-required-modal__tagline,.bind-required-modal__body[data-options-open=true] .bind-required-modal__chip{display:none}.bind-required-modal__body>:not(.bind-required-modal__hero){display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-shell) var(--space-large)}.bind-required-modal__kicker{color:var(--ink-700);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-regular);letter-spacing:2px;line-height:var(--leading-tight);text-transform:uppercase}.bind-required-modal__list{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding:0;color:var(--ink-100);font-family:var(--font-quote);font-size:var(--type-sm);line-height:var(--leading-normal);list-style:none}.bind-required-modal__list li{display:flex;gap:var(--space-2)}.bind-required-modal__list li:before{color:var(--ink-100);content:"·"}.bind-required-modal__bind-stack{--cc-panel: color-mix(in oklch, var(--color-surface) 96%, black);--cc-panel-strong: color-mix(in oklch, var(--color-surface-elevated) 94%, black);--cc-surface-deep: oklch(14% .012 32);--cc-border: color-mix(in oklch, var(--color-frame-border) 30%, var(--color-border-secondary));--cc-text: var(--color-text-primary);--cc-muted: var(--color-text-muted);--cc-muted-strong: var(--color-text-tertiary);--cc-accent: var(--color-text-accent);font-family:var(--font-quote);color:var(--cc-text)}.bind-required-modal__bind-stack .cc-provider-pill{min-height:36px;height:36px;padding:0 var(--space-snug);border-color:var(--line-primary);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--ink-100);font-family:var(--font-quote);font-size:var(--type-sm);font-weight:var(--weight-bold);letter-spacing:0;line-height:1;text-transform:none}.bind-required-modal__bind-stack .cc-provider-rail__hint{display:none}.bind-required-modal__bind-stack .cc-input-shell{min-height:40px;padding:0 var(--space-snug);gap:var(--space-small);border-radius:var(--radius-md);background:var(--surface-200)}.bind-required-modal__bind-stack .cc-input-shell input{font-family:var(--font-quote);font-size:var(--type-sm)}.bind-required-modal__bind-stack .cc-field-label{font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-medium);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-300)}.bind-required-modal__email-fields{gap:var(--space-2);width:100%;padding:0}.bind-required-modal__email-submit{height:44px;min-height:44px;margin-top:var(--space-1)}.bind-required-modal__divider{display:flex;align-items:center;gap:var(--space-snug);width:100%;margin:var(--space-1) 0}.bind-required-modal__divider span{flex:1;height:1px;background:color-mix(in srgb,var(--ink-50) 8%,transparent)}.bind-required-modal__divider strong{flex-shrink:0;color:var(--ink-300);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-bold);letter-spacing:2px;line-height:1}.bind-required-modal__actions{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-medium);border-top:var(--border-thin) solid var(--line-secondary);background:var(--surface-300)}.bind-required-modal__btn{appearance:none;display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-small) var(--space-medium);border:var(--border-thin) solid var(--line-primary);border-radius:var(--radius-md);background:var(--surface-200);color:var(--ink-300);cursor:pointer;font-family:var(--font-display);font-size:var(--type-sm);font-weight:var(--weight-bold);letter-spacing:.5px;line-height:var(--leading-tight);transition:background var(--motion-fast) var(--motion-change-ease),border-color var(--motion-fast) var(--motion-change-ease),color var(--motion-fast) var(--motion-change-ease)}.bind-required-modal__btn:hover:not(:disabled){border-color:color-mix(in oklch,var(--brass-500) 42%,var(--line-primary));color:var(--ink-100)}.bind-required-modal__btn--primary{border-color:var(--ember-700);background:var(--ember-800);color:var(--ink-100)}.bind-required-modal__btn--primary:hover:not(:disabled){border-color:var(--ember-600);background:color-mix(in oklch,var(--ember-800) 82%,var(--ember-600));color:var(--ink-50)}.bind-required-modal__btn:focus-visible{outline:var(--border-thin) solid var(--ember-500);outline-offset:2px}.bind-required-modal__btn:disabled{cursor:not-allowed;opacity:.52}.app-shell:not([data-layout=wide])[data-screen=chat] .app-main{overflow:hidden;padding-bottom:calc(var(--app-bottom-control-footprint) + env(safe-area-inset-bottom))}.app-shell:not([data-layout=wide])[data-screen=chat] .app-screen{flex:1;min-height:0;padding:0;gap:0}.social-hub{display:flex;flex-direction:column;flex:1;min-height:0;background:var(--color-canvas);color:var(--color-text-primary);font-family:var(--font-body)}.social-hub__quick-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:14px 16px;background:var(--color-canvas);border-bottom:1px solid var(--line-secondary)}.social-hub__chip{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:10px;border-radius:var(--radius-sm);background:var(--surface-100);border:1px solid var(--line-primary);color:var(--color-text-primary);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-regular, 400);letter-spacing:var(--tracking-widest);line-height:var(--leading-tight);cursor:pointer;transition:background var(--motion-fast) var(--motion-change-ease),border-color var(--motion-fast) var(--motion-change-ease),color var(--motion-fast) var(--motion-change-ease)}.social-hub__chip:hover{border-color:color-mix(in oklch,var(--brass-500) 40%,var(--line-primary));color:var(--color-text-primary)}.social-hub__chip-icon{display:inline-flex;align-items:center;justify-content:center;font-size:18px;line-height:1;color:var(--brass-500)}.social-hub__channels{display:flex;background:var(--surface-100);border-bottom:1px solid var(--line-secondary);padding:0 16px}.social-hub__channel{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:12px;background:transparent;border:0;color:var(--color-text-secondary);font-family:var(--font-mono);font-size:var(--type-9);font-weight:var(--weight-regular, 400);letter-spacing:var(--tracking-widest);line-height:var(--leading-tight);cursor:pointer;border-bottom:2px solid transparent;transition:color var(--motion-fast) var(--motion-change-ease),border-color var(--motion-fast) var(--motion-change-ease)}.social-hub__channel:hover{color:var(--color-text-primary)}.social-hub__channel[data-active=true]{color:var(--brass-500);font-weight:var(--weight-bold);border-bottom-color:var(--brass-500)}.social-hub__channel[data-unread=true] .social-hub__channel-count{color:var(--brass-500)}.social-hub__channel-count{color:color-mix(in oklch,var(--color-text-tertiary) 80%,transparent)}.social-hub__channel[data-disabled=true]{opacity:.45;color:var(--color-text-tertiary)}.social-hub__channel[data-disabled=true]:hover{color:var(--color-text-tertiary)}.social-hub__channel[data-disabled=true][data-active=true]{opacity:.7}.social-hub__channel-soon{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:7px;font-weight:700;letter-spacing:.18em;padding:2px 4px;border:1px solid color-mix(in oklch,var(--color-text-tertiary) 50%,transparent);border-radius:2px;color:color-mix(in oklch,var(--color-text-tertiary) 90%,transparent)}.social-hub__log{flex:1;min-height:0;list-style:none;margin:0;padding:16px;overflow-y:auto;display:flex;flex-direction:column;gap:20px;justify-content:flex-end;background:var(--color-canvas);scroll-behavior:smooth}.social-hub__log::-webkit-scrollbar{width:4px}.social-hub__log::-webkit-scrollbar-thumb{background:var(--surface-divider-strong);border-radius:4px}.social-hub__system{display:flex;justify-content:center;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10px;letter-spacing:.12em;color:color-mix(in oklch,var(--color-text-tertiary) 70%,transparent)}.social-hub__row{display:flex;flex-direction:column;gap:4px;min-width:0}.social-hub__row-head{display:flex;align-items:center;gap:4px;min-width:0}.social-hub__name{font-family:var(--font-mono);font-size:10px;font-weight:var(--weight-bold);letter-spacing:var(--tracking-wide);line-height:var(--leading-tight);text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.social-hub__name[data-class=warrior]{color:var(--ember-400)}.social-hub__name[data-class=mage]{color:var(--color-class-mage)}.social-hub__name[data-class=priest]{color:var(--color-class-priest)}.social-hub__name[data-class=rogue]{color:var(--color-class-rogue)}.social-hub__meta{font-family:var(--font-mono);font-size:9px;font-weight:300;letter-spacing:var(--tracking-wider);line-height:var(--leading-tight);color:var(--color-text-tertiary)}.social-hub__text{margin:0;font-family:var(--font-quote);font-size:var(--type-md);font-weight:400;line-height:var(--leading-normal);color:var(--color-text-primary);word-wrap:break-word}.social-hub__typing{display:flex;align-items:center;gap:8px;opacity:.85}.social-hub__typing-body{display:flex;align-items:center;gap:8px}.social-hub__typing-dots{display:inline-flex;gap:3px;align-items:center}.social-hub__typing-dots span{width:4px;height:4px;border-radius:50%;background:var(--color-text-tertiary);animation:social-hub-blink var(--motion-ambient) var(--motion-change-ease) infinite}.social-hub__typing-dots span:nth-child(2){animation-delay:.18s}.social-hub__typing-dots span:nth-child(3){animation-delay:.36s}@keyframes social-hub-blink{0%,60%,to{opacity:.25;transform:translateY(0)}30%{opacity:1;transform:translateY(-2px)}}.social-hub__invite{display:flex;flex-direction:column;gap:10px;padding:12px 14px;background:color-mix(in oklch,var(--color-text-accent) 8%,var(--color-bar-background));border-radius:var(--radius-12);border:1px solid color-mix(in oklch,var(--color-text-accent) 50%,var(--surface-divider-strong))}.social-hub__invite-head{display:flex;align-items:center;gap:8px}.social-hub__invite-icon{color:var(--color-text-accent);font-size:11px}.social-hub__invite-kicker{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:9px;font-weight:600;letter-spacing:.16em;color:var(--color-text-accent)}.social-hub__invite-from{margin-left:auto;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:8px;letter-spacing:.16em;color:color-mix(in oklch,var(--color-text-tertiary) 80%,transparent)}.social-hub__invite-title{font-family:var(--font-display);font-size:13px;font-weight:600;letter-spacing:.04em;color:var(--color-class-priest)}.social-hub__invite-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.social-hub__btn{appearance:none;border:1px solid var(--surface-divider-strong);background:var(--color-bar-background);color:var(--color-text-secondary);padding:8px 12px;border-radius:var(--radius-12);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10px;font-weight:700;letter-spacing:.16em;cursor:pointer;transition:background var(--motion-fast) var(--motion-change-ease),color var(--motion-fast) var(--motion-change-ease),border-color var(--motion-fast) var(--motion-change-ease)}.social-hub__btn:hover{color:var(--color-text-primary);border-color:color-mix(in oklch,var(--color-text-accent) 30%,var(--surface-divider-strong))}.social-hub__btn--primary{background:color-mix(in oklch,var(--color-text-accent) 14%,var(--color-bar-background));border-color:color-mix(in oklch,var(--color-text-accent) 55%,var(--surface-divider-strong));color:var(--color-text-accent)}.social-hub__btn--primary:hover{background:color-mix(in oklch,var(--color-text-accent) 22%,var(--color-bar-background));color:var(--color-text-accent)}.social-hub__whisper-group{display:flex;flex-direction:column;gap:6px;padding:8px 10px;border-radius:var(--radius-12);border:1px solid var(--surface-divider);background:color-mix(in oklch,var(--color-canvas) 70%,var(--color-surface))}.social-hub__whisper-group[data-selected=true]{border-color:color-mix(in oklch,var(--color-text-accent) 50%,var(--surface-divider))}.social-hub__whisper-head{appearance:none;background:transparent;border:0;padding:4px 6px;display:flex;align-items:baseline;gap:8px;cursor:pointer;color:var(--color-text-primary);text-align:left}.social-hub__whisper-name{font-family:var(--font-display);font-size:13px;font-weight:600;letter-spacing:.04em;color:var(--color-class-priest)}.social-hub__whisper-count{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:9px;letter-spacing:.16em;color:var(--color-text-tertiary)}.social-hub__whisper-thread{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.social-hub__whisper-row{display:grid;grid-template-columns:14px auto 1fr auto;gap:8px;align-items:baseline;padding:4px 6px;border-radius:4px;font-size:12px;line-height:1.4;color:var(--color-text-primary)}.social-hub__whisper-row[data-self=true]{background:color-mix(in oklch,var(--color-text-accent) 6%,transparent)}.social-hub__whisper-arrow{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;color:var(--color-text-tertiary)}.social-hub__whisper-row[data-self=true] .social-hub__whisper-arrow{color:var(--color-text-accent)}.social-hub__whisper-counter{font-family:var(--font-body);font-size:11px;font-weight:700;color:var(--color-text-secondary);white-space:nowrap}.social-hub__whisper-text{margin:0;font-size:12px;word-wrap:break-word;min-width:0}.social-hub__whisper-target{display:flex;align-items:center;gap:8px;padding:8px 14px;background:color-mix(in oklch,var(--color-canvas) 60%,var(--color-overlay-soft));border-top:1px solid var(--surface-divider)}.social-hub__whisper-target-label{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:9px;font-weight:700;letter-spacing:.18em;color:var(--color-text-tertiary)}.social-hub__whisper-target-select{flex:1;appearance:none;background:var(--color-bar-background);color:var(--color-text-primary);border:1px solid var(--surface-divider-strong);padding:8px 10px;border-radius:var(--radius-12);font-family:var(--font-body);font-size:12px;cursor:pointer}.social-hub__whisper-target-select:focus-visible{outline:none;border-color:color-mix(in oklch,var(--color-text-accent) 60%,var(--surface-divider-strong))}.social-hub__composer{display:flex;align-items:center;gap:8px;padding:12px 14px;background:var(--bg-tertiary);border-top:1px solid var(--line-secondary)}.social-hub__input{--touch-control-font-size: 12px;flex:1;min-width:0;height:36px;padding:0 12px;background:var(--surface-100);border:1px solid var(--line-primary);color:var(--color-text-primary);font-family:var(--font-quote);font-size:12px;line-height:1;border-radius:var(--radius-sm)}.social-hub__input:focus-visible{outline:none;border-color:color-mix(in oklch,var(--line-primary) 55%,var(--color-text-secondary))}.social-hub__input::placeholder{color:var(--color-text-secondary)}.social-hub__input:disabled{cursor:not-allowed;opacity:.6}.social-hub__send{display:inline-flex;align-items:center;justify-content:center;height:36px;padding:0 12px;border-radius:var(--radius-sm);background:var(--brass-950);border:1px solid var(--brass-700);color:var(--brass-500);font-size:14px;line-height:1;cursor:pointer;transition:background var(--motion-fast) var(--motion-change-ease)}.social-hub__send:hover:not(:disabled){background:color-mix(in oklch,var(--brass-500) 14%,var(--brass-950))}.social-hub__send:disabled{cursor:not-allowed;opacity:.5}.coming-soon-sheet__body-stack{display:flex;flex-direction:column;min-height:0}.coming-soon-sheet__hero{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:36px 24px;background:color-mix(in oklch,var(--color-canvas) 70%,var(--color-surface));border-bottom:1px solid var(--surface-divider)}.coming-soon-sheet__ring{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:color-mix(in oklch,var(--color-text-accent) 12%,var(--color-bar-background));border:1px solid color-mix(in oklch,var(--color-text-accent) 55%,var(--surface-divider-strong));color:var(--color-text-accent);font-size:26px;line-height:1}.coming-soon-sheet__title{margin:0;font-family:var(--font-display);font-size:22px;font-weight:600;letter-spacing:.02em;color:var(--color-class-priest)}.coming-soon-sheet__tagline{margin:0;font-family:var(--font-body);font-size:13px;text-align:center;color:var(--color-text-primary);line-height:1.45;max-width:320px}.coming-soon-sheet__chip{display:inline-flex;align-items:center;padding:5px 10px;border-radius:var(--radius-sm);background:var(--color-bar-background);border:1px solid var(--surface-divider-strong);color:var(--color-text-tertiary);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:9px;font-weight:600;letter-spacing:.2em;margin-top:4px}.coming-soon-sheet__body{display:flex;flex-direction:column;gap:12px;padding:20px 24px}.coming-soon-sheet__kicker{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:9px;font-weight:400;letter-spacing:.2em;color:var(--color-text-tertiary)}.coming-soon-sheet__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-family:var(--font-body);font-size:12px;line-height:1.5;color:var(--color-text-primary)}.coming-soon-sheet__actions{display:flex;gap:8px;padding:14px;background:color-mix(in oklch,var(--color-canvas) 50%,var(--color-overlay-soft));border-top:1px solid var(--surface-divider)}.coming-soon-sheet__btn{flex:1;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 14px;border-radius:2px;background:var(--color-bar-background);border:1px solid var(--surface-divider-strong);color:var(--color-text-secondary);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;font-weight:700;letter-spacing:.16em;cursor:pointer;transition:background var(--motion-fast) var(--motion-change-ease),color var(--motion-fast) var(--motion-change-ease),border-color var(--motion-fast) var(--motion-change-ease)}.coming-soon-sheet__btn:hover{color:var(--color-text-primary);border-color:color-mix(in oklch,var(--color-text-accent) 30%,var(--surface-divider-strong))}.coming-soon-sheet__btn--primary{background:color-mix(in oklch,var(--color-text-accent) 14%,var(--color-bar-background));border-color:color-mix(in oklch,var(--color-text-accent) 55%,var(--surface-divider-strong));color:var(--color-text-accent)}.coming-soon-sheet__btn--primary:hover{background:color-mix(in oklch,var(--color-text-accent) 22%,var(--color-bar-background));color:var(--color-text-accent)}.coming-soon-sheet__btn--primary[data-on=true]{background:color-mix(in oklch,var(--color-success) 16%,var(--color-bar-background));border-color:color-mix(in oklch,var(--color-success) 60%,var(--surface-divider-strong));color:var(--color-success-bright)}.coming-soon-sheet__btn--primary[data-on=true]:hover{background:color-mix(in oklch,var(--color-success) 22%,var(--color-bar-background))}.char-skeleton{display:flex;flex-direction:column;gap:14px;width:100%;min-height:100%;padding:16px var(--space-shell) 24px;background:var(--bg-primary)}.char-skeleton__hero{display:flex;flex-direction:column;gap:10px;padding:18px 20px 14px;border:var(--border-thin) solid var(--line-secondary);border-radius:var(--radius-md);background:linear-gradient(180deg,var(--brass-950),var(--bg-primary))}.char-skeleton__hero-row{display:flex;align-items:center;gap:14px}.char-skeleton__hero-copy{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0}.char-skeleton__band{display:flex;flex-direction:column;gap:10px;padding:14px 16px;border:var(--border-thin) solid var(--line-secondary);border-radius:var(--radius-md);background:var(--bg-secondary)}.char-skeleton__band--paper{background:linear-gradient(180deg,var(--brass-950) 0%,var(--bg-primary) 100%)}.char-skeleton__band-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-small);padding-bottom:6px;border-bottom:var(--border-thin) solid var(--line-tertiary)}.char-skeleton__grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.char-skeleton__entrypoints{display:flex;flex-direction:column;gap:8px}.inv-skeleton{flex:1 1 auto;display:flex;flex-direction:column;width:100%;min-height:calc(100svh - 74px - var(--app-bottom-control-footprint, 0px) - var(--app-bottom-nav-offset, 0px));background:var(--bg-primary)}.inv-skeleton__ledger{display:flex;align-items:center;justify-content:space-between;gap:var(--space-small);min-height:49px;padding:18px 20px;border-bottom:var(--border-thin) solid var(--line-primary);background:var(--surface-150)}.inv-skeleton__band{border-bottom:var(--border-thin) solid var(--line-primary)}.inv-skeleton__band:last-child{border-bottom:0}.inv-skeleton__band--paper{display:grid;place-items:center;padding:18px 20px;background:linear-gradient(180deg,var(--brass-950) 0%,var(--bg-primary) 100%)}.inv-skeleton__paper-grid{width:100%;max-width:400px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;grid-auto-rows:clamp(46px,12.3vw,54px)}.inv-skeleton__band--pack{display:flex;flex-direction:column;gap:12px;padding:16px 20px 24px}.inv-skeleton__bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-small);padding-bottom:4px}.inv-skeleton__bag-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;grid-auto-rows:clamp(46px,12.3vw,54px)}.quest-skeleton{flex:1 1 auto;display:flex;flex-direction:column;width:100%;min-height:calc(100svh - 74px - var(--app-bottom-control-footprint, 0px) - var(--app-bottom-nav-offset, 0px));background:var(--bg-primary)}.quest-skeleton__rail{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:48px;padding:var(--space-4) var(--space-5);border-bottom:var(--border-thin) solid var(--line-secondary);background:var(--surface-150)}.quest-skeleton__hero{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-6);border-bottom:var(--border-thin) solid var(--line-secondary);background:linear-gradient(180deg,var(--brass-950),var(--bg-primary))}.quest-skeleton__pills{display:flex;flex-wrap:wrap;gap:var(--space-2)}.quest-skeleton__counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:var(--border-thin) solid var(--line-secondary)}.quest-skeleton__count{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:var(--space-4) var(--space-3);border-right:var(--border-thin) solid var(--line-tertiary)}.quest-skeleton__count:last-child{border-right:0}.quest-skeleton__list-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-small);padding:14px var(--space-5) 8px}.quest-skeleton__list{list-style:none;margin:0;padding:0 var(--space-5) var(--space-6);display:flex;flex-direction:column;gap:6px}.quest-skeleton__row{display:flex;align-items:center;gap:var(--space-snug);padding:14px 16px;border:var(--border-thin) solid var(--line-secondary);border-radius:var(--radius-md);background:var(--bg-secondary)}.quest-skeleton__row-copy{flex:1;display:flex;flex-direction:column;gap:6px;min-width:0}.map-skeleton{position:relative;flex:1 1 auto;display:flex;flex-direction:column;width:100%;min-height:100%;background:var(--color-map-ocean)}.map-skeleton[data-variant=fullscreen]{position:absolute;inset:0;z-index:1}.map-skeleton__canvas{position:relative;flex:1 1 auto;overflow:hidden}.map-skeleton__grid{position:absolute;inset:0;background-image:linear-gradient(0deg,transparent 0,transparent calc(100% - 1px),color-mix(in oklch,var(--ink-100) 4%,transparent) 100%),linear-gradient(90deg,transparent 0,transparent calc(100% - 1px),color-mix(in oklch,var(--ink-100) 4%,transparent) 100%);background-size:64px 64px,64px 64px;opacity:.65;animation:map-skeleton-breathe var(--motion-ambient) cubic-bezier(.45,0,.55,1) infinite alternate;pointer-events:none}@keyframes map-skeleton-breathe{0%{opacity:.45}to{opacity:.85}}.map-skeleton__pins{position:absolute;inset:0}.map-skeleton__pin{position:absolute;width:12px;height:12px;border-radius:50%;background:color-mix(in oklch,var(--ink-300) 60%,transparent);box-shadow:0 0 0 3px color-mix(in oklch,var(--color-map-ocean) 80%,transparent);animation:ds-skeleton-breathe var(--motion-ambient) cubic-bezier(.45,0,.55,1) infinite alternate}.map-skeleton__pin--current{top:46%;left:48%;width:16px;height:16px;background:color-mix(in oklch,var(--brass-500) 70%,transparent)}.map-skeleton__compass{position:absolute;top:16px;right:16px}.map-skeleton__scale{position:absolute;bottom:18px;left:18px}.map-skeleton__sheet{position:relative;display:flex;flex-direction:column;gap:10px;padding:16px 20px 22px;border-top:var(--border-thin) solid var(--line-primary);background:var(--bg-secondary)}.map-skeleton__sheet-handle{align-self:center;width:36px;height:4px;border-radius:var(--radius-pill);background:color-mix(in oklch,var(--ink-300) 30%,transparent)}.map-skeleton__sheet-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-small)}@media(prefers-reduced-motion:reduce){.map-skeleton__grid,.map-skeleton__pin{animation:none;opacity:.6}}.acct-skeleton{display:flex;flex-direction:column;gap:var(--space-5);width:100%;padding:var(--space-5) var(--space-shell) var(--space-6)}.acct-skeleton__head{display:flex;flex-direction:column;gap:8px;padding-bottom:var(--space-4);border-bottom:var(--border-thin) solid var(--line-secondary)}.acct-skeleton__section{display:flex;flex-direction:column;gap:10px}.acct-skeleton__card{display:flex;flex-direction:column;border:var(--border-thin) solid var(--line-secondary);border-radius:var(--radius-md);background:var(--bg-secondary);overflow:hidden}.acct-skeleton__stat-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-small);padding:12px 16px;border-bottom:var(--border-thin) solid var(--line-tertiary)}.acct-skeleton__stat-row:last-child{border-bottom:0}.acct-skeleton__entry{display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:var(--border-thin) solid var(--line-tertiary)}.acct-skeleton__entry:last-child{border-bottom:0}.acct-skeleton__entry-copy{flex:1;display:flex;flex-direction:column;gap:6px;min-width:0}.acct-skeleton__actions{display:flex;flex-direction:column;gap:8px;margin-top:auto}.auth-skeleton-scene{position:fixed;inset:0;display:grid;place-items:center;background:var(--color-canvas);overflow:hidden}.auth-skeleton{position:relative;width:min(100%,480px);height:min(var(--app-mobile-frame-height, 700px),100svh);border:var(--border-thin) solid var(--line-primary);border-radius:var(--radius-md);background:var(--color-canvas);overflow:hidden;container-type:inline-size}.auth-skeleton__image,.auth-skeleton__scrim{position:absolute;inset:0;pointer-events:none}.auth-skeleton__image{z-index:0;background:var(--color-canvas) var(--asset-auth-welcome-hero, url(/auth/welcome-hero-v10.jpg)) center top / cover no-repeat;animation:ds-skeleton-breathe var(--motion-ambient) cubic-bezier(.45,0,.55,1) infinite alternate}.auth-skeleton__scrim{z-index:1;background:radial-gradient(ellipse at 50% 50%,color-mix(in srgb,var(--color-canvas) 0%,transparent),color-mix(in srgb,var(--color-canvas) 24%,transparent) 70%,color-mix(in srgb,var(--color-canvas) 48%,transparent))}.auth-skeleton__content{position:relative;z-index:2;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;padding:40px 24px;box-sizing:border-box}.auth-skeleton__logo{width:clamp(260px,70cqw,460px);aspect-ratio:2406 / 1501;margin-block:auto;opacity:.55}.auth-skeleton__actions{width:100%;display:flex;flex-direction:column;gap:36px}.auth-skeleton__primary{display:flex;flex-direction:column;gap:var(--space-small);align-items:center}.auth-skeleton__bind{display:flex;flex-direction:column;gap:23px}.auth-skeleton__divider{display:flex;align-items:center;gap:var(--space-snug);width:100%}.auth-skeleton__divider span{flex:1;height:1px;background:color-mix(in srgb,var(--ink-50) 8%,transparent)}.auth-skeleton__providers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-small)}.auth-skeleton__signin{display:flex;justify-content:center;margin-top:-16px}@container (min-width: 480px){.auth-skeleton__content{padding-block:88px;padding-inline:0}.auth-skeleton__actions{max-width:400px;margin-inline:auto}}@media(min-width:900px)and (min-height:640px){.auth-skeleton-scene{padding:var(--space-large);background:linear-gradient(180deg,color-mix(in srgb,var(--color-canvas) 56%,transparent),color-mix(in srgb,var(--color-canvas) 34%,transparent) 42%,color-mix(in srgb,var(--color-canvas) 64%,transparent)),radial-gradient(ellipse 86% 76% at 50% 50%,color-mix(in srgb,var(--color-canvas) 30%,transparent) 0%,color-mix(in srgb,var(--color-canvas) 70%,transparent) 62%,var(--color-canvas) 100%),var(--asset-auth-crater-bowl, url(/auth/auth-bg-crater-bowl-up.jpg)) center / cover no-repeat,var(--color-canvas);background-attachment:scroll,scroll,fixed,scroll}.auth-skeleton{width:min(100%,600px);height:min(850px,calc(100dvh - 48px));box-shadow:0 36px 96px #01020399,0 0 0 10px color-mix(in oklch,var(--color-text-primary) 3%,transparent),inset 0 0 0 1px color-mix(in oklch,var(--color-text-primary) 4%,transparent)}}@media(prefers-reduced-motion:reduce){.auth-skeleton__image{animation:none;opacity:.7}}.boot-gate-root{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:#10141a;color:#e8e0cf;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;z-index:9999;padding:24px;box-sizing:border-box}.boot-gate-stack{display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center;max-width:420px}.boot-gate-wordmark{font-family:Cinzel,EB Garamond,Times New Roman,serif;font-weight:600;letter-spacing:.32em;font-size:22px;text-transform:uppercase;color:#d6c6a0;margin:0}.boot-gate-rule{width:120px;height:2px;border-radius:1px;background:#c9a86a;opacity:.55}.boot-gate-rule--breathing{animation:boot-gate-breathe 2s cubic-bezier(.45,0,.55,1) infinite alternate}@keyframes boot-gate-breathe{0%{opacity:.32;transform:scaleX(.78)}to{opacity:.85;transform:scaleX(1)}}@media(prefers-reduced-motion:reduce){.boot-gate-rule--breathing{animation:none;opacity:.55}}.boot-gate-status{font-size:13px;letter-spacing:.04em;color:#e8e0cfb3;margin:0}.boot-gate-heading{font-family:Cinzel,EB Garamond,Times New Roman,serif;font-size:18px;font-weight:600;color:#e8e0cf;margin:0}.boot-gate-reason{font-size:13px;line-height:1.5;color:#e8e0cfc7;margin:0}.boot-gate-host{font-size:11px;letter-spacing:.06em;color:#c9a86ab3;font-family:JetBrains Mono,Menlo,monospace;word-break:break-all;margin:0}.boot-gate-actions{display:flex;gap:12px;margin-top:6px}.boot-gate-button{font:inherit;font-size:13px;letter-spacing:.06em;text-transform:uppercase;padding:10px 18px;border-radius:2px;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.boot-gate-button--primary{background:#c9a86a;color:#10141a;border:1px solid #c9a86a}.boot-gate-button--primary:hover{background:#d8b878;border-color:#d8b878}.boot-gate-button--secondary{background:transparent;color:#e8e0cfd1;border:1px solid rgba(201,168,106,.4)}.boot-gate-button--secondary:hover{border-color:#c9a86ad9;color:#e8e0cf}.boot-gate-button:focus-visible{outline:2px solid #c9a86a;outline-offset:2px}.boot-gate-footnote{font-size:11px;letter-spacing:.04em;color:#e8e0cf80;margin:8px 0 0;line-height:1.5;max-width:360px}
