@import"https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600;700;800&family=Cormorant+Garamond:wght@400;500;600;700&family=Source+Sans+3:wght@300;400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&family=JetBrains+Mono:wght@400;600&display=swap";:root{--color-bg-deep: #050505;--color-bg-main: #0a0a0a;--color-bg-card: #121212;--color-bg-overlay: rgba(10, 10, 10, .95);--color-text-primary: #e0d0c0;--color-text-secondary: #a0958a;--color-text-muted: #66605a;--color-text-highlight: var(--color-accent-gold, #d2b37a);--color-accent-blood: #8a1c1c;--color-accent-blood-dim: rgba(138, 28, 28, .15);--color-accent-blood-bright: #b32424;--color-border: rgba(191, 180, 160, .1);--color-border-hover: rgba(191, 180, 160, .25);--font-heading: "Cinzel", serif;--font-body: "Source Sans 3", sans-serif;--text-3xs: .8125rem;--text-2xs: .8125rem;--text-xs: .875rem;--text-sm: .9375rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--font-size-caption: var(--text-xs);--font-size-label: var(--text-xs);--font-size-body-sm: var(--text-xs);--font-size-body: var(--text-md);--font-size-body-lg: var(--text-lg);--font-size-button: var(--text-xs);--font-size-title-sm: clamp(1.125rem, 2vw, 1.375rem);--font-size-title-md: clamp(1.25rem, 2.4vw, 1.75rem);--font-size-title-lg: clamp(1.5rem, 3vw, 2.2rem);--header-height: 72px;--mobile-spacing: 12px;--desktop-spacing: 24px;--touch-target-min: 44px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 28px;--space-8: 32px;--space-9: 40px;--space-10: 48px;--space-11: 56px;--space-12: 64px;--radius-xs: 2px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-pill: 999px;--shadow-panel: 0 4px 20px rgba(0, 0, 0, .6);--shadow-elevated: 0 12px 26px rgba(0, 0, 0, .4);--shadow-strong: 0 24px 60px rgba(0, 0, 0, .6);--surface-panel: var(--color-bg-card);--surface-card: rgba(255, 255, 255, .03);--surface-card-strong: rgba(18, 18, 18, .85);--surface-input: rgba(0, 0, 0, .35);--auth-panel-padding: 28px 28px 22px;--fab-size: 64px;--fab-size-mobile: 56px;--dot-size: 16px;--dot-size-mobile: 22px;--control-height: 42px;--dropdown-min-width: 280px;--chip-padding: 2px 8px 2px 10px;--chip-padding-compact: 2px 10px;--chip-remove-size: 18px}:root,[data-amplify-theme]{--amplify-colors-background-primary: #121212;--amplify-colors-background-secondary: #0f0f0f;--amplify-colors-background-tertiary: #0a0a0a;--amplify-colors-font-primary: var(--color-text-primary);--amplify-colors-font-secondary: var(--color-text-secondary);--amplify-colors-font-tertiary: var(--color-text-muted);--amplify-colors-primary-10: var(--color-accent-blood-dim);--amplify-colors-primary-20: var(--color-accent-blood-dim);--amplify-colors-primary-40: var(--color-accent-blood-dim);--amplify-colors-primary-60: var(--color-accent-blood);--amplify-colors-primary-80: var(--color-accent-blood-bright);--amplify-colors-primary-90: var(--color-accent-blood-bright);--amplify-colors-primary-100: var(--color-accent-blood);--amplify-colors-font-interactive: var(--color-accent-blood-bright);--amplify-colors-font-hover: var(--color-accent-blood-bright);--amplify-colors-font-focus: var(--color-accent-blood-bright);--amplify-colors-font-active: var(--color-accent-blood-bright);--amplify-colors-border-primary: rgba(191, 180, 160, .35);--amplify-colors-border-secondary: rgba(191, 180, 160, .2);--amplify-components-authenticator-router-background-color: #121212;--amplify-components-authenticator-router-border-color: rgba(191, 180, 160, .35);--amplify-components-authenticator-router-box-shadow: var(--shadow-strong);--amplify-components-card-background-color: #121212;--amplify-components-divider-label-background-color: #121212;--amplify-components-fieldcontrol-background-color: rgba(5, 5, 5, .6)}*{box-sizing:border-box}body{margin:0;background-color:var(--color-bg-deep);background-image:radial-gradient(circle at 50% 0%,#1a1515,var(--color-bg-deep) 70%);color:var(--color-text-primary);font-family:var(--font-body);font-size:var(--font-size-body);line-height:1.5;min-height:100vh;-webkit-font-smoothing:antialiased}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:var(--space-11) var(--space-4);position:relative}.auth-shell:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 15% 20%,rgba(138,28,28,.35),transparent 55%),radial-gradient(circle at 85% 80%,rgba(80,20,20,.4),transparent 60%);opacity:.7;pointer-events:none}.auth-shell .amplify-authenticator{width:min(440px,100%);z-index:1;--amplify-colors-background-primary: #121212;--amplify-colors-background-secondary: #0f0f0f;--amplify-colors-background-tertiary: #0a0a0a;--amplify-colors-font-primary: var(--color-text-primary);--amplify-colors-font-secondary: var(--color-text-secondary);--amplify-colors-font-tertiary: var(--color-text-muted);--amplify-components-card-background-color: rgba(18, 18, 18, .95);--amplify-components-authenticator-container-background-color: transparent;--amplify-components-authenticator-router-background-color: transparent;--amplify-components-fieldcontrol-background-color: rgba(5, 5, 5, .6);--amplify-components-fieldcontrol-border-color: var(--color-border);--amplify-components-fieldcontrol-focus-border-color: var(--color-accent-blood-bright);--amplify-components-tabs-item-active-color: var(--color-text-primary);--amplify-components-tabs-item-active-border-color: var(--color-accent-blood);--amplify-components-button-primary-background-color: var(--color-accent-blood);--amplify-components-button-primary-border-color: var(--color-accent-blood);--amplify-components-button-primary-hover-background-color: var(--color-accent-blood-bright);--amplify-components-button-primary-hover-border-color: var(--color-accent-blood-bright)}.auth-shell [data-amplify-authenticator]{background-color:#121212!important;color:var(--color-text-primary);--amplify-colors-background-primary: #121212 !important;--amplify-colors-background-secondary: #0f0f0f !important;--amplify-colors-background-tertiary: #0a0a0a !important;--amplify-colors-font-primary: var(--color-text-primary) !important;--amplify-colors-font-secondary: var(--color-text-secondary) !important;--amplify-colors-font-tertiary: var(--color-text-muted) !important;--amplify-components-authenticator-router-background-color: #121212 !important;--amplify-components-authenticator-container-background-color: #121212 !important}.auth-shell .amplify-authenticator__container,.auth-shell .amplify-authenticator__router,.auth-shell .amplify-authenticator__form,.auth-shell .amplify-card{background:linear-gradient(160deg,#121212f2,#0a0a0af2)!important;border:1px solid var(--color-border);box-shadow:var(--shadow-strong);padding:var(--auth-panel-padding)}.auth-shell .amplify-authenticator__container{border-radius:var(--radius-lg);overflow:hidden}.auth-shell [data-amplify-container],.auth-shell [data-amplify-router],.auth-shell [data-amplify-router-content],.auth-shell [data-amplify-form]{background:linear-gradient(160deg,#121212f2,#0a0a0af2)!important;background-color:#121212!important}.auth-shell [data-amplify-router]{border-color:var(--color-border)!important;box-shadow:var(--shadow-strong)!important;--amplify-components-authenticator-router-background-color: #121212 !important}.auth-shell [data-amplify-container]{border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--color-border);box-shadow:var(--shadow-strong);padding:var(--auth-panel-padding)}.auth-shell .amplify-tabs__list,.auth-shell .amplify-tabs__panel{background:transparent!important}.auth-shell .amplify-divider__label{color:var(--color-text-muted)}.auth-header{display:grid;gap:var(--space-5);justify-items:center;text-align:center;margin-bottom:var(--space-3);padding-top:var(--space-2)}.auth-header__text{display:grid;gap:var(--space-2);justify-items:center}.auth-header__logo{width:120px;height:120px;object-fit:contain;filter:drop-shadow(0 0 12px rgba(138,28,28,.45))}.auth-header__eyebrow{margin:0;text-transform:uppercase;letter-spacing:.25em;font-size:var(--text-xs);color:var(--color-text-muted)}.auth-header__title{margin:0;font-family:var(--font-heading);color:var(--color-accent-gold, #d2b37a);font-size:var(--text-xl);letter-spacing:.05em;text-transform:uppercase;font-weight:700}.auth-shell .amplify-tabs{border-bottom:1px solid var(--color-border)}.auth-shell .amplify-tabs__item{font-family:var(--font-heading);letter-spacing:.08em;text-transform:uppercase;font-size:var(--text-xs)}.auth-shell .amplify-tabs__item--active{color:var(--color-text-primary)}.auth-shell .amplify-label{color:var(--color-text-secondary);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase}.auth-shell .amplify-input{background:#05050599;border-color:var(--color-border);color:var(--color-text-primary)}.auth-shell .amplify-input:focus{border-color:var(--color-accent-blood-bright);box-shadow:0 0 0 1px #b32424b3}.auth-shell .amplify-button--primary{background:var(--color-accent-blood);border-color:var(--color-accent-blood);text-transform:uppercase;letter-spacing:.08em;font-family:var(--font-heading)}.auth-shell .amplify-button--primary:hover{background:var(--color-accent-blood-bright);border-color:var(--color-accent-blood-bright)}.auth-shell .amplify-button--link{color:var(--color-text-secondary)}.auth-footer{margin:var(--space-4) 0 0;text-align:center;font-size:var(--text-xs);color:var(--color-text-muted)}.app{min-height:100vh;display:flex;flex-direction:column;padding:0 var(--desktop-spacing) var(--desktop-spacing);gap:var(--desktop-spacing);max-width:1400px;margin:0 auto}.app__header{position:sticky;top:0;z-index:50;background:linear-gradient(180deg,#120505,#050505 75%);box-shadow:0 -1px #050505;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--color-border);min-height:var(--header-height);margin-bottom:var(--space-3);width:100%}.app__header:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 15% -60%,rgba(138,28,28,.55),transparent 55%),radial-gradient(circle at 85% -40%,rgba(90,16,16,.7),transparent 60%),radial-gradient(circle at 50% 140%,rgba(138,28,28,.3),transparent 45%);opacity:.7;pointer-events:none}.app__header:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:linear-gradient(90deg,transparent,rgba(210,179,122,.6),transparent);pointer-events:none}.app__header-content{max-width:1400px;margin:0 auto;padding:var(--space-3) var(--desktop-spacing);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);position:relative;z-index:1}.app__brand{display:inline-flex;align-items:center;gap:var(--space-3);flex-shrink:0}.app__titles{display:flex;flex-direction:column}.app__crest{width:56px;height:56px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#d2b37a2e,#080605e6);border:1px solid rgba(210,179,122,.35);box-shadow:0 0 12px #d2b37a33,inset 0 0 18px #000c;display:inline-flex;align-items:center;justify-content:center}.app__logo{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;filter:drop-shadow(0 0 10px rgba(138,28,28,.3))}.app__logo-button{border:none;background:transparent;padding:0;cursor:pointer}.app__logo img{width:100%;height:100%;object-fit:contain}.app__product{font-family:var(--font-heading);color:var(--color-accent-gold, #d2b37a);font-size:var(--text-lg);letter-spacing:.05em;text-transform:uppercase;font-weight:700;text-shadow:0 2px 6px rgba(0,0,0,.85);margin-top:2px;background:transparent;border:none;padding:0;cursor:pointer;text-align:left}.app__product-main,.app__product-sub{display:inline}.app__eyebrow{font-family:var(--font-heading);font-size:var(--text-xs);letter-spacing:.2em;text-transform:uppercase;color:#d2b37aa6}.app__actions{display:flex;gap:var(--space-4);align-items:center;justify-content:flex-end;flex-wrap:nowrap}.mobile-menu__toggle{display:none;border:1px solid rgba(210,179,122,.35);background:#0c0a08cc;width:40px;height:40px;border-radius:var(--radius-pill);align-items:center;justify-content:center;cursor:pointer;color:var(--color-accent-gold, #d2b37a)}.mobile-menu__toggle:hover{border-color:#d2b37ab3;box-shadow:0 0 0 2px #d2b37a33}.menu-link{border:none;background:#0c0a0899;color:var(--color-accent-gold, #d2b37a);padding:6px 12px;font-family:var(--font-heading);font-weight:700;letter-spacing:.05em;text-transform:uppercase;font-size:var(--text-sm);cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:var(--space-2);border-radius:var(--radius-pill);border:1px solid rgba(210,179,122,.28);position:relative;top:0;line-height:1}.menu-link__icon{display:inline-flex;align-items:center;justify-content:center;line-height:0}.menu-link__icon svg{width:14px;height:14px}.menu-link:hover{color:#f0d7a6;border-color:#d2b37a99;box-shadow:0 0 0 2px #d2b37a26}.menu-link--active{color:#f0d7a6;border-color:#d2b37a99;background:#8a1c1c59;box-shadow:0 0 0 2px #d2b37a26}.menu-separator{display:none}@media (max-width: 1120px) and (min-width: 769px){.app__actions{display:none}.app__brand{min-width:0;flex:1 1 auto}.app__titles{min-width:0}.mobile-menu__toggle{display:inline-flex;width:var(--touch-target-min);height:var(--touch-target-min);flex-shrink:0;margin-left:var(--space-2)}}.mobile-menu{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50}.mobile-menu__overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#050505b3}.mobile-menu__drawer{position:absolute;top:0;right:0;height:100%;width:min(320px,85vw);background:var(--color-bg-main);border-left:1px solid var(--color-border);box-shadow:-18px 0 40px #0000008c;display:flex;flex-direction:column;padding:var(--space-5);gap:var(--space-5)}.mobile-menu__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4)}.mobile-menu__profile{display:flex;gap:var(--space-3);align-items:center;min-width:0}.mobile-menu__profile-meta{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.mobile-menu__profile-email{font-size:var(--text-xs);color:var(--color-text-primary);font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.06em;word-break:break-word;overflow-wrap:anywhere}.mobile-menu__profile-id{font-size:var(--text-xs);color:var(--color-text-muted);word-break:break-word;overflow-wrap:anywhere}.mobile-menu__close{border:1px solid var(--color-border);background:transparent;color:var(--color-text-secondary);width:34px;height:34px;border-radius:var(--radius-pill);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.mobile-menu__close:hover{color:var(--color-text-primary);border-color:var(--color-accent-blood)}.mobile-menu__nav{display:flex;flex-direction:column;gap:var(--space-2);align-items:flex-end}.mobile-menu__footer{margin-top:auto;display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-3)}.mobile-menu__language{display:grid;gap:var(--space-2);align-items:flex-end;margin-bottom:var(--space-3);width:100%}.mobile-menu__language-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:var(--color-text-muted);font-family:var(--font-heading)}.mobile-menu__language-options{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:flex-end}.mobile-menu__nav .menu-link,.mobile-menu__footer .menu-link{justify-content:flex-end;text-align:right}.profile-menu{position:relative;display:inline-flex;align-items:center;top:0}.profile-menu__button{border:1px solid rgba(210,179,122,.35);background:#0c0a0899;width:34px;height:34px;border-radius:var(--radius-pill);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:border-color .2s ease,box-shadow .2s ease;color:var(--color-accent-gold, #d2b37a)}.profile-menu__button:hover{border-color:#d2b37ab3;box-shadow:0 0 0 2px #d2b37a33}.profile-menu__avatar{width:100%;height:100%;border-radius:inherit;object-fit:cover}.profile-menu__initial{color:var(--color-accent-gold, #d2b37a);font-family:var(--font-heading);font-size:var(--text-xs);letter-spacing:.08em}.profile-menu__initial svg{display:block;width:16px;height:16px}.mobile-menu__toggle svg,.mobile-menu__close svg{width:18px;height:18px}.profile-menu__dropdown{position:absolute;top:calc(100% + var(--space-3));right:0;background:var(--surface-panel);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-2);min-width:var(--dropdown-min-width);box-shadow:var(--shadow-elevated);z-index:20}.profile-menu__meta{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-2) var(--space-2);border-radius:var(--radius-md);background:#0a0a0a99;border:1px solid rgba(138,28,28,.2);margin-bottom:var(--space-2)}.profile-menu__meta-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.12em;color:var(--color-text-muted);font-family:var(--font-heading)}.profile-menu__meta-value{font-size:var(--text-xs);color:var(--color-text-primary);word-break:break-all}.profile-menu__item{width:100%;border:none;background:transparent;color:var(--color-text-secondary);font-family:var(--font-heading);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);cursor:pointer}.profile-menu__item:hover{color:var(--color-text-primary);background:var(--color-accent-blood-dim)}.profile-menu__item--active{color:var(--color-text-primary);background:var(--color-accent-blood-dim);border:1px solid rgba(210,179,122,.35)}.profile-menu__language{display:grid;gap:var(--space-1)}.app__content{display:grid;grid-template-columns:minmax(240px,300px) minmax(0,1fr);gap:var(--space-6);align-items:start}.app__content--single{grid-template-columns:minmax(0,1fr)}.grid{display:grid;gap:var(--space-4)}.stack{display:flex;flex-direction:column;gap:var(--space-4)}.inline{display:flex;align-items:center;gap:var(--space-2)}.inline--wrap{flex-wrap:wrap}.center{display:grid;place-items:center}.grid--two{grid-template-columns:repeat(2,1fr)}.grid--three{grid-template-columns:repeat(3,1fr)}@media (max-width: 1024px){.grid--three{grid-template-columns:repeat(2,1fr)}}.panel{background:var(--surface-panel);border:1px solid var(--color-border);border-radius:var(--radius-lg);border-top-left-radius:0;border-top-right-radius:0;box-shadow:var(--shadow-panel);overflow:hidden}.panel__header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center;background:#ffffff05}.panel__actions{display:flex;gap:var(--space-4);align-items:center}.panel__status{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.12em}.panel__status-select{background:var(--surface-input);border:1px solid var(--color-border);color:var(--color-text-primary);padding:6px var(--space-3);border-radius:var(--radius-md);text-transform:uppercase;letter-spacing:.12em;font-size:var(--text-xs)}.panel__status-value{font-size:var(--text-xs);letter-spacing:.12em;color:var(--color-text-primary)}.stepper__nav{display:flex;justify-content:space-between;align-items:center;margin-top:var(--space-6);padding-top:var(--space-6);border-top:1px solid var(--color-border)}.panel__title{font-family:var(--font-heading);font-size:var(--text-lg);color:var(--color-text-primary);margin:0;letter-spacing:.05em}.title-with-icon{display:inline-flex;align-items:center;gap:var(--space-2);line-height:1;font-family:var(--font-heading);font-size:1.4rem;letter-spacing:.05em}.title-with-icon svg{width:18px;height:18px;flex-shrink:0}.character-edit__title-input{background:transparent;border:none;border-bottom:1px solid transparent;color:inherit;font-family:var(--font-heading);font-size:1.4rem;letter-spacing:.05em;line-height:1;padding:0;min-width:140px;max-width:100%}.character-edit__title-input::placeholder{color:var(--color-text-secondary)}.character-edit__title-input:focus{outline:none;border-bottom-color:var(--color-border)}.character-edit__subtitle{display:flex;align-items:center;gap:var(--space-2)}.character-edit__subtitle-input{background:transparent;border:none;border-bottom:1px solid var(--color-border);color:var(--color-text-secondary);font-size:var(--text-md);line-height:1.4;padding:2px 0 4px;min-width:240px;max-width:100%;transform:translateY(-2px)}.character-edit__subtitle-input:focus{outline:none;border-bottom-color:var(--color-text-secondary)}.panel__body{padding:var(--space-5)}.panel--list{position:sticky;top:calc(var(--header-height) + var(--space-6));max-height:calc(100vh - var(--header-height) - calc(var(--space-6) * 2));overflow-y:auto}.panel__card{background:var(--surface-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.section-card{gap:var(--space-4)}.section-card__title{margin:0 0 var(--space-2);font-family:var(--font-heading);color:var(--color-text-secondary);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--color-border);padding-bottom:var(--space-1);display:flex;align-items:center;gap:var(--space-2);line-height:1}.section-card__title svg{width:16px;height:16px;flex-shrink:0;transform:none}.gang-admin__layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:16px}.gang-admin__sidebar{min-height:0;max-height:min(760px,70vh);display:flex;flex-direction:column}.gang-admin__sidebar-header{margin-bottom:12px;align-items:flex-start}.gang-admin__list{flex:1 1 auto;min-height:0;gap:8px;overflow-y:auto;padding-right:4px}.gang-admin__new-button{margin-top:12px;width:100%}.gang-admin__content{min-width:0;gap:16px}.gang-admin__editor{border:1px solid rgba(166,84,54,.28);background:linear-gradient(180deg,#4a0a1229,#0e080a73)}.gang-admin__form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;align-items:start}.gang-admin__field{margin:0}.gang-admin__subheading{margin:0 0 6px;display:flex;align-items:center;gap:6px;color:var(--color-text-highlight);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em}.gang-admin__concept-inline{margin:0;border:1px solid rgba(186,116,74,.24);background:linear-gradient(135deg,#5a0e1633,#160a0c80)}.gang-admin__custom-card{margin:0;gap:10px;border:1px solid rgba(166,84,54,.2);background:#2312148f}.gang-admin__actions{justify-content:space-between;width:100%}.gang-admin__lower-grid{column-gap:16px;align-items:start}.gang-admin__concept-preview{border:1px solid rgba(186,116,74,.24);background:linear-gradient(135deg,#5c0e1852,#240a0e80)}.gang-admin__hint{margin:10px 0 0;padding-top:10px;border-top:1px solid var(--color-border);font-size:var(--text-xs);display:inline-flex;gap:8px;align-items:center}.discipline-card__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.discipline-card__info{display:flex;align-items:center;gap:var(--space-3);min-width:0}.discipline-card__title{margin:0;font-size:var(--text-sm);font-weight:600;color:var(--color-text-highlight)}.discipline-card__level{font-family:var(--font-heading);font-size:2rem;font-weight:700;color:var(--color-accent-blood);line-height:1;min-width:28px;text-align:center}.discipline-card__meta h5,.discipline-card__meta h4{margin:0}.discipline-card__controls{display:flex;align-items:center;gap:var(--space-2)}.power-card{display:flex;align-items:flex-start;gap:var(--space-4);width:100%}.power-card--stacked{flex-direction:column;align-items:stretch;gap:var(--space-2)}.power-card__topline{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:var(--space-3);width:100%}.power-card__topline .power-card__level{min-width:0;text-align:left}.power-card__source-chip{justify-self:end}.power-card__level{font-family:var(--font-heading);font-size:1.8rem;font-weight:700;color:var(--color-accent-blood);line-height:1;min-width:24px;text-align:center}.power-card__body{display:flex;flex-direction:column;gap:4px;flex:1;align-items:flex-start;text-align:left;width:100%}.power-card__source-row{display:flex;justify-content:flex-end;align-items:center;min-height:28px;width:100%}.power-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);width:100%}.text-block{display:flex;flex-direction:column;gap:var(--space-2)}.text-block p{margin:0}.text-block--clickable{cursor:pointer;color:var(--color-text-muted)}.text-block--clickable p{color:inherit}.text-block--clickable:hover{color:var(--color-text-highlight)}.text-block--clickable:hover .detail,.text-block--clickable:focus .detail{color:var(--color-text-highlight)}.text-block--clickable:focus{outline:1px solid var(--color-border-hover);outline-offset:4px}.power-card__text{font-size:var(--text-xs);line-height:1.4}.power-card .pool-grid{grid-template-columns:repeat(2,1fr);width:100%;justify-items:stretch}@media (max-width: 640px){.power-card .pool-grid{grid-template-columns:1fr}}.panel__body>.section-card{margin-top:var(--space-4)}.panel__body>.section-card:first-child{margin-top:0}.step-card__body>.section-card{margin-top:var(--space-4)}.step-card__body>.section-card:first-child{margin-top:0}.panel__card--warning{border-color:#8a1c1c80;background:#8a1c1c14;color:var(--color-text-primary)}.panel__card>h4{margin:0 0 var(--space-2);font-family:var(--font-heading);color:var(--color-text-secondary);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--color-border);padding-bottom:var(--space-1)}.combat-pools{gap:var(--space-4)}.combat-pools__row{display:grid;gap:var(--space-3)}.combat-pools__row--two{grid-template-columns:repeat(2,minmax(0,1fr))}.combat-pools__row--three{grid-template-columns:repeat(3,minmax(0,1fr))}.combat-pools__row--single{grid-template-columns:minmax(0,1fr)}.combat-pool{background:#0003;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.combat-pool__header{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-heading);font-size:var(--text-xs);letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-muted)}.combat-pool__row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.combat-pool__info{display:flex;flex-direction:column;justify-content:center;gap:2px;min-width:0}.combat-pool__label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted)}.combat-pool__total{font-family:var(--font-heading);font-size:1.7rem;line-height:1;color:var(--color-text-highlight);text-align:right;min-width:32px}.combat-pool__detail{font-size:var(--text-xs);line-height:1.4}.pool-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-2)}.pool-card{border:1px solid var(--color-border);background:#00000040;border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);display:flex;flex-direction:column;gap:var(--space-2);width:100%}.pool-card__header{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-2)}.pool-card__label{font-family:var(--font-heading);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted)}.pool-card__label-content{display:inline-flex;align-items:center;gap:var(--space-2)}.pool-card__value{font-family:var(--font-heading);font-size:var(--text-xl);color:var(--color-text-highlight);line-height:1}.pool-card__list{font-size:var(--text-xs);color:var(--color-text-secondary);list-style:none;padding-left:0;margin:0}.predator-hunting-pool .pool-card{background:#0003;padding:var(--space-3)}.predator-hunting-pool .pool-card__header{align-items:center}.predator-hunting-pool .pool-card__label{font-size:var(--text-xs);letter-spacing:.05em}.predator-hunting-pool .pool-card__value{font-size:1.7rem;min-width:32px;text-align:right}.item-block{display:flex;flex-direction:column;gap:var(--space-1)}.item-block--shared-gang{border:1px solid rgba(170,170,170,.45);background:repeating-linear-gradient(-45deg,#b9b9b914 0,#b9b9b914 8px,#7878781f 8px,#7878781f 16px),#1414149e}.item-block.is-clickable:hover{box-shadow:0 0 0 1px var(--color-accent-blood)}.item-block.is-clickable.is-disabled:hover{box-shadow:none}.item-block.is-clickable:hover .text-block p,.item-block.is-clickable:hover .text-block--clickable{color:var(--color-text-highlight)!important}.item-block.is-clickable.is-disabled:hover .text-block p,.item-block.is-clickable.is-disabled:hover .text-block--clickable{color:var(--color-text-muted)!important}.item-block.is-clickable .text-block p:hover{color:var(--color-text-highlight)!important}.item-header{font-weight:600;color:var(--color-text-highlight);font-size:var(--text-sm)}.item-body,.description-text{font-size:var(--text-xs);color:var(--color-text-muted);line-height:1.4}.item-row{display:flex;justify-content:space-between;align-items:center;font-size:var(--text-xs);padding:var(--space-1) 0}.list__row{display:flex;justify-content:space-between;align-items:center;flex-wrap:nowrap}.list__row__stat-value{display:flex;align-items:center;gap:12px}.character-details__mobile-appbar{display:block;position:fixed;right:calc(var(--space-6) + 10px);bottom:calc(var(--space-6) + 10px);width:60px;z-index:120;background:linear-gradient(180deg,#080606fa,#140808f5);border:1px solid rgba(138,28,28,.65);border-radius:16px;box-shadow:0 16px 32px #0000008c}.character-details__mobile-appbar-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;height:auto;width:100%;padding:10px 0}.character-details__mobile-appbar-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:#e9dec4eb;width:44px;height:44px;border-radius:0;display:inline-flex;align-items:center;justify-content:center;box-shadow:none;transition:color .2s ease}.character-details__mobile-appbar-button+.character-details__mobile-appbar-button{position:relative;margin-top:8px}.character-details__mobile-appbar-button+.character-details__mobile-appbar-button:before{content:"";position:absolute;left:50%;top:-4px;width:26px;height:1px;transform:translate(-50%);background:linear-gradient(to right,#bfb4a000,#d2b37ad9,#bfb4a000)}.character-details__mobile-appbar-button--active{color:#f6dfb2;background:radial-gradient(circle at 50% 45%,#d2b37a3d,#d2b37a00 72%);text-shadow:0 0 14px rgba(210,179,122,.6)}.character-details__mobile-appbar-button:not(.character-details__mobile-appbar-button--wallet):active{color:#f6dfb2;background:radial-gradient(circle at 50% 45%,#d2b37a33,#d2b37a00 72%)}.character-details__mobile-appbar-button--wallet{position:relative;width:34px;height:34px;min-width:34px;min-height:34px;padding:0;border-radius:8px;border:1px solid rgba(63,209,199,.4);background:linear-gradient(135deg,#14222ee6,#0a101cf2);color:#e7f4ff;box-shadow:0 10px 20px #00000057;font-family:var(--banking-mono, "JetBrains Mono", "Menlo", "Monaco", monospace);transition:border-color .2s ease,color .2s ease,background .2s ease,transform .2s ease}.character-details__mobile-appbar-button--wallet:before{display:none}.character-details__mobile-appbar-wallet-symbol{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:var(--text-md);line-height:1;letter-spacing:0;text-transform:uppercase;pointer-events:none;white-space:nowrap}.character-details__mobile-appbar-button:focus-visible{outline:2px solid rgba(191,180,160,.72);outline-offset:2px}@media (hover: hover) and (pointer: fine){.character-details__mobile-appbar-button:hover{color:#f3e9d1}.character-details__mobile-appbar-button--wallet:hover{border-color:#7cf4dcb3;color:var(--banking-accent-strong);background:linear-gradient(135deg,#182836f2,#0a121efa);transform:rotate(6deg)}}.list--flush{list-style-position:inside;padding-left:0;margin-left:0}.item-key{color:var(--color-text-muted)}.item-value{font-weight:600;color:var(--color-text-highlight)}.card-add{padding:var(--space-3);border:1px dashed var(--color-border);border-radius:var(--radius-sm);background:linear-gradient(to bottom,#3c141433,#140a0a1a);transition:all .2s ease}.card-add:hover,.card-add:focus-within{border-color:var(--color-accent-blood);background:linear-gradient(to bottom,#501e1e40,#1e0a0a26);box-shadow:var(--shadow-elevated)}.list__item{width:100%;border:1px solid transparent;border-bottom:1px solid var(--color-border);background:transparent;color:var(--color-text-secondary);padding:var(--space-3) var(--space-4);text-align:left;cursor:pointer;transition:all .2s ease}.list__item:hover{background:#ffffff08;color:var(--color-text-primary);padding-left:var(--space-5)}.list__item--active{background:linear-gradient(90deg,var(--color-accent-blood-dim),transparent);border-left:3px solid var(--color-accent-blood);color:var(--color-text-primary)}.list__title{font-family:var(--font-heading);font-size:var(--text-sm);font-weight:600;display:block}.list__subtitle{font-size:var(--text-xs);color:var(--color-text-muted);margin-top:4px;display:block}.field{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.field label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);font-family:var(--font-heading)}input,select,textarea{background:var(--surface-input);border:1px solid var(--color-border);color:var(--color-text-primary);padding:var(--space-3) var(--space-3);font-family:var(--font-body);font-size:var(--text-sm);border-radius:var(--radius-xs);transition:border-color .2s;width:100%}select{color-scheme:dark;background-color:var(--surface-input);color:var(--color-text-primary)}select option,select optgroup{background:#0e0e0efa;background-color:#0e0e0e;color:var(--color-text-primary)}select optgroup{color:var(--color-text-highlight);font-weight:700}select option:checked{background:#601018e6;background-color:#601018;color:#f6eee0}select option:disabled{color:var(--color-text-muted)}input[type=checkbox],input[type=radio]{width:auto;padding:0;flex:0 0 auto}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-accent-blood);box-shadow:0 0 0 1px var(--color-accent-blood-dim)}@media (hover: none) and (pointer: coarse){input,select,textarea,.chip-input,.character-list__search,.data-page__search,.data-search__input,.banking-input input,.banking-pin__inputs input{font-size:var(--text-md)}}.owner-select{position:relative;width:100%;display:block}.owner-select__menu{position:absolute;top:calc(100% + 6px);left:0;right:0;max-height:240px;overflow-y:auto;background:var(--surface-card-strong);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-panel);padding:4px 0;z-index:20;display:block}.owner-select__option{width:100%;border:none;background:transparent;color:var(--color-text-primary);padding:var(--space-2) var(--space-3);text-align:left;font-family:var(--font-body);cursor:pointer;min-height:var(--touch-target-min);display:flex;align-items:center}.owner-select__option:hover,.owner-select__option--active{background:var(--color-accent-blood-dim)}.owner-select__empty{padding:var(--space-3);color:var(--color-text-muted);font-size:var(--text-2xs);display:block}.owner-select--inline{width:auto;min-width:180px}.button{border:1px solid var(--color-border);background:#ffffff0d;color:var(--color-text-primary);padding:var(--space-2) var(--space-5);font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.1em;font-size:var(--text-xs);cursor:pointer;transition:all .2s ease;border-radius:var(--radius-xs)}.button:hover:not(:disabled){background:var(--color-accent-blood);border-color:var(--color-accent-blood);color:#fff;text-shadow:0 0 5px rgba(0,0,0,.5)}.button--primary{background:var(--color-accent-blood);border-color:var(--color-accent-blood);color:#fff}.button--primary:hover{background:var(--color-accent-blood-bright)}.button:disabled{opacity:.5;cursor:not-allowed}.data-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--space-5)}.data-item{border:1px solid var(--color-border);background:linear-gradient(135deg,#ffffff09,#05050540);border-radius:var(--radius-md);padding:var(--space-3);box-shadow:inset 0 0 0 1px #ffffff04;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;cursor:pointer}.data-item summary{font-family:var(--font-heading);color:var(--color-text-primary);font-weight:600;cursor:pointer;list-style:none;text-transform:uppercase;letter-spacing:.05em;display:flex;align-items:center;gap:var(--space-2);line-height:1.4}.data-item__tag{margin-left:auto;font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);border:1px solid rgba(210,179,122,.3);border-radius:var(--radius-pill);padding:2px 8px;flex-shrink:0}.data-search-grid .data-item summary{display:flex;align-items:center;gap:var(--space-3);width:100%}.data-item__title{flex:1;min-width:0}.data-search-grid .data-item:not([open]){display:block}.data-search-grid .data-item__tag{margin-left:auto}.data-item>p,.data-item>.detail,.data-item>.stack,.data-item>.list{margin-top:var(--space-2);color:var(--color-text-secondary)}.data-item .stack{gap:6px}.data-item .stack h4{margin:var(--space-2) 0 0;font-family:var(--font-heading);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-secondary)}.barony-card .item-header{font-size:var(--text-md);font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding-top:var(--space-2)}.barony-card{gap:var(--space-3)!important}.barony-card>.detail:first-child{margin:0;padding:var(--space-2) var(--space-3);border-left:none;border-radius:var(--radius-md);border:1px solid rgba(210,179,122,.22);background:linear-gradient(180deg,#d2b37a0f,#d2b37a05),#0000002e;color:var(--color-text-highlight)}.barony-card>p.muted{margin:0;padding:0 var(--space-1);font-style:italic;color:var(--color-text-secondary)}.barony-card>.item-block{padding:var(--space-3);border-radius:var(--radius-md);border:1px solid rgba(191,180,160,.14);background:linear-gradient(180deg,#100c0cbf,#080808a6);box-shadow:inset 0 0 0 1px #ffffff04;gap:var(--space-2)}.barony-card>.item-block>.item-header{margin:0;padding-top:0;padding-bottom:var(--space-2);border-bottom:1px solid rgba(191,180,160,.12);color:var(--color-text-primary);text-shadow:0 0 8px rgba(138,28,28,.18)}.barony-card .item-block>.stack{gap:var(--space-2)}.barony-card .item-block .item-block{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:1px solid rgba(191,180,160,.1);background:linear-gradient(180deg,#ffffff04,#0000002e);gap:var(--space-2)}.barony-card .item-block .item-block>.item-header{padding-top:0;font-size:var(--text-sm);letter-spacing:.05em;color:#f1d08aeb}.barony-card .item-block h4{margin:0;font-family:var(--font-heading);font-size:var(--text-3xs);text-transform:uppercase;letter-spacing:.09em;color:var(--color-text-secondary)}.barony-card .description-text{margin:0;line-height:1.55;color:var(--color-text-primary)}.barony-card .detail{border-left-color:#8a1c1c73;background:#8a1c1c0f;border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding:var(--space-2) var(--space-3)}.barony-card ul.list--plain{margin:0;padding-left:1.1rem;display:grid;gap:6px}.barony-card ul.list--plain li{line-height:1.45;color:var(--color-text-secondary)}.barony-card ul.list--plain li::marker{color:#d2b37abf}.barony-card .rules-table{margin-top:2px;border-color:#bfb4a029;background:linear-gradient(180deg,#ffffff04,#0000002e),#00000029;box-shadow:inset 0 0 0 1px #ffffff03,0 2px 10px #00000029}.barony-card .rules-table table{font-size:var(--text-xs)}.barony-card .rules-table th{padding:10px 12px;color:#f1d08af2;border-bottom-color:#bfb4a029;background:#0000001f}.barony-card .rules-table td{vertical-align:top;padding:10px 12px;line-height:1.45;border-bottom-color:#ffffff0d}.barony-card .rules-table td .muted{color:#bfb4a0bf}.barony-card .rules-table td ul.list--plain{padding-left:.95rem}.barony-card .rules-table tbody tr:hover{background:#8a1c1c0d}.data-item ul.list--plain{margin:var(--space-2) 0 0;color:var(--color-text-secondary);padding-left:18px}.data-item ul.list--plain li{margin-top:6px;line-height:1.5}.data-item ul.list--plain li::marker{color:#d2b37ab3}.data-item p{margin:var(--space-2) 0 0}.data-item .detail{padding-left:var(--space-2);border-left:2px solid rgba(210,179,122,.25);color:var(--color-text-primary)}.data-item__label{display:block;font-weight:600;color:var(--color-text-primary);letter-spacing:.02em}.data-item__desc{display:block;color:var(--color-text-secondary);margin-top:2px}.data-item summary{margin-bottom:var(--space-2)}.data-item:not([open]){display:flex;align-items:center}.data-item:not([open]) summary{margin-bottom:0;padding:var(--space-1) 0}.data-item summary::-webkit-details-marker{display:none}.data-item summary:before{content:"";width:8px;height:8px;border-radius:999px;background:#d2b37abf;box-shadow:0 0 6px #d2b37a66;flex-shrink:0;transform:translateY(1px)}.data-item[open] summary:before{background:#8a1c1ce6;box-shadow:0 0 8px #8a1c1c80}.data-item[open]{grid-column:1 / -1;background:linear-gradient(135deg,#140c0ce6,#080808d9);border-color:var(--color-border-hover);box-shadow:var(--shadow-panel);transform:translateY(-1px)}.data-item[open] summary{color:var(--color-text-primary);text-shadow:0 0 10px rgba(138,28,28,.35)}.data-item[open]>p.muted{font-style:italic}.data-item[open] .stack{padding-top:var(--space-2);border-top:1px solid rgba(191,180,160,.12)}.rules-heading{font-family:var(--font-heading);color:var(--color-text-primary);margin:0;margin-top:var(--space-6);letter-spacing:.03em;text-shadow:0 0 10px rgba(138,28,28,.3)}.rules-paragraph{color:var(--color-text-secondary);line-height:1.6;margin:0}.rules-paragraph strong{color:var(--color-text-highlight)}.rules-paragraph em{color:var(--color-text-muted)}.rules-hr{border:none;height:0;margin:var(--space-4) 0}.rules-table,.rules-code{background:linear-gradient(135deg,#ffffff08,#05050540);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);box-shadow:inset 0 0 0 1px #ffffff04;max-width:100%}.rules-table{overflow-x:auto;-webkit-overflow-scrolling:touch}.rules-list-block{background:transparent;border:none;padding:0;box-shadow:none}.rules-list,.rules-olist{margin:var(--space-1) 0 var(--space-2);padding-left:22px;color:var(--color-text-secondary)}.rules-list-nested{margin-top:var(--space-1)}.rules-list-nested .rules-list,.rules-list-nested .rules-olist{margin:var(--space-1) 0}.rules-list li,.rules-olist li{margin-top:4px;line-height:1.5}.rules-list li::marker,.rules-olist li::marker{color:#d2b37ab3}.rules-selector{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-lg);background:#00000059;border:1px solid rgba(191,180,160,.15);align-self:stretch;width:100%}.rules-selector__button{display:inline-flex;align-items:center;gap:var(--space-2);justify-content:center;padding:10px 14px;border-radius:var(--radius-pill);border:1px solid transparent;background:transparent;color:var(--color-text-secondary);font-family:var(--font-heading);font-size:var(--text-md);font-weight:600;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;transition:all .2s ease;white-space:nowrap;line-height:1}.rules-selector__button svg{width:18px;height:18px;display:block}.rules-selector__button:hover{color:var(--color-text-primary);border-color:#d2b37a40}.rules-selector__button.is-active{color:var(--color-text-primary);background:#8a1c1c33;border-color:#8a1c1c66;box-shadow:inset 0 0 0 1px #8a1c1c33}.rules-page .panel__body{padding-top:var(--space-6)}.rules-page__stack{gap:var(--space-5)}.rules-page .rules-selector{align-self:stretch;padding:var(--space-2) var(--space-3);background:#00000073;box-shadow:var(--shadow-panel)}.rules-page .rules-selector__button{font-size:var(--text-xs);padding:8px 14px}.rules-page .rules-selector__button.is-active{background:linear-gradient(180deg,#8a1c1c73,#5a0a0a33);box-shadow:0 0 12px #8a1c1c59}.lore-page__subselector{margin-bottom:var(--space-4)}.lore-page__subselector.rules-selector{grid-template-columns:repeat(3,minmax(0,1fr))}.lore-page__subselector .rules-selector__button{min-height:56px;white-space:normal;line-height:1.2}.lore-page__reference .section-card__title,.lore-page__menu-card .section-card__title{align-items:flex-start}.lore-page__narrative .rules-paragraph,.lore-page__reference .rules-paragraph,.lore-page__narrative .rules-list,.lore-page__reference .rules-list,.lore-page__narrative .rules-olist,.lore-page__reference .rules-olist{overflow-wrap:anywhere}.rules-page .section-card{position:relative;background:linear-gradient(180deg,#140e0eeb,#0a0a0aeb);border-color:#bfb4a02e;box-shadow:var(--shadow-panel)}.rules-page .section-card:before{content:"";position:absolute;inset:0 0 auto 0;height:2px;background:linear-gradient(90deg,transparent,rgba(138,28,28,.7),transparent)}.rules-page .section-card__title{color:var(--color-text-primary);border-bottom:none;padding-bottom:0;margin-bottom:var(--space-3)}.rules-page .rules-markdown{display:grid;gap:var(--space-2)}.rules-page .rules-heading{letter-spacing:.04em;margin-top:var(--space-3)}.rules-page h1.rules-heading{margin-top:0;font-size:clamp(20px,2.4vw,30px)}.rules-page h2.rules-heading{margin-top:var(--space-3);font-size:clamp(16px,2vw,22px)}.rules-page h3.rules-heading,.rules-page h4.rules-heading{margin-top:var(--space-2);font-size:clamp(14px,1.6vw,18px);color:var(--color-text-secondary)}.rules-page .rules-paragraph{font-size:var(--text-sm);line-height:1.5}.intro-page .panel__body{padding-top:var(--space-6);padding-bottom:var(--space-6)}.intro-page .intro-note{position:relative;overflow:visible;margin-inline:auto;margin-top:var(--space-2);margin-bottom:var(--space-3);max-width:980px;padding:clamp(22px,3vw,36px) clamp(20px,3vw,36px) clamp(34px,4.2vw,52px);background:radial-gradient(circle at 16% 12%,rgba(255,255,255,.4),transparent 28%),radial-gradient(circle at 86% 88%,rgba(125,78,42,.1),transparent 34%),linear-gradient(165deg,#efe2bf,#e7d5ad 58%,#dcc695);border:1px solid rgba(81,58,35,.35);box-shadow:0 20px 36px #00000073,inset 0 0 0 1px #ffffff4d,inset 0 18px 28px #ffffff29,inset 0 -20px 30px #714a2929;transform:rotate(-.15deg);clip-path:polygon(.9% 1.2%,5.8% .15%,11.4% 1.05%,17.3% .35%,23.9% 1.2%,31.1% .28%,39.7% 1.05%,47.9% .22%,56.1% 1.1%,64.2% .3%,72.8% 1.2%,81.6% .25%,89.4% 1.05%,96.8% .4%,99.5% 8.7%,98.7% 18.6%,99.6% 29.4%,98.8% 41.8%,99.45% 54.1%,98.85% 66.6%,99.55% 79.5%,98.7% 90.8%,97.8% 98.9%,91.7% 99.35%,84.1% 98.45%,75.8% 99.4%,67.2% 98.6%,58.3% 99.5%,49.5% 98.55%,40.6% 99.45%,31.8% 98.5%,23.7% 99.35%,15.4% 98.6%,8.1% 99.45%,1.2% 98.7%,.35% 91.6%,1.15% 80.6%,.3% 68.4%,1.2% 56.2%,.4% 43.7%,1.15% 31.2%,.28% 20.1%,1% 10.3%)}.intro-page .charter-note{position:relative;overflow:visible;margin-inline:auto;margin-top:var(--space-3);margin-bottom:var(--space-2);max-width:980px;padding:clamp(24px,3.2vw,40px) clamp(22px,3.2vw,40px) clamp(38px,4.6vw,58px);background:radial-gradient(circle at 12% 10%,rgba(255,244,215,.22),transparent 24%),radial-gradient(circle at 82% 86%,rgba(92,58,28,.16),transparent 30%),linear-gradient(168deg,#d9ccb1,#ccb893 54%,#bea27a);border:1px solid rgba(73,48,28,.42);box-shadow:0 26px 42px #0000006b,inset 0 0 0 1px #fff7e938,inset 0 22px 30px #fff7e71a,inset 0 -18px 30px #5a3a1f38;transform:rotate(.3deg);clip-path:polygon(1.2% 2.2%,7.1% .6%,14.5% 1.9%,22.8% .7%,30.7% 2.1%,39.5% .8%,48.4% 1.7%,57.7% .6%,66.1% 1.9%,74.5% .9%,82.9% 2%,91.6% .8%,98.2% 3.4%,99.2% 10.4%,98.1% 18.5%,99.1% 27.7%,98% 39.8%,99.2% 53.6%,97.8% 66.2%,99% 77.8%,97.6% 89.7%,95.3% 97.8%,87.8% 99.1%,79.9% 97.7%,70.8% 99%,61.7% 97.8%,52.9% 99.2%,44.1% 97.5%,35% 99.1%,26.1% 97.8%,17.9% 99.2%,9.5% 97.6%,2% 98.5%,.5% 90.2%,1.7% 79.8%,.7% 67.9%,1.8% 54.9%,.7% 42.2%,1.7% 30.1%,.6% 18.7%,1.5% 9.8%)}.intro-page .charter-note:before,.intro-page .charter-note:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.intro-page .charter-note:before{background:linear-gradient(180deg,rgba(83,53,29,.18) 0%,rgba(83,53,29,.06) 10%,transparent 24%,transparent 74%,rgba(83,53,29,.14) 100%),linear-gradient(90deg,rgba(83,53,29,.14) 0%,rgba(83,53,29,.03) 12%,transparent 22%,transparent 78%,rgba(83,53,29,.08) 90%,rgba(83,53,29,.16) 100%),radial-gradient(circle at 14% 12%,rgba(82,51,24,.18),transparent 18%),radial-gradient(circle at 86% 86%,rgba(67,41,20,.14),transparent 20%);opacity:.72;mix-blend-mode:multiply}.intro-page .charter-note:after{top:10px;right:10px;bottom:10px;left:10px;border:1px solid rgba(81,51,24,.28);opacity:.7}.intro-page .intro-note:before,.intro-page .intro-note:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.intro-page .intro-note:before{background:linear-gradient(180deg,rgba(106,73,45,.14) 0%,rgba(106,73,45,.04) 7%,transparent 18%,transparent 82%,rgba(106,73,45,.1) 100%),linear-gradient(90deg,rgba(106,73,45,.1) 0%,rgba(106,73,45,.03) 10%,transparent 24%,transparent 76%,rgba(106,73,45,.07) 90%,rgba(106,73,45,.12) 100%),radial-gradient(circle at 12% 6%,rgba(98,66,42,.1),transparent 18%),radial-gradient(circle at 84% 94%,rgba(98,66,42,.08),transparent 20%);opacity:.62;mix-blend-mode:multiply}.intro-page .intro-note:after{border:1px solid rgba(70,47,29,.28);opacity:.55}.intro-page .intro-note .section-card__title{color:#4d2f19;text-shadow:none;margin-bottom:var(--space-4)}.intro-page .intro-note .section-card__title svg{color:#7b4a24}.intro-page .intro-note .rules-markdown{color:#21150c;font-family:Georgia,Times New Roman,serif;font-size:clamp(1rem,1.2vw,1.1rem);line-height:1.75;gap:var(--space-3);padding-top:clamp(8px,1.2vw,14px);padding-bottom:clamp(10px,1.6vw,18px);text-shadow:none}.intro-page .intro-note .rules-paragraph{color:#21150c;font-size:clamp(1rem,1.18vw,1.12rem);line-height:1.75}.intro-page .intro-note .rules-paragraph strong{color:#5f2318;font-weight:700}.intro-page .intro-note .rules-paragraph em{color:#5a3b27}.intro-page .intro-note .rules-heading{color:#3f2514;margin-top:var(--space-4);text-shadow:none}.intro-page .intro-note h1.rules-heading{font-size:clamp(1.7rem,3vw,2.25rem)}.intro-page .intro-note h2.rules-heading{font-size:clamp(1.35rem,2.4vw,1.7rem)}.intro-page .intro-note h3.rules-heading,.intro-page .intro-note h4.rules-heading{font-size:clamp(1.08rem,1.9vw,1.3rem);color:#4a2c17}.intro-page .intro-note .rules-list li::marker,.intro-page .intro-note .rules-olist li::marker{color:#8a3f2e}.intro-page .intro-note .rules-list,.intro-page .intro-note .rules-olist{color:#26180e}.intro-page .intro-note .rules-code{background:#ffffff6b;border:1px solid rgba(88,62,38,.2);box-shadow:inset 0 0 0 1px #ffffff59;color:#2b1a10}.intro-page .intro-note .rules-code code{color:#2b1a10}.intro-page .intro-note .rules-hr{border-top:1px solid rgba(88,62,38,.28)}.intro-page .intro-note .rules-table table{font-size:var(--text-sm)}.intro-page .intro-note .rules-table th{color:#5f3920;border-bottom-color:#583e2640}.intro-page .intro-note .rules-table td{color:#26180e;border-bottom-color:#583e2629}.intro-page .charter-note .rules-markdown{color:#24160d;font-family:Cormorant Garamond,Palatino Linotype,Book Antiqua,Georgia,serif;font-size:clamp(1.08rem,1.35vw,1.24rem);line-height:1.82;gap:var(--space-3);padding-top:clamp(10px,1.5vw,16px);padding-bottom:clamp(12px,1.9vw,20px);text-shadow:none}.intro-page .intro-note .rules-markdown>:first-child,.intro-page .charter-note .rules-markdown>:first-child{margin-top:0}.intro-page .intro-note .rules-markdown>:last-child,.intro-page .charter-note .rules-markdown>:last-child{margin-bottom:0}.intro-page .charter-note .rules-paragraph,.intro-page .charter-note .rules-list,.intro-page .charter-note .rules-olist{color:#24160d;font-size:clamp(1.08rem,1.3vw,1.2rem);line-height:1.82}.intro-page .charter-note .rules-paragraph strong,.intro-page .charter-note .rules-list strong,.intro-page .charter-note .rules-olist strong{color:#5f2316;font-weight:700}.intro-page .charter-note .rules-paragraph em{color:#5d4331}.intro-page .charter-note .rules-heading{color:#3f2310;margin-top:var(--space-4);text-shadow:none;letter-spacing:.05em;font-family:Cormorant Garamond,Palatino Linotype,Book Antiqua,Georgia,serif;font-weight:600}.intro-page .charter-note h1.rules-heading{font-size:clamp(1.85rem,3.1vw,2.45rem);text-align:center;margin-bottom:var(--space-3)}.intro-page .charter-note h2.rules-heading{font-size:clamp(1.4rem,2.5vw,1.85rem)}.intro-page .charter-note h3.rules-heading,.intro-page .charter-note h4.rules-heading{font-size:clamp(1.08rem,1.9vw,1.32rem);color:#512c17}.intro-page .charter-note .rules-list li::marker,.intro-page .charter-note .rules-olist li::marker{color:#7a3523}.intro-page .charter-note .rules-hr{border-top:1px solid rgba(88,59,33,.26)}.intro-page .charter-note .rules-code{background:#fffaf157;border:1px solid rgba(88,62,38,.22);box-shadow:inset 0 0 0 1px #fff8ec47;color:#2b1a10}.intro-page .charter-note .rules-code code{color:#2b1a10}.intro-page .charter-note .rules-table th{color:#5d3720;border-bottom-color:#583e2640}.intro-page .charter-note .rules-table td{color:#26180e;border-bottom-color:#583e2629}@media (max-width: 900px){.intro-page .intro-note{transform:none;padding:20px 16px 30px}.intro-page .charter-note{transform:none;padding:22px 16px 34px}}@media (max-width: 640px){.intro-page .panel__body{padding-top:var(--space-5);padding-bottom:var(--space-5)}.intro-page .panel__header{padding-bottom:var(--space-3)}.intro-page .lore-page__menu-card{padding:16px 14px}.intro-page .lore-page__subselector{margin-bottom:0}.intro-page .lore-page__subselector.rules-selector{padding:var(--space-2)}.intro-page .lore-page__subselector .rules-selector__button{min-height:0;padding:12px;font-size:11px;letter-spacing:.06em}.intro-page .intro-note{clip-path:none;border-radius:var(--radius-lg);overflow:visible;margin-top:0;margin-bottom:var(--space-4)}.intro-page .intro-note:after{display:none}.intro-page .intro-note:before{opacity:.42}.intro-page .charter-note{clip-path:none;border-radius:var(--radius-lg);overflow:visible;margin-top:0;margin-bottom:0}.intro-page .charter-note:after{display:none}.intro-page .charter-note:before{opacity:.5}.intro-page .lore-page__narrative,.intro-page .lore-page__reference{padding-left:14px;padding-right:14px}.intro-page .lore-page__reference .section-card__title{gap:10px;line-height:1.2}.intro-page .lore-page__reference .rules-markdown,.intro-page .lore-page__narrative .rules-markdown{gap:var(--space-3)}.intro-page .intro-note .rules-markdown,.intro-page .charter-note .rules-markdown{padding-top:12px;padding-bottom:16px}}.rules-list li::marker,.rules-olist li::marker{color:var(--color-accent-blood)}.rules-list-block{margin-bottom:var(--space-3)}.rules-table table{width:100%;border-collapse:collapse;font-size:var(--text-xs)}.rules-table th{text-align:left;padding:var(--space-3);color:var(--color-text-highlight);border-bottom:1px solid var(--color-border);text-transform:uppercase;letter-spacing:.04em;font-family:var(--font-heading)}.rules-table td{padding:var(--space-3);border-bottom:1px solid rgba(255,255,255,.08);color:var(--color-text-secondary)}.quick-reference{gap:var(--space-3)!important}.quick-reference__section{background:linear-gradient(180deg,#120a0aeb,#080808eb);border-color:#bfb4a033;box-shadow:inset 0 0 0 1px #ffffff05}.quick-reference__section .section-card__title{color:var(--color-text-primary);margin-bottom:var(--space-2)}.quick-reference__table{background:#00000047}.quick-reference__table table{font-size:var(--text-xs)}.quick-reference__table th{width:34%}.quick-reference__summary{margin:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:1px solid rgba(191,180,160,.18);background:#0000003d}.quick-reference__notes{list-style:none;padding:0;margin:0;display:grid;gap:var(--space-2)}.quick-reference__note{margin:0;padding:var(--space-2) var(--space-3);border-left:2px solid rgba(138,28,28,.7);background:#00000038;border-radius:0 var(--radius-sm) var(--radius-sm) 0;line-height:1.45}@media (min-width: 1180px){.quick-reference{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)!important}}.rules-code{background:#000;border:1px solid var(--color-border);padding:var(--space-4);font-family:monospace;font-size:var(--text-xs);color:#a8a095}@media (max-width: 640px){.quick-reference{gap:var(--space-2)!important}.quick-reference__summary,.quick-reference__note{padding:var(--space-2)}.quick-reference__table th{width:auto}.rules-table table{display:block;width:100%;font-size:var(--text-xs)}.rules-table thead{display:none}.rules-table tbody{display:flex;flex-direction:column;gap:var(--space-3)}.rules-table tr{display:grid;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:#0a0a0a80}.quick-reference .rules-table tr th{display:none}.rules-table td{display:flex;justify-content:space-between;gap:var(--space-3);padding:0;border-bottom:none}.rules-table td:before{content:attr(data-label);font-family:var(--font-heading);font-size:var(--text-3xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary)}.barony-card>.item-block{padding:var(--space-2)}.barony-card .item-block .item-block{padding:var(--space-2)}.barony-card .rules-table tr{background:#080808a6;border-color:#bfb4a029}.barony-card .rules-table td{align-items:flex-start}.barony-card .rules-table td:before{color:#f1d08acc}}.input-container{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);background:var(--surface-input);border:1px solid var(--color-border);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);transition:border-color .2s;min-height:var(--control-height)}.input-container:focus-within{border-color:var(--color-accent-blood);box-shadow:0 0 0 1px var(--color-accent-blood-dim)}.input-container .chip,.chip{background:var(--color-accent-blood-dim);border:1px solid var(--color-accent-blood);color:#fff;padding:var(--chip-padding);border-radius:var(--radius-pill);font-size:var(--text-xs);display:inline-flex;align-items:center;gap:var(--space-2);cursor:default;font-family:var(--font-body)}.chip--member{background:#8a1c1ce6;border-color:#ce52528c;color:#fff}.chip--balance-banking{background:linear-gradient(135deg,#3fd1c733,#0a101c99);border-color:#3fd1c773;color:#d9f7f4;font-family:JetBrains Mono,Menlo,Monaco,monospace;letter-spacing:.02em}.chip--balance-banking.is-inactive{background:linear-gradient(135deg,#602028e0,#3a1218e6);border-color:#f2829385;color:#ffd6de}.chip--clickable{cursor:pointer}.chip--clickable:hover{border-color:var(--color-accent-blood-bright);box-shadow:0 0 0 1px var(--color-accent-blood-bright)}.input-container .chip--locked{background:#ffffff1a;border-color:var(--color-border);color:var(--color-text-muted);padding:var(--chip-padding-compact)}.chip-row{display:flex;flex-wrap:wrap;gap:var(--space-2)}.input-container .chip__remove{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:transparent!important;border:none!important;color:#ffffffb3;cursor:pointer;padding:var(--space-1);margin:0;display:inline-flex;align-items:center;justify-content:center;font-size:var(--text-xs);line-height:1;border-radius:50%;width:var(--chip-remove-size);height:var(--chip-remove-size);transition:all .2s}.input-container .chip__remove:hover{background:#fff3!important;color:#fff}.chip-input{background:transparent;border:none;color:var(--color-text-primary);font-family:var(--font-body);font-size:var(--text-sm);padding:var(--space-1) 0;flex:1;min-width:120px;outline:none;box-shadow:none!important}.chip-add-button{background:#ffffff0d;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);font-family:var(--font-heading);font-size:var(--text-xs);font-weight:600;letter-spacing:.05em;padding:var(--space-2) var(--space-3);cursor:pointer;transition:all .2s;white-space:nowrap}.chip-add-button:hover{background:var(--color-accent-blood);border-color:var(--color-accent-blood);color:#fff}.chip-add-button:disabled{opacity:.3;cursor:not-allowed}.xp-fab{position:fixed;right:calc(var(--space-6) + 10px);bottom:calc(var(--space-6) + 10px);z-index:120;width:var(--fab-size);height:var(--fab-size);background:linear-gradient(145deg,#a82218f5,#821212f5 58%,#c2923feb);border:1px solid var(--color-accent-gold, #d2b37a);border-radius:50%;padding:var(--space-2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;box-shadow:0 0 0 1px #d2b37a47,var(--shadow-panel)}.save-fab{position:fixed;right:calc(var(--space-6) + 10px);bottom:calc(var(--space-6) + 10px);z-index:121;width:var(--fab-size);height:var(--fab-size);background:linear-gradient(145deg,#aa0000f2,#700000f2);border:1px solid var(--color-accent-blood-bright);border-radius:50%;padding:var(--space-2);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-panel);cursor:pointer;transition:transform .12s ease,filter .12s ease,opacity .12s ease}.save-fab--stacked{bottom:calc(var(--space-6) + 10px + var(--fab-size) + var(--space-4))}.save-fab:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.08)}.save-fab:active:not(:disabled){transform:translateY(0);filter:brightness(.98)}.save-fab:disabled{opacity:.45;cursor:not-allowed}.save-fab__icon{color:#fff;display:block}.validation-fab{position:fixed;right:calc(var(--space-6) + 10px);bottom:calc(var(--space-6) + 10px);z-index:122;width:var(--fab-size);height:var(--fab-size);border-radius:50%;border:1px solid rgba(191,180,160,.22);background:linear-gradient(160deg,#181818f2,#0a0a0af5);color:var(--color-text-primary);box-shadow:0 10px 24px #00000057,0 0 0 1px #ffffff05 inset;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .12s ease,filter .12s ease,box-shadow .12s ease}.validation-fab:hover{transform:translateY(-1px);filter:brightness(1.06)}.validation-fab.has-issues{border-color:#d2b37a59;background:radial-gradient(circle at 28% 24%,rgba(255,255,255,.12),transparent 46%),linear-gradient(160deg,#b21813fa,#730909fa);box-shadow:0 12px 26px #46000066,0 0 0 1px #a622182e,0 0 0 1px #ffffff0a inset}.validation-fab--stack-1{bottom:calc(var(--space-6) + 10px + var(--fab-size) + var(--space-4))}.validation-fab--stack-2{bottom:calc(var(--space-6) + 10px + (var(--fab-size) * 2) + (var(--space-4) * 2))}.validation-fab__content{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;transform:translateY(-1px)}.validation-fab__mark{font-family:var(--font-heading);font-size:1.8rem;font-weight:800;line-height:.85;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.28)}.validation-fab__count{font-family:var(--font-heading);font-size:.7rem;line-height:1;color:#fff;font-weight:700;letter-spacing:.08em;opacity:.96;text-shadow:0 1px 6px rgba(0,0,0,.22)}.validation-overlay__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:204;border:none;background:#00000075;padding:0;margin:0}.validation-overlay{position:fixed;right:calc(var(--space-6) + 10px);bottom:calc(var(--space-6) + 10px + var(--fab-size) + 12px);z-index:205;width:min(480px,calc(100vw - var(--space-6) * 2));max-height:min(62vh,560px);border-radius:var(--radius-lg);border:1px solid rgba(191,180,160,.18);background:linear-gradient(180deg,#120c0cf5,#080808f7);box-shadow:var(--shadow-panel);display:flex;flex-direction:column;overflow:hidden}.validation-overlay--stack-1{bottom:calc(var(--space-6) + 10px + (var(--fab-size) * 2) + var(--space-4) + 12px)}.validation-overlay--stack-2{bottom:calc(var(--space-6) + 10px + (var(--fab-size) * 3) + (var(--space-4) * 2) + 12px)}.validation-overlay__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);border-bottom:1px solid rgba(191,180,160,.12);background:linear-gradient(180deg,#460c1233,#0000)}.validation-overlay__eyebrow{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.12em;font-size:var(--text-3xs);font-family:var(--font-heading)}.validation-overlay__title{margin:4px 0 0;font-size:var(--text-sm);color:var(--color-text-primary)}.validation-overlay__close{width:28px;height:28px;min-width:28px;min-height:28px;flex:0 0 28px;aspect-ratio:1 / 1;box-sizing:border-box;padding:0;border-radius:50%;border:1px solid rgba(191,180,160,.16);background:#ffffff08;color:var(--color-text-secondary);cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;font-size:18px;line-height:1}.validation-overlay__body{padding:var(--space-3);overflow:auto}.validation-overlay__group{border-radius:var(--radius-md);border:1px solid rgba(191,180,160,.12);background:#0003;overflow:hidden}.validation-overlay__group-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:8px 10px;border-bottom:1px solid rgba(191,180,160,.08)}.validation-overlay__group-title{font-family:var(--font-heading);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary)}.validation-overlay__group-count{min-width:22px;height:22px;border-radius:999px;background:#8a1c1c2e;border:1px solid rgba(138,28,28,.35);color:var(--color-text-highlight);display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-size:var(--text-2xs)}.validation-overlay__issues{display:grid}.validation-overlay__issue{width:100%;border:none;border-top:1px solid rgba(255,255,255,.03);background:transparent;color:var(--color-text-primary);text-align:left;padding:10px;display:flex;align-items:flex-start;gap:8px;cursor:pointer}.validation-overlay__issue:hover{background:#8a1c1c14}.validation-overlay__issue-dot{width:6px;height:6px;margin-top:6px;border-radius:50%;background:#be3024f2;box-shadow:0 0 6px #be302473;flex-shrink:0}.validation-overlay__issue-text{font-size:var(--text-xs);line-height:1.4}.xp-fab__label{font-family:var(--font-heading);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;color:#fffc;text-align:center;transform:translateY(-2px)}.xp-fab__value{font-family:var(--font-heading);font-size:clamp(.95rem,3.2vw,1.25rem);line-height:1;color:#fff;transform:translateY(-2px)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:200;padding:var(--space-6)}body:has(.modal-backdrop),body:has(.mobile-menu){overflow:hidden}.modal-backdrop--character{background:#00000073}.panel__card.modal{width:min(560px,100%);max-height:85vh;overflow:auto;background:#050505eb;box-shadow:var(--shadow-strong)}.panel__card.modal--data{width:min(900px,100%);gap:var(--space-3);position:relative;display:flex;flex-direction:column}.data-item--modal{cursor:default}.data-item--modal summary{cursor:default}.data-modal__close{position:absolute;right:var(--space-3);bottom:var(--space-3);border:1px solid var(--color-border);background:#0a0a0ad9;color:var(--color-text-secondary);width:34px;height:34px;border-radius:var(--radius-pill);display:none;align-items:center;justify-content:center;cursor:pointer;z-index:2}.data-modal__close:hover{color:var(--color-text-primary);border-color:var(--color-accent-blood)}.character-create__clan-summary{grid-column:1 / -1}.character-modal__close{border:1px solid var(--color-border);background:#0a0a0ad9;color:var(--color-text-secondary);width:34px;height:34px;border-radius:var(--radius-pill);display:none;align-items:center;justify-content:center;cursor:pointer}.character-modal__close:hover{color:var(--color-text-primary);border-color:var(--color-accent-blood)}.panel__card.modal--data .data-powers-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.data-modal__actions{display:flex;justify-content:flex-end;padding-top:var(--space-2)}.banking-fab{position:fixed;right:calc(var(--space-6) + 10px);bottom:calc(var(--space-6) + 10px);z-index:140;display:inline-flex;align-items:center;justify-content:center;gap:0;width:var(--fab-size);height:var(--fab-size);padding:0;border-radius:20px;border:1px solid rgba(63,209,199,.4);background:linear-gradient(135deg,#14222ee6,#0a101cf2);color:#e7f4ff;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:var(--text-2xs);letter-spacing:.08em;text-transform:uppercase;box-shadow:0 18px 40px #0000008c;cursor:pointer;transition:border-color .2s ease,color .2s ease,transform .2s ease}.banking-fab:hover{border-color:#7cf4dcb3;color:var(--banking-accent-strong);transform:rotate(6deg)}.banking-fab__symbol{font-family:var(--banking-mono, "JetBrains Mono", "Menlo", "Monaco", monospace);font-size:1.8rem;letter-spacing:.08em;text-transform:uppercase;line-height:1;transform:translateY(-2px)}.modal-backdrop--banking{background:radial-gradient(circle at top,rgba(32,84,90,.4),transparent 55%),radial-gradient(circle at 20% 80%,rgba(78,120,60,.25),transparent 60%),#000000c7;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.banking-modal{--banking-bg: #05070f;--banking-panel: rgba(12, 20, 32, .95);--banking-panel-soft: rgba(18, 28, 42, .9);--banking-text: #e7f4ff;--banking-muted: #8ea3b8;--banking-accent: #3fd1c7;--banking-accent-strong: #7cf4dc;--banking-warning: #f4c15d;--banking-danger: #ff7a7a;--banking-mono: "JetBrains Mono", "Menlo", "Monaco", monospace;--banking-sans: "Space Grotesk", "Trebuchet MS", sans-serif;--banking-ledger-max: 640px;position:relative;width:min(1100px,100%);max-height:90vh;border-radius:0;overflow:hidden;background:var(--banking-bg);color:var(--banking-text);font-family:var(--banking-sans);box-shadow:0 28px 80px #000000a6,0 0 0 1px #3fd1c733;animation:bank-rise .5s ease}.banking-modal:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 20% 0%,rgba(63,209,199,.2),transparent 55%),radial-gradient(circle at 90% 20%,rgba(124,244,220,.14),transparent 60%),linear-gradient(140deg,rgba(16,30,44,.35),transparent 70%);opacity:.9;pointer-events:none}.banking-modal:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(63,209,199,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(63,209,199,.08) 1px,transparent 1px);background-size:36px 36px;opacity:.2;pointer-events:none}.banking-surface{position:relative;z-index:1;display:flex;flex-direction:column;gap:24px;padding:28px 32px 32px;max-height:90vh;overflow:auto}.banking-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;border-bottom:1px solid rgba(124,244,220,.16);padding-bottom:16px;position:relative}.banking-header__aside{display:flex;flex-direction:column;align-items:flex-end;gap:12px}.banking-brand__eyebrow{display:inline-block;font-size:var(--text-3xs);text-transform:uppercase;letter-spacing:.2em;color:var(--banking-accent)}.banking-brand__title{margin:8px 0 4px;font-size:var(--text-2xl);display:flex;align-items:center;gap:10px;letter-spacing:.05em}.banking-brand__subtitle{margin:0;color:var(--banking-muted);font-size:var(--text-xs)}.banking-header__meta{display:flex;align-items:center;gap:32px;justify-content:flex-end;text-align:right}.banking-meta{display:flex;flex-direction:column;gap:2px}.banking-header__meta .banking-meta{align-items:flex-start;text-align:left}.banking-meta-row{display:flex;align-items:baseline;justify-content:space-between;gap:18px;flex-wrap:wrap}.banking-meta__label{font-size:var(--font-size-caption);text-transform:uppercase;letter-spacing:.1em;line-height:1.25;color:var(--banking-muted)}.banking-meta__value{font-size:var(--text-xs);color:var(--banking-text)}.banking-meta--emphasis .banking-meta__value{font-size:var(--text-sm)}.banking-header__meta .banking-meta__value{max-width:200px;word-break:break-word;line-height:1.3}.banking-header__action,.banking-close{position:relative;border:1px solid rgba(124,244,220,.35);background:#0a121ab3;color:var(--banking-text);border-radius:12px;width:42px;height:42px;min-width:42px;min-height:42px;padding:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-family:var(--banking-mono);font-size:var(--text-lg);line-height:1;letter-spacing:0;transition:border-color .2s ease,color .2s ease,transform .2s ease}.banking-close span{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;line-height:1;letter-spacing:0;pointer-events:none}.banking-header__action svg,.banking-refresh svg{display:block;margin:0;flex:none;pointer-events:none}@media (hover: hover) and (pointer: fine){.banking-header__action:hover,.banking-close:hover{border-color:#7cf4dcb3;color:var(--banking-accent-strong);transform:rotate(6deg)}}.banking-header__action:focus-visible,.banking-close:focus-visible{border-color:#7cf4dcb3;color:var(--banking-accent-strong);transform:rotate(6deg)}.banking-header__action--active{border-color:#7cf4dccc;color:var(--banking-accent-strong);box-shadow:0 0 12px #7cf4dc40}.banking-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:24px;align-items:start}.banking-column{display:flex;flex-direction:column;gap:20px}.banking-card{background:var(--banking-panel);border-radius:20px;border:1px solid rgba(124,244,220,.12);padding:20px;box-shadow:0 20px 40px #00000059;animation:bank-card .6s ease both}.banking-card--animated{animation:bank-card .6s ease both;will-change:transform,opacity}.banking-column .banking-card:nth-child(1){animation-delay:.05s}.banking-column .banking-card:nth-child(2){animation-delay:.12s}.banking-ledger{animation-delay:.18s;position:relative;display:flex;flex-direction:column;max-height:var(--banking-ledger-max);overflow:hidden;align-self:start}.banking-ledger--fixed{height:var(--banking-ledger-max)}.banking-balance__head{display:flex;justify-content:space-between;align-items:center;color:var(--banking-muted);margin-bottom:18px}.banking-chip{background:#3fd1c71f;border:1px solid rgba(63,209,199,.3);padding:4px 10px;border-radius:999px;font-size:var(--font-size-caption);letter-spacing:.12em;text-transform:uppercase;color:var(--banking-accent-strong)}.banking-balance__value{font-size:clamp(1.6rem,6.5vw,2.5rem);font-family:var(--banking-mono);display:flex;align-items:baseline;gap:10px}.banking-balance__value small{font-size:clamp(1.3rem,5.6vw,2.25rem);color:var(--banking-text)}.banking-balance__meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px;margin-top:18px}.character-edit__banking{--banking-panel: rgba(12, 20, 32, .95);--banking-panel-soft: rgba(18, 28, 42, .9);--banking-text: #e7f4ff;--banking-muted: #8ea3b8;--banking-accent: #3fd1c7;--banking-accent-strong: #7cf4dc;--banking-mono: "JetBrains Mono", "Menlo", "Monaco", monospace;--banking-sans: "Space Grotesk", "Trebuchet MS", sans-serif;background:linear-gradient(135deg,#101c2cfa,#060a10fa);border:1px solid rgba(124,244,220,.28);color:var(--banking-text);font-family:var(--banking-sans);position:relative;overflow:hidden;margin-top:16px;box-shadow:0 12px 30px #00000073,inset 0 0 0 1px #3fd1c714}.character-edit__banking:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 15% 15%,rgba(63,209,199,.18),transparent 45%),radial-gradient(circle at 85% 90%,rgba(124,244,220,.12),transparent 50%),linear-gradient(180deg,rgba(255,255,255,.04),transparent 35%);pointer-events:none}.character-edit__banking:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(63,209,199,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(63,209,199,.06) 1px,transparent 1px);background-size:28px 28px;opacity:.35;pointer-events:none;mix-blend-mode:screen}.character-edit__banking-header{display:flex;align-items:center;justify-content:space-between;gap:12px;position:relative;z-index:1}.character-edit__banking-header h4{margin:0;font-size:var(--text-md)}.character-edit__banking-info{text-align:right}.character-edit__banking-info p{margin:2px 0 0;font-size:var(--text-2xs);color:var(--banking-muted)}.character-edit__banking-grid{margin-top:16px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;position:relative;z-index:1}@media (min-width: 769px){.character-edit__banking-header,.character-edit__banking-grid{padding-left:var(--space-2);padding-right:var(--space-2)}}.character-edit__banking-grid:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;background:linear-gradient(180deg,transparent,rgba(124,244,220,.25),transparent);opacity:.5;pointer-events:none}.character-edit__banking--override .character-edit__banking-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.character-edit__banking--override .character-edit__banking-grid:before{display:none}.character-edit__banking .character-edit__wallet-toggle{width:auto;min-width:220px;justify-content:flex-start;font-family:var(--banking-mono);font-size:var(--text-xs);letter-spacing:.11em;text-transform:uppercase;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .15s ease}.character-edit__banking .character-edit__wallet-toggle:hover{transform:translateY(-1px);box-shadow:0 6px 14px #0000003d}.character-edit__banking .character-edit__wallet-toggle:focus-visible{outline:2px solid rgba(124,244,220,.55);outline-offset:2px}.character-edit__banking .character-edit__wallet-toggle.is-enabled{background:linear-gradient(135deg,#24614ad9,#163a2de6);border-color:#7cf4dc8f;color:#d7fff4}.character-edit__banking .character-edit__wallet-toggle.is-enabled:hover{border-color:#96ffe7cc}.character-edit__banking .character-edit__wallet-toggle.is-disabled{background:linear-gradient(135deg,#602028e0,#3a1218e6);border-color:#f2829385;color:#ffd6de}.character-edit__banking .character-edit__wallet-toggle.is-disabled:hover{border-color:#ffa9b8c7}.character-edit__banking .banking-chip{background:#081a22bf;color:var(--banking-accent-strong);border:1px solid rgba(63,209,199,.45);font-family:var(--banking-mono);font-size:var(--font-size-caption);letter-spacing:.12em;text-transform:uppercase;padding:4px 10px;box-shadow:0 0 0 1px #3fd1c714,inset 0 0 12px #3fd1c71f}.character-edit__banking .banking-meta__label{color:var(--banking-muted);font-size:var(--font-size-caption);letter-spacing:.1em;text-transform:uppercase}.character-edit__banking .banking-meta__value{font-family:var(--banking-mono);font-size:var(--text-md);color:#f2fffd;text-shadow:0 0 12px rgba(63,209,199,.25)}.character-edit__banking-grid .banking-meta:last-child .banking-meta__value{text-align:right;justify-self:end}.character-edit__banking-grid .banking-meta:last-child .banking-meta__label{text-align:right;justify-self:end}.character-edit__banking .banking-input{background:var(--banking-panel-soft);border:1px solid rgba(124,244,220,.25)}.character-edit__banking .banking-input input{color:var(--banking-text);font-family:var(--banking-mono)}.character-edit__banking .banking-input:focus-within{border-color:#7cf4dc80}.banking-balance__meta .banking-meta{gap:8px}.banking-card__header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.banking-ledger__title{text-align:left;flex:1}.banking-ledger__actions{display:flex;align-items:center;gap:12px;width:auto;justify-content:flex-end}.banking-ledger__status{margin:-4px 0 12px}.banking-ledger__chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;border:1px solid rgba(124,244,220,.2);background:#3fd1c71f;font-size:var(--text-3xs);text-transform:uppercase;letter-spacing:.14em;color:var(--banking-accent-strong);font-family:var(--banking-mono)}.banking-refresh{position:relative;width:42px;height:42px;min-width:42px;min-height:42px;padding:0;border-radius:10px;border:1px solid rgba(124,244,220,.35);background:#0a121ab3;color:var(--banking-text);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .2s ease,transform .2s ease}.banking-header__controls{display:flex;align-items:center;gap:8px}.banking-refresh:hover{border-color:#7cf4dcb3;transform:rotate(12deg)}.banking-refresh--ledger{position:static}.banking-card__header h4{margin:0;font-size:var(--text-lg);white-space:nowrap}.banking-transfer__notice{font-size:var(--text-3xs);color:var(--banking-accent-strong)}.banking-field{display:flex;flex-direction:column;gap:8px;margin-bottom:14px;position:relative}.banking-field label{font-size:var(--text-3xs);text-transform:uppercase;letter-spacing:.15em;color:var(--banking-muted)}.banking-input{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:12px;border:1px solid rgba(124,244,220,.2);background:#08101abf}.banking-ledger__actions .banking-input{min-width:0;margin-right:5px}.banking-ledger__actions .banking-input--compact{padding:9px 12px}.banking-input input{background:transparent;border:none;outline:none;color:var(--banking-text);font-family:var(--banking-sans);font-size:var(--text-xs);width:100%}.banking-input input[type=number]{font-family:var(--banking-mono)}.banking-input__suffix{font-size:var(--text-3xs);color:var(--banking-muted);font-family:var(--banking-mono)}.character-edit__banking .banking-input__suffix,.banking-modal .banking-input__suffix{font-size:var(--text-md);color:var(--banking-text)}.banking-input--compact{padding:6px 10px;border-radius:10px}.banking-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--banking-panel-soft);border-radius:12px;border:1px solid rgba(124,244,220,.2);max-height:220px;overflow:auto;z-index:3}.banking-dropdown__item{width:100%;text-align:left;padding:10px 12px;background:transparent;border:none;color:var(--banking-text);display:flex;justify-content:space-between;align-items:center;cursor:pointer}.banking-dropdown__item:hover{background:#3fd1c71f}.banking-dropdown__item small{font-size:var(--font-size-caption);color:var(--banking-muted);font-family:var(--banking-mono)}.banking-dropdown--empty{padding:12px;color:var(--banking-muted)}.banking-action{width:100%;border:none;border-radius:14px;padding:12px 16px;display:inline-flex;align-items:center;justify-content:center;text-align:center;font-family:var(--banking-sans);letter-spacing:.08em;text-transform:uppercase;background:linear-gradient(135deg,#3fd1c7e6,#7cf4dcb3);color:#041218;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.banking-action:disabled{opacity:.45;cursor:not-allowed}@media (hover: hover) and (pointer: fine){.banking-action:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 18px #3fd1c740}}.banking-action--ghost{background:transparent;border:1px solid rgba(124,244,220,.4);color:var(--banking-text)}.banking-error{color:var(--banking-danger);font-size:var(--text-3xs)}.banking-warning{color:var(--banking-accent-strong);font-size:var(--text-3xs)}.banking-warning-slot{min-height:18px}.banking-ledger__list{display:flex;flex-direction:column;gap:12px;max-height:420px;overflow:auto;padding-right:4px;flex:1;min-height:0}.banking-ledger--fixed .banking-ledger__list{max-height:none}.banking-ledger__pagination{margin-top:12px;display:flex;flex-direction:column;gap:8px}.banking-ledger__pagination-meta{font-size:var(--text-3xs);color:var(--banking-muted)}.banking-ledger__pagination-controls{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px}.banking-ledger__pagination-controls .banking-action{width:auto;padding:8px 12px}.banking-ledger__pagination-controls .banking-action:first-child{justify-self:start}.banking-ledger__pagination-controls .banking-action:last-child{justify-self:end}.banking-ledger__pagination-page{font-size:var(--text-3xs);color:var(--banking-accent-strong);letter-spacing:.08em;text-transform:uppercase;font-family:var(--banking-mono);justify-self:center;text-align:center}.banking-ledger__pagination-label-short{display:none}.banking-transaction{background:#080e16cc;border:1px solid rgba(124,244,220,.15);border-radius:14px;padding:12px 14px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto auto;gap:10px 16px;align-items:center}.banking-transaction>div{min-width:0}.banking-transaction__who{display:flex;flex-direction:column;gap:4px;grid-column:1 / 2;grid-row:1 / 2}.banking-transaction__ids{display:flex;flex-direction:column;gap:2px;grid-column:2 / 3;grid-row:1 / 2;align-items:flex-end;text-align:right}.banking-transaction strong{display:block;font-size:var(--text-xs)}.banking-transaction small{font-size:var(--font-size-caption);color:var(--banking-muted);line-height:1.25;white-space:nowrap}.banking-transaction__label{font-size:var(--font-size-caption);text-transform:uppercase;letter-spacing:.1em;color:var(--banking-muted)}.banking-transaction__code{display:block;margin-top:4px;font-size:var(--font-size-caption);letter-spacing:.06em;font-family:var(--banking-mono);color:var(--banking-muted);white-space:nowrap}.banking-transaction__message{display:block;margin-top:6px;font-size:var(--text-3xs);color:var(--banking-accent-strong);font-family:var(--banking-mono);word-break:break-word;grid-column:1 / -1;grid-row:3 / 4}.banking-transaction__amount{font-family:var(--banking-mono);display:flex;align-items:center;gap:6px;font-size:var(--text-md);white-space:nowrap;grid-column:2 / 3;grid-row:2 / 3;justify-self:end}.banking-transaction__amount-text{white-space:nowrap}.banking-transaction--out .banking-transaction__amount{color:#ff9a9a}.banking-transaction--in .banking-transaction__amount{color:#8ff0c9}.banking-transaction__amount span:first-child{min-width:12px;text-align:right}.banking-transaction__amount-text{min-width:70px;text-align:right}.banking-empty{color:var(--banking-muted);font-size:var(--text-2xs);text-align:center;padding:20px 0}@media (min-width: 900px){.banking-transaction{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto auto;align-items:center;padding:14px 18px}.banking-transaction__who{grid-column:1 / 2;grid-row:1 / 2}.banking-transaction__ids{grid-column:2 / 3;grid-row:1 / 2;align-items:flex-end;text-align:right}.banking-transaction__message{grid-column:1 / -1;grid-row:3 / 4}}@media (max-width: 600px){.banking-transaction{grid-template-columns:1fr;grid-template-rows:auto auto auto auto;align-items:start}.banking-transaction__who{display:grid;grid-template-columns:auto 1fr;align-items:baseline;column-gap:12px}.banking-transaction__who strong{justify-self:end}.banking-transaction__ids{grid-column:1 / 2;grid-row:2 / 3;align-items:flex-start;text-align:left}.banking-transaction__message{grid-column:1 / 2;grid-row:3 / 4}.banking-transaction__amount{grid-column:1 / 2;grid-row:4 / 5;justify-self:end}}.banking-ledger__search{display:flex;flex-direction:column;gap:18px;flex:1;min-height:0}.banking-ledger__search-form{display:flex;flex-direction:column;gap:12px}.banking-ledger__technical{display:flex;flex-direction:column;gap:4px;max-height:340px;overflow-y:auto;overflow-x:hidden;font-family:var(--banking-mono);background:#060a128c;border:1px solid rgba(124,244,220,.12);border-radius:10px;padding:8px 10px;flex:1;min-height:0}.banking-ledger--fixed .banking-ledger__technical{max-height:none}.banking-ledger__panel{animation:bank-card .6s ease both;will-change:transform,opacity}.banking-ledger__technical-line{font-size:var(--text-3xs);line-height:1.55;padding:4px 0;border-bottom:1px dashed rgba(124,244,220,.15);color:#e7f4ffd9;word-break:break-word}.banking-ledger__technical-line:last-child{border-bottom:none}.banking-pin{position:absolute;top:0;right:0;bottom:0;left:0;background:#050a12eb;display:grid;place-items:center;z-index:4;animation:bank-fade .3s ease}.banking-pin__card{width:min(420px,92%)}.banking-pin__display{display:flex;justify-content:space-between;align-items:center;background:#3fd1c71a;border-radius:12px;padding:12px 14px;margin:16px 0;font-family:var(--banking-mono)}.banking-pin__inputs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:18px}.banking-pin__inputs input{height:46px;text-align:center;font-size:var(--text-lg);font-family:var(--banking-mono);background:#08101ad9;border:1px solid rgba(124,244,220,.35);border-radius:10px;color:var(--banking-text)}.banking-pin__actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.banking-receipt{display:flex;flex-direction:column;gap:16px}.banking-receipt h4{margin:0}.banking-receipt p{margin:2px 0 0;color:var(--banking-muted)}.banking-receipt__grid{display:grid;grid-template-columns:1fr;gap:16px;background:#08101a99;border-radius:12px;padding:12px;border:1px solid rgba(124,244,220,.2)}.banking-receipt__item{display:flex;flex-direction:column;gap:6px;padding-bottom:10px;border-bottom:1px dashed rgba(124,244,220,.18)}.banking-receipt__item:last-child{padding-bottom:0;border-bottom:none}.banking-receipt__grid .banking-meta__value{font-family:var(--banking-mono);font-size:var(--text-2xs);word-break:break-word}.banking-meta__value--capsule{line-height:1.35}.banking-receipt__actions{display:flex;justify-content:flex-end}.app.app--onboarding{width:100vw;max-width:none;margin:0;padding:0;gap:0;min-height:100vh;min-height:100dvh;overflow:hidden}.ledger-onboarding{--banking-bg: #05070f;--banking-panel: rgba(12, 20, 32, .95);--banking-panel-soft: rgba(18, 28, 42, .9);--banking-text: #e7f4ff;--banking-muted: #8ea3b8;--banking-accent: #3fd1c7;--banking-accent-strong: #7cf4dc;--banking-mono: "JetBrains Mono", "Menlo", "Monaco", monospace;--banking-sans: "Space Grotesk", "Trebuchet MS", sans-serif;width:100%;min-height:100vh;min-height:100dvh;height:100dvh;background:radial-gradient(circle at 15% 10%,rgba(63,209,199,.14),transparent 42%),#03050b;color:var(--banking-text);display:grid;place-items:center;padding:8px;overflow:hidden;position:relative}.ledger-onboarding__shell{width:100%;max-width:none;height:100%;background:linear-gradient(160deg,#080e18fa,#04080efa);border:1px solid rgba(124,244,220,.24);border-radius:12px;box-shadow:0 24px 60px #0009;padding:20px;display:grid;grid-template-rows:auto minmax(0,1fr);gap:16px;overflow:hidden}.ledger-onboarding__header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;border-bottom:1px solid rgba(124,244,220,.16);padding-bottom:16px;position:relative;padding-right:56px}.ledger-onboarding__title-wrap{display:grid;gap:10px}.ledger-onboarding__header-chip{justify-self:start;padding:6px 14px;font-size:clamp(.74rem,1.35vw,.9rem);font-weight:600;letter-spacing:.1em;line-height:1.1}.ledger-onboarding__stealth-toggle{border:none;background:transparent;padding:0;color:inherit;font:inherit;letter-spacing:inherit;text-align:left;cursor:default}.ledger-onboarding__title{margin:0;font-family:var(--banking-sans);letter-spacing:.06em;text-transform:uppercase;font-size:clamp(1.3rem,2.5vw,2rem)}.ledger-onboarding__subtitle{margin:0;color:var(--banking-muted);font-size:var(--text-xs)}.ledger-onboarding__close{position:absolute;top:0;right:0}.ledger-onboarding__meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 14px}.ledger-onboarding__meta .banking-meta{gap:3px}.ledger-onboarding__meta .banking-meta__value{font-family:var(--banking-mono);font-size:var(--text-2xs);letter-spacing:.06em;word-break:break-word}.ledger-onboarding__grid{display:grid;grid-template-columns:1.25fr 1fr;gap:18px;min-height:0}.ledger-onboarding__panel{background:var(--banking-panel);border:1px solid rgba(124,244,220,.2);border-radius:16px;padding:18px;display:grid;gap:14px;min-height:0;overflow:hidden}.ledger-onboarding__panel--status{grid-template-rows:auto auto minmax(0,1fr) auto}.ledger-onboarding__panel h2{margin:0;font-size:var(--text-lg);letter-spacing:.04em}.ledger-onboarding__panel p{margin:0;color:var(--banking-muted);line-height:1.55}.ledger-onboarding__scanner{display:grid;place-items:center;padding:16px 0 8px}.ledger-onboarding__scanner-visual{--ledger-input-width: min(540px, 96%);--ledger-input-height: 280px;width:100%;min-height:340px;display:grid;place-items:center;background:#070e148c;border-radius:16px;border:1px solid rgba(124,244,220,.2);padding:18px}.ledger-onboarding__eye{width:var(--ledger-input-width);height:var(--ledger-input-height);border-radius:999px;position:relative;border:1px solid rgba(124,244,220,.4);background:radial-gradient(circle at 50% 48%,rgba(63,209,199,.24),transparent 48%),linear-gradient(160deg,#08121af2,#050a10fa);overflow:hidden;box-shadow:inset 0 0 26px #7cf4dc3d,0 0 28px #3fd1c733}.ledger-onboarding__eye-pupil{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;width:120px;height:120px;border-radius:50%;display:grid;place-items:center;color:var(--banking-accent-strong);background:radial-gradient(circle at center,#7cf4dc38,#0a121aeb 63%),repeating-radial-gradient(circle at center,rgba(124,244,220,.12) 0 2px,transparent 2px 7px);border:1px solid rgba(124,244,220,.45);box-shadow:inset 0 0 20px #7cf4dc40}.ledger-onboarding__eye-scanline{position:absolute;left:8%;right:8%;height:2px;background:linear-gradient(90deg,transparent,rgba(124,244,220,.72),transparent);box-shadow:0 0 10px #7cf4dc73;animation:ledger-eye-scanline 2.2s linear infinite}.ledger-onboarding__eye-map{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(124,244,220,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(124,244,220,.07) 1px,transparent 1px);background-size:20px 20px;opacity:.35;pointer-events:none}.ledger-onboarding__handpad{width:var(--ledger-input-width);min-height:var(--ledger-input-height);height:var(--ledger-input-height);border-radius:18px;border:2px dashed rgba(124,244,220,.42);background:radial-gradient(circle at 50% 42%,rgba(63,209,199,.18),transparent 52%),#080e16d1;color:var(--banking-accent-strong);display:grid;place-items:center;gap:10px;padding:18px;text-transform:uppercase;letter-spacing:.12em;font-size:var(--text-3xs);font-family:var(--banking-mono);cursor:pointer;position:relative;overflow:hidden}.ledger-onboarding__handpad span{text-align:center}.ledger-onboarding__handpad.is-ready{animation:ledger-handpad-pulse 1.6s ease-in-out infinite}.ledger-onboarding__handpad.is-scanning{cursor:progress;border-style:solid;background:linear-gradient(180deg,rgba(124,244,220,.1),transparent 30%),#080e16d1;animation:ledger-handpad-scan-pulse 1.35s ease-in-out infinite}.ledger-onboarding__handpad.is-scanning svg{animation:ledger-handpad-icon-scan 1.8s ease-in-out infinite}.ledger-onboarding__handpad.is-scanning:before{content:"";position:absolute;inset:-25% 0 auto 0;height:45%;background:linear-gradient(to bottom,transparent,rgba(124,244,220,.35),transparent);animation:ledger-handpad-scanline 1.9s linear infinite;pointer-events:none}.ledger-onboarding__handpad.is-scanning:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(124,244,220,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(124,244,220,.08) 1px,transparent 1px);background-size:20px 20px;opacity:.45;animation:ledger-handpad-grid-drift 2.8s linear infinite;pointer-events:none}.ledger-onboarding__consensus-meter{width:var(--ledger-input-width);min-height:var(--ledger-input-height);height:var(--ledger-input-height);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--banking-accent-strong);text-align:center}.ledger-onboarding__consensus-meter strong{font-family:var(--banking-mono);font-size:clamp(1.5rem,5vw,2.2rem);letter-spacing:.04em}.ledger-onboarding__consensus-symbol{display:block;font-family:var(--banking-sans);font-weight:700;font-size:clamp(5.4rem,18vw,9rem);line-height:.72;letter-spacing:0;text-shadow:0 0 18px rgba(124,244,220,.2)}.ledger-onboarding__consensus-target{color:var(--banking-muted);text-transform:uppercase;letter-spacing:.1em;font-size:var(--text-3xs)}.ledger-onboarding__status{margin:0;font-family:var(--banking-mono);font-size:var(--text-xs)}.ledger-onboarding__status strong{color:var(--banking-accent-strong)}.ledger-onboarding__progress{display:grid;gap:8px;font-size:var(--text-3xs);text-transform:uppercase;letter-spacing:.12em;color:var(--banking-muted)}.ledger-onboarding__progress-track{width:100%;height:10px;border-radius:999px;background:#7cf4dc1f;overflow:hidden}.ledger-onboarding__progress-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,#3fd1c7b3,#7cf4dce6);transition:width .12s linear}.ledger-onboarding__steps{display:grid;gap:8px}.ledger-onboarding__step{display:inline-flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border-radius:10px;border:1px solid rgba(124,244,220,.18);background:#070c14b8;color:var(--banking-muted);font-family:var(--banking-mono);font-size:var(--text-3xs);letter-spacing:.04em}.ledger-onboarding__step-label{display:inline-flex;align-items:center;gap:8px;min-width:0}.ledger-onboarding__step-score{margin-left:auto;text-align:right;font-weight:700;white-space:nowrap}.ledger-onboarding__step-symbol{display:inline-flex;align-items:center;justify-content:center;width:16px;font-family:var(--banking-mono);font-size:var(--text-sm);line-height:1}.ledger-onboarding__step.is-active{border-color:#7cf4dc57;color:#9ee2d5db;background:#0e1a21cc}.ledger-onboarding__step.is-done{border-color:#7cf4dc47;color:#d7ebf8e6}.ledger-onboarding__step.ledger-onboarding__step--score-red{border-color:#e85a789e;color:#ffb0c1;background:#380d16c7}.ledger-onboarding__step.ledger-onboarding__step--score-yellow{border-color:#e9b9508c;color:#f3cd75;background:#30260fb8}.ledger-onboarding__step.ledger-onboarding__step--score-green{border-color:#8ff0c985;color:#8ff0c9;background:#12222ad1}.ledger-onboarding__actions{display:flex;flex-wrap:wrap;gap:10px}.ledger-onboarding__terminal{min-height:220px;height:100%;max-height:none;overflow:auto;scroll-behavior:smooth;border-radius:12px;border:1px solid rgba(124,244,220,.18);background:#060a11c7;padding:10px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:6px}.ledger-onboarding__terminal-line{font-family:var(--banking-mono);font-size:var(--text-3xs);color:#d7ebf8e6;line-height:1.45;word-break:break-word}.ledger-onboarding__overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;background:#02070eb8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:grid;place-items:center;padding:18px}.ledger-onboarding__overlay--error{background:#180408bd}.ledger-onboarding__overlay-card{width:min(560px,100%);border-radius:16px;border:1px solid rgba(124,244,220,.28);background:linear-gradient(160deg,#080e18fa,#04080efa);box-shadow:0 24px 60px #0000009e;padding:20px;display:grid;gap:14px}.ledger-onboarding__overlay-card--error{border-color:#ff6c8080;background:linear-gradient(160deg,#1c0810fa,#0e0409fa);box-shadow:0 24px 60px #3708128c}.banking-chip--danger{background:#aa2c4842;border-color:#ff7a9175;color:#ff9eb2}.banking-action--danger{border-color:#ff7a918c;background:linear-gradient(135deg,#992640f2,#d74260db);color:#ffe8ed}.ledger-onboarding__overlay-card h2{margin:0;font-family:var(--banking-sans);letter-spacing:.04em;text-transform:uppercase}.ledger-onboarding__overlay-card p{margin:0;color:var(--banking-muted);line-height:1.6}.ledger-onboarding__biometrics{display:grid;gap:8px;border:1px solid rgba(124,244,220,.2);border-radius:12px;background:#08101a94;padding:10px}.ledger-onboarding__biometrics h3{margin:0;font-family:var(--banking-mono);font-size:var(--text-3xs);text-transform:uppercase;letter-spacing:.1em;color:var(--banking-muted)}.ledger-onboarding__biometrics-grid{display:grid;gap:6px}.ledger-onboarding__biometrics-item{display:flex;justify-content:space-between;gap:10px;font-family:var(--banking-mono);font-size:var(--text-2xs)}.ledger-onboarding__biometrics-item strong{color:var(--banking-accent-strong)}.ledger-onboarding__overlay-card--error .ledger-onboarding__biometrics{border-color:#ff789159;background:#23081099}.ledger-onboarding__overlay-card--error .ledger-onboarding__biometrics-item strong{color:#ff9eb2}.ledger-onboarding__overlay-actions{display:flex;justify-content:flex-end}@keyframes ledger-scan-pulse{0%,to{transform:scale(1);box-shadow:inset 0 0 26px #7cf4dc40,0 0 26px #3fd1c738}50%{transform:scale(1.012);box-shadow:inset 0 0 34px #7cf4dc59,0 0 34px #3fd1c752}}@keyframes ledger-eye-scanline{0%{top:22%}to{top:78%}}@keyframes ledger-handpad-pulse{0%,to{transform:scale(1);box-shadow:0 0 #7cf4dc33}50%{transform:scale(1.01);box-shadow:0 0 24px #7cf4dc47}}@keyframes ledger-handpad-scan-pulse{0%,to{box-shadow:inset 0 0 #7cf4dc1a,0 0 #7cf4dc33}50%{box-shadow:inset 0 0 28px #7cf4dc29,0 0 24px #7cf4dc38}}@keyframes ledger-handpad-icon-scan{0%,to{transform:scale(1);filter:none}50%{transform:scale(1.05);filter:drop-shadow(0 0 10px rgba(124,244,220,.45))}}@keyframes ledger-handpad-scanline{0%{transform:translateY(-120%)}to{transform:translateY(320%)}}@keyframes ledger-handpad-grid-drift{0%{transform:translateZ(0)}to{transform:translate3d(0,20px,0)}}@media (max-width: 1366px) and (max-height: 900px) and (orientation: landscape){.ledger-onboarding{padding:4px}.ledger-onboarding__shell{padding:12px;border-radius:10px;gap:10px}.ledger-onboarding__header{gap:12px;padding-bottom:10px;padding-right:48px}.ledger-onboarding__title-wrap{gap:6px}.ledger-onboarding__header-chip{padding:5px 10px;font-size:clamp(.68rem,1.05vw,.78rem)}.ledger-onboarding__title{font-size:clamp(1.08rem,1.9vw,1.48rem)}.ledger-onboarding__subtitle{font-size:var(--text-2xs)}.ledger-onboarding__meta{gap:6px 10px}.ledger-onboarding__meta .banking-meta__value{font-size:var(--text-3xs)}.ledger-onboarding__grid{grid-template-columns:1.1fr .9fr;gap:12px}.ledger-onboarding__panel{padding:12px;gap:10px;border-radius:12px}.ledger-onboarding__panel h2{font-size:var(--text-base)}.ledger-onboarding__panel p{font-size:var(--text-2xs);line-height:1.45}.ledger-onboarding__scanner{padding:8px 0 4px}.ledger-onboarding__scanner-visual{--ledger-input-width: min(440px, 94%);--ledger-input-height: 180px;min-height:220px;border-radius:12px;padding:12px}.ledger-onboarding__eye-pupil{width:98px;height:98px}.ledger-onboarding__handpad{border-radius:14px;gap:8px;padding:12px}.ledger-onboarding__consensus-meter{gap:4px}.ledger-onboarding__consensus-meter strong{font-size:clamp(1.2rem,3.1vw,1.62rem)}.ledger-onboarding__consensus-symbol{font-size:clamp(4rem,11vw,6rem)}.ledger-onboarding__status{font-size:var(--text-2xs)}.ledger-onboarding__progress{gap:6px}.ledger-onboarding__progress-track{height:8px}.ledger-onboarding__steps{gap:6px}.ledger-onboarding__step{padding:6px 8px;font-size:.65rem}.ledger-onboarding__step-symbol{width:14px;font-size:var(--text-xs)}.ledger-onboarding__terminal{min-height:150px;padding:8px;gap:4px}.ledger-onboarding__terminal-line{line-height:1.35}.ledger-onboarding__actions{gap:8px}.ledger-onboarding .banking-action{min-height:34px;padding:7px 12px;font-size:var(--text-3xs)}.ledger-onboarding .banking-close{min-width:34px;min-height:34px;width:34px;height:34px}.ledger-onboarding__overlay{padding:12px}.ledger-onboarding__overlay-card{width:min(500px,100%);border-radius:12px;padding:14px;gap:10px}}@media (max-width: 900px){.ledger-onboarding{padding:4px}.ledger-onboarding__shell{padding:14px;border-radius:8px}.ledger-onboarding__header{flex-direction:column;align-items:flex-start;padding-right:0;padding-top:52px}.ledger-onboarding__grid{grid-template-columns:1fr}.ledger-onboarding__close{top:0;right:0}.ledger-onboarding__meta{grid-template-columns:1fr}.ledger-onboarding__scanner-visual{--ledger-input-width: min(460px, 96%);--ledger-input-height: 240px;min-height:280px}.ledger-onboarding__terminal{min-height:180px;max-height:none}}@media (max-width: 900px) and (orientation: portrait){.app.app--onboarding{height:100vh;height:100dvh;min-height:100vh;min-height:100dvh;overflow:hidden}.ledger-onboarding{height:100%;min-height:100%;padding:max(6px,env(safe-area-inset-top)) max(6px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left));overflow:hidden}.ledger-onboarding__shell{height:100%;min-height:0;grid-template-rows:auto minmax(0,1fr);gap:6px;padding:10px}.ledger-onboarding__header{gap:8px;padding-top:0;padding-bottom:6px;border-bottom-color:#7cf4dc1f}.ledger-onboarding__title-wrap{position:relative;gap:5px;width:100%;min-width:0;padding-top:30px}.ledger-onboarding__title{font-size:clamp(.95rem,5.2vw,1.18rem);line-height:1.1;letter-spacing:.045em;max-width:calc(100% - 44px)}.ledger-onboarding__subtitle{display:none}.ledger-onboarding__header-chip{position:absolute;top:0;left:0;padding:4px 10px;font-size:.65rem}.ledger-onboarding__meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px 8px;min-width:0}.ledger-onboarding__meta .banking-meta{min-width:0;gap:1px}.ledger-onboarding__meta .banking-meta__label{font-size:.52rem;letter-spacing:.11em;line-height:1.05}.ledger-onboarding__meta .banking-meta__value{font-size:.74rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ledger-onboarding__stealth-toggle{all:unset;display:block;width:100%;color:inherit;font-family:var(--banking-mono);font-size:inherit;letter-spacing:inherit;line-height:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-tap-highlight-color:transparent;cursor:default}.ledger-onboarding__close{width:32px;height:32px;min-width:32px;min-height:32px}.ledger-onboarding__grid{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);gap:6px;min-height:0;overflow:hidden}.ledger-onboarding__panel{padding:10px;gap:8px;border-radius:12px;min-height:0}.ledger-onboarding__panel--scan{position:sticky;top:0;z-index:4;gap:7px;padding:9px;background:var(--banking-panel);border-color:#7cf4dc42}.ledger-onboarding__scanner{padding:0}.ledger-onboarding__scanner-visual{--ledger-input-width: min(300px, 98%);--ledger-input-height: 112px;min-height:128px;padding:8px;border-radius:12px}.ledger-onboarding__eye-pupil{width:72px;height:72px}.ledger-onboarding__handpad{padding:8px;gap:5px}.ledger-onboarding__handpad span{font-size:.58rem;line-height:1.18;letter-spacing:.08em}.ledger-onboarding__consensus-symbol{font-size:clamp(2.15rem,14vw,3.2rem)}.ledger-onboarding__consensus-meter strong{font-size:clamp(.95rem,5.4vw,1.24rem)}.ledger-onboarding__status{font-size:.78rem;line-height:1.25}.ledger-onboarding__progress{gap:4px;font-size:.58rem;letter-spacing:.1em}.ledger-onboarding__progress-track{height:6px}.ledger-onboarding__steps{gap:6px;grid-template-columns:repeat(3,minmax(0,1fr))}.ledger-onboarding__step{position:relative;align-items:flex-start;justify-content:flex-start;flex-direction:column;gap:5px;min-height:52px;padding:6px 6px 18px;font-size:.55rem;line-height:1.15}.ledger-onboarding__step-label{width:100%;gap:4px}.ledger-onboarding__step-score{position:absolute;right:6px;bottom:5px;margin-left:0;width:auto;white-space:nowrap;text-align:right;line-height:1;font-size:.58rem}.ledger-onboarding__step svg{width:12px;height:12px}.ledger-onboarding__step-symbol{width:12px;font-size:.62rem}.ledger-onboarding__panel--status{grid-template-rows:auto auto minmax(0,1fr) auto;gap:8px;overflow:hidden;padding-top:8px}.ledger-onboarding__panel--status h2{font-size:.94rem;line-height:1.2}.ledger-onboarding__panel--status p{font-size:.72rem;line-height:1.3}.ledger-onboarding__panel--status .ledger-onboarding__actions{order:3;margin-top:2px;padding-top:0;background:transparent}.ledger-onboarding__panel--status .ledger-onboarding__terminal{order:2;min-height:0;height:100%;max-height:none;overflow:auto;margin-top:2px}.ledger-onboarding__actions{gap:6px}.ledger-onboarding .banking-action{min-height:34px;padding:7px 10px;font-size:.63rem}.ledger-onboarding__overlay{align-items:center;justify-items:center;padding:10px}.ledger-onboarding__overlay-card{width:100%;border-radius:14px;padding:14px;gap:10px}}@media (max-width: 520px) and (orientation: portrait){.ledger-onboarding__shell{border-radius:8px;padding:8px;gap:6px}.ledger-onboarding__header-chip{padding:4px 8px;font-size:.6rem;letter-spacing:.08em}.ledger-onboarding__title-wrap{padding-top:27px}.ledger-onboarding__title{font-size:clamp(.88rem,5vw,1.05rem)}.ledger-onboarding__meta{gap:4px 6px}.ledger-onboarding__meta .banking-meta__label{font-size:.49rem}.ledger-onboarding__panel--scan{padding:8px;gap:5px}.ledger-onboarding__scanner-visual{--ledger-input-height: 102px;min-height:114px;padding:8px}.ledger-onboarding__eye-pupil{width:64px;height:64px}.ledger-onboarding__handpad span{font-size:.53rem;line-height:1.14;letter-spacing:.07em}.ledger-onboarding__consensus-symbol{font-size:clamp(1.9rem,12vw,2.7rem)}.ledger-onboarding__steps{gap:4px}.ledger-onboarding__step{min-height:48px;padding:5px 5px 16px;font-size:.52rem}.ledger-onboarding__panel--status .ledger-onboarding__actions{gap:5px}.ledger-onboarding__panel--status .ledger-onboarding__terminal{min-height:0;max-height:none;padding:8px;gap:4px}}@media (prefers-reduced-motion: no-preference){.modal-backdrop--banking .banking-modal{animation:bank-rise .5s ease,bank-modal-jitter 14s steps(1,end) .5s infinite}.modal-backdrop--banking .banking-modal:before{animation:none}.modal-backdrop--banking .banking-modal:after{animation:bank-grid-jitter 7.2s steps(1,end) infinite}.modal-backdrop--banking .banking-surface:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;background:repeating-linear-gradient(to bottom,rgba(124,244,220,.12) 0 1px,transparent 1px 5px);mix-blend-mode:screen;opacity:.12;animation:bank-scanline-drift 9s linear infinite}.modal-backdrop--banking .banking-header,.modal-backdrop--banking .banking-brand__title,.modal-backdrop--banking .banking-ledger__title{animation:bank-text-glitch 9.5s steps(1,end) infinite}}@keyframes bank-rise{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes bank-card{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes bank-fade{0%{opacity:0}to{opacity:1}}@keyframes bank-modal-jitter{0%,12%,31%,54%,79%,to{transform:translateZ(0)}13%{transform:translate3d(.18px,0,0)}32%{transform:translate3d(-.16px,.12px,0)}55%{transform:translate3d(0,-.14px,0)}80%{transform:translate3d(.14px,.08px,0)}}@keyframes bank-grid-jitter{0%,9%,26%,44%,68%,to{opacity:.2;transform:translateZ(0)}10%{opacity:.32;transform:translate3d(.6px,0,0)}27%{opacity:.28;transform:translate3d(-.6px,.4px,0)}45%{opacity:.35;transform:translate3d(0,-.5px,0)}69%{opacity:.26;transform:translate3d(.4px,0,0)}}@keyframes bank-scanline-drift{0%{transform:translateZ(0)}to{transform:translate3d(0,28px,0)}}@keyframes bank-text-glitch{0%,14%,39%,58%,84%,to{text-shadow:none;transform:translateZ(0)}15%{text-shadow:.8px 0 rgba(255,72,136,.25),-.8px 0 rgba(124,244,220,.3);transform:translate3d(.4px,0,0)}40%{text-shadow:-.9px 0 rgba(255,72,136,.22),.9px 0 rgba(124,244,220,.28);transform:translate3d(-.4px,0,0)}59%{text-shadow:.6px 0 rgba(255,72,136,.22),-.6px 0 rgba(124,244,220,.26);transform:translate3d(0,-.2px,0)}85%{text-shadow:.9px 0 rgba(255,72,136,.24),-.9px 0 rgba(124,244,220,.3);transform:translate3d(.3px,.1px,0)}}.panel__card.modal--search{width:min(880px,100%)}.data-search-grid,.data-search-grid .data-powers-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width: 960px){.banking-header{flex-direction:column;align-items:flex-start}.banking-header__aside{width:100%;align-items:flex-start}.banking-header__meta{width:100%;justify-content:space-between;flex-wrap:wrap}.banking-grid{grid-template-columns:1fr}.banking-ledger__list{max-height:320px}}@media (max-width: 640px){input,select,textarea{font-size:var(--text-md)}.modal-backdrop--banking{align-items:stretch;padding:0}.banking-modal{width:100%;max-height:none;height:100vh;height:100dvh;border-radius:0;--banking-ledger-max: none}.banking-surface{max-height:none;height:100vh;height:100dvh;padding:20px;padding-bottom:calc(20px + env(safe-area-inset-bottom,0px));overflow-y:auto;-webkit-overflow-scrolling:touch}.banking-modal--focus-ledger .banking-column{display:none}.banking-input input{font-size:var(--text-md)}.banking-header__controls{position:absolute;top:-8px;right:-8px}.banking-header{padding-right:0}.banking-brand__title{margin-top:13px}.banking-header__aside{width:100%;align-items:stretch}.banking-header__meta{width:100%;padding-right:0;justify-content:space-between;flex-wrap:nowrap}.banking-header__meta .banking-meta{align-items:flex-start;text-align:left;min-width:0}.banking-header__meta .banking-meta:first-of-type{margin-right:auto}.banking-header__meta .banking-meta:last-of-type{margin-left:auto;align-items:flex-end;text-align:right}.banking-balance__value{font-size:clamp(22px,7vw,32px);flex-wrap:wrap}.banking-balance__value small{font-size:var(--text-2xl)}.banking-balance__value span{max-width:100%;overflow-wrap:anywhere}.banking-balance__meta{grid-template-columns:1fr}.banking-ledger .banking-card__header{flex-direction:column;align-items:flex-start;gap:8px}.banking-ledger .banking-card__header--compact{flex-direction:row;align-items:center;gap:12px;justify-content:flex-start}.banking-ledger__actions{width:100%;margin-top:4px;justify-content:flex-start}.banking-card__header--compact .banking-ledger__actions{width:auto;margin-top:0}.banking-ledger__status{margin-top:0}.banking-ledger__actions .banking-input{flex:1}.banking-ledger__pagination-label-full{display:none}.banking-ledger__pagination-label-short{display:inline;font-size:var(--text-md);line-height:1;font-family:var(--banking-mono)}.banking-refresh--ledger{align-self:flex-start}.banking-ledger .banking-input{width:100%}.banking-ledger{max-height:none;overflow:visible;align-self:stretch}.banking-ledger--fixed{height:auto}.banking-ledger__list{max-height:none;overflow:visible;padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0px))}.character-edit__banking-header{flex-direction:column;align-items:flex-start;gap:8px}.character-edit__banking-info{text-align:left}.character-edit__banking-grid{grid-template-columns:1fr}.banking-pin__inputs input{height:var(--touch-target-min);font-size:var(--text-md)}.banking-pin__actions{grid-template-columns:1fr}.banking-pin__actions .banking-action{font-size:var(--text-3xs);padding:12px 14px}.banking-receipt__actions{justify-content:stretch}.banking-fab{right:calc(var(--space-4) + 10px);bottom:calc(var(--space-4) + 10px);width:var(--fab-size-mobile);height:var(--fab-size-mobile);padding:0;border-radius:20px}.banking-transaction{gap:8px 12px}.banking-transaction__label{grid-column:1}.banking-transaction strong{grid-column:2;text-align:right}.banking-transaction__ids{width:100%}.banking-transaction__amount{align-self:stretch;width:100%;justify-content:flex-end;font-size:var(--text-sm);white-space:nowrap}}.data-search__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.data-search__results{display:flex;flex-direction:column;gap:var(--space-3)}.data-search__results .data-search__close{align-self:flex-end}.data-search__input{flex:1;display:flex;align-items:center;gap:var(--space-2);padding:0 0 var(--space-1);border-bottom:1px solid rgba(255,255,255,.25);background:transparent;max-width:520px;margin-left:auto}.data-search__field{flex:1;background:transparent;border:none;color:var(--color-text-primary);font-size:var(--text-xs);outline:none;padding:4px 0}.data-search__field::placeholder{color:#ffffff80}.data-search__action{padding:4px;min-width:unset;min-height:unset;background:transparent;border-color:transparent}.data-search__action:hover{background:transparent;border-color:transparent}.data-search__close{margin-left:auto}.data-search__close-fab{position:absolute;right:var(--space-3);bottom:var(--space-3);border:1px solid var(--color-border);background:#0a0a0ad9;color:var(--color-text-secondary);width:34px;height:34px;border-radius:var(--radius-pill);display:none;align-items:center;justify-content:center;cursor:pointer;z-index:2}.data-search__close-fab:hover{color:var(--color-text-primary);border-color:var(--color-accent-blood)}.panel__card.modal--simple{gap:12px;text-align:left}.panel__card.modal--character{width:min(820px,100%);background:linear-gradient(135deg,#140c0ce6,#080808d9);border-color:var(--color-border-hover);box-shadow:var(--shadow-panel);font-size:var(--text-md);color:var(--color-text-primary)}.panel__card.modal--description{width:min(900px,100%);padding:var(--space-3);gap:var(--space-3)}.modal--description .modal__header{border-bottom:1px solid var(--color-border);padding-bottom:var(--space-2)}.modal--description .modal__title{margin:0;font-family:var(--font-heading);font-size:var(--text-md);letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-secondary)}.modal--description .modal__body{width:100%;max-width:100%;line-height:1.6}.modal--description .modal__text{font-size:var(--text-sm);color:var(--color-text-primary)}.modal--description .modal__actions{padding-top:var(--space-1)}.generation-label{font-size:var(--text-xs);color:var(--color-text-muted)}.generation-note{margin:4px 0 0;font-size:var(--text-xs);font-style:italic;color:var(--color-text-muted)}.card-add__action{color:var(--color-text-muted);border-color:transparent}.card-add__action:not(:disabled){color:var(--color-accent-blood);border-color:var(--color-accent-blood)}.character-list__grid{align-items:stretch}.character-list__sections{display:grid;gap:var(--space-6)}.character-list__status-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;background:#08080a73}.character-list__status-tab{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:transparent;border:0;border-right:1px solid var(--color-border);color:var(--color-text-secondary);padding:10px 8px;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;min-width:0;transition:background .15s ease,color .15s ease}.character-list__status-tab:last-child{border-right:0}.character-list__status-tab:hover,.character-list__status-tab:focus-visible{background:#ffffff08;color:var(--color-text-primary)}.character-list__status-tab.is-active{background:linear-gradient(180deg,#7a111c47,#340c1038);color:var(--color-text-primary);box-shadow:inset 0 -1px #bf182c73}.character-list__status-tab-label{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:var(--text-sm)}.character-list__status-tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;font-size:var(--text-2xs);border:1px solid rgba(255,255,255,.14);background:#00000040;color:inherit}.character-list__section{display:grid;gap:var(--space-3)}.character-list__section-header{display:flex;align-items:center;justify-content:space-between}.character-list__section-title{margin:0;font-family:var(--font-heading);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.14em;color:var(--color-text-primary)}.character-list__header{display:flex;align-items:center;gap:var(--space-4);flex:1}.character-list__search-group{position:absolute;left:50%;transform:translate(-50%);display:flex;align-items:center;width:min(640px,60%)}.character-list__search{flex:1;width:100%;background:transparent;border:none;border-bottom:1px solid rgba(255,255,255,.6);padding:var(--space-2) 0;font-size:var(--text-sm);text-align:center;position:static;transform:none}.character-list__search-button--inline{position:absolute;right:0;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;padding:4px;min-width:unset;min-height:unset}.character-list__search-button--outer{display:inline-flex;align-items:center;gap:var(--space-2);white-space:nowrap;margin-left:auto}.character-list__search-button--inline{display:none}.character-list-page .panel__header{position:relative;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.character-list__new{margin-left:auto}.data-page .panel__header{position:relative;display:flex;align-items:center;gap:var(--space-4)}.data-page.panel{overflow:visible}.data-page__header{display:flex;align-items:center;gap:var(--space-4);flex:1}.data-page__search-sticky{display:none}.data-page__search-group{left:50%;transform:translate(-50%);width:min(640px,60%);display:flex;align-items:center;position:absolute}.data-page__search{flex:1;background:transparent;border:none;border-bottom:1px solid rgba(255,255,255,.6);padding:var(--space-2) 0;font-size:var(--text-sm);text-align:center}.data-page__search-button--inline{position:absolute;right:0;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;padding:4px;min-width:unset;min-height:unset}.data-page__search-button--outer{display:inline-flex;align-items:center;gap:var(--space-2);white-space:nowrap;margin-left:auto}.data-page__search-button--inline{display:none}.data-page__search::placeholder{color:#ffffff80}.character-list__search::placeholder{color:#ffffff80}.character-card{background:var(--surface-card-strong);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4);text-align:left;cursor:pointer;transition:all .2s ease}.character-card:hover,.character-card:focus-visible{border-color:var(--color-accent-blood);box-shadow:var(--shadow-elevated)}.character-card__header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-3);border-bottom:1px solid var(--color-border);padding-bottom:var(--space-2)}.character-card__info{flex:1;min-width:0}.character-card__title-block{min-width:0;width:100%}.character-card__name{margin:0;font-family:var(--font-heading);font-size:var(--text-xl);color:var(--color-accent-blood);letter-spacing:.05em;text-transform:uppercase;white-space:normal;overflow-wrap:anywhere;word-break:break-word;line-height:1.15}.character-card__meta{margin:6px 0 0;font-size:var(--text-sm);color:var(--color-text-secondary)}.character-card__subtitle{margin:6px 0 0;font-size:var(--text-md);color:var(--color-text-secondary)}.character-card__player{margin:calc(var(--space-2) * -1) 0 0;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);overflow-wrap:anywhere;word-break:break-word}.character-card__generation{font-family:var(--font-heading);font-size:var(--text-md);display:flex;flex-direction:column;align-items:flex-end;gap:6px}.character-card__generation-value{font-size:clamp(1.7rem,6vw,2.6rem);line-height:1;color:var(--color-text-primary)}.character-card__free-xp{font-size:var(--text-xs);padding:2px 6px;flex-shrink:0;align-self:center}.character-card__balance{font-size:var(--text-2xs);padding:2px 8px;text-transform:none;margin-left:auto}.character-card__wallet{font-size:var(--text-2xs);padding:2px 8px;text-transform:uppercase}.character-card__footer{display:flex;justify-content:space-between;align-items:flex-end;width:100%}.character-card__stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3) var(--space-4)}.character-card__stat{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-3);font-size:var(--text-md)}.character-card__stat-label{color:var(--color-text-secondary)}.character-card__stat-value{color:#fff;font-family:var(--font-heading);font-weight:600}.character-list__new{padding:var(--space-2) var(--space-4)}.step-cards{display:flex;flex-direction:column;gap:var(--space-4)}.step-card.panel__card{padding:0;overflow:hidden;gap:0;transition:all .3s ease}.step-card__header{width:100%;display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);background:transparent;border:none;font-family:var(--font-heading);font-size:var(--text-lg);color:var(--color-text-secondary);cursor:pointer;text-align:left;transition:all .2s ease;border-bottom:1px solid transparent}.step-card__header:hover:not(:disabled){background:#ffffff08;color:var(--color-text-primary)}.step-card__header--active{background:#dc143c0d!important;color:var(--color-accent-blood);border-bottom:1px solid var(--color-border)}.step-card__header--done{color:var(--color-text-primary)}.step-card__header:disabled{opacity:.5;cursor:not-allowed}.step-card__body{padding:var(--space-6);animation:slideDown .3s ease-out}.stepper__index{width:var(--space-7);height:var(--space-7);border-radius:50%;border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;font-family:var(--font-body);font-size:var(--text-xs);font-weight:600;flex-shrink:0;transition:all .3s ease}.step-card__header--active .stepper__index{background:var(--color-accent-blood);border-color:var(--color-accent-blood);color:#fff;box-shadow:0 0 10px #dc143c66}.step-card__header--done .stepper__index{background:#ffffff1a;border-color:transparent;color:var(--color-text-muted)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){:root{--header-height: 56px}.data-page{--data-search-sticky-height: calc(var(--touch-target-min) + var(--space-2) * 2)}.grid--two,.grid--three{grid-template-columns:1fr}.gang-admin__layout{grid-template-columns:1fr;gap:12px}.gang-admin__sidebar{max-height:none}.gang-admin__form-grid{grid-template-columns:1fr}.app{padding:0;gap:0}.app:has(.character-details__mobile-appbar){padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}.app__actions{display:none}.app__header{margin-bottom:0;width:100%;margin-left:0;margin-right:0}.app__header-content{padding:6px 16px}.app__brand{gap:var(--space-2);min-width:0;flex:1 1 auto}.app__titles{min-width:0}.app__crest{width:46px;height:46px}.app__logo{width:40px;height:40px}.app__product{font-size:var(--text-md)}.app__eyebrow{display:none}.menu-link{font-size:var(--text-xs);padding:5px 10px}.mobile-menu__toggle{display:inline-flex;width:var(--touch-target-min);height:var(--touch-target-min);flex-shrink:0;margin-left:var(--space-2)}.mobile-menu__toggle,.mobile-menu__close,.profile-menu__button{min-height:var(--touch-target-min);min-width:var(--touch-target-min);aspect-ratio:1 / 1;padding:0}.mobile-menu__drawer{width:min(360px,92vw);padding:var(--space-5) var(--space-4);gap:var(--space-4)}.mobile-menu__nav{align-items:stretch;gap:var(--space-3)}.mobile-menu__nav .menu-link,.mobile-menu__footer .menu-link{min-height:44px;line-height:1.1;padding:10px 14px;top:0;width:100%;justify-content:flex-start;text-align:left;border-radius:var(--radius-md)}.mobile-menu__nav .menu-link__text{font-size:var(--text-md);font-weight:700}.mobile-menu__footer{width:100%}.mobile-menu__language,.mobile-menu__language-options{width:100%;align-items:stretch}.mobile-menu__language-options{flex-direction:column}.mobile-menu__footer .menu-link{justify-content:center}.character-create__clan-grid{grid-template-columns:1fr}.character-create__clan-summary{grid-column:auto}.character-create__discipline-header{width:100%;flex-direction:column;align-items:flex-start!important;gap:var(--space-2);text-align:left}.character-create__discipline-header .panel__actions{margin-left:0;align-self:flex-end}.character-create__discipline-header .section-card__title{width:100%;justify-content:flex-start}.character-list__search,.data-page__search,.data-search__field{font-size:var(--text-md)}.panel__card{padding:var(--space-2);gap:var(--space-2);border-radius:0;border-left:none;border-right:none;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);box-shadow:none;background:#121212f2}.character-list__header{display:flex;flex-direction:column;align-items:flex-start;gap:12px;width:100%}.character-list__search{padding-right:36px}.character-list__search-group{position:relative;left:auto;transform:none;width:100%}.character-list__search-button--inline{display:inline-flex}.character-list__search-button--outer{display:none}.character-card__stats{grid-template-columns:1fr}.character-list__status-tab{flex-direction:column;gap:4px;padding:8px 6px}.character-list__status-tab-label{font-size:var(--text-xs)}.character-card__free-xp{font-size:var(--text-xs);padding:2px 6px}.character-list__new{width:100%;order:2}.character-list-page .panel__header{display:flex;flex-direction:column;align-items:stretch;gap:12px}.data-page .panel__header{flex-direction:column;align-items:stretch;gap:12px}.data-page__header{flex-direction:column;align-items:flex-start;width:100%}.data-page__search-group{position:relative;transform:none;width:100%;left:0}.data-page__search-sticky{display:flex;align-items:center;gap:var(--space-3);position:fixed;top:var(--header-height);left:0;right:0;z-index:45;height:var(--data-search-sticky-height);background:#080606f2;border:none;border-radius:0;padding:0 var(--space-3);margin:0;box-shadow:none}.data-page .panel__header{display:none}.data-page .panel__body{padding-top:var(--data-search-sticky-height)}.data-page__header .data-page__search-group,.data-page__header .data-page__search-button--outer{display:none}.data-page__search{width:100%;text-align:left;padding-right:36px}.data-page__search-button--inline{display:inline-flex}.data-page__search-button--outer{display:none}.character-details .panel__header{flex-direction:column;align-items:flex-start;gap:12px}.character-details .panel__actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.character-details .panel__actions .button{width:100%}.character-details .panel__header>.panel__actions .button{font-size:var(--text-2xs)}.character-edit .panel__header{flex-direction:column;align-items:flex-start;gap:12px}.character-edit .panel__actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.character-edit .panel__status{width:100%;justify-content:flex-start}.character-create .panel__header{flex-direction:column;align-items:flex-start;gap:12px}.character-create .panel__actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.character-details .panel__actions .button:only-child,.character-edit .panel__actions .button:only-child,.character-create .panel__actions .button:only-child{grid-column:1 / -1}.character-details .panel__actions .button:nth-child(3):nth-last-child(1),.character-edit .panel__actions .button:nth-child(3):nth-last-child(1),.character-create .panel__actions .button:nth-child(3):nth-last-child(1){grid-column:1 / -1}.data-search__header{flex-direction:column;align-items:stretch}.data-search__input{max-width:100%;margin-left:0}.data-search__close{display:none}.data-search__close-fab{display:inline-flex;position:fixed;right:var(--space-4);bottom:var(--space-4);width:48px;height:48px;box-shadow:0 14px 28px #00000080;z-index:220}.modal-backdrop--search{padding:0;align-items:stretch}.panel__card.modal--search{position:relative;width:100%;height:100vh;height:100dvh;max-height:none;border-radius:0}.data-search-grid,.data-search-grid .data-powers-grid{grid-template-columns:1fr}.data-search__results{flex:1;overflow:auto}.modal-backdrop--data,.modal-backdrop--character{padding:0;align-items:stretch}.panel__card.modal--data{width:100%;height:100vh;height:100dvh;max-height:none;border-radius:0;gap:0;padding-bottom:calc(var(--space-3) + 40px)}.data-modal__close{display:inline-flex;position:fixed;right:var(--space-4);bottom:var(--space-4);width:48px;height:48px;box-shadow:0 14px 28px #00000080;z-index:220}.data-modal__actions{display:none}.panel__card.modal--data .data-powers-grid{grid-template-columns:1fr}.panel__card.modal--character{width:100%;height:100vh;height:100dvh;max-height:none;border-radius:0;padding-bottom:calc(var(--space-3) + 40px)}.character-modal__close{display:inline-flex;position:fixed;right:var(--space-4);bottom:var(--space-4);width:48px;height:48px;box-shadow:0 14px 28px #00000080;z-index:220}.panel__card.modal--character .modal-close-button{display:none}.data-search__close,.modal__actions .button,.data-modal__actions .button{width:100%}.character-edit__banking{margin-left:calc(var(--space-2) * -1);margin-right:calc(var(--space-2) * -1);width:calc(100% + var(--space-2) * 2);border:none;border-radius:0;margin-top:var(--space-3);margin-bottom:var(--space-2);padding-top:var(--space-2);padding-bottom:6px;padding-left:calc(var(--space-2) * 2);padding-right:calc(var(--space-2) * 2)}.character-edit__banking--override .character-edit__banking-info h4,.character-edit__banking--override .character-edit__banking-info p,.character-edit__banking--widget .character-edit__banking-info h4,.character-edit__banking--widget .character-edit__banking-info p{display:none}.character-edit__banking-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.character-edit__banking--widget .character-edit__banking-grid,.character-edit__banking--override .character-edit__banking-grid{grid-template-columns:1fr;margin-top:4px}.character-edit__subtitle{width:100%}.character-edit__subtitle-input{min-width:0;width:100%}.owner-select--inline{width:100%;min-width:0}.step-card__body{padding:var(--space-2)}.field{margin-bottom:16px}input,select,textarea,button{min-height:var(--touch-target-min)}.panel--list .panel__header .button--primary{position:fixed;bottom:calc(var(--space-6) + 10px);right:calc(var(--space-6) + 10px);width:var(--fab-size-mobile);height:var(--fab-size-mobile);border-radius:50%;padding:0;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-panel);z-index:999;font-size:var(--text-xs);border:1px solid var(--color-accent-blood-bright);background:var(--color-accent-blood)}.app__content{grid-template-columns:1fr;gap:var(--space-4)}.panel--list{position:static;max-height:none;margin-bottom:var(--space-4)}.panel--list .panel__body{padding-bottom:calc(var(--fab-size-mobile) + var(--space-6) + env(safe-area-inset-bottom))}.list__item{padding:var(--space-3)}.combat-pools__row--two,.combat-pools__row--three{grid-template-columns:1fr}.app__actions span.menu-link__text{display:none}.xp-fab{right:calc(var(--space-4) + 10px);bottom:calc(var(--space-4) + 10px);width:var(--fab-size-mobile);height:var(--fab-size-mobile);padding:var(--space-1)}.save-fab{right:calc(var(--space-4) + 10px);bottom:calc(var(--space-4) + 10px);width:var(--fab-size-mobile);height:var(--fab-size-mobile)}.save-fab--stacked{bottom:calc(var(--space-4) + 10px + var(--fab-size-mobile) + var(--space-4))}.save-fab__icon{width:18px;height:18px}.validation-fab{right:calc(var(--space-4) + 10px);bottom:calc(var(--space-4) + 10px);width:var(--fab-size-mobile);height:var(--fab-size-mobile)}.validation-fab--stack-1{bottom:calc(var(--space-4) + 10px + var(--fab-size-mobile) + var(--space-4))}.validation-fab--stack-2{bottom:calc(var(--space-4) + 10px + (var(--fab-size-mobile) * 2) + (var(--space-4) * 2))}.validation-fab__content{gap:0}.validation-fab__mark{font-size:1.55rem}.validation-fab__count{font-size:.62rem}.validation-overlay{left:0;right:0;width:auto;bottom:0;max-height:72vh;border-radius:16px 16px 0 0;border-left:none;border-right:none;border-bottom:none}.validation-overlay--stack-1,.validation-overlay--stack-2{bottom:0}.xp-fab__label{font-size:var(--text-2xs);letter-spacing:.06em}.menu-link,.panel__body{padding:var(--space-2)}.panel__header{padding:var(--space-2) var(--space-3)}.character-details .panel__body>.stack{gap:var(--space-2)}.character-details .panel__body{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}.character-details__mobile-appbar{display:block;position:fixed;left:0;right:0;bottom:0;width:auto;height:calc(56px + env(safe-area-inset-bottom,0px));z-index:120;background:linear-gradient(to top,#080606fa,#140808f5 42%,#1e0a0ae6);border-left:none;border-right:none;border-bottom:none;border-radius:0;border-top:1px solid rgba(138,28,28,.65);box-shadow:0 -18px 32px #0000008c}.character-details__mobile-appbar-content{flex-direction:row;align-items:center;justify-content:center;height:100%;padding:6px 14px}.character-details__mobile-appbar-button+.character-details__mobile-appbar-button{margin-top:0;margin-left:8px}.character-details__mobile-appbar-button+.character-details__mobile-appbar-button:before{left:-4px;top:50%;width:1px;height:26px;transform:translateY(-50%);background:linear-gradient(to bottom,#bfb4a000,#d2b37ad9,#bfb4a000)}.character-details__mobile-appbar:before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(to right,#bfb4a000,#bfb4a08c,#bfb4a000)}.character-details .banking-fab{display:none}.list__row{flex-wrap:wrap;align-items:flex-start;gap:var(--space-1) var(--space-2)}.list__row>*{min-width:0}.grid,.stack{gap:var(--space-2)}.chip--xp{max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rules-page .rules-selector{grid-template-columns:1fr;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-lg);background:#080606bf;border:1px solid rgba(191,180,160,.2);box-shadow:inset 0 0 0 1px #00000059}.rules-page .rules-selector__button{justify-content:flex-start;text-align:left;gap:var(--space-3);padding:12px 14px;border-radius:var(--radius-md);border:1px solid rgba(191,180,160,.16);background:#ffffff05;font-size:var(--text-xs);letter-spacing:.08em;line-height:1.2;white-space:normal}.rules-page .rules-selector__button svg{width:16px;height:16px;border-radius:50%;padding:4px;background:#0006;border:1px solid rgba(191,180,160,.25)}.rules-page .rules-selector__button.is-active{background:linear-gradient(90deg,#8a1c1c8c,#140a0a33);border-color:#8a1c1c8c;box-shadow:inset 3px 0 #8a1c1ccc,0 0 12px #8a1c1c40}.data-grid{grid-template-columns:1fr}.dot-rating{justify-content:flex-end;gap:var(--space-1);width:100%}.list__row--stat{flex-wrap:wrap;gap:var(--space-2)}.list__row--stat .dot-rating{flex:0 0 100%;justify-content:flex-end}.list__row--stat-dots{display:grid;grid-template-columns:1fr auto;align-items:start;column-gap:var(--space-2);row-gap:var(--space-1)}.list__row--stat-dots>span:first-child{grid-column:1 / 2;grid-row:1 / 2;min-width:0}.list__row--stat-dots .list__row__stat-value{display:contents}.list__row--stat-dots .list__row__stat-value .combat-pool__total{grid-column:2 / 3;grid-row:1 / 2;justify-self:end;align-self:start}.list__row--stat-dots .list__row__stat-value .dot-rating{grid-column:1 / -1;grid-row:2 / 3;width:100%;justify-content:flex-end}.dot{width:var(--dot-size-mobile);height:var(--dot-size-mobile);min-width:var(--dot-size-mobile);min-height:var(--dot-size-mobile);flex:0 0 var(--dot-size-mobile)}}@media (max-width: 520px){.app__product{display:block;line-height:1.05;white-space:normal}.app__product-main,.app__product-sub{display:block}}.notice{border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4);border:1px solid var(--color-accent-blood);background:var(--color-accent-blood-dim)}.notice h4{margin:0 0 var(--space-2);color:var(--color-accent-blood-bright);font-family:var(--font-heading);text-transform:uppercase;font-size:var(--text-xs)}.notice ul{margin:0;padding-left:18px;color:var(--color-text-secondary);font-size:var(--text-xs)}.checkboxes{display:grid;gap:var(--space-2);margin-top:var(--space-3)}.checkbox{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-text-secondary)}.checkbox input{width:auto;margin:0}.dot-rating{display:inline-flex;gap:var(--space-2);align-items:center;flex-wrap:wrap;justify-content:flex-end}.dot{width:var(--dot-size);height:var(--dot-size);min-width:var(--dot-size);min-height:var(--dot-size);aspect-ratio:1 / 1;border-radius:50%;border:1px solid var(--color-border-hover);flex-shrink:0;background:transparent;cursor:pointer;padding:0;-moz-appearance:none;appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;transition:all .2s}.dot:hover{border-color:var(--color-accent-blood)}.dot--filled{background:var(--color-accent-blood);border-color:var(--color-accent-blood);box-shadow:0 0 5px var(--color-accent-blood)}.dot--bonus{border-color:var(--color-accent-gold, #d2b37a)}.dot--bonus.dot--filled{background:linear-gradient(135deg,var(--color-accent-blood),var(--color-accent-gold, #d2b37a));border-color:var(--color-accent-gold, #d2b37a);box-shadow:0 0 5px var(--color-accent-gold, #d2b37a)}.dot--disabled{cursor:not-allowed;opacity:.6}.dot:focus{outline:2px solid var(--color-accent-blood);outline-offset:2px}@media (max-width: 768px){.dot{width:var(--dot-size-mobile);height:var(--dot-size-mobile);min-width:var(--dot-size-mobile);min-height:var(--dot-size-mobile);border-radius:50%}}.attribute-field{padding:var(--space-2) 0;border-bottom:1px solid rgba(255,255,255,.05)}.attribute-field:last-child{border-bottom:none}.attribute-field__row{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2)}.attribute-field__row>span{flex:1 1 auto;min-width:0}.attribute-field__row .dot-rating{width:auto;flex:0 0 auto;justify-content:flex-end}.attribute-field__desc{font-size:var(--text-xs);display:block;margin-top:2px;color:var(--color-text-muted)}
