@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--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}}}@layer theme{:root,:host{--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--color-bg:var(--color-bg);--color-surface-1:var(--color-surface-1);--color-surface-2:var(--color-surface-2);--color-surface-3:var(--color-surface-3);--color-surface-sunken:var(--color-surface-sunken);--color-glass:var(--color-glass);--color-glass-strong:var(--color-glass-strong);--color-border:var(--color-border);--color-border-strong:var(--color-border-strong);--color-text:var(--color-text);--color-text-dim:var(--color-text-dim);--color-on-accent:var(--color-on-accent);--color-on-data:var(--color-on-data);--color-backdrop:var(--color-backdrop);--color-accent:var(--color-accent);--color-accent-strong:var(--color-accent-strong);--color-accent-soft:var(--color-accent-soft);--color-accent-line:var(--color-accent-line);--color-gold:var(--color-gold);--color-success:var(--color-success);--color-warning:var(--color-warning);--color-danger:var(--color-danger);--color-danger-soft:var(--color-danger-soft);--color-link:var(--color-link);--color-focus:var(--color-focus);--color-online:var(--color-online);--color-crit:var(--color-crit);--color-fumble:var(--color-fumble);--color-crit-fumble:var(--color-crit-fumble);--color-dropped:var(--color-dropped);--radius-sm:var(--radius-sm);--radius-md:var(--radius-md);--radius-lg:var(--radius-lg);--radius-round:var(--radius-round);--shadow-1:var(--shadow-1);--shadow-2:var(--shadow-2);--font-sans:var(--font-sans);--font-serif:var(--font-serif);--font-display:var(--font-display);--font-title:var(--font-title);--font-mono:var(--font-mono)}}@layer base,components;@layer utilities{.\@container{container-type:inline-size}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:0}.inset-\[4px_4px_4px_45\%\]{inset:4px 4px 4px 45%}.inset-y-0{inset-block:0}.top-0{top:0}.top-1\/2{top:50%}.right-0{right:0}.-left-2{left:calc(var(--space-2) * -1)}.left-0{left:0}.left-\[4px\]{left:4px}.z-\(--z-map-overlay\){z-index:var(--z-map-overlay)}.z-0{z-index:0}.m-0{margin:0}.mx-2{margin-inline:var(--space-2)}.mx-4{margin-inline:var(--space-4)}.my-1{margin-block:var(--space-1)}.mt-\(--auth-card-top\){margin-top:var(--auth-card-top)}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-\[-4px\]{margin-top:-4px}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.ml-2{margin-left:var(--space-2)}.ml-4{margin-left:var(--space-4)}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.size-3{width:var(--space-3);height:var(--space-3)}.size-\[7px\]{width:7px;height:7px}.size-\[8px\]{width:8px;height:8px}.h-\(--avatar-sm\){height:var(--avatar-sm)}.h-\(--chat-table-img\){height:var(--chat-table-img)}.h-\(--cmp-row-h\){height:var(--cmp-row-h)}.h-\(--panel-row-h\){height:var(--panel-row-h)}.h-\(--picker-list-h\){height:var(--picker-list-h)}.h-\(--wizard-list-h\){height:var(--wizard-list-h)}.h-2{height:var(--space-2)}.h-5{height:var(--space-5)}.h-\[18px\]{height:18px}.h-\[calc\(var\(--icon-button\)\+var\(--space-3\)\)\]{height:calc(var(--icon-button) + var(--space-3))}.h-full{height:100%}.max-h-\(--campaign-desc-max-h\){max-height:var(--campaign-desc-max-h)}.max-h-\(--cmp-checked-max-h\){max-height:var(--cmp-checked-max-h)}.max-h-\(--handout-img-max-h\){max-height:var(--handout-img-max-h)}.max-h-\(--turn-list-max-h\){max-height:var(--turn-list-max-h)}.max-h-\(--wizard-list-h\){max-height:var(--wizard-list-h)}.max-h-\[60vh\]{max-height:60vh}.max-h-\[70vh\]{max-height:70vh}.max-h-\[240px\]{max-height:240px}.max-h-\[calc\(3\*var\(--card-h\)\)\]{max-height:calc(3 * var(--card-h))}.max-h-\[calc\(var\(--panel-row-h\)\*4\)\]{max-height:calc(var(--panel-row-h) * 4)}.min-h-0{min-height:0}.min-h-3{min-height:var(--space-3)}.min-h-full{min-height:100%}.w-\(--auth-card-w\){width:var(--auth-card-w)}.w-\(--avatar-sm\){width:var(--avatar-sm)}.w-\(--chat-table-img\){width:var(--chat-table-img)}.w-\(--input-narrow\){width:var(--input-narrow)}.w-3{width:var(--space-3)}.w-\[1\.15em\]{width:1.15em}.w-\[24rem\]{width:24rem}.w-\[34px\]{width:34px}.w-\[calc\(var\(--icon-button\)\*2\)\]{width:calc(var(--icon-button) * 2)}.w-\[calc\(var\(--icon-button\)\+var\(--space-3\)\)\]{width:calc(var(--icon-button) + var(--space-3))}.w-\[calc\(var\(--space-6\)\*5\)\]{width:calc(var(--space-6) * 5)}.w-\[min\(var\(--lobby-max-w\)\,100\%\)\]{width:min(var(--lobby-max-w),100%)}.w-full{width:100%}.max-w-\(--chat-tooltip-w\){max-width:var(--chat-tooltip-w)}.max-w-\[45\%\]{max-width:45%}.max-w-\[calc\(100vw-2\*var\(--space-4\)\)\]{max-width:calc(100vw - 2 * var(--space-4))}.max-w-full{max-width:100%}.min-w-\(--avatar-md\){min-width:var(--avatar-md)}.min-w-\(--icon-button\){min-width:var(--icon-button)}.min-w-0{min-width:0}.min-w-\[calc\(var\(--turn-tracker-w\)\+var\(--space-6\)\)\]{min-width:calc(var(--turn-tracker-w) + var(--space-6))}.flex-1{flex:1}.flex-none{flex:none}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-ew-resize{cursor:ew-resize}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.cursor-zoom-in{cursor:zoom-in}.touch-none{touch-action:none}.resize{resize:both}.list-none{list-style-type:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-\[repeat\(3\,1fr\)\]{grid-template-columns:repeat(3,1fr)}.grid-cols-\[repeat\(5\,1fr\)\]{grid-template-columns:repeat(5,1fr)}.grid-cols-\[repeat\(6\,1fr\)\]{grid-template-columns:repeat(6,1fr)}.grid-cols-\[repeat\(auto-fill\,minmax\(calc\(var\(--sheet-label-col\)\*1\.6\)\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(calc(var(--sheet-label-col) * 1.6),1fr))}.grid-cols-\[repeat\(auto-fill\,minmax\(var\(--campaign-card-min-w\)\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(var(--campaign-card-min-w),1fr))}.grid-cols-\[repeat\(auto-fill\,minmax\(var\(--sheet-ability-w\)\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(var(--sheet-ability-w),1fr))}.grid-cols-\[repeat\(auto-fit\,minmax\(min\(var\(--campaign-section-min-w\)\,100\%\)\,1fr\)\)\]{grid-template-columns:repeat(auto-fit,minmax(min(var(--campaign-section-min-w),100%),1fr))}.grid-cols-\[var\(--toolbar-w\)_1fr\]{grid-template-columns:var(--toolbar-w) 1fr}.grid-cols-\[var\(--toolbar-w\)_1fr_var\(--sidebar-w\,var\(--sidebar-w-default\)\)\]{grid-template-columns:var(--toolbar-w) 1fr var(--sidebar-w,var(--sidebar-w-default))}.grid-rows-\[var\(--topbar-h\)_1fr\]{grid-template-rows:var(--topbar-h) 1fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.\[align-items\:start\]{align-items:start}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.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(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-5{gap:var(--space-5)}.gap-6{gap:var(--space-6)}.gap-\[2px\]{gap:2px}.gap-x-3{column-gap:var(--space-3)}.gap-x-4{column-gap:var(--space-4)}.gap-y-1{row-gap:var(--space-1)}.gap-y-2{row-gap:var(--space-2)}.self-center{align-self:center}.self-end{align-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-y-hidden{overflow-y:hidden}.rounded-\[2px\]{border-radius:2px}.rounded-\[50\%\]{border-radius:50%}.rounded-\[999px\]{border-radius:999px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-round{border-radius:var(--radius-round)}.rounded-sm{border-radius:var(--radius-sm)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-\(--sheet-accent\){border-color:var(--sheet-accent)}.border-\(--sheet-gold\){border-color:var(--sheet-gold)}.border-\(--sheet-rule\){border-color:var(--sheet-rule)}.border-accent\!{border-color:var(--color-accent)!important}.border-accent-line{border-color:var(--color-accent-line)}.border-border{border-color:var(--color-border)}.border-current{border-color:currentColor}.border-success{border-color:var(--color-success)}.border-t-\(--sheet-rule\){border-top-color:var(--sheet-rule)}.border-t-accent-line{border-top-color:var(--color-accent-line)}.border-t-border{border-top-color:var(--color-border)}.border-r-border{border-right-color:var(--color-border)}.border-b-border{border-bottom-color:var(--color-border)}.border-l-border{border-left-color:var(--color-border)}.bg-\(--map-darkness\){background-color:var(--map-darkness)}.bg-\(--map-void\){background-color:var(--map-void)}.bg-\(--roll-crit-soft\){background-color:var(--roll-crit-soft)}.bg-\(--roll-fumble-soft\){background-color:var(--roll-fumble-soft)}.bg-\(--sheet-accent\){background-color:var(--sheet-accent)}.bg-\(--sheet-paper\){background-color:var(--sheet-paper)}.bg-\(--sheet-rule\){background-color:var(--sheet-rule)}.bg-\(--table-bg\){background-color:var(--table-bg)}.bg-accent{background-color:var(--color-accent)}.bg-accent-soft{background-color:var(--color-accent-soft)}.bg-bg{background-color:var(--color-bg)}.bg-border-strong{background-color:var(--color-border-strong)}.bg-success{background-color:var(--color-success)}.bg-surface-1{background-color:var(--color-surface-1)}.bg-surface-2{background-color:var(--color-surface-2)}.bg-surface-3{background-color:var(--color-surface-3)}.bg-surface-sunken{background-color:var(--color-surface-sunken)}.bg-transparent{background-color:#0000}.bg-warning{background-color:var(--color-warning)}.bg-cover{background-size:cover}.bg-center{background-position:50%}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-5{padding:var(--space-5)}.px-1{padding-inline:var(--space-1)}.px-2{padding-inline:var(--space-2)}.px-3{padding-inline:var(--space-3)}.px-4{padding-inline:var(--space-4)}.px-5{padding-inline:var(--space-5)}.py-0{padding-block:0}.py-1{padding-block:var(--space-1)}.py-2{padding-block:var(--space-2)}.py-3{padding-block:var(--space-3)}.py-4{padding-block:var(--space-4)}.pt-2{padding-top:var(--space-2)}.pt-3{padding-top:var(--space-3)}.pr-3{padding-right:var(--space-3)}.pb-2{padding-bottom:var(--space-2)}.pb-3{padding-bottom:var(--space-3)}.pb-4{padding-bottom:var(--space-4)}.pl-2{padding-left:var(--space-2)}.pl-4{padding-left:var(--space-4)}.pl-5{padding-left:var(--space-5)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-display{font-family:var(--font-display)}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.font-serif{font-family:var(--font-serif)}.font-title{font-family:var(--font-title)}.text-\(length\:--roll-total-font\){font-size:var(--roll-total-font)}.text-\[1\.3em\]{font-size:1.3em}.text-\[10px\]{font-size:10px}.text-display{font-size:var(--font-size-display)}.text-lg{font-size:var(--font-size-lg)}.text-md{font-size:var(--font-size-md)}.text-sm{font-size:var(--font-size-sm)}.text-xl{font-size:var(--font-size-xl)}.text-xs{font-size:var(--font-size-xs)}.leading-\[1\.1\]{--tw-leading:1.1;line-height:1.1}.leading-\[1\.4\]{--tw-leading:1.4;line-height:1.4}.leading-\[1\.5\]{--tw-leading:1.5;line-height:1.5}.leading-\[1\.25\]{--tw-leading:1.25;line-height:1.25}.leading-none{--tw-leading:1;line-height:1}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.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\.1em\]{--tw-tracking:.1em;letter-spacing:.1em}.tracking-\[0\.02em\]{--tw-tracking:.02em;letter-spacing:.02em}.tracking-\[0\.04em\]{--tw-tracking:.04em;letter-spacing:.04em}.tracking-\[0\.05em\]{--tw-tracking:.05em;letter-spacing:.05em}.tracking-\[0\.06em\]{--tw-tracking:.06em;letter-spacing:.06em}.tracking-\[0\.08em\]{--tw-tracking:.08em;letter-spacing:.08em}.tracking-\[0\.12em\]{--tw-tracking:.12em;letter-spacing:.12em}.tracking-\[0\]{--tw-tracking:0;letter-spacing:0}.wrap-anywhere{overflow-wrap:anywhere}.text-ellipsis{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-\(--card-face-dim\){color:var(--card-face-dim)}.text-\(--chat-whisper-text\){color:var(--chat-whisper-text)}.text-\(--sheet-accent\){color:var(--sheet-accent)}.text-\(--sheet-accent-text\){color:var(--sheet-accent-text)}.text-\(--sheet-gold\){color:var(--sheet-gold)}.text-\(--sheet-ink\){color:var(--sheet-ink)}.text-\(--sheet-ink-dim\){color:var(--sheet-ink-dim)}.text-\(--sheet-warn\){color:var(--sheet-warn)}.text-\(--statblock-label\){color:var(--statblock-label)}.text-accent-strong{color:var(--color-accent-strong)}.text-crit{color:var(--color-crit)}.text-fumble{color:var(--color-fumble)}.text-gold{color:var(--color-gold)}.text-on-accent{color:var(--color-on-accent)}.text-success{color:var(--color-success)}.text-text-dim{color:var(--color-text-dim)}.normal-case{text-transform:none}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.scheme-light{color-scheme:light}.opacity-60{opacity:.6}.shadow-\(--edge-highlight\){--tw-shadow:var(--edge-highlight);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_0_6px_var\(--color-success\)\]{--tw-shadow:0 0 6px var(--tw-shadow-color,var(--color-success));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)}.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,)}.\[filter\:drop-shadow\(0_0_6px_var\(--color-accent-line\)\)\]{filter:drop-shadow(0 0 6px var(--color-accent-line))}.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,)}.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))}.select-none{-webkit-user-select:none;user-select:none}.first\:pt-0:first-child{padding-top:0}.first\:\[border-top\:none\]:first-child{border-top:none}@media(hover:hover){.hover\:bg-surface-2:hover{background-color:var(--color-surface-2)}}}@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-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:0}@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}:root{--palette-ink-950: #15100c;--palette-ink-900: #1c1611;--palette-ink-850: #241c16;--palette-ink-800: #2c231b;--palette-ink-750: #362b21;--palette-ink-700: #4b3c2e;--palette-ink-600: #65513f;--palette-ink-400: #ab9a82;--palette-ink-100: #eee4d1;--palette-white: #ffffff;--palette-black: #000000;--palette-red-700: #a8322b;--palette-red-600: #c0392b;--palette-red-500: #e2574c;--palette-red-300: #ff7b72;--palette-green-600: #27ae60;--palette-green-400: #3fb950;--palette-brass-600: #a87c32;--palette-brass-500: #c99a4b;--palette-brass-400: #e0b968;--palette-brass-200: #f3e0b0;--palette-accent-600: var(--palette-brass-600);--palette-accent-500: var(--palette-brass-500);--palette-accent-400: var(--palette-brass-400);--palette-accent-200: var(--palette-brass-200);--palette-blue-500: #3fa9f5;--palette-blue-300: #6ea8fe;--palette-orange-500: #e67e22;--palette-gold-500: #d4a64a;--palette-gold-300: #e8c987;--palette-gold-400: #f1c40f;--palette-purple-600: #8e44ad;--palette-purple-300: #c9a7e8;--palette-parchment-100: #fbf7ec;--palette-parchment-200: #f1e6c8;--palette-parchment-300: #d8cba5;--palette-sepia-900: #241d18;--palette-sepia-600: #6b5a48;--palette-oxblood-700: #7a1e1e;--palette-bronze-600: #8a6a2f;--palette-bronze-300: #c9a24a;--palette-forest-600: #2f7d4a;--palette-sky-700: #2c5d8f;--palette-slate-600: #3d5a80;--palette-violet-600: #5b4b8a;--palette-copper-600: #a0522d;--palette-silver-500: #7d8590;--palette-electrum-600: #5f8a73;--palette-platinum-600: #6b7a99;--palette-vermilion-800: #922610;--palette-ember-400: #d9694a;--palette-ember-300: #e89a7a;--palette-umber-500: #5a4636;--palette-umber-700: #372b21;--palette-umber-800: #2c231b;--palette-umber-900: #1b1510;--palette-paper-50: #fdfdfb;--color-bg: var(--palette-ink-900);--color-surface-1: var(--palette-ink-850);--color-surface-2: var(--palette-ink-800);--color-surface-3: var(--palette-ink-750);--color-surface-sunken: var(--palette-ink-950);--color-glass: color-mix(in srgb, var(--palette-ink-850) 72%, transparent);--color-glass-strong: color-mix(in srgb, var(--palette-ink-850) 88%, transparent);--color-border: var(--palette-ink-700);--color-border-strong: var(--palette-ink-600);--color-text: var(--palette-ink-100);--color-text-dim: var(--palette-ink-400);--color-on-accent: var(--palette-ink-950);--color-on-data: var(--palette-white);--color-backdrop: rgb(10 6 2 / .7);--color-accent: var(--palette-accent-500);--color-accent-strong: var(--palette-accent-400);--color-accent-soft: color-mix(in srgb, var(--palette-accent-500) 14%, transparent);--color-accent-line: color-mix(in srgb, var(--palette-accent-500) 45%, transparent);--color-gold: var(--palette-gold-500);--color-success: var(--palette-green-600);--color-warning: var(--palette-orange-500);--color-danger: var(--palette-red-300);--color-danger-soft: color-mix(in srgb, var(--palette-red-500) 14%, transparent);--color-link: var(--palette-accent-400);--color-focus: var(--palette-accent-400);--color-online: var(--palette-green-400);--glow-accent: 0 0 0 1px var(--color-accent-line), 0 0 18px color-mix(in srgb, var(--palette-accent-500) 28%, transparent);--edge-highlight: inset 0 1px 0 color-mix(in srgb, var(--palette-white) 6%, transparent);--fx-ink: var(--palette-accent-200);--fx-accent: var(--palette-accent-500);--fx-gold: var(--palette-gold-300);--fx-vignette: radial-gradient(ellipse 120% 90% at 50% 20%, transparent 0%, color-mix(in srgb, var(--palette-ink-950) 85%, transparent) 100%);--table-bg: #2a231d;--table-ink: #e6dccb;--table-dice: #d9b46a;--table-fumble: #f27b78;--table-water: #5b8fae;--table-forest: #5f9468;--table-hills: #a59a62;--table-mountain: #93857a;--color-crit: var(--palette-green-400);--color-fumble: var(--palette-red-300);--color-crit-fumble: var(--palette-blue-500);--color-dropped: var(--palette-ink-400);--chat-whisper-hue: oklch(from var(--palette-accent-500) .62 .13 calc(h + 150) );--chat-whisper-bg: color-mix(in srgb, var(--chat-whisper-hue) 20%, transparent);--chat-whisper-border: var(--chat-whisper-hue);--chat-desc-bg: color-mix(in srgb, var(--palette-gold-500) 14%, transparent);--chat-desc-text: var(--palette-parchment-200);--chat-emote-text: var(--palette-gold-400);--chat-system-bg: var(--palette-ink-950);--chat-template-header-bg: transparent;--chat-template-header-text: var(--tpl-edge);--chat-template-row-alt: color-mix(in srgb, var(--palette-ink-750) 50%, transparent);--chat-external-badge: var(--palette-orange-500);--chat-inline-roll-bg: var(--palette-ink-750);--chat-whisper-text: oklch(from var(--chat-whisper-hue) .84 .09 h);--chat-inline-roll-border: var(--palette-gold-500);--tpl-paper-1: var(--palette-umber-700);--tpl-paper-2: var(--palette-umber-800);--tpl-ink: var(--palette-parchment-200);--tpl-ink-dim: var(--palette-parchment-300);--tpl-label: var(--palette-bronze-300);--tpl-edge: var(--palette-ember-400);--tpl-link: var(--palette-ember-300);--tpl-border: var(--palette-umber-500);--tpl-frame: color-mix(in srgb, var(--palette-bronze-300) 35%, transparent);--tpl-stripe: color-mix(in srgb, var(--palette-parchment-100) 5%, transparent);--tpl-roll-bg: var(--palette-umber-900);--tpl-roll-accent: var(--palette-gold-500);--tpl-shadow: 0 2px 12px rgb(0 0 0 / .45);--chat-template-bg: linear-gradient(170deg, var(--tpl-paper-1), var(--tpl-paper-2));--chat-template-text: var(--tpl-ink);--chat-template-dim: var(--tpl-ink-dim);--chat-template-label: var(--tpl-label);--chat-template-border: var(--tpl-border);--chat-template-edge: var(--tpl-edge);--chat-template-frame: var(--tpl-frame);--chat-template-frame-gap: var(--tpl-paper-1);--chat-template-bar: color-mix(in srgb, var(--tpl-edge) 50%, var(--tpl-paper-1));--chat-template-rule: linear-gradient(90deg, var(--tpl-edge), transparent);--chat-template-sub-bg: transparent;--chat-template-sub-text: var(--tpl-ink-dim);--chat-template-stripe: var(--tpl-stripe);--chat-template-link: var(--tpl-link);--chat-template-roll-bg: var(--tpl-roll-bg);--chat-template-roll-border: var(--tpl-border);--chat-template-roll-accent: var(--tpl-roll-accent);--chat-template-shadow: var(--tpl-shadow);--chat-tooltip-w: 260px;--chat-input-max-h: 160px;--chat-table-img: 48px;--roll-card-bg: var(--color-surface-2);--roll-card-border: var(--color-border);--roll-card-edge: var(--color-gold);--roll-die-bg: var(--color-surface-3);--roll-die-border: var(--color-border-strong);--roll-die-text: var(--color-text);--roll-die-size: 22px;--roll-total-bg: var(--color-surface-sunken);--roll-total-w: 48px;--roll-total-font: 22px;--roll-crit-soft: color-mix(in srgb, var(--color-crit) 16%, transparent);--roll-fumble-soft: color-mix(in srgb, var(--color-fumble) 16%, transparent);--roll-both-soft: color-mix(in srgb, var(--color-crit-fumble) 16%, transparent);--turn-tracker-w: 270px;--turn-active-bg: color-mix(in srgb, var(--palette-gold-500) 18%, transparent);--turn-active-border: var(--palette-gold-500);--audio-banner-bg: var(--palette-orange-500);--audio-banner-text: var(--palette-ink-900);--card-face-bg: var(--palette-paper-50);--card-face-text: var(--palette-sepia-900);--card-face-dim: var(--palette-sepia-600);--card-red: var(--palette-red-600);--card-border: var(--palette-parchment-300);--card-back-1: var(--palette-oxblood-700);--card-back-2: var(--palette-red-700);--card-w: 72px;--card-h: 100px;--card-w-sm: 54px;--card-h-sm: 76px;--card-w-lg: 180px;--card-h-lg: 250px;--macrobar-bg: color-mix(in srgb, var(--palette-ink-850) 92%, transparent);--quickbar-bg: color-mix(in srgb, var(--color-surface-1) 80%, transparent);--quickbar-text: var(--color-text);--quickbar-text-dim: var(--color-text-dim);--quickbar-border: color-mix(in srgb, var(--color-text) 12%, transparent);--quickbar-hover: color-mix(in srgb, var(--color-text) 10%, transparent);--quickbar-rule: color-mix(in srgb, var(--color-text) 15%, transparent);--quickbar-shadow: var(--shadow-1);--map-trigger-max-w: 240px;--map-list-w: 340px;--map-list-max-h: 60vh;--map-thumb-w: 64px;--map-thumb-h: 40px;--input-narrow: 54px;--handout-img-max-h: 320px;--panel-row-h: 36px;--turn-list-max-h: 60vh;--lobby-max-w: 1000px;--auth-card-w: 360px;--auth-card-top: 8vh;--campaign-card-min-w: 240px;--campaign-desc-max-h: 60px;--campaign-section-min-w: 320px;--sheet-paper: var(--palette-parchment-100);--sheet-paper-2: var(--palette-parchment-200);--sheet-rule: var(--palette-parchment-300);--sheet-ink: var(--palette-sepia-900);--sheet-ink-dim: var(--palette-sepia-600);--sheet-accent: var(--palette-oxblood-700);--sheet-accent-text: var(--palette-white);--sheet-gold: var(--palette-bronze-600);--sheet-input-bg: color-mix(in srgb, var(--palette-white) 55%, transparent);--sheet-input-border: var(--palette-parchment-300);--sheet-focus: var(--palette-oxblood-700);--sheet-box-bg: color-mix(in srgb, var(--palette-white) 35%, transparent);--sheet-header-tint: color-mix(in srgb, var(--palette-oxblood-700) 14%, transparent);--sheet-roll-hover: color-mix(in srgb, var(--palette-oxblood-700) 12%, transparent);--sheet-good: var(--palette-forest-600);--sheet-warn: var(--palette-orange-500);--sheet-bad: var(--palette-red-700);--sheet-slot: var(--palette-sky-700);--sheet-badge-conc: var(--palette-slate-600);--sheet-badge-ritual: var(--palette-violet-600);--sheet-coin-cp: var(--palette-copper-600);--sheet-coin-sp: var(--palette-silver-500);--sheet-coin-ep: var(--palette-electrum-600);--sheet-coin-gp: var(--palette-bronze-600);--sheet-coin-pp: var(--palette-platinum-600);--sheet-drop-outline: var(--palette-blue-500);--sheet-shadow: 0 1px 2px rgb(0 0 0 / .18);--sheet-tabbar-bg: var(--palette-parchment-200);--statblock-bg: var(--palette-parchment-100);--statblock-text: var(--palette-sepia-900);--statblock-heading: var(--palette-vermilion-800);--statblock-rule: var(--palette-vermilion-800);--statblock-label: var(--palette-vermilion-800);--statblock-shadow: var(--shadow-1);--statblock-token-size: 80px;--compendium-cr-bg: color-mix(in srgb, var(--palette-red-600) 30%, transparent);--compendium-cr-text: var(--palette-red-300);--compendium-level-bg: color-mix(in srgb, var(--palette-purple-600) 28%, transparent);--compendium-level-text: var(--palette-purple-300);--map-void: var(--palette-ink-850);--map-page: #c4cad3;--map-grid-default: var(--palette-black);--map-selection: var(--palette-blue-500);--map-selection-fill: color-mix(in srgb, var(--palette-blue-500) 12%, transparent);--map-turn-ring: var(--palette-gold-400);--map-token-fallback: var(--palette-red-600);--map-token-initials: var(--palette-white);--map-name-bg: rgb(0 0 0 / .65);--map-name-text: var(--palette-white);--map-bar-bg: rgb(0 0 0 / .55);--map-bar-1: var(--palette-green-600);--map-bar-2: var(--palette-blue-500);--map-bar-3: var(--palette-red-600);--map-darkness: var(--palette-black);--map-explored: rgb(0 0 0 / .6);--map-fog-player: var(--palette-black);--map-fog-gm: rgb(0 0 0 / .5);--map-wall: var(--palette-blue-500);--map-door-closed: var(--palette-orange-500);--map-door-open: var(--palette-green-400);--map-light-default: #ffeeaa;--map-ruler-label-bg: rgb(0 0 0 / .75);--map-ruler-label-text: var(--palette-white);--map-ghost-opacity: .45;--map-template-opacity: .15;--map-gm-layer-opacity: .5;--map-aura-opacity: .25;--map-token-outline: rgb(0 0 0 / .6);--map-selection-dash: var(--palette-blue-500);--map-transformer-anchor: var(--palette-white);--map-turn-ring-glow: 12;--map-ghost-outline: var(--palette-white);--map-image-placeholder: var(--palette-ink-400);--map-label-outline: var(--palette-black);--map-ruler-parchment: #f1e3c2;--map-ruler-ink: #3a2414;--map-ruler-fantasy-font: var(--font-sans);--map-wall-selected: var(--palette-white);--map-wall-shadow: var(--palette-black);--map-wall-vertex: var(--palette-white);--map-door-handle-bg: rgb(20 20 26 / .9);--map-fog-reveal-draft: color-mix(in srgb, var(--palette-blue-300) 25%, transparent);--map-fog-reveal-draft-stroke: var(--palette-blue-300);--map-fog-hide-draft: rgb(0 0 0 / .5);--map-fog-hide-draft-stroke: var(--palette-ink-400);--map-marker-bg: rgb(0 0 0 / .6);--map-marker-icon: var(--palette-white);--map-marker-red: var(--palette-red-600);--map-marker-blue: var(--palette-blue-500);--map-marker-green: var(--palette-green-600);--map-marker-yellow: var(--palette-gold-400);--map-marker-purple: var(--palette-purple-600);--map-explored-darkness: .55;--map-dim-darkness: .4;--map-gm-darkness-opacity: .55;--map-gm-fog-opacity: .5;--map-gm-layer-active-opacity: .85;--map-gm-foreground-opacity: .6;--map-ruler-width: 4;--map-wall-width: 3;--map-layer-gm-accent: var(--palette-purple-600);--map-layer-foreground-accent: var(--palette-gold-400);--font-sans: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-serif: var(--font-sans);--font-display: var(--font-sans);--font-title: "Pirata One", var(--font-sans);--font-mono: ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--font-size-xs: 11px;--font-size-sm: 12px;--font-size-md: 14px;--font-size-lg: 17px;--font-size-xl: 22px;--font-size-display: 34px;--space-1: 2px;--space-2: 4px;--space-3: 8px;--space-4: 12px;--space-5: 16px;--space-6: 24px;--radius-sm: 2px;--radius-md: 3px;--radius-lg: 4px;--radius-round: 999px;--shadow-1: 0 2px 10px rgb(0 0 0 / .45);--shadow-2: 0 12px 40px rgb(0 0 0 / .6);--sheet-avatar: 72px;--sheet-ability-w: 80px;--sheet-ability-col: 84px;--sheet-label-col: 96px;--sheet-num-w: 56px;--sheet-num-sm: 44px;--sheet-pip: 14px;--sheet-prof-dot: 12px;--wizard-list-h: 320px;--cmp-row-h: 30px;--cmp-checked-max-h: 180px;--picker-list-h: 55vh;--topbar-h: 44px;--toolbar-w: 48px;--sidebar-w-default: 360px;--icon-button: 28px;--control-h: 26px;--control-h-sm: 24px;--avatar-sm: 20px;--avatar-md: 28px;--z-map-overlay: 10;--z-macrobar: 20;--z-window: 100;--z-tracker: 900;--z-menu: 15000;--z-modal: 10000;--z-toast: 20000;color-scheme:dark}:root[data-theme=light]{--tpl-paper-1: var(--palette-parchment-100);--tpl-paper-2: color-mix(in srgb, var(--palette-parchment-200) 70%, var(--palette-parchment-100));--tpl-ink: var(--palette-sepia-900);--tpl-ink-dim: var(--palette-sepia-600);--tpl-label: var(--palette-vermilion-800);--tpl-edge: var(--palette-vermilion-800);--tpl-link: var(--palette-vermilion-800);--tpl-border: var(--palette-parchment-300);--tpl-frame: color-mix(in srgb, var(--palette-bronze-300) 55%, transparent);--tpl-stripe: color-mix(in srgb, var(--palette-parchment-200) 55%, transparent);--tpl-roll-bg: var(--palette-paper-50);--tpl-roll-accent: var(--palette-bronze-300);--tpl-shadow: 0 2px 10px rgb(40 25 10 / .25);--color-bg: #f1e9d6;--color-surface-1: var(--palette-parchment-100);--color-surface-2: #ece2ca;--color-surface-3: #e2d5b8;--color-surface-sunken: #d9cbab;--color-glass: color-mix(in srgb, var(--palette-parchment-100) 78%, transparent);--color-glass-strong: color-mix(in srgb, var(--palette-parchment-100) 92%, transparent);--color-border: #cbb994;--color-border-strong: #a99572;--color-text: #2a1f16;--color-text-dim: #6b5a48;--color-on-accent: var(--palette-white);--color-backdrop: rgb(30 18 8 / .35);--palette-accent-600: #a87a3a;--palette-accent-500: #8a5a1c;--palette-accent-400: #6f4714;--palette-accent-200: #5a4632;--color-accent-soft: color-mix(in srgb, var(--palette-accent-500) 12%, transparent);--color-link: var(--palette-accent-400);--color-focus: var(--palette-accent-500);--color-danger: var(--palette-red-700);--glow-accent: 0 0 0 1px var(--color-accent-line), 0 0 14px color-mix(in srgb, var(--palette-accent-500) 18%, transparent);--edge-highlight: inset 0 1px 0 color-mix(in srgb, var(--palette-white) 80%, transparent);--fx-ink: var(--palette-accent-200);--fx-accent: var(--palette-accent-500);--fx-gold: #a87a1c;--fx-vignette: radial-gradient(ellipse 120% 90% at 50% 20%, transparent 0%, color-mix(in srgb, #e6dbc3 80%, transparent) 100%);--table-bg: #ece3cf;--table-ink: #3a2b1d;--table-dice: #946512;--table-fumble: #b3311c;--table-water: #4f86b3;--table-forest: #4f8a57;--table-hills: #a08a3e;--table-mountain: #85776b;--chat-system-bg: #ece2ca;--chat-desc-text: var(--palette-sepia-900);--chat-emote-text: #8a6d00;--chat-inline-roll-bg: #e2d5b8;--chat-whisper-text: oklch(from var(--chat-whisper-hue) .45 .13 h);--chat-whisper-bg: color-mix(in srgb, var(--chat-whisper-hue) 14%, transparent);--color-crit: var(--palette-green-600);--color-fumble: var(--palette-red-600);--roll-card-bg: var(--palette-parchment-100);--roll-die-bg: var(--color-surface-2);--roll-total-bg: var(--color-surface-2);--macrobar-bg: color-mix(in srgb, var(--palette-parchment-100) 92%, transparent);--map-void: #d6c9ad;--map-page: #ffffff;--shadow-1: 0 2px 8px rgb(40 25 10 / .14);--shadow-2: 0 10px 34px rgb(40 25 10 / .2);--compendium-cr-text: var(--palette-red-700);--compendium-level-text: var(--palette-violet-600);--statblock-shadow: var(--shadow-1);color-scheme:light}:root[data-palette=sage]{--palette-ink-950: #0d120f;--palette-ink-900: #131915;--palette-ink-850: #19211c;--palette-ink-800: #202a23;--palette-ink-750: #28342c;--palette-ink-700: #394a3f;--palette-ink-600: #4f6455;--palette-ink-400: #9aad9f;--palette-ink-100: #e3eadf;--palette-accent-600: #6f9369;--palette-accent-500: #8fb389;--palette-accent-400: #b0cfa7;--palette-accent-200: #dbe9d3;--color-backdrop: rgb(4 10 6 / .7);--fx-gold: #d8c98a;--table-bg: #1d241f;--table-ink: #dfe7d8;--table-dice: #c9b26a;--table-fumble: #e47c6e;--table-water: #5f93a6;--table-forest: #6a9a68;--table-hills: #a5a06a;--table-mountain: #8a8f84;--tpl-paper-1: #27322b;--tpl-paper-2: #1f2822;--tpl-ink: #e3eadf;--tpl-ink-dim: #a9b8aa;--tpl-label: #cdbd7e;--tpl-edge: #9cc28f;--tpl-link: #b0cfa7;--tpl-border: #3f5145;--tpl-frame: color-mix(in srgb, #cdbd7e 30%, transparent);--tpl-stripe: color-mix(in srgb, #e3eadf 5%, transparent);--tpl-roll-bg: #161d18;--tpl-roll-accent: #cdbd7e}:root[data-palette=sage][data-theme=light]{--palette-accent-600: #6b8f65;--palette-accent-500: #4c7150;--palette-accent-400: #3a5a3e;--palette-accent-200: #3f5a45;--color-bg: #ecf0e7;--color-surface-1: #f8faf5;--color-surface-2: #e5eadf;--color-surface-3: #d8e0d0;--color-surface-sunken: #ccd6c3;--color-glass: color-mix(in srgb, #f8faf5 78%, transparent);--color-glass-strong: color-mix(in srgb, #f8faf5 92%, transparent);--color-border: #bccab4;--color-border-strong: #97a98f;--color-text: #1d2920;--color-text-dim: #5a6a5d;--color-backdrop: rgb(10 24 14 / .35);--fx-gold: #9a8a3a;--fx-vignette: radial-gradient(ellipse 120% 90% at 50% 20%, transparent 0%, color-mix(in srgb, #dfe7d8 80%, transparent) 100%);--table-bg: #e7ede1;--table-ink: #26352a;--table-dice: #8a7420;--table-fumble: #b0402c;--table-water: #4a7f9a;--table-forest: #4a7f4c;--table-hills: #8f8a45;--table-mountain: #7a8075;--chat-system-bg: #e5eadf;--chat-inline-roll-bg: #d8e0d0;--roll-card-bg: #f8faf5;--macrobar-bg: color-mix(in srgb, #f8faf5 92%, transparent);--map-void: #cbd5c2;--shadow-1: 0 2px 8px rgb(15 30 18 / .14);--shadow-2: 0 10px 34px rgb(15 30 18 / .2);--tpl-paper-1: #f7f9f2;--tpl-paper-2: #e8eedf;--tpl-ink: #1d2920;--tpl-ink-dim: #5a6a5d;--tpl-label: #3d6b45;--tpl-edge: #3d6b45;--tpl-link: #3d6b45;--tpl-border: #c3cfba;--tpl-frame: color-mix(in srgb, #8fb389 60%, transparent);--tpl-stripe: color-mix(in srgb, #dce6d2 60%, transparent);--tpl-roll-bg: #fdfefb;--tpl-roll-accent: #8fb389;--tpl-shadow: 0 2px 10px rgb(15 30 18 / .2)}:root[data-palette=tech]{--palette-ink-950: #0b0c10;--palette-ink-900: #16171d;--palette-ink-850: #1e2028;--palette-ink-800: #272a35;--palette-ink-750: #323644;--palette-ink-700: #3a3f4f;--palette-ink-600: #4c5266;--palette-ink-400: #9aa0b4;--palette-ink-100: #e8e9ee;--palette-accent-600: #2b8fd6;--palette-accent-500: #3fa9f5;--palette-accent-400: #6ec3ff;--palette-accent-200: #a6d8f5;--color-backdrop: rgb(0 0 0 / .6);--fx-accent: #5ad2e1;--fx-gold: #d9b46a;--table-bg: #1a1d26;--table-ink: #dde2ec;--table-dice: #6ec3ff;--table-fumble: #ff7b72;--table-water: #4f8fd0;--table-forest: #4f9a7a;--table-hills: #8f95a8;--table-mountain: #7d8598;--tpl-paper-1: #222632;--tpl-paper-2: #1a1d27;--tpl-ink: #e8e9ee;--tpl-ink-dim: #9aa0b4;--tpl-label: #6ec3ff;--tpl-edge: #3fa9f5;--tpl-link: #6ec3ff;--tpl-border: #3a3f4f;--tpl-frame: color-mix(in srgb, #3fa9f5 30%, transparent);--tpl-stripe: color-mix(in srgb, #e8e9ee 4%, transparent);--tpl-roll-bg: #13151b;--tpl-roll-accent: #3fa9f5}:root[data-palette=tech][data-theme=light]{--palette-accent-600: #3f8fd0;--palette-accent-500: #1f6fb8;--palette-accent-400: #175a96;--palette-accent-200: #3b4a63;--color-bg: #eff2f6;--color-surface-1: #ffffff;--color-surface-2: #e7ebf1;--color-surface-3: #dbe1ea;--color-surface-sunken: #d0d7e1;--color-glass: color-mix(in srgb, #ffffff 78%, transparent);--color-glass-strong: color-mix(in srgb, #ffffff 92%, transparent);--color-border: #c3cad6;--color-border-strong: #9ea7b6;--color-text: #1a1d24;--color-text-dim: #5c6475;--color-backdrop: rgb(0 0 0 / .35);--fx-accent: var(--palette-accent-500);--fx-gold: #9a7a2a;--fx-vignette: radial-gradient(ellipse 120% 90% at 50% 20%, transparent 0%, color-mix(in srgb, #dfe5ee 80%, transparent) 100%);--table-bg: #e8ecf2;--table-ink: #222838;--table-dice: #1f6fb8;--table-fumble: #b3311c;--table-water: #3f7fbf;--table-forest: #3f8a6a;--table-hills: #7f8698;--table-mountain: #6f7788;--chat-system-bg: #e7ebf1;--chat-inline-roll-bg: #dbe1ea;--roll-card-bg: #ffffff;--macrobar-bg: color-mix(in srgb, #ffffff 92%, transparent);--map-void: #cfd5de;--shadow-1: 0 2px 8px rgb(10 20 40 / .14);--shadow-2: 0 10px 34px rgb(10 20 40 / .2);--tpl-paper-1: #ffffff;--tpl-paper-2: #eef2f8;--tpl-ink: #1a1d24;--tpl-ink-dim: #5c6475;--tpl-label: #1f6fb8;--tpl-edge: #1f6fb8;--tpl-link: #1f6fb8;--tpl-border: #cdd4df;--tpl-frame: color-mix(in srgb, #3fa9f5 45%, transparent);--tpl-stripe: color-mix(in srgb, #e3e9f2 70%, transparent);--tpl-roll-bg: #ffffff;--tpl-roll-accent: #3fa9f5;--tpl-shadow: 0 2px 10px rgb(10 20 40 / .18)}:root[data-palette=ember]{--palette-ink-950: #0f0d0c;--palette-ink-900: #161312;--palette-ink-850: #1d1918;--palette-ink-800: #25201e;--palette-ink-750: #2e2725;--palette-ink-700: #433834;--palette-ink-600: #5c4c46;--palette-ink-400: #a8968e;--palette-ink-100: #efe4de;--palette-accent-600: #d0592a;--palette-accent-500: #f07a3a;--palette-accent-400: #ff9d5c;--palette-accent-200: #ffd2b0;--color-backdrop: rgb(10 4 2 / .7);--fx-gold: #ffc46b;--table-bg: #221b19;--table-ink: #ecdcd2;--table-dice: #ff9d5c;--table-fumble: #ff6a5c;--table-water: #5b86a8;--table-forest: #6a8a5a;--table-hills: #a88a5a;--table-mountain: #8a7d78;--tpl-paper-1: #2a2220;--tpl-paper-2: #211b19;--tpl-ink: #efe4de;--tpl-ink-dim: #b3a39b;--tpl-label: #ffb36b;--tpl-edge: #f07a3a;--tpl-link: #ff9d5c;--tpl-border: #4a3c37;--tpl-frame: color-mix(in srgb, #f07a3a 30%, transparent);--tpl-stripe: color-mix(in srgb, #efe4de 4%, transparent);--tpl-roll-bg: #171211;--tpl-roll-accent: #f07a3a}:root[data-palette=ember][data-theme=light]{--palette-accent-600: #e0703a;--palette-accent-500: #c2491a;--palette-accent-400: #9c3812;--palette-accent-200: #5a3a2c;--color-bg: #f4eeea;--color-surface-1: #fffaf7;--color-surface-2: #efe6e0;--color-surface-3: #e5d9d1;--color-surface-sunken: #dacbc1;--color-glass: color-mix(in srgb, #fffaf7 78%, transparent);--color-glass-strong: color-mix(in srgb, #fffaf7 92%, transparent);--color-border: #d2c0b5;--color-border-strong: #ad978a;--color-text: #261a16;--color-text-dim: #6e5a51;--color-backdrop: rgb(40 15 5 / .35);--fx-gold: #b8741c;--fx-vignette: radial-gradient(ellipse 120% 90% at 50% 20%, transparent 0%, color-mix(in srgb, #ece2dc 80%, transparent) 100%);--table-bg: #f0e8e2;--table-ink: #3a2620;--table-dice: #b8501c;--table-fumble: #b3311c;--table-water: #4a7aa0;--table-forest: #5a7a4a;--table-hills: #9a7a3e;--table-mountain: #85776f;--chat-system-bg: #efe6e0;--chat-inline-roll-bg: #e5d9d1;--roll-card-bg: #fffaf7;--macrobar-bg: color-mix(in srgb, #fffaf7 92%, transparent);--map-void: #d9cbc2;--shadow-1: 0 2px 8px rgb(40 15 5 / .14);--shadow-2: 0 10px 34px rgb(40 15 5 / .2);--tpl-paper-1: #fffaf6;--tpl-paper-2: #f6ebe3;--tpl-ink: #261a16;--tpl-ink-dim: #6e5a51;--tpl-label: #b0401a;--tpl-edge: #c2491a;--tpl-link: #b0401a;--tpl-border: #e2d0c4;--tpl-frame: color-mix(in srgb, #f07a3a 45%, transparent);--tpl-stripe: color-mix(in srgb, #f3e4da 60%, transparent);--tpl-roll-bg: #ffffff;--tpl-roll-accent: #f07a3a;--tpl-shadow: 0 2px 10px rgb(40 15 5 / .18)}:root[data-palette=abyss]{--palette-ink-950: #050d10;--palette-ink-900: #0a1418;--palette-ink-850: #0f1b20;--palette-ink-800: #142329;--palette-ink-750: #1a2c33;--palette-ink-700: #26404a;--palette-ink-600: #365863;--palette-ink-400: #8fb0b8;--palette-ink-100: #dcecef;--palette-accent-600: #1fa8a0;--palette-accent-500: #3fd0c4;--palette-accent-400: #7ae8de;--palette-accent-200: #c4f5ef;--color-backdrop: rgb(0 6 10 / .7);--fx-gold: #b9a7ff;--table-bg: #0f1d22;--table-ink: #d6eaee;--table-dice: #7ae8de;--table-fumble: #ff7b8a;--table-water: #3f8fb8;--table-forest: #3f8f7a;--table-hills: #7f9a90;--table-mountain: #6f8790;--tpl-paper-1: #132830;--tpl-paper-2: #0e1f25;--tpl-ink: #dcecef;--tpl-ink-dim: #8fb0b8;--tpl-label: #7ae8de;--tpl-edge: #3fd0c4;--tpl-link: #7ae8de;--tpl-border: #26404a;--tpl-frame: color-mix(in srgb, #3fd0c4 30%, transparent);--tpl-stripe: color-mix(in srgb, #dcecef 4%, transparent);--tpl-roll-bg: #08151a;--tpl-roll-accent: #3fd0c4}:root[data-palette=abyss][data-theme=light]{--palette-accent-600: #2ab0a6;--palette-accent-500: #0f7f78;--palette-accent-400: #0b645e;--palette-accent-200: #2c4f56;--color-bg: #ebf3f4;--color-surface-1: #f8fcfc;--color-surface-2: #e1ecee;--color-surface-3: #d3e2e5;--color-surface-sunken: #c6d8dc;--color-glass: color-mix(in srgb, #f8fcfc 78%, transparent);--color-glass-strong: color-mix(in srgb, #f8fcfc 92%, transparent);--color-border: #b6ccd1;--color-border-strong: #8eaab1;--color-text: #102229;--color-text-dim: #4f6870;--color-backdrop: rgb(0 20 30 / .35);--fx-gold: #6a5ac0;--fx-vignette: radial-gradient(ellipse 120% 90% at 50% 20%, transparent 0%, color-mix(in srgb, #dbe8eb 80%, transparent) 100%);--table-bg: #e4eef0;--table-ink: #173038;--table-dice: #0f7f78;--table-fumble: #b3314a;--table-water: #2f7fa8;--table-forest: #2f7f6a;--table-hills: #6f8a80;--table-mountain: #637a82;--chat-system-bg: #e1ecee;--chat-inline-roll-bg: #d3e2e5;--roll-card-bg: #f8fcfc;--macrobar-bg: color-mix(in srgb, #f8fcfc 92%, transparent);--map-void: #c6d6da;--shadow-1: 0 2px 8px rgb(0 25 35 / .14);--shadow-2: 0 10px 34px rgb(0 25 35 / .2);--tpl-paper-1: #f9fdfd;--tpl-paper-2: #e8f3f4;--tpl-ink: #102229;--tpl-ink-dim: #4f6870;--tpl-label: #0f6f69;--tpl-edge: #0f7f78;--tpl-link: #0f6f69;--tpl-border: #c3d8dc;--tpl-frame: color-mix(in srgb, #3fd0c4 45%, transparent);--tpl-stripe: color-mix(in srgb, #dcecef 70%, transparent);--tpl-roll-bg: #ffffff;--tpl-roll-accent: #3fd0c4;--tpl-shadow: 0 2px 10px rgb(0 25 35 / .18)}:root[data-palette=crimson]{--palette-ink-950: #100a0b;--palette-ink-900: #170f10;--palette-ink-850: #1f1415;--palette-ink-800: #281a1c;--palette-ink-750: #312023;--palette-ink-700: #4a2f33;--palette-ink-600: #654147;--palette-ink-400: #b0959a;--palette-ink-100: #f0e2e4;--palette-accent-600: #b0414b;--palette-accent-500: #d4606a;--palette-accent-400: #e48d95;--palette-accent-200: #f3cdd0;--color-backdrop: rgb(12 2 4 / .7);--fx-gold: #e8b86a;--table-bg: #221416;--table-ink: #eedcdf;--table-dice: #e48d95;--table-fumble: #e8916a;--table-water: #5b7fa8;--table-forest: #6a8a5a;--table-hills: #a88a6a;--table-mountain: #8a7a7d;--tpl-paper-1: #2b1c1f;--tpl-paper-2: #22171a;--tpl-ink: #f0e2e4;--tpl-ink-dim: #b8a0a4;--tpl-label: #e48d95;--tpl-edge: #d4606a;--tpl-link: #e48d95;--tpl-border: #4a2f33;--tpl-frame: color-mix(in srgb, #d4606a 30%, transparent);--tpl-stripe: color-mix(in srgb, #f0e2e4 4%, transparent);--tpl-roll-bg: #160e10;--tpl-roll-accent: #d4606a}:root[data-palette=crimson][data-theme=light]{--palette-accent-600: #d0505c;--palette-accent-500: #b3202f;--palette-accent-400: #8f1824;--palette-accent-200: #5a2c33;--color-bg: #f5eced;--color-surface-1: #fffafa;--color-surface-2: #f1e5e7;--color-surface-3: #e7d8db;--color-surface-sunken: #dccbce;--color-glass: color-mix(in srgb, #fffafa 78%, transparent);--color-glass-strong: color-mix(in srgb, #fffafa 92%, transparent);--color-border: #d4bcc0;--color-border-strong: #ae9398;--color-text: #2a1518;--color-text-dim: #725a5e;--color-backdrop: rgb(40 5 10 / .35);--fx-gold: #a8741c;--fx-vignette: radial-gradient(ellipse 120% 90% at 50% 20%, transparent 0%, color-mix(in srgb, #eee0e2 80%, transparent) 100%);--table-bg: #f2e8ea;--table-ink: #3a1f23;--table-dice: #b3202f;--table-fumble: #c25a1c;--table-water: #4a70a0;--table-forest: #5a7a4a;--table-hills: #9a7a4e;--table-mountain: #85767a;--chat-system-bg: #f1e5e7;--chat-inline-roll-bg: #e7d8db;--roll-card-bg: #fffafa;--macrobar-bg: color-mix(in srgb, #fffafa 92%, transparent);--map-void: #dccbce;--shadow-1: 0 2px 8px rgb(40 5 10 / .14);--shadow-2: 0 10px 34px rgb(40 5 10 / .2);--tpl-paper-1: #fffafa;--tpl-paper-2: #f8eced;--tpl-ink: #2a1518;--tpl-ink-dim: #725a5e;--tpl-label: #a01c2a;--tpl-edge: #b3202f;--tpl-link: #a01c2a;--tpl-border: #e6d0d3;--tpl-frame: color-mix(in srgb, #e04b59 45%, transparent);--tpl-stripe: color-mix(in srgb, #f5e3e6 60%, transparent);--tpl-roll-bg: #ffffff;--tpl-roll-accent: #e04b59;--tpl-shadow: 0 2px 10px rgb(40 5 10 / .18)}:root[data-palette=amethyst]{--palette-ink-950: #0f0e13;--palette-ink-900: #16141b;--palette-ink-850: #1c1923;--palette-ink-800: #24202c;--palette-ink-750: #2c2735;--palette-ink-700: #3e3749;--palette-ink-600: #554c63;--palette-ink-400: #a49cb2;--palette-ink-100: #e6e2ec;--palette-accent-600: #8a6cc0;--palette-accent-500: #a68ad8;--palette-accent-400: #c0a9e6;--palette-accent-200: #e2d8f2;--color-backdrop: rgb(8 4 14 / .7);--fx-gold: #e8c46a;--table-bg: #1d1a23;--table-ink: #e4e0ea;--table-dice: #c0a9e6;--table-fumble: #e8838f;--table-water: #5b86c8;--table-forest: #5f9a7a;--table-hills: #9a8aa8;--table-mountain: #807890;--tpl-paper-1: #25212d;--tpl-paper-2: #1e1b25;--tpl-ink: #e6e2ec;--tpl-ink-dim: #a8a0b5;--tpl-label: #c0a9e6;--tpl-edge: #a68ad8;--tpl-link: #c0a9e6;--tpl-border: #3e3749;--tpl-frame: color-mix(in srgb, #a68ad8 30%, transparent);--tpl-stripe: color-mix(in srgb, #e6e2ec 4%, transparent);--tpl-roll-bg: #121016;--tpl-roll-accent: #a68ad8}:root[data-palette=amethyst][data-theme=light]{--palette-accent-600: #8f78bf;--palette-accent-500: #6a4fa3;--palette-accent-400: #563f88;--palette-accent-200: #3f3358;--color-bg: #f2f0f5;--color-surface-1: #fcfbfd;--color-surface-2: #ebe8f0;--color-surface-3: #e0dce7;--color-surface-sunken: #d6d1de;--color-glass: color-mix(in srgb, #fcfbfd 78%, transparent);--color-glass-strong: color-mix(in srgb, #fcfbfd 92%, transparent);--color-border: #cbc4d6;--color-border-strong: #a39bb2;--color-text: #1f1a2a;--color-text-dim: #625a72;--color-backdrop: rgb(20 5 40 / .35);--fx-gold: #9a7a2a;--fx-vignette: radial-gradient(ellipse 120% 90% at 50% 20%, transparent 0%, color-mix(in srgb, #e8e5ed 80%, transparent) 100%);--table-bg: #edeaf1;--table-ink: #2a2238;--table-dice: #6a4fa3;--table-fumble: #b3314a;--table-water: #3f6fb8;--table-forest: #3f8a6a;--table-hills: #7f7398;--table-mountain: #6f6880;--chat-system-bg: #ebe8f0;--chat-inline-roll-bg: #e0dce7;--roll-card-bg: #fcfbfd;--macrobar-bg: color-mix(in srgb, #fcfbfd 92%, transparent);--map-void: #d6d1de;--shadow-1: 0 2px 8px rgb(20 5 40 / .14);--shadow-2: 0 10px 34px rgb(20 5 40 / .2);--tpl-paper-1: #fdfbff;--tpl-paper-2: #f1eef5;--tpl-ink: #1f1a2a;--tpl-ink-dim: #625a72;--tpl-label: #5b4594;--tpl-edge: #6a4fa3;--tpl-link: #5b4594;--tpl-border: #dcd7e4;--tpl-frame: color-mix(in srgb, #a68ad8 45%, transparent);--tpl-stripe: color-mix(in srgb, #ebe7f0 70%, transparent);--tpl-roll-bg: #ffffff;--tpl-roll-accent: #a68ad8;--tpl-shadow: 0 2px 10px rgb(20 5 40 / .18)}:root[data-palette=slate]{--palette-ink-950: #0c0d0f;--palette-ink-900: #131518;--palette-ink-850: #191c20;--palette-ink-800: #212429;--palette-ink-750: #292d33;--palette-ink-700: #3a3f47;--palette-ink-600: #50565f;--palette-ink-400: #9ba1aa;--palette-ink-100: #e6e8eb;--palette-accent-600: #7c8ba1;--palette-accent-500: #a3b1c4;--palette-accent-400: #c5d0de;--palette-accent-200: #e3e9f0;--color-backdrop: rgb(0 0 0 / .65);--fx-gold: #c9b27a;--table-bg: #1b1e22;--table-ink: #dfe2e6;--table-dice: #c5d0de;--table-fumble: #e0796f;--table-water: #5f86a8;--table-forest: #66896f;--table-hills: #8f8f80;--table-mountain: #7d828a;--tpl-paper-1: #23272c;--tpl-paper-2: #1c1f23;--tpl-ink: #e6e8eb;--tpl-ink-dim: #9ba1aa;--tpl-label: #c5d0de;--tpl-edge: #a3b1c4;--tpl-link: #c5d0de;--tpl-border: #3a3f47;--tpl-frame: color-mix(in srgb, #a3b1c4 30%, transparent);--tpl-stripe: color-mix(in srgb, #e6e8eb 4%, transparent);--tpl-roll-bg: #111316;--tpl-roll-accent: #a3b1c4}:root[data-palette=slate][data-theme=light]{--palette-accent-600: #6b7b92;--palette-accent-500: #475569;--palette-accent-400: #334155;--palette-accent-200: #334155;--color-bg: #eef0f2;--color-surface-1: #fcfcfd;--color-surface-2: #e9ecef;--color-surface-3: #dee2e6;--color-surface-sunken: #d3d8dd;--color-glass: color-mix(in srgb, #fcfcfd 78%, transparent);--color-glass-strong: color-mix(in srgb, #fcfcfd 92%, transparent);--color-border: #c6ccd3;--color-border-strong: #9aa3ad;--color-text: #1b1f24;--color-text-dim: #5b636d;--color-backdrop: rgb(10 15 20 / .35);--fx-gold: #8a7a3a;--fx-vignette: radial-gradient(ellipse 120% 90% at 50% 20%, transparent 0%, color-mix(in srgb, #e2e6ea 80%, transparent) 100%);--table-bg: #e9ecef;--table-ink: #252a31;--table-dice: #475569;--table-fumble: #b3311c;--table-water: #3f6f9a;--table-forest: #4a7a5a;--table-hills: #7a7a6a;--table-mountain: #6b727b;--chat-system-bg: #e9ecef;--chat-inline-roll-bg: #dee2e6;--roll-card-bg: #fcfcfd;--macrobar-bg: color-mix(in srgb, #fcfcfd 92%, transparent);--map-void: #d3d8dd;--shadow-1: 0 2px 8px rgb(10 15 20 / .14);--shadow-2: 0 10px 34px rgb(10 15 20 / .2);--tpl-paper-1: #ffffff;--tpl-paper-2: #eef1f4;--tpl-ink: #1b1f24;--tpl-ink-dim: #5b636d;--tpl-label: #334155;--tpl-edge: #475569;--tpl-link: #334155;--tpl-border: #d3d9df;--tpl-frame: color-mix(in srgb, #a3b1c4 50%, transparent);--tpl-stripe: color-mix(in srgb, #e6eaee 70%, transparent);--tpl-roll-bg: #ffffff;--tpl-roll-accent: #94a3b8;--tpl-shadow: 0 2px 10px rgb(10 15 20 / .18)}:root[data-palette=code]{--palette-ink-950: #1b1d23;--palette-ink-900: #21252b;--palette-ink-850: #282c34;--palette-ink-800: #2f343e;--palette-ink-750: #353b45;--palette-ink-700: #3e4451;--palette-ink-600: #4b5263;--palette-ink-400: #7f848e;--palette-ink-100: #abb2bf;--palette-accent-600: #3f9aa6;--palette-accent-500: #56b6c2;--palette-accent-400: #7fcbd4;--palette-accent-200: #c2e6eb;--color-backdrop: rgb(0 0 0 / .6);--fx-accent: #c678dd;--fx-gold: #e5c07b;--table-bg: #252930;--table-ink: #abb2bf;--table-dice: #e5c07b;--table-fumble: #e06c75;--table-water: #61afef;--table-forest: #98c379;--table-hills: #d19a66;--table-mountain: #7f848e;--tpl-paper-1: #2f343e;--tpl-paper-2: #262a32;--tpl-ink: #abb2bf;--tpl-ink-dim: #7f848e;--tpl-label: #e06c75;--tpl-edge: #56b6c2;--tpl-link: #61afef;--tpl-border: #3e4451;--tpl-frame: color-mix(in srgb, #56b6c2 30%, transparent);--tpl-stripe: color-mix(in srgb, #abb2bf 4%, transparent);--tpl-roll-bg: #1e2227;--tpl-roll-accent: #98c379}:root[data-palette=code][data-theme=light]{--palette-accent-600: #4fb3b9;--palette-accent-500: #179299;--palette-accent-400: #117a80;--palette-accent-200: #2c5a5e;--color-bg: #e6e9ef;--color-surface-1: #eff1f5;--color-surface-2: #e6e9ef;--color-surface-3: #dce0e8;--color-surface-sunken: #ccd0da;--color-glass: color-mix(in srgb, #eff1f5 78%, transparent);--color-glass-strong: color-mix(in srgb, #eff1f5 92%, transparent);--color-border: #bcc0cc;--color-border-strong: #9ca0b0;--color-text: #4c4f69;--color-text-dim: #6c6f85;--color-backdrop: rgb(76 79 105 / .3);--fx-accent: #8839ef;--fx-gold: #df8e1d;--fx-vignette: radial-gradient(ellipse 120% 90% at 50% 20%, transparent 0%, color-mix(in srgb, #dce0e8 80%, transparent) 100%);--table-bg: #e6e9ef;--table-ink: #4c4f69;--table-dice: #8839ef;--table-fumble: #d20f39;--table-water: #1e66f5;--table-forest: #40a02b;--table-hills: #df8e1d;--table-mountain: #8c8fa1;--chat-system-bg: #e6e9ef;--chat-inline-roll-bg: #dce0e8;--roll-card-bg: #eff1f5;--macrobar-bg: color-mix(in srgb, #eff1f5 92%, transparent);--map-void: #dce0e8;--map-page: #eff1f5;--shadow-1: 0 2px 8px rgb(76 79 105 / .14);--shadow-2: 0 10px 34px rgb(76 79 105 / .2);--tpl-paper-1: #eff1f5;--tpl-paper-2: #e6e9ef;--tpl-ink: #4c4f69;--tpl-ink-dim: #6c6f85;--tpl-label: #d20f39;--tpl-edge: #179299;--tpl-link: #1e66f5;--tpl-border: #ccd0da;--tpl-frame: color-mix(in srgb, #179299 40%, transparent);--tpl-stripe: color-mix(in srgb, #dce0e8 70%, transparent);--tpl-roll-bg: #eff1f5;--tpl-roll-accent: #40a02b;--tpl-shadow: 0 2px 10px rgb(76 79 105 / .16)}:root[data-palette=cyberpunk]{--palette-ink-950: #08080f;--palette-ink-900: #0e0d17;--palette-ink-850: #14131f;--palette-ink-800: #1b1928;--palette-ink-750: #221f31;--palette-ink-700: #332e4a;--palette-ink-600: #463f62;--palette-ink-400: #9c97b8;--palette-ink-100: #e4e2ef;--palette-accent-600: #8a55d0;--palette-accent-500: #a370ec;--palette-accent-400: #c19df3;--palette-accent-200: #e4d7f8;--color-backdrop: rgb(4 2 14 / .72);--fx-accent: #5cd0e2;--fx-gold: #e8d67e;--glow-accent: 0 0 0 1px var(--color-accent-line), 0 0 16px color-mix(in srgb, #a370ec 28%, transparent), 0 0 6px color-mix(in srgb, #5cd0e2 14%, transparent);--table-bg: #12111c;--table-ink: #e4e2ef;--table-dice: #5cd0e2;--table-fumble: #ec6c90;--table-water: #4a86e0;--table-forest: #4fc4a0;--table-hills: #8f7fd0;--table-mountain: #6b6890;--tpl-paper-1: #1b1928;--tpl-paper-2: #14131f;--tpl-ink: #e4e2ef;--tpl-ink-dim: #a29dbd;--tpl-label: #5cd0e2;--tpl-edge: #a370ec;--tpl-link: #5cd0e2;--tpl-border: #332e4a;--tpl-frame: color-mix(in srgb, #a370ec 30%, transparent);--tpl-stripe: color-mix(in srgb, #e4e2ef 4%, transparent);--tpl-roll-bg: #0b0a13;--tpl-roll-accent: #5cd0e2}:root[data-palette=cyberpunk][data-theme=light]{--palette-accent-600: #9a6ad8;--palette-accent-500: #6d3fb8;--palette-accent-400: #5a3299;--palette-accent-200: #3b2a5e;--color-bg: #f1f0f6;--color-surface-1: #fcfcfe;--color-surface-2: #ebe9f2;--color-surface-3: #e0deeb;--color-surface-sunken: #d6d3e4;--color-glass: color-mix(in srgb, #fcfcfe 78%, transparent);--color-glass-strong: color-mix(in srgb, #fcfcfe 92%, transparent);--color-border: #c9c5dc;--color-border-strong: #9e99bd;--color-text: #1a1433;--color-text-dim: #5d5585;--color-backdrop: rgb(20 10 50 / .35);--fx-accent: #0891b2;--fx-gold: #a16207;--glow-accent: 0 0 0 1px var(--color-accent-line), 0 0 14px color-mix(in srgb, var(--palette-accent-500) 18%, transparent);--fx-vignette: radial-gradient(ellipse 120% 90% at 50% 20%, transparent 0%, color-mix(in srgb, #e7e5f0 80%, transparent) 100%);--table-bg: #ebe9f2;--table-ink: #241c45;--table-dice: #0891b2;--table-fumble: #c2416b;--table-water: #2563eb;--table-forest: #0f9f78;--table-hills: #7a6fb0;--table-mountain: #6b6890;--chat-system-bg: #ebe9f2;--chat-inline-roll-bg: #e0deeb;--roll-card-bg: #fcfcfe;--macrobar-bg: color-mix(in srgb, #fcfcfe 92%, transparent);--map-void: #d6d3e4;--shadow-1: 0 2px 8px rgb(20 10 50 / .14);--shadow-2: 0 10px 34px rgb(20 10 50 / .2);--tpl-paper-1: #fdfcff;--tpl-paper-2: #f2f0f8;--tpl-ink: #1a1433;--tpl-ink-dim: #5d5585;--tpl-label: #0e7490;--tpl-edge: #6d3fb8;--tpl-link: #0e7490;--tpl-border: #dedbea;--tpl-frame: color-mix(in srgb, #a370ec 45%, transparent);--tpl-stripe: color-mix(in srgb, #ecebf4 70%, transparent);--tpl-roll-bg: #ffffff;--tpl-roll-accent: #a370ec;--tpl-shadow: 0 2px 10px rgb(20 10 50 / .18)}@layer components{.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--control-h);padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface-2);box-shadow:var(--edge-highlight);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;transition:background .15s,border-color .15s,box-shadow .15s,color .15s}.btn>.avatar{margin-block:calc(-1 * var(--space-2))}@media(hover:hover)and (pointer:fine){.btn:hover:not(:disabled){background:var(--color-surface-3);border-color:var(--color-border-strong)}}.btn:disabled{cursor:default;box-shadow:none;background:var(--color-surface-1);color:var(--color-text-dim)}.btn.primary:disabled{background:color-mix(in srgb,var(--color-accent) 30%,var(--color-surface-2));border-color:color-mix(in srgb,var(--color-accent) 30%,var(--color-surface-2));color:var(--color-text-dim)}.btn.primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent);font-weight:600}@media(hover:hover)and (pointer:fine){.btn.primary:hover:not(:disabled){background:var(--color-accent-strong);border-color:var(--color-accent-strong);box-shadow:var(--glow-accent)}}.btn.danger{color:var(--color-danger)}@media(hover:hover)and (pointer:fine){.btn.danger:hover:not(:disabled){background:var(--color-danger-soft);border-color:var(--color-danger)}}.btn.ghost{background:transparent;border-color:transparent;box-shadow:none}@media(hover:hover)and (pointer:fine){.btn.ghost:hover:not(:disabled){background:var(--color-accent-soft)}}.btn.small{min-height:var(--control-h-sm);padding:var(--space-1) var(--space-3);font-size:var(--font-size-sm)}.btn.icon{padding:var(--space-2);min-width:var(--icon-button)}.btn.active{background:var(--color-accent-soft);border-color:var(--color-accent-line);color:var(--color-accent-strong);box-shadow:inset 0 0 12px var(--color-accent-soft)}.field{display:flex;flex-direction:column;gap:var(--space-1)}.field>label,.label{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--color-text-dim)}.color-input{width:var(--icon-button);height:var(--icon-button);padding:0;border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;flex-shrink:0}.color-input:disabled{opacity:.5;cursor:default}.color-picker{display:flex;flex-direction:column;gap:var(--space-3)}.color-picker-grid{display:grid;grid-template-columns:repeat(12,18px);gap:3px}.color-chip{width:18px;height:18px;padding:0;border:1px solid rgb(0 0 0 / .25);border-radius:3px;cursor:pointer}@media(hover:hover)and (pointer:fine){.color-chip:hover{transform:scale(1.15)}}.color-chip.is-selected{outline:2px solid var(--color-accent);outline-offset:1px}.color-picker-hex{display:flex;align-items:center;gap:var(--space-2)}.color-picker-hex .color-chip{width:24px;height:24px;cursor:default;transform:none}.color-picker-hex input{flex:1;min-width:0;font-family:var(--font-mono)}.toggle{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer}.thumb{width:40px;height:40px;object-fit:cover;border-radius:var(--radius-sm)}.modal-backdrop{position:fixed;inset:0;background:var(--color-backdrop);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:var(--z-modal)}.modal{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:var(--z-modal);background:var(--color-surface-1);border:1px solid var(--color-border-strong);border-top-color:var(--color-accent-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-2),var(--edge-highlight);min-width:340px;max-width:min(92vw,720px);max-height:90vh;display:flex;flex-direction:column}.modal.wide{width:min(92vw,960px);max-width:min(92vw,960px)}.menu-anchor{position:fixed;width:0;height:0}.menu,.popover{background:var(--color-glass-strong);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-2);z-index:var(--z-menu)}.menu{padding:var(--space-2);min-width:180px}.popover{padding:var(--space-4)}.menu-item{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;gap:var(--space-3);white-space:nowrap;outline:none}.menu-item[data-highlighted]{background:var(--color-accent-soft);color:var(--color-accent-strong)}@media(hover:hover)and (pointer:fine){.menu-item:hover{background:var(--color-accent-soft);color:var(--color-accent-strong)}}.menu-item[data-disabled]{opacity:.5;cursor:default}.menu-item.danger{color:var(--color-danger)}.menu-sep{border-top:1px solid var(--color-border);margin:var(--space-2) 0}.tooltip{background:var(--color-surface-3);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);box-shadow:var(--shadow-1);z-index:var(--z-menu);max-width:320px}.tabs{display:flex;border-bottom:1px solid var(--color-border);background:var(--color-surface-sunken);flex-shrink:0;overflow-x:auto;scrollbar-width:none;container-type:inline-size}.tabs::-webkit-scrollbar{display:none}.tab{padding:var(--space-3) var(--space-4);cursor:pointer;color:var(--color-text-dim);border:none;border-bottom:2px solid transparent;background:none;white-space:nowrap;-webkit-user-select:none;user-select:none}@container (max-width: 380px){.tab{padding-inline:var(--space-3)}}@media(hover:hover)and (pointer:fine){.tab:hover{color:var(--color-text)}}.tab.active,.tab[data-state=active]{color:var(--color-accent-strong);border-bottom-color:var(--color-accent-strong);background:linear-gradient(to top,var(--color-accent-soft),transparent 70%)}.tab.unread{color:var(--color-accent-strong)}.tab.unread svg{filter:drop-shadow(0 0 4px var(--color-accent));animation:tab-unread-pulse 1.6s ease-in-out infinite}@keyframes tab-unread-pulse{50%{filter:drop-shadow(0 0 1px var(--color-accent));opacity:.7}}@media(prefers-reduced-motion:reduce){.tab.unread svg{animation:none}}.tab-content{min-height:0}.badge{display:inline-flex;align-items:center;gap:var(--space-1);font-weight:600;border:1px solid var(--color-border);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--color-surface-3);color:var(--color-text-dim)}.badge.accent,.badge.gm{background:linear-gradient(var(--color-accent-soft),var(--color-accent-soft)),var(--color-surface-2);border-color:var(--color-accent-line);color:var(--color-accent-strong)}.badge.warning{border-color:var(--color-warning);background:var(--color-warning);color:var(--color-on-accent)}.badge.success{border-color:var(--color-success);background:var(--color-success);color:var(--color-on-accent)}.empty{color:var(--color-text-dim);text-align:center;padding:var(--space-6) var(--space-4)}.toasts{position:fixed;bottom:var(--space-5);left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:var(--space-2);z-index:var(--z-toast);pointer-events:none}.toast{background:var(--color-glass-strong);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--color-border-strong);border-left:2px solid var(--color-accent);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);box-shadow:var(--shadow-2)}.toast.error{border-left-color:var(--color-danger)}.avatar{width:var(--avatar-md);height:var(--avatar-md);border-radius:var(--radius-round);display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:var(--font-size-sm);color:var(--color-on-data);flex-shrink:0;background-size:cover;background-position:center;border:2px solid transparent}.avatar.sm{width:var(--avatar-sm);height:var(--avatar-sm);font-size:var(--font-size-xs)}.avatar.offline{opacity:.4}.list-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);cursor:pointer}@media(hover:hover)and (pointer:fine){.list-item:hover{background:var(--color-accent-soft)}}.virtual-list{overflow:auto;min-height:0;flex:1}.markdown p{margin:0 0 var(--space-3)}.markdown p:last-child{margin-bottom:0}.markdown table{border-collapse:collapse}.markdown th,.markdown td{border:1px solid var(--color-border);padding:var(--space-1) var(--space-3)}.icon{flex-shrink:0;vertical-align:-.15em}.tab{display:inline-flex;align-items:center;gap:var(--space-2)}.tab .icon{font-size:var(--font-size-lg)}}@layer components{.settings section{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3) var(--space-2) var(--space-5);border-bottom:1px solid var(--color-border)}.settings h3{display:flex;align-items:center;gap:var(--space-3);margin:var(--space-2) 0 0;font-family:var(--font-display);font-size:var(--font-size-sm);font-weight:600;text-transform:uppercase;letter-spacing:.16em;color:var(--color-text-dim)}.settings h3:after{content:"";flex:1;height:1px;background:linear-gradient(to right,var(--color-accent-line),transparent)}.help-table{width:100%;table-layout:fixed;font-size:var(--font-size-sm);border-collapse:collapse}.help-table td:first-child{width:55%}.help-table kbd{white-space:normal;overflow-wrap:anywhere;box-decoration-break:clone;-webkit-box-decoration-break:clone}.help-table td{padding:var(--space-1) var(--space-3);vertical-align:top}.help-table code{color:var(--color-gold);font-size:var(--font-size-xs);word-break:break-all}.help-table--commands{background:var(--color-surface-2);border:1px solid var(--color-border);border-left:3px solid var(--color-accent);border-radius:var(--radius-sm);border-collapse:separate;border-spacing:0;overflow:hidden}.help-table--commands tr+tr td{border-top:1px solid var(--color-border)}.help-table--commands td{padding:var(--space-2) var(--space-3);vertical-align:middle}.help-table--commands td.dim{color:var(--color-text)}.help-table--commands code{display:inline-block;padding:1px var(--space-2);color:var(--color-accent-strong);font-weight:600;background:var(--color-accent-soft);border:1px solid var(--color-accent-line);border-radius:var(--radius-sm)}kbd{font-family:inherit;font-size:var(--font-size-xs);background:var(--color-surface-2);border:1px solid var(--color-border);border-bottom-width:2px;border-radius:var(--radius-sm);padding:0 var(--space-2);white-space:nowrap}.pref-group{display:flex;flex-direction:column;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.pref-group h4{margin:0;padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--color-accent-strong);background:var(--color-surface-3);border-bottom:1px solid var(--color-border)}.pref-row{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3)}.pref-subhead{padding:var(--space-2) var(--space-3) 0;border-top:1px solid var(--color-border);font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-dim)}.pref-row+.pref-row{border-top:1px solid var(--color-border)}.pref-row>.field{margin:0}.mode-option,.palette-option{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2);font:inherit;font-size:var(--font-size-sm);color:var(--color-text);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer}@media(hover:hover)and (pointer:fine){.mode-option:hover,.palette-option:hover{border-color:var(--color-border-strong)}}.mode-option.active,.palette-option.active{border-color:var(--color-accent);color:var(--color-accent-strong);box-shadow:var(--glow-accent)}.member-self{display:inline-flex;padding:0;border:0;border-radius:var(--radius-round);background:none;cursor:pointer;transition:transform .12s ease}.member-self[data-state=open]{transform:scale(1.08)}@media(hover:hover)and (pointer:fine){.member-self:hover{transform:scale(1.08)}}.member-self:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.color-picker{display:flex;flex-direction:column;gap:var(--space-3)}.color-picker-title{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-dim)}.color-picker-swatches{display:grid;grid-template-columns:repeat(4,var(--avatar-md));gap:var(--space-2)}.color-swatch{position:relative;width:var(--avatar-md);height:var(--avatar-md);padding:0;border:2px solid transparent;border-radius:var(--radius-round);cursor:pointer;transition:transform .12s ease}@media(hover:hover)and (pointer:fine){.color-swatch:hover{transform:scale(1.12)}}.color-swatch[aria-pressed=true]{border-color:var(--color-text);box-shadow:0 0 0 2px var(--color-accent)}.color-swatch[data-taken]:after{content:"";position:absolute;inset:30%;border-radius:var(--radius-round);background:var(--color-on-data);opacity:.6}}@layer components{.check-grid .btn{justify-content:space-between;gap:var(--space-2);min-height:22px;padding:0 var(--space-2);font-size:var(--font-size-xs);white-space:nowrap}.check-picker{display:flex;flex-direction:column;gap:var(--space-1)}.spell-picker-grid .btn{overflow:hidden;text-overflow:ellipsis}}@layer components{.turn-tracker{width:var(--turn-tracker-w);background:var(--color-surface-1);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-2);z-index:var(--z-tracker);display:flex;flex-direction:column}.turn-head{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);background:var(--color-surface-2);border-bottom:1px solid var(--color-border);border-radius:var(--radius-lg) var(--radius-lg) 0 0;cursor:move;-webkit-user-select:none;user-select:none;font-weight:600}.turn-row{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);border:1px solid transparent;cursor:pointer;background:var(--color-surface-1)}@media(hover:hover)and (pointer:fine){.turn-row:hover{background:var(--color-surface-2)}}.turn-row.active{background:var(--turn-active-bg);border-color:var(--turn-active-border)}.turn-row.hidden-entry{opacity:.6}.turn-row.dragging{box-shadow:var(--shadow-1);position:relative;z-index:1}.turn-img{width:var(--avatar-md);height:var(--avatar-md);border-radius:var(--radius-round);background-color:var(--color-surface-3);background-size:cover;background-position:center;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;font-size:var(--font-size-xs);font-weight:700;color:var(--color-on-data)}@media(max-width:767px){.turn-tracker{--turn-list-max-h: 38dvh}}}@layer components{.map-root{position:absolute;inset:0;overflow:hidden;outline:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:none}.map-root.tool-pan,.map-root.space-pan{cursor:grab}.map-root.panning{cursor:grabbing!important}.map-root.tool-measure,.map-root.tool-template,.map-root.tool-draw-path,.map-root.tool-draw-rect,.map-root.tool-draw-ellipse,.map-root.tool-draw-line,.map-root.tool-draw-polygon,.map-root.tool-fog-reveal,.map-root.tool-fog-hide,.map-root.tool-wall,.map-root.tool-door{cursor:crosshair}.map-root.tool-draw-text{cursor:text}.map-root.tool-ping{cursor:pointer}.map-text-editor{position:absolute;z-index:var(--z-map-overlay);min-width:calc(var(--space-6) * 6);min-height:1.6em;background:var(--color-surface-1);border:1px dashed var(--color-accent-strong);border-radius:var(--radius-sm);font-family:var(--font-sans);font-weight:600;line-height:1.2;padding:var(--space-1) var(--space-2);resize:both}.map-bar-swatch{display:inline-block;width:var(--space-4);height:var(--space-6);border-radius:var(--radius-sm);flex-shrink:0}.map-bar-swatch.bar-1{background:var(--map-bar-1)}.map-bar-swatch.bar-2{background:var(--map-bar-2)}.map-bar-swatch.bar-3{background:var(--map-bar-3)}.tset-grid{display:grid;gap:var(--space-3);align-items:end}.tset-grid-2{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr))}.tset-grid-num{grid-template-columns:repeat(auto-fill,minmax(6.5rem,1fr))}.tset-grid .field>input,.tset-grid .field>select{width:100%;min-width:0}.tset-grid .toggle{min-height:var(--space-6);display:inline-flex;align-items:center}.tset-bars{display:grid;grid-template-columns:auto minmax(3.5rem,5rem) minmax(3.5rem,5rem) minmax(6rem,1fr);gap:var(--space-2) var(--space-3);align-items:center}.tset-bars.gm{grid-template-columns:auto minmax(3.5rem,5rem) minmax(3.5rem,5rem) minmax(6rem,1fr) auto}.tset-bars input[type=text],.tset-bars input:not([type]){width:100%;min-width:0}.tset-bars .toggle{justify-self:center}.tset-bars .map-bar-swatch{height:var(--space-5, 1.25rem)}.tset-segmented>.btn{border-radius:0}.tset-segmented>.btn:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.tset-segmented>.btn:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.tset-segmented>.btn+.btn{margin-left:-1px}.map-aura input[type=number]{width:5rem}.map-marker-dot{display:inline-block;width:.9em;height:.9em;border-radius:var(--radius-round)}.map-marker-dot.marker-red{background:var(--map-marker-red)}.map-marker-dot.marker-blue{background:var(--map-marker-blue)}.map-marker-dot.marker-green{background:var(--map-marker-green)}.map-marker-dot.marker-yellow{background:var(--map-marker-yellow)}.map-marker-dot.marker-purple{background:var(--map-marker-purple)}.map-tool.btn{position:relative;width:calc(var(--toolbar-w) - var(--space-3) * 2 + var(--space-2));height:calc(var(--icon-button) + var(--space-3));flex-shrink:0;font-size:var(--font-size-lg)}.map-tool.has-flyout:after{content:"";position:absolute;right:var(--space-1);bottom:var(--space-1);border-left:var(--space-2) solid transparent;border-bottom:var(--space-2) solid var(--color-text-dim)}.map-tool-sep{width:calc(var(--toolbar-w) - var(--space-6));border-top:1px solid var(--color-border);margin:var(--space-2) 0;flex-shrink:0}.map-zoom{font-size:var(--font-size-xs);color:var(--color-text-dim);background:none;border:none;cursor:pointer;padding:var(--space-1) 0;flex-shrink:0}.map-layer-gm{box-shadow:inset 0 0 0 2px var(--map-layer-gm-accent)}.map-layer-foreground{box-shadow:inset 0 0 0 2px var(--map-layer-foreground-accent)}.map-layer-walls{box-shadow:inset 0 0 0 2px var(--map-wall)}.map-layer-map{box-shadow:inset 0 0 0 2px var(--color-success)}.map-flyout{min-width:calc(var(--space-6) * 9);max-width:calc(var(--space-6) * 14);display:flex;flex-direction:column;gap:var(--space-1)}.map-flyout>.label{padding:var(--space-2) var(--space-3)}.map-fly-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:none;background:none;color:var(--color-text);text-align:left;cursor:pointer;white-space:normal}@media(hover:hover)and (pointer:fine){.map-fly-item:hover{background:var(--color-surface-3)}}.map-fly-item.active{background:var(--color-accent);color:var(--color-on-accent)}.map-fly-item .icon{font-size:var(--font-size-lg)}.map-flyout:has(.ruler-style){min-width:0}.ruler-style{display:flex;padding:var(--space-1);border:1px solid transparent;border-radius:var(--radius-sm);background:none;color:var(--color-text);text-align:left;cursor:pointer}@media(hover:hover)and (pointer:fine){.ruler-style:hover{background:var(--color-surface-3)}}.ruler-style.active{border-color:var(--color-accent);background:var(--color-surface-2)}.ruler-preview{width:calc(var(--space-6) * 5);height:calc(var(--space-6) * 1.5);flex-shrink:0;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-text) 7%,var(--color-surface-2))}.ruler-preview-streak{animation:ruler-preview-run 1.6s ease-in-out infinite}.ruler-preview-pulse{transform-box:fill-box;transform-origin:center;animation:ruler-preview-pulse 1.8s ease-out infinite}@keyframes ruler-preview-run{0%{stroke-dashoffset:10}to{stroke-dashoffset:-100}}@keyframes ruler-preview-pulse{0%{transform:scale(.4);opacity:1}to{transform:scale(1.3);opacity:0}}@media(prefers-reduced-motion:reduce){.ruler-preview-streak,.ruler-preview-pulse{animation:none}}.token-quickbar{position:absolute;z-index:var(--z-macrobar);display:flex;flex-direction:column;align-items:stretch;gap:2px;max-width:min(36rem,calc(100% - 2 * var(--space-4)));width:max-content;padding:3px;font-family:var(--font-sans);color:var(--quickbar-text);background:var(--quickbar-bg);border:1px solid var(--quickbar-border);border-radius:10px;box-shadow:var(--quickbar-shadow);-webkit-backdrop-filter:blur(12px) saturate(1.4);backdrop-filter:blur(12px) saturate(1.4)}.token-quickbar .btn{min-height:24px;padding:0 8px;gap:5px;font-size:var(--font-size-xs);font-weight:500;color:inherit;background:transparent;border:0;border-radius:7px;box-shadow:none}.token-quickbar .btn svg{opacity:.65}@media(hover:hover)and (pointer:fine){.token-quickbar .btn:hover:not(:disabled):not(.active){background:var(--quickbar-hover);border:0;color:var(--quickbar-text)}}.token-quickbar .btn.active svg{opacity:1}@media(hover:hover)and (pointer:fine){.token-quickbar .btn:hover svg{opacity:1}}.token-quickbar .btn.active{background:var(--color-accent);color:var(--color-on-accent);box-shadow:none}@media(hover:hover)and (pointer:fine){.token-quickbar .btn.active:hover{background:var(--color-accent);color:var(--color-on-accent);box-shadow:none}}.token-quickbar .btn.accent:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--color-accent)}.token-quickbar .btn.qb-bonus{color:var(--quickbar-text-dim)}.token-quickbar .qb-row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:2px}.token-quickbar .qb-row+.qb-row{padding-top:2px;border-top:1px solid var(--quickbar-rule)}.token-quickbar .qb-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;margin:0 2px;padding:0 6px;font-size:var(--font-size-xs);font-weight:600;font-variant-numeric:tabular-nums;color:var(--quickbar-text);background:var(--quickbar-hover);border-radius:6px}.token-quickbar .qb-mod{font-variant-numeric:tabular-nums;opacity:.65}.token-quickbar .qb-badge{min-width:15px;height:15px;padding:0 4px;font-size:10px;font-weight:700;line-height:15px;text-align:center;color:var(--color-on-accent);background:var(--color-accent);border-radius:var(--radius-round)}.token-quickbar .btn.active .qb-badge{color:var(--color-accent);background:var(--color-on-accent)}.qb-conditions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;width:25rem;max-width:calc(100vw - 2 * var(--space-4))}.qb-cond{display:flex;align-items:center;gap:6px;min-width:0;padding:4px 6px;font-size:var(--font-size-xs);text-transform:capitalize;text-align:left;color:var(--color-text-dim);background:none;border:1px solid transparent;border-radius:var(--radius-sm);cursor:pointer}.qb-cond span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qb-cond svg{flex:none;font-size:15px}@media(hover:hover)and (pointer:fine){.qb-cond:hover{color:var(--color-text);background:var(--color-surface-2)}}.qb-cond.is-on{color:var(--color-text);background:color-mix(in srgb,var(--color-accent) 16%,transparent);border-color:color-mix(in srgb,var(--color-accent) 50%,transparent)}.qb-cond-clear{grid-column:1 / -1;margin-top:4px;padding:4px;font-size:var(--font-size-xs);color:var(--color-text-dim);background:none;border:0;border-top:1px solid var(--color-border);cursor:pointer}@media(hover:hover)and (pointer:fine){.qb-cond-clear:hover{color:var(--color-text)}}.qb-legendary{display:flex;flex-direction:column;gap:2px;min-width:14rem;max-width:calc(100vw - 2 * var(--space-4))}.qb-legendary-opt{display:flex}.qb-legendary-opt .btn{flex:1;justify-content:flex-start}.qb-stats{display:grid;grid-template-columns:auto 1fr;gap:var(--space-1) var(--space-3);margin:0;min-width:14rem;max-width:min(24rem,calc(100vw - 2 * var(--space-4)));font-size:var(--font-size-sm)}.qb-stats>div{display:contents}.qb-stats dt{color:var(--color-text-dim)}.qb-stats dd{margin:0;overflow-wrap:anywhere}.qb-stats-empty{font-size:var(--font-size-sm);color:var(--color-text-dim)}.qb-tip{display:flex;flex-direction:column;gap:var(--space-1)}.qb-tip-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.qb-tip-head span,.qb-tip-note{font-size:var(--font-size-xs);color:var(--color-text-dim)}.qb-tip .markdown p{margin:0}.qb-tip-rows{display:grid;grid-template-columns:auto 1fr;gap:1px var(--space-3);margin:0;font-size:var(--font-size-xs)}.qb-tip-rows>div{display:contents}.qb-tip-rows dt{color:var(--color-text-dim)}.qb-tip-rows dd{margin:0;font-variant-numeric:tabular-nums}.qb-tip-macro{font-family:var(--font-mono);font-size:var(--font-size-xs);white-space:pre-wrap;overflow-wrap:anywhere;color:var(--color-text-dim)}.qb-legendary-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);min-height:24px;margin-bottom:2px;font-size:var(--font-size-xs);color:var(--color-text-dim)}.token-stats{position:absolute;z-index:var(--z-macrobar);display:flex;flex-direction:column;width:max-content;overflow:hidden;font-family:var(--font-sans);background:var(--quickbar-bg);border:1px solid var(--quickbar-border);border-radius:6px;box-shadow:var(--quickbar-shadow);-webkit-backdrop-filter:blur(12px) saturate(1.4);backdrop-filter:blur(12px) saturate(1.4);pointer-events:auto}.token-stat{--stat-color: var(--map-bar-1);position:relative;display:flex;align-items:center;gap:6px;height:26px;padding:3px 9px 3px 3px;color:var(--quickbar-text);cursor:text;transition:background .15s}.token-stat+.token-stat{border-top:1px solid var(--quickbar-border)}.token-stat:focus-within{background:var(--quickbar-hover)}@media(hover:hover)and (pointer:fine){.token-stat:hover{background:var(--quickbar-hover)}}.token-stat.stat-ac{--stat-color: var(--map-bar-2)}.token-stat.stat-pp{--stat-color: var(--color-gold)}.token-stat.is-bloodied{--stat-color: var(--color-warning)}.token-stat.is-critical,.token-stat.is-down{--stat-color: var(--map-bar-3)}.token-stat.is-down .token-stat-input{text-decoration:line-through}.token-stat-fill{position:absolute;inset:0 auto 0 0;background:color-mix(in srgb,var(--stat-color) 22%,transparent);box-shadow:inset 0 -2px 0 var(--stat-color);transition:width .3s ease-out;pointer-events:none}.token-stat-tag{position:relative;display:flex;align-items:center;justify-content:center;width:24px;height:100%;color:var(--palette-white);background:linear-gradient(180deg,color-mix(in srgb,var(--stat-color) 100%,#fff 18%),var(--stat-color));border-radius:3px;box-shadow:inset 0 1px #ffffff40;text-shadow:0 1px 1px rgb(0 0 0 / .35)}.token-stat-tag svg{font-size:13px}.token-stat .token-stat-input{position:relative;min-width:0;padding:0;font:700 15px/1 var(--font-sans);font-variant-numeric:tabular-nums;color:inherit;text-align:right;background:none;border:none;border-radius:0;box-shadow:none;outline:none}.token-stat .token-stat-input[readonly]{cursor:default}.token-stat-max{position:relative;margin-left:-4px;font-size:11px;font-variant-numeric:tabular-nums;opacity:.6}.token-stat.is-bad{animation:token-stat-shake .3s;background:color-mix(in srgb,var(--map-bar-3) 25%,transparent)}@keyframes token-stat-shake{25%{transform:translate(-3px)}75%{transform:translate(3px)}}.tokwin-tabs{display:flex;flex-direction:column;min-height:100%}.tokwin-tabs>.tabs{position:sticky;top:0;z-index:2;background:var(--color-surface-2)}.tokwin-tabs>.tab-content{flex:1;display:flex;flex-direction:column}.tokwin-tabs>.tab-content[hidden]{display:none}.tokwin-tabs>.tab-content>.sheet-root{flex:1}.template-quickbar{flex-direction:row;align-items:center;gap:4px;padding:5px 6px}.template-swatch{width:18px;height:18px;padding:0;border:2px solid rgb(255 255 255 / .25);border-radius:50%;cursor:pointer}@media(hover:hover)and (pointer:fine){.template-swatch:hover{border-color:#ffffffb3}}.template-swatch.active{border-color:#fff;box-shadow:0 0 0 2px var(--color-accent)}}@layer components{.chat-jump{position:absolute;bottom:var(--space-4);left:50%;transform:translate(-50%);box-shadow:var(--shadow-2)}.msg{position:relative;margin-top:var(--space-3);line-height:1.4}.msg.msg-cont{margin-top:var(--space-1)}.msg-head{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-1)}.msg-av{width:var(--avatar-md);height:var(--avatar-md);border-radius:var(--radius-sm);flex-shrink:0;background-color:var(--color-surface-3);background-size:cover;background-position:center;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:var(--font-size-sm);color:var(--color-on-data)}.msg-av.msg-av-img{background-color:transparent;background-size:contain;background-repeat:no-repeat}.msg-time{font-size:var(--font-size-xs);color:var(--color-text-dim);opacity:0;transition:opacity .15s}@media(hover:hover)and (pointer:fine){.msg:hover .msg-time{opacity:1}}@media not ((hover:hover)and (pointer:fine)){.msg-time{opacity:1}}.msg-body{padding-left:calc(var(--avatar-md) + var(--space-3))}.chat-md p{margin:0}.chat-md p+p{margin-top:var(--space-2)}.chat-md ul,.chat-md ol{margin:0;padding-left:var(--space-5)}.chat-md code{font-family:var(--font-mono);font-size:var(--font-size-sm);background:var(--color-surface-2);padding:0 var(--space-1);border-radius:var(--radius-sm)}.msg a{word-break:break-all}.msg.msg-private .msg-head,.msg.msg-private .msg-body{background:var(--chat-whisper-bg);border-left:2px solid var(--chat-whisper-border)}.msg.msg-private .msg-head{border-radius:var(--radius-sm) var(--radius-sm) 0 0;padding:var(--space-1) var(--space-2) 0;margin-bottom:0}.msg.msg-private .msg-body{border-radius:0 0 var(--radius-sm) var(--radius-sm);padding:var(--space-1) var(--space-3) var(--space-2) calc(var(--avatar-md) + var(--space-3) + var(--space-2));color:var(--chat-whisper-text)}.msg.msg-private.msg-cont .msg-body{border-radius:var(--radius-sm)}.msg.msg-emote{text-align:center;font-style:italic;color:var(--chat-emote-text);padding:var(--space-1) var(--space-4);display:flex;justify-content:center;align-items:center;gap:var(--space-2)}.msg.msg-desc{font-family:var(--font-serif);font-style:italic;background:var(--chat-desc-bg);border-top:1px solid var(--color-gold);border-bottom:1px solid var(--color-gold);color:var(--chat-desc-text);padding:var(--space-3) var(--space-4);text-align:center}.msg.msg-system pre{margin:0;white-space:pre-wrap;font-family:var(--font-mono);font-size:var(--font-size-sm);background:var(--chat-system-bg);border:1px dashed var(--color-border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);color:var(--color-text-dim)}.rollcard{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-2);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-3);background:var(--roll-card-bg);border:1px solid var(--roll-card-border);border-left:3px solid var(--roll-card-edge);border-radius:var(--radius-lg);color:var(--color-text)}.rollcard.crit{border-left-color:var(--color-crit)}.rollcard.fumble{border-left-color:var(--color-fumble)}.rollcard.both{border-left-color:var(--color-crit-fumble)}.rollcard-title p{margin:0}.die-chip{display:inline-flex;align-items:center;justify-content:center;min-width:var(--roll-die-size);height:var(--roll-die-size);padding:0 var(--space-2);font-family:var(--font-mono);font-weight:700;font-size:var(--font-size-sm);color:var(--roll-die-text);background:var(--roll-die-bg);border:1px solid var(--roll-die-border);border-radius:var(--radius-lg)}.die-chip.crit,.die-chip.success{color:var(--color-crit);border-color:var(--color-crit);background:var(--roll-crit-soft)}.die-chip.fumble{color:var(--color-fumble);border-color:var(--color-fumble);background:var(--roll-fumble-soft)}.die-chip.dropped{color:var(--color-dropped);background:transparent;border-style:dashed;border-color:var(--roll-die-border);text-decoration:line-through;opacity:.7}.roll-seg{font-family:var(--font-mono)}.roll-seg.op,.roll-seg.num{color:var(--color-text-dim)}.roll-seg.num{font-weight:700;color:var(--color-text)}.roll-seg.label{font-family:var(--font-sans);color:var(--color-text-dim);font-style:italic}.roll-seg.dropped{text-decoration:line-through;color:var(--color-dropped);opacity:.7}.roll-seg.die{font-weight:700}.roll-seg.crit,.roll-seg.success{color:var(--color-crit);font-weight:700}.roll-seg.fumble{color:var(--color-fumble);font-weight:700}.roll-total{flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;align-self:stretch;min-width:var(--roll-total-w);padding:var(--space-1) var(--space-3);background:var(--roll-total-bg);border:1px solid transparent;border-radius:var(--radius-md)}.roll-total-caption{font-size:var(--font-size-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-dim);white-space:nowrap}.roll-total.crit{color:var(--color-crit);border-color:var(--color-crit);background:var(--roll-crit-soft)}.roll-total.fumble{color:var(--color-fumble);border-color:var(--color-fumble);background:var(--roll-fumble-soft)}.roll-total.both{border-color:var(--color-crit-fumble);background:var(--roll-both-soft)}.roll-total.crit .roll-total-caption,.roll-total.fumble .roll-total-caption{color:inherit}.inlineroll{display:inline-block;min-width:var(--space-6);text-align:center;padding:0 var(--space-2);margin:0 var(--space-1);background:var(--chat-inline-roll-bg);color:var(--color-text);font-weight:700;font-style:normal;font-variant-numeric:tabular-nums;border:1px solid var(--roll-die-border);border-bottom:2px solid var(--chat-inline-roll-border);border-radius:var(--radius-lg);cursor:help;line-height:1.35}.inlineroll.crit{color:var(--color-crit);border-color:var(--color-crit);background:var(--roll-crit-soft)}.inlineroll.fumble{color:var(--color-fumble);border-color:var(--color-fumble);background:var(--roll-fumble-soft)}.inlineroll.both{border-color:var(--color-crit-fumble);background:var(--roll-both-soft)}.table-results{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-2) 0}.tpl .table-results{padding:var(--space-2) var(--space-4)}.tpl{position:relative;border:1px solid var(--chat-template-border);padding:4px;border-radius:0 0 var(--radius-lg) var(--radius-lg);overflow:hidden;margin-top:var(--space-2);background:var(--chat-template-bg);color:var(--chat-template-text);box-shadow:inset 0 0 0 3px var(--chat-template-frame-gap),inset 0 0 0 4px var(--chat-template-frame),var(--chat-template-shadow)}.tpl:before{content:"";position:absolute;inset:0 0 auto;height:10px;background:var(--chat-template-bar);clip-path:polygon(0 0,100% 0,100% 3px,calc(50% + 14px) 3px,50% 10px,calc(50% - 14px) 3px,0 3px)}.tpl:after{content:"";position:absolute;inset:6px;pointer-events:none;--tick: var(--chat-template-edge);background:linear-gradient(var(--tick),var(--tick)) top left / 10px 2px,linear-gradient(var(--tick),var(--tick)) top left / 2px 10px,linear-gradient(var(--tick),var(--tick)) top right / 10px 2px,linear-gradient(var(--tick),var(--tick)) top right / 2px 10px,linear-gradient(var(--tick),var(--tick)) bottom left / 10px 2px,linear-gradient(var(--tick),var(--tick)) bottom left / 2px 10px,linear-gradient(var(--tick),var(--tick)) bottom right / 10px 2px,linear-gradient(var(--tick),var(--tick)) bottom right / 2px 10px;background-repeat:no-repeat;opacity:.7}.tpl-title{position:relative;background:var(--chat-template-header-bg);color:var(--chat-template-header-text);font-weight:800;font-size:var(--font-size-md);line-height:1.25;letter-spacing:.01em;padding:var(--space-4) var(--space-4) var(--space-2)}.tpl-title:after{content:"";position:absolute;left:var(--space-4);right:var(--space-4);bottom:0;height:2px;background:var(--chat-template-rule)}.tpl-sub{background:var(--chat-template-sub-bg);color:var(--chat-template-sub-text);font-style:italic;font-size:var(--font-size-sm);line-height:1.3;padding:var(--space-1) var(--space-4) 0}.tpl-rows{width:100%;border-collapse:collapse;margin:var(--space-1) 0;line-height:1.25}.tpl-rows tr:nth-child(odd){background:var(--chat-template-stripe)}.tpl-rows th{text-align:left;padding:var(--space-1) var(--space-3) var(--space-1) var(--space-4);font-size:var(--font-size-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--chat-template-label);width:34%;vertical-align:middle}.tpl-rows td{padding:var(--space-1) var(--space-4) var(--space-1) 0}.tpl-typed{display:inline-flex;align-items:center;vertical-align:middle}.tpl-dmg-type{display:inline-flex;align-items:center;gap:3px;margin-left:var(--space-2);line-height:1;font-size:var(--font-size-xs);font-style:italic;color:var(--chat-template-dim)}.tpl-dmg-icon{display:inline-flex;align-items:center;justify-content:center;width:1.2em}.tpl-dmg-icon:empty{display:none}.tpl-dmg-icon .icon{vertical-align:0}.dmg-acid{color:#7cb342}.dmg-bludgeoning{color:#8d8a83}.dmg-cold{color:#4fc3f7}.dmg-fire{color:#f4511e}.dmg-force{color:#ab47bc}.dmg-lightning{color:#fbc02d}.dmg-necrotic{color:#6d8f5a}.dmg-piercing{color:#90a4ae}.dmg-poison{color:#43a047}.dmg-psychic{color:#ec407a}.dmg-radiant{color:#ffb300}.dmg-slashing{color:#b0704f}.dmg-thunder{color:#5c6bc0}.tpl-stack{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.tpl-stacked{display:flex;align-items:center;gap:var(--space-3)}.tpl-sum{align-self:stretch;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;margin-left:auto;padding-left:var(--space-3);border-left:1px solid color-mix(in srgb,var(--chat-template-header-text) 35%,transparent);line-height:1;white-space:nowrap}.tpl-sum-label{font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--chat-template-dim)}.tpl-sum-value{font-size:1.35rem;font-weight:800;font-variant-numeric:tabular-nums;color:var(--chat-template-header-text)}.tpl-crit-btn{display:inline-flex;align-items:center;gap:2px;margin-left:var(--space-2);padding:0 var(--space-1);font:inherit;font-size:.85em;letter-spacing:.04em;text-transform:uppercase;color:var(--chat-template-label);background:transparent;border:1px solid currentColor;border-radius:4px;opacity:.6;cursor:pointer;vertical-align:middle}.tpl-crit-btn:focus-visible{opacity:1;color:var(--color-crit)}@media(hover:hover)and (pointer:fine){.tpl-crit-btn:hover{opacity:1;color:var(--color-crit)}}.tpl .inlineroll{background:var(--chat-template-roll-bg);color:var(--chat-template-text);border-color:var(--chat-template-roll-border);border-bottom-color:var(--chat-template-roll-accent);line-height:1.2}.tpl .inlineroll.d20.crit{color:var(--color-crit);border-color:var(--color-crit);background:var(--roll-crit-soft)}.tpl .inlineroll.d20.fumble{color:var(--color-fumble);border-color:var(--color-fumble);background:var(--roll-fumble-soft)}.tpl .inlineroll.d20.both{border-color:var(--color-crit-fumble);background:var(--roll-both-soft)}.tpl-desc{position:relative;padding:var(--space-2) var(--space-4) var(--space-3);font-size:var(--font-size-sm);line-height:1.4}.tpl-desc:before{content:"";position:absolute;left:var(--space-4);right:var(--space-4);top:0;height:1px;background:var(--chat-template-rule);opacity:.5}.tpl-details{interpolate-size:allow-keywords;position:relative;font-size:var(--font-size-sm);line-height:1.4}.tpl-details>summary{display:flex;align-items:center;gap:var(--space-1);list-style:none;padding:var(--space-1) var(--space-4);cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--chat-template-link);font-size:calc(var(--font-size-xs) * .9);font-style:italic}@media(hover:hover)and (pointer:fine){.tpl-details>summary:hover{text-decoration:underline}}.tpl-details>summary::-webkit-details-marker{display:none}.tpl-details>summary:before{content:"";border-block:.3em solid transparent;border-inline-start:.45em solid currentColor;transition:transform .12s}.tpl-details[open]>summary:before{transform:rotate(90deg)}.tpl-details::details-content{block-size:0;opacity:0;overflow:hidden;transition:block-size .2s ease,opacity .2s ease,content-visibility .2s allow-discrete}.tpl-details[open]::details-content{block-size:auto;opacity:1}@media(prefers-reduced-motion:reduce){.tpl-details::details-content,.tpl-details>summary:before{transition:none}}.tpl-details-body{padding:0 var(--space-4) var(--space-3)}.tpl a{color:var(--chat-template-link)}.tpl-external{padding:var(--space-2) var(--space-4);border-top:1px solid var(--chat-template-border)}.tpl-external .badge{background:var(--chat-external-badge);text-transform:none;letter-spacing:0}.chat-input{border-top:1px solid var(--color-border);padding:var(--space-2) var(--space-3) var(--space-3);display:flex;flex-direction:column;gap:var(--space-2);flex-shrink:0;background:var(--color-surface-1)}.die-btn{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:1px;padding:var(--space-2) 0 3px;border:none;background:transparent;color:var(--color-text-dim);cursor:pointer;transition:background .12s,color .12s}.die-btn+.die-btn{border-left:1px solid var(--color-border)}.die-btn .die-icon{transition:transform .15s}@media(hover:hover)and (pointer:fine){.die-btn:hover{background:var(--color-accent-soft);color:var(--color-accent-strong)}.die-btn:hover .die-icon{transform:rotate(-12deg) scale(1.08)}}.die-btn:active{background:color-mix(in srgb,var(--color-accent) 24%,transparent)}.die-btn:active .die-icon{transform:rotate(20deg) scale(.94)}.die-btn:focus-visible{outline-offset:-2px}.chat-text{display:block;width:100%;resize:none;min-height:68px;max-height:var(--chat-input-max-h);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--color-surface-sunken);line-height:1.45}.chat-text::placeholder{color:var(--color-text-dim);opacity:.8}.cmd-assist{position:absolute;left:0;right:0;bottom:calc(100% + var(--space-2));z-index:5;border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-surface-2);box-shadow:var(--shadow-1);font-size:var(--font-size-sm);overflow:hidden}.cmd-item{display:flex;flex-wrap:wrap;column-gap:var(--space-3);align-items:baseline;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);cursor:pointer}.cmd-item.active{background:var(--color-accent-soft);box-shadow:inset 2px 0 0 var(--color-accent)}.cmd-item .cmd-args{flex:1}.cmd-item .cmd-gm{margin-left:auto}.cmd-item .cmd-summary{flex-basis:100%;margin-top:1px;color:var(--color-text-dim);font-size:var(--font-size-xs);line-height:1.35}.cmd-item:not(.active) .cmd-summary{display:none}.cmd-list+.cmd-usage{border-top:1px solid var(--color-border)}.cmd-usage .cmd-summary{line-height:1.4}.cmd-example{font-family:var(--font-mono);font-size:var(--font-size-xs);padding:1px var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-round);background:var(--color-surface-1);color:var(--color-text);cursor:pointer}@media(hover:hover)and (pointer:fine){.cmd-example:hover{border-color:var(--color-accent-line);background:var(--color-accent-soft)}}.cmd-keys kbd{font-family:var(--font-mono);font-size:10px;padding:0 var(--space-2);margin-right:2px;border:1px solid var(--color-border);border-bottom-width:2px;border-radius:var(--radius-sm);background:var(--color-surface-2)}}@layer components{.macrobar-wrap{position:absolute;left:50%;bottom:var(--space-4);transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:var(--space-2);pointer-events:none;z-index:var(--z-macrobar);max-width:calc(100% - 2 * var(--space-4))}.macrobar{pointer-events:auto;display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-2);padding:var(--space-2);background:var(--macrobar-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-2)}@media(max-width:767px){.macrobar-wrap{bottom:var(--space-3);width:calc(100% - 2 * var(--space-3));align-items:stretch}.macrobar{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;overscroll-behavior:contain;scrollbar-width:none}.macrobar>*{flex-shrink:0}}}@layer components{.page-bar{display:flex;flex:1;align-items:center;gap:var(--space-2);min-width:0}.btn.map-trigger{justify-content:flex-start;min-width:0;max-width:var(--map-trigger-max-w);padding-inline:var(--space-2) var(--space-3);font-weight:600}.map-trigger-group{color:var(--color-text-dim);font-weight:400;white-space:nowrap}.map-trigger-ribbon{flex-shrink:0;color:var(--color-accent-strong)}.map-trigger-chevron{flex-shrink:0;margin-left:auto;color:var(--color-text-dim);transition:rotate .15s}.map-trigger.active .map-trigger-chevron{rotate:180deg}.page-thumb{display:inline-flex;flex-shrink:0;width:var(--map-thumb-w);height:var(--map-thumb-h);overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-sunken)}.page-thumb.sm{width:calc(var(--map-thumb-w) / 2.5);height:calc(var(--map-thumb-h) / 2.5)}.page-thumb svg,.page-thumb img{width:100%;height:100%;object-fit:cover}.popover:has(>.map-list){padding:0}.map-list{display:flex;flex-direction:column;width:min(var(--map-list-w),calc(100vw - var(--space-6)))}.map-list-head,.map-list-foot{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4)}.map-list-head{border-bottom:1px solid var(--color-border);font-family:var(--font-display);font-size:var(--font-size-sm);font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-dim)}.map-list-foot{border-top:1px solid var(--color-border)}.map-list-body{display:flex;flex-direction:column;gap:var(--space-1);max-height:var(--map-list-max-h);overflow-y:auto;padding:var(--space-2)}.map-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2);border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:none}.map-row:focus{outline:none}.map-row:focus-visible{outline:2px solid var(--color-focus);outline-offset:-2px}.map-row.nested{margin-left:var(--space-5)}@media(hover:hover)and (pointer:fine){.map-row:hover{background:var(--color-surface-2)}.map-row:hover .page-thumb{border-color:var(--color-border-strong)}}.map-row.active{border-color:var(--color-accent-line);background:var(--color-accent-soft)}.map-row.active .page-thumb{border-color:var(--color-accent)}.map-row.drop-target{border-color:var(--color-accent);background:var(--color-accent-soft)}.map-row.dragging{position:relative;z-index:1;background:var(--color-surface-1);box-shadow:var(--shadow-1)}.map-row-name{font-weight:600}.map-row-meta{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-xs);color:var(--color-text-dim)}.map-row-ribbon{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--color-accent-strong)}.map-row-assigned,.map-group-count{padding:0 var(--space-2);border-radius:var(--radius-round);background:var(--color-surface-3);color:var(--color-text-dim);font-family:var(--font-sans);font-size:var(--font-size-xs);letter-spacing:0}.map-row-title{display:flex;align-items:center;gap:var(--space-1);min-width:0}.map-row-input{min-width:0;font-weight:600}.map-row .map-row-more,.map-row .map-row-rename{opacity:0}.map-row .map-row-more:focus-visible,.map-row .map-row-rename:focus-visible{opacity:1}@media(hover:hover)and (pointer:fine){.map-row:hover .map-row-more,.map-row:hover .map-row-rename{opacity:1}}@media not ((hover:hover)and (pointer:fine)){.map-row .map-row-more,.map-row .map-row-rename{opacity:1}}.map-group-block{display:flex;flex-direction:column;gap:var(--space-1)}.map-group{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border:1px dashed transparent;border-radius:var(--radius-md);cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--color-text-dim)}@media(hover:hover)and (pointer:fine){.map-group:hover{background:var(--color-surface-2);color:var(--color-text)}}.map-group.over{border-color:var(--color-accent);background:var(--color-accent-soft)}.map-group.has-active .map-group-name{color:var(--color-accent-strong)}.map-group-chevron{flex-shrink:0}.map-group-name{font-weight:600}}@layer components{.page-bar .ribbon-btn{touch-action:none;cursor:grab}.ribbon-ghost{position:fixed;z-index:var(--z-toast);display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-1);box-shadow:var(--shadow-1);color:var(--color-accent-strong);font-size:var(--font-size-xs);pointer-events:none;transform:translate(12px,12px)}.ribbon-ghost.over{border-color:var(--color-accent)}@media(max-width:767px){.page-bar{flex:none}.page-bar .ribbon-label{display:none}.btn.map-trigger{max-width:40vw}}}@layer components{*{box-sizing:border-box}html,body,#root{margin:0;height:100%;background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:var(--font-size-md);-webkit-font-smoothing:antialiased}html{-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;overscroll-behavior:none}body{overflow:hidden;overscroll-behavior:none}button,[role=button],[role=tab],.tab{touch-action:manipulation;-webkit-user-select:none;user-select:none}@media(pointer:coarse){input:not([type=checkbox],[type=radio],[type=color],[type=range],[type=file]),select,textarea{font-size:max(16px,1em)}}a{color:var(--color-link)}button,input,select,textarea{font:inherit;color:inherit}input:not([type=checkbox],[type=radio],[type=color],[type=range],[type=file]),select,textarea{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);min-width:0;transition:border-color .15s,box-shadow .15s}@media(hover:hover)and (pointer:fine){input:not([type=checkbox],[type=radio],[type=color],[type=range],[type=file]):hover,select:hover,textarea:hover{border-color:var(--color-border-strong)}}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-focus);box-shadow:var(--glow-accent)}:focus-visible{outline:1px solid var(--color-focus);outline-offset:1px}input[type=checkbox],input[type=radio],input[type=range]{accent-color:var(--color-accent)}::selection{background:var(--color-accent-line)}*{scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent}textarea{resize:vertical}input[type=number]{width:70px}hr{border:none;border-top:1px solid var(--color-border);margin:var(--space-3) 0}.row{display:flex;align-items:center;gap:var(--space-3)}.col{display:flex;flex-direction:column;gap:var(--space-3)}.grow{flex:1;min-width:0}.spacer{flex:1}.wrap{flex-wrap:wrap}.scroll{overflow:auto}.centered{align-items:center}.dim{color:var(--color-text-dim)}.small{font-size:var(--font-size-sm)}.danger-text{color:var(--color-danger)}.card{background:var(--color-surface-1);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--edge-highlight);padding:var(--space-5)}}@layer components{.weave-backdrop-slot{position:fixed;inset:0;pointer-events:none;z-index:0;background:var(--color-bg)}.weave-backdrop{position:absolute;inset:0;overflow:hidden;animation:weave-in 1.2s ease-out}@keyframes weave-in{0%{opacity:0}}.weave-backdrop svg{position:absolute;z-index:1;left:50%;top:50%;width:min(118vmin,1180px);height:auto;transform:translate(-50%,-50%);opacity:.6}.weave-backdrop .weave-fx,.weave-backdrop .weave-fx-back{position:absolute;inset:0}.weave-backdrop .weave-fx-back{z-index:0}.weave-backdrop .weave-fx{z-index:2}.weave-backdrop[data-class=wizard]{--wv-ink: #a9c4ff}.weave-backdrop[data-class=warlock]{--wv-ink: #d9bdf5}.weave-backdrop[data-class=cleric]{--wv-ink: #f3dc9a}.weave-backdrop[data-class=paladin]{--wv-ink: #bcd4f0}.weave-backdrop[data-class=druid]{--wv-ink: #9fd6a3}.weave-backdrop[data-class=sorcerer]{--wv-ink: #ffb08a}.weave-backdrop[data-class=bard]{--wv-ink: #f0b3e3}.weave-backdrop[data-class=ranger]{--wv-ink: #c8d79e}.weave-backdrop[data-class=artificer]{--wv-ink: #c9d3dc}:root[data-theme=light] .weave-backdrop[data-class=wizard]{--wv-ink: #1f3a6e}:root[data-theme=light] .weave-backdrop[data-class=warlock]{--wv-ink: #3d1f4d}:root[data-theme=light] .weave-backdrop[data-class=cleric]{--wv-ink: #6b4e12}:root[data-theme=light] .weave-backdrop[data-class=paladin]{--wv-ink: #1d3f63}:root[data-theme=light] .weave-backdrop[data-class=druid]{--wv-ink: #2f5d34}:root[data-theme=light] .weave-backdrop[data-class=sorcerer]{--wv-ink: #8a2a12}:root[data-theme=light] .weave-backdrop[data-class=bard]{--wv-ink: #5a2350}:root[data-theme=light] .weave-backdrop[data-class=ranger]{--wv-ink: #3c4a26}:root[data-theme=light] .weave-backdrop[data-class=artificer]{--wv-ink: #3b4650}.center-page{position:relative;z-index:1;height:100%;overflow:auto;display:flex;justify-content:center;align-items:flex-start;padding:var(--space-6) var(--space-5)}.center-page.centered{justify-content:center;align-items:center}.center-page .card{background:var(--color-glass-strong);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.brand{display:inline-flex;align-items:center;gap:var(--space-3);font-size:var(--font-size-xl)}.brand-word>span{color:var(--color-accent-strong)}.lobby h2,.campaign-section h3{display:flex;align-items:center;gap:var(--space-4);margin:0 0 var(--space-4);font-family:var(--font-display);font-size:var(--font-size-sm);font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-dim)}.lobby h2:after{content:"";flex:1;height:1px;background:linear-gradient(to right,var(--color-accent-line),transparent)}.auth-head .brand{font-size:var(--font-size-display);flex-direction:column;gap:var(--space-2)}.auth-head .brand-icon{font-size:var(--font-size-display)}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--color-border)}.campaign-card{position:relative;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s}.campaign-card:before{content:"";position:absolute;inset:-1px auto -1px -1px;width:2px;background:var(--color-accent);opacity:0;transition:opacity .15s}@media(hover:hover)and (pointer:fine){.campaign-card:hover{border-color:var(--color-accent-line);box-shadow:var(--glow-accent);transform:translateY(-1px)}.campaign-card:hover:before{opacity:1}}.enter-tabletop-row{display:flex;align-items:center;gap:var(--space-4)}.enter-tabletop-rule{position:relative;flex:1;height:1px;background:linear-gradient(to left,var(--color-accent-line),transparent)}.enter-tabletop-rule:last-child{background:linear-gradient(to right,var(--color-accent-line),transparent)}.enter-tabletop-rule:after{content:"";position:absolute;top:50%;right:0;width:7px;height:7px;translate:0 -50%;rotate:45deg;background:var(--color-accent);box-shadow:0 0 6px var(--color-accent)}.enter-tabletop-rule:last-child:after{right:auto;left:0}@media(max-width:480px){.lobby-signed-in{display:none}.lobby-head>.brand{flex-basis:100%}.enter-tabletop-rule{display:none}.enter-tabletop-row>.btn{flex:1}}.btn.enter-tabletop{position:relative;overflow:hidden;min-width:min(320px,100%);min-height:60px;gap:var(--space-3);padding:var(--space-3) calc(var(--space-6) * 1.75);border-radius:var(--radius-md);background:linear-gradient(to bottom,var(--color-accent-strong),var(--color-accent) 60%);outline:1px solid color-mix(in srgb,var(--color-on-accent) 22%,transparent);outline-offset:-5px;font-family:var(--font-display);font-size:var(--font-size-lg);font-weight:700;letter-spacing:.14em;text-transform:uppercase;box-shadow:inset 0 1px color-mix(in srgb,var(--palette-white) 35%,transparent),inset 0 -2px color-mix(in srgb,var(--palette-ink-950) 18%,transparent),var(--glow-accent);animation:enter-breathe 3.2s ease-in-out infinite;transition:translate .15s,box-shadow .2s}.btn.enter-tabletop:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 35%,color-mix(in srgb,var(--palette-white) 40%,transparent) 50%,transparent 65%);translate:-110% 0;pointer-events:none}@media(hover:hover)and (pointer:fine){.btn.enter-tabletop:hover:not(:disabled){background:linear-gradient(to bottom,var(--color-accent-strong),var(--color-accent-strong) 30%,var(--color-accent));translate:0 -1px;box-shadow:inset 0 1px color-mix(in srgb,var(--palette-white) 45%,transparent),inset 0 -2px color-mix(in srgb,var(--palette-ink-950) 18%,transparent),var(--glow-accent),0 0 36px color-mix(in srgb,var(--color-accent) 45%,transparent)}.btn.enter-tabletop:hover:after{translate:110% 0;transition:translate .7s ease-out}}.btn.enter-tabletop:active:not(:disabled){translate:0 1px}.btn.enter-tabletop .icon{font-size:1.5em;transition:rotate .5s cubic-bezier(.3,1.4,.5,1)}@media(hover:hover)and (pointer:fine){.btn.enter-tabletop:hover .icon{rotate:180deg}}@keyframes enter-breathe{50%{box-shadow:inset 0 1px color-mix(in srgb,var(--palette-white) 35%,transparent),inset 0 -2px color-mix(in srgb,var(--palette-ink-950) 18%,transparent),var(--glow-accent),0 0 28px color-mix(in srgb,var(--color-accent) 30%,transparent)}}@media(prefers-reduced-motion:reduce){.btn.enter-tabletop,.btn.enter-tabletop .icon,.btn.enter-tabletop:after{animation:none;transition:none}}.campaign-section{position:relative;overflow:hidden;gap:var(--space-4);transition:border-color .2s,box-shadow .2s}.campaign-section:after{content:"";position:absolute;top:-60px;left:-60px;width:180px;height:180px;border-radius:var(--radius-round);background:radial-gradient(circle,var(--color-accent-soft),transparent 70%);pointer-events:none}.campaign-section>*{position:relative;z-index:1}@media(hover:hover)and (pointer:fine){.campaign-section:hover{border-color:var(--color-accent-line);box-shadow:var(--glow-accent)}}.campaign-section h3{margin:0;gap:var(--space-3)}.section-sigil{display:inline-grid;place-items:center;width:26px;height:26px;flex-shrink:0;rotate:45deg;border:1px solid var(--color-accent-line);border-radius:var(--radius-sm);background:var(--color-accent-soft);color:var(--color-accent-strong);font-size:var(--font-size-sm)}.section-sigil>*{rotate:-45deg}.section-count{padding:0 var(--space-2);border-radius:var(--radius-round);background:var(--color-accent-soft);color:var(--color-accent-strong);font-family:var(--font-sans);font-size:var(--font-size-xs);letter-spacing:0;line-height:1.6}.section-foot{gap:var(--space-2);flex-wrap:wrap;padding-top:var(--space-3);border-top:1px dashed var(--color-border)}.member-list{gap:var(--space-2)}.campaign-section .member-row{gap:var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-surface-2) 60%,transparent);transition:border-color .15s,background .15s}@media(hover:hover)and (pointer:fine){.campaign-section .member-row:hover{border-color:var(--color-accent-line);background:var(--color-accent-soft)}}.campaign-section .member-row.me{border-left:3px solid var(--color-accent)}.member-row .avatar{box-shadow:0 0 0 2px var(--color-surface-1),0 0 0 3px var(--color-accent-line)}.member-name{font-weight:600}.you-pill{margin-left:var(--space-1);padding:0 var(--space-2);border-radius:var(--radius-round);border:1px solid var(--color-border-strong);color:var(--color-text-dim);font-size:var(--font-size-xs);font-weight:500;text-transform:uppercase;letter-spacing:.08em}.member-status{color:var(--color-online)}.member-status:before{content:"";display:inline-block;width:6px;height:6px;margin-right:var(--space-1);border-radius:var(--radius-round);background:currentColor;vertical-align:middle;box-shadow:0 0 6px currentColor}.invite-ticket{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-3);border:1px dashed var(--color-accent-line);border-radius:var(--radius-md);background:repeating-linear-gradient(-45deg,transparent 0 8px,color-mix(in srgb,var(--color-accent) 5%,transparent) 8px 16px),var(--color-surface-sunken)}.invite-ticket input{flex:1;min-width:0;padding:0;border:none;background:none;box-shadow:none;color:var(--color-accent-strong);text-overflow:ellipsis}.invite-ticket input:focus{outline:none}.invite-ticket:focus-within{border-style:solid;box-shadow:var(--glow-accent)}.setting-list{gap:var(--space-2)}.setting-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;color:var(--color-text-dim);transition:border-color .15s,background .15s,color .15s}.setting-row>svg{flex-shrink:0;font-size:var(--font-size-lg)}@media(hover:hover)and (pointer:fine){.setting-row:hover{border-color:var(--color-border-strong)}}.setting-row.on{border-color:var(--color-accent-line);background:var(--color-accent-soft);color:var(--color-accent-strong)}.setting-label{color:var(--color-text);font-weight:600}.switch{appearance:none;position:relative;flex-shrink:0;width:36px;height:20px;margin:0;border:1px solid var(--color-border-strong);border-radius:var(--radius-round);background:var(--color-surface-sunken);cursor:pointer;transition:background .2s,border-color .2s}.switch:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:var(--radius-round);background:var(--color-text-dim);transition:translate .2s cubic-bezier(.3,1.4,.5,1),background .2s}.switch:checked{border-color:var(--color-accent);background:var(--color-accent)}.switch:checked:after{translate:16px 0;background:var(--color-on-accent)}.switch:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}@media(prefers-reduced-motion:reduce){.switch,.switch:after{transition:none}}}@layer components{.topbar{grid-column:1 / 4;display:flex;align-items:center;gap:var(--space-4);padding:0 var(--space-4);position:relative;background:var(--color-surface-1);border-bottom:1px solid var(--color-border);min-width:0}.topbar:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(to right,transparent,var(--color-accent-line) 20%,var(--color-accent-line) 80%,transparent);pointer-events:none}.topbar .title{font-family:var(--font-display);font-size:var(--font-size-md);font-weight:600;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px}.topbar .btn{height:var(--icon-button);min-height:0;padding-block:0}.topbar .btn.icon{width:var(--icon-button);padding-inline:0}.fwin{background:var(--color-surface-1);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-2),var(--edge-highlight);display:flex;flex-direction:column;overflow:hidden}.fwin-head{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3) var(--space-2) var(--space-4);background:var(--color-surface-2);border-bottom:1px solid var(--color-border);border-top:1px solid var(--color-accent-line);cursor:move;-webkit-user-select:none;user-select:none;font-weight:600;letter-spacing:.02em}.fwin.minimized .fwin-body{display:none}.image-window img{max-width:100%;max-height:100%;object-fit:contain}.panel{flex:1;min-height:0;display:flex;flex-direction:column}.panel-head{padding:var(--space-3);border-bottom:1px solid var(--color-border);flex-shrink:0}.panel-body{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;padding:var(--space-2)}.section-label{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-3) var(--space-2)}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mono{font-family:var(--font-mono)}.center{display:flex;justify-content:center;padding:var(--space-2)}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.dot{width:var(--space-4);height:var(--space-4);border-radius:var(--radius-round);display:inline-block;flex-shrink:0;vertical-align:middle}}@layer components{.game-shell{padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);background:var(--color-surface-1)}.no-scrollbar{scrollbar-width:none}.no-scrollbar::-webkit-scrollbar{display:none}.game-shell.compact .topbar{grid-column:1 / 3;gap:var(--space-3);padding:0 var(--space-2)}.game-shell.compact .topbar .title{display:none}.game-shell.panel-open .turn-tracker{visibility:hidden}.sidebar-panel{position:fixed;top:calc(var(--topbar-h) + env(safe-area-inset-top,0px));left:env(safe-area-inset-left,0px);right:env(safe-area-inset-right,0px);bottom:env(safe-area-inset-bottom,0px);z-index:calc(var(--z-window) - 1)}.fwin-full{position:fixed;top:calc(var(--topbar-h) + env(safe-area-inset-top,0px));left:env(safe-area-inset-left,0px);right:env(safe-area-inset-right,0px);bottom:env(safe-area-inset-bottom,0px);border-radius:0;border-inline:none;border-bottom:none}.fwin-full .fwin-head{cursor:default;padding-block:var(--space-3)}.fwin-full .fwin-body{overscroll-behavior:contain}.panel-toggle-unread:after{content:"";position:absolute;top:2px;right:2px;width:8px;height:8px;border-radius:var(--radius-round);background:var(--color-accent)}}
