@layer properties;@layer theme,base,components,utilities;@layer theme{:root,:host{--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing: .25rem;--container-xs: 20rem;--container-md: 28rem;--container-lg: 32rem;--container-xl: 36rem;--container-2xl: 42rem;--container-3xl: 48rem;--container-4xl: 56rem;--container-5xl: 64rem;--container-6xl: 72rem;--container-7xl: 80rem;--text-xs: .75rem;--text-xs--line-height: calc(1 / .75);--text-sm: .875rem;--text-sm--line-height: calc(1.25 / .875);--text-base: 1rem;--text-base--line-height: 1.5 ;--text-lg: 1.125rem;--text-lg--line-height: calc(1.75 / 1.125);--text-xl: 1.25rem;--text-xl--line-height: calc(1.75 / 1.25);--text-2xl: 1.5rem;--text-2xl--line-height: calc(2 / 1.5);--text-3xl: 1.875rem;--text-3xl--line-height: 1.2 ;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--tracking-wide: .025em;--leading-tight: 1.25;--leading-snug: 1.375;--leading-relaxed: 1.625;--radius-lg: .5rem;--radius-xl: .75rem;--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-sm: 8px;--default-transition-duration: .15s;--default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);--default-font-family: var(--font-sans);--default-mono-font-family: var(--font-mono);--color-app-canvas: #0d0e15;--color-app-surface: #171721;--color-app-surface-raised: #211f2d;--color-app-surface-sunken: #101019;--color-app-inset: #101019;--color-app-text: #f5f2f8;--color-app-muted: #b6afbd;--color-app-subtle: #817b89;--color-app-border: rgb(255 255 255 / .1);--color-app-divider: rgb(255 255 255 / .08);--color-app-primary: #8b5cf6;--color-app-primary-hover: #a78bfa;--color-app-accent: #34d399;--color-app-success: #34d399;--color-app-success-soft: rgb(52 211 153 / .14);--color-app-syncing: #a78bfa;--color-app-warning: #fbbf24;--color-app-danger: #fb7185;--color-app-danger-soft: rgb(251 113 133 / .14);--color-app-warning-soft: rgb(251 191 36 / .14);--color-app-focus: rgb(167 139 250 / .85);--color-app-overlay: rgb(0 0 0 / .72);--color-app-primary-border: rgb(167 139 250 / .42);--color-app-primary-soft: rgb(139 92 246 / .18);--color-app-primary-soft-hover: rgb(139 92 246 / .28);--color-app-neutral-soft: rgb(255 255 255 / .05);--color-app-neutral-hover: rgb(255 255 255 / .09);--radius-app-control: .75rem;--radius-app-panel: 1rem;--radius-app-shell: 1.5rem;--shadow-app-panel: 0 16px 36px rgb(0 0 0 / .2);--shadow-app-modal: 0 28px 60px rgb(0 0 0 / .42);--z-app-header: 40;--z-app-modal: 80;--z-app-alert: 100}}@layer base{*,:after,:before,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;font-family:var(--default-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings, normal);font-variation-settings:var(--default-font-variation-settings, normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings, normal);font-variation-settings:var(--default-mono-font-variation-settings, normal);font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px){::placeholder{color:currentcolor}@supports (color: color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]),::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.collapse\!{visibility:collapse!important}.invisible{visibility:hidden}.invisible\!{visibility:hidden!important}.visible{visibility:visible}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border-width:0}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.inset-x-0{inset-inline:0px}.inset-x-3{inset-inline:calc(var(--spacing) * 3)}.start-1{inset-inline-start:calc(var(--spacing) * 1)}.start-2{inset-inline-start:calc(var(--spacing) * 2)}.end-1{inset-inline-end:calc(var(--spacing) * 1)}.top-0{top:0}.top-1\/2{top:50%}.top-\[4\.75rem\]{top:4.75rem}.bottom-0{bottom:0}.left-3{left:calc(var(--spacing) * 3)}.isolate{isolation:isolate}.z-10{z-index:10}.z-40{z-index:40}.z-\[60\]{z-index:60}.z-\[var\(--z-app-alert\)\]{z-index:var(--z-app-alert)}.z-\[var\(--z-app-header\)\]{z-index:var(--z-app-header)}.z-\[var\(--z-app-modal\)\]{z-index:var(--z-app-modal)}.order-3{order:3}.col-0{grid-column:0}.col-1{grid-column:1}.col-2{grid-column:2}.col-3{grid-column:3}.col-4{grid-column:4}.col-5{grid-column:5}.col-6{grid-column:6}.col-7{grid-column:7}.col-8{grid-column:8}.col-9{grid-column:9}.col-10{grid-column:10}.col-11{grid-column:11}.col-12{grid-column:12}.col-span-full{grid-column:1 / -1}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.m-6{margin:calc(var(--spacing) * 6)}.mx-auto{margin-inline:auto}.my-5{margin-block:calc(var(--spacing) * 5)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-auto{margin-top:auto}.mr-1{margin-right:var(--spacing)}.mr-auto{margin-right:auto}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--spacing)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.ml-1{margin-left:var(--spacing)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.table\!{display:table!important}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-12{height:calc(var(--spacing) * 12)}.h-14{height:calc(var(--spacing) * 14)}.h-16{height:calc(var(--spacing) * 16)}.h-20{height:calc(var(--spacing) * 20)}.h-28{height:calc(var(--spacing) * 28)}.h-fit{height:fit-content}.h-px{height:1px}.max-h-\[85vh\]{max-height:85vh}.max-h-\[88dvh\]{max-height:88dvh}.max-h-\[90vh\]{max-height:90vh}.max-h-\[94dvh\]{max-height:94dvh}.max-h-\[calc\(100vh-6rem\)\]{max-height:calc(100vh - 6rem)}.min-h-0{min-height:0px}.min-h-6{min-height:calc(var(--spacing) * 6)}.min-h-8{min-height:calc(var(--spacing) * 8)}.min-h-9{min-height:calc(var(--spacing) * 9)}.min-h-10{min-height:calc(var(--spacing) * 10)}.min-h-11{min-height:calc(var(--spacing) * 11)}.min-h-14{min-height:calc(var(--spacing) * 14)}.min-h-16{min-height:calc(var(--spacing) * 16)}.min-h-20{min-height:calc(var(--spacing) * 20)}.min-h-24{min-height:calc(var(--spacing) * 24)}.min-h-28{min-height:calc(var(--spacing) * 28)}.min-h-32{min-height:calc(var(--spacing) * 32)}.min-h-\[calc\(100vh-4rem\)\]{min-height:calc(100vh - 4rem)}.min-h-dvh{min-height:100dvh}.min-h-screen{min-height:100vh}.w-5{width:calc(var(--spacing) * 5)}.w-7{width:calc(var(--spacing) * 7)}.w-9{width:calc(var(--spacing) * 9)}.w-10{width:calc(var(--spacing) * 10)}.w-12{width:calc(var(--spacing) * 12)}.w-14{width:calc(var(--spacing) * 14)}.w-16{width:calc(var(--spacing) * 16)}.w-20{width:calc(var(--spacing) * 20)}.w-24{width:calc(var(--spacing) * 24)}.w-28{width:calc(var(--spacing) * 28)}.w-64{width:calc(var(--spacing) * 64)}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-\[8rem\]{max-width:8rem}.max-w-\[1600px\]{max-width:1600px}.max-w-full{max-width:100%}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-xl{max-width:var(--container-xl)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:0px}.min-w-6{min-width:calc(var(--spacing) * 6)}.min-w-11{min-width:calc(var(--spacing) * 11)}.min-w-48{min-width:calc(var(--spacing) * 48)}.min-w-\[12rem\]{min-width:12rem}.flex-1{flex:1}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-1{--tw-translate-y: var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize{resize:both}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-cols-\[1fr_auto\]{grid-template-columns:1fr auto}.grid-cols-\[auto_1fr\]{grid-template-columns:auto 1fr}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.content-start{align-content:flex-start}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-8{gap:calc(var(--spacing) * 8)}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse: 0;margin-block-start:calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse: 0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse: 0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse: 0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse: 0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse: 0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse: 0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-x-5{column-gap:calc(var(--spacing) * 5)}.gap-x-8{column-gap:calc(var(--spacing) * 8)}.gap-y-1{row-gap:var(--spacing)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.gap-y-3{row-gap:calc(var(--spacing) * 3)}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse: 0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-app-divider>:not(:last-child)){border-color:var(--color-app-divider)}.self-center{align-self:center}.self-end{align-self:flex-end}.justify-self-start{justify-self:flex-start}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-clip{overflow-x:clip}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-\[1\.25rem\]{border-radius:1.25rem}.rounded-app-control{border-radius:var(--radius-app-control)}.rounded-app-panel{border-radius:var(--radius-app-panel)}.rounded-app-shell{border-radius:var(--radius-app-shell)}.rounded-full{border-radius:calc(infinity * 1px)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0px}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-app-border{border-color:var(--color-app-border)}.border-app-danger{border-color:var(--color-app-danger)}.border-app-divider{border-color:var(--color-app-divider)}.border-app-primary{border-color:var(--color-app-primary)}.border-app-primary-border{border-color:var(--color-app-primary-border)}.border-app-primary\/30{border-color:color-mix(in srgb,#8b5cf6 30%,transparent)}@supports (color: color-mix(in lab,red,red)){.border-app-primary\/30{border-color:color-mix(in oklab,var(--color-app-primary) 30%,transparent)}}.border-app-primary\/40{border-color:color-mix(in srgb,#8b5cf6 40%,transparent)}@supports (color: color-mix(in lab,red,red)){.border-app-primary\/40{border-color:color-mix(in oklab,var(--color-app-primary) 40%,transparent)}}.border-app-primary\/50{border-color:color-mix(in srgb,#8b5cf6 50%,transparent)}@supports (color: color-mix(in lab,red,red)){.border-app-primary\/50{border-color:color-mix(in oklab,var(--color-app-primary) 50%,transparent)}}.border-app-success{border-color:var(--color-app-success)}.border-app-warning{border-color:var(--color-app-warning)}.border-transparent{border-color:transparent}.bg-\[var\(--color-app-overlay\)\]{background-color:var(--color-app-overlay)}.bg-app-canvas{background-color:var(--color-app-canvas)}.bg-app-danger-soft{background-color:var(--color-app-danger-soft)}.bg-app-divider{background-color:var(--color-app-divider)}.bg-app-neutral-soft{background-color:var(--color-app-neutral-soft)}.bg-app-primary-soft{background-color:var(--color-app-primary-soft)}.bg-app-success-soft{background-color:var(--color-app-success-soft)}.bg-app-surface{background-color:var(--color-app-surface)}.bg-app-surface-raised{background-color:var(--color-app-surface-raised)}.bg-app-surface-raised\/95{background-color:color-mix(in srgb,#211f2d 95%,transparent)}@supports (color: color-mix(in lab,red,red)){.bg-app-surface-raised\/95{background-color:color-mix(in oklab,var(--color-app-surface-raised) 95%,transparent)}}.bg-app-surface-sunken{background-color:var(--color-app-surface-sunken)}.bg-app-surface\/60{background-color:color-mix(in srgb,#171721 60%,transparent)}@supports (color: color-mix(in lab,red,red)){.bg-app-surface\/60{background-color:color-mix(in oklab,var(--color-app-surface) 60%,transparent)}}.bg-app-warning-soft{background-color:var(--color-app-warning-soft)}.\!p-0{padding:0!important}.p-0{padding:0}.p-1{padding:var(--spacing)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-3\.5{padding:calc(var(--spacing) * 3.5)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.px-0{padding-inline:0px}.px-1{padding-inline:var(--spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-10{padding-block:calc(var(--spacing) * 10)}.pt-1{padding-top:var(--spacing)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pr-1{padding-right:var(--spacing)}.pb-1{padding-bottom:var(--spacing)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-\[calc\(6rem\+env\(safe-area-inset-bottom\)\)\]{padding-bottom:calc(6rem + env(safe-area-inset-bottom))}.pb-\[env\(safe-area-inset-bottom\)\]{padding-bottom:env(safe-area-inset-bottom)}.pb-\[max\(0\.75rem\,env\(safe-area-inset-bottom\)\)\]{padding-bottom:max(.75rem,env(safe-area-inset-bottom))}.pl-5{padding-left:calc(var(--spacing) * 5)}.pl-9{padding-left:calc(var(--spacing) * 9)}.text-center{text-align:center}.text-justify{text-align:justify}.text-left{text-align:left}.text-right{text-align:right}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading, var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading, var(--text-3xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading, var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading, var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading, var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading, var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading, var(--text-xs--line-height))}.text-\[0\.7rem\]{font-size:.7rem}.text-\[0\.65rem\]{font-size:.65rem}.text-\[0\.68rem\]{font-size:.68rem}.leading-5{--tw-leading: calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.leading-6{--tw-leading: calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.leading-none{--tw-leading: 1;line-height:1}.leading-relaxed{--tw-leading: var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading: var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading: var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight: var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight: var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight: var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight: var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.12em\]{--tw-tracking: .12em;letter-spacing:.12em}.tracking-wide{--tw-tracking: var(--tracking-wide);letter-spacing:var(--tracking-wide)}.break-words{overflow-wrap:break-word}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-app-danger{color:var(--color-app-danger)}.text-app-muted{color:var(--color-app-muted)}.text-app-primary{color:var(--color-app-primary)}.text-app-primary-hover{color:var(--color-app-primary-hover)}.text-app-primary-hover\/75{color:color-mix(in srgb,#a78bfa 75%,transparent)}@supports (color: color-mix(in lab,red,red)){.text-app-primary-hover\/75{color:color-mix(in oklab,var(--color-app-primary-hover) 75%,transparent)}}.text-app-subtle{color:var(--color-app-subtle)}.text-app-success{color:var(--color-app-success)}.text-app-text{color:var(--color-app-text)}.text-app-warning{color:var(--color-app-warning)}.text-inherit{color:inherit}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.normal-case{text-transform:none}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ordinal{--tw-ordinal: ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.accent-app-primary{accent-color:var(--color-app-primary)}.opacity-0{opacity:0%}.opacity-45{opacity:45%}.opacity-50{opacity:50%}.opacity-55{opacity:55%}.opacity-60{opacity:60%}.opacity-70{opacity:70%}.opacity-90{opacity:90%}.shadow{--tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / .1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-app-modal{--tw-shadow: 0 28px 60px var(--tw-shadow-color, rgb(0 0 0 / .42));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-app-panel{--tw-shadow: 0 16px 36px var(--tw-shadow-color, rgb(0 0 0 / .2));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / .1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / .1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-2{--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-app-primary{--tw-ring-color: var(--color-app-primary)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur: blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.grayscale{--tw-grayscale: grayscale(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert: invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.sepia{--tw-sepia: sepia(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur{--tw-backdrop-blur: blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-blur-sm{--tw-backdrop-blur: blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}.duration-200{--tw-duration: .2s;transition-duration:.2s}.ease-in-out{--tw-ease: var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease: var(--ease-out);transition-timing-function:var(--ease-out)}.select-all{-webkit-user-select:all;user-select:all}.last\:border-0:last-child{border-style:var(--tw-border-style);border-width:0px}.last\:pb-0:last-child{padding-bottom:0}@media(hover:hover){.hover\:border-app-primary\/40:hover{border-color:color-mix(in srgb,#8b5cf6 40%,transparent)}@supports (color: color-mix(in lab,red,red)){.hover\:border-app-primary\/40:hover{border-color:color-mix(in oklab,var(--color-app-primary) 40%,transparent)}}.hover\:bg-app-surface-raised:hover{background-color:var(--color-app-surface-raised)}.hover\:text-app-text:hover{color:var(--color-app-text)}}.focus-visible\:outline:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\:outline-app-primary:focus-visible{outline-color:var(--color-app-primary)}@media(prefers-reduced-motion:no-preference){.motion-safe\:animate-pulse{animation:var(--animate-pulse)}}@media(min-width:40rem){.sm\:col-span-2{grid-column:span 2 / span 2}.sm\:ml-auto{margin-left:auto}.sm\:block{display:block}.sm\:max-h-\[84vh\]{max-height:84vh}.sm\:w-auto{width:auto}.sm\:max-w-\[18rem\]{max-width:18rem}.sm\:max-w-xs{max-width:var(--container-xs)}.sm\:flex-1{flex:1}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.sm\:grid-cols-\[1fr_1fr_auto\]{grid-template-columns:1fr 1fr auto}.sm\:grid-cols-\[1fr_7rem_auto\]{grid-template-columns:1fr 7rem auto}.sm\:grid-cols-\[1fr_8rem_auto\]{grid-template-columns:1fr 8rem auto}.sm\:grid-cols-\[minmax\(0\,0\.6fr\)_minmax\(0\,1fr\)_auto\]{grid-template-columns:minmax(0,.6fr) minmax(0,1fr) auto}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:items-end{align-items:flex-end}.sm\:justify-end{justify-content:flex-end}.sm\:gap-1\.5{gap:calc(var(--spacing) * 1.5)}.sm\:gap-2{gap:calc(var(--spacing) * 2)}.sm\:gap-6{gap:calc(var(--spacing) * 6)}.sm\:border-t-0{border-top-style:var(--tw-border-style);border-top-width:0px}.sm\:border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.sm\:p-5{padding:calc(var(--spacing) * 5)}.sm\:p-6{padding:calc(var(--spacing) * 6)}.sm\:p-7{padding:calc(var(--spacing) * 7)}.sm\:px-4{padding-inline:calc(var(--spacing) * 4)}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}.sm\:py-4{padding-block:calc(var(--spacing) * 4)}.sm\:py-5{padding-block:calc(var(--spacing) * 5)}.sm\:pt-0{padding-top:0}.sm\:pl-5{padding-left:calc(var(--spacing) * 5)}.sm\:pl-6{padding-left:calc(var(--spacing) * 6)}.sm\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading, var(--text-2xl--line-height))}}@media(min-width:48rem){.md\:right-6{right:calc(var(--spacing) * 6)}.md\:left-auto{left:auto}.md\:max-w-md{max-width:var(--container-md)}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:64rem){.lg\:sticky{position:sticky}.lg\:top-4{top:calc(var(--spacing) * 4)}.lg\:top-\[5\.75rem\]{top:5.75rem}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:max-h-\[calc\(100dvh-6\.5rem\)\]{max-height:calc(100dvh - 6.5rem)}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lg\:grid-cols-\[minmax\(0\,1\.1fr\)_minmax\(18rem\,0\.9fr\)\]{grid-template-columns:minmax(0,1.1fr) minmax(18rem,.9fr)}.lg\:grid-cols-\[minmax\(0\,1fr\)_19rem\]{grid-template-columns:minmax(0,1fr) 19rem}.lg\:grid-cols-\[minmax\(0\,1fr\)_20rem\]{grid-template-columns:minmax(0,1fr) 20rem}.lg\:grid-cols-\[minmax\(15rem\,0\.88fr\)_minmax\(0\,1\.12fr\)\]{grid-template-columns:minmax(15rem,.88fr) minmax(0,1.12fr)}.lg\:flex-col{flex-direction:column}.lg\:gap-2{gap:calc(var(--spacing) * 2)}.lg\:px-8{padding-inline:calc(var(--spacing) * 8)}.lg\:pb-8{padding-bottom:calc(var(--spacing) * 8)}}@media(min-width:80rem){.xl\:sticky{position:sticky}.xl\:top-5{top:calc(var(--spacing) * 5)}.xl\:col-span-2{grid-column:span 2 / span 2}.xl\:col-span-3{grid-column:span 3 / span 3}.xl\:col-span-4{grid-column:span 4 / span 4}.xl\:col-span-6{grid-column:span 6 / span 6}.xl\:col-span-8{grid-column:span 8 / span 8}.xl\:col-span-12{grid-column:span 12 / span 12}.xl\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.xl\:grid-cols-\[minmax\(0\,1\.45fr\)_minmax\(20rem\,0\.75fr\)\]{grid-template-columns:minmax(0,1.45fr) minmax(20rem,.75fr)}.xl\:grid-cols-\[minmax\(0\,1fr\)_minmax\(20rem\,0\.8fr\)\]{grid-template-columns:minmax(0,1fr) minmax(20rem,.8fr)}.xl\:grid-cols-\[minmax\(0\,1fr\)_minmax\(22rem\,0\.8fr\)\]{grid-template-columns:minmax(0,1fr) minmax(22rem,.8fr)}.xl\:px-8{padding-inline:calc(var(--spacing) * 8)}}}:host{display:block}.homebrew-intro{align-items:flex-start}.homebrew-page-actions{display:flex;flex-wrap:wrap;gap:.55rem}.homebrew-message{margin-bottom:1rem}.homebrew-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(19rem,.85fr);align-items:start;gap:1.25rem;padding:0 .5rem 2rem}.homebrew-editor,.homebrew-library{min-width:0;padding:clamp(1rem,2.5vw,1.75rem)}.homebrew-editor{border-color:var(--color-app-primary-border)}.homebrew-editor-header,.homebrew-library-header,.homebrew-choice-heading,.homebrew-content-row-top{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.homebrew-heading{margin:.25rem 0 0;color:var(--color-app-text);font-size:1.25rem;font-weight:700}.homebrew-intro-note{margin:.75rem 0 0;color:var(--color-app-muted);font-size:.8rem;line-height:1.55}.homebrew-origin-badge,.homebrew-type-badge{display:inline-flex;align-items:center;border:1px solid var(--color-app-primary-border);border-radius:999px;background:var(--color-app-primary-soft);color:var(--color-app-primary-hover);font-size:.6875rem;font-weight:700;padding:.35rem .6rem}.homebrew-v2-spells{margin-top:1rem;border:1px solid var(--color-app-primary-border);border-radius:var(--radius-app-control);background:var(--color-app-surface-raised);padding:.85rem}.homebrew-archive-action{color:var(--color-app-danger)}.homebrew-library-count,.homebrew-choice-count{display:grid;width:2rem;height:2rem;place-items:center;border:1px solid var(--color-app-primary-border);border-radius:50%;background:var(--color-app-primary-soft);color:var(--color-app-primary-hover);font-weight:700}.homebrew-identity-section,.homebrew-form-section,.homebrew-notes-section{margin-top:1.5rem;border-top:1px solid var(--color-app-divider);padding-top:1.25rem}.homebrew-form-section{border:1px solid var(--color-app-divider);border-radius:var(--radius-app-control);padding:1.1rem}.homebrew-section-arcane{border-color:#8b5cf652;background:#8b5cf60f}.homebrew-section-origin,.homebrew-section-resource{border-color:#34d39947;background:#34d3990d}.homebrew-section-item{border-color:#fbbf2447;background:#fbbf240d}.homebrew-section-modifier{border-color:#60a5fa4d;background:#60a5fa0f}.homebrew-section-label{display:flex;align-items:center;gap:.55rem;color:var(--color-app-text);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.homebrew-section-number{display:grid;width:1.65rem;height:1.65rem;place-items:center;border-radius:.5rem;background:var(--color-app-primary-soft);color:var(--color-app-primary-hover);font-size:.65rem}.homebrew-field-grid,.homebrew-compact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin-top:1rem}.homebrew-field-grid-identity{grid-template-columns:minmax(0,1.4fr) minmax(9rem,.8fr) minmax(0,1fr)}.homebrew-field,.homebrew-field-block{display:block;min-width:0;color:var(--color-app-text);font-size:.8125rem;font-weight:600}.homebrew-field>.app-input,.homebrew-field>app-select{display:block;width:100%;margin-top:.42rem}.homebrew-field-block{margin-top:.9rem}.homebrew-field textarea{min-height:5rem;resize:vertical}.homebrew-optional,.homebrew-unit{color:var(--color-app-subtle);font-size:.6875rem;font-weight:500}.homebrew-unit{margin-left:.15rem}.homebrew-subheading{margin:1rem 0 .2rem;color:var(--color-app-text);font-size:.95rem}.homebrew-help{margin:0;color:var(--color-app-muted);font-size:.75rem}.homebrew-ability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin-top:.85rem}.homebrew-ability-card{border:1px solid var(--color-app-divider);border-radius:var(--radius-app-control);background:var(--color-app-surface-raised);padding:.75rem}.homebrew-ability-name{display:flex;align-items:center;gap:.45rem;color:var(--color-app-text);font-size:.75rem}.homebrew-ability-name span{color:var(--color-app-primary-hover);font-size:.625rem;font-weight:800}.homebrew-stepper{display:grid;grid-template-columns:2rem minmax(0,1fr) 2rem;align-items:center;margin-top:.6rem;border:1px solid var(--color-app-border);border-radius:.6rem;background:var(--color-app-inset);overflow:hidden}.homebrew-stepper-active{border-color:var(--color-app-primary-border);background:var(--color-app-primary-soft)}.homebrew-stepper button{height:2.25rem;border:0;background:transparent;color:var(--color-app-text);font-size:1rem;font-weight:700}.homebrew-stepper button:hover{background:var(--color-app-neutral-hover)}.homebrew-stepper input{width:100%;min-width:0;border:0;border-right:1px solid var(--color-app-divider);border-left:1px solid var(--color-app-divider);background:transparent;color:var(--color-app-text);font-size:1rem;font-weight:700;padding:.35rem;text-align:center;appearance:textfield}.homebrew-stepper input::-webkit-inner-spin-button,.homebrew-stepper input::-webkit-outer-spin-button{margin:0;appearance:none}.homebrew-stepper input:focus{outline:none}.homebrew-compact-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:1.1rem}.homebrew-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:1.1rem}.homebrew-choice-block,.homebrew-traits-block{min-width:0;border:1px solid var(--color-app-divider);border-radius:var(--radius-app-control);background:var(--color-app-surface-raised);padding:.85rem}.homebrew-choice-heading{align-items:center}.homebrew-choice-heading h3{margin:0;color:var(--color-app-text);font-size:.85rem}.homebrew-choice-heading span:not(.homebrew-choice-count){display:block;margin-top:.15rem;color:var(--color-app-subtle);font-size:.6875rem}.homebrew-choice-count{width:1.6rem;height:1.6rem;font-size:.7rem}.homebrew-choice-select{width:100%;margin-top:.75rem}.homebrew-chip-list{display:flex;flex-wrap:wrap;gap:.4rem;min-height:2rem;margin-top:.7rem}.homebrew-chip-list-empty{align-items:center;color:var(--color-app-subtle);font-size:.7rem}.homebrew-chip{display:inline-flex;align-items:center;gap:.35rem;border:1px solid var(--color-app-primary-border);border-radius:999px;background:var(--color-app-primary-soft);color:var(--color-app-text);font-size:.72rem;padding:.35rem .55rem}.homebrew-chip:hover{background:var(--color-app-primary-soft-hover)}.homebrew-traits-block{margin-top:.75rem}.homebrew-add-button{min-height:2rem;padding:.25rem .5rem;font-size:.72rem}.homebrew-trait-row{display:grid;grid-template-columns:minmax(10rem,.8fr) minmax(0,1.2fr) auto;align-items:start;gap:.55rem;margin-top:.7rem}.homebrew-trait-row textarea{min-height:2.75rem;resize:vertical}.homebrew-remove-button{min-width:2.5rem;padding:.5rem;color:var(--color-app-danger)}.homebrew-empty-row,.homebrew-empty-library{border:1px dashed var(--color-app-divider);border-radius:var(--radius-app-control);color:var(--color-app-subtle);font-size:.75rem;padding:.85rem}.homebrew-form-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.25rem;padding-top:1.1rem;border-top:1px solid var(--color-app-divider)}.homebrew-content-list{margin-top:1rem}.homebrew-content-row{border-top:1px solid var(--color-app-divider);padding:1rem 0}.homebrew-content-row:first-child{border-top:0;padding-top:0}.homebrew-content-row strong{color:var(--color-app-text);font-size:.95rem}.homebrew-content-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:.35rem;color:var(--color-app-subtle);font-size:.6875rem}.homebrew-type-badge{padding:.2rem .45rem}.homebrew-row-actions{display:flex;flex-wrap:wrap;gap:.25rem}.homebrew-row-actions .app-button{min-height:2rem;padding:.3rem .5rem;font-size:.7rem}.homebrew-apply-button,.homebrew-content-description{margin-top:.75rem}.homebrew-content-description{color:var(--color-app-muted);font-size:.78rem;line-height:1.5}.homebrew-empty-library{display:flex;flex-direction:column;align-items:center;gap:.35rem;margin-top:1rem;padding:2.5rem 1rem;text-align:center}.homebrew-empty-library strong{color:var(--color-app-text)}.homebrew-empty-icon{display:grid;width:2.5rem;height:2.5rem;place-items:center;border-radius:50%;background:var(--color-app-primary-soft);color:var(--color-app-primary-hover);font-size:1.25rem}@media(max-width:1100px){.homebrew-layout{grid-template-columns:minmax(0,1fr)}.homebrew-library{order:2}}@media(max-width:640px){.homebrew-layout{grid-template-columns:minmax(0,1fr);gap:.9rem;padding:0 0 1rem}.homebrew-editor,.homebrew-library{padding:.9rem}.homebrew-page-actions{width:100%}.homebrew-page-actions .app-button{flex:1 1 auto;justify-content:center}.homebrew-field-grid,.homebrew-field-grid-identity,.homebrew-compact-grid,.homebrew-choice-grid{grid-template-columns:minmax(0,1fr)}.homebrew-ability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.homebrew-form-section{padding:.85rem}.homebrew-trait-row{grid-template-columns:minmax(0,1fr) auto}.homebrew-trait-row textarea{grid-column:1 / -1;grid-row:2}.homebrew-trait-row .homebrew-remove-button{grid-column:2;grid-row:1}.homebrew-content-row-top{flex-direction:column}}.app-compendium-detail-shell{display:grid;gap:.75rem;padding:clamp(1rem,3vw,1.5rem);color:var(--color-app-text)}.app-compendium-detail-shell-heading{display:grid;gap:.65rem;border-bottom:1px solid var(--color-app-border);padding-bottom:.75rem}.app-compendium-detail-shell-heading-top{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.app-compendium-detail-shell-heading-copy{min-width:0}.app-compendium-detail-shell-heading h2{margin:0;font-size:clamp(1.25rem,2.6vw,1.8rem);font-weight:800;line-height:1.2}.app-compendium-detail-shell-subtitle{margin:.35rem 0 0;color:var(--color-app-muted);font-size:.76rem}.app-compendium-localized-name .app-compendium-detail-shell-subtitle{font-style:italic}.app-compendium-language-tools{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.25rem .7rem}.app-compendium-language-tools-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.5rem}.app-compendium-locale-switch{display:flex;align-items:center;gap:.12rem;border:1px solid var(--color-app-border);border-radius:999px;padding:.15rem;background:var(--color-app-surface)}.app-compendium-locale-option{min-width:2.75rem;min-height:2.25rem;border:1px solid transparent;border-radius:999px;padding:.35rem .65rem;background:transparent;color:var(--color-app-muted);font:inherit;font-size:.72rem;font-weight:700;line-height:1;cursor:pointer}.app-compendium-locale-separator{color:var(--color-app-border-strong, var(--color-app-border));font-size:.72rem}.app-compendium-locale-option:hover,.app-compendium-locale-option:focus-visible{border-color:var(--color-app-primary);outline:2px solid color-mix(in srgb,#8b5cf6 32%,transparent);outline-offset:1px}@supports (color: color-mix(in lab,red,red)){.app-compendium-locale-option:hover,.app-compendium-locale-option:focus-visible{outline:2px solid color-mix(in srgb,var(--color-app-primary) 32%,transparent)}}.app-compendium-locale-option-selected{border-color:var(--color-app-primary-border);background:var(--color-app-primary-soft);color:var(--color-app-primary-hover)}.app-compendium-translate-action{display:inline-flex;min-height:2.25rem;align-items:center;justify-content:center;gap:.38rem;border:1px solid var(--color-app-primary-border);border-radius:999px;padding:.4rem .75rem;background:var(--color-app-primary-soft);color:var(--color-app-primary-hover);font:inherit;font-size:.76rem;font-weight:750;line-height:1;cursor:pointer}.app-compendium-translate-action:hover:not(:disabled),.app-compendium-translate-action:focus-visible{border-color:var(--color-app-primary);background:color-mix(in srgb,rgb(139 92 246 / .18) 72%,#8b5cf6);outline:2px solid color-mix(in srgb,#8b5cf6 32%,transparent);outline-offset:2px}@supports (color: color-mix(in lab,red,red)){.app-compendium-translate-action:hover:not(:disabled),.app-compendium-translate-action:focus-visible{background:color-mix(in srgb,var(--color-app-primary-soft) 72%,var(--color-app-primary))}}@supports (color: color-mix(in lab,red,red)){.app-compendium-translate-action:hover:not(:disabled),.app-compendium-translate-action:focus-visible{outline:2px solid color-mix(in srgb,var(--color-app-primary) 32%,transparent)}}.app-compendium-translate-action:disabled{cursor:wait;opacity:.75}.app-compendium-language-status{margin:0;color:var(--color-app-muted);font-size:.72rem;line-height:1.3;text-align:right}@media(max-width:639px){.app-compendium-detail-shell-heading-top{gap:.6rem}.app-compendium-language-tools,.app-compendium-language-tools-row{justify-content:flex-start}.app-compendium-language-status{text-align:left}}@font-face{font-family:Grenze Gotisch;src:url(/fonts/GrenzeGotisch-SemiBold.woff2) format("woff2");font-style:normal;font-weight:600;font-display:swap}.app-brand-title{font-family:Grenze Gotisch,Georgia,serif;font-size:1.25rem;font-weight:600;font-synthesis:none;letter-spacing:.01em;line-height:1.1}@media(min-width:640px){.app-brand-title{font-size:1.5rem}}@font-face{font-family:Monaspace Krypton;src:url(/fonts/MonaspaceKrypton-Regular.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Monaspace Krypton;src:url(/fonts/MonaspaceKrypton-SemiBold.woff2) format("woff2");font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:Monaspace Radon;src:url(/fonts/MonaspaceRadon-Variable.ttf) format("truetype");font-style:normal;font-weight:200 800;font-display:swap}@font-face{font-family:IBM Plex Sans;src:url(/fonts/IBMPlexSans-Regular.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:IBM Plex Sans;src:url(/fonts/IBMPlexSans-SemiBold.woff2) format("woff2");font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:Space Grotesk;src:url(/fonts/SpaceGrotesk-Variable.woff2) format("woff2");font-style:normal;font-weight:300 700;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Variable.woff2) format("woff2");font-style:normal;font-weight:100 800;font-display:swap}@font-face{font-family:Atkinson Hyperlegible Mono;src:url(/fonts/AtkinsonHyperlegibleMono-Variable.woff2) format("woff2");font-style:normal;font-weight:100 800;font-display:swap}:root{--app-font-family: "IBM Plex Sans", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}:root[data-font=ibm-plex-sans]{--app-font-family: "IBM Plex Sans", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}:root[data-font=radon]{--app-font-family: "Monaspace Radon", ui-monospace, "SFMono-Regular", Consolas, "Liberation Mono", monospace}:root[data-font=system-sans]{--app-font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}:root[data-font=system-serif]{--app-font-family: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif}:root[data-font=space-grotesk]{--app-font-family: "Space Grotesk", ui-sans-serif, system-ui, sans-serif}:root[data-font=jetbrains-mono]{--app-font-family: "JetBrains Mono", ui-monospace, monospace}:root[data-font=atkinson-mono]{--app-font-family: "Atkinson Hyperlegible Mono", ui-monospace, monospace}:root[data-font=krypton]{--app-font-family: "Monaspace Krypton", ui-monospace, "SFMono-Regular", Consolas, "Liberation Mono", monospace}@property --color-app-canvas{syntax: "<color>"; inherits: true; initial-value: #0d0e15;}@property --color-app-surface{syntax: "<color>"; inherits: true; initial-value: #171721;}@property --color-app-surface-raised{syntax: "<color>"; inherits: true; initial-value: #211f2d;}@property --color-app-inset{syntax: "<color>"; inherits: true; initial-value: #101019;}@property --color-app-text{syntax: "<color>"; inherits: true; initial-value: #f5f2f8;}@property --color-app-muted{syntax: "<color>"; inherits: true; initial-value: #b6afbd;}@property --color-app-subtle{syntax: "<color>"; inherits: true; initial-value: #817b89;}@property --color-app-border{syntax: "<color>"; inherits: true; initial-value: rgb(255 255 255 / .1);}@property --color-app-divider{syntax: "<color>"; inherits: true; initial-value: rgb(255 255 255 / .08);}@property --color-app-primary{syntax: "<color>"; inherits: true; initial-value: #8b5cf6;}@property --color-app-primary-hover{syntax: "<color>"; inherits: true; initial-value: #a78bfa;}@property --color-app-primary-border{syntax: "<color>"; inherits: true; initial-value: rgb(167 139 250 / .42);}@property --color-app-primary-soft{syntax: "<color>"; inherits: true; initial-value: rgb(139 92 246 / .18);}@property --color-app-focus{syntax: "<color>"; inherits: true; initial-value: rgb(167 139 250 / .85);}:root{--app-brand-primary: var(--color-app-primary);--app-brand-panel: var(--color-app-surface);--app-brand-crystal: var(--color-app-primary-hover);--app-brand-highlight: var(--color-app-text);--app-brand-shadow: var(--color-app-primary);--app-bg: radial-gradient( circle at top left, color-mix(in srgb, #8b5cf6 10%, transparent), transparent 34% ), linear-gradient( 180deg, color-mix(in srgb, #171721 72%, #0d0e15), var(--color-app-canvas) );--theme-primary: #8b5cf6;--theme-primary-hover: #a78bfa;--theme-light-primary: #6d3fbd;--theme-light-hover: #5b2ca4;--theme-border: rgb(167 139 250 / .42);--theme-soft: rgb(139 92 246 / .18);--theme-soft-hover: rgb(139 92 246 / .28);--theme-focus: rgb(167 139 250 / .85);--theme-neutral-soft: rgb(255 255 255 / .05);--theme-neutral-hover: rgb(255 255 255 / .09);--color-app-primary: var(--theme-primary);--color-app-primary-hover: var(--theme-primary-hover);--color-app-syncing: var(--theme-primary-hover);--color-app-primary-border: var(--theme-border);--color-app-primary-soft: var(--theme-soft);--color-app-primary-soft-hover: var(--theme-soft-hover);--color-app-focus: var(--theme-focus);--color-app-neutral-soft: var(--theme-neutral-soft);--color-app-neutral-hover: var(--theme-neutral-hover)}@supports (color: color-mix(in lab,red,red)){:root{--app-bg: radial-gradient( circle at top left, color-mix(in srgb, var(--color-app-primary) 10%, transparent), transparent 34% ), linear-gradient( 180deg, color-mix(in srgb, var(--color-app-surface) 72%, var(--color-app-canvas)), var(--color-app-canvas) )}}:root[data-theme=midnight-violet]{--theme-primary: #8b5cf6;--theme-primary-hover: #a78bfa;--theme-light-primary: #6d3fbd;--theme-light-hover: #5b2ca4;--theme-border: rgb(167 139 250 / .42);--theme-soft: rgb(139 92 246 / .18);--theme-soft-hover: rgb(139 92 246 / .28);--theme-focus: rgb(167 139 250 / .85)}:root[data-theme=forest-night]{--theme-primary: #2dd4bf;--theme-primary-hover: #5eead4;--theme-light-primary: #176b54;--theme-light-hover: #12543f;--theme-border: rgb(45 212 191 / .42);--theme-soft: rgb(45 212 191 / .18);--theme-soft-hover: rgb(45 212 191 / .28);--theme-focus: rgb(94 234 212 / .82);--theme-neutral-soft: rgb(214 255 231 / .05);--theme-neutral-hover: rgb(214 255 231 / .09);--color-app-canvas: #0b1512;--color-app-surface: #10211c;--color-app-surface-raised: #183028;--color-app-inset: #08110f;--color-app-text: #edf7f1;--color-app-muted: #a7c1b3;--color-app-subtle: #769184;--color-app-border: rgb(214 255 231 / .12);--color-app-divider: rgb(214 255 231 / .09)}:root[data-theme=ember-night]{--theme-primary: #f97316;--theme-primary-hover: #fb923c;--theme-light-primary: #9c4218;--theme-light-hover: #7f3212;--theme-border: rgb(249 115 22 / .44);--theme-soft: rgb(249 115 22 / .18);--theme-soft-hover: rgb(249 115 22 / .28);--theme-focus: rgb(251 146 60 / .84);--theme-neutral-soft: rgb(255 236 224 / .05);--theme-neutral-hover: rgb(255 236 224 / .09);--color-app-canvas: #17100e;--color-app-surface: #241714;--color-app-surface-raised: #34211a;--color-app-inset: #120c0a;--color-app-text: #fff4ed;--color-app-muted: #cbb5aa;--color-app-subtle: #9b8175;--color-app-border: rgb(255 236 224 / .13);--color-app-divider: rgb(255 236 224 / .09)}:root[data-theme=rose-night]{--theme-primary: #f472b6;--theme-primary-hover: #f9a8d4;--theme-light-primary: #a23d6a;--theme-light-hover: #842d55;--theme-border: rgb(244 114 182 / .46);--theme-soft: rgb(244 114 182 / .18);--theme-soft-hover: rgb(244 114 182 / .28);--theme-focus: rgb(249 168 212 / .86);--theme-neutral-soft: rgb(255 228 242 / .05);--theme-neutral-hover: rgb(255 228 242 / .1);--color-app-canvas: #160d15;--color-app-surface: #241522;--color-app-surface-raised: #362036;--color-app-inset: #100810;--color-app-text: #fff1f8;--color-app-muted: #d1b7c6;--color-app-subtle: #a48799;--color-app-border: rgb(255 228 242 / .14);--color-app-divider: rgb(255 228 242 / .1)}:root[data-theme=arcane-tide]{--theme-primary: #37b6d4;--theme-primary-hover: #72d6e9;--theme-light-primary: #176b89;--theme-light-hover: #12556f;--theme-border: rgb(55 182 212 / .44);--theme-soft: rgb(55 182 212 / .17);--theme-soft-hover: rgb(55 182 212 / .26);--theme-focus: rgb(114 214 233 / .86);--color-app-canvas: #09151f;--color-app-surface: #102332;--color-app-surface-raised: #183246;--color-app-inset: #07111a;--color-app-text: #eef8fc;--color-app-muted: #abc3cf;--color-app-subtle: #7d9aa8;--color-app-border: rgb(218 246 255 / .13);--color-app-divider: rgb(218 246 255 / .09)}:root[data-theme=gilded-tome]{--theme-primary: #d2a84d;--theme-primary-hover: #ebc66f;--theme-light-primary: #80601b;--theme-light-hover: #654a13;--theme-border: rgb(210 168 77 / .44);--theme-soft: rgb(210 168 77 / .17);--theme-soft-hover: rgb(210 168 77 / .27);--theme-focus: rgb(235 198 111 / .86);--color-app-canvas: #17140f;--color-app-surface: #262117;--color-app-surface-raised: #362d1e;--color-app-inset: #100e0a;--color-app-text: #f8f2e5;--color-app-muted: #c9bea5;--color-app-subtle: #9f9277;--color-app-border: rgb(255 243 213 / .13);--color-app-divider: rgb(255 243 213 / .09)}:root[data-theme=frostbound-sigil]{--theme-primary: #91c8e4;--theme-primary-hover: #c0e3f2;--theme-light-primary: #466a80;--theme-light-hover: #38566a;--theme-border: rgb(145 200 228 / .44);--theme-soft: rgb(145 200 228 / .16);--theme-soft-hover: rgb(145 200 228 / .25);--theme-focus: rgb(192 227 242 / .88);--color-app-canvas: #101820;--color-app-surface: #1a2731;--color-app-surface-raised: #243642;--color-app-inset: #0b1218;--color-app-text: #f0f7fa;--color-app-muted: #b5c7d0;--color-app-subtle: #879eaa;--color-app-border: rgb(230 246 252 / .14);--color-app-divider: rgb(230 246 252 / .1)}:root[data-appearance=light]{color-scheme:light;--color-app-canvas: #f3f1ed;--color-app-surface: #fffefa;--color-app-surface-raised: #ffffff;--color-app-surface-sunken: #ebe8e2;--color-app-inset: #ebe8e2;--color-app-text: #282531;--color-app-muted: #5e5967;--color-app-subtle: #706b78;--color-app-border: rgb(43 38 56 / .18);--color-app-divider: rgb(43 38 56 / .12);--color-app-overlay: rgb(34 30 42 / .48);--color-app-success: #12724d;--color-app-success-soft: rgb(18 114 77 / .12);--color-app-warning: #86590d;--color-app-warning-soft: rgb(134 89 13 / .12);--color-app-danger: #b7374d;--color-app-danger-soft: rgb(183 55 77 / .12);--color-app-primary: var(--theme-light-primary);--color-app-primary-hover: var(--theme-light-hover);--color-app-syncing: var(--theme-light-primary);--color-app-primary-border: var(--theme-light-primary);--color-app-primary-soft: var(--theme-light-primary);--color-app-primary-soft-hover: var(--theme-light-primary);--color-app-focus: var(--theme-light-primary);--color-app-neutral-soft: rgb(43 38 56 / .045);--color-app-neutral-hover: rgb(43 38 56 / .085);--app-bg: radial-gradient( circle at top left, var(--theme-light-primary), transparent 34% ), linear-gradient(180deg, #fbfaf7, var(--color-app-canvas));--app-brand-primary: var(--theme-light-primary);--app-brand-panel: #e7e2da;--app-brand-crystal: var(--theme-light-hover);--app-brand-highlight: #282531;--app-brand-shadow: var(--theme-light-hover)}@supports (color: color-mix(in lab,red,red)){:root[data-appearance=light]{--color-app-primary-border: color-mix(in srgb, var(--theme-light-primary) 38%, transparent)}}@supports (color: color-mix(in lab,red,red)){:root[data-appearance=light]{--color-app-primary-soft: color-mix(in srgb, var(--theme-light-primary) 12%, transparent)}}@supports (color: color-mix(in lab,red,red)){:root[data-appearance=light]{--color-app-primary-soft-hover: color-mix(in srgb, var(--theme-light-primary) 20%, transparent)}}@supports (color: color-mix(in lab,red,red)){:root[data-appearance=light]{--color-app-focus: color-mix(in srgb, var(--theme-light-primary) 76%, transparent)}}@supports (color: color-mix(in lab,red,red)){:root[data-appearance=light]{--app-bg: radial-gradient( circle at top left, color-mix(in srgb, var(--theme-light-primary) 8%, transparent), transparent 34% ), linear-gradient(180deg, #fbfaf7, var(--color-app-canvas))}}:root{transition:--color-app-canvas .21s ease,--color-app-surface .21s ease,--color-app-surface-raised .21s ease,--color-app-inset .21s ease,--color-app-text .21s ease,--color-app-muted .21s ease,--color-app-subtle .21s ease,--color-app-border .21s ease,--color-app-divider .21s ease,--color-app-primary .21s ease,--color-app-primary-hover .21s ease,--color-app-primary-border .21s ease,--color-app-primary-soft .21s ease,--color-app-focus .21s ease}:root[data-motion=reduced]{transition:none}*{box-sizing:border-box}html,body{min-height:100%}html{color-scheme:dark}body{margin:0;background:var(--app-bg);color:var(--color-app-muted);font-family:var(--app-font-family)}button,a{cursor:pointer}button:disabled,a[aria-disabled=true]{cursor:not-allowed}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--color-app-focus);outline-offset:2px}.app-page-shell{background:var(--app-bg)}.app-brand-mark{border:1px solid var(--color-app-primary-border);background:var(--color-app-primary-soft);color:var(--color-app-primary-hover)}.app-brand-logo{display:block;height:2rem;width:2rem}.app-header .app-header-brand-mark{border-color:#8b5cf6;background:linear-gradient(145deg,color-mix(in srgb,#8b5cf6 17%,transparent),transparent 72%),var(--color-app-primary-soft);box-shadow:inset 0 1px color-mix(in srgb,white 12%,transparent),0 0 1rem color-mix(in srgb,#8b5cf6 10%,transparent);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}@supports (color: color-mix(in lab,red,red)){.app-header .app-header-brand-mark{border-color:color-mix(in srgb,var(--color-app-primary) 68%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-header .app-header-brand-mark{background:linear-gradient(145deg,color-mix(in srgb,var(--color-app-primary) 17%,transparent),transparent 72%),var(--color-app-primary-soft)}}@supports (color: color-mix(in lab,red,red)){.app-header .app-header-brand-mark{box-shadow:inset 0 1px color-mix(in srgb,white 12%,transparent),0 0 1rem color-mix(in srgb,var(--color-app-primary) 10%,transparent)}}.app-header-brand:hover .app-header-brand-mark,.app-header-brand:focus-visible .app-header-brand-mark{border-color:var(--color-app-primary-hover);box-shadow:inset 0 1px color-mix(in srgb,white 16%,transparent),0 0 1.1rem color-mix(in srgb,#8b5cf6 19%,transparent);transform:translateY(-1px)}@supports (color: color-mix(in lab,red,red)){.app-header-brand:hover .app-header-brand-mark,.app-header-brand:focus-visible .app-header-brand-mark{box-shadow:inset 0 1px color-mix(in srgb,white 16%,transparent),0 0 1.1rem color-mix(in srgb,var(--color-app-primary) 19%,transparent)}}.app-header-brand-copy>span{line-height:1.25}.app-language-picker{border:1px solid var(--color-app-border);border-radius:var(--radius-app-shell);background:var(--color-app-surface);padding:1.5rem;box-shadow:var(--shadow-app-card)}.app-language-choice{display:flex;min-height:4rem;align-items:center;justify-content:center;gap:.6rem;border:1px solid var(--color-app-border);border-radius:var(--radius-app-control);background:var(--color-app-neutral-soft);padding:.75rem;color:var(--color-app-text);transition:border-color .15s ease,background-color .15s ease,transform .15s ease}.app-language-choice:hover,.app-language-choice:focus-visible{border-color:var(--color-app-primary-border);background:var(--color-app-primary-soft);transform:translateY(-1px)}.app-billing-currency{min-height:6rem;flex-direction:column;align-items:flex-start;justify-content:center;gap:.5rem;text-align:left}.app-install-status{display:inline-flex;min-height:2.9rem;min-width:3.35rem;flex-direction:column;align-items:center;justify-content:center;gap:.12rem;border:1px solid var(--color-app-primary-border);border-radius:var(--radius-app-control);padding:.3rem .4rem;color:var(--color-app-primary-hover);font-size:.62rem;font-weight:800;letter-spacing:.03em;line-height:1}.app-button{display:inline-flex;min-height:2.5rem;align-items:center;justify-content:center;gap:.5rem;border:1px solid var(--color-app-border);border-radius:var(--radius-app-control);padding:.5rem 1rem;color:var(--color-app-text);font-size:.875rem;font-weight:600;line-height:1.2;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.app-auth-link{display:inline-flex;min-height:2.5rem;align-items:center;justify-content:center;border:1px solid transparent;border-radius:var(--radius-app-control);padding:.5rem .75rem;color:var(--color-app-primary-hover);transition:background-color .15s ease,border-color .15s ease,color .15s ease}.app-auth-link:hover{border-color:var(--color-app-primary-border);background:var(--color-app-primary-soft);color:var(--color-app-text)}.app-button-primary{border-color:var(--color-app-primary-border);background:var(--color-app-primary-soft)}.app-button-primary:hover{border-color:var(--color-app-primary-hover);background:var(--color-app-primary-soft-hover)}.app-button-secondary{border-color:var(--color-app-border);background:var(--color-app-neutral-soft);color:var(--color-app-text)}.app-button-secondary:hover{border-color:var(--color-app-primary-border);background:var(--color-app-primary-soft)}.app-button-danger{border-color:#fb71856b;background:var(--color-app-danger-soft);color:var(--color-app-text)}.app-button-danger:hover{border-color:var(--color-app-danger);background:#fb71853d}.app-card{border:1px solid var(--color-app-border);border-radius:var(--radius-app-panel);background:var(--color-app-surface);box-shadow:var(--shadow-app-panel)}.app-input{min-height:2.75rem;border:1px solid var(--color-app-border);border-radius:var(--radius-app-control);background:var(--color-app-inset);padding:.625rem .75rem;color:var(--color-app-text)}.app-input::placeholder{color:var(--color-app-subtle)}.app-input:hover{border-color:var(--color-app-primary-border)}.app-input:disabled,.app-button:disabled{opacity:.55}.app-button-ghost{border-color:transparent;background:transparent;color:var(--color-app-muted)}.app-button-ghost:hover{border-color:var(--color-app-divider);background:var(--color-app-neutral-hover);color:var(--color-app-text)}.app-eyebrow{color:var(--color-app-subtle);font-size:.6875rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.app-nav-link{display:flex;min-height:2.75rem;align-items:center;gap:.625rem;border:1px solid transparent;border-radius:var(--radius-app-control);padding:.625rem .75rem;color:var(--color-app-muted);font-size:.875rem;font-weight:600;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.app-nav-link:hover{border-color:var(--color-app-divider);background:var(--color-app-neutral-soft);color:var(--color-app-text)}.app-nav-link-active{border-color:var(--color-app-primary-border);background:var(--color-app-primary-soft);box-shadow:inset 3px 0 var(--color-app-primary);color:var(--color-app-text)}.app-nav-link-logout{color:color-mix(in srgb,#fb7185 78%,#b6afbd)}@supports (color: color-mix(in lab,red,red)){.app-nav-link-logout{color:color-mix(in srgb,var(--color-app-danger) 78%,var(--color-app-muted))}}.app-nav-link-logout:hover,.app-nav-link-logout:focus-visible{border-color:color-mix(in srgb,#fb7185 42%,transparent);background:var(--color-app-danger-soft);color:var(--color-app-danger)}@supports (color: color-mix(in lab,red,red)){.app-nav-link-logout:hover,.app-nav-link-logout:focus-visible{border-color:color-mix(in srgb,var(--color-app-danger) 42%,transparent)}}.app-nav-link-logout:active{transform:scale(.985);background:color-mix(in srgb,#fb7185 20%,transparent)}@supports (color: color-mix(in lab,red,red)){.app-nav-link-logout:active{background:color-mix(in srgb,var(--color-app-danger) 20%,transparent)}}.app-bottom-nav-link{display:flex;min-height:3.25rem;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;border-radius:var(--radius-app-control);color:var(--color-app-muted);font-size:.6875rem;font-weight:600}.app-bottom-nav-link:hover,.app-bottom-nav-active{background:var(--color-app-primary-soft);color:var(--color-app-text)}.app-empty-state{border:1px dashed var(--color-app-divider);border-radius:var(--radius-app-panel);background:var(--color-app-surface);padding:2rem 1.25rem;text-align:center}.app-empty-state-mark{background:var(--color-app-primary-soft);color:var(--color-app-primary-hover);font-size:1.5rem}:root[data-motion=reduced] *,:root[data-motion=reduced] *:before,:root[data-motion=reduced] *:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}@media(prefers-reduced-motion:reduce){:root:not([data-motion]) *,:root:not([data-motion]) *:before,:root:not([data-motion]) *:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}:root[data-motion=reduced] .app-rest-mode-button,:root[data-motion=reduced] .app-rest-launch-button svg,:root[data-motion=reduced] .app-rest-mode-panel,:root[data-motion=reduced] .app-combat-cockpit,:root[data-motion=reduced] .app-combat-reminder-turn-attention-start{transition:none;animation:none}:root[data-motion=reduced] .app-combat-entry,:root[data-motion=reduced] .app-combat-start-turn,:root[data-motion=reduced] .app-combat-usage,:root[data-motion=reduced] .app-combat-entry-affordance{transition:none}:root[data-motion=reduced] .app-sync-indicator[data-sync-state=syncing] .app-sync-dot,:root[data-motion=reduced] .app-sync-summary-action .animate-spin{animation:none!important}:root[data-motion=reduced] .app-loading-state:before,:root[data-motion=reduced] .rich-choice-skeleton-line,:root[data-motion=reduced] .app-compendium-detail-skeleton__line,:root[data-motion=reduced] .app-compendium-detail-skeleton__circle{animation:none}:root[data-motion=reduced] .progression-choice-type,:root[data-motion=reduced] .progression-asi-mode,:root[data-motion=reduced] .progression-ability-chip,:root[data-motion=reduced] .progression-hp-stepper,:root[data-motion=reduced] .rich-choice-option{transition:none}:root[data-motion=reduced] .progression-choice-type:hover,:root[data-motion=reduced] .progression-asi-mode:hover,:root[data-motion=reduced] .progression-ability-chip:hover:not(:disabled),:root[data-motion=reduced] .progression-hp-stepper:hover:not(:disabled),:root[data-motion=reduced] .rich-choice-option:hover:not(.rich-choice-option-disabled){transform:none}:root{--surface-folio: color-mix(in srgb, #171721 92%, #f5f2f8);--surface-raised: color-mix( in srgb, #211f2d 94%, #8b5cf6 );--surface-inset: var(--color-app-inset);--surface-spotlight: color-mix( in srgb, rgb(139 92 246 / .18) 72%, #171721 );--ink-primary: var(--color-app-text);--ink-secondary: var(--color-app-muted);--ink-subtle: var(--color-app-subtle);--line-soft: var(--color-app-divider);--line-strong: var(--color-app-border);--line-accent: var(--color-app-primary-border);--role-life: #e86a78;--role-life-soft: rgb(232 106 120 / .16);--role-healing: #62d39b;--role-healing-soft: rgb(98 211 155 / .15);--role-temporary: #67d5e8;--role-temporary-soft: rgb(103 213 232 / .15);--role-defense: #82b8ef;--role-defense-soft: rgb(130 184 239 / .15);--role-arcane: #b69aff;--role-arcane-soft: rgb(182 154 255 / .16);--role-resource: #5fd1c0;--role-resource-soft: rgb(95 209 192 / .15);--role-item: #e2ad72;--role-item-soft: rgb(226 173 114 / .15);--role-danger: var(--color-app-danger);--role-danger-soft: var(--color-app-danger-soft);--role-warning: var(--color-app-warning);--role-warning-soft: var(--color-app-warning-soft);--af-ui-text: var(--color-app-text);--af-ui-muted: var(--color-app-muted);--af-ui-subtle: var(--color-app-subtle);--af-ui-border: var(--color-app-border);--af-ui-surface: var(--color-app-surface);--af-ui-surface-inset: var(--color-app-inset);--af-ui-surface-raised: var(--surface-raised);--af-ui-accent: var(--color-app-primary);--af-ui-accent-readable: var(--color-app-primary-hover);--af-ui-accent-border: var(--color-app-primary-border);--af-ui-accent-contrast: var(--color-app-text);--af-ui-role-arcane: var(--role-arcane);--af-ui-role-resource: var(--role-resource);--af-ui-role-defense: var(--role-defense);--af-ui-role-healing: var(--role-healing);--af-ui-role-item: var(--role-item);--af-ui-role-feature: var(--role-warning);--af-ui-focus-ring: var(--color-app-focus);--af-ui-overlay: var(--color-app-overlay);--af-ui-dialog-radius: 1.25rem;--af-ui-control-radius: var(--radius-app-control);--af-ui-dialog-shadow: var(--shadow-app-modal);--app-content-width: 1480px;--app-reading-width: 1180px}@supports (color: color-mix(in lab,red,red)){:root{--surface-folio: color-mix(in srgb, var(--color-app-surface) 92%, var(--color-app-text))}}@supports (color: color-mix(in lab,red,red)){:root{--surface-raised: color-mix( in srgb, var(--color-app-surface-raised) 94%, var(--color-app-primary) )}}@supports (color: color-mix(in lab,red,red)){:root{--surface-spotlight: color-mix( in srgb, var(--color-app-primary-soft) 72%, var(--color-app-surface) )}}:root[data-appearance=light]{--surface-folio: #fffefa;--surface-raised: #ffffff;--surface-inset: #ebe8e2;--surface-spotlight: color-mix(in srgb, rgb(139 92 246 / .18) 72%, #ffffff);--role-life: #b73548;--role-life-soft: rgb(183 53 72 / .12);--role-healing: #08734f;--role-healing-soft: rgb(8 115 79 / .12);--role-temporary: #08758d;--role-temporary-soft: rgb(8 117 141 / .12);--role-defense: #245d9c;--role-defense-soft: rgb(36 93 156 / .12);--role-arcane: #6641a8;--role-arcane-soft: rgb(102 65 168 / .12);--role-resource: #087267;--role-resource-soft: rgb(8 114 103 / .12);--role-item: #8b531e;--role-item-soft: rgb(139 83 30 / .12)}@supports (color: color-mix(in lab,red,red)){:root[data-appearance=light]{--surface-spotlight: color-mix(in srgb, var(--color-app-primary-soft) 72%, #ffffff)}}:root[data-special-theme]{--color-app-syncing: var(--color-app-primary-hover);--color-app-primary-border: color-mix(in srgb, #8b5cf6 44%, transparent);--color-app-primary-soft: color-mix(in srgb, #8b5cf6 16%, transparent);--color-app-primary-soft-hover: color-mix(in srgb, #8b5cf6 25%, transparent);--color-app-focus: color-mix(in srgb, #a78bfa 84%, transparent);--surface-folio: color-mix(in srgb, #171721 92%, #f5f2f8);--surface-raised: color-mix( in srgb, #211f2d 94%, #8b5cf6 );--surface-inset: var(--color-app-inset);--surface-spotlight: color-mix( in srgb, rgb(139 92 246 / .18) 72%, #171721 );--ink-primary: var(--color-app-text);--ink-secondary: var(--color-app-muted);--ink-subtle: var(--color-app-subtle);--line-soft: var(--color-app-divider);--line-strong: var(--color-app-border);--line-accent: var(--color-app-primary-border);--app-bg: radial-gradient( circle at top left, color-mix(in srgb, #8b5cf6 9%, transparent), transparent 34% ), linear-gradient(180deg, var(--color-app-surface), var(--color-app-canvas));--app-brand-primary: var(--color-app-primary);--app-brand-panel: var(--color-app-surface);--app-brand-crystal: var(--color-app-primary-hover);--app-brand-highlight: var(--color-app-text);--app-brand-shadow: var(--color-app-primary)}@supports (color: color-mix(in lab,red,red)){:root[data-special-theme]{--color-app-primary-border: color-mix(in srgb, var(--color-app-primary) 44%, transparent)}}@supports (color: color-mix(in lab,red,red)){:root[data-special-theme]{--color-app-primary-soft: color-mix(in srgb, var(--color-app-primary) 16%, transparent)}}@supports (color: color-mix(in lab,red,red)){:root[data-special-theme]{--color-app-primary-soft-hover: color-mix(in srgb, var(--color-app-primary) 25%, transparent)}}@supports (color: color-mix(in lab,red,red)){:root[data-special-theme]{--color-app-focus: color-mix(in srgb, var(--color-app-primary-hover) 84%, transparent)}}@supports (color: color-mix(in lab,red,red)){:root[data-special-theme]{--surface-folio: color-mix(in srgb, var(--color-app-surface) 92%, var(--color-app-text))}}@supports (color: color-mix(in lab,red,red)){:root[data-special-theme]{--surface-raised: color-mix( in srgb, var(--color-app-surface-raised) 94%, var(--color-app-primary) )}}@supports (color: color-mix(in lab,red,red)){:root[data-special-theme]{--surface-spotlight: color-mix( in srgb, var(--color-app-primary-soft) 72%, var(--color-app-surface) )}}@supports (color: color-mix(in lab,red,red)){:root[data-special-theme]{--app-bg: radial-gradient( circle at top left, color-mix(in srgb, var(--color-app-primary) 9%, transparent), transparent 34% ), linear-gradient(180deg, var(--color-app-surface), var(--color-app-canvas))}}:root[data-special-theme=catppuccin-latte]{--color-app-canvas: #eff1f5;--color-app-surface: #e6e9ef;--color-app-surface-raised: #ccd0da;--color-app-surface-sunken: #dce0e8;--color-app-inset: #e6e9ef;--color-app-text: #4c4f69;--color-app-muted: #5c5f77;--color-app-subtle: #4c4f69;--color-app-muted: #54586f;--color-app-border: #bcc0cc;--color-app-divider: #ccd0da;--theme-primary: #6e2fb4;--theme-primary-hover: #6e2fb4;--theme-light-primary: #6e2fb4;--theme-light-hover: #6e2fb4;--color-app-primary: #6e2fb4;--color-app-primary-hover: #6e2fb4}:root[data-special-theme=catppuccin-frappe]{--color-app-canvas: #303446;--color-app-surface: #292c3c;--color-app-surface-raised: #414559;--color-app-surface-sunken: #232634;--color-app-inset: #232634;--color-app-text: #c6d0f5;--color-app-muted: #b5bfe2;--color-app-subtle: #b5bfe2;--color-app-border: #51576d;--color-app-divider: #414559;--theme-primary: #babbf1;--theme-primary-hover: #babbf1;--theme-light-primary: #babbf1;--theme-light-hover: #babbf1;--color-app-primary: #babbf1;--color-app-primary-hover: #babbf1}:root[data-special-theme=catppuccin-macchiato]{--color-app-canvas: #24273a;--color-app-surface: #1e2030;--color-app-surface-raised: #363a4f;--color-app-surface-sunken: #181926;--color-app-inset: #181926;--color-app-text: #cad3f5;--color-app-muted: #b8c0e0;--color-app-subtle: #a5adcb;--color-app-border: #494d64;--color-app-divider: #363a4f;--theme-primary: #c6a0f6;--theme-primary-hover: #b7bdf8;--theme-light-primary: #c6a0f6;--theme-light-hover: #b7bdf8;--color-app-primary: #c6a0f6;--color-app-primary-hover: #b7bdf8}:root[data-special-theme=catppuccin-mocha]{--color-app-canvas: #1e1e2e;--color-app-surface: #181825;--color-app-surface-raised: #313244;--color-app-surface-sunken: #11111b;--color-app-inset: #11111b;--color-app-text: #cdd6f4;--color-app-muted: #bac2de;--color-app-subtle: #a6adc8;--color-app-border: #45475a;--color-app-divider: #313244;--theme-primary: #cba6f7;--theme-primary-hover: #b4befe;--theme-light-primary: #cba6f7;--theme-light-hover: #b4befe;--color-app-primary: #cba6f7;--color-app-primary-hover: #b4befe}:root[data-special-theme=tokyo-night]{--color-app-canvas: #1a1b26;--color-app-surface: #16161e;--color-app-surface-raised: #202330;--color-app-surface-sunken: #14141b;--color-app-inset: #14141b;--color-app-text: #a9b1d6;--color-app-muted: #a9b1d6;--color-app-subtle: #9aa5ce;--color-app-border: #3b4261;--color-app-divider: #292e42;--theme-primary: #7aa2f7;--theme-primary-hover: #7dcfff;--theme-light-primary: #7aa2f7;--theme-light-hover: #7dcfff;--color-app-primary: #7aa2f7;--color-app-primary-hover: #7dcfff}:root[data-special-theme=tokyo-night-storm]{--color-app-canvas: #24283b;--color-app-surface: #1f2335;--color-app-surface-raised: #2c324a;--color-app-surface-sunken: #1b1e2e;--color-app-inset: #1b1e2e;--color-app-text: #a9b1d6;--color-app-muted: #a9b1d6;--color-app-subtle: #9aa5ce;--color-app-border: #414868;--color-app-divider: #343a57;--theme-primary: #7aa2f7;--theme-primary-hover: #7dcfff;--theme-light-primary: #7aa2f7;--theme-light-hover: #7dcfff;--color-app-primary: #7aa2f7;--color-app-primary-hover: #7dcfff}:root[data-special-theme=tokyo-night-light]{--color-app-canvas: #e6e7ed;--color-app-surface: #d6d8df;--color-app-surface-raised: #e1e2e8;--color-app-surface-sunken: #c1c2c7;--color-app-inset: #d6d8df;--color-app-text: #343b59;--color-app-muted: #363c4d;--color-app-subtle: #484c61;--color-app-border: #c1c2c7;--color-app-divider: #d6d8df;--theme-primary: #1e4588;--theme-primary-hover: #1e4588;--theme-light-primary: #1e4588;--theme-light-hover: #1e4588;--color-app-primary: #1e4588;--color-app-primary-hover: #1e4588}:root[data-special-theme=synthwave-84]{--color-app-canvas: #262335;--color-app-surface: #241b2f;--color-app-surface-raised: #34294f;--color-app-surface-sunken: #171520;--color-app-inset: #171520;--color-app-text: #ffffff;--color-app-muted: #b6b1b1;--color-app-subtle: #a4a0c2;--color-app-border: #495495;--color-app-divider: #3f3854;--theme-primary: #ff7edb;--theme-primary-hover: #03edf9;--theme-light-primary: #ff7edb;--theme-light-hover: #03edf9;--color-app-primary: #ff7edb;--color-app-primary-hover: #03edf9}:root[data-special-theme=one-dark-pro]{--color-app-canvas: #282c34;--color-app-surface: #21252b;--color-app-surface-raised: #2c313a;--color-app-surface-sunken: #1d1f23;--color-app-inset: #1d1f23;--color-app-text: #abb2bf;--color-app-muted: #abb2bf;--color-app-subtle: #969ca8;--color-app-border: #3e4452;--color-app-divider: #343a45;--theme-primary: #61afef;--theme-primary-hover: #61afef;--theme-light-primary: #61afef;--theme-light-hover: #61afef;--color-app-primary: #61afef;--color-app-primary-hover: #61afef}:root[data-special-theme=radical]{--color-app-canvas: #100f1a;--color-app-surface: #12111f;--color-app-surface-raised: #1c1a30;--color-app-surface-sunken: #141322;--color-app-inset: #141322;--color-app-text: #a8ffef;--color-app-muted: #94b4c4;--color-app-subtle: #7c9c9e;--color-app-border: #415e6c;--color-app-divider: #262b4b;--theme-primary: #ff428e;--theme-primary-hover: #a8ffef;--theme-light-primary: #ff428e;--theme-light-hover: #a8ffef;--color-app-primary: #ff428e;--color-app-primary-hover: #a8ffef}html{font-size:16px;text-rendering:optimizeLegibility}body{background:radial-gradient(circle at 80% -10%,color-mix(in srgb,#8b5cf6 8%,transparent),transparent 28rem),var(--app-bg)}@supports (color: color-mix(in lab,red,red)){body{background:radial-gradient(circle at 80% -10%,color-mix(in srgb,var(--color-app-primary) 8%,transparent),transparent 28rem),var(--app-bg)}}body,.app-page-shell{transition:background-color .21s ease,background-image .21s ease}.app-page-shell{min-height:100dvh;background:linear-gradient(90deg,var(--surface-folio) 1px,transparent 1px),var(--app-bg);background-size:48px 48px,auto}@supports (color: color-mix(in lab,red,red)){.app-page-shell{background:linear-gradient(90deg,color-mix(in srgb,var(--surface-folio) 16%,transparent) 1px,transparent 1px),var(--app-bg)}}.app-header{border-bottom-color:var(--line-soft)!important;background:color-mix(in srgb,#0d0e15 91%,transparent)!important}@supports (color: color-mix(in lab,red,red)){.app-header{background:color-mix(in srgb,var(--color-app-canvas) 91%,transparent)!important}}@media(display-mode:standalone){.app-header{padding-top:env(safe-area-inset-top,0px);padding-right:env(safe-area-inset-right,0px);padding-left:env(safe-area-inset-left,0px)}}.app-header-content{min-width:0}@keyframes app-header-content-enter{0%{opacity:.9;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}@keyframes app-header-brand-enter{0%{opacity:.88;transform:scale(.97)}to{opacity:1;transform:scale(1)}}:root[data-motion=full] .app-header-content{animation:app-header-content-enter .25s cubic-bezier(.2,.75,.25,1) both;animation-delay:20ms}:root[data-motion=full] .app-header-brand-mark{animation:app-header-brand-enter .27s cubic-bezier(.2,.75,.25,1) both}.app-spell-alert{top:calc(5.75rem + env(safe-area-inset-top))}@media(min-width:768px){.app-spell-alert{top:5.75rem}}.app-floating-search{position:fixed;right:1rem;bottom:calc(4.75rem + env(safe-area-inset-bottom));z-index:var(--z-app-header);display:inline-flex;width:3.25rem;height:3.25rem;align-items:center;justify-content:center;border:1px solid var(--color-app-primary-border);border-radius:999px;background:var(--color-app-primary-soft);box-shadow:var(--shadow-app-modal);color:var(--color-app-text);transition:background-color .15s ease,border-color .15s ease,transform .15s ease}.app-floating-calculator{position:fixed;right:1rem;bottom:calc(8.75rem + env(safe-area-inset-bottom));z-index:var(--z-app-header);display:inline-flex;width:3.25rem;height:3.25rem;align-items:center;justify-content:center;border:1px solid var(--role-resource);border-radius:999px;background:var(--role-resource-soft);box-shadow:var(--shadow-app-modal);color:var(--role-resource);transition:background-color .15s ease,border-color .15s ease,transform .15s ease}app-shell:has(.app-builder-step,.app-wizard-active) .app-floating-search,app-shell:has(.app-builder-step,.app-wizard-active) .app-floating-calculator,app-shell:has(.app-settings-page) .app-floating-search,app-shell:has(.app-settings-page) .app-floating-calculator{display:none}.app-floating-search:hover,.app-floating-search:focus-visible,.app-floating-calculator:hover,.app-floating-calculator:focus-visible{border-color:var(--color-app-primary-hover);background:var(--color-app-primary-soft-hover);transform:translateY(-2px)}.app-floating-calculator:hover,.app-floating-calculator:focus-visible{border-color:var(--role-resource);background:var(--role-resource-soft)}.app-header-action{min-width:3.35rem;min-height:2.9rem;flex-direction:column;gap:.12rem;padding:.3rem .4rem}.app-header-action-label{font-size:.62rem;font-weight:800;letter-spacing:.03em;line-height:1}.app-header .app-menu-trigger{border-color:var(--line-soft);border-radius:.85rem;background:var(--surface-raised);color:var(--ink-secondary);transition:border-color .17s ease,background-color .17s ease,color .17s ease,transform .17s ease}@supports (color: color-mix(in lab,red,red)){.app-header .app-menu-trigger{background:color-mix(in srgb,var(--surface-raised) 64%,transparent)}}.app-header .app-menu-trigger:hover,.app-header .app-menu-trigger:focus-visible,.app-header .app-menu-trigger[aria-expanded=true]{border-color:#8b5cf6;background:var(--color-app-primary-soft);color:var(--color-app-primary-hover)}@supports (color: color-mix(in lab,red,red)){.app-header .app-menu-trigger:hover,.app-header .app-menu-trigger:focus-visible,.app-header .app-menu-trigger[aria-expanded=true]{border-color:color-mix(in srgb,var(--color-app-primary) 48%,var(--line-soft))}}.app-header .app-menu-trigger:active{transform:scale(.97)}@media(min-width:1024px){.app-menu-trigger{display:none}}.app-main-frame{width:min(100%,var(--app-content-width));margin-inline:auto}.app-route-viewport{position:relative;min-width:0;overflow-x:clip}.app-route-viewport>:not(router-outlet){display:block;width:100%;min-width:0}:root:not([data-motion=reduced]) .app-route-swipe-forward>:not(router-outlet){animation:app-route-swipe-forward .18s cubic-bezier(.22,.8,.32,1) both}:root:not([data-motion=reduced]) .app-route-swipe-backward>:not(router-outlet){animation:app-route-swipe-backward .18s cubic-bezier(.22,.8,.32,1) both}:root[data-motion=reduced] .app-route-swipe-forward>:not(router-outlet),:root[data-motion=reduced] .app-route-swipe-backward>:not(router-outlet){animation:app-route-swap-reduced 1ms ease both}@keyframes app-route-swipe-forward{0%{opacity:.9;transform:translate3d(100%,0,0)}to{opacity:1;transform:translateZ(0)}}@keyframes app-route-swipe-backward{0%{opacity:.9;transform:translate3d(-100%,0,0)}to{opacity:1;transform:translateZ(0)}}@keyframes app-route-swap-reduced{0%{opacity:.65}to{opacity:1}}.app-page-intro{position:relative;margin-bottom:1.75rem;padding-bottom:1.1rem;border-bottom:1px solid var(--line-soft)}.app-page-intro:after{position:absolute;bottom:-1px;left:0;width:4rem;height:2px;background:var(--color-app-primary);content:""}.app-page-kicker{color:var(--color-app-primary-hover);font-size:.6875rem;font-weight:800;letter-spacing:.18em;line-height:1.2;text-transform:uppercase}.app-page-title{margin-top:.35rem;color:var(--ink-primary);font-size:clamp(1.8rem,4vw,2.8rem);font-weight:700;letter-spacing:-.04em;line-height:1.05}.app-page-description{max-width:48rem;margin-top:.7rem;color:var(--ink-secondary);font-size:.95rem;line-height:1.6}.app-character-context{display:inline-flex;max-width:18rem;align-items:center;gap:.55rem;border:1px solid var(--line-accent);border-radius:.85rem;background:var(--surface-spotlight);padding:.45rem .7rem;color:var(--ink-primary);font-size:.78rem;font-weight:700}.app-header .app-character-context{border-color:var(--role-healing);background:linear-gradient(135deg,var(--role-healing),var(--surface-spotlight));box-shadow:inset 0 1px color-mix(in srgb,white 5%,transparent)}@supports (color: color-mix(in lab,red,red)){.app-header .app-character-context{border-color:color-mix(in srgb,var(--role-healing) 26%,var(--line-accent))}}@supports (color: color-mix(in lab,red,red)){.app-header .app-character-context{background:linear-gradient(135deg,color-mix(in srgb,var(--role-healing) 6%,var(--surface-spotlight)),var(--surface-spotlight))}}.app-character-context:before{width:.45rem;height:.45rem;flex:0 0 auto;border-radius:999px;background:var(--role-healing);box-shadow:0 0 0 3px var(--role-healing-soft);content:""}@keyframes app-character-presence-breathe{0%,to{transform:scale(.94);box-shadow:0 0 0 3px var(--role-healing-soft)}50%{transform:scale(1.08);box-shadow:0 0 0 4px var(--role-healing-soft)}}:root[data-motion=full] .app-character-context-active:before{animation:app-character-presence-breathe 2.8s ease-in-out infinite}.app-plan-indicator{display:inline-flex;min-height:2.25rem;align-items:center;gap:.4rem;border:1px solid var(--line-accent);border-radius:999px;padding:.35rem .7rem;color:var(--ink-secondary);font-size:.75rem;font-weight:700;white-space:nowrap}.app-plan-indicator:hover,.app-plan-indicator-pro{color:var(--color-app-primary-hover)}.app-header-plan{border-color:#8b5cf6;background:color-mix(in srgb,rgb(139 92 246 / .18) 45%,transparent);transition:border-color .17s ease,background-color .17s ease,color .17s ease,transform .17s ease}@supports (color: color-mix(in lab,red,red)){.app-header-plan{border-color:color-mix(in srgb,var(--color-app-primary) 28%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-header-plan{background:color-mix(in srgb,var(--color-app-primary-soft) 45%,transparent)}}.app-header .app-header-plan.app-plan-indicator-pro svg{color:var(--color-app-primary-hover)}.app-header-plan:hover,.app-header-plan:focus-visible{border-color:#8b5cf6;background:var(--color-app-primary-soft);transform:translateY(-1px)}@supports (color: color-mix(in lab,red,red)){.app-header-plan:hover,.app-header-plan:focus-visible{border-color:color-mix(in srgb,var(--color-app-primary) 55%,var(--line-soft))}}.app-plan-indicator-free,.app-plan-indicator-free:hover{border-color:var(--color-app-danger);background:var(--color-app-danger-soft);color:var(--color-app-danger)}.app-plan-indicator-detail{color:var(--ink-subtle);font-size:.68rem;font-weight:500}.app-header-controls,.app-header-status-group{flex:0 1 auto}.app-header-plan{min-height:2.75rem;gap:.3rem;padding:.4rem .6rem}.app-header-sync{min-height:2.75rem;flex:0 1 auto;gap:.35rem;border:1px solid var(--line-soft);border-radius:999px;padding:.3rem .5rem;font-size:.7rem;line-height:1;white-space:nowrap;transition:border-color .17s ease,background-color .17s ease,color .17s ease,transform .17s ease}.app-header .app-header-sync[data-sync-state=ready]{border-color:#34d399;background:color-mix(in srgb,rgb(52 211 153 / .14) 58%,transparent);color:var(--color-app-success)}@supports (color: color-mix(in lab,red,red)){.app-header .app-header-sync[data-sync-state=ready]{border-color:color-mix(in srgb,var(--color-app-success) 32%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-header .app-header-sync[data-sync-state=ready]{background:color-mix(in srgb,var(--color-app-success-soft) 58%,transparent)}}.app-header .app-header-sync[data-sync-state=syncing],.app-header .app-header-sync[data-sync-state=checking],.app-header .app-header-sync[data-sync-state=pending]{border-color:#fbbf24;background:color-mix(in srgb,rgb(251 191 36 / .14) 64%,transparent);color:var(--color-app-warning)}@supports (color: color-mix(in lab,red,red)){.app-header .app-header-sync[data-sync-state=syncing],.app-header .app-header-sync[data-sync-state=checking],.app-header .app-header-sync[data-sync-state=pending]{border-color:color-mix(in srgb,var(--color-app-warning) 34%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-header .app-header-sync[data-sync-state=syncing],.app-header .app-header-sync[data-sync-state=checking],.app-header .app-header-sync[data-sync-state=pending]{background:color-mix(in srgb,var(--color-app-warning-soft) 64%,transparent)}}.app-header .app-header-sync[data-sync-state=error],.app-header .app-header-sync[data-sync-state=attention],.app-header .app-header-sync[data-sync-state=blocked]{border-color:#fb7185;background:color-mix(in srgb,rgb(251 113 133 / .14) 64%,transparent);color:var(--color-app-danger)}@supports (color: color-mix(in lab,red,red)){.app-header .app-header-sync[data-sync-state=error],.app-header .app-header-sync[data-sync-state=attention],.app-header .app-header-sync[data-sync-state=blocked]{border-color:color-mix(in srgb,var(--color-app-danger) 35%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-header .app-header-sync[data-sync-state=error],.app-header .app-header-sync[data-sync-state=attention],.app-header .app-header-sync[data-sync-state=blocked]{background:color-mix(in srgb,var(--color-app-danger-soft) 64%,transparent)}}.app-header .app-header-sync[data-sync-state=offline],.app-header .app-header-sync[data-sync-state=local]{border-color:#b6afbd;background:color-mix(in srgb,#b6afbd 8%,transparent);color:var(--color-app-muted)}@supports (color: color-mix(in lab,red,red)){.app-header .app-header-sync[data-sync-state=offline],.app-header .app-header-sync[data-sync-state=local]{border-color:color-mix(in srgb,var(--color-app-muted) 24%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-header .app-header-sync[data-sync-state=offline],.app-header .app-header-sync[data-sync-state=local]{background:color-mix(in srgb,var(--color-app-muted) 8%,transparent)}}@keyframes app-header-sync-spin{to{transform:rotate(360deg)}}html[data-motion=full] .app-header .app-header-sync[data-sync-state=syncing] .app-header-sync-icon{animation:app-header-sync-spin 1.4s linear infinite}:root[data-motion=reduced] .app-header-content,:root[data-motion=reduced] .app-header-brand-mark,:root[data-motion=reduced] .app-header-sync-icon{animation:none!important}.app-header-sync:hover,.app-header-sync:focus-visible{border-color:var(--line-accent);background:var(--surface-spotlight);color:var(--ink-primary)}.app-header-status-label{display:inline-block;max-width:9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:359px){.app-header .app-character-context{max-width:3.8rem}.app-header-plan{padding-inline:.45rem}}@media(min-width:360px)and (max-width:767px){.app-header .app-character-context{max-width:5rem}.app-plan-indicator-detail{display:none}}@media(min-width:768px){.app-header-sync-label{display:inline-block}}.app-shell-sync-indicator{min-height:2.75rem;padding-inline:.5rem;font-size:.7rem}@media(max-width:767px){.app-header-sync{width:2.75rem;min-width:2.75rem;flex:0 0 2.75rem;justify-content:center;border-color:transparent;background:transparent;padding:0}.app-header-sync-label{display:none}.app-header-sync .app-sync-dot{width:.65rem;height:.65rem}.app-header-plan-label{max-width:3.2rem}.app-plan-indicator-detail{display:none}}.app-shell-sync-indicator:hover{color:var(--ink-primary)}.app-alert{border:1px solid var(--color-app-border);border-radius:var(--radius-app-control);padding:.75rem 1rem;font-size:.875rem}.app-alert-danger{border-color:var(--color-app-danger);background:var(--color-app-danger-soft);color:var(--color-app-text)}.app-alert-success{border-color:var(--color-app-success);background:var(--color-app-success-soft);color:var(--color-app-text)}.app-nav-section-label{padding-inline:.75rem;color:var(--ink-subtle);font-size:.65rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.app-nav-link-active{border-color:var(--line-accent)!important;background:var(--surface-spotlight)!important;box-shadow:inset 3px 0 var(--color-app-primary),0 5px 18px #00000014!important;color:var(--ink-primary)!important}.app-desktop-primary-nav{position:relative;isolation:isolate}.app-desktop-primary-indicator{position:absolute;z-index:0;top:0;right:0;left:0;height:2.75rem;border:1px solid var(--line-accent);border-radius:var(--radius-app-control);background:var(--surface-spotlight);box-shadow:0 5px 18px #00000014;transition:transform .18s cubic-bezier(.22,.8,.32,1);pointer-events:none}.app-desktop-primary-indicator:before{position:absolute;top:.45rem;bottom:.45rem;left:0;width:3px;border-radius:999px;background:var(--color-app-primary);content:""}.app-primary-nav-link{position:relative;z-index:1}.app-primary-nav-link.app-nav-link-active{border-color:transparent!important;background:transparent!important;box-shadow:none!important;color:var(--ink-primary)!important}.app-bottom-nav-link{position:relative;z-index:1;min-width:0;min-height:3.5rem;border:1px solid transparent;border-radius:.8rem}.app-bottom-nav-active{border-color:transparent;background:transparent;color:var(--ink-primary)}.app-bottom-nav-track{position:relative;isolation:isolate}.app-bottom-nav-indicator{position:absolute;z-index:0;inset-block:0;left:0;width:20%;border:1px solid var(--line-accent);border-radius:.8rem;background:var(--surface-spotlight);box-shadow:0 5px 18px #00000014;transition:left .18s cubic-bezier(.22,.8,.32,1);pointer-events:none}.app-bottom-nav-indicator:before{position:absolute;top:.18rem;left:50%;width:1.5rem;height:2px;border-radius:999px;background:var(--color-app-primary);content:"";transform:translate(-50%)}.app-hero{position:relative;overflow:hidden;border:1px solid var(--line-accent);border-radius:1.35rem;background:radial-gradient(circle at 100% 0%,var(--color-app-primary-soft),transparent 42%),linear-gradient(135deg,var(--surface-spotlight),var(--surface-folio));box-shadow:0 18px 42px #00000029}.app-hero:before{position:absolute;top:-2rem;right:2rem;width:10rem;height:10rem;border:1px solid color-mix(in srgb,#8b5cf6 22%,transparent);border-radius:50%;content:"";opacity:.6}@supports (color: color-mix(in lab,red,red)){.app-hero:before{border:1px solid color-mix(in srgb,var(--color-app-primary) 22%,transparent)}}.app-character-roster{display:grid;grid-template-columns:minmax(0,1fr);gap:.75rem}.app-character-card{position:relative;display:grid;min-width:0;gap:.85rem;border:1px solid var(--line-soft);border-radius:.95rem;background:var(--surface-folio);padding:1rem 1rem 1rem 1.15rem;box-shadow:0 5px 16px #00000014;transition:border-color .15s ease,background-color .18s ease,box-shadow .18s ease}.app-character-card:not(.app-character-card-archived):hover,.app-character-card:focus-within{border-color:#8b5cf6;box-shadow:0 10px 24px #00000024}@supports (color: color-mix(in lab,red,red)){.app-character-card:not(.app-character-card-archived):hover,.app-character-card:focus-within{border-color:color-mix(in srgb,var(--color-app-primary) 40%,var(--line-accent))}}.app-character-card-active{border-color:var(--line-accent);background:linear-gradient(130deg,color-mix(in srgb,#8b5cf6 6%,transparent),transparent 58%),var(--surface-folio);box-shadow:inset 0 0 0 1px color-mix(in srgb,#8b5cf6 12%,transparent),0 7px 20px #0000001a}@supports (color: color-mix(in lab,red,red)){.app-character-card-active{background:linear-gradient(130deg,color-mix(in srgb,var(--color-app-primary) 6%,transparent),transparent 58%),var(--surface-folio)}}@supports (color: color-mix(in lab,red,red)){.app-character-card-active{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-app-primary) 12%,transparent),0 7px 20px #0000001a}}.app-character-card-archived{opacity:.76}.app-character-card-heading,.app-character-card-identity,.app-character-card-title-row,.app-character-card-meta{display:flex;min-width:0;align-items:center;gap:.75rem}.app-character-card-heading{align-items:flex-start;justify-content:space-between;gap:.5rem}.app-character-card-identity{align-items:flex-start}.app-character-card-identity>div:last-child{min-width:0}.app-character-card-avatar{display:flex;width:2.85rem;height:2.85rem;flex:0 0 auto;align-items:center;justify-content:center;border:1px solid var(--color-app-primary-border);border-radius:.8rem;background:var(--surface-spotlight);color:var(--color-app-primary-hover);font-size:1.15rem;font-weight:800}.app-character-card-avatar-active{border-color:#8b5cf6;background:linear-gradient(145deg,color-mix(in srgb,#8b5cf6 22%,transparent),transparent 76%),var(--surface-spotlight);box-shadow:inset 0 1px color-mix(in srgb,white 12%,transparent),0 0 1rem color-mix(in srgb,#8b5cf6 13%,transparent)}@supports (color: color-mix(in lab,red,red)){.app-character-card-avatar-active{border-color:color-mix(in srgb,var(--color-app-primary) 66%,var(--line-accent))}}@supports (color: color-mix(in lab,red,red)){.app-character-card-avatar-active{background:linear-gradient(145deg,color-mix(in srgb,var(--color-app-primary) 22%,transparent),transparent 76%),var(--surface-spotlight)}}@supports (color: color-mix(in lab,red,red)){.app-character-card-avatar-active{box-shadow:inset 0 1px color-mix(in srgb,white 12%,transparent),0 0 1rem color-mix(in srgb,var(--color-app-primary) 13%,transparent)}}.app-character-card-title-row{flex-wrap:wrap;gap:.4rem .6rem}.app-character-card-title{min-width:0;color:var(--ink-primary);font-size:1.05rem;font-weight:700;letter-spacing:-.02em;line-height:1.3;overflow-wrap:anywhere}.app-character-active-mark{display:inline-flex;align-items:center;gap:.25rem;border:1px solid #8b5cf6;border-radius:999px;background:color-mix(in srgb,rgb(139 92 246 / .18) 72%,transparent);padding:.2rem .45rem;color:var(--color-app-primary-hover);font-size:.68rem;font-weight:700;line-height:1.2;white-space:nowrap}@supports (color: color-mix(in lab,red,red)){.app-character-active-mark{border:1px solid color-mix(in srgb,var(--color-app-primary) 36%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-character-active-mark{background:color-mix(in srgb,var(--color-app-primary-soft) 72%,transparent)}}.app-pro-option-label{display:inline-flex;align-items:center;gap:.3rem;color:var(--color-app-primary-hover);font-size:.7rem;font-weight:700;line-height:1.35}.app-character-card-line{margin-top:.2rem;color:var(--ink-secondary);font-size:.8rem;line-height:1.4;overflow-wrap:anywhere}.app-character-card-level{display:flex;width:fit-content;align-items:center;gap:.3rem;margin-top:.4rem;border:1px solid #8b5cf6;border-radius:999px;background:color-mix(in srgb,rgb(139 92 246 / .18) 38%,transparent);padding:.18rem .48rem;color:var(--ink-secondary);font-size:.7rem;font-weight:700;line-height:1.25}@supports (color: color-mix(in lab,red,red)){.app-character-card-level{border:1px solid color-mix(in srgb,var(--color-app-primary) 24%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-character-card-level{background:color-mix(in srgb,var(--color-app-primary-soft) 38%,transparent)}}.app-character-card-level>svg{color:var(--color-app-primary-hover)}.app-character-roster-hp{min-width:5rem;flex:1 1 7rem;padding:0}.app-character-roster-hp-heading{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.app-character-roster-hp-label{display:inline-flex;align-items:center;gap:.3rem;font-size:.72rem;font-weight:800}.app-character-roster-hp-value{font-size:1rem;font-weight:800;letter-spacing:-.03em}.app-character-roster-hp-track{height:.25rem;margin-top:.4rem;overflow:hidden;border-radius:999px;background:var(--role-life)}@supports (color: color-mix(in lab,red,red)){.app-character-roster-hp-track{background:color-mix(in srgb,var(--role-life) 14%,var(--surface-inset))}}.app-character-roster-hp-fill{display:block;width:100%;height:100%;transform-origin:left center;border-radius:inherit;background:linear-gradient(90deg,var(--role-life),var(--role-life))}@supports (color: color-mix(in lab,red,red)){.app-character-roster-hp-fill{background:linear-gradient(90deg,var(--role-life),color-mix(in srgb,var(--role-life) 66%,#f6b36f))}}:root[data-motion=full] .app-character-roster-hp-fill{transition:transform .22s ease}.app-character-roster-actions{display:flex;flex-wrap:wrap;justify-content:stretch;gap:.4rem}.app-character-action-menu{position:relative;flex:0 0 auto}.app-character-action-menu[open]{z-index:5}.app-character-action-menu>summary{display:grid;width:2.75rem;height:2.75rem;cursor:pointer;list-style:none;place-items:center;border:1px solid transparent;border-radius:.7rem;color:var(--ink-secondary);transition:border-color .15s ease,background-color .15s ease,color .15s ease,transform .12s ease}.app-character-action-menu>summary::-webkit-details-marker{display:none}.app-character-action-menu>summary:hover,.app-character-action-menu[open]>summary{border-color:var(--line-accent);background:var(--surface-spotlight);color:var(--ink-primary)}.app-character-action-menu>summary:focus-visible{outline:2px solid var(--color-app-primary);outline-offset:2px}:root[data-motion=full] .app-character-action-menu>summary:active{transform:scale(.94)}.app-character-action-menu-panel{position:absolute;right:0;bottom:calc(100% + .35rem);display:grid;min-width:12rem;gap:.1rem;border:1px solid var(--line-accent);border-radius:.75rem;background:var(--color-app-surface-raised);padding:.3rem;box-shadow:var(--shadow-app-modal)}.app-character-action-menu-panel>button{min-height:2.75rem;border:0;border-radius:.5rem;background:transparent;padding:.65rem .75rem;color:var(--color-app-text);text-align:left;font-size:.85rem}.app-character-action-menu-panel>button:hover{background:var(--color-app-neutral-soft)}.app-character-archive-badge{border:1px solid var(--color-app-border);border-radius:999px;padding:.25rem .55rem;color:var(--color-app-muted);font-size:.75rem;font-weight:700}.app-character-action-menu-panel>.app-character-remove-action{color:var(--color-app-danger)}.app-character-card-meta{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:.55rem;border-top:1px solid var(--line-soft);padding-top:.7rem}.app-character-open-button{min-height:3rem;justify-content:space-between;gap:.75rem;padding-inline:.9rem}.app-character-open-label{display:inline-flex;min-width:0;align-items:center;gap:.55rem}.app-character-open-button>svg{flex:0 0 auto;transition:transform .16s ease}:root[data-motion=full] .app-character-open-button:hover>svg,:root[data-motion=full] .app-character-open-button:focus-visible>svg{transform:translate(2px)}:root[data-motion=full] .app-character-open-button:active{transform:scale(.985)}@media(min-width:768px){.app-character-roster{grid-template-columns:repeat(auto-fit,minmax(min(100%,28rem),1fr))}.app-character-roster-actions{justify-content:flex-end}.app-character-roster-actions>button{width:auto;min-width:11rem}.app-character-roster-actions>.app-character-open-button{width:100%}}.app-builder-progress{position:relative;overflow:hidden;border:1px solid var(--line-soft);border-radius:1rem;background:radial-gradient(ellipse at 0 0,color-mix(in srgb,#8b5cf6 10%,transparent),transparent 55%),linear-gradient(135deg,var(--surface-spotlight),var(--surface-raised));padding:1rem 1.1rem}@supports (color: color-mix(in lab,red,red)){.app-builder-progress{background:radial-gradient(ellipse at 0 0,color-mix(in srgb,var(--color-app-primary) 10%,transparent),transparent 55%),linear-gradient(135deg,var(--surface-spotlight),var(--surface-raised))}}.app-builder-page-heading{display:flex;min-width:0;align-items:flex-start;gap:.8rem}.app-builder-heading-mark{display:grid;width:2.8rem;height:2.8rem;flex:0 0 auto;place-items:center;border:1px solid #8b5cf6;border-radius:.9rem;background:radial-gradient(circle at 30% 20%,color-mix(in srgb,#8b5cf6 22%,transparent),transparent 72%),var(--surface-raised);color:var(--color-app-primary-hover);box-shadow:0 .35rem 1.1rem color-mix(in srgb,#8b5cf6 10%,transparent)}@supports (color: color-mix(in lab,red,red)){.app-builder-heading-mark{border:1px solid color-mix(in srgb,var(--color-app-primary) 36%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-builder-heading-mark{background:radial-gradient(circle at 30% 20%,color-mix(in srgb,var(--color-app-primary) 22%,transparent),transparent 72%),var(--surface-raised)}}@supports (color: color-mix(in lab,red,red)){.app-builder-heading-mark{box-shadow:0 .35rem 1.1rem color-mix(in srgb,var(--color-app-primary) 10%,transparent)}}.app-builder-progress-meta,.app-builder-progress-current{display:flex;align-items:center}.app-builder-progress-meta{justify-content:space-between;gap:.75rem}.app-builder-progress-current{min-width:0;gap:.7rem}.app-builder-progress-mark{display:grid;width:2.35rem;height:2.35rem;flex:0 0 auto;place-items:center;border:1px solid var(--color-app-primary-border);border-radius:.75rem;background:var(--color-app-primary-soft);color:var(--color-app-primary-hover)}.app-builder-progress-count,.app-builder-progress-label{display:block}.app-builder-progress-count{color:var(--color-app-text);font-size:.9rem;font-weight:700}.app-builder-progress-label{margin-top:.08rem;color:var(--color-app-muted);font-size:.75rem}.app-builder-progress-percent{flex:0 0 auto;border:1px solid var(--color-app-primary-border);border-radius:999px;background:var(--color-app-primary-soft);padding:.3rem .62rem;color:var(--color-app-primary-hover);font-size:.78rem;font-variant-numeric:tabular-nums;font-weight:750}.app-builder-progress-track{height:.62rem;overflow:hidden;border:1px solid #8b5cf6;border-radius:999px;background:linear-gradient(90deg,var(--surface-inset),var(--surface-sunken));box-shadow:inset 0 1px 2px #00000029}@supports (color: color-mix(in lab,red,red)){.app-builder-progress-track{border:1px solid color-mix(in srgb,var(--color-app-primary) 18%,var(--line-soft))}}.app-builder-progress-fill{position:relative;height:100%;min-width:0;overflow:hidden;border-radius:inherit;background:linear-gradient(90deg,var(--color-app-primary),var(--color-app-primary-hover));box-shadow:0 0 .8rem color-mix(in srgb,#8b5cf6 32%,transparent)}@supports (color: color-mix(in lab,red,red)){.app-builder-progress-fill{box-shadow:0 0 .8rem color-mix(in srgb,var(--color-app-primary) 32%,transparent)}}.app-builder-progress-sweep{position:absolute;inset:0 auto 0 -38%;width:38%;background:linear-gradient(90deg,transparent,rgb(255 255 255 / .34),transparent);transform:skew(-18deg)}.app-builder-step-track{display:flex;gap:.38rem;overflow-x:auto;padding:.1rem 0 .2rem;scrollbar-width:thin}.app-builder-step-chip{display:inline-flex;min-height:2.1rem;flex:0 0 auto;align-items:center;gap:.4rem;border:1px solid var(--line-soft);border-radius:999px;background:var(--surface-inset);padding:.34rem .62rem;color:var(--color-app-muted);font-size:.72rem;font-weight:600;line-height:1.2}@supports (color: color-mix(in lab,red,red)){.app-builder-step-chip{background:color-mix(in srgb,var(--surface-inset) 72%,transparent)}}.app-builder-step-chip-icon{display:grid;width:1.15rem;height:1.15rem;flex:0 0 auto;place-items:center;color:var(--color-app-subtle)}.app-builder-step-chip-current{border-color:var(--color-app-primary-border);background:linear-gradient(135deg,var(--color-app-primary-soft),var(--surface-spotlight));color:var(--color-app-text);box-shadow:inset 0 0 0 1px color-mix(in srgb,#8b5cf6 8%,transparent)}@supports (color: color-mix(in lab,red,red)){.app-builder-step-chip-current{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-app-primary) 8%,transparent)}}.app-builder-step-chip-current .app-builder-step-chip-icon{color:var(--color-app-primary-hover)}.app-builder-step-chip-completed{border-color:#34d399;background:#34d39924;color:var(--color-app-text)}@supports (color: color-mix(in lab,red,red)){.app-builder-step-chip-completed{border-color:color-mix(in srgb,var(--color-app-success) 28%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-builder-step-chip-completed{background:color-mix(in srgb,var(--color-app-success-soft) 72%,var(--surface-raised))}}.app-builder-step-chip-completed .app-builder-step-chip-icon{color:var(--color-app-success)}.app-builder-step-chip-upcoming{opacity:.74}.app-builder-step{max-width:52rem;border-top:1px solid var(--line-strong);padding:1.5rem 0 0}.app-builder-step h2{font-size:clamp(1.35rem,3vw,1.9rem);letter-spacing:-.035em}.app-builder-step .app-builder-mode-choice{--builder-mode-accent: var(--color-app-primary);display:grid;grid-template-columns:2.5rem minmax(0,1fr);align-items:start;gap:.72rem;min-width:0;padding:.85rem}.app-builder-mode-level-one{--builder-mode-accent: var(--color-app-success)}.app-builder-mode-progressive{--builder-mode-accent: var(--color-app-primary)}.app-builder-mode-existing{--builder-mode-accent: var(--color-app-warning)}.app-builder-mode-icon{display:grid;width:2.4rem;height:2.4rem;place-items:center;border:1px solid var(--builder-mode-accent);border-radius:.75rem;background:var(--builder-mode-accent);color:var(--builder-mode-accent)}@supports (color: color-mix(in lab,red,red)){.app-builder-mode-icon{border:1px solid color-mix(in srgb,var(--builder-mode-accent) 28%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-builder-mode-icon{background:color-mix(in srgb,var(--builder-mode-accent) 10%,var(--surface-inset))}}.app-builder-mode-copy{display:grid;min-width:0;gap:.28rem}.app-builder-mode-copy>strong,.app-builder-mode-title-row>strong{font-size:.88rem;line-height:1.3}.app-builder-mode-title-row{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:.42rem}.app-builder-mode-choice.app-choice-tile-selected{border-color:var(--builder-mode-accent);background:linear-gradient(135deg,var(--builder-mode-accent),transparent 72%),var(--surface-spotlight);box-shadow:0 0 0 2px var(--builder-mode-accent)}@supports (color: color-mix(in lab,red,red)){.app-builder-mode-choice.app-choice-tile-selected{border-color:color-mix(in srgb,var(--builder-mode-accent) 72%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-builder-mode-choice.app-choice-tile-selected{background:linear-gradient(135deg,color-mix(in srgb,var(--builder-mode-accent) 12%,transparent),transparent 72%),var(--surface-spotlight)}}@supports (color: color-mix(in lab,red,red)){.app-builder-mode-choice.app-choice-tile-selected{box-shadow:0 0 0 2px color-mix(in srgb,var(--builder-mode-accent) 15%,transparent)}}.app-builder-beta-badge{display:inline-flex;min-height:1.35rem;align-items:center;gap:.22rem;border:1px solid #fbbf24;border-radius:999px;background:#fbbf24;padding:.12rem .42rem;color:var(--color-app-warning);font-size:.62rem;font-weight:700;line-height:1.2}@supports (color: color-mix(in lab,red,red)){.app-builder-beta-badge{border:1px solid color-mix(in srgb,var(--color-app-warning) 35%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-builder-beta-badge{background:color-mix(in srgb,var(--color-app-warning) 9%,var(--surface-inset))}}.app-builder-step .app-builder-class-benefits{border-color:#8b5cf6;background:radial-gradient(ellipse at 0 0,color-mix(in srgb,#8b5cf6 7%,transparent),transparent 48%),var(--surface-raised)}@supports (color: color-mix(in lab,red,red)){.app-builder-step .app-builder-class-benefits{border-color:color-mix(in srgb,var(--color-app-primary) 24%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-builder-step .app-builder-class-benefits{background:radial-gradient(ellipse at 0 0,color-mix(in srgb,var(--color-app-primary) 7%,transparent),transparent 48%),var(--surface-raised)}}.app-builder-class-benefits-title{display:flex;align-items:center;gap:.48rem;color:var(--color-app-text)}.app-builder-class-benefits-title svg{flex:0 0 auto;color:var(--color-app-primary-hover)}.app-builder-class-grants-content{border-top:1px solid var(--line-soft);padding-top:.7rem}.app-builder-step .app-input:not(select){transition:border-color .14s ease,background-color .14s ease,box-shadow .14s ease}.app-builder-step .app-input:not(select):focus-visible{border-color:var(--color-app-primary-hover);background-color:var(--surface-raised);box-shadow:0 0 0 3px color-mix(in srgb,#8b5cf6 16%,transparent)}@supports (color: color-mix(in lab,red,red)){.app-builder-step .app-input:not(select):focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-app-primary) 16%,transparent)}}.app-builder-navigation{align-items:center}.app-builder-submit-button{box-shadow:0 .35rem 1rem color-mix(in srgb,#8b5cf6 14%,transparent)}@supports (color: color-mix(in lab,red,red)){.app-builder-submit-button{box-shadow:0 .35rem 1rem color-mix(in srgb,var(--color-app-primary) 14%,transparent)}}.app-builder-submit-button:disabled{box-shadow:none}:root[data-motion=full] .app-builder-progress-fill{transition:width .36s cubic-bezier(.22,1,.36,1)}:root[data-motion=full] .app-builder-progress-sweep{animation:builder-progress-sweep 2.6s ease-in-out infinite}:root[data-motion=full] .app-builder-step-chip{transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,opacity .15s ease}:root[data-motion=full] .app-builder-mode-choice{transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease,transform .15s ease}:root[data-motion=full] .app-builder-mode-choice:hover{transform:translateY(-1px)}:root[data-motion=full] .app-builder-class-grants-content{animation:builder-class-content-enter .17s ease-out both}:root[data-motion=reduced] .app-builder-progress-fill{transition:width 70ms linear}:root[data-motion=reduced] .app-builder-step-chip,:root[data-motion=reduced] .app-builder-mode-choice,:root[data-motion=reduced] .app-builder-step .app-input:not(select){transition-duration:60ms}:root[data-motion=reduced] .app-builder-progress-sweep,:root[data-motion=reduced] .app-builder-mode-choice:hover{animation:none;transform:none}@media(max-width:640px){.app-builder-page-intro{align-items:flex-start}.app-builder-page-heading{gap:.65rem}.app-builder-heading-mark{width:2.45rem;height:2.45rem}.app-builder-progress{padding:.82rem}.app-builder-step-chip{min-height:2rem;padding-inline:.55rem}.app-builder-navigation{gap:.55rem}.app-builder-submit-button{margin-left:auto}}@keyframes builder-progress-sweep{0%,35%{transform:translate(0) skew(-18deg);opacity:0}55%{opacity:.9}85%,to{transform:translate(390%) skew(-18deg);opacity:0}}@keyframes builder-class-content-enter{0%{transform:translateY(.25rem);opacity:0}to{transform:translateY(0);opacity:1}}.app-settings-region{border-top:1px solid var(--line-soft);padding-top:1.35rem}.app-settings-language-group{border:1px solid var(--color-app-primary-border);border-radius:1.1rem;background:linear-gradient(135deg,var(--color-app-primary-soft),transparent 70%),var(--surface-folio);box-shadow:var(--shadow-app-card);padding:1.2rem}.app-settings-language-columns{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:1rem;margin-top:1rem}.app-settings-language-panel{min-width:0;border:1px solid var(--line-soft);border-radius:.9rem;background:var(--surface-folio);padding:1rem}@supports (color: color-mix(in lab,red,red)){.app-settings-language-panel{background:color-mix(in srgb,var(--surface-folio) 86%,var(--color-app-primary-soft))}}.app-settings-language-panel>.app-settings-subtitle+.app-settings-description{margin-top:.4rem}.app-settings-language-panel h4.app-settings-subtitle{margin-top:1.1rem}.app-settings-language-mode{margin-top:1rem;border-top:1px solid var(--line-soft);padding-top:.9rem}.app-settings-name-mode-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-settings-page{width:100%}.app-settings-layout{display:grid;width:min(100%,78rem);grid-template-columns:repeat(12,minmax(0,1fr));gap:2.3rem 2rem;margin-inline:auto}.app-settings-half{grid-column:span 6}.app-settings-full{grid-column:1 / -1}.app-settings-major{grid-column:span 8}.app-settings-privacy{grid-column:span 4;align-self:start;margin-top:1.35rem}.app-settings-pro-note{display:flex;align-items:flex-start;gap:.7rem;margin:0 auto 1.7rem;max-width:78rem;font-size:.84rem}.app-settings-pro-note svg{flex:0 0 auto;margin-top:.15rem;color:var(--color-app-primary-hover)}.app-settings-pro-note a{flex:0 0 auto}.app-settings-title{display:flex;min-width:0;align-items:center;gap:.58rem;color:var(--ink-primary);font-size:1rem;font-weight:750;line-height:1.35}.app-settings-title small{margin-left:auto;color:var(--ink-subtle);font-size:.66rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase}.app-settings-symbol{display:inline-flex;width:2rem;height:2rem;flex:0 0 auto;align-items:center;justify-content:center;border:1px solid var(--color-app-primary-border);border-radius:.7rem;background:var(--color-app-primary-soft);color:var(--color-app-primary-hover)}.app-settings-description{max-width:48rem;margin-top:.7rem;color:var(--color-app-muted);font-size:.84rem;line-height:1.65}.app-settings-language-grid,.app-settings-motion-grid,.app-settings-theme-grid,.app-settings-font-grid{display:grid;gap:.7rem;margin-top:1.1rem}.app-settings-language-grid,.app-settings-motion-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.app-settings-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem}.app-appearance-control{flex:0 0 auto}.app-appearance-label{display:block;margin-bottom:.4rem;color:var(--ink-subtle);font-size:.67rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.app-appearance-toggle{position:relative;display:grid;min-width:12.5rem;grid-template-columns:repeat(2,minmax(0,1fr));gap:.18rem;border:1px solid var(--line-soft);border-radius:.85rem;background:var(--surface-inset);padding:.22rem}.app-appearance-toggle:before{position:absolute;inset:.22rem auto .22rem .22rem;width:calc(50% - .31rem);border:1px solid var(--color-app-primary-border);border-radius:.63rem;background:var(--color-app-primary-soft);content:"";transition:transform .2s cubic-bezier(.2,.75,.25,1),background-color .2s ease,border-color .2s ease}.app-appearance-toggle[data-mode=dark]:before{transform:translate(100%)}.app-appearance-toggle button{position:relative;z-index:1;display:inline-flex;min-width:0;min-height:2.55rem;align-items:center;justify-content:center;gap:.38rem;border-radius:.6rem;color:var(--color-app-muted);font-size:.78rem;font-weight:650;transition:color .16s ease,transform .12s ease}.app-appearance-toggle button[aria-pressed=true]{color:var(--color-app-text)}.app-appearance-toggle button:active{transform:scale(.96)}.app-settings-theme-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.app-settings-font-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-settings-privacy .app-settings-title{flex-wrap:wrap}.app-settings-privacy .app-settings-description{margin-top:.85rem}:root[data-motion=full] .app-settings-region{animation:app-settings-enter .28s cubic-bezier(.2,.7,.2,1) both}:root[data-motion=full] .app-settings-region:nth-child(2){animation-delay:35ms}:root[data-motion=full] .app-settings-region:nth-child(3){animation-delay:70ms}:root[data-motion=full] .app-settings-region:nth-child(4),:root[data-motion=full] .app-settings-region:nth-child(5){animation-delay:105ms}@keyframes app-settings-enter{0%{transform:translateY(.3rem);opacity:0}to{transform:translateY(0);opacity:1}}.app-inventory-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;margin-top:1rem;border:1px solid var(--role-item);border-radius:1rem;background:radial-gradient(ellipse at 0 0,var(--role-item),transparent 45%),var(--surface-raised);padding:.7rem}@supports (color: color-mix(in lab,red,red)){.app-inventory-summary{border:1px solid color-mix(in srgb,var(--role-item) 24%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-inventory-summary{background:radial-gradient(ellipse at 0 0,color-mix(in srgb,var(--role-item) 7%,transparent),transparent 45%),var(--surface-raised)}}.app-inventory-summary-cell{--inventory-stat-accent: var(--role-item);display:grid;min-width:0;align-content:center;gap:.2rem;border:1px solid var(--inventory-stat-accent);border-radius:.75rem;background:var(--inventory-stat-accent);padding:.65rem .75rem}@supports (color: color-mix(in lab,red,red)){.app-inventory-summary-cell{border:1px solid color-mix(in srgb,var(--inventory-stat-accent) 24%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-inventory-summary-cell{background:color-mix(in srgb,var(--inventory-stat-accent) 5%,var(--surface-inset))}}.app-inventory-summary-items{--inventory-stat-accent: var(--role-item)}.app-inventory-summary-attunement{--inventory-stat-accent: var(--role-arcane)}.app-inventory-summary-load{--inventory-stat-accent: var(--role-defense)}.app-inventory-summary-label{display:flex;align-items:center;gap:.4rem;color:var(--inventory-stat-accent);font-size:.66rem;font-weight:750;letter-spacing:.08em;line-height:1.25;text-transform:uppercase}.app-inventory-summary .app-inventory-summary-label,.app-inventory-toolbar .app-inventory-control-label{display:flex;flex-direction:row;align-items:center;gap:.45rem}.app-inventory-summary-label svg{flex:0 0 auto}.app-inventory-summary-items .app-inventory-summary-value{font-size:1.55rem;letter-spacing:-.04em}.app-inventory-summary-load .app-inventory-summary-value{font-size:.95rem;font-variant-numeric:tabular-nums}.app-inventory-summary-value{display:block;margin-top:.3rem;color:var(--ink-primary);font-size:1.25rem;font-weight:800}.app-inventory-summary-note{--inventory-stat-accent: var(--ink-subtle);display:flex;min-height:100%;align-items:center;gap:.5rem;border-color:var(--line-soft);background:var(--surface-inset);color:var(--ink-subtle);font-size:.78rem}@supports (color: color-mix(in lab,red,red)){.app-inventory-summary-note{background:color-mix(in srgb,var(--surface-inset) 72%,transparent)}}.app-inventory-summary-note svg{flex:0 0 auto;color:var(--role-defense)}.app-inventory-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1.25rem;border-bottom:1px solid var(--line-soft);padding-bottom:1.1rem}.app-inventory-header-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem}.app-inventory-action{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;transition:border-color .18s ease,background-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}.app-inventory-action svg,.app-inventory-row-action svg{flex:0 0 auto}.app-inventory-header-actions .app-button-primary{box-shadow:0 .35rem .9rem var(--role-item)}@supports (color: color-mix(in lab,red,red)){.app-inventory-header-actions .app-button-primary{box-shadow:0 .35rem .9rem color-mix(in srgb,var(--role-item) 16%,transparent)}}.app-inventory-control-label{display:flex;align-items:center;gap:.35rem}.app-inventory-control-label svg{color:var(--color-app-primary-hover)}.app-inventory-list-heading{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line-soft);padding-bottom:.65rem}.app-inventory-list-heading .app-section-heading>svg{color:var(--role-item)}.app-inventory-list-heading .app-section-heading small{border:1px solid var(--line-soft);border-radius:999px;background:var(--surface-inset);padding:.16rem .48rem;font-variant-numeric:tabular-nums}.app-inventory-list-caption{color:var(--ink-subtle);font-size:.72rem}.app-inventory-item-button{display:grid;width:100%;min-width:0;gap:.2rem;border-radius:var(--radius-app-control);padding:.1rem;text-align:left}.app-inventory-item-button:hover,.app-inventory-item-button:focus-visible{background:var(--surface-spotlight);box-shadow:inset 0 0 0 1px color-mix(in srgb,#8b5cf6 24%,transparent)}@supports (color: color-mix(in lab,red,red)){.app-inventory-item-button:hover,.app-inventory-item-button:focus-visible{background:color-mix(in srgb,var(--surface-spotlight) 72%,var(--surface-raised))}}@supports (color: color-mix(in lab,red,red)){.app-inventory-item-button:hover,.app-inventory-item-button:focus-visible{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-app-primary) 24%,transparent)}}.app-inventory-item-button{transition:background-color .16s ease}.app-inventory-item-button:focus-visible{outline:2px solid var(--color-app-focus);outline-offset:2px}.app-inventory-item-facts{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.45rem;color:var(--ink-muted);font-size:.7rem}.app-inventory-item-facts span+span:before{margin-right:.5rem;content:"\b7";color:var(--line-accent)}.app-inventory-badge-equipped{border-color:var(--role-defense);color:var(--role-defense)}@supports (color: color-mix(in lab,red,red)){.app-inventory-badge-equipped{border-color:color-mix(in srgb,var(--role-defense) 45%,var(--line-soft))}}.app-inventory-empty-actions,.app-dialog-content{padding:1.25rem}.app-dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.app-dialog-heading h2{margin-top:.25rem;color:var(--ink-primary);font-size:1.35rem;font-weight:800}.app-dialog-heading p{margin-top:.3rem;color:var(--ink-subtle);font-size:.78rem}.app-dialog-close{padding:.2rem .55rem;font-size:1.2rem;line-height:1}.app-rest-dialog{max-width:52rem}.app-rest-mode-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem;border:1px solid var(--line-soft);border-radius:.9rem;background:var(--surface-sunken);padding:.35rem}@supports (color: color-mix(in lab,red,red)){.app-rest-mode-switch{background:color-mix(in srgb,var(--surface-sunken) 60%,transparent)}}.app-rest-mode-button{display:inline-flex;min-height:2.8rem;align-items:center;justify-content:center;gap:.5rem;border:1px solid transparent;border-radius:.65rem;color:var(--ink-secondary);font-size:.82rem;font-weight:800;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.app-rest-mode-button:focus-visible,.app-rest-mode-button:hover{border-color:var(--role-life);color:var(--ink-primary)}@supports (color: color-mix(in lab,red,red)){.app-rest-mode-button:focus-visible,.app-rest-mode-button:hover{border-color:color-mix(in srgb,var(--role-life) 45%,var(--line-soft))}}.app-rest-mode-button:active{transform:translateY(1px)}.app-rest-mode-button svg{flex:none;stroke-width:2.2}.app-rest-mode-selected{border-color:var(--role-life);background:var(--role-life);color:var(--ink-primary);box-shadow:inset 0 0 0 1px var(--role-life)}@supports (color: color-mix(in lab,red,red)){.app-rest-mode-selected{border-color:color-mix(in srgb,var(--role-life) 55%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-rest-mode-selected{background:color-mix(in srgb,var(--role-life) 17%,var(--surface-raised))}}@supports (color: color-mix(in lab,red,red)){.app-rest-mode-selected{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--role-life) 24%,transparent)}}.app-rest-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}.app-rest-preview-card{display:grid;align-content:start;gap:.2rem;min-height:5.3rem;border:1px solid var(--line-soft);border-radius:.85rem;background:var(--surface-sunken);padding:.8rem}@supports (color: color-mix(in lab,red,red)){.app-rest-preview-card{background:color-mix(in srgb,var(--surface-sunken) 54%,transparent)}}.app-rest-preview-card strong{color:var(--ink-primary);font-size:1.15rem}.app-rest-preview-card small,.app-rest-preview-label{color:var(--ink-subtle);font-size:.68rem;font-weight:700}.app-rest-preview-life{border-color:var(--role-life);background:var(--role-life)}@supports (color: color-mix(in lab,red,red)){.app-rest-preview-life{border-color:color-mix(in srgb,var(--role-life) 40%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-rest-preview-life{background:color-mix(in srgb,var(--role-life) 10%,var(--surface-raised))}}.app-rest-preview-life strong,.app-rest-chip{color:var(--role-life)}.app-rest-section{border-top:1px solid var(--line-soft);padding-top:1.15rem}.app-rest-mode-panel{animation:app-rest-mode-panel-enter .18s ease-out both}@keyframes app-rest-mode-panel-enter{0%{opacity:0;transform:translateY(.35rem)}to{opacity:1;transform:translateY(0)}}.app-rest-section h3{color:var(--ink-primary);font-size:.95rem;font-weight:800}.app-rest-section-heading,.app-rest-launch-heading,.app-rest-allocation-row,.app-rest-recovery-summary,.app-rest-resource-list>div{display:flex;align-items:center;justify-content:space-between;gap:.8rem}.app-rest-section-heading p,.app-rest-launch-card p{margin-top:.25rem;color:var(--ink-subtle);font-size:.78rem;line-height:1.45}.app-rest-chip{flex:none;border:1px solid var(--role-life);border-radius:999px;background:var(--role-life);padding:.25rem .5rem;font-size:.68rem;font-weight:800;text-align:center}@supports (color: color-mix(in lab,red,red)){.app-rest-chip{border:1px solid color-mix(in srgb,var(--role-life) 38%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-rest-chip{background:color-mix(in srgb,var(--role-life) 10%,transparent)}}.app-rest-die-actions,.app-rest-effects{display:flex;flex-wrap:wrap;gap:.5rem}.app-rest-die-actions .app-button small{margin-left:.2rem;opacity:.75}.app-rest-roll-list,.app-rest-allocation-list,.app-rest-resource-list{display:grid;gap:.55rem}.app-rest-roll-card,.app-rest-allocation-row,.app-rest-resource-list>div{border:1px solid var(--line-soft);border-radius:.75rem;background:var(--surface-sunken);padding:.7rem}.app-rest-roll-card{display:grid;grid-template-columns:minmax(4rem,.7fr) minmax(8rem,1fr) minmax(8rem,1.25fr) auto;align-items:end;gap:.7rem}.app-rest-roll-title{display:grid;gap:.15rem}.app-rest-roll-title strong{color:var(--role-life);font-size:1.1rem}.app-rest-roll-title span,.app-rest-roll-card label span,.app-rest-allocation-row small{color:var(--ink-subtle);font-size:.7rem;font-weight:700}.app-rest-roll-card label{display:grid;gap:.3rem}.app-rest-roll-calculation{display:flex;min-height:2.5rem;align-items:center;flex-wrap:wrap;gap:.35rem;border-left:1px solid var(--line-soft);padding-left:.7rem;color:var(--ink-secondary);font-size:.78rem;font-weight:750}.app-rest-roll-calculation span:nth-child(2){color:var(--role-life)}.app-rest-roll-calculation strong{color:var(--ink-primary)}.app-rest-negative{color:var(--role-danger)!important}.app-rest-remove{min-width:2.5rem;color:var(--role-danger)}.app-rest-recovery-summary{border-radius:.75rem;background:var(--role-life);padding:.7rem;color:var(--ink-secondary);font-size:.78rem}@supports (color: color-mix(in lab,red,red)){.app-rest-recovery-summary{background:color-mix(in srgb,var(--role-life) 9%,var(--surface-sunken))}}.app-rest-recovery-summary strong,.app-rest-allocation-row strong{color:var(--ink-primary)}.app-rest-allocation-row>div:first-child{display:grid;gap:.2rem}.app-rest-stepper{display:inline-flex;align-items:center;gap:.55rem}.app-rest-stepper strong{min-width:1.5rem;text-align:center}.app-rest-stepper .app-button{min-width:2.25rem;padding-inline:.45rem}.app-rest-resource-list>div{font-size:.8rem}.app-rest-resource-list strong{color:var(--role-life);font-size:.75rem}.app-rest-effects{border-radius:.7rem;background:var(--role-arcane);padding:.7rem;color:var(--ink-secondary);font-size:.76rem}@supports (color: color-mix(in lab,red,red)){.app-rest-effects{background:color-mix(in srgb,var(--role-arcane) 8%,var(--surface-sunken))}}.app-rest-launch-card{position:relative;display:flex;flex-direction:column;justify-content:space-between;border-color:var(--role-life);background:linear-gradient(140deg,var(--role-life),var(--surface-raised));box-shadow:inset 0 1px color-mix(in srgb,white 8%,transparent)}@supports (color: color-mix(in lab,red,red)){.app-rest-launch-card{border-color:color-mix(in srgb,var(--role-life) 34%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-rest-launch-card{background:linear-gradient(140deg,color-mix(in srgb,var(--role-life) 16%,var(--surface-raised)),var(--surface-raised))}}.app-rest-launch-heading>div{display:flex;align-items:center;gap:.5rem}.app-rest-launch-heading h2{color:var(--ink-primary);font-size:1rem;font-weight:850}.app-rest-launch-heading>div>svg{display:grid;width:2rem;height:2rem;padding:.42rem;place-items:center;border-radius:.65rem;background:var(--role-life);color:var(--role-life);stroke-width:2.2}@supports (color: color-mix(in lab,red,red)){.app-rest-launch-heading>div>svg{background:color-mix(in srgb,var(--role-life) 18%,transparent)}}.app-rest-launch-button{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;border-color:var(--role-life);background:var(--role-life);box-shadow:0 .45rem 1.1rem var(--role-life)}@supports (color: color-mix(in lab,red,red)){.app-rest-launch-button{border-color:color-mix(in srgb,var(--role-life) 58%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-rest-launch-button{background:color-mix(in srgb,var(--role-life) 22%,var(--surface-raised))}}@supports (color: color-mix(in lab,red,red)){.app-rest-launch-button{box-shadow:0 .45rem 1.1rem color-mix(in srgb,var(--role-life) 16%,transparent)}}.app-rest-launch-button svg{transition:transform .16s ease}.app-rest-launch-button:hover svg,.app-rest-launch-button:focus-visible svg{transform:translate(.2rem)}.app-dialog-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.75rem}.app-dialog-actions .app-button{min-width:7.5rem}@media(max-width:640px){.app-rest-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-rest-preview-card:last-child{grid-column:1 / -1}.app-rest-roll-card{grid-template-columns:1fr auto}.app-rest-roll-card label,.app-rest-roll-calculation{grid-column:1 / -1}.app-rest-roll-calculation{border-top:1px solid var(--line-soft);border-left:0;padding-top:.55rem;padding-left:0}.app-dialog-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.app-dialog-actions .app-button{min-width:0}}.app-inventory-detail-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:1.25rem}.app-inventory-detail-facts div{display:grid;gap:.2rem;border-bottom:1px solid var(--line-soft);padding-bottom:.55rem}.app-inventory-detail-facts span,.app-inventory-detail-actions label{color:var(--ink-subtle);font-size:.7rem;font-weight:700}.app-inventory-detail-facts strong{color:var(--ink-primary);font-size:.9rem}.app-inventory-detail-copy{margin-top:1.1rem;color:var(--ink-secondary);font-size:.84rem;line-height:1.55}.app-inventory-detail-copy p{white-space:pre-line}.app-inventory-detail-loading{margin-top:1.1rem;color:var(--ink-subtle);font-size:.78rem}.app-inventory-detail-copy h3{margin-bottom:.25rem;color:var(--ink-primary);font-size:.78rem;font-weight:750}.app-inventory-detail-actions{display:flex;flex-wrap:wrap;align-items:end;gap:.5rem;margin-top:1.25rem}.app-inventory-detail-actions label{display:grid;min-width:8rem;gap:.3rem}.app-inventory-compendium-dialog{display:grid;gap:1rem}.app-inventory-compendium-search{display:grid;gap:.35rem}.app-inventory-modal-filters{border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);padding:.75rem 0}.app-inventory-modal-filters summary{display:flex;align-items:center;justify-content:space-between;min-height:2.5rem;color:var(--ink-primary);cursor:pointer;font-size:.82rem;font-weight:750;list-style:none}.app-inventory-modal-filters summary::-webkit-details-marker{display:none}.app-inventory-modal-filters summary span{color:var(--ink-subtle);font-size:.72rem;font-weight:500}.app-inventory-modal-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;padding-top:.75rem}.app-inventory-modal-filter-grid label{display:grid;gap:.3rem;color:var(--ink-subtle);font-size:.72rem}.app-inventory-compendium-count{color:var(--ink-subtle);font-size:.74rem}.app-inventory-compendium-results{max-height:24rem;overflow-y:auto;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}.app-inventory-compendium-row{display:flex;width:100%;align-items:center;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line-soft);border-left:3px solid transparent;padding:.8rem .55rem;color:var(--ink-primary);text-align:left}.app-inventory-compendium-row:last-child{border-bottom:0}.app-inventory-compendium-row:hover,.app-inventory-compendium-row:focus-visible,.app-inventory-compendium-row-selected{border-left-color:var(--role-item);background:var(--surface-spotlight)}.app-inventory-compendium-row-attunement{border-left-color:var(--role-arcane);background:var(--role-arcane)}@supports (color: color-mix(in lab,red,red)){.app-inventory-compendium-row-attunement{background:color-mix(in srgb,var(--role-arcane) 7%,transparent)}}.app-inventory-compendium-row>span:first-child{display:grid;min-width:0;gap:.2rem}.app-inventory-compendium-row small,.app-inventory-compendium-meta{color:var(--ink-subtle);font-size:.72rem}.app-inventory-compendium-meta{flex:0 0 auto;text-align:right}.app-inventory-compendium-attunement{display:block;color:var(--role-arcane);font-size:.68rem;font-weight:750}.app-inventory-modal-kicker{display:flex;align-items:center;gap:.4rem}.app-inventory-modal-kicker svg{color:var(--role-item)}.app-inventory-manual-form{display:grid;gap:.85rem;margin-top:1rem}.app-inventory-manual-form label{display:grid;min-width:0;gap:.3rem;color:var(--ink-secondary);font-size:.75rem;font-weight:700}.app-inventory-manual-form .app-input,.app-inventory-currency-form .app-input,.app-inventory-detail-actions .app-input{width:100%;min-width:0;border-color:#8b5cf6;background:var(--surface-inset)}@supports (color: color-mix(in lab,red,red)){.app-inventory-manual-form .app-input,.app-inventory-currency-form .app-input,.app-inventory-detail-actions .app-input{border-color:color-mix(in srgb,var(--color-app-primary) 17%,var(--line-soft))}}.app-inventory-manual-form .app-input:focus-visible,.app-inventory-currency-form .app-input:focus-visible{border-color:var(--color-app-focus);box-shadow:0 0 0 3px color-mix(in srgb,rgb(167 139 250 / .85) 16%,transparent)}@supports (color: color-mix(in lab,red,red)){.app-inventory-manual-form .app-input:focus-visible,.app-inventory-currency-form .app-input:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-app-focus) 16%,transparent)}}.app-inventory-manual-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.app-inventory-toggle-list{display:grid;gap:.55rem}.app-inventory-toggle{display:flex;width:100%;align-items:center;gap:.7rem;border:1px solid var(--line-soft);border-radius:var(--radius-app-control);background:linear-gradient(135deg,var(--surface-sunken),var(--surface-raised));padding:.72rem .8rem;color:var(--ink-primary);text-align:left;transition:border-color .19s ease,background-color .19s ease,box-shadow .19s ease,transform .19s ease}.app-inventory-toggle:hover,.app-inventory-toggle:focus-visible{border-color:var(--line-accent);background:var(--surface-spotlight)}.app-inventory-toggle:focus-visible{outline:2px solid var(--color-app-focus);outline-offset:2px}.app-inventory-toggle:active{transform:translateY(1px)}.app-inventory-toggle>span:last-child{display:grid;gap:.12rem}.app-inventory-toggle strong{font-size:.78rem}.app-inventory-toggle small{color:var(--ink-subtle);font-size:.68rem}.app-inventory-toggle-icon{display:grid;width:2rem;height:2rem;flex:0 0 auto;place-items:center;border:1px solid var(--role-arcane);border-radius:.6rem;background:var(--role-arcane);color:var(--role-arcane)}@supports (color: color-mix(in lab,red,red)){.app-inventory-toggle-icon{border:1px solid color-mix(in srgb,var(--role-arcane) 23%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-inventory-toggle-icon{background:color-mix(in srgb,var(--role-arcane) 9%,var(--surface-inset))}}.app-inventory-toggle-track{position:relative;flex:0 0 auto;width:2.6rem;height:1.45rem;border:1px solid var(--line-soft);border-radius:999px;background:var(--surface-folio);transition:background-color .19s ease,border-color .19s ease}.app-inventory-toggle-track span{position:absolute;top:.18rem;left:.2rem;width:.95rem;height:.95rem;border-radius:50%;background:var(--ink-subtle);transition:background-color .19s ease,transform .19s cubic-bezier(.2,.75,.25,1)}.app-inventory-toggle-active{border-color:var(--role-arcane);background:var(--role-arcane);box-shadow:inset 0 0 0 1px var(--role-arcane)}@supports (color: color-mix(in lab,red,red)){.app-inventory-toggle-active{border-color:color-mix(in srgb,var(--role-arcane) 55%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-inventory-toggle-active{background:color-mix(in srgb,var(--role-arcane) 12%,var(--surface-sunken))}}@supports (color: color-mix(in lab,red,red)){.app-inventory-toggle-active{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--role-arcane) 11%,transparent)}}.app-inventory-toggle-active .app-inventory-toggle-icon{border-color:var(--role-arcane);background:var(--role-arcane)}@supports (color: color-mix(in lab,red,red)){.app-inventory-toggle-active .app-inventory-toggle-icon{border-color:color-mix(in srgb,var(--role-arcane) 42%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-inventory-toggle-active .app-inventory-toggle-icon{background:color-mix(in srgb,var(--role-arcane) 16%,var(--surface-inset))}}.app-inventory-toggle-active .app-inventory-toggle-track{border-color:var(--role-arcane);background:var(--role-arcane)}.app-inventory-toggle-active .app-inventory-toggle-track span{background:var(--ink-primary);transform:translate(1.1rem)}.app-inventory-currency-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:1.25rem}.app-inventory-currency-form label{display:grid;grid-column:span 1;gap:.3rem;color:var(--ink-subtle);font-size:.75rem}.app-inventory-currency-form label:last-child{grid-column:1 / -1}.app-inventory-currency-preview{display:grid;gap:.25rem;margin-top:1rem;border:1px solid var(--line-accent);border-radius:var(--radius-app-control);background:var(--surface-spotlight);padding:.8rem;color:var(--ink-primary)}.app-inventory-currency-preview span{color:var(--ink-muted);font-size:.75rem}.app-role-warning{color:var(--role-warning)}.app-inventory-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(19rem,.75fr);align-items:start;gap:2rem;margin-top:1.75rem}.app-inventory-list-region,.app-inventory-tools{min-width:0}.app-inventory-tools{display:grid;gap:.8rem}.app-inventory-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 10rem;gap:.75rem;margin-top:1rem;border-bottom:1px solid var(--line-soft);padding-bottom:1rem}.app-inventory-toolbar .app-input{border-color:#8b5cf6;background:var(--surface-inset)}@supports (color: color-mix(in lab,red,red)){.app-inventory-toolbar .app-input{border-color:color-mix(in srgb,var(--color-app-primary) 17%,var(--line-soft))}}.app-inventory-toolbar .app-input:focus-visible{border-color:var(--color-app-focus);box-shadow:0 0 0 3px color-mix(in srgb,rgb(167 139 250 / .85) 15%,transparent)}@supports (color: color-mix(in lab,red,red)){.app-inventory-toolbar .app-input:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-app-focus) 15%,transparent)}}.app-inventory-search,.app-inventory-filter{display:grid;gap:.35rem}.app-inventory-list{border-top:1px solid var(--line-soft)}.app-inventory-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:1rem;border-bottom:1px solid var(--line-soft);border-left:2px solid transparent;border-radius:0 .65rem .65rem 0;padding:.8rem .55rem;transition:background-color .18s ease,border-color .18s ease}@supports (color: color-mix(in lab,red,red)){.app-inventory-row{border-bottom:1px solid color-mix(in srgb,var(--line-soft) 76%,transparent)}}.app-inventory-row:hover{background:var(--surface-spotlight);border-bottom-color:#8b5cf6}@supports (color: color-mix(in lab,red,red)){.app-inventory-row:hover{background:color-mix(in srgb,var(--surface-spotlight) 14%,transparent)}}@supports (color: color-mix(in lab,red,red)){.app-inventory-row:hover{border-bottom-color:color-mix(in srgb,var(--color-app-primary) 25%,var(--line-soft))}}.app-inventory-row-equipped{border-left-color:var(--role-defense)}.app-inventory-row-attunement{border-left-color:var(--role-arcane);background:var(--role-arcane)}@supports (color: color-mix(in lab,red,red)){.app-inventory-row-attunement{background:color-mix(in srgb,var(--role-arcane) 5%,transparent)}}.app-inventory-row[data-inventory-location=stored]:not(.app-inventory-row-attunement){border-left-color:var(--ink-subtle)}@supports (color: color-mix(in lab,red,red)){.app-inventory-row[data-inventory-location=stored]:not(.app-inventory-row-attunement){border-left-color:color-mix(in srgb,var(--ink-subtle) 46%,transparent)}}.app-inventory-row-equipped.app-inventory-row-attunement{border-left-color:var(--role-defense)}@supports (color: color-mix(in lab,red,red)){.app-inventory-row-equipped.app-inventory-row-attunement{border-left-color:color-mix(in srgb,var(--role-defense) 50%,var(--role-arcane))}}.app-inventory-item-main{min-width:0}.app-inventory-item-heading{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;color:var(--ink-primary)}.app-inventory-item-heading>strong{font-size:.94rem;font-weight:780;letter-spacing:-.015em}.app-inventory-item-open-cue{display:inline-flex;align-items:center;gap:.3rem;border:1px solid var(--line-soft);border-radius:999px;background:var(--surface-inset);padding:.15rem .42rem;color:var(--ink-subtle);font-size:.64rem;font-weight:700;line-height:1.2;transition:border-color .16s ease,background-color .16s ease,color .16s ease}@supports (color: color-mix(in lab,red,red)){.app-inventory-item-open-cue{background:color-mix(in srgb,var(--surface-inset) 72%,transparent)}}.app-inventory-item-open-cue svg{flex:0 0 auto}.app-inventory-item-button:hover .app-inventory-item-open-cue,.app-inventory-item-button:focus-visible .app-inventory-item-open-cue{border-color:#8b5cf6;background:var(--color-app-primary-soft);color:var(--color-app-primary-hover)}@supports (color: color-mix(in lab,red,red)){.app-inventory-item-button:hover .app-inventory-item-open-cue,.app-inventory-item-button:focus-visible .app-inventory-item-open-cue{border-color:color-mix(in srgb,var(--color-app-primary) 45%,var(--line-soft))}}.app-inventory-item-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem;margin-top:.35rem;color:var(--ink-subtle);font-size:.75rem}.app-inventory-meta-chip{--inventory-chip-accent: var(--role-item);display:inline-flex;min-height:1.45rem;align-items:center;gap:.28rem;border:1px solid var(--inventory-chip-accent);border-radius:999px;background:var(--inventory-chip-accent);padding:.16rem .45rem;color:var(--inventory-chip-accent);font-size:.66rem;font-weight:700;line-height:1.1}@supports (color: color-mix(in lab,red,red)){.app-inventory-meta-chip{border:1px solid color-mix(in srgb,var(--inventory-chip-accent) 25%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-inventory-meta-chip{background:color-mix(in srgb,var(--inventory-chip-accent) 7%,var(--surface-inset))}}.app-inventory-meta-chip svg{flex:0 0 auto}.app-inventory-category-chip[data-category=armor],.app-inventory-category-chip[data-category=weapon]{--inventory-chip-accent: var(--role-defense)}.app-inventory-category-chip[data-category=consumable]{--inventory-chip-accent: var(--role-healing)}.app-inventory-category-chip[data-category=magic]{--inventory-chip-accent: var(--role-arcane)}.app-inventory-category-chip[data-category=gear],.app-inventory-category-chip[data-category=other],.app-inventory-location-chip[data-location=carried]{--inventory-chip-accent: var(--role-item)}.app-inventory-location-chip[data-location=equipped],.app-inventory-location-chip[data-location=worn]{--inventory-chip-accent: var(--role-defense)}.app-inventory-location-chip[data-location=stored]{--inventory-chip-accent: var(--ink-subtle)}.app-inventory-origin-chip[data-origin=compendium]{--inventory-chip-accent: var(--role-resource)}.app-inventory-origin-chip[data-origin=manual]{--inventory-chip-accent: var(--role-item)}.app-inventory-origin-chip[data-origin=custom]{--inventory-chip-accent: var(--role-arcane)}.app-inventory-badge{display:inline-flex;min-height:1.4rem;align-items:center;gap:.24rem;border:1px solid var(--role-arcane);border-radius:999px;background:var(--role-arcane);padding:.15rem .42rem;color:var(--role-arcane);font-size:.65rem;font-weight:750}@supports (color: color-mix(in lab,red,red)){.app-inventory-badge{border:1px solid color-mix(in srgb,var(--role-arcane) 35%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-inventory-badge{background:color-mix(in srgb,var(--role-arcane) 8%,var(--surface-inset))}}.app-inventory-badge-attuned{border-color:var(--role-arcane);background:var(--role-arcane-soft)}@supports (color: color-mix(in lab,red,red)){.app-inventory-badge-attuned{border-color:color-mix(in srgb,var(--role-arcane) 42%,var(--line-soft))}}.app-inventory-badge-warning{border-color:var(--role-warning);background:var(--role-warning-soft);color:var(--role-warning)}@supports (color: color-mix(in lab,red,red)){.app-inventory-badge-warning{border-color:color-mix(in srgb,var(--role-warning) 45%,var(--line-soft))}}.app-inventory-badge-equipped{background:var(--role-defense-soft)}.app-inventory-quantity{display:grid;justify-items:end;gap:.25rem;color:var(--ink-subtle);font-size:.72rem;white-space:nowrap}.app-inventory-quantity input{width:4.5rem;min-height:2.45rem;border-radius:.65rem;background:var(--surface-inset);font-variant-numeric:tabular-nums;font-weight:750;text-align:center}.app-inventory-row-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.35rem}.app-inventory-row-action{display:inline-flex;min-height:2.45rem;align-items:center;justify-content:center;gap:.35rem;transition:border-color .16s ease,background-color .16s ease,color .16s ease,transform .16s ease}.app-inventory-location select{min-height:2.45rem;border-radius:.65rem;background:var(--surface-inset);padding:.35rem .5rem;font-size:.72rem}.app-inventory-location{width:8rem}.app-inventory-location app-select{width:100%}.app-inventory-item-details{margin-top:.55rem;color:var(--ink-secondary);font-size:.78rem}.app-inventory-item-details summary{color:var(--color-app-primary-hover);cursor:pointer}.app-inventory-tool{border:1px solid var(--line-soft);border-radius:.85rem;background:linear-gradient(145deg,var(--surface-raised),var(--surface-folio));padding:.65rem .8rem;transition:border-color .18s ease,box-shadow .18s ease}.app-inventory-tool summary{display:flex;min-height:2.5rem;align-items:center;justify-content:space-between;gap:.55rem;color:var(--ink-primary);cursor:pointer;font-weight:750;list-style:none}.app-inventory-tool summary::-webkit-details-marker{display:none}.app-inventory-tool summary:after{display:grid;width:1.55rem;height:1.55rem;flex:0 0 auto;place-items:center;border:1px solid #8b5cf6;border-radius:50%;background:#8b5cf6;color:var(--color-app-primary-hover);content:"+";font-size:1rem;font-weight:400;line-height:1}@supports (color: color-mix(in lab,red,red)){.app-inventory-tool summary:after{border:1px solid color-mix(in srgb,var(--color-app-primary) 24%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-inventory-tool summary:after{background:color-mix(in srgb,var(--color-app-primary) 8%,var(--surface-inset))}}.app-inventory-tool-title{display:inline-flex;min-width:0;align-items:center;gap:.5rem}.app-inventory-tool-title svg{flex:0 0 auto;color:var(--role-item)}.app-inventory-coins{border-color:var(--role-item)}@supports (color: color-mix(in lab,red,red)){.app-inventory-coins{border-color:color-mix(in srgb,var(--role-item) 35%,var(--line-soft))}}.app-inventory-load-options{border-color:var(--role-defense);color:var(--ink-secondary)}@supports (color: color-mix(in lab,red,red)){.app-inventory-load-options{border-color:color-mix(in srgb,var(--role-defense) 30%,var(--line-soft))}}.app-inventory-load-options .app-inventory-tool-title svg{color:var(--role-defense)}.app-inventory-tool[open]{box-shadow:0 .45rem 1.15rem color-mix(in srgb,#8b5cf6 5%,transparent)}@supports (color: color-mix(in lab,red,red)){.app-inventory-tool[open]{box-shadow:0 .45rem 1.15rem color-mix(in srgb,var(--color-app-primary) 5%,transparent)}}.app-inventory-tool[open] summary:after{border-color:#8b5cf6;background:var(--color-app-primary-soft)}@supports (color: color-mix(in lab,red,red)){.app-inventory-tool[open] summary:after{border-color:color-mix(in srgb,var(--color-app-primary) 42%,var(--line-soft))}}.app-inventory-tool-summary-note{margin-left:auto;margin-right:.65rem;color:var(--ink-subtle);font-size:.68rem;font-weight:500}.app-inventory-coins .app-coin-grid{gap:.55rem}.app-inventory-coin-field{min-width:0;border:1px solid var(--line-soft);border-radius:.7rem;background:var(--surface-inset);padding:.45rem}@supports (color: color-mix(in lab,red,red)){.app-inventory-coin-field{background:color-mix(in srgb,var(--surface-inset) 82%,transparent)}}.app-inventory-coins .app-coin-input{min-height:2.5rem;border-radius:.55rem;background:var(--surface-raised);padding-right:.45rem;padding-left:.45rem;font-variant-numeric:tabular-nums;font-weight:750;text-align:center}.app-inventory-convert-button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border-color:var(--role-item)}@supports (color: color-mix(in lab,red,red)){.app-inventory-convert-button{border-color:color-mix(in srgb,var(--role-item) 32%,var(--line-soft))}}.app-inventory-convert-button svg{color:var(--role-item)}.app-inventory-load-toggle{border:1px solid var(--line-soft);border-radius:.7rem;background:var(--surface-inset);padding:.65rem .7rem}@supports (color: color-mix(in lab,red,red)){.app-inventory-load-toggle{background:color-mix(in srgb,var(--surface-inset) 78%,transparent)}}.app-inventory-load-toggle input[type=checkbox]{accent-color:var(--role-defense)}.app-inventory-tool[open] summary:after{content:"\2212"}.app-compendium-results{display:grid;border-top:1px solid var(--line-soft)}.app-compendium-result{display:grid;gap:.15rem;border-bottom:1px solid var(--line-soft);padding:.65rem .35rem;color:var(--ink-primary);text-align:left}.app-compendium-result:hover,.app-compendium-result:focus-visible{background:var(--surface-spotlight)}.app-compendium-result span{color:var(--ink-subtle);font-size:.7rem}.app-inventory-divider{display:flex;align-items:center;gap:.6rem;margin:1rem 0;color:var(--ink-subtle);font-size:.7rem;text-transform:uppercase}.app-inventory-divider:before,.app-inventory-divider:after{height:1px;flex:1;background:var(--line-soft);content:""}.app-coin-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.4rem}.app-coin-grid label{display:grid;gap:.25rem;color:var(--ink-subtle);font-size:.7rem;font-weight:750;text-align:center}.app-coin-grid input{width:100%;min-width:0}.app-inline-empty{display:grid;gap:.45rem;border:1px solid var(--line-soft);border-radius:.85rem;background:linear-gradient(125deg,color-mix(in srgb,#8b5cf6 5%,transparent),transparent 62%),var(--surface-spotlight);padding:1rem 1.1rem;color:var(--ink-secondary)}@supports (color: color-mix(in lab,red,red)){.app-inline-empty{background:linear-gradient(125deg,color-mix(in srgb,var(--color-app-primary) 5%,transparent),transparent 62%),var(--surface-spotlight)}}.app-inline-empty:not(:has(.app-inline-empty-mark)):before,.app-inline-empty-mark{display:grid;width:1.7rem;height:1.7rem;place-items:center;border:1px solid var(--line-accent);border-radius:.55rem;background:var(--color-app-primary-soft);color:var(--color-app-primary-hover);font-size:1rem}.app-inline-empty:not(:has(.app-inline-empty-mark)):before{content:"\2727"}.app-inline-empty strong{color:var(--ink-primary);font-weight:700}.app-search-overlay{position:fixed;inset:0;z-index:70;display:flex;align-items:flex-start;justify-content:center;background:var(--color-app-overlay);padding:5.5rem 1rem 1rem}.app-search-palette{width:min(42rem,100%);max-height:min(36rem,calc(100vh - 7rem));overflow-y:auto;border:1px solid var(--color-app-primary-border);border-radius:var(--radius-app-panel);background:var(--color-app-surface-raised);box-shadow:var(--shadow-app-modal);padding:1rem}.app-search-palette-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.app-search-palette-title{display:flex;min-width:0;align-items:center;gap:.75rem}.app-search-palette-mark{display:grid;width:2.5rem;height:2.5rem;flex:0 0 auto;place-items:center;border:1px solid var(--color-app-primary-border);border-radius:.8rem;background:var(--color-app-primary-soft);color:var(--color-app-primary-hover)}.app-search-palette-title .app-page-kicker{margin-bottom:.1rem}.app-search-palette-heading h2{margin-top:.12rem;color:var(--color-app-text);font-size:1.15rem;font-weight:800}.app-search-palette-input{position:relative;display:block;margin-top:1rem}.app-search-input-icon{position:absolute;top:50%;left:.85rem;color:var(--color-app-muted);transform:translateY(-50%);pointer-events:none}.app-search-palette-input .app-input{min-height:3rem;border-color:var(--color-app-primary-border);background:var(--color-app-surface-sunken);padding-left:2.75rem}.app-search-palette-input:focus-within .app-input{border-color:var(--color-app-focus);box-shadow:0 0 0 3px color-mix(in srgb,rgb(167 139 250 / .85) 20%,transparent)}@supports (color: color-mix(in lab,red,red)){.app-search-palette-input:focus-within .app-input{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-app-focus) 20%,transparent)}}.app-search-palette-hint{display:flex;min-height:2.8rem;align-items:center;gap:.65rem;margin-top:.8rem;border:1px solid var(--color-app-divider);border-radius:var(--radius-app-control);background:var(--color-app-surface-sunken);padding:.7rem .8rem;color:var(--color-app-muted);font-size:.82rem;line-height:1.45}.app-search-palette-hint>svg{flex:0 0 auto;color:var(--color-app-primary-hover)}.app-search-palette-state{margin-top:.8rem}:root[data-motion=full] .app-search-palette-state>svg{animation:search-spinner .9s linear infinite}.app-search-palette-results{display:grid;gap:.25rem;margin-top:.75rem}.app-search-result{display:grid;grid-template-columns:2.25rem minmax(0,1fr) minmax(4.25rem,auto);min-height:3.5rem;align-items:center;gap:.65rem;border:1px solid transparent;border-radius:var(--radius-app-control);padding:.5rem .6rem;color:var(--color-app-text);text-align:left}.app-search-result:hover,.app-search-result:focus-visible,.app-search-result-active{border-color:var(--color-app-primary-border);background:var(--color-app-primary-soft)}.app-search-result:focus-visible{outline:2px solid var(--color-app-focus);outline-offset:2px}.app-search-result-icon{display:grid;width:2.1rem;height:2.1rem;place-items:center;border:1px solid var(--color-app-divider);border-radius:.65rem;background:var(--color-app-surface-sunken);color:var(--color-app-muted)}.app-search-result-active .app-search-result-icon,.app-search-result:hover .app-search-result-icon,.app-search-result:focus-visible .app-search-result-icon{border-color:var(--color-app-primary-border);background:var(--color-app-surface-raised);color:var(--color-app-primary-hover)}.app-search-result-copy,.app-search-result-meta{display:grid;min-width:0;gap:.18rem}.app-search-result-copy strong,.app-search-result-copy small,.app-search-result-meta small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-search-result-copy strong{font-size:.88rem}.app-search-result-meta{justify-items:end;color:var(--color-app-subtle)}.app-search-result-copy small,.app-search-result-meta small{color:var(--color-app-muted);font-size:.7rem}.app-search-palette-all{display:block;margin-top:.75rem;border-top:1px solid var(--color-app-divider);padding-top:.75rem;color:var(--color-app-primary-hover);font-size:.8rem;font-weight:700}:root[data-motion=full] .app-search-overlay-enter{animation:search-overlay-enter .19s ease-out both}:root[data-motion=full] .app-search-overlay-leave{animation:search-overlay-leave .14s ease-in both}:root[data-motion=full] .app-search-palette-enter{animation:calculator-modal-enter .19s cubic-bezier(.22,.8,.32,1) both}:root[data-motion=full] .app-search-palette-leave{animation:calculator-modal-leave .14s cubic-bezier(.4,0,1,1) both}:root[data-motion=full] .app-search-result-enter{animation:search-result-enter .11s ease-out both}:root[data-motion=full] .app-search-result-leave{animation:search-result-leave 85ms ease-in both}:root[data-motion=reduced] .app-search-overlay-enter{animation:calculator-modal-fade 55ms ease-out both}:root[data-motion=reduced] .app-search-overlay-leave{animation:search-overlay-leave 45ms ease-out both}:root[data-motion=reduced] .app-search-palette-enter,:root[data-motion=reduced] .app-search-result-enter{animation:calculator-modal-fade 55ms ease-out both}:root[data-motion=reduced] .app-search-palette-leave,:root[data-motion=reduced] .app-search-result-leave{animation:search-overlay-leave 45ms ease-out both}:root[data-motion=full] app-dialog:has(.app-calculator-global-dialog) .af-ui-dialog-backdrop{animation:search-overlay-enter .19s ease-out both}:root[data-motion=full] app-dialog:has(.app-calculator-global-dialog-closing) .af-ui-dialog-backdrop{animation:search-overlay-leave .14s ease-in both}:root[data-motion=reduced] app-dialog:has(.app-calculator-global-dialog) .af-ui-dialog-backdrop{animation:calculator-modal-fade 55ms ease-out both}:root[data-motion=reduced] app-dialog:has(.app-calculator-global-dialog-closing) .af-ui-dialog-backdrop{animation:search-overlay-leave 45ms ease-out both}.app-compendium-category-tabs{display:flex;gap:.5rem;margin:.25rem 0 1rem;overflow-x:auto;padding:.15rem 0 .4rem;scrollbar-width:thin}.app-compendium-category-tab{display:grid;grid-template-columns:2rem minmax(0,1fr);min-height:4.15rem;align-items:center;gap:.55rem;min-width:10rem;flex:0 0 auto;border:1px solid var(--line-soft);border-radius:var(--radius-app-control);padding:.7rem .8rem;color:var(--ink-secondary);text-align:left}.app-compendium-detail-content{padding:1.25rem}.app-category-tab-icon{display:grid;width:2rem;height:2rem;place-items:center;border:1px solid var(--color-app-divider);border-radius:.65rem;background:var(--color-app-surface-sunken);color:var(--color-app-muted)}.app-category-tab-copy{display:grid;min-width:0;gap:.2rem}.app-category-tab-copy strong{font-size:.78rem;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-category-tab-copy small{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;color:var(--ink-subtle);font-size:.72rem;line-height:1.25}.app-compendium-category-tab,.app-reference-tab{--category-accent: var(--color-app-primary);--category-accent-soft: var(--color-app-primary-soft);transition:none}.app-spell-list-tab{--category-accent: var(--color-app-primary);--category-accent-soft: var(--color-app-primary-soft);transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease}.app-spell-list-tab[data-category=spells],.app-compendium-category-tab[data-category=classes],.app-reference-tab[data-category=spells]{--category-accent: var(--role-arcane);--category-accent-soft: var(--role-arcane-soft)}.app-compendium-category-tab[data-category=subclasses],.app-reference-tab[data-category=feats]{--category-accent: var(--role-resource);--category-accent-soft: var(--role-resource-soft)}.app-compendium-category-tab[data-category=features]{--category-accent: var(--role-warning);--category-accent-soft: var(--role-warning-soft)}.app-compendium-category-tab[data-category=races]{--category-accent: var(--role-healing);--category-accent-soft: var(--role-healing-soft)}.app-compendium-category-tab[data-category=backgrounds],.app-reference-tab[data-category=conditions]{--category-accent: var(--role-defense);--category-accent-soft: var(--role-defense-soft)}.app-compendium-category-tab[data-category=items],.app-reference-tab[data-category=actions]{--category-accent: var(--role-item);--category-accent-soft: var(--role-item-soft)}.app-compendium-category-tab[data-category=custom]{--category-accent: var(--role-arcane);--category-accent-soft: var(--role-arcane-soft)}:root[data-motion=full] .app-compendium-category-tab,:root[data-motion=full] .app-reference-tab,:root[data-motion=full] .app-category-tab-icon{transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .15s cubic-bezier(.22,1,.36,1)}.app-compendium-category-tab:hover,.app-compendium-category-tab:focus-visible,.app-compendium-category-tab-active,.app-reference-tab:hover,.app-reference-tab:focus-visible,.app-reference-tab-active,.app-spell-list-tab:hover,.app-spell-list-tab:focus-visible,.app-spell-list-tab-active{border-color:var(--category-accent);background:var(--category-accent-soft);color:var(--category-accent);box-shadow:0 0 0 1px var(--category-accent)}@supports (color: color-mix(in lab,red,red)){.app-compendium-category-tab:hover,.app-compendium-category-tab:focus-visible,.app-compendium-category-tab-active,.app-reference-tab:hover,.app-reference-tab:focus-visible,.app-reference-tab-active,.app-spell-list-tab:hover,.app-spell-list-tab:focus-visible,.app-spell-list-tab-active{border-color:color-mix(in srgb,var(--category-accent) 62%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-compendium-category-tab:hover,.app-compendium-category-tab:focus-visible,.app-compendium-category-tab-active,.app-reference-tab:hover,.app-reference-tab:focus-visible,.app-reference-tab-active,.app-spell-list-tab:hover,.app-spell-list-tab:focus-visible,.app-spell-list-tab-active{box-shadow:0 0 0 1px color-mix(in srgb,var(--category-accent) 18%,transparent)}}.app-compendium-category-tab:focus-visible,.app-reference-tab:focus-visible{outline:2px solid var(--color-app-focus);outline-offset:2px}.app-spell-list-tab:focus-visible{outline:2px solid var(--category-accent);outline-offset:2px}@supports (color: color-mix(in lab,red,red)){.app-spell-list-tab:focus-visible{outline:2px solid color-mix(in srgb,var(--category-accent) 72%,transparent)}}.app-compendium-category-tab:is(:hover,:focus-visible,.app-compendium-category-tab-active) strong,.app-reference-tab:is(:hover,:focus-visible,.app-reference-tab-active) strong{color:var(--category-accent)}.app-compendium-category-tab:is(:hover,:focus-visible,.app-compendium-category-tab-active) .app-category-tab-icon,.app-reference-tab:is(:hover,:focus-visible,.app-reference-tab-active) .app-category-tab-icon{border-color:var(--category-accent);background:var(--category-accent-soft);color:var(--category-accent)}@supports (color: color-mix(in lab,red,red)){.app-compendium-category-tab:is(:hover,:focus-visible,.app-compendium-category-tab-active) .app-category-tab-icon,.app-reference-tab:is(:hover,:focus-visible,.app-reference-tab-active) .app-category-tab-icon{border-color:color-mix(in srgb,var(--category-accent) 56%,var(--line-soft))}}:root[data-motion=full] .app-compendium-category-tab-active .app-category-tab-icon,:root[data-motion=full] .app-reference-tab-active .app-category-tab-icon{transform:translateY(-1px)}:root[data-motion=reduced] .app-compendium-category-tab,:root[data-motion=reduced] .app-reference-tab,:root[data-motion=reduced] .app-category-tab-icon{transition-duration:.01ms}:root[data-motion=reduced] .app-compendium-category-tab-active .app-category-tab-icon,:root[data-motion=reduced] .app-reference-tab-active .app-category-tab-icon{transform:none}.app-spell-list-tab-active .app-spell-list-count,.app-spell-list-tab:hover .app-spell-list-count,.app-spell-list-tab:focus-visible .app-spell-list-count{border-color:var(--category-accent);background:var(--category-accent-soft);color:var(--category-accent)}@supports (color: color-mix(in lab,red,red)){.app-spell-list-tab-active .app-spell-list-count,.app-spell-list-tab:hover .app-spell-list-count,.app-spell-list-tab:focus-visible .app-spell-list-count{border-color:color-mix(in srgb,var(--category-accent) 34%,var(--line-soft))}}.app-spell-list-count{border:1px solid transparent}@media(min-width:1024px){.app-compendium-category-tabs{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));overflow:visible}.app-compendium-category-tab{min-width:0;padding:.55rem .65rem}.app-compendium-category-tab .app-category-tab-copy small{font-size:.68rem}}.app-compendium-toolbar{display:grid;grid-template-columns:minmax(0,1.6fr) repeat(5,minmax(8rem,.6fr));align-items:end;gap:.75rem;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);padding:1rem 0}.app-compendium-toolbar label{display:grid;gap:.35rem}.app-compendium-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(20rem,.8fr);align-items:start;gap:2rem;margin-top:1.75rem}.app-compendium-layout-expanded{grid-template-columns:minmax(0,1fr)}.app-compendium-results,.app-compendium-detail{min-width:0}.app-compendium-result-list{border-top:1px solid var(--line-soft)}.app-compendium-result-row{display:flex;width:100%;align-items:center;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line-soft);padding:.9rem 0;color:var(--ink-primary);text-align:left}.app-compendium-result-row:hover,.app-compendium-result-row:focus-visible,.app-compendium-result-row-selected{background:linear-gradient(90deg,var(--surface-spotlight),transparent 82%);color:var(--ink-primary)}.app-compendium-result-main,.app-compendium-result-meta{display:grid;min-width:0;gap:.2rem}.app-compendium-result-main span,.app-compendium-result-meta span{color:var(--ink-subtle);font-size:.72rem}.app-compendium-result-meta{justify-items:end;text-align:right}.app-compendium-custom{color:var(--role-arcane)!important}.app-compendium-detail{position:sticky;top:6rem;border-top:1px solid var(--line-strong);padding-top:1rem}.app-compendium-detail-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line-soft);padding-bottom:1rem}.app-compendium-detail-heading h2{margin-top:.25rem;color:var(--ink-primary);font-size:clamp(1.35rem,3vw,2rem);font-weight:850;line-height:1.05}.app-compendium-detail-close{display:flex;min-width:2.5rem;min-height:2.5rem;align-items:center;justify-content:center;border:1px solid var(--line-soft);border-radius:999px;background:var(--surface-inset);color:var(--ink-secondary);font-size:1.4rem;line-height:1}.app-compendium-detail-close:hover,.app-compendium-detail-close:focus-visible{border-color:var(--line-accent);color:var(--ink-primary)}.app-compendium-mobile-backdrop{display:none}.app-compendium-detail-meta{display:flex;flex-wrap:wrap;gap:.4rem;color:var(--ink-subtle);font-size:.72rem}.app-compendium-detail-meta span+span:before{margin-right:.4rem;content:"\b7"}.app-compendium-detail-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.app-compendium-detail-fields div{border-bottom:1px solid var(--line-soft);padding-bottom:.5rem}.app-compendium-detail-fields dt{color:var(--ink-subtle);font-size:.68rem;font-weight:700;text-transform:uppercase}.app-compendium-detail-fields dd{margin-top:.2rem;color:var(--ink-primary);font-size:.84rem}.app-compendium-description{display:grid;gap:.75rem;color:var(--ink-secondary);font-size:.84rem;line-height:1.6}.app-reference-tabs{display:flex;gap:.5rem;margin:.25rem 0 1rem;overflow-x:auto;padding:.15rem 0 .4rem;scrollbar-width:thin}.app-reference-tab{display:grid;grid-template-columns:2rem minmax(0,1fr);min-height:4.15rem;align-items:center;gap:.55rem;width:9.5rem;flex:0 0 9.5rem;overflow:hidden;border:1px solid var(--line-soft);border-radius:var(--radius-app-control);padding:.7rem .8rem;color:var(--ink-secondary);text-align:left}.app-reference-tab strong{text-transform:capitalize}.app-reference-filters{display:grid;grid-template-columns:minmax(0,1.7fr) repeat(2,minmax(8rem,.65fr));align-items:end;gap:.7rem;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);padding:1rem 0}.app-reference-filters label{display:grid;min-width:0;gap:.35rem}.app-reference-search{grid-column:span 1}.app-reference-filter-trigger{display:none;min-height:2.75rem;align-items:center;justify-content:space-between;border:1px solid var(--line-accent);border-radius:var(--radius-app-control);background:var(--role-arcane-soft);padding:.65rem .8rem;color:var(--ink-primary);font-size:.78rem;font-weight:750}.app-reference-filter-trigger span:last-child{color:var(--role-arcane);font-size:.68rem}.app-reference-advanced-filters{display:contents}.app-reference-toggles{display:flex;flex-wrap:wrap;grid-column:1 / -1;gap:.45rem;border-top:1px solid var(--line-soft);padding-top:.7rem}.app-reference-toggle{min-height:2.3rem;border:1px solid var(--line-soft);border-radius:999px;padding:.45rem .8rem;color:var(--ink-subtle);font-size:.75rem;font-weight:700}.app-reference-toggle-active,.app-reference-toggle:hover,.app-reference-toggle:focus-visible{border-color:var(--line-accent);background:var(--surface-spotlight);color:var(--ink-primary)}.app-reference-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(20rem,.85fr);align-items:start;gap:2rem;margin-top:1.5rem}.app-reference-list,.app-reference-detail{min-width:0}.app-reference-result-list{border-top:1px solid var(--line-soft)}.app-reference-result{display:flex;width:100%;align-items:center;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line-soft);border-left:3px solid transparent;padding:.85rem .25rem .85rem .65rem;color:var(--ink-primary);text-align:left}.app-reference-result:hover,.app-reference-result:focus-visible,.app-reference-result-selected{border-left-color:var(--role-arcane);background:linear-gradient(90deg,var(--surface-spotlight),transparent 90%)}.app-reference-result-rule:hover,.app-reference-result-rule:focus-visible,.app-reference-result-rule.app-reference-result-selected{border-left-color:var(--role-resource);background:linear-gradient(90deg,var(--role-resource-soft),transparent 90%)}.app-reference-result-condition:hover,.app-reference-result-condition:focus-visible,.app-reference-result-condition.app-reference-result-selected{border-left-color:var(--role-defense);background:linear-gradient(90deg,var(--role-defense-soft),transparent 90%)}.app-reference-result-action:hover,.app-reference-result-action:focus-visible,.app-reference-result-action.app-reference-result-selected{border-left-color:var(--role-item);background:linear-gradient(90deg,var(--role-item-soft),transparent 90%)}.app-reference-result-main,.app-reference-result-meta{display:grid;min-width:0;gap:.25rem}.app-reference-result-main span,.app-reference-result-meta span{color:var(--ink-subtle);font-size:.72rem}.app-reference-result-meta{max-width:52%;justify-items:end;text-align:right}.app-reference-result-meta em{width:max-content;border:1px solid var(--line-accent);border-radius:999px;padding:.12rem .4rem;color:var(--ink-secondary);font-size:.65rem;font-style:normal;font-weight:700}.app-reference-result-available .app-reference-result-main>strong{overflow-wrap:anywhere;color:var(--ink-primary);font-size:1rem;font-weight:750;line-height:1.2}.app-reference-result-available{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1.85fr) auto;align-items:center}.app-reference-result-available .app-reference-result-main{grid-column:1;width:auto}.app-reference-result-available .app-reference-result-meta{display:flex;min-width:0;max-width:none;flex-wrap:wrap;overflow-wrap:anywhere;align-items:center;gap:.75rem;text-align:right}.app-reference-result-available .app-reference-result-meta>div{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem}.app-reference-result-available-action{grid-column:3;justify-self:end}.app-subclass-option{border:1px solid var(--line-soft);border-left:3px solid var(--role-arcane);border-radius:.7rem;background:var(--surface-inset);padding:.85rem;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease,transform .16s ease}.app-subclass-option:hover,.app-subclass-option.app-reference-result-selected{border-color:var(--line-accent);background:var(--surface-spotlight);box-shadow:0 .5rem 1.5rem #00000024}.app-subclass-option:hover{transform:translateY(-1px)}.app-subclass-option .app-reference-result-main{grid-column:1 / -1;width:100%;border-radius:.45rem;padding:.15rem}.app-subclass-option .app-choice-check{display:none}.app-reference-result-list:has(.app-subclass-option){display:grid;gap:.75rem;border-top:0;padding-top:.75rem}.app-choice-detail-affordance{display:inline-flex;width:fit-content;align-items:center;margin-top:.35rem;border-bottom:2px solid var(--color-app-primary);color:var(--color-app-primary-hover)!important;font-size:.72rem;font-weight:750}.app-choice-selection-count{display:inline-flex;margin-top:.75rem;border-radius:999px;background:var(--color-app-primary-soft);padding:.3rem .65rem;color:var(--color-app-primary-hover);font-size:.78rem;font-weight:750}.app-choice-selected-state{display:inline-flex;align-items:center;margin-right:.6rem;color:var(--color-app-primary-hover);font-size:.78rem;font-weight:750}.app-progression-review-row{border-left:3px solid var(--color-app-primary);padding-left:.85rem}.app-subclass-option .app-reference-result-main:focus-visible{outline:2px solid var(--color-app-primary-hover);outline-offset:3px}.app-subclass-option .app-reference-result-available-action{grid-column:1 / -1;justify-self:start;margin-top:.15rem}.app-subclass-option .app-reference-result-available-action .app-button{min-height:2.5rem;font-weight:750}.app-spell-slot-pip{display:grid;width:1.5rem;height:1.5rem;flex:0 0 auto;place-items:center;margin:0;padding:0;border:1px solid transparent;border-radius:999px;background:transparent;cursor:pointer}.app-spell-slot-pip:before{width:.67rem;height:.67rem;border:1px solid var(--color-app-primary-hover);border-radius:999px;background:var(--color-app-primary);box-shadow:0 0 0 1px color-mix(in srgb,#8b5cf6 18%,transparent);content:""}@supports (color: color-mix(in lab,red,red)){.app-spell-slot-pip:before{box-shadow:0 0 0 1px color-mix(in srgb,var(--color-app-primary) 18%,transparent)}}.app-spell-slot-pip-spent:before{border-color:#8b5cf6;background:transparent;box-shadow:inset 0 0 0 1px color-mix(in srgb,#8b5cf6 10%,transparent)}@supports (color: color-mix(in lab,red,red)){.app-spell-slot-pip-spent:before{border-color:color-mix(in srgb,var(--color-app-primary) 48%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-spell-slot-pip-spent:before{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-app-primary) 10%,transparent)}}.app-spell-level-group>div:first-child{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center}.app-spell-level-group>div:first-child>div:first-child{grid-column:1}.app-spell-level-group>div:first-child>div:nth-child(2){grid-column:2}.app-spell-level-group>div:first-child>span:last-child{grid-column:3}.app-spell-list-row-compact{border-right:0;border-left:0;border-radius:0;background:transparent;padding:.7rem 0}.app-spell-list-row-compact>div:first-child{align-items:center;gap:.5rem}.app-spell-list-row-compact>div:nth-child(2){margin-top:.5rem;gap:.35rem}.app-spell-list-row-compact .app-spell-compact-actions{margin-top:.55rem}app-spells-page .app-spells-casting-summary{border:1px solid #8b5cf6;border-radius:1rem;background:radial-gradient(ellipse at 0 0,var(--role-arcane),transparent 42%),linear-gradient(145deg,var(--surface-spotlight),var(--surface-folio) 62%);box-shadow:inset 0 1px color-mix(in srgb,#f5f2f8 4%,transparent),0 10px 24px color-mix(in srgb,#8b5cf6 5%,transparent)}@supports (color: color-mix(in lab,red,red)){app-spells-page .app-spells-casting-summary{border:1px solid color-mix(in srgb,var(--color-app-primary) 24%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){app-spells-page .app-spells-casting-summary{background:radial-gradient(ellipse at 0 0,color-mix(in srgb,var(--role-arcane) 8%,transparent),transparent 42%),linear-gradient(145deg,var(--surface-spotlight),var(--surface-folio) 62%)}}@supports (color: color-mix(in lab,red,red)){app-spells-page .app-spells-casting-summary{box-shadow:inset 0 1px color-mix(in srgb,var(--color-app-text) 4%,transparent),0 10px 24px color-mix(in srgb,var(--color-app-primary) 5%,transparent)}}app-spells-page .app-spell-origin-kicker{display:flex;align-items:center;gap:.4rem}app-spells-page .app-spell-summary-grid{align-items:stretch}app-spells-page .app-spell-summary-metric{--spell-metric-accent: var(--color-app-primary-hover);min-width:0;border:1px solid var(--spell-metric-accent);border-radius:.85rem;background:linear-gradient(140deg,var(--spell-metric-accent),transparent 72%),var(--surface-inset);padding:.72rem .78rem;box-shadow:inset 0 1px color-mix(in srgb,#f5f2f8 3%,transparent)}@supports (color: color-mix(in lab,red,red)){app-spells-page .app-spell-summary-metric{border:1px solid color-mix(in srgb,var(--spell-metric-accent) 28%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){app-spells-page .app-spell-summary-metric{background:linear-gradient(140deg,color-mix(in srgb,var(--spell-metric-accent) 8%,transparent),transparent 72%),var(--surface-inset)}}@supports (color: color-mix(in lab,red,red)){app-spells-page .app-spell-summary-metric{box-shadow:inset 0 1px color-mix(in srgb,var(--color-app-text) 3%,transparent)}}app-spells-page .app-spell-summary-metric-attack{--spell-metric-accent: var(--role-arcane)}app-spells-page .app-spell-summary-metric-dc{--spell-metric-accent: var(--role-warning)}app-spells-page .app-spell-summary-metric-method{--spell-metric-accent: var(--role-resource)}app-spells-page .app-spell-summary-metric-limits{--spell-metric-accent: var(--color-app-primary-hover)}app-spells-page .app-spell-summary-label{display:flex;min-width:0;align-items:center;gap:.4rem;color:var(--spell-metric-accent);font-size:.67rem;font-weight:750;letter-spacing:.1em;line-height:1.2;text-transform:uppercase}app-spells-page .app-spell-summary-label svg{flex:0 0 auto}app-spells-page .app-spell-summary-value{display:block;margin-top:.45rem;overflow-wrap:anywhere;color:var(--ink-primary);font-size:.82rem;font-weight:750;line-height:1.35}app-spells-page .app-spell-summary-value-numeric{font-size:1.8rem;letter-spacing:-.045em;line-height:1}app-spells-page .app-spell-slots-section{border-color:#8b5cf6}@supports (color: color-mix(in lab,red,red)){app-spells-page .app-spell-slots-section{border-color:color-mix(in srgb,var(--color-app-primary) 18%,var(--line-soft))}}app-spells-page .app-spell-slot-heading{display:inline-flex;align-items:center;gap:.45rem}app-spells-page .app-spell-recovery-button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;transition:border-color .16s ease,background-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}app-spells-page .app-spell-recovery-button:hover,app-spells-page .app-spell-recovery-button:focus-visible{border-color:var(--role-arcane);box-shadow:0 0 0 3px var(--role-arcane)}@supports (color: color-mix(in lab,red,red)){app-spells-page .app-spell-recovery-button:hover,app-spells-page .app-spell-recovery-button:focus-visible{border-color:color-mix(in srgb,var(--role-arcane) 48%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){app-spells-page .app-spell-recovery-button:hover,app-spells-page .app-spell-recovery-button:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--role-arcane) 9%,transparent)}}app-spells-page .app-spell-slot-summary{position:relative;min-width:0;border-color:var(--role-arcane);border-radius:.8rem;background:linear-gradient(145deg,var(--role-arcane),transparent 70%),var(--surface-inset);box-shadow:inset 0 1px color-mix(in srgb,#f5f2f8 3%,transparent)}@supports (color: color-mix(in lab,red,red)){app-spells-page .app-spell-slot-summary{border-color:color-mix(in srgb,var(--role-arcane) 26%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){app-spells-page .app-spell-slot-summary{background:linear-gradient(145deg,color-mix(in srgb,var(--role-arcane) 8%,transparent),transparent 70%),var(--surface-inset)}}@supports (color: color-mix(in lab,red,red)){app-spells-page .app-spell-slot-summary{box-shadow:inset 0 1px color-mix(in srgb,var(--color-app-text) 3%,transparent)}}app-spells-page .app-spell-slot-summary-pact{border-color:var(--role-warning);background:linear-gradient(145deg,var(--role-warning),transparent 70%),var(--surface-inset)}@supports (color: color-mix(in lab,red,red)){app-spells-page .app-spell-slot-summary-pact{border-color:color-mix(in srgb,var(--role-warning) 52%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){app-spells-page .app-spell-slot-summary-pact{background:linear-gradient(145deg,color-mix(in srgb,var(--role-warning) 10%,transparent),transparent 70%),var(--surface-inset)}}app-spells-page .app-spell-slot-summary-label{display:flex;min-height:1rem;align-items:center;justify-content:center;gap:.28rem;color:var(--ink-secondary);font-size:.62rem;font-weight:750;letter-spacing:.055em;line-height:1.2;text-transform:uppercase}app-spells-page .app-spell-slot-summary-label svg{flex:0 0 auto;color:var(--role-arcane)}app-spells-page .app-spell-slot-summary-pact .app-spell-slot-summary-label,app-spells-page .app-spell-slot-summary-pact .app-spell-slot-summary-label svg{color:var(--role-warning)}app-spells-page .app-spell-slot-summary-value{display:block;margin-top:.35rem;color:var(--ink-primary);font-size:1.05rem;font-variant-numeric:tabular-nums;font-weight:800;letter-spacing:-.035em;line-height:1}app-spells-page .app-spell-slot-summary-meter{display:block;overflow:hidden;height:.2rem;margin-top:.55rem;border-radius:999px;background:#8b5cf6}@supports (color: color-mix(in lab,red,red)){app-spells-page .app-spell-slot-summary-meter{background:color-mix(in srgb,var(--color-app-primary) 12%,var(--surface-spotlight))}}app-spells-page .app-spell-slot-summary-meter>span{display:block;height:100%;border-radius:inherit;background:var(--role-arcane)}app-spells-page .app-spell-slot-summary-pact .app-spell-slot-summary-meter>span{background:var(--role-warning)}app-spells-page .app-spell-level-group h3{display:flex;align-items:center;gap:.45rem}app-spells-page .app-spell-level-group h3:before{width:.42rem;height:.42rem;flex:0 0 auto;background:var(--role-arcane);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);content:""}app-spells-page .app-spell-slot-indicators{gap:.25rem}app-spells-page .app-spell-slot-pip:focus-visible{border-color:var(--color-app-focus);outline:2px solid var(--color-app-focus);outline-offset:1px}app-spells-page .app-spell-slot-pip-pact:before{border-color:var(--role-warning);background:var(--role-warning);box-shadow:0 0 0 1px var(--role-warning)}@supports (color: color-mix(in lab,red,red)){app-spells-page .app-spell-slot-pip-pact:before{box-shadow:0 0 0 1px color-mix(in srgb,var(--role-warning) 18%,transparent)}}app-spells-page .app-spell-slot-pip-pact.app-spell-slot-pip-spent:before{border-color:var(--role-warning);background:transparent;box-shadow:inset 0 0 0 1px var(--role-warning)}@supports (color: color-mix(in lab,red,red)){app-spells-page .app-spell-slot-pip-pact.app-spell-slot-pip-spent:before{border-color:color-mix(in srgb,var(--role-warning) 48%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){app-spells-page .app-spell-slot-pip-pact.app-spell-slot-pip-spent:before{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--role-warning) 10%,transparent)}}app-spells-page .app-spell-list-row-compact>div:first-child>button strong{font-weight:750;letter-spacing:-.015em}app-spells-page .app-spell-list-row-compact>div:nth-child(2)>span{border:1px solid #8b5cf6;box-shadow:inset 0 1px color-mix(in srgb,#f5f2f8 3%,transparent)}@supports (color: color-mix(in lab,red,red)){app-spells-page .app-spell-list-row-compact>div:nth-child(2)>span{border:1px solid color-mix(in srgb,var(--color-app-primary) 12%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){app-spells-page .app-spell-list-row-compact>div:nth-child(2)>span{box-shadow:inset 0 1px color-mix(in srgb,var(--color-app-text) 3%,transparent)}}app-spells-page .app-reference-result-available .app-reference-result-meta em{padding:.18rem .5rem;letter-spacing:.015em}app-spells-page .app-spell-feedback{border-color:var(--role-arcane)}@supports (color: color-mix(in lab,red,red)){app-spells-page .app-spell-feedback{border-color:color-mix(in srgb,var(--role-arcane) 32%,var(--line-soft))}}@keyframes app-spell-slot-recovered{0%{filter:brightness(.85);transform:scale(.82)}48%{filter:brightness(1.35);transform:scale(1.2)}to{filter:brightness(1);transform:scale(1)}}html[data-motion=full] app-spells-page .app-spell-slot-pip:before{transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .16s ease}html[data-motion=full] app-spells-page .app-spell-slot-pip:hover:before{transform:scale(1.14)}html[data-motion=full] app-spells-page .app-spell-slot-pip-recovering:before{animation:app-spell-slot-recovered .28s cubic-bezier(.2,.75,.25,1) both}html[data-motion=full] app-spells-page .app-spell-slot-pip-recovering:nth-child(2):before{animation-delay:35ms}html[data-motion=full] app-spells-page .app-spell-slot-pip-recovering:nth-child(3):before{animation-delay:70ms}html[data-motion=full] app-spells-page .app-spell-slot-pip-recovering:nth-child(4):before{animation-delay:105ms}html[data-motion=full] app-spells-page .app-spell-slot-pip-recovering:nth-child(5):before{animation-delay:.14s}html[data-motion=full] app-spells-page .app-spell-slot-pip-recovering:nth-child(6):before{animation-delay:175ms}html[data-motion=full] app-spells-page .app-spell-slot-pip-recovering:nth-child(7):before{animation-delay:.21s}html[data-motion=full] app-spells-page .app-spell-slot-pip-recovering:nth-child(8):before{animation-delay:245ms}html[data-motion=full] app-spells-page .app-spell-slot-pip-recovering:nth-child(9):before{animation-delay:.28s}html[data-motion=full] app-spells-page .app-spell-slot-summary-meter>span{transition:width .22s cubic-bezier(.2,.75,.25,1)}html[data-motion=reduced] app-spells-page .app-spell-slot-pip:before,html[data-motion=reduced] app-spells-page .app-spell-slot-summary-meter>span{transition:none}html[data-motion=reduced] app-spells-page .app-spell-slot-pip-recovering:before{animation:none}.app-reference-ritual{border-color:var(--role-warning)!important;color:var(--role-warning)!important}.app-reference-detail{position:sticky;top:6rem;border-top:1px solid var(--line-strong);padding-top:1rem}.app-reference-detail-close{display:none;min-width:2.5rem;min-height:2.5rem;align-items:center;justify-content:center;border:1px solid var(--line-soft);border-radius:999px;background:var(--surface-inset);color:var(--ink-secondary);font-size:1.4rem;line-height:1}.app-reference-detail-close:hover,.app-reference-detail-close:focus-visible{border-color:var(--line-accent);color:var(--ink-primary)}.app-reference-mobile-backdrop{display:none}.app-reference-detail-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line-soft);padding-bottom:1rem}.app-reference-detail-heading h2{margin-top:.25rem;color:var(--ink-primary);font-size:clamp(1.35rem,3vw,2rem);font-weight:850;line-height:1.05}.app-reference-detail-heading p{margin-top:.35rem;color:var(--ink-subtle);font-size:.78rem}.app-reference-feature-provenance{display:grid;gap:.2rem;margin-top:1rem;border-left:2px solid var(--role-resource);background:var(--role-resource-soft);padding:.65rem .75rem;color:var(--ink-primary);font-size:.78rem}.app-reference-feature-provenance span{color:var(--ink-subtle);font-size:.72rem}.app-reference-spell-lead{display:grid;gap:.25rem;margin-top:1rem;color:var(--ink-primary)}.app-reference-spell-lead span{color:var(--ink-subtle);font-size:.78rem;line-height:1.5}.app-reference-fact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:1rem;border:1px solid var(--line-soft);background:var(--line-soft)}.app-reference-fact-grid div{display:grid;min-width:0;gap:.25rem;background:var(--surface-panel);padding:.7rem}.app-reference-fact-grid small{color:var(--ink-subtle);font-size:.63rem;font-weight:700;text-transform:uppercase}.app-reference-fact-grid strong{color:var(--ink-primary);font-size:.8rem;font-weight:700;word-break:break-word}.app-reference-spell-notes{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.85rem;border-left:2px solid var(--line-accent);padding-left:.75rem;color:var(--ink-secondary);font-size:.8rem;line-height:1.5}.app-reference-spell-notes span{font-weight:700}.app-reference-description{display:grid;gap:.75rem;margin-top:1.5rem;color:var(--ink-secondary);font-size:.85rem;line-height:1.65}.app-reference-description h3{border-bottom:1px solid var(--line-soft);padding-bottom:.5rem;color:var(--role-arcane);font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.app-calculator-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(18rem,.75fr);align-items:start;gap:2rem;border-top:1px solid var(--line-soft);padding-top:1.25rem}.app-calculator-main,.app-calculator-guide{min-width:0}.app-calculator-input{font-size:1.1rem}.app-calculator-total{display:grid;gap:.35rem;border-bottom:1px solid var(--line-soft);padding-bottom:1rem}.app-calculator-total strong{color:var(--ink-primary);font-size:clamp(2.5rem,8vw,5rem);font-weight:850;letter-spacing:-.06em;line-height:.95}.app-calculator-invalid{color:var(--role-warning)!important}.app-calculator-actions{display:flex;flex-wrap:wrap;gap:.5rem}.app-calculator-guide{border-top:1px solid var(--line-soft);padding-top:1rem}.app-calculator-steps{display:grid;gap:1rem;margin:0;padding-left:1.25rem;color:var(--ink-primary)}.app-calculator-steps li{display:grid;gap:.2rem;padding-left:.25rem}.app-calculator-steps span{color:var(--ink-muted);font-size:.78rem}.app-calculator-intro{align-items:center}.app-calculator-page-kicker{display:inline-flex;align-items:center;gap:.38rem}.app-calculator-page-kicker svg{color:var(--role-arcane)}.app-calculator-session{width:100%;max-width:34rem;margin:0 auto}.app-calculator-panel{position:relative;border:1px solid var(--role-arcane);border-radius:1.15rem;background:radial-gradient(ellipse at 50% 0,var(--role-arcane),transparent 54%),linear-gradient(145deg,var(--surface-spotlight),var(--surface-folio) 42%);box-shadow:inset 0 1px color-mix(in srgb,#f5f2f8 5%,transparent),0 1rem 2.5rem #00000024;padding:clamp(.75rem,3vw,1.15rem)}@supports (color: color-mix(in lab,red,red)){.app-calculator-panel{border:1px solid color-mix(in srgb,var(--role-arcane) 34%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-calculator-panel{background:radial-gradient(ellipse at 50% 0,color-mix(in srgb,var(--role-arcane) 9%,transparent),transparent 54%),linear-gradient(145deg,var(--surface-spotlight),var(--surface-folio) 42%)}}@supports (color: color-mix(in lab,red,red)){.app-calculator-panel{box-shadow:inset 0 1px color-mix(in srgb,var(--color-app-text) 5%,transparent),0 1rem 2.5rem #00000024}}.app-physical-display{position:relative;display:grid;gap:.5rem;min-height:8.25rem;border:1px solid var(--role-arcane);border-radius:.85rem;background:radial-gradient(ellipse at 100% 100%,var(--role-arcane),transparent 48%),linear-gradient(145deg,var(--surface-inset),var(--surface-raised));padding:.9rem 1rem;color:var(--color-app-text);text-align:right}@supports (color: color-mix(in lab,red,red)){.app-physical-display{border:1px solid color-mix(in srgb,var(--role-arcane) 25%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-physical-display{background:radial-gradient(ellipse at 100% 100%,color-mix(in srgb,var(--role-arcane) 7%,transparent),transparent 48%),linear-gradient(145deg,var(--surface-inset),color-mix(in srgb,var(--surface-raised) 82%,var(--surface-inset)))}}.app-physical-expression-label{display:inline-flex;align-items:center;gap:.38rem;color:var(--color-app-muted);font-size:.66rem;font-weight:800;letter-spacing:.1em;text-align:left;text-transform:uppercase}.app-physical-expression-label svg{color:var(--role-arcane)}.app-physical-display .app-physical-expression-label{color:var(--color-app-muted)}.app-physical-expression{min-height:2.2rem;overflow-wrap:anywhere;font-size:clamp(1.6rem,7vw,2.35rem);font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:.01em;line-height:1.15}.app-physical-expression-empty{color:var(--color-app-subtle)}.app-physical-result-line{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;border-top:1px solid var(--role-arcane);padding-top:.55rem;color:var(--color-app-muted);font-size:.78rem}@supports (color: color-mix(in lab,red,red)){.app-physical-result-line{border-top:1px solid color-mix(in srgb,var(--role-arcane) 24%,var(--line-soft))}}.app-physical-result-line strong{color:var(--role-arcane);font-size:2rem;font-variant-numeric:tabular-nums;font-weight:850;letter-spacing:-.04em;line-height:1}.app-physical-result-empty strong{color:var(--color-app-muted)}.app-physical-result-line>span{display:inline-flex;align-items:center;gap:.4rem}.app-physical-result-line>span svg{color:var(--role-arcane)}.app-physical-error{color:var(--role-warning);font-size:.76rem;text-align:left}.app-calculator-shortcuts{display:grid;gap:.5rem;margin-top:.9rem;border:1px solid var(--role-resource);border-radius:.8rem;background:linear-gradient(135deg,var(--role-resource-soft),transparent 72%),var(--surface-folio);padding:.6rem}@supports (color: color-mix(in lab,red,red)){.app-calculator-shortcuts{border:1px solid color-mix(in srgb,var(--role-resource) 35%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-calculator-shortcuts{background:linear-gradient(135deg,color-mix(in srgb,var(--role-resource-soft) 72%,transparent),transparent 72%),var(--surface-folio)}}.app-calculator-shortcuts-label{display:inline-flex;align-items:center;gap:.38rem;color:var(--color-app-muted);font-size:.66rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.app-calculator-shortcuts-label svg{color:var(--role-resource)}.app-calculator-shortcuts-scroll{display:flex;gap:.45rem;overflow-x:auto;padding:.1rem .1rem .35rem;scrollbar-width:thin}.app-calculator-shortcut{display:inline-flex;flex:0 0 auto;min-height:2.35rem;align-items:center;gap:.38rem;border:1px solid var(--role-resource);border-radius:999px;background:var(--surface-folio);padding:.45rem .72rem;color:var(--ink-primary);font-size:.76rem;font-weight:750;white-space:nowrap}@supports (color: color-mix(in lab,red,red)){.app-calculator-shortcut{border:1px solid color-mix(in srgb,var(--role-resource) 42%,var(--line-soft))}}.app-calculator-shortcut:hover,.app-calculator-shortcut:focus-visible{border-color:var(--role-resource);background:var(--role-resource-soft)}.app-calculator-shortcut-icon{display:inline-flex;align-items:center;color:var(--role-resource)}.app-calculator-shortcut-spell .app-calculator-shortcut-icon{color:var(--role-arcane)}.app-calculator-shortcut-ability .app-calculator-shortcut-icon{color:var(--role-life)}.app-calculator-keypad{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;margin-top:.9rem}.app-calculator-key{min-height:3.45rem;border:1px solid var(--line-soft);border-radius:.8rem;background:var(--surface-raised);box-shadow:0 2px #0000001f;padding:.55rem;color:var(--ink-primary);font-size:1.25rem;font-weight:800;line-height:1;transition:transform .1s ease,background .1s ease,border-color .1s ease;-webkit-tap-highlight-color:transparent}.app-calculator-key:hover,.app-calculator-key:focus-visible{border-color:var(--line-accent);background:var(--surface-folio)}.app-calculator-key:active{box-shadow:none;transform:translateY(2px)}.app-calculator-key-operator{border-color:var(--role-arcane);background:var(--role-arcane-soft);color:var(--role-arcane)}@supports (color: color-mix(in lab,red,red)){.app-calculator-key-operator{border-color:color-mix(in srgb,var(--role-arcane) 45%,var(--line-soft))}}.app-calculator-key-action{border-color:var(--role-temporary);background:var(--role-temporary-soft);color:var(--ink-secondary)}@supports (color: color-mix(in lab,red,red)){.app-calculator-key-action{border-color:color-mix(in srgb,var(--role-temporary) 42%,var(--line-soft))}}.app-calculator-key-backspace{border-color:var(--role-temporary);background:var(--role-temporary-soft);color:var(--role-temporary)}@supports (color: color-mix(in lab,red,red)){.app-calculator-key-backspace{border-color:color-mix(in srgb,var(--role-temporary) 45%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-calculator-key-backspace{background:color-mix(in srgb,var(--role-temporary-soft) 78%,var(--surface-raised))}}.app-calculator-key-clear{border-color:var(--role-life);background:var(--role-life-soft);color:var(--role-life)}@supports (color: color-mix(in lab,red,red)){.app-calculator-key-clear{border-color:color-mix(in srgb,var(--role-life) 52%,var(--line-soft))}}.app-calculator-key-equals{grid-column:3 / span 2;grid-row:5;border-color:var(--role-arcane);background:linear-gradient(145deg,var(--role-arcane),var(--role-arcane));color:var(--color-app-text);box-shadow:inset 0 1px #ffffff2e,0 .35rem 1rem var(--role-arcane)}@supports (color: color-mix(in lab,red,red)){.app-calculator-key-equals{background:linear-gradient(145deg,color-mix(in srgb,var(--role-arcane) 84%,white),var(--role-arcane))}}@supports (color: color-mix(in lab,red,red)){.app-calculator-key-equals{box-shadow:inset 0 1px #ffffff2e,0 .35rem 1rem color-mix(in srgb,var(--role-arcane) 22%,transparent)}}.app-calculator-key-equals:hover,.app-calculator-key-equals:focus-visible{background:var(--role-arcane);color:var(--color-app-text)}@supports (color: color-mix(in lab,red,red)){.app-calculator-key-equals:hover,.app-calculator-key-equals:focus-visible{background:color-mix(in srgb,var(--role-arcane) 88%,white)}}.app-calculator-hint{margin:.75rem 0 0;color:var(--color-app-muted);font-size:.73rem;text-align:center}.app-calculator-result-actions{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:.7rem;border-top:1px solid var(--line-soft);padding-top:.7rem}.app-calculator-action-sheet h2{margin:.15rem 0 0;font-size:2.5rem;letter-spacing:-.05em}.app-calculator-action-list{display:grid;gap:.6rem}.app-sheet-section{border-top:1px solid var(--line-soft);padding-top:1.25rem}.app-section-heading{display:flex;align-items:center;gap:.75rem;color:var(--ink-primary);font-size:1.05rem;font-weight:750}.app-section-heading:after{height:1px;flex:1;background:var(--line-soft);content:""}.app-section-heading small{color:var(--ink-subtle);font-size:.72rem;font-weight:500}.app-stat-rail{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid var(--line-strong);border-radius:1rem;background:var(--line-soft)}.app-stat-cell{min-width:0;background:var(--surface-folio);padding:.85rem 1rem}.app-stat-label{display:block;color:var(--ink-subtle);font-size:.65rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.app-stat-value{display:block;margin-top:.2rem;color:var(--ink-primary);font-size:1.35rem;font-weight:800;letter-spacing:-.03em}.app-stat-meta{display:block;margin-top:.2rem;color:var(--ink-secondary);font-size:.72rem}.app-vitality-panel{border:1px solid var(--role-life);border-radius:1.25rem;background:linear-gradient(135deg,var(--role-life-soft),transparent 52%),var(--surface-folio);padding:clamp(1rem,3vw,1.5rem)}@supports (color: color-mix(in lab,red,red)){.app-vitality-panel{border:1px solid color-mix(in srgb,var(--role-life) 38%,var(--line-strong))}}.app-vitality-value{color:var(--ink-primary);font-size:clamp(2.4rem,8vw,4.6rem);font-weight:850;letter-spacing:-.08em;line-height:.95}.app-vitality-track,.app-progress-track{overflow:hidden;border:1px solid var(--role-life);border-radius:999px;background:var(--role-life)}@supports (color: color-mix(in lab,red,red)){.app-vitality-track,.app-progress-track{border:1px solid color-mix(in srgb,var(--role-life) 30%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-vitality-track,.app-progress-track{background:color-mix(in srgb,var(--role-life) 8%,var(--surface-inset))}}.app-vitality-track{display:flex;height:.7rem;margin-top:.9rem}.app-vitality-overlife{margin-top:.7rem}.app-vitality-overlife-label{display:flex;align-items:center;justify-content:space-between;margin-bottom:.3rem;color:var(--role-healing);font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.app-vitality-overlife-label strong{font-size:.78rem}.app-vitality-overlife-track{overflow:hidden;height:.38rem;border:1px solid var(--role-healing);border-radius:999px;background:var(--role-healing)}@supports (color: color-mix(in lab,red,red)){.app-vitality-overlife-track{border:1px solid color-mix(in srgb,var(--role-healing) 48%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-vitality-overlife-track{background:color-mix(in srgb,var(--role-healing) 10%,var(--surface-inset))}}.app-vitality-overlife-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--role-healing),#b4f1c9);transition:width .22s ease}.app-vitality-fill{flex:0 0 auto;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--role-life),#f6b36f);transition:width .22s ease}.app-vitality-temporary-fill{flex:0 0 auto;height:100%;border-left:2px solid var(--role-temporary);background:repeating-linear-gradient(-45deg,var(--role-temporary),var(--role-temporary) .22rem,var(--role-temporary) .22rem,var(--role-temporary) .44rem);transition:width .22s ease}@supports (color: color-mix(in lab,red,red)){.app-vitality-temporary-fill{background:repeating-linear-gradient(-45deg,color-mix(in srgb,var(--role-temporary) 88%,transparent),color-mix(in srgb,var(--role-temporary) 88%,transparent) .22rem,color-mix(in srgb,var(--role-temporary) 38%,transparent) .22rem .44rem)}}.app-role-life{color:var(--role-life)}.app-role-healing{color:var(--role-healing)}.app-role-temporary{color:var(--role-temporary)}.app-role-defense{color:var(--role-defense)}.app-role-arcane{color:var(--role-arcane)}.app-role-resource{color:var(--role-resource)}.app-role-item{color:var(--role-item)}.app-role-surface{border:1px solid var(--line-soft);border-radius:.9rem;background:var(--surface-folio)}.app-role-surface-life{border-color:var(--role-life);background:var(--role-life-soft)}@supports (color: color-mix(in lab,red,red)){.app-role-surface-life{border-color:color-mix(in srgb,var(--role-life) 35%,var(--line-soft))}}.app-role-surface-arcane{border-color:var(--role-arcane);background:var(--role-arcane-soft)}@supports (color: color-mix(in lab,red,red)){.app-role-surface-arcane{border-color:color-mix(in srgb,var(--role-arcane) 35%,var(--line-soft))}}.app-role-surface-danger{border-color:var(--role-danger);background:var(--role-danger-soft)}@supports (color: color-mix(in lab,red,red)){.app-role-surface-danger{border-color:color-mix(in srgb,var(--role-danger) 35%,var(--line-soft))}}.app-role-surface-resource{border-color:var(--role-resource);background:var(--role-resource-soft)}@supports (color: color-mix(in lab,red,red)){.app-role-surface-resource{border-color:color-mix(in srgb,var(--role-resource) 35%,var(--line-soft))}}.app-status-surface{position:relative;border:1px solid var(--line-soft);border-left:3px solid var(--color-app-primary);border-radius:.75rem;background:linear-gradient(115deg,color-mix(in srgb,#8b5cf6 5%,transparent),transparent 58%),var(--surface-spotlight);padding:.8rem 1rem;box-shadow:inset 0 1px color-mix(in srgb,#f5f2f8 3%,transparent)}@supports (color: color-mix(in lab,red,red)){.app-status-surface{background:linear-gradient(115deg,color-mix(in srgb,var(--color-app-primary) 5%,transparent),transparent 58%),var(--surface-spotlight)}}@supports (color: color-mix(in lab,red,red)){.app-status-surface{box-shadow:inset 0 1px color-mix(in srgb,var(--color-app-text) 3%,transparent)}}.app-status-surface-danger{border-left-color:var(--role-danger);background:var(--role-danger-soft)}.app-status-surface-warning{border-left-color:var(--role-warning);background:var(--role-warning-soft)}.app-status-surface-arcane{border-left-color:var(--role-arcane);background:var(--role-arcane-soft)}.app-status-surface-resource{border-left-color:var(--role-resource);background:var(--role-resource-soft)}.app-sync-accent{--sync-accent: var(--color-app-muted);position:relative}.app-sync-accent:before{position:absolute;top:.8rem;bottom:.8rem;left:0;width:2px;border-radius:999px;background:var(--sync-accent);box-shadow:0 0 7px var(--sync-accent);content:""}@supports (color: color-mix(in lab,red,red)){.app-sync-accent:before{box-shadow:0 0 7px color-mix(in srgb,var(--sync-accent) 24%,transparent)}}.app-sync-accent[data-sync-state=ready],.app-sync-accent[data-sync-state=synced]{--sync-accent: var(--color-app-success)}.app-sync-accent[data-sync-state=syncing],.app-sync-accent[data-sync-state=checking],.app-sync-accent[data-sync-state=pending],.app-sync-accent[data-sync-state=deletionPending]{--sync-accent: var(--color-app-warning)}.app-backup-sync-summary[data-sync-state=syncing]{--sync-accent: var(--color-app-syncing)}.app-sync-accent[data-sync-state=error],.app-sync-accent[data-sync-state=attention],.app-sync-accent[data-sync-state=conflict],.app-sync-accent[data-sync-state=needsAttention],.app-sync-accent[data-sync-state=blocked],.app-sync-accent[data-sync-state=planBlocked]{--sync-accent: var(--color-app-danger)}.app-sync-summary{position:relative;border:1px solid var(--line-soft);border-radius:.9rem;background:var(--surface-folio);padding:1rem 1rem 1rem 1.2rem}.app-backup-mode-switch{position:relative;isolation:isolate;display:grid;width:min(100%,28rem);grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0 0 1.25rem;border:1px solid var(--line-soft);border-radius:.9rem;background:var(--surface-folio);padding:.25rem}.app-backup-mode-switch:before{position:absolute;z-index:0;top:.25rem;bottom:.25rem;left:.25rem;width:calc(50% - .25rem);border:1px solid var(--role-arcane);border-radius:.68rem;background:linear-gradient(135deg,var(--role-arcane),transparent 82%),var(--surface-raised);box-shadow:0 2px 8px var(--role-arcane);content:""}@supports (color: color-mix(in lab,red,red)){.app-backup-mode-switch:before{border:1px solid color-mix(in srgb,var(--role-arcane) 42%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-backup-mode-switch:before{background:linear-gradient(135deg,color-mix(in srgb,var(--role-arcane) 13%,transparent),transparent 82%),var(--surface-raised)}}@supports (color: color-mix(in lab,red,red)){.app-backup-mode-switch:before{box-shadow:0 2px 8px color-mix(in srgb,var(--role-arcane) 10%,transparent)}}.app-backup-mode-switch[data-surface=device]:before{transform:translate(100%)}.app-backup-mode-option{position:relative;z-index:1;display:flex;min-width:0;min-height:2.75rem;align-items:center;justify-content:center;gap:.5rem;border:1px solid transparent;border-radius:.68rem;padding:.55rem .7rem;color:var(--ink-secondary);cursor:pointer;font-size:.83rem;font-weight:700;line-height:1.25;text-align:center;transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}.app-backup-mode-option>svg{flex:0 0 auto}.app-backup-mode-option-active{color:var(--color-app-primary-hover)}.app-backup-mode-option-active>svg{color:var(--role-arcane)}.app-backup-mode-option:focus-within{outline:2px solid var(--color-app-primary);outline-offset:2px}.app-cloud-snapshot-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:1.4rem;border-block:1px solid var(--line-soft)}.app-cloud-snapshot-fact{min-width:0;padding:1rem 1.1rem 1rem 0}.app-cloud-snapshot-fact+.app-cloud-snapshot-fact{border-left:1px solid var(--line-soft);padding-inline:1.1rem 0}.app-cloud-snapshot-fact h3,.app-cloud-snapshot-empty h3{color:var(--ink-primary);font-size:.88rem;font-weight:700;line-height:1.35}.app-cloud-snapshot-fact h3{display:flex;align-items:center;gap:.45rem}.app-cloud-snapshot-fact h3 svg{flex:0 0 auto;color:var(--role-arcane)}.app-cloud-snapshot-fact p,.app-cloud-snapshot-empty p{margin-top:.35rem;color:var(--ink-secondary);font-size:.8rem;line-height:1.55}.app-cloud-snapshot-retention{display:flex;align-items:flex-start;gap:.6rem;margin-top:1rem;border:1px solid var(--role-warning);border-left:2px solid var(--role-warning);border-radius:.2rem .7rem .7rem .2rem;background:var(--role-warning-soft);padding:.75rem .9rem;color:var(--ink-secondary);font-size:.78rem;line-height:1.5}@supports (color: color-mix(in lab,red,red)){.app-cloud-snapshot-retention{border:1px solid color-mix(in srgb,var(--role-warning) 24%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-cloud-snapshot-retention{background:color-mix(in srgb,var(--role-warning-soft) 56%,var(--surface-folio))}}.app-cloud-snapshot-retention>svg{flex:0 0 auto;margin-top:.05rem;color:var(--role-warning)}.app-cloud-snapshot-retention strong{color:var(--ink-primary);font-size:.8rem}.app-cloud-snapshot-retention p{margin-top:.25rem}.app-cloud-snapshot-empty{display:flex;align-items:flex-start;gap:.8rem;border-left:2px solid var(--color-app-primary);border-radius:.2rem .75rem .75rem .2rem;background:var(--color-app-surface-sunken);padding:1rem}.app-cloud-snapshot-empty>svg{flex:0 0 auto;margin-top:.05rem;color:var(--color-app-primary-hover)}.app-cloud-snapshot-list{margin-bottom:0;padding:0;list-style:none}.app-cloud-snapshot-item{display:flex;min-width:0;flex-direction:column;gap:.85rem;border-bottom:1px solid var(--line-soft);padding:.9rem 0}.app-cloud-snapshot-item:first-child{border-top:1px solid var(--line-soft)}.app-cloud-snapshot-record{display:flex;min-width:0;align-items:center;gap:.7rem}.app-cloud-snapshot-record-icon{display:grid;width:2.35rem;height:2.35rem;flex:0 0 auto;place-items:center;border:1px solid var(--role-arcane);border-radius:.7rem;background:var(--role-arcane-soft);color:var(--role-arcane)}@supports (color: color-mix(in lab,red,red)){.app-cloud-snapshot-record-icon{border:1px solid color-mix(in srgb,var(--role-arcane) 24%,var(--line-soft))}}.app-cloud-snapshot-record-heading{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .65rem}.app-cloud-snapshot-record-heading time{color:var(--ink-primary);font-size:.86rem;font-weight:750;font-variant-numeric:tabular-nums}.app-cloud-snapshot-confirmed{display:inline-flex;align-items:center;gap:.3rem;color:var(--color-app-success);font-size:.68rem;font-weight:700}.app-cloud-snapshot-type{margin-top:.2rem;color:var(--ink-muted);font-size:.72rem}.app-cloud-snapshot-actions{display:flex;flex-wrap:wrap;gap:.45rem}.app-cloud-snapshot-actions .app-button{min-height:2.35rem;padding:.42rem .7rem;font-size:.78rem}@media(max-width:639px){.app-cloud-snapshot-facts{grid-template-columns:minmax(0,1fr)}.app-cloud-snapshot-fact{padding:.9rem 0}.app-cloud-snapshot-fact+.app-cloud-snapshot-fact{border-top:1px solid var(--line-soft);border-left:0;padding-inline:0}}.app-sync-summary-main{display:flex;min-width:0;flex-direction:column;gap:.9rem}.app-sync-summary-heading{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:.65rem 1rem;margin-top:.2rem}.app-sync-indicator{display:inline-flex;min-width:0;align-items:center;gap:.5rem;color:var(--color-app-muted);font-size:.8rem;font-weight:700;line-height:1.4}.app-sync-indicator[data-sync-state=ready],.app-sync-indicator[data-sync-state=synced]{color:var(--color-app-success)}.app-sync-indicator[data-sync-state=syncing]{color:var(--color-app-warning)}.app-backup-sync-summary .app-sync-indicator[data-sync-state=syncing]{color:var(--color-app-syncing)}.app-progression-context{position:sticky;top:0;z-index:2;background:var(--surface-folio);padding:1rem 1.1rem 1.15rem}.app-progression-context-copy{display:grid;gap:.55rem}.app-progression-context-copy .app-page-kicker,.app-progression-context-copy h2,.app-progression-context-copy p{margin:0}.app-progression-gain-link{display:inline-flex;align-items:center;gap:.4rem;border-left:2px solid var(--color-app-primary);border-radius:0 .25rem .25rem 0;padding:.15rem 0 .15rem .55rem;font-weight:600}.app-reference-result-available.app-reference-result-selected{padding-block:.2rem}.app-sync-indicator[data-sync-state=checking],.app-sync-indicator[data-sync-state=pending],.app-sync-indicator[data-sync-state=deletionPending]{color:var(--color-app-warning)}.app-sync-indicator[data-sync-state=error],.app-sync-indicator[data-sync-state=attention],.app-sync-indicator[data-sync-state=conflict],.app-sync-indicator[data-sync-state=needsAttention],.app-sync-indicator[data-sync-state=blocked],.app-sync-indicator[data-sync-state=planBlocked]{color:var(--color-app-danger)}.app-sync-indicator[data-sync-state=offline],.app-sync-indicator[data-sync-state=local],.app-sync-indicator[data-sync-state=localOnly],.app-sync-indicator[data-sync-state=deleted]{color:var(--color-app-muted)}.app-sync-state-title{min-width:0;color:inherit;font-size:1.05rem;font-weight:700;letter-spacing:-.015em}.app-sync-dot{width:.5rem;height:.5rem;flex:0 0 auto;border-radius:50%;background:currentColor;box-shadow:0 0 0 2px currentColor}@supports (color: color-mix(in lab,red,red)){.app-sync-dot{box-shadow:0 0 0 2px color-mix(in srgb,currentColor 13%,transparent)}}.app-sync-legend{margin-top:.7rem;border-top:1px solid var(--line-soft);padding-top:.6rem}.app-sync-legend summary{display:flex;min-height:2.25rem;align-items:center;gap:.45rem;border-radius:.55rem;color:var(--ink-primary);cursor:pointer}.app-sync-legend summary:focus-visible{outline:2px solid var(--color-app-primary);outline-offset:2px}.app-sync-legend summary::-webkit-details-marker{display:none}.app-sync-legend summary>svg:first-child{flex:0 0 auto;color:var(--role-arcane)}.app-sync-legend-title{display:block;flex:1;color:var(--ink-primary);font-size:.78rem;font-weight:750;line-height:1.35}.app-sync-legend-chevron{flex:0 0 auto;color:var(--ink-muted)}.app-sync-legend[open] .app-sync-legend-chevron{transform:rotate(180deg)}.app-sync-legend>p{margin-top:.2rem;color:var(--ink-secondary);font-size:.7rem;line-height:1.45}.app-sync-legend ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,11rem),1fr));gap:.4rem .75rem;margin:.65rem 0 0;padding:0;list-style:none}.app-sync-legend-item{display:flex;min-width:0;align-items:flex-start;gap:.45rem;color:var(--color-app-muted);font-size:.7rem;line-height:1.4}.app-sync-legend-item .app-sync-dot{width:.42rem;height:.42rem;margin-top:.25rem}.app-sync-legend-item[data-sync-state=ready]{color:var(--color-app-success)}.app-sync-legend-item[data-sync-state=syncing]{color:var(--color-app-syncing)}.app-sync-legend-item[data-sync-state=checking],.app-sync-legend-item[data-sync-state=pending]{color:var(--color-app-warning)}.app-sync-legend-item[data-sync-state=blocked],.app-sync-legend-item[data-sync-state=error],.app-sync-legend-item[data-sync-state=attention]{color:var(--color-app-danger)}.app-sync-legend-item[data-sync-state=offline],.app-sync-legend-item[data-sync-state=local]{color:var(--color-app-muted)}@media(max-width:640px){.app-sync-legend{padding-inline-end:0}}.app-sync-indicator[data-sync-state=syncing] .app-sync-dot{animation:app-sync-pulse 1.8s ease-in-out infinite}.app-sync-dot-cloud{color:var(--color-app-primary)}.app-sync-summary-meta{display:flex;align-items:center;gap:.55rem;margin-top:.65rem;color:var(--ink-secondary);font-size:.75rem}.app-sync-benefits{display:flex;flex-wrap:wrap;gap:.35rem 1rem;margin-top:.6rem;color:var(--ink-secondary);font-size:.75rem;line-height:1.5}.app-sync-benefits>li:before{margin-right:.45rem;color:var(--color-app-primary);content:"\b7"}.app-sync-summary-action{width:100%;flex:0 0 auto}.app-sync-summary-kicker{display:inline-flex;align-items:center;gap:.4rem}.app-sync-summary-kicker svg{color:var(--role-arcane)}.app-sync-state-icon{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center}:root[data-motion=full] .app-sync-indicator[data-sync-state=syncing] .app-sync-state-spinner{animation:app-sync-turn 1.25s linear infinite}.app-sync-indicator[data-sync-state=checking] .app-sync-state-icon,.app-sync-indicator[data-sync-state=pending] .app-sync-state-icon{color:var(--color-app-warning)}.app-sync-indicator[data-sync-state=offline] .app-sync-state-icon,.app-sync-indicator[data-sync-state=local] .app-sync-state-icon{color:var(--color-app-muted)}.app-sync-indicator[data-sync-state=error] .app-sync-state-icon,.app-sync-indicator[data-sync-state=attention] .app-sync-state-icon,.app-sync-indicator[data-sync-state=blocked] .app-sync-state-icon{color:var(--color-app-danger)}.app-backup-sync-spinner{flex:0 0 auto}.app-sync-summary-action .app-sync-now-button-syncing,.app-backup-cloud-action-loading{cursor:progress}.app-backup-section-kicker{display:inline-flex;align-items:center;gap:.4rem}.app-backup-section-kicker svg{color:var(--role-arcane)}.app-backup-section-title,.app-backup-choice-title{display:flex;align-items:center;gap:.45rem;color:var(--ink-primary);font-weight:750}.app-backup-section-title{font-size:.9rem}.app-backup-section-title svg,.app-backup-choice-title svg{flex:0 0 auto;color:var(--role-arcane)}.app-backup-local-section{min-width:0}.app-backup-export-choice{border:1px solid var(--line-soft);border-radius:.8rem;background:var(--surface-inset);padding:.8rem}.app-backup-export-choice-full{border-left:2px solid var(--role-arcane)}.app-backup-export-choice-sheet{border-left:2px solid var(--role-resource)}.app-backup-choice-title{font-size:.8rem}.app-backup-choice-title svg{color:var(--role-resource)}.app-backup-export-choice-full .app-backup-choice-title svg{color:var(--role-arcane)}.app-backup-empty-state{display:flex;align-items:flex-start;gap:.4rem;border-left:2px solid var(--color-app-muted);border-radius:.15rem .5rem .5rem .15rem;background:var(--surface-folio);padding:.45rem .6rem;color:var(--ink-muted);line-height:1.4}.app-backup-empty-state svg{flex:0 0 auto;margin-top:.02rem;color:var(--role-arcane)}.app-backup-character-label,.app-backup-file-label{display:flex;align-items:center;gap:.4rem}.app-backup-character-label svg,.app-backup-file-label svg{flex:0 0 auto;color:var(--role-arcane)}.app-backup-file-input::file-selector-button{margin-inline-end:.6rem;border:1px solid var(--role-arcane);border-radius:.5rem;background:var(--role-arcane-soft);padding:.38rem .6rem;color:var(--role-arcane);cursor:pointer;font:inherit;font-weight:700}@supports (color: color-mix(in lab,red,red)){.app-backup-file-input::file-selector-button{border:1px solid color-mix(in srgb,var(--role-arcane) 35%,var(--line-soft))}}.app-backup-remote-panel{border:1px solid var(--line-soft);border-radius:.85rem;background:var(--surface-folio);padding:1rem}.app-backup-remote-panel[data-url-state=saved] input{border-color:#34d399}@supports (color: color-mix(in lab,red,red)){.app-backup-remote-panel[data-url-state=saved] input{border-color:color-mix(in srgb,var(--color-app-success) 42%,var(--line-soft))}}.app-backup-remote-panel[data-url-state=edited] input{border-color:var(--role-arcane)}@supports (color: color-mix(in lab,red,red)){.app-backup-remote-panel[data-url-state=edited] input{border-color:color-mix(in srgb,var(--role-arcane) 42%,var(--line-soft))}}.app-backup-url-saved{display:flex;align-items:center;gap:.35rem;color:var(--color-app-success)}.app-backup-url-saved svg{flex:0 0 auto}.app-backup-safety-section{border-radius:.8rem}.app-backup-safety-status{display:flex;align-items:flex-start;gap:.55rem;border:1px solid var(--line-soft);border-left:2px solid var(--role-arcane);border-radius:.2rem .7rem .7rem .2rem;background:var(--surface-inset);padding:.75rem .85rem;color:var(--ink-secondary);line-height:1.5}.app-backup-safety-status svg{flex:0 0 auto;margin-top:.05rem;color:var(--role-arcane)}.app-backup-safety-status-ready{border-left-color:var(--color-app-success);background:#34d39924}@supports (color: color-mix(in lab,red,red)){.app-backup-safety-status-ready{background:color-mix(in srgb,var(--color-app-success-soft) 40%,var(--surface-inset))}}.app-backup-safety-status-ready svg{color:var(--color-app-success)}.app-backup-cloud-locked{border:1px solid var(--role-warning);border-radius:.85rem;background:var(--role-warning-soft);color:var(--ink-secondary)}@supports (color: color-mix(in lab,red,red)){.app-backup-cloud-locked{border:1px solid color-mix(in srgb,var(--role-warning) 32%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-backup-cloud-locked{background:color-mix(in srgb,var(--role-warning-soft) 55%,var(--surface-folio))}}.app-backup-cloud-locked>div>svg,.app-backup-cloud-locked svg:first-child{color:var(--role-warning)}.app-backup-feedback{display:flex;align-items:flex-start;gap:.55rem}.app-backup-feedback>svg{flex:0 0 auto;margin-top:.05rem}.app-cloud-snapshot-retained{display:flex;align-items:flex-start;gap:.45rem}.app-cloud-snapshot-retained>svg{flex:0 0 auto;margin-top:.1rem;color:var(--role-warning)}.app-backup-surface-panel:not([hidden]){transform-origin:top center}.app-backup-sync-summary{transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease}.app-backup-sync-summary:before{transition:background-color .18s ease,box-shadow .18s ease}.app-sync-state-icon{transition:color .16s ease}.app-sync-legend summary::marker{content:""}.app-cloud-snapshot-item{transition:background-color .15s ease}.app-cloud-snapshot-item:focus-within,.app-cloud-snapshot-item:hover{background:var(--surface-spotlight)}@supports (color: color-mix(in lab,red,red)){.app-cloud-snapshot-item:focus-within,.app-cloud-snapshot-item:hover{background:color-mix(in srgb,var(--surface-spotlight) 70%,transparent)}}.app-cloud-snapshot-actions .app-button-danger{min-height:2.6rem}.app-cloud-snapshot-empty h3{display:flex;align-items:center;gap:.45rem}:root[data-motion=full] .app-backup-mode-switch:before{transition:background-color .18s ease,border-color .18s ease,transform .2s cubic-bezier(.22,.8,.32,1)}:root[data-motion=full] .app-backup-mode-option,:root[data-motion=full] .app-backup-mode-option>svg,:root[data-motion=full] .app-sync-legend-chevron{transition:color .15s ease,transform .18s ease}:root[data-motion=full] .app-backup-mode-option-active>svg{transform:scale(1.04)}:root[data-motion=full] .app-backup-surface-panel:not([hidden]){animation:backup-surface-enter .19s ease-out both}:root[data-motion=full] .app-sync-indicator[data-sync-state=ready] .app-sync-state-icon svg{animation:backup-sync-check-in .18s ease-out both}:root[data-motion=full] .app-backup-sync-spinner{animation:app-sync-turn 1.25s linear infinite}:root[data-motion=full] .app-backup-feedback,:root[data-motion=full] .app-backup-safety-status{animation:backup-feedback-enter .17s ease-out both}:root[data-motion=full] .app-cloud-snapshot-item{animation:backup-snapshot-enter .18s ease-out both}:root[data-motion=full] .app-cloud-snapshot-item .app-cloud-snapshot-record-icon{transition:border-color .15s ease,background-color .15s ease,transform .15s ease}:root[data-motion=full] .app-cloud-snapshot-item:hover .app-cloud-snapshot-record-icon,:root[data-motion=full] .app-cloud-snapshot-item:focus-within .app-cloud-snapshot-record-icon{transform:scale(1.03)}:root[data-motion=full] .app-backup-device-card .app-button:active,:root[data-motion=full] .app-backup-cloud-card .app-button:active{transform:translateY(1px)}:root[data-motion=reduced] .app-sync-state-spinner,:root[data-motion=reduced] .app-backup-sync-spinner{animation:none!important}@keyframes app-sync-turn{to{transform:rotate(360deg)}}@keyframes backup-surface-enter{0%{transform:translateY(3px);opacity:.72}to{transform:translateY(0);opacity:1}}@keyframes backup-feedback-enter{0%{transform:translateY(2px);opacity:.75}to{transform:translateY(0);opacity:1}}@keyframes backup-snapshot-enter{0%{transform:translateY(3px);opacity:.72}to{transform:translateY(0);opacity:1}}@keyframes backup-sync-check-in{0%{transform:scale(.9);opacity:.65}to{transform:scale(1);opacity:1}}@media(min-width:640px){.app-cloud-snapshot-item{flex-direction:row;align-items:center;justify-content:space-between;gap:1rem}.app-cloud-snapshot-actions{justify-content:flex-end}}.app-character-sync-indicator{width:fit-content;max-width:100%;justify-self:end;border:1px solid currentColor;border-radius:999px;background-color:currentColor;padding:.3rem .55rem;font-size:.7rem;font-weight:600}@supports (color: color-mix(in lab,red,red)){.app-character-sync-indicator{border:1px solid color-mix(in srgb,currentColor 22%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-character-sync-indicator{background-color:color-mix(in srgb,currentColor 8%,var(--surface-folio))}}.app-character-sync-indicator>svg{flex:0 0 auto}.app-character-sync-indicator>span{min-width:0;overflow-wrap:anywhere}.app-characters-cloud-sync-summary{transition:border-color .22s ease,background-color .22s ease,box-shadow .22s ease}.app-characters-cloud-sync-summary.app-sync-accent:before{transition:background-color .22s ease,box-shadow .22s ease}.app-characters-cloud-sync-summary[data-sync-state=ready]{border-color:#34d399;background-color:#34d39924}@supports (color: color-mix(in lab,red,red)){.app-characters-cloud-sync-summary[data-sync-state=ready]{border-color:color-mix(in srgb,var(--color-app-success) 30%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-characters-cloud-sync-summary[data-sync-state=ready]{background-color:color-mix(in srgb,var(--color-app-success-soft) 35%,var(--surface-folio))}}.app-characters-cloud-sync-summary[data-sync-state=syncing],.app-characters-cloud-sync-summary[data-sync-state=checking],.app-characters-cloud-sync-summary[data-sync-state=pending]{border-color:#fbbf24;background-color:#fbbf2424}@supports (color: color-mix(in lab,red,red)){.app-characters-cloud-sync-summary[data-sync-state=syncing],.app-characters-cloud-sync-summary[data-sync-state=checking],.app-characters-cloud-sync-summary[data-sync-state=pending]{border-color:color-mix(in srgb,var(--color-app-warning) 32%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-characters-cloud-sync-summary[data-sync-state=syncing],.app-characters-cloud-sync-summary[data-sync-state=checking],.app-characters-cloud-sync-summary[data-sync-state=pending]{background-color:color-mix(in srgb,var(--color-app-warning-soft) 30%,var(--surface-folio))}}.app-characters-cloud-sync-summary[data-sync-state=error],.app-characters-cloud-sync-summary[data-sync-state=attention],.app-characters-cloud-sync-summary[data-sync-state=blocked]{border-color:#fb7185;background-color:#fb718524}@supports (color: color-mix(in lab,red,red)){.app-characters-cloud-sync-summary[data-sync-state=error],.app-characters-cloud-sync-summary[data-sync-state=attention],.app-characters-cloud-sync-summary[data-sync-state=blocked]{border-color:color-mix(in srgb,var(--color-app-danger) 34%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-characters-cloud-sync-summary[data-sync-state=error],.app-characters-cloud-sync-summary[data-sync-state=attention],.app-characters-cloud-sync-summary[data-sync-state=blocked]{background-color:color-mix(in srgb,var(--color-app-danger-soft) 28%,var(--surface-folio))}}.app-characters-cloud-sync-summary[data-sync-state=offline],.app-characters-cloud-sync-summary[data-sync-state=local]{background-color:#b6afbd}@supports (color: color-mix(in lab,red,red)){.app-characters-cloud-sync-summary[data-sync-state=offline],.app-characters-cloud-sync-summary[data-sync-state=local]{background-color:color-mix(in srgb,var(--color-app-muted) 4%,var(--surface-folio))}}.app-characters-sync-indicator{gap:.7rem}.app-characters-sync-mark{display:grid;width:2.25rem;height:2.25rem;flex:0 0 auto;place-items:center;border:1px solid currentColor;border-radius:.72rem;background-color:currentColor;color:inherit;transition:border-color .22s ease,background-color .22s ease,color .22s ease}@supports (color: color-mix(in lab,red,red)){.app-characters-sync-mark{border:1px solid color-mix(in srgb,currentColor 26%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-characters-sync-mark{background-color:color-mix(in srgb,currentColor 8%,var(--surface-raised))}}.app-characters-sync-mark>svg{display:block}.app-characters-sync-action-icon{display:inline-block;flex:0 0 auto;margin-inline-end:.45rem}.app-character-sync-spinner,.app-characters-sync-spinner{transform-origin:center}@keyframes app-characters-sync-turn{to{transform:rotate(360deg)}}@keyframes app-characters-sync-check-in{0%{transform:scale(.84);opacity:0}to{transform:scale(1);opacity:1}}:root[data-motion=full] .app-character-sync-indicator[data-sync-state=syncing] .app-character-sync-spinner,:root[data-motion=full] .app-characters-sync-indicator[data-sync-state=syncing] .app-characters-sync-spinner,:root[data-motion=full] .app-characters-sync-action .app-characters-sync-spinner{animation:app-characters-sync-turn 1.35s linear infinite}:root[data-motion=full] .app-character-sync-indicator[data-sync-state=synced] .app-character-sync-check,:root[data-motion=full] .app-characters-sync-indicator[data-sync-state=ready] .app-characters-sync-check{animation:app-characters-sync-check-in .18s ease-out both}@keyframes app-sync-pulse{0%,to{box-shadow:0 0 0 2px color-mix(in srgb,currentColor 12%,transparent)}50%{box-shadow:0 0 0 4px color-mix(in srgb,currentColor 8%,transparent)}}@media(min-width:640px){.app-sync-summary{padding-block:1.1rem}.app-sync-summary-main{flex-direction:row;align-items:center;gap:1.5rem}.app-sync-summary-action{width:auto}}.app-list-row{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:.75rem;border-bottom:1px solid var(--line-soft);padding:.75rem 0}.app-list-row:last-child{border-bottom:0}.app-list-row-compact{padding-block:.5rem}.app-list-row-interactive{border-radius:.65rem;padding-inline:.6rem;transition:background-color .15s ease,padding .15s ease}.app-list-row-interactive:hover,.app-list-row-interactive:focus-within{background:var(--surface-spotlight)}.app-ability-block{position:relative;border:1px solid var(--line-strong);border-radius:1rem 1rem .55rem .55rem;background:linear-gradient(180deg,var(--surface-spotlight),var(--surface-folio));padding:.8rem;text-align:center}.app-ability-block:before{position:absolute;top:0;left:50%;width:2.5rem;height:2px;transform:translate(-50%);background:var(--color-app-primary);content:""}.app-ability-score{color:var(--ink-primary);font-size:1.8rem;font-weight:850}.app-ability-modifier{display:inline-flex;min-width:2.4rem;justify-content:center;border:1px solid var(--line-accent);border-radius:999px;background:var(--surface-inset);color:var(--color-app-primary-hover);font-weight:800}.app-track{display:flex;flex-wrap:wrap;gap:.3rem}.app-track-segment{width:1rem;height:1rem;border:1px solid var(--line-strong);border-radius:.25rem;background:var(--surface-inset)}.app-track-segment-active{border-color:var(--role-resource);background:var(--role-resource)}@supports (color: color-mix(in lab,red,red)){.app-track-segment-active{border-color:color-mix(in srgb,var(--role-resource) 55%,var(--line-strong))}}.app-track-segment-pact{border-color:var(--role-arcane);background:var(--role-arcane)}@supports (color: color-mix(in lab,red,red)){.app-track-segment-pact{border-color:color-mix(in srgb,var(--role-arcane) 55%,var(--line-strong))}}.app-chip{display:inline-flex;min-height:1.9rem;align-items:center;gap:.35rem;border:1px solid var(--line-soft);border-radius:999px;background:var(--surface-inset);padding:.25rem .65rem;color:var(--ink-secondary);font-size:.75rem;font-weight:700}.app-chip-active{border-color:var(--line-accent);background:var(--surface-spotlight);color:var(--ink-primary)}.app-chip-completed{border-color:#34d399;background:var(--color-app-success-soft);color:var(--color-app-success)}@supports (color: color-mix(in lab,red,red)){.app-chip-completed{border-color:color-mix(in srgb,var(--color-app-success) 62%,var(--line-soft))}}.app-chip-check{display:inline-grid;height:1rem;width:1rem;place-items:center;border-radius:999px;background:var(--color-app-success);color:#071b13;font-size:.7rem;font-weight:800;line-height:1}.app-source-badge{display:inline-flex;align-items:center;border:1px solid var(--line-soft);border-radius:999px;background:var(--surface-inset);padding:.18rem .5rem;color:var(--ink-subtle);font-size:.65rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.app-source-badge-custom{border-color:var(--role-item);background:var(--role-item-soft);color:var(--role-item)}@supports (color: color-mix(in lab,red,red)){.app-source-badge-custom{border-color:color-mix(in srgb,var(--role-item) 45%,var(--line-soft))}}.app-reference-detail .app-source-badge.app-role-arcane{border-color:var(--role-arcane);background:var(--role-arcane-soft);color:var(--role-arcane)}@supports (color: color-mix(in lab,red,red)){.app-reference-detail .app-source-badge.app-role-arcane{border-color:color-mix(in srgb,var(--role-arcane) 45%,var(--line-soft))}}.app-reference-detail .app-source-badge.app-role-resource{border-color:var(--role-resource);background:var(--role-resource-soft);color:var(--role-resource)}@supports (color: color-mix(in lab,red,red)){.app-reference-detail .app-source-badge.app-role-resource{border-color:color-mix(in srgb,var(--role-resource) 45%,var(--line-soft))}}.app-reference-detail .app-source-badge.app-role-defense{border-color:var(--role-defense);background:var(--role-defense-soft);color:var(--role-defense)}@supports (color: color-mix(in lab,red,red)){.app-reference-detail .app-source-badge.app-role-defense{border-color:color-mix(in srgb,var(--role-defense) 45%,var(--line-soft))}}.app-reference-detail .app-source-badge.app-role-item{border-color:var(--role-item);background:var(--role-item-soft);color:var(--role-item)}@supports (color: color-mix(in lab,red,red)){.app-reference-detail .app-source-badge.app-role-item{border-color:color-mix(in srgb,var(--role-item) 45%,var(--line-soft))}}.app-sheet-drawer{border:1px solid var(--line-accent);border-radius:1.1rem;background:var(--surface-raised);box-shadow:0 24px 60px #00000059}.app-choice-tile{display:block;min-height:100%;border:1px solid var(--line-soft);border-radius:.9rem;background:var(--surface-folio);padding:1rem;text-align:left;transition:border-color .15s ease,background-color .15s ease,transform .15s ease}.app-choice-tile:disabled{border-color:var(--line-soft);background:var(--surface-inset);color:var(--ink-subtle);opacity:.48;transform:none}.app-choice-tile-selection{min-height:5.5rem;padding-right:3.25rem}.app-choice-tile-selected{border-color:var(--color-app-success);background:linear-gradient(135deg,var(--color-app-success-soft),transparent 72%),var(--surface-spotlight);box-shadow:0 0 0 2px color-mix(in srgb,#34d399 24%,transparent)}@supports (color: color-mix(in lab,red,red)){.app-choice-tile-selected{box-shadow:0 0 0 2px color-mix(in srgb,var(--color-app-success) 24%,transparent)}}.app-choice-check{position:absolute;top:.75rem;right:.75rem;display:grid;height:1.6rem;width:1.6rem;place-items:center;border-radius:999px;background:var(--color-app-success);color:#071b13;font-size:1rem;font-weight:800;line-height:1;box-shadow:0 0 0 3px var(--color-app-success-soft)}.app-choice-tile:hover,.app-choice-tile:focus-visible,.app-choice-tile-selected{border-color:var(--line-accent);background:var(--surface-spotlight);transform:translateY(-1px)}.app-card{border-color:var(--line-soft);border-radius:.9rem;background:var(--surface-folio);box-shadow:none}.app-empty-state{position:relative;isolation:isolate;overflow:hidden;border:1px solid #8b5cf6;border-radius:1.1rem;background:radial-gradient(ellipse at 8% 0%,color-mix(in srgb,#8b5cf6 10%,transparent),transparent 48%),linear-gradient(135deg,var(--surface-spotlight),transparent 70%),var(--surface-folio);padding:clamp(1.5rem,5vw,3rem) 1.25rem;box-shadow:inset 0 1px color-mix(in srgb,#f5f2f8 4%,transparent),0 10px 28px color-mix(in srgb,#8b5cf6 5%,transparent)}@supports (color: color-mix(in lab,red,red)){.app-empty-state{border:1px solid color-mix(in srgb,var(--color-app-primary) 26%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-empty-state{background:radial-gradient(ellipse at 8% 0%,color-mix(in srgb,var(--color-app-primary) 10%,transparent),transparent 48%),linear-gradient(135deg,var(--surface-spotlight),transparent 70%),var(--surface-folio)}}@supports (color: color-mix(in lab,red,red)){.app-empty-state{box-shadow:inset 0 1px color-mix(in srgb,var(--color-app-text) 4%,transparent),0 10px 28px color-mix(in srgb,var(--color-app-primary) 5%,transparent)}}.app-empty-state.text-left{text-align:left}.app-empty-state:not(:has(.app-empty-state-mark)):before{display:grid;width:3rem;height:3rem;place-items:center;margin:0 auto 1rem;border:1px solid var(--line-accent);border-radius:50%;background:radial-gradient(circle,var(--surface-spotlight),var(--color-app-primary-soft));box-shadow:0 0 0 .35rem color-mix(in srgb,#8b5cf6 5%,transparent);color:var(--color-app-primary-hover);content:"\2727";font-size:1.4rem}@supports (color: color-mix(in lab,red,red)){.app-empty-state:not(:has(.app-empty-state-mark)):before{box-shadow:0 0 0 .35rem color-mix(in srgb,var(--color-app-primary) 5%,transparent)}}.app-empty-state.text-left:not(:has(.app-empty-state-mark)):before{margin-inline:0}.app-empty-state-mark{position:relative;border:1px solid #8b5cf6;background:radial-gradient(circle at 35% 25%,var(--surface-spotlight),var(--color-app-primary-soft));color:var(--color-app-primary-hover);box-shadow:0 0 0 .35rem color-mix(in srgb,#8b5cf6 5%,transparent),0 8px 20px color-mix(in srgb,#8b5cf6 10%,transparent)}@supports (color: color-mix(in lab,red,red)){.app-empty-state-mark{border:1px solid color-mix(in srgb,var(--color-app-primary) 34%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-empty-state-mark{box-shadow:0 0 0 .35rem color-mix(in srgb,var(--color-app-primary) 5%,transparent),0 8px 20px color-mix(in srgb,var(--color-app-primary) 10%,transparent)}}.app-empty-state h1,.app-empty-state h2{letter-spacing:-.02em;line-height:1.25}.app-empty-state .app-button{min-height:2.75rem;align-items:center}.app-empty-state .app-button-primary{box-shadow:0 5px 16px color-mix(in srgb,#8b5cf6 16%,transparent)}@supports (color: color-mix(in lab,red,red)){.app-empty-state .app-button-primary{box-shadow:0 5px 16px color-mix(in srgb,var(--color-app-primary) 16%,transparent)}}.app-loading-state{display:flex;min-height:8rem;align-items:center;gap:.75rem;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);color:var(--ink-secondary)}.app-loading-state:before{width:.65rem;height:.65rem;flex:0 0 auto;border:2px solid var(--line-accent);border-top-color:var(--color-app-primary);border-radius:999px;animation:app-loading-spin .72s linear infinite;content:""}.builder-class-grants-skeleton-list{display:grid;gap:.5rem}.builder-class-grants-skeleton-row{display:grid;min-height:3.6rem;grid-template-columns:1.25rem minmax(0,1fr);align-items:center;gap:.75rem;border:1px solid #8b5cf6;border-radius:.75rem;background:linear-gradient(135deg,var(--surface-spotlight),var(--surface-folio));padding:.7rem .8rem}@supports (color: color-mix(in lab,red,red)){.builder-class-grants-skeleton-row{border:1px solid color-mix(in srgb,var(--color-app-primary) 14%,var(--line-soft))}}.builder-class-grants-skeleton-chevron{width:.55rem;height:.55rem;border-right:2px solid #8b5cf6;border-bottom:2px solid #8b5cf6;transform:rotate(-45deg)}@supports (color: color-mix(in lab,red,red)){.builder-class-grants-skeleton-chevron{border-right:2px solid color-mix(in srgb,var(--color-app-primary) 62%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.builder-class-grants-skeleton-chevron{border-bottom:2px solid color-mix(in srgb,var(--color-app-primary) 62%,var(--line-soft))}}.builder-class-grants-skeleton-copy{display:grid;gap:.48rem}.builder-class-grants-skeleton-line{position:relative;display:block;height:.6rem;overflow:hidden;border-radius:999px;background:var(--surface-inset)}@supports (color: color-mix(in lab,red,red)){.builder-class-grants-skeleton-line{background:color-mix(in srgb,var(--surface-inset) 84%,var(--line-soft))}}.builder-class-grants-skeleton-line:after{position:absolute;inset:0 auto 0 -52%;width:52%;background:linear-gradient(90deg,transparent,color-mix(in srgb,#a78bfa 44%,transparent),transparent);content:""}@supports (color: color-mix(in lab,red,red)){.builder-class-grants-skeleton-line:after{background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--color-app-primary-hover) 44%,transparent),transparent)}}.builder-class-grants-skeleton-title{width:54%;height:.72rem}.builder-class-grants-skeleton-meta{width:30%}:root[data-motion=full] .builder-class-grants-skeleton-line:after{animation:builder-class-grants-shimmer 1.85s ease-in-out infinite}:root[data-motion=reduced] .builder-class-grants-skeleton-line{animation:builder-class-grants-breathe 2.6s ease-in-out infinite;animation-duration:2.6s!important;animation-iteration-count:infinite!important}@keyframes builder-class-grants-shimmer{0%{transform:translate(0)}to{transform:translate(295%)}}@keyframes builder-class-grants-breathe{0%,to{opacity:.76}50%{opacity:1}}@keyframes app-loading-spin{to{transform:rotate(360deg)}}.app-error-state{position:relative;border:1px solid var(--role-danger);border-left:3px solid var(--role-danger);border-radius:.75rem;background:radial-gradient(ellipse at 0 0,var(--role-danger),transparent 48%),var(--role-danger-soft);padding:.8rem 1rem;color:var(--ink-primary);box-shadow:inset 0 1px color-mix(in srgb,#f5f2f8 3%,transparent)}@supports (color: color-mix(in lab,red,red)){.app-error-state{border:1px solid color-mix(in srgb,var(--role-danger) 40%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-error-state{background:radial-gradient(ellipse at 0 0,color-mix(in srgb,var(--role-danger) 9%,transparent),transparent 48%),var(--role-danger-soft)}}@supports (color: color-mix(in lab,red,red)){.app-error-state{box-shadow:inset 0 1px color-mix(in srgb,var(--color-app-text) 3%,transparent)}}.app-error-state:not(:has(svg)):before{display:inline-grid;width:1.45rem;height:1.45rem;place-items:center;margin-inline-end:.55rem;border:1px solid var(--role-danger);border-radius:50%;background:var(--role-danger-soft);color:var(--role-danger);content:"!";font-size:.85rem;font-weight:800;line-height:1;vertical-align:middle}@supports (color: color-mix(in lab,red,red)){.app-error-state:not(:has(svg)):before{border:1px solid color-mix(in srgb,var(--role-danger) 48%,transparent)}}@supports (color: color-mix(in lab,red,red)){.app-error-state:not(:has(svg)):before{background:color-mix(in srgb,var(--role-danger-soft) 76%,var(--surface-spotlight))}}.app-notice-state{position:relative;border:1px solid var(--role-warning);border-left:3px solid var(--role-warning);border-radius:.75rem;background:radial-gradient(ellipse at 0 0,var(--role-warning),transparent 48%),var(--role-warning-soft);padding:.8rem 1rem;color:var(--ink-primary);box-shadow:inset 0 1px color-mix(in srgb,#f5f2f8 3%,transparent)}@supports (color: color-mix(in lab,red,red)){.app-notice-state{border:1px solid color-mix(in srgb,var(--role-warning) 40%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-notice-state{background:radial-gradient(ellipse at 0 0,color-mix(in srgb,var(--role-warning) 9%,transparent),transparent 48%),var(--role-warning-soft)}}@supports (color: color-mix(in lab,red,red)){.app-notice-state{box-shadow:inset 0 1px color-mix(in srgb,var(--color-app-text) 3%,transparent)}}.app-notice-state:not(:has(svg)):before{display:inline-grid;width:1.45rem;height:1.45rem;place-items:center;margin-inline-end:.55rem;border:1px solid var(--role-warning);border-radius:50%;background:var(--role-warning-soft);color:var(--role-warning);content:"!";font-size:.8rem;line-height:1;vertical-align:middle}@supports (color: color-mix(in lab,red,red)){.app-notice-state:not(:has(svg)):before{border:1px solid color-mix(in srgb,var(--role-warning) 48%,transparent)}}@supports (color: color-mix(in lab,red,red)){.app-notice-state:not(:has(svg)):before{background:color-mix(in srgb,var(--role-warning-soft) 76%,var(--surface-spotlight))}}.app-status-surface[role=status]:not(:has(svg)):before,.app-status-surface[role=note]:not(:has(svg)):before{display:inline-grid;width:1.35rem;height:1.35rem;place-items:center;margin-inline-end:.5rem;border:1px solid #8b5cf6;border-radius:50%;background:#8b5cf62e;color:var(--color-app-primary-hover);content:"i";font-size:.75rem;font-weight:750;line-height:1;vertical-align:middle}@supports (color: color-mix(in lab,red,red)){.app-status-surface[role=status]:not(:has(svg)):before,.app-status-surface[role=note]:not(:has(svg)):before{border:1px solid color-mix(in srgb,var(--color-app-primary) 36%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-status-surface[role=status]:not(:has(svg)):before,.app-status-surface[role=note]:not(:has(svg)):before{background:color-mix(in srgb,var(--color-app-primary-soft) 62%,var(--surface-spotlight))}}.app-status-surface-warning[role=status]:not(:has(svg)):before,.app-status-surface-warning[role=note]:not(:has(svg)):before{border-color:var(--role-warning);background:var(--role-warning-soft);color:var(--role-warning);content:"!"}@supports (color: color-mix(in lab,red,red)){.app-status-surface-warning[role=status]:not(:has(svg)):before,.app-status-surface-warning[role=note]:not(:has(svg)):before{border-color:color-mix(in srgb,var(--role-warning) 42%,var(--line-soft))}}.app-status-surface-danger[role=status]:not(:has(svg)):before,.app-status-surface-danger[role=note]:not(:has(svg)):before{border-color:var(--role-danger);background:var(--role-danger-soft);color:var(--role-danger);content:"!"}@supports (color: color-mix(in lab,red,red)){.app-status-surface-danger[role=status]:not(:has(svg)):before,.app-status-surface-danger[role=note]:not(:has(svg)):before{border-color:color-mix(in srgb,var(--role-danger) 42%,var(--line-soft))}}.app-status-surface-arcane[role=status]:not(:has(svg)):before,.app-status-surface-arcane[role=note]:not(:has(svg)):before{content:"\2727"}.app-status-surface-resource[role=status]:not(:has(svg)):before,.app-status-surface-resource[role=note]:not(:has(svg)):before{border-color:var(--role-resource);background:var(--role-resource-soft);color:var(--role-resource);content:"\25c8"}@supports (color: color-mix(in lab,red,red)){.app-status-surface-resource[role=status]:not(:has(svg)):before,.app-status-surface-resource[role=note]:not(:has(svg)):before{border-color:color-mix(in srgb,var(--role-resource) 42%,var(--line-soft))}}@keyframes app-state-enter{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes app-state-mark-enter{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}:root[data-motion=full] .app-empty-state{animation:app-state-enter .24s cubic-bezier(.2,.75,.25,1) both}:root[data-motion=full] .app-empty-state-mark,:root[data-motion=full] .app-empty-state:not(:has(.app-empty-state-mark)):before{animation:app-state-mark-enter .28s cubic-bezier(.2,.75,.25,1) 35ms both}:root[data-motion=full] .app-inline-empty,:root[data-motion=full] .app-error-state,:root[data-motion=full] .app-notice-state{animation:app-state-enter .22s cubic-bezier(.2,.75,.25,1) both}:root[data-motion=reduced] .app-empty-state,:root[data-motion=reduced] .app-empty-state-mark,:root[data-motion=reduced] .app-empty-state:before,:root[data-motion=reduced] .app-inline-empty,:root[data-motion=reduced] .app-error-state,:root[data-motion=reduced] .app-notice-state{animation:none!important;transform:none!important}.app-placeholder-panel{display:grid;gap:1.25rem;border:1px solid var(--line-soft);border-radius:1rem;background:var(--surface-folio);padding:clamp(1rem,4vw,1.5rem)}.app-placeholder-mark{display:inline-flex;width:2.5rem;height:2.5rem;align-items:center;justify-content:center;border:1px solid var(--line-accent);border-radius:.75rem;background:var(--surface-spotlight);color:var(--color-app-primary-hover);font-weight:850}.app-language-choice-selected{border-color:var(--color-app-primary);background:linear-gradient(135deg,var(--color-app-primary-soft),transparent 82%),var(--surface-spotlight);box-shadow:0 0 0 2px color-mix(in srgb,#8b5cf6 20%,transparent);font-weight:700}@supports (color: color-mix(in lab,red,red)){.app-language-choice-selected{box-shadow:0 0 0 2px color-mix(in srgb,var(--color-app-primary) 20%,transparent)}}.app-language-choice-selected strong{color:var(--color-app-primary-hover)}.app-language-choice:active{transform:scale(.975)}.app-language-choice-check{margin-left:auto;color:var(--color-app-primary-hover)}.app-motion-choice,.app-theme-choice,.app-font-choice{display:flex;min-width:0;align-items:center;gap:.8rem;border:1px solid var(--line-soft);border-radius:.9rem;background:var(--surface-folio);padding:.82rem;text-align:left;transition:transform .16s cubic-bezier(.2,.7,.2,1),border-color .17s ease,background-color .17s ease,box-shadow .17s ease}.app-motion-choice:hover,.app-theme-choice:hover,.app-font-choice:hover{transform:translateY(-1px)}.app-motion-choice:active,.app-theme-choice:active,.app-font-choice:active{transform:scale(.985)}.app-motion-choice:hover,.app-motion-choice:focus-visible,.app-theme-choice:hover,.app-theme-choice:focus-visible,.app-font-choice:hover,.app-font-choice:focus-visible{border-color:var(--line-accent);background:var(--surface-spotlight)}.app-theme-choice-selected,.app-font-choice-selected,.app-motion-choice.app-theme-choice-selected{border-color:var(--color-app-primary);background:linear-gradient(135deg,var(--color-app-primary-soft),transparent 75%),var(--surface-spotlight);box-shadow:0 0 0 1px color-mix(in srgb,#8b5cf6 50%,transparent),0 7px 20px color-mix(in srgb,#8b5cf6 9%,transparent)}@supports (color: color-mix(in lab,red,red)){.app-theme-choice-selected,.app-font-choice-selected,.app-motion-choice.app-theme-choice-selected{box-shadow:0 0 0 1px color-mix(in srgb,var(--color-app-primary) 50%,transparent),0 7px 20px color-mix(in srgb,var(--color-app-primary) 9%,transparent)}}.app-motion-choice{min-height:8.25rem;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:.65rem}.app-motion-choice-top{display:flex;align-items:center;justify-content:space-between}.app-motion-symbol{display:inline-flex;width:2.2rem;height:2.2rem;align-items:center;justify-content:center;border:1px solid var(--line-soft);border-radius:.7rem;background:var(--surface-inset);color:var(--color-app-primary-hover)}.app-motion-indicator{width:.45rem;height:.45rem;border-radius:50%;background:var(--color-app-subtle)}.app-motion-indicator-active{background:var(--color-app-primary-hover);box-shadow:0 0 0 .2rem var(--color-app-primary-soft)}.app-motion-indicator-calm{background:var(--color-app-success)}:root[data-motion=full] .app-motion-indicator-active{animation:app-motion-indicator 1.8s ease-in-out infinite}@keyframes app-motion-indicator{50%{box-shadow:0 0 0 .38rem transparent}}.app-motion-choice-label{color:var(--ink-primary);font-size:.85rem}.app-motion-choice-description{color:var(--ink-secondary);font-size:.73rem;line-height:1.5}.app-theme-choice{min-height:5.35rem;width:100%}.app-theme-choice-copy,.app-font-choice-copy{display:grid;min-width:0;gap:.22rem}.app-theme-choice-copy strong,.app-font-choice-copy strong{color:var(--ink-primary);font-size:.8rem;font-weight:700;line-height:1.35}.app-theme-description,.app-font-description{color:var(--ink-secondary);font-size:.69rem;line-height:1.45}.app-theme-preview{position:relative;display:block;width:3.15rem;height:2.75rem;flex:0 0 auto;overflow:hidden;border:1px solid var(--preview-accent);border-radius:.68rem;background:var(--preview-bg);box-shadow:inset 0 0 0 1px #ffffff0a}@supports (color: color-mix(in lab,red,red)){.app-theme-preview{border:1px solid color-mix(in srgb,var(--preview-accent) 50%,var(--line-strong))}}.app-theme-preview-surface{position:absolute;inset:.48rem .4rem .4rem;border:1px solid var(--preview-accent);border-radius:.35rem;background:var(--preview-surface)}@supports (color: color-mix(in lab,red,red)){.app-theme-preview-surface{border:1px solid color-mix(in srgb,var(--preview-accent) 24%,transparent)}}.app-theme-preview-accent{position:absolute;right:.3rem;top:.27rem;width:.65rem;height:.35rem;border-radius:999px;background:var(--preview-accent)}.app-theme-preview-midnight-violet{--preview-bg: #11101a;--preview-surface: #272236;--preview-accent: #9a72ed}.app-theme-preview-forest-night{--preview-bg: #101e19;--preview-surface: #1d342b;--preview-accent: #43b99a}.app-theme-preview-ember-night{--preview-bg: #1a120f;--preview-surface: #33231c;--preview-accent: #e77a32}.app-theme-preview-rose-night{--preview-bg: #1c111b;--preview-surface: #352333;--preview-accent: #da729f}.app-theme-preview-arcane-tide{--preview-bg: #0d1922;--preview-surface: #1b3140;--preview-accent: #55bad0}.app-theme-preview-gilded-tome{--preview-bg: #1c1912;--preview-surface: #352e21;--preview-accent: #c9a34f}.app-theme-preview-frostbound-sigil{--preview-bg: #151e25;--preview-surface: #293944;--preview-accent: #8ebfd7}.app-theme-preview[data-mode=light]{--preview-bg: #f0eee9;--preview-surface: #fffefa}.app-settings-theme-group{margin-top:1.4rem}.app-settings-theme-group-heading{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.9rem}.app-settings-subtitle{display:flex;min-width:0;align-items:center;flex-wrap:wrap;gap:.55rem;color:var(--ink-primary);font-size:.92rem;font-weight:750}.app-settings-theme-group .app-appearance-control{margin:0}.app-settings-theme-group .app-appearance-label{font-size:.68rem}.app-special-theme-badge,.app-special-pro-badge,.app-special-theme-pro-mark{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;border:1px solid var(--color-app-primary-border);border-radius:999px;background:var(--color-app-primary-soft);color:var(--color-app-primary-hover);font-size:.62rem;font-weight:750;line-height:1}.app-special-theme-badge,.app-special-pro-badge{padding:.35rem .55rem}.app-settings-special-heading{align-items:flex-start}.app-settings-special-heading .app-settings-description{max-width:43rem;margin-top:.38rem}.app-settings-special-theme-group{padding-top:1.3rem;border-top:1px solid var(--line-soft)}.app-special-pro-badge{flex:0 0 auto;margin-top:.08rem}.app-special-pro-badge-active{border-color:#34d399;background:var(--color-app-success-soft);color:var(--color-app-success)}@supports (color: color-mix(in lab,red,red)){.app-special-pro-badge-active{border-color:color-mix(in srgb,var(--color-app-success) 48%,var(--line-strong))}}.app-special-pro-badge-locked{border-color:#fb7185;background:var(--color-app-danger-soft);color:var(--color-app-danger);text-decoration:none;transition:background-color .15s ease,border-color .15s ease,color .15s ease}@supports (color: color-mix(in lab,red,red)){.app-special-pro-badge-locked{border-color:color-mix(in srgb,var(--color-app-danger) 48%,var(--line-strong))}}.app-special-pro-badge-locked:hover,.app-special-pro-badge-locked:focus-visible{border-color:var(--color-app-danger);background:#fb7185;color:var(--color-app-danger)}@supports (color: color-mix(in lab,red,red)){.app-special-pro-badge-locked:hover,.app-special-pro-badge-locked:focus-visible{background:color-mix(in srgb,var(--color-app-danger) 20%,var(--surface-folio))}}.app-special-pro-badge-locked:focus-visible{outline:2px solid var(--color-app-danger);outline-offset:2px}.app-special-theme-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,17.5rem),1fr));align-items:start;gap:.8rem}.app-special-theme-family{display:grid;min-width:0;gap:.8rem;padding:.8rem;border:1px solid var(--line-soft);border-radius:1rem;background:var(--surface-folio);transition:border-color .19s ease,background-color .19s ease,box-shadow .19s ease}.app-special-theme-family-active{border-color:var(--color-app-primary);background:#8b5cf62e;box-shadow:0 0 0 1px color-mix(in srgb,#8b5cf6 22%,transparent)}@supports (color: color-mix(in lab,red,red)){.app-special-theme-family-active{background:color-mix(in srgb,var(--color-app-primary-soft) 55%,var(--surface-folio))}}@supports (color: color-mix(in lab,red,red)){.app-special-theme-family-active{box-shadow:0 0 0 1px color-mix(in srgb,var(--color-app-primary) 22%,transparent)}}:root[data-special-theme=synthwave-84] .app-special-theme-family-active{box-shadow:0 0 0 1px color-mix(in srgb,#8b5cf6 22%,transparent),0 0 14px color-mix(in srgb,#8b5cf6 12%,transparent)}@supports (color: color-mix(in lab,red,red)){:root[data-special-theme=synthwave-84] .app-special-theme-family-active{box-shadow:0 0 0 1px color-mix(in srgb,var(--color-app-primary) 22%,transparent),0 0 14px color-mix(in srgb,var(--color-app-primary) 12%,transparent)}}.app-special-theme-family-top{display:grid;min-width:0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.7rem}.app-special-theme-family-title{display:grid;min-width:0;gap:.2rem}.app-special-theme-family-title strong{color:var(--ink-primary);font-size:.82rem;line-height:1.3}.app-special-theme-family-title>span{color:var(--ink-secondary);font-size:.67rem;line-height:1.3}.app-special-theme-pro-mark{width:1.65rem;height:1.65rem;color:var(--color-app-primary-hover)}.app-special-theme-pro-mark-active{border-color:#34d399;background:var(--color-app-success-soft);color:var(--color-app-success)}@supports (color: color-mix(in lab,red,red)){.app-special-theme-pro-mark-active{border-color:color-mix(in srgb,var(--color-app-success) 48%,var(--line-strong))}}.app-special-theme-pro-mark-locked{border-color:#fb7185;background:var(--color-app-danger-soft);color:var(--color-app-danger)}@supports (color: color-mix(in lab,red,red)){.app-special-theme-pro-mark-locked{border-color:color-mix(in srgb,var(--color-app-danger) 48%,var(--line-strong))}}.app-special-theme-palette{display:grid;width:5.3rem;height:1.05rem;grid-template-columns:repeat(6,minmax(0,1fr));gap:.13rem;overflow:hidden;border:1px solid var(--special-palette-text);border-radius:999px;background:var(--special-palette-bg)}@supports (color: color-mix(in lab,red,red)){.app-special-theme-palette{border:1px solid color-mix(in srgb,var(--special-palette-text) 22%,transparent)}}.app-special-theme-palette>span{min-width:0;background:var(--special-palette-bg)}.app-special-theme-palette>span:nth-child(2){background:var(--special-palette-surface)}.app-special-theme-palette>span:nth-child(3){background:var(--special-palette-accent)}.app-special-theme-palette>span:nth-child(4){background:var(--special-palette-secondary)}.app-special-theme-palette>span:nth-child(5){background:var(--special-palette-text)}.app-special-theme-palette>span:nth-child(6){background:var(--special-palette-tertiary)}.app-special-theme-palette-catppuccin-latte{--special-palette-bg: #eff1f5;--special-palette-surface: #ccd0da;--special-palette-accent: #8839ef;--special-palette-secondary: #1e66f5;--special-palette-text: #4c4f69;--special-palette-tertiary: #40a02b}.app-special-theme-palette-catppuccin-frappe{--special-palette-bg: #303446;--special-palette-surface: #414559;--special-palette-accent: #ca9ee6;--special-palette-secondary: #81c8be;--special-palette-text: #c6d0f5;--special-palette-tertiary: #a6d189}.app-special-theme-palette-catppuccin-macchiato{--special-palette-bg: #24273a;--special-palette-surface: #363a4f;--special-palette-accent: #c6a0f6;--special-palette-secondary: #8bd5ca;--special-palette-text: #cad3f5;--special-palette-tertiary: #a6da95}.app-special-theme-palette-catppuccin-mocha{--special-palette-bg: #1e1e2e;--special-palette-surface: #313244;--special-palette-accent: #cba6f7;--special-palette-secondary: #94e2d5;--special-palette-text: #cdd6f4;--special-palette-tertiary: #a6e3a1}.app-special-theme-palette-tokyo-night{--special-palette-bg: #1a1b26;--special-palette-surface: #16161e;--special-palette-accent: #7aa2f7;--special-palette-secondary: #f7768e;--special-palette-text: #a9b1d6;--special-palette-tertiary: #73daca}.app-special-theme-palette-tokyo-night-storm{--special-palette-bg: #24283b;--special-palette-surface: #1f2335;--special-palette-accent: #7aa2f7;--special-palette-secondary: #f7768e;--special-palette-text: #a9b1d6;--special-palette-tertiary: #73daca}.app-special-theme-palette-tokyo-night-light{--special-palette-bg: #e6e7ed;--special-palette-surface: #d6d8df;--special-palette-accent: #2959aa;--special-palette-secondary: #8c4351;--special-palette-text: #343b59;--special-palette-tertiary: #385f0d}.app-special-theme-palette-synthwave-84{--special-palette-bg: #262335;--special-palette-surface: #34294f;--special-palette-accent: #ff7edb;--special-palette-secondary: #03edf9;--special-palette-text: #ffffff;--special-palette-tertiary: #72f1b8}.app-special-theme-palette-one-dark-pro{--special-palette-bg: #282c34;--special-palette-surface: #21252b;--special-palette-accent: #61afef;--special-palette-secondary: #e5c07b;--special-palette-text: #abb2bf;--special-palette-tertiary: #98c379}.app-special-theme-palette-radical{--special-palette-bg: #100f1a;--special-palette-surface: #1c1a30;--special-palette-accent: #ff428e;--special-palette-secondary: #a8ffef;--special-palette-text: #94b4c4;--special-palette-tertiary: #dff959}.app-special-theme-expand{display:flex;min-height:2.65rem;width:100%;align-items:center;justify-content:space-between;gap:.6rem;border:1px solid var(--line-soft);border-radius:.7rem;background:var(--surface-inset);padding:.55rem .7rem;color:var(--ink-secondary);font-size:.72rem;font-weight:700;text-align:left;text-decoration:none;transition:border-color .16s ease,background-color .16s ease,color .16s ease,transform .16s ease}.app-special-theme-expand:hover,.app-special-theme-expand:focus-visible{border-color:var(--color-app-primary-border);background:var(--surface-spotlight);color:var(--ink-primary)}.app-special-theme-expand:focus-visible,.app-special-theme-variant:focus-visible{outline:2px solid var(--color-app-focus);outline-offset:2px}.app-special-theme-expand-selected{border-color:var(--color-app-primary-border);color:var(--color-app-primary-hover)}.app-special-theme-upgrade{justify-content:center;border-color:#fb7185;color:var(--color-app-danger)}@supports (color: color-mix(in lab,red,red)){.app-special-theme-upgrade{border-color:color-mix(in srgb,var(--color-app-danger) 48%,var(--line-soft))}}.app-special-theme-upgrade:hover,.app-special-theme-upgrade:focus-visible{border-color:var(--color-app-danger);background:var(--color-app-danger-soft);color:var(--color-app-danger)}.app-special-theme-variants{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;padding-top:.7rem;border-top:1px solid var(--line-soft)}:root[data-motion=full] .app-special-theme-variants{animation:app-special-theme-reveal .19s cubic-bezier(.2,.7,.2,1) both}@keyframes app-special-theme-reveal{0%{transform:translateY(-.25rem);opacity:0}to{transform:translateY(0);opacity:1}}.app-special-theme-variant{display:grid;min-width:0;min-height:5.8rem;align-content:start;gap:.48rem;border:1px solid var(--line-soft);border-radius:.75rem;background:var(--surface-folio);padding:.65rem;color:var(--ink-primary);text-align:left;text-decoration:none;transition:transform .17s ease,border-color .17s ease,background-color .17s ease,box-shadow .17s ease}.app-special-theme-variant:hover{transform:translateY(-1px);border-color:var(--color-app-primary-border)}.app-special-theme-variant-selected{border-color:var(--color-app-primary);background:#8b5cf62e;box-shadow:inset 0 0 0 1px color-mix(in srgb,#8b5cf6 20%,transparent)}@supports (color: color-mix(in lab,red,red)){.app-special-theme-variant-selected{background:color-mix(in srgb,var(--color-app-primary-soft) 50%,var(--surface-folio))}}@supports (color: color-mix(in lab,red,red)){.app-special-theme-variant-selected{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-app-primary) 20%,transparent)}}.app-special-theme-variant .app-special-theme-palette{width:100%;height:1.15rem}.app-special-theme-variant>strong{overflow-wrap:anywhere;font-size:.7rem;line-height:1.35}.app-special-theme-mode,.app-special-theme-current,.app-special-theme-upgrade-label{display:inline-flex;align-items:center;gap:.3rem;color:var(--ink-secondary);font-size:.62rem;line-height:1.35}.app-special-theme-current{color:var(--color-app-primary-hover);font-weight:750}.app-special-theme-variant-locked{opacity:.84}.app-special-theme-variant-locked:hover,.app-special-theme-variant-locked:focus-visible{transform:none;border-color:var(--color-app-danger);background:var(--color-app-danger-soft);opacity:1}.app-special-theme-upgrade-label{color:var(--color-app-danger);font-weight:700}.app-special-theme-variant-locked:focus-visible{outline-color:var(--color-app-danger)}:root[data-motion=reduced] .app-special-theme-family,:root[data-motion=reduced] .app-special-theme-expand,:root[data-motion=reduced] .app-special-theme-variant,:root[data-motion=reduced] .app-special-theme-variants{animation:none;transition-duration:.01ms}:root[data-motion=reduced] .app-special-theme-variant:hover,:root[data-motion=reduced] .app-special-theme-expand:active{transform:none}.app-theme-choice-locked{opacity:.78;filter:grayscale(.55);color:var(--color-app-muted);cursor:pointer;text-decoration:none;transition:background-color .15s ease,border-color .15s ease,filter .15s ease,opacity .15s ease}.app-theme-choice-locked .app-pro-option-label{color:var(--color-app-danger)}.app-theme-choice-locked:hover,.app-theme-choice-locked:focus-visible{border-color:var(--color-app-danger);background:var(--color-app-danger-soft);opacity:1;filter:grayscale(.15)}.app-theme-choice-locked:focus-visible{outline:2px solid var(--color-app-danger);outline-offset:2px}.app-theme-choice-locked:hover .app-pro-option-label,.app-theme-choice-locked:focus-visible .app-pro-option-label{color:var(--color-app-danger)}.app-font-preview{display:inline-flex;width:2.7rem;height:2.7rem;flex:0 0 auto;align-items:center;justify-content:center;border:1px solid var(--line-strong);border-radius:.75rem;background:var(--surface-inset);color:var(--ink-primary);font-size:1.35rem;font-weight:700}.app-font-choice{min-height:6.1rem;width:100%}.app-font-sample{margin-top:.1rem;color:var(--color-app-muted);font-size:.72rem;line-height:1.35}.app-font-family-ibm-plex-sans .app-font-preview,.app-font-family-ibm-plex-sans .app-font-sample{font-family:IBM Plex Sans,sans-serif}.app-font-family-krypton .app-font-preview,.app-font-family-krypton .app-font-sample{font-family:Monaspace Krypton,ui-monospace,monospace}.app-font-family-radon .app-font-preview,.app-font-family-radon .app-font-sample{font-family:Monaspace Radon,ui-monospace,monospace}.app-font-family-system-sans .app-font-preview,.app-font-family-system-sans .app-font-sample{font-family:ui-sans-serif,system-ui,sans-serif}.app-font-family-system-serif .app-font-preview,.app-font-family-system-serif .app-font-sample{font-family:ui-serif,Georgia,serif}.app-font-family-space-grotesk .app-font-preview,.app-font-family-space-grotesk .app-font-sample{font-family:Space Grotesk,sans-serif}.app-font-family-jetbrains-mono .app-font-preview,.app-font-family-jetbrains-mono .app-font-sample{font-family:JetBrains Mono,monospace}.app-font-family-atkinson-mono .app-font-preview,.app-font-family-atkinson-mono .app-font-sample{font-family:Atkinson Hyperlegible Mono,monospace}.app-theme-check{display:inline-flex;width:1.65rem;height:1.65rem;flex:0 0 auto;align-items:center;justify-content:center;margin-left:auto;border-radius:50%;background:var(--color-app-primary-soft);color:var(--color-app-primary-hover)}.app-stat-rail-compact{grid-template-columns:repeat(2,minmax(0,1fr))}.app-dialog,.app-menu-surface{border-color:var(--line-accent);background:var(--surface-raised);scrollbar-width:thin;scrollbar-color:var(--color-app-primary) transparent}.app-menu-surface::-webkit-scrollbar{width:.45rem}.app-menu-surface::-webkit-scrollbar-thumb{border-radius:999px;background:var(--color-app-primary)}.app-desktop-sidebar{scrollbar-width:thin;scrollbar-color:var(--color-app-primary) transparent}.app-desktop-sidebar::-webkit-scrollbar{width:.45rem}.app-desktop-sidebar::-webkit-scrollbar-thumb{border-radius:999px;background:var(--color-app-primary)}.app-character-hero{display:grid;grid-template-columns:minmax(0,1fr);min-width:0;align-items:flex-start;gap:1.5rem;border-bottom:1px solid var(--line-soft);padding-bottom:1.25rem}.app-character-identity,.app-character-actions,.app-character-meta{display:flex;align-items:center}.app-character-identity{min-width:0;gap:1rem}.app-character-portrait{display:block;width:4.25rem;height:4.25rem;flex:0 0 auto;border:1px solid var(--line-accent);border-radius:1rem;object-fit:cover}.app-character-initial{display:grid;place-items:center;background:var(--surface-spotlight);color:var(--color-app-primary-hover);font-size:2rem;font-weight:800}.app-character-name{margin-top:.3rem;color:var(--ink-primary);font-size:clamp(1.8rem,4vw,3rem);font-weight:750;letter-spacing:-.055em;line-height:1}.app-character-subtitle{margin-top:.5rem;color:var(--ink-secondary);font-size:.95rem}.app-character-meta{flex-wrap:wrap;gap:.45rem .8rem;margin-top:.65rem;color:var(--ink-subtle);font-size:.75rem}.app-character-meta span+span:before{margin-right:.8rem;color:var(--color-app-primary);content:"\b7"}.app-character-actions{flex:0 0 auto;flex-wrap:wrap;justify-content:flex-start;gap:.5rem}.app-character-actions .app-button{white-space:nowrap}.app-button-icon{width:1rem;height:1rem;flex:0 0 auto;stroke-width:2}.app-sheet-vitals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid var(--line-strong);border-radius:1rem;background:var(--line-soft)}.app-sheet-vital{min-width:0;background:var(--surface-folio);padding:1rem 1.1rem}.app-sheet-vital-life{background:linear-gradient(135deg,var(--role-life-soft),transparent 72%),var(--surface-folio)}.app-sheet-vital-defense{background:linear-gradient(135deg,var(--role-defense-soft),transparent 72%),var(--surface-folio)}.app-sheet-vital-resource{background:linear-gradient(135deg,var(--role-resource-soft),transparent 72%),var(--surface-folio)}.app-sheet-vital-value{display:block;margin-top:.25rem;color:var(--ink-primary);font-size:clamp(1.35rem,3vw,1.9rem);font-variant-numeric:tabular-nums;font-weight:850;letter-spacing:-.04em}.app-sheet-vital-life .app-sheet-vital-value{color:var(--role-life)}.app-sheet-vital-defense .app-sheet-vital-value{color:var(--role-defense)}.app-sheet-vital-resource .app-sheet-vital-value{color:var(--role-resource)}.app-sheet-vital-note{display:block;margin-top:.2rem;color:var(--ink-subtle);font-size:.7rem}.app-sheet-personal{border-top:1px solid var(--line-soft);padding-top:1rem}.app-sheet-section-heading-row{display:flex;align-items:baseline;gap:.75rem}.app-sheet-section-heading-row .app-section-heading{min-width:0}.app-sheet-section-caption{flex:0 0 auto;color:var(--ink-subtle);font-size:.72rem}.app-personal-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.75rem 1.25rem;margin-top:.9rem}.app-personal-fact{min-width:0;border-bottom:1px solid var(--line-soft);padding-bottom:.65rem}.app-personal-fact strong{display:block;margin-top:.3rem;color:var(--ink-primary);font-size:.92rem;font-weight:750;line-height:1.35;word-break:break-word}.app-personal-fact-wide{grid-column:span 2}.app-personal-fact-languages{grid-column:span 3}.app-sheet-layout{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;gap:1.5rem 1.75rem}.app-sheet-region{min-width:0;border-top:1px solid var(--line-soft);padding-top:1.1rem}.app-abilities-region{border-top:0;padding-top:0}.app-competencies-region{display:grid;grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 2rem}.app-competencies-region>.app-section-heading{grid-column:1 / -1}.app-competencies-region>.app-dense-list{grid-column:1 / -1}.app-competencies-region>.app-dense-list:first-of-type{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0 1rem}.app-competencies-region>.app-dense-list:nth-of-type(2){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:2rem}.app-ability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 1rem}.app-ability-score-block{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;border-bottom:1px solid var(--line-soft);padding:.7rem .2rem .8rem}.app-ability-label{grid-column:1 / -1;color:var(--ink-subtle);font-size:.68rem;font-weight:800;letter-spacing:.14em}.app-ability-score{color:var(--ink-primary);font-size:2rem;font-weight:800;letter-spacing:-.06em}.app-ability-value-line{display:flex;min-width:0;align-items:baseline;justify-content:space-between;gap:.65rem;margin-top:.15rem}.app-ability-modifier{min-width:2.5rem;border:0;border-radius:.4rem;background:var(--surface-inset);padding:.25rem .45rem;color:var(--color-app-primary-hover);font-size:1rem;text-align:center}.app-ability-input{width:4.5rem;min-height:2.25rem;margin-top:.2rem;font-size:1.15rem;font-weight:750}.app-ability-breakdown{grid-column:1 / -1;margin-top:.2rem;color:var(--ink-subtle);font-size:.68rem}.app-derived-rail{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;border-top:1px solid var(--line-soft);padding-top:1rem}.app-derived-value{display:block;margin-top:.25rem;color:var(--ink-primary);font-size:1.1rem;font-weight:750}.app-dense-list{border-top:1px solid var(--line-soft)}.app-dense-row{display:grid;grid-template-columns:1.25rem minmax(0,1fr) auto;align-items:center;gap:.5rem;min-height:2.15rem;border-bottom:1px solid var(--line-soft);color:var(--ink-primary)}.app-dense-row strong{font-variant-numeric:tabular-nums}.app-dense-name{min-width:0}.app-proficiency-mark{display:inline-flex;width:1.25rem;height:1.25rem;align-items:center;align-self:center;justify-content:center;justify-self:start;border:1px solid var(--line-soft);border-radius:.35rem;background:var(--surface-inset);color:var(--color-app-primary-hover);font-size:0;font-weight:850;line-height:1;text-align:center}.app-proficiency-mark:before{display:block;width:.45rem;height:.45rem;border:1.5px solid currentColor;border-radius:50%;content:""}.app-proficiency-mark-proficient{border-color:var(--role-resource);background:var(--role-resource-soft);color:var(--role-resource)}@supports (color: color-mix(in lab,red,red)){.app-proficiency-mark-proficient{border-color:color-mix(in srgb,var(--role-resource) 55%,var(--line-soft))}}.app-proficiency-mark-proficient:before{border-color:currentColor;background:currentColor}.app-proficiency-mark-expertise{border-color:var(--role-arcane);background:var(--role-arcane-soft);color:var(--role-arcane)}@supports (color: color-mix(in lab,red,red)){.app-proficiency-mark-expertise{border-color:color-mix(in srgb,var(--role-arcane) 55%,var(--line-soft))}}.app-proficiency-mark-expertise:before{width:.5rem;height:.5rem;border:0;border-radius:.08rem;background:currentColor;transform:rotate(45deg)}.app-proficiency-legend{display:flex;flex-wrap:wrap;gap:.75rem 1rem;margin-top:.45rem;color:var(--ink-subtle);font-size:.72rem}.app-proficiency-legend>span{display:inline-flex;align-items:center;gap:.35rem;line-height:1.25}.app-proficiency-legend .app-proficiency-mark{margin:0}.app-sheet-competency-block{min-width:0}.app-sheet-tools{display:grid;grid-column:1 / -1;grid-template-columns:repeat(12,minmax(0,1fr));gap:1.25rem 1.75rem;border-top:1px solid var(--line-strong);padding-top:1.25rem}.app-sheet-tools>section{min-width:0}.app-cockpit-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(18rem,.8fr);align-items:start;gap:1.5rem}.app-cockpit-vitals{min-width:0;border-bottom:1px solid var(--line-soft);padding-bottom:1.25rem}.app-hp-display{border-left:4px solid var(--role-life);padding:.25rem 0 .25rem 1rem}.app-hp-label{color:var(--role-life);font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.app-hp-value{display:block;margin-top:.2rem;color:var(--ink-primary);font-size:clamp(3rem,9vw,5.5rem);font-weight:850;letter-spacing:-.09em;line-height:.95}.app-hp-meta{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin-top:.65rem;color:var(--ink-secondary);font-size:.8rem}.app-cockpit-stat-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-top:1.25rem;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);padding:.8rem 0}.app-cockpit-stat-value{display:block;margin-top:.25rem;color:var(--ink-primary);font-size:1.25rem;font-weight:800}.app-cockpit-stat-defense{border:1px solid var(--role-defense);border-radius:.7rem;background:var(--role-defense);padding:.55rem .7rem}@supports (color: color-mix(in lab,red,red)){.app-cockpit-stat-defense{border:1px solid color-mix(in srgb,var(--role-defense) 42%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-cockpit-stat-defense{background:color-mix(in srgb,var(--role-defense) 10%,var(--surface-folio))}}.app-cockpit-stat-defense .app-cockpit-stat-value{font-size:clamp(1.5rem,4vw,2rem)}.app-cockpit-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;margin-top:1.25rem}.app-cockpit-action{min-height:3.25rem;border:1px solid var(--line-soft);border-radius:.65rem;background:var(--surface-folio);padding:.65rem .75rem;color:var(--ink-primary);font-size:.82rem;font-weight:750;text-align:left}.app-cockpit-action:hover,.app-cockpit-action:focus-visible{border-color:var(--line-accent);background:var(--surface-spotlight)}.app-cockpit-action-danger{border-color:var(--role-danger);color:var(--role-danger)}@supports (color: color-mix(in lab,red,red)){.app-cockpit-action-danger{border-color:color-mix(in srgb,var(--role-danger) 35%,var(--line-soft))}}.app-cockpit-context{display:grid;gap:1rem;min-width:0}.app-context-section{border-top:1px solid var(--line-soft);padding-top:.9rem}.app-context-section-critical{border-top-color:var(--role-danger);border-bottom:1px solid var(--role-danger);background:var(--role-danger-soft);padding:.9rem}@supports (color: color-mix(in lab,red,red)){.app-context-section-critical{border-bottom:1px solid color-mix(in srgb,var(--role-danger) 40%,var(--line-soft))}}.app-critical-zone{border-left:4px solid var(--role-danger);padding-left:.85rem}.app-death-save-track{display:grid;gap:.7rem}.app-death-save-group{display:grid;grid-template-columns:4.5rem minmax(0,1fr) auto;align-items:center;gap:.65rem;font-size:.78rem}.app-death-save-label{font-weight:800;text-transform:uppercase;letter-spacing:.08em}.app-death-save-successes{color:var(--role-healing)}.app-death-save-failures{color:var(--role-danger)}.app-death-save-markers{display:flex;gap:.45rem}.app-death-save-marker{width:.85rem;height:.85rem;border:2px solid currentcolor;border-radius:999px;background:transparent}.app-death-save-marker-success-filled{background:var(--role-healing);box-shadow:0 0 0 2px var(--role-healing-soft)}.app-death-save-marker-failure-filled{background:var(--role-danger);box-shadow:0 0 0 2px var(--role-danger-soft)}.app-compact-context{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.65rem;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);padding:.65rem 0;color:var(--ink-secondary);font-size:.8rem}.app-context-value{color:var(--ink-primary);font-weight:750}.app-resource-list{display:grid;gap:.25rem;border-top:1px solid var(--line-soft)}.app-resource-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.65rem;min-height:2.7rem;border-bottom:1px solid var(--line-soft)}.app-resource-main{min-width:0}.app-resource-value{white-space:nowrap}.app-resource-controls{display:flex;align-items:center;justify-content:flex-end;gap:.35rem}.app-resource-controls .app-button{min-height:2.25rem;white-space:nowrap}.app-resource-track{display:flex;gap:.2rem;margin-top:.3rem}.app-resource-dot{width:.55rem;height:.55rem;border:1px solid var(--role-resource);border-radius:999px;background:transparent}.app-resource-dot-filled{background:var(--role-resource)}.app-damage-adjustment{border-top:1px solid var(--line-soft);padding-top:.8rem}.app-damage-adjustment-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin-top:.4rem}.app-damage-adjustment-selected{border-color:var(--role-danger);background:var(--role-danger-soft);color:var(--role-danger)}.app-sheet-calculator-actions{display:flex;align-items:stretch;gap:.6rem}.app-sheet-calculator-actions .app-button{min-height:2.8rem}.app-active-condition-row{border-left:3px solid var(--role-warning);padding-left:.7rem}.app-concentration-check-cd{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--role-arcane);border-radius:.75rem;background:var(--role-arcane-soft);padding:.85rem 1rem;color:var(--ink-secondary);font-size:.82rem;font-weight:750}@supports (color: color-mix(in lab,red,red)){.app-concentration-check-cd{border:1px solid color-mix(in srgb,var(--role-arcane) 38%,var(--line-soft))}}.app-concentration-check-cd strong{color:var(--role-arcane);font-size:1.8rem;line-height:1}.app-concentration-check-actions{display:grid;grid-template-columns:1fr;gap:.6rem}.app-calculator-context-result{border:1px solid var(--role-arcane);border-radius:.85rem;background:var(--role-arcane-soft);padding:.85rem}@supports (color: color-mix(in lab,red,red)){.app-calculator-context-result{border:1px solid color-mix(in srgb,var(--role-arcane) 35%,var(--line-soft))}}.app-calculator-context-values,.app-calculator-final-value{display:flex;align-items:center;justify-content:space-between;gap:1rem}.app-calculator-context-values{color:var(--ink-secondary);font-size:.82rem}.app-calculator-context-values strong{color:var(--role-arcane);font-size:1.55rem}.app-calculator-final-value{border-top:1px solid var(--role-arcane);padding-top:.75rem;color:var(--ink-secondary);font-size:.85rem;font-weight:750}@supports (color: color-mix(in lab,red,red)){.app-calculator-final-value{border-top:1px solid color-mix(in srgb,var(--role-arcane) 28%,transparent)}}.app-calculator-final-value strong{color:var(--role-danger);font-size:1.8rem}.app-calculator-ready-indicator{display:inline-flex;min-width:0;align-items:center;gap:.38rem}.app-calculator-ready-indicator svg{flex:0 0 auto;color:var(--color-app-success)}.app-calculator-action-sheet{--calculator-action-accent: var(--role-arcane);--calculator-action-soft: var(--role-arcane-soft);border-top:2px solid var(--calculator-action-accent);background:radial-gradient(ellipse at 0 0,var(--calculator-action-accent),transparent 52%),var(--surface-raised)}@supports (color: color-mix(in lab,red,red)){.app-calculator-action-sheet{background:radial-gradient(ellipse at 0 0,color-mix(in srgb,var(--calculator-action-accent) 8%,transparent),transparent 52%),var(--surface-raised)}}.app-calculator-action-sheet-damage{--calculator-action-accent: var(--role-life);--calculator-action-soft: var(--role-life-soft)}.app-calculator-action-sheet-healing{--calculator-action-accent: var(--color-app-success);--calculator-action-soft: var(--color-app-success-soft)}.app-calculator-action-sheet-temporary{--calculator-action-accent: var(--role-temporary);--calculator-action-soft: var(--role-temporary-soft)}.app-calculator-result-heading{border-bottom:1px solid var(--calculator-action-accent);padding-bottom:.75rem}@supports (color: color-mix(in lab,red,red)){.app-calculator-result-heading{border-bottom:1px solid color-mix(in srgb,var(--calculator-action-accent) 22%,var(--line-soft))}}.app-calculator-result-label{display:inline-flex;align-items:center;gap:.38rem;color:var(--calculator-action-accent);font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.app-calculator-action-value{color:var(--calculator-action-accent)!important;font-size:clamp(2.5rem,12vw,3.1rem)!important;font-variant-numeric:tabular-nums;line-height:1!important;text-shadow:0 0 1.1rem var(--calculator-action-accent)}@supports (color: color-mix(in lab,red,red)){.app-calculator-action-value{text-shadow:0 0 1.1rem color-mix(in srgb,var(--calculator-action-accent) 15%,transparent)}}.app-calculator-context-result{border-color:var(--calculator-action-accent);background:linear-gradient(145deg,var(--calculator-action-soft),transparent 82%),var(--surface-inset)}@supports (color: color-mix(in lab,red,red)){.app-calculator-context-result{border-color:color-mix(in srgb,var(--calculator-action-accent) 34%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-calculator-context-result{background:linear-gradient(145deg,color-mix(in srgb,var(--calculator-action-soft) 76%,transparent),transparent 82%),var(--surface-inset)}}.app-calculator-context-values strong{color:var(--calculator-action-accent);font-variant-numeric:tabular-nums}.app-calculator-context-label{display:inline-flex;align-items:center;gap:.4rem}.app-calculator-context-label svg{color:var(--calculator-action-accent)}.app-calculator-half-prompt{color:var(--color-app-text)}.app-calculator-damage-choice{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border:1px solid var(--role-life);border-radius:.85rem;background:var(--surface-inset);padding:.22rem}@supports (color: color-mix(in lab,red,red)){.app-calculator-damage-choice{border:1px solid color-mix(in srgb,var(--role-life) 35%,var(--line-soft))}}.app-calculator-damage-choice:before{position:absolute;top:.22rem;bottom:.22rem;left:.22rem;width:calc(50% - .22rem);border:1px solid var(--role-life);border-radius:.65rem;background:var(--role-life);box-shadow:0 2px 7px var(--role-life);content:""}@supports (color: color-mix(in lab,red,red)){.app-calculator-damage-choice:before{border:1px solid color-mix(in srgb,var(--role-life) 38%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-calculator-damage-choice:before{background:color-mix(in srgb,var(--role-life) 13%,var(--surface-raised))}}@supports (color: color-mix(in lab,red,red)){.app-calculator-damage-choice:before{box-shadow:0 2px 7px color-mix(in srgb,var(--role-life) 10%,transparent)}}.app-calculator-damage-choice[data-adjustment=half]:before{transform:translate(100%)}.app-calculator-damage-option{position:relative;z-index:1;display:flex;min-width:0;min-height:2.7rem;align-items:center;justify-content:center;gap:.35rem;border:1px solid transparent;border-radius:.65rem;background:transparent;padding:.4rem .45rem;color:var(--color-app-muted);font-size:.78rem;font-weight:700;line-height:1.2;text-align:center}.app-calculator-damage-option-selected{color:var(--role-life)}.app-calculator-damage-option svg{flex:0 0 auto}.app-calculator-final-value{border-top-color:var(--role-life)}@supports (color: color-mix(in lab,red,red)){.app-calculator-final-value{border-top-color:color-mix(in srgb,var(--role-life) 28%,var(--line-soft))}}.app-calculator-final-value strong{font-variant-numeric:tabular-nums;transition:color .14s ease,transform .14s ease}.app-calculator-final-value[data-adjustment=half] strong{color:var(--role-life);transform:scale(1.025)}@supports (color: color-mix(in lab,red,red)){.app-calculator-final-value[data-adjustment=half] strong{color:color-mix(in srgb,var(--role-life) 78%,var(--color-app-text))}}.app-calculator-action-preview,.app-calculator-no-action{display:flex;align-items:flex-start;gap:.55rem;border:1px solid var(--calculator-action-accent);border-left:3px solid var(--calculator-action-accent);border-radius:.75rem;background:var(--calculator-action-soft);padding:.72rem .8rem;color:var(--ink-secondary)}@supports (color: color-mix(in lab,red,red)){.app-calculator-action-preview,.app-calculator-no-action{border:1px solid color-mix(in srgb,var(--calculator-action-accent) 28%,var(--line-soft))}}@supports (color: color-mix(in lab,red,red)){.app-calculator-action-preview,.app-calculator-no-action{background:color-mix(in srgb,var(--calculator-action-soft) 58%,var(--surface-raised))}}.app-calculator-action-preview>svg,.app-calculator-no-action>svg{flex:0 0 auto;margin-top:.05rem;color:var(--calculator-action-accent)}.app-calculator-action-preview-healing{--calculator-action-accent: var(--color-app-success);--calculator-action-soft: var(--color-app-success-soft)}.app-calculator-action-preview-temporary{--calculator-action-accent: var(--role-temporary);--calculator-action-soft: var(--role-temporary-soft)}.app-calculator-no-action{--calculator-action-accent: var(--role-warning);--calculator-action-soft: var(--role-warning-soft);align-items:center}.app-calculator-action-list>.app-button{justify-content:flex-start;min-height:2.8rem;padding-inline:.9rem}.app-calculator-action-list>.app-button>span{flex:1;text-align:left}.app-calculator-action-healing,.app-calculator-apply-healing{border-color:#34d399!important;background:var(--color-app-success-soft)!important;color:var(--color-app-text)!important}@supports (color: color-mix(in lab,red,red)){.app-calculator-action-healing,.app-calculator-apply-healing{border-color:color-mix(in srgb,var(--color-app-success) 44%,var(--line-soft))!important}}.app-calculator-action-temporary,.app-calculator-apply-temporary{border-color:var(--role-temporary)!important;background:var(--role-temporary-soft)!important;color:var(--color-app-text)!important}@supports (color: color-mix(in lab,red,red)){.app-calculator-action-temporary,.app-calculator-apply-temporary{border-color:color-mix(in srgb,var(--role-temporary) 44%,var(--line-soft))!important}}.app-calculator-overlay-heading h2{margin-top:.25rem}:root[data-motion=full] .app-calculator-key,:root[data-motion=full] .app-calculator-shortcut{transition:transform 90ms ease-out,background-color .12s ease,border-color .12s ease,box-shadow .12s ease,color .12s ease}:root[data-motion=full] .app-physical-expression[data-expression-tick="0"]{animation:calculator-expression-update-a .12s ease-out}:root[data-motion=full] .app-physical-expression[data-expression-tick="1"]{animation:calculator-expression-update-b .12s ease-out}:root[data-motion=full] .app-physical-result-line strong[data-result-tick="0"]{animation:calculator-result-pulse-a .18s ease-out}:root[data-motion=full] .app-physical-result-line strong[data-result-tick="1"]{animation:calculator-result-pulse-b .18s ease-out}.app-calculator-key-keyboard-active{border-color:var(--role-arcane)!important;box-shadow:inset 0 1px 5px var(--role-arcane)}@supports (color: color-mix(in lab,red,red)){.app-calculator-key-keyboard-active{box-shadow:inset 0 1px 5px color-mix(in srgb,var(--role-arcane) 22%,transparent)}}.app-calculator-key:active{filter:brightness(1.08)}.app-calculator-shortcut:active{border-color:var(--role-resource);background:var(--role-resource-soft)}:root[data-motion=full] .app-calculator-key-keyboard-active{transform:translateY(1px) scale(.985)}:root[data-motion=full] .app-calculator-key:active,:root[data-motion=full] .app-calculator-shortcut:active{box-shadow:none;transform:translateY(1px) scale(.985)}:root[data-motion=full] .app-calculator-key-equals:active{box-shadow:0 0 0 2px var(--role-arcane)}@supports (color: color-mix(in lab,red,red)){:root[data-motion=full] .app-calculator-key-equals:active{box-shadow:0 0 0 2px color-mix(in srgb,var(--role-arcane) 24%,transparent)}}:root[data-motion=full] .app-calculator-damage-choice:before{transition:background-color .14s ease,border-color .14s ease,transform .16s cubic-bezier(.22,1,.36,1)}:root[data-motion=full] .app-calculator-final-value strong{transition:color .15s ease,transform .15s cubic-bezier(.22,1,.36,1)}:root[data-motion=full] .app-calculator-action-sheet,:root[data-motion=full] .app-calculator-global-dialog{animation:calculator-modal-enter .19s cubic-bezier(.22,.8,.32,1) both}:root[data-motion=full] .app-calculator-action-value{animation:calculator-result-enter .19s ease-out both}:root[data-motion=reduced] .app-calculator-key:active,:root[data-motion=reduced] .app-calculator-shortcut:active,:root[data-motion=reduced] .app-calculator-final-value[data-adjustment=half] strong{transform:none}:root[data-motion=reduced] .app-physical-expression[data-expression-tick],:root[data-motion=reduced] .app-physical-result-line strong[data-result-tick]{animation:none}:root[data-motion=reduced] .app-calculator-damage-choice:before{transition:none}:root[data-motion=reduced] .app-calculator-action-sheet,:root[data-motion=reduced] .app-calculator-global-dialog{animation:calculator-modal-fade 70ms ease-out both}:root[data-motion=full] .app-calculator-global-dialog-closing{animation:calculator-modal-leave .14s cubic-bezier(.4,0,1,1) both;pointer-events:none}:root[data-motion=reduced] .app-calculator-global-dialog-closing{animation:search-overlay-leave 45ms ease-out both;pointer-events:none}:root[data-motion=reduced] .app-calculator-action-value{animation:none}@keyframes calculator-expression-update-a{0%{transform:translateY(3px);opacity:.68}to{transform:translateY(0);opacity:1}}@keyframes calculator-expression-update-b{0%{transform:translateY(3px);opacity:.68}to{transform:translateY(0);opacity:1}}@keyframes calculator-modal-enter{0%{transform:translateY(4px) scale(.99);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@keyframes calculator-modal-fade{0%{opacity:0}to{opacity:1}}@keyframes calculator-modal-leave{0%{transform:translateY(0) scale(1);opacity:1}to{transform:translateY(3px) scale(.99);opacity:0}}@keyframes search-overlay-enter{0%{opacity:0}to{opacity:1}}@keyframes search-overlay-leave{0%{opacity:1}to{opacity:0}}@keyframes search-result-enter{0%{transform:translateY(2px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes search-result-leave{0%{opacity:1}to{opacity:0}}@keyframes search-spinner{to{transform:rotate(360deg)}}@keyframes calculator-result-enter{0%{transform:translateY(3px) scale(.985);opacity:.7}to{transform:translateY(0) scale(1);opacity:1}}@keyframes calculator-result-pulse-a{0%{transform:scale(.98)}60%{transform:scale(1.025)}to{transform:scale(1)}}@keyframes calculator-result-pulse-b{0%{transform:scale(.98)}60%{transform:scale(1.025)}to{transform:scale(1)}}@media(max-width:639px){.app-calculator-result-actions{align-items:flex-start}.app-calculator-result-actions .app-button{flex:0 0 auto}.app-calculator-damage-option{gap:.25rem;padding-inline:.25rem;font-size:.72rem}}.app-bottom-sheet{position:fixed;z-index:var(--z-app-modal);right:0;bottom:var(--app-bottom-sheet-keyboard-offset, 0px);left:0;max-height:min(88dvh,42rem);overflow-y:auto;overscroll-behavior:contain;scroll-padding-bottom:1rem;border-top:1px solid var(--line-accent);background:var(--surface-raised);padding:1rem max(1rem,env(safe-area-inset-left)) calc(1rem + env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-right));box-shadow:0 -20px 50px #00000059}.app-bottom-sheet-backdrop{position:fixed;inset:0;z-index:calc(var(--z-app-modal) - 1);background:var(--color-app-overlay)}.app-bottom-sheet-inner{width:min(100%,34rem);margin-inline:auto}.app-session-secondary{display:grid;gap:1.25rem;margin-top:2rem}.app-session-details{border-top:1px solid var(--line-soft);padding-top:.85rem}.app-session-details summary{display:flex;min-height:2.5rem;align-items:center;justify-content:space-between;color:var(--ink-primary);cursor:pointer;font-size:.9rem;font-weight:750;list-style:none}.app-session-details summary::-webkit-details-marker{display:none}.app-session-details summary:after{color:var(--color-app-primary-hover);content:"+";font-size:1.25rem;font-weight:400}.app-session-details[open] summary:after{content:"\2212"}@media(max-width:767px){.app-sheet-vitals{grid-template-columns:repeat(2,minmax(0,1fr))}.app-sheet-vital:nth-child(odd){border-right:1px solid var(--line-soft)}.app-stat-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.app-stat-cell:nth-child(odd){border-right:1px solid var(--line-soft)}.app-page-title{font-size:2rem}.app-vitality-panel{border-radius:1rem}.app-stat-rail-compact{grid-template-columns:repeat(2,minmax(0,1fr))}.app-bottom-nav-link{font-size:.65rem}}@media(max-width:1279px){.app-sheet-tools>section{grid-column:1 / -1}}@media(min-width:1024px){.app-bottom-sheet{right:1.5rem;bottom:1.5rem;left:auto;width:min(32rem,calc(100vw - 3rem));border:1px solid var(--line-accent);border-radius:1rem}.app-floating-search{right:1.5rem;bottom:1.5rem}.app-floating-calculator{right:1.5rem;bottom:5.5rem}}@media(max-width:1023px){.app-character-hero{flex-direction:column}.app-character-actions{justify-content:flex-start}.app-personal-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.app-personal-fact-wide{grid-column:span 1}.app-personal-fact-languages{grid-column:span 2}.app-sheet-layout,.app-cockpit-layout,.app-competencies-region{display:block}.app-competencies-region>.app-dense-list:first-of-type,.app-competencies-region>.app-dense-list:nth-of-type(2){display:block}.app-sheet-region,.app-sheet-tools{margin-top:1.5rem}.app-sheet-tools{display:block}.app-sheet-tools>section+section{margin-top:1.5rem}.app-sheet-competency-block-skills{margin-top:1.75rem}.app-cockpit-context{margin-top:1.5rem}.app-inventory-layout{display:block}.app-inventory-tools{margin-top:2rem}.app-compendium-layout,.app-calculator-layout,.app-reference-layout{display:block}.app-compendium-detail,.app-calculator-guide,.app-reference-detail{margin-top:2rem}.app-compendium-detail{position:fixed;right:0;bottom:0;left:0;z-index:var(--z-app-modal);max-height:min(88dvh,48rem);overflow-y:auto;margin:0;border:1px solid var(--line-accent);border-bottom:0;border-radius:1rem 1rem 0 0;background:var(--surface-folio);box-shadow:0 -1rem 3rem #00000059;padding:1rem max(1rem,env(safe-area-inset-left)) calc(1.25rem + env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-right));opacity:0;pointer-events:none;transform:translateY(110%);transition:transform .18s ease,opacity .18s ease,visibility .18s ease;visibility:hidden}.app-compendium-detail-mobile-open{opacity:1;pointer-events:auto;transform:translateY(0);visibility:visible}.app-compendium-mobile-backdrop{display:block;position:fixed;inset:0;z-index:calc(var(--z-app-modal) - 1);border:0;background:var(--color-app-overlay)}.app-reference-filters{grid-template-columns:1fr 1fr}.app-reference-search{grid-column:1 / -1}.app-reference-filter-trigger{display:flex;grid-column:1 / -1}.app-reference-advanced-filters{display:none;grid-column:1 / -1;grid-template-columns:1fr 1fr;gap:.7rem}.app-reference-advanced-filters-open{display:grid}.app-reference-detail{position:fixed;right:0;bottom:0;left:0;z-index:var(--z-app-modal);max-height:min(88dvh,48rem);overflow-y:auto;margin:0;border:1px solid var(--line-accent);border-bottom:0;border-radius:1rem 1rem 0 0;background:var(--surface-folio);box-shadow:0 -1rem 3rem #00000059;padding:1rem max(1rem,env(safe-area-inset-left)) calc(1.25rem + env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-right));opacity:0;pointer-events:none;transform:translateY(110%);transition:transform .18s ease,opacity .18s ease,visibility .18s ease;visibility:hidden}.app-reference-detail-mobile-open{opacity:1;pointer-events:auto;transform:translateY(0);visibility:visible}.app-reference-mobile-backdrop{display:block;position:fixed;inset:0;z-index:calc(var(--z-app-modal) - 1);border:0;background:var(--color-app-overlay)}.app-reference-detail-close{display:flex}}@media(max-width:639px){.app-physical-display{min-height:6.5rem;padding:.75rem .85rem}.app-calculator-shortcuts,.app-calculator-keypad{margin-top:.6rem}.app-calculator-keypad{gap:.3rem}.app-calculator-key{min-height:2.8rem}.app-inventory-header{flex-direction:column}.app-inventory-header-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch;width:100%}.app-inventory-header-actions .app-button{width:100%}.app-inventory-header-actions .app-button:first-child{grid-column:1 / -1}.app-inventory-list-heading{align-items:flex-start;flex-direction:column;gap:.35rem}.app-character-hero{align-items:stretch;flex-direction:column;gap:1rem}.app-character-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch}.app-character-actions .app-button{width:100%}.app-character-portrait{width:3.5rem;height:3.5rem}.app-ability-grid,.app-derived-rail,.app-cockpit-stat-strip,.app-inventory-summary,.app-personal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-personal-fact-wide,.app-personal-fact-languages{grid-column:1 / -1}.app-inventory-toolbar{grid-template-columns:1fr}.app-compendium-toolbar{grid-template-columns:1fr 1fr;gap:.55rem;padding:.7rem 0}.app-compendium-category-tabs{gap:.35rem;margin:.35rem 0 .65rem;padding-bottom:.25rem}.app-compendium-category-tab{min-width:8.5rem;gap:.4rem;padding:.55rem .65rem}.app-compendium-category-tab .app-category-tab-copy small{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:.68rem}.app-compendium-layout{margin-top:.9rem}.app-compendium-detail-content{padding:1rem}.app-compendium-intro{gap:.7rem!important;margin-bottom:.8rem;padding-bottom:.7rem}.app-compendium-intro .app-page-title{font-size:clamp(1.55rem,8vw,2.2rem)}.app-compendium-intro .app-page-description{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;max-width:none;overflow:hidden;margin-top:.4rem;font-size:.84rem;line-height:1.4}.app-compendium-intro>div:last-child{width:100%;gap:.5rem}.app-compendium-intro>div:last-child .app-button{min-height:2.7rem;flex:1 1 0;padding:.55rem .7rem}.app-reference-filters{grid-template-columns:1fr 1fr}.app-reference-search,.app-compendium-query{grid-column:1 / -1}.app-compendium-result-row{align-items:flex-start;flex-direction:column;gap:.45rem}.app-compendium-result-meta{justify-items:start;text-align:left}.app-compendium-result-meta span{display:inline}.app-compendium-result-meta span+span:before{margin:0 .35rem;content:"\b7"}.app-calculator-actions .app-button{flex:1 1 11rem}.app-search-overlay{padding:4.75rem .5rem .5rem}.app-search-palette{max-height:calc(100vh - 5.25rem);padding:.85rem}.app-reference-result{align-items:flex-start;flex-direction:column;gap:.5rem}.app-reference-result-available{grid-template-columns:minmax(0,1fr);align-items:start;gap:.7rem}.app-reference-result-available .app-reference-result-main{grid-column:1 / -1;width:100%}.app-reference-result-available .app-reference-result-meta{grid-column:1 / -1;display:flex;width:100%;max-width:none;align-items:center;justify-content:flex-start;gap:.6rem;justify-items:initial;text-align:left}.app-reference-result-available .app-reference-result-meta>div{justify-content:flex-start}.app-reference-result-available-action{grid-column:1 / -1;width:100%;justify-self:stretch}.app-reference-result-available-action .app-button{max-width:100%;white-space:normal}.app-reference-result-meta{max-width:none;justify-items:start;text-align:left}.app-inventory-row{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.45rem .65rem;padding:.75rem 0}.app-inventory-item-main{grid-column:1 / -1}.app-inventory-quantity{display:flex;grid-column:1;grid-row:2;justify-content:flex-start;margin-top:0}.app-inventory-row-actions{grid-column:2;grid-row:2;min-width:0;justify-content:flex-start;margin-top:0;gap:.3rem}.app-inventory-row-actions .app-button{padding:.45rem .65rem}.app-inventory-location select,.app-inventory-location{max-width:8rem}.app-inventory-location app-select{max-width:8rem}.app-inventory-row-action{min-height:2.3rem;gap:.28rem}.app-inventory-summary-cell{padding:.6rem .65rem}.app-inventory-summary-load,.app-inventory-summary-load-disabled{grid-column:1 / -1}.app-inventory-summary-items .app-inventory-summary-value{font-size:1.4rem}.app-inventory-summary-load .app-inventory-summary-value{font-size:.84rem}.app-inventory-tool-summary-note{font-size:.64rem}.app-coin-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.app-inventory-detail-actions label{width:100%}.app-inventory-detail-actions .app-button{flex:1 1 9rem}.app-inventory-modal-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-inventory-compendium-results{max-height:19rem}.app-inventory-compendium-row{align-items:flex-start;flex-direction:column;gap:.35rem}.app-inventory-compendium-meta{text-align:left}.app-inventory-compendium-row-attunement{border-left-width:3px}.app-cockpit-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem}.app-cockpit-action{min-height:4rem;padding:.55rem .5rem;font-size:.75rem}.app-resource-row{display:block;padding:.75rem 0}.app-resource-row .app-resource-main{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.app-resource-row .app-resource-track{margin-top:.45rem}.app-resource-row .app-resource-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:.7rem}.app-resource-row .app-resource-controls .app-button{width:100%}}@media(min-width:1024px){.app-ability-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}@media(max-width:639px){main:has(.app-compendium-intro){padding-top:.75rem}.app-compendium-intro .app-page-description{display:none}.app-compendium-category-tabs{margin-top:.15rem;margin-bottom:.45rem;padding-bottom:.15rem}.app-compendium-category-tab{padding-top:.45rem;padding-bottom:.45rem}.app-compendium-category-tab .app-category-tab-copy small{display:none}.app-compendium-toolbar{gap:.35rem;padding-top:.45rem;padding-bottom:.45rem}.app-compendium-toolbar label{gap:.2rem}.app-compendium-toolbar .app-input{min-height:2.4rem;padding-top:.45rem;padding-bottom:.45rem}.app-compendium-layout{margin-top:.5rem}.app-compendium-results .app-compendium-result-list{margin-top:.6rem}}@media(min-width:1440px){.app-reading-column{max-width:var(--app-reading-width)}}.app-route-viewport:has(.app-ability-grid),.app-route-viewport:has(.app-inventory-layout),.app-route-viewport:has(.app-compendium-category-tabs){container-type:inline-size}@container (min-width: 640px) and (max-width: 959px){.app-ability-grid{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr))}}@container (min-width: 960px){.app-ability-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}@container (min-width: 640px) and (max-width: 999px){.app-sheet-layout{display:block}.app-sheet-region,.app-sheet-tools{margin-top:1.5rem}.app-sheet-tools{display:block}.app-sheet-tools>section+section{margin-top:1.5rem}.app-inventory-layout{display:grid;grid-template-columns:minmax(0,1fr)}.app-inventory-tools{margin-top:2rem}.app-inventory-coins .app-coin-grid{grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr))}}@container (min-width: 640px) and (max-width: 1100px){.app-inventory-row{grid-template-columns:minmax(0,1fr) auto;gap:.45rem .65rem}.app-inventory-item-main{grid-column:1 / -1}.app-inventory-quantity{grid-column:1;grid-row:2;justify-items:start}.app-inventory-row-actions{grid-column:2;grid-row:2;min-width:0;justify-content:flex-start}.app-inventory-row-actions .app-button{padding:.45rem .65rem}.app-inventory-location select{max-width:9rem}}@container (min-width: 880px) and (max-width: 1100px){.app-inventory-coins .app-coin-grid{grid-template-columns:repeat(auto-fit,minmax(5rem,1fr))}}@container (min-width: 640px) and (max-width: 999px){.app-compendium-category-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));overflow:visible}.app-compendium-category-tab{min-width:0;padding:.7rem .8rem}.app-compendium-category-tab .app-category-tab-copy small{font-size:.72rem;line-height:1.35;overflow-wrap:anywhere}}@container (min-width: 640px) and (max-width: 799px){.app-compendium-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.app-compendium-query{grid-column:1 / -1}}@container (min-width: 800px) and (max-width: 999px){.app-compendium-toolbar{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr))}.app-compendium-query{grid-column:span 2}}@container (min-width: 640px){.app-compendium-toolbar>label{min-width:0}}@media(max-width:1120px){.app-settings-theme-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.app-settings-major{grid-column:span 7}.app-settings-privacy{grid-column:span 5}}@media(max-width:820px){.app-settings-layout{gap:1.8rem 1.2rem}.app-settings-half{grid-column:span 6}.app-settings-full,.app-settings-major{grid-column:1 / -1}.app-settings-privacy{grid-column:1 / -1;margin-top:0}.app-settings-theme-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.app-settings-language-columns{grid-template-columns:minmax(0,1fr)}.app-settings-language-mode{margin-top:.9rem}.app-compendium-translation-detail .af-ui-detail-actions{justify-content:flex-start}.app-compendium-translation-detail .af-ui-detail-action{max-width:100%}}@media(max-width:620px){.app-settings-layout{grid-template-columns:minmax(0,1fr);gap:1.55rem}.app-settings-half,.app-settings-full,.app-settings-major,.app-settings-privacy{grid-column:1}.app-settings-title-row{align-items:stretch;flex-direction:column;gap:1rem}.app-settings-theme-group-heading{align-items:stretch;flex-direction:column;gap:.8rem}.app-settings-theme-group .app-appearance-control{width:100%}.app-settings-special-heading .app-special-pro-badge{align-self:flex-start}.app-appearance-control,.app-appearance-toggle{width:100%}.app-settings-theme-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.app-special-theme-variants{grid-template-columns:repeat(2,minmax(0,1fr))}.app-theme-choice{min-height:5.4rem;gap:.55rem;padding:.65rem}.app-theme-preview{width:2.65rem;height:2.5rem}.app-theme-choice-copy strong{font-size:.72rem}.app-theme-description{font-size:.64rem}.app-settings-font-grid{grid-template-columns:minmax(0,1fr)}.app-settings-language-grid{gap:.45rem}.app-language-choice{position:relative;min-height:4.35rem;flex-direction:column;gap:.25rem;padding:.55rem .25rem}.app-language-choice strong{font-size:.72rem}.app-language-choice-check{position:absolute;right:.25rem;top:.25rem;width:.75rem;height:.75rem}.app-motion-choice{display:grid;min-height:4.6rem;grid-template-columns:2.2rem minmax(0,1fr) auto;grid-template-rows:auto auto;align-items:center;column-gap:.7rem;row-gap:.08rem;padding:.65rem .75rem}.app-settings-motion-grid{grid-template-columns:minmax(0,1fr)}.app-motion-choice-top{display:contents}.app-motion-symbol{grid-column:1;grid-row:1 / span 2}.app-motion-indicator{grid-column:3;grid-row:1}.app-motion-choice-label{grid-column:2;grid-row:1}.app-motion-choice-description{grid-column:2 / -1;grid-row:2}.app-settings-title small{font-size:.58rem}.app-settings-pro-note{flex-wrap:wrap}.app-settings-pro-note span{flex:1 1 calc(100% - 2rem)}.app-settings-pro-note a{margin-left:2rem}}:root[data-motion=reduced] .app-appearance-toggle:before,:root[data-motion=reduced] .app-appearance-toggle button,:root[data-motion=reduced] .app-theme-choice,:root[data-motion=reduced] .app-font-choice,:root[data-motion=reduced] .app-motion-choice,:root[data-motion=reduced] body,:root[data-motion=reduced] .app-page-shell{transition-duration:.01ms}@property --tw-translate-x{syntax: "*"; inherits: false; initial-value: 0;}@property --tw-translate-y{syntax: "*"; inherits: false; initial-value: 0;}@property --tw-translate-z{syntax: "*"; inherits: false; initial-value: 0;}@property --tw-rotate-x{syntax: "*"; inherits: false;}@property --tw-rotate-y{syntax: "*"; inherits: false;}@property --tw-rotate-z{syntax: "*"; inherits: false;}@property --tw-skew-x{syntax: "*"; inherits: false;}@property --tw-skew-y{syntax: "*"; inherits: false;}@property --tw-space-y-reverse{syntax: "*"; inherits: false; initial-value: 0;}@property --tw-divide-y-reverse{syntax: "*"; inherits: false; initial-value: 0;}@property --tw-border-style{syntax: "*"; inherits: false; initial-value: solid;}@property --tw-leading{syntax: "*"; inherits: false;}@property --tw-font-weight{syntax: "*"; inherits: false;}@property --tw-tracking{syntax: "*"; inherits: false;}@property --tw-ordinal{syntax: "*"; inherits: false;}@property --tw-slashed-zero{syntax: "*"; inherits: false;}@property --tw-numeric-figure{syntax: "*"; inherits: false;}@property --tw-numeric-spacing{syntax: "*"; inherits: false;}@property --tw-numeric-fraction{syntax: "*"; inherits: false;}@property --tw-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-shadow-color{syntax: "*"; inherits: false;}@property --tw-shadow-alpha{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@property --tw-inset-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-inset-shadow-color{syntax: "*"; inherits: false;}@property --tw-inset-shadow-alpha{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@property --tw-ring-color{syntax: "*"; inherits: false;}@property --tw-ring-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-inset-ring-color{syntax: "*"; inherits: false;}@property --tw-inset-ring-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-ring-inset{syntax: "*"; inherits: false;}@property --tw-ring-offset-width{syntax: "<length>"; inherits: false; initial-value: 0px;}@property --tw-ring-offset-color{syntax: "*"; inherits: false; initial-value: #fff;}@property --tw-ring-offset-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-outline-style{syntax: "*"; inherits: false; initial-value: solid;}@property --tw-blur{syntax: "*"; inherits: false;}@property --tw-brightness{syntax: "*"; inherits: false;}@property --tw-contrast{syntax: "*"; inherits: false;}@property --tw-grayscale{syntax: "*"; inherits: false;}@property --tw-hue-rotate{syntax: "*"; inherits: false;}@property --tw-invert{syntax: "*"; inherits: false;}@property --tw-opacity{syntax: "*"; inherits: false;}@property --tw-saturate{syntax: "*"; inherits: false;}@property --tw-sepia{syntax: "*"; inherits: false;}@property --tw-drop-shadow{syntax: "*"; inherits: false;}@property --tw-drop-shadow-color{syntax: "*"; inherits: false;}@property --tw-drop-shadow-alpha{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@property --tw-drop-shadow-size{syntax: "*"; inherits: false;}@property --tw-backdrop-blur{syntax: "*"; inherits: false;}@property --tw-backdrop-brightness{syntax: "*"; inherits: false;}@property --tw-backdrop-contrast{syntax: "*"; inherits: false;}@property --tw-backdrop-grayscale{syntax: "*"; inherits: false;}@property --tw-backdrop-hue-rotate{syntax: "*"; inherits: false;}@property --tw-backdrop-invert{syntax: "*"; inherits: false;}@property --tw-backdrop-opacity{syntax: "*"; inherits: false;}@property --tw-backdrop-saturate{syntax: "*"; inherits: false;}@property --tw-backdrop-sepia{syntax: "*"; inherits: false;}@property --tw-duration{syntax: "*"; inherits: false;}@property --tw-ease{syntax: "*"; inherits: false;}@keyframes pulse{50%{opacity:.5}}@layer properties{@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){:root,:host{--color-app-canvas: #0d0e15;--color-app-surface: #171721;--color-app-surface-raised: #211f2d;--color-app-inset: #101019;--color-app-text: #f5f2f8;--color-app-muted: #b6afbd;--color-app-subtle: #817b89;--color-app-border: rgb(255 255 255 / .1);--color-app-divider: rgb(255 255 255 / .08);--color-app-primary: #8b5cf6;--color-app-primary-hover: #a78bfa;--color-app-primary-border: rgb(167 139 250 / .42);--color-app-primary-soft: rgb(139 92 246 / .18);--color-app-focus: rgb(167 139 250 / .85)}*,:before,:after,::backdrop{--tw-translate-x: 0;--tw-translate-y: 0;--tw-translate-z: 0;--tw-rotate-x: initial;--tw-rotate-y: initial;--tw-rotate-z: initial;--tw-skew-x: initial;--tw-skew-y: initial;--tw-space-y-reverse: 0;--tw-divide-y-reverse: 0;--tw-border-style: solid;--tw-leading: initial;--tw-font-weight: initial;--tw-tracking: initial;--tw-ordinal: initial;--tw-slashed-zero: initial;--tw-numeric-figure: initial;--tw-numeric-spacing: initial;--tw-numeric-fraction: initial;--tw-shadow: 0 0 #0000;--tw-shadow-color: initial;--tw-shadow-alpha: 100%;--tw-inset-shadow: 0 0 #0000;--tw-inset-shadow-color: initial;--tw-inset-shadow-alpha: 100%;--tw-ring-color: initial;--tw-ring-shadow: 0 0 #0000;--tw-inset-ring-color: initial;--tw-inset-ring-shadow: 0 0 #0000;--tw-ring-inset: initial;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-offset-shadow: 0 0 #0000;--tw-outline-style: solid;--tw-blur: initial;--tw-brightness: initial;--tw-contrast: initial;--tw-grayscale: initial;--tw-hue-rotate: initial;--tw-invert: initial;--tw-opacity: initial;--tw-saturate: initial;--tw-sepia: initial;--tw-drop-shadow: initial;--tw-drop-shadow-color: initial;--tw-drop-shadow-alpha: 100%;--tw-drop-shadow-size: initial;--tw-backdrop-blur: initial;--tw-backdrop-brightness: initial;--tw-backdrop-contrast: initial;--tw-backdrop-grayscale: initial;--tw-backdrop-hue-rotate: initial;--tw-backdrop-invert: initial;--tw-backdrop-opacity: initial;--tw-backdrop-saturate: initial;--tw-backdrop-sepia: initial;--tw-duration: initial;--tw-ease: initial}}}
