#main-header{padding:0 24px;min-height:64px;position:sticky;top:0;z-index:2}#main-header .popup{min-width:240px}#main-header-logo{margin-top:3px}#main-sidebar-button-slot{width:34px;height:34px}#main-footer{padding:16px 24px}#main-footer-server-version{height:19px;width:30.55px;margin-left:4px}#main-content{column-gap:3vw;flex-grow:1;overflow-x:hidden;padding:32px 24px;row-gap:3vh}#main-toaster{position:fixed;top:76px;left:50%;transform:translate(-50%);z-index:2}#main-toaster>.toast{width:360px}#main-toaster>.toast-enter-from,#main-toaster>.toast-leave-to{opacity:0;transform:translateY(-100%)}.hourglass-spinner[data-v-e3df8584]{animation:hourglass-spin-e3df8584 1.2s ease-in-out infinite;transform-origin:center}@keyframes hourglass-spin-e3df8584{0%{transform:rotate(180deg)}25%{transform:rotate(180deg)}75%{transform:rotate(0)}to{transform:rotate(0)}}#design-check-button-card{max-width:600px}#design-check-skeleton-loading-card{height:330px;width:280px}#design-check-skill-check-card{min-width:280px}#design-check-skill-check-card dialog{min-width:33vw;max-width:min(450px,95vw)}.home.row{width:80%;height:calc(100vh - 64px)}.home.row>.col{height:33%}.realm-card{aspect-ratio:3 / 4;height:auto;max-width:225px;min-width:150px;overflow:hidden;width:25vw}.realm-card{text-align:center}#campaign-messages{max-width:min(90%,768px)}.play-page img.profile-picture{border-radius:50%;flex-shrink:0;height:42px;object-fit:cover;width:42px}.play-page .chat-input{bottom:10px;max-width:min(100%,896px);position:sticky}.play-page>div{width:100%}.skill-check-card{border-radius:12px;box-sizing:border-box;max-width:min(90%,560px);padding:12px 16px;width:100%}.skill-check-required{background-color:var(--color-surface-1);border:1px solid var(--color-border-muted);border-left:4px solid var(--color-warning)}.skill-check-result{background-color:var(--color-surface-1);border:1px solid var(--color-border-muted);border-left:4px solid var(--color-success)}#campaign-messages>hr{border:none;border-top:1px solid var(--color-border-muted);margin:24px 0;max-width:min(90%,768px);width:100%}.conversation-block{width:100%}.conversation-block:not(:last-child).expanded{border-bottom:1px solid var(--color-border-muted)}.conversation-block>button:first-child{text-transform:uppercase;width:100%}.conversation-block>button:first-child>div{background-color:var(--color-border-muted);height:1px;flex-grow:1}.conversation-block>.col>.message-bubble{max-width:80%}.conversation-block>.col>.message-bubble.user{align-self:end}.conversation-block>.col>.message-bubble.npc{align-self:start}.campaign-start{text-align:center}.conversation-block>.col{margin-top:36px;margin-bottom:36px}@keyframes turn-anim-fade-in{0%{opacity:0}to{opacity:1}}.turn-fade-in{animation:turn-anim-fade-in 2s ease-in}.realm-form-page>div{max-width:100%}.realm-form-page>.card{min-width:75%;max-width:90%}.realm-form-page form #realm-form-title{width:300px}.realm-form-page>dialog{min-width:30vw;max-width:min(600px,80vw)}#realm-location-content,#realm-location-loading-wrapper{max-width:1024px;width:100%}#realm-location-loading-wrapper.card{min-height:432px}#realm-location-content>header{margin-bottom:24px;min-height:42px}#realm-location-content section.card>div>button{border-bottom:1px solid var(--color-border-muted);width:100%}#realm-location-content section.card>div>button:first-child{border-top:1px solid var(--color-border-muted)}#realm-location-content section.card nav>:is(a,button){border-bottom:1px solid var(--color-border-muted);width:100%}#realm-location-content section.card .button-list :is(button,a)>div:first-child{max-width:75%}#realm-location-content dialog{width:min(520px,90vw)}.npc-list-header{aspect-ratio:5 / 2;box-sizing:border-box}.npc-list-header>span{text-align:start}.npc-list-content{width:100%;max-width:860px}.npc-list-content>.npc-list-header{width:100%}.npc-list-content>header+div{border-top:1px solid var(--color-border-muted);padding-top:36px;width:100%}.npc-card{aspect-ratio:5 / 6;height:auto;max-width:260px;min-width:220px;overflow:hidden;width:25vw}.npc-card>header>.profile-picture{width:48px;height:48px;border-radius:50%;background-size:cover;background-position:center}.npc-card>header>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.npc-card>p{display:-webkit-box;overflow:hidden;max-height:145px;text-overflow:ellipsis;-webkit-box-orient:vertical;-webkit-line-clamp:5}.npc-form-page>div{width:75%;max-width:1024px}#npc-form>div:first-child>div{width:400px;max-width:100%}#npc-form>div:first-child>div>:is(input,textarea,select){width:100%}.realm-play-header{aspect-ratio:5 / 2;box-sizing:border-box}.realm-play-header>span{text-align:start}.realm-play-content{width:100%;max-width:860px}.realm-play-content>.realm-play-header{width:100%}.realm-play-content>section,.realm-play-content>header+div{border-top:1px solid var(--color-border-muted);padding-top:36px;width:100%}.campaign-card>.col img{border-radius:50%;flex-shrink:0;height:24px;object-fit:cover;width:24px}.campaign-card>footer{width:100%}.campaign-card>footer>div+div{border-left:1px solid var(--color-border-muted);padding-left:24px}.campaign-card>footer>div{min-width:25%}.campaign-card,.character-template-card{aspect-ratio:5 / 6;height:auto;max-width:260px;min-width:220px;overflow:hidden;width:25vw}.character-template-card>header>.profile-picture{width:48px;height:48px;border-radius:50%;background-size:cover;background-position:center}.character-template-card>header>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.character-template-card>.character-appearance{display:-webkit-box;overflow:hidden;max-height:145px;text-overflow:ellipsis;-webkit-box-orient:vertical;-webkit-line-clamp:5}.character-template-card>footer{border-top:1px solid var(--color-border-muted);width:100%;padding-top:12px}.character-template-form-page>.card{width:75%}.character-template-form-page>div:not(.card){width:100%}.character-template-form-page>div{max-width:1024px}#skill-sheet-fieldset>dialog{max-width:min(960px,90vw)}#skill-sheet-fieldset>dialog>div>*{width:100%}#skill-sheet-fieldset>dialog>div>section>*+*{margin-top:8px}#skill-sheet-fieldset>dialog>div>section>ul{margin-left:16px}#skill-sheet-fieldset>header{min-height:26px;width:100%}#skill-sheet-fieldset.compact>header{margin-bottom:16px}.skill-cards-row{width:100%;max-width:606px}#skill-sheet-fieldset:not(.compact) .skill-cards-row>.card{width:186px}#skill-sheet-fieldset.compact .skill-cards-row>.card{width:150px}.skill-cards-row>.card>.row{width:100%}.skill-cards-row>.card :not(.skill-tooltip)>button{width:38px}.skill-cards-row>.card{position:relative}.skill-cards-row>.card .skill-tooltip{position:absolute;top:6px;right:8px}.skill-cards-row>.card .popup{width:200px;padding:12px 16px}.skill-cards-row>.card.selectable{cursor:pointer;animation:anim-button-glow-enter .2s ease-out forwards,anim-button-glow-pulse 2s .2s ease-in-out infinite}#character-template-form>div:first-child>div{width:400px;max-width:100%}#character-template-form>div:first-child>div>:is(input,textarea){width:100%}.new-campaign-page>.realm-play-content>button{margin-top:26px}.fadeout-after2s{animation:anim-fadeout 2s ease forwards}@keyframes anim-fadeout{0%,75%{opacity:1}to{opacity:0}}@keyframes anim-button-glow-enter{0%{box-shadow:var(--glow)}to{box-shadow:var(--glow-strong)}}@keyframes anim-button-glow-pulse{0%,to{box-shadow:var(--glow-strong)}50%{box-shadow:var(--glow-muted)}}header.blended-bg-img{padding:0 36px;position:relative}header.blended-bg-img:before{--mask-color: rgba(0, 0, 0, .85);--mask: linear-gradient(to right, transparent 0, var(--mask-color) 48px), linear-gradient(to left, transparent 0, var(--mask-color) 40px), radial-gradient( ellipse 90% 50% at center, var(--mask-color) 25%, transparent 100% );background-image:var(--hero-image);background-position:center;background-size:cover;content:"";inset:0;margin:auto;mask-composite:intersect;mask-image:var(--mask);position:absolute;-webkit-mask-composite:source-in;-webkit-mask-image:var(--mask)}header.blended-bg-img :is(h2,span){z-index:0}aside{position:fixed;background-color:var(--color-surface-1);height:calc(100vh - 64px);top:64px}aside:not(.overlay){width:220px}aside.overlay{z-index:3;width:100%}aside:not(.overlay)~#main-content{margin-left:220px}.sidebar-h-enter-active,.sidebar-h-leave-active{transition:transform .28s ease}.sidebar-h-enter-from,.sidebar-h-leave-to{transform:translate(-220px)}.sidebar-v-enter-active,.sidebar-v-leave-active{transition:transform .28s ease}.sidebar-v-enter-from,.sidebar-v-leave-to{transform:translateY(100%)}.background{background:radial-gradient(ellipse 80% 100% at 85% 40%,var(--color-background) 0%,transparent 22%),radial-gradient(ellipse 70% 200% at 66% bottom,var(--color-background-high) 0%,color-mix(in srgb,var(--color-background-high) 35%,transparent) 35%,transparent 70%),linear-gradient(to bottom left,var(--color-background-high) 0%,color-mix(in srgb,var(--color-background-high) 35%,transparent) 13%,transparent 30%),radial-gradient(ellipse at 85% 90%,var(--color-background-high) 0%,color-mix(in srgb,var(--color-background-high) 35%,transparent) 15%,color-mix(in srgb,var(--color-background-high) 5%,transparent) 30%,transparent 50%),var(--color-background-low)}.dark-theme .smoke-effect{position:relative;isolation:isolate;overflow:hidden}.dark-theme .smoke-effect:before{content:"";position:absolute;z-index:-2;pointer-events:none;background-image:url(/svg-effects/smoke.svg);background-repeat:repeat;background-size:min(100%,1080px)}.dark-theme .smoke-effect:not(.animated):before{inset:0}.dark-theme .smoke-effect.animated:before{left:-1080px;right:0;top:0;height:calc(100% + 4320px);will-change:transform;animation:smoke-drift 88s linear infinite}.dark-theme .smoke-effect:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(to bottom right,var(--color-background) 0%,transparent 33%),linear-gradient(to bottom,transparent 85%,var(--color-background) 100%)}@keyframes smoke-drift{0%{transform:translateZ(0)}to{transform:translate3d(1080px,-4320px,0)}}.surface-1{background:var(--color-surface-1)}.surface-2{background:var(--color-surface-2)}.surface-3{background:var(--color-surface-3)}button,a{font-family:inherit}button:not(.inline),a.primary,a.secondary,a.tertiary{align-items:center;display:flex;flex-direction:row;font-family:inherit;justify-content:space-around;text-align:center;box-sizing:border-box;isolation:isolate;position:relative}:is(button:not(.inline),a.primary,a.secondary,a.tertiary):not(.circular){border-radius:22px;min-height:44px}:is(button:not(.inline),a.primary,a.secondary,a.tertiary).circular{aspect-ratio:1;border-radius:50%}:is(button:not(.inline),a.primary,a.secondary,a.tertiary)>span{min-width:154px}:is(button,a.primary,a.secondary,a.tertiary):not(.inline)>span+svg{font-size:24px;height:24px;position:absolute;right:12px;width:24px}:is(button,a.primary,a.secondary,a.tertiary):not([disabled],.loading){cursor:pointer}:is(button,a.primary,a.secondary,a.tertiary):not([disabled],.loading,.inline){transition:box-shadow .18s ease-out}:is(button,a.primary,a.secondary,a.tertiary):is(:not([disabled],.loading,.inline):hover,.loading){box-shadow:var(--glow)}:is(button:not(.inline),a.primary,a.secondary,a.tertiary)>svg>.icn-accent{transition:fill .18s ease-out}.dark-theme :is(button.tertiary,a.tertiary){transition:color .18s ease-out}.dark-theme :is(button.tertiary,a.tertiary):is(:not([disabled],.loading):hover,.loading){color:var(--color-glow-core);--color-icn-accent: var(--color-glow-core)}:is(button:not(.inline,.tertiary),a.primary,a.secondary,a.tertiary):is(:not([disabled],.loading):hover,.loading){--color-icn-accent: var(--color-glow-core)}:is(button,a.primary,a.secondary,a.tertiary):not([disabled],.inline):before{content:"";position:absolute;border-radius:inherit;filter:blur(8px);opacity:0;pointer-events:none;transition:opacity .22s ease-out;z-index:-1}.light-theme :is(button,a.primary,a.secondary,a.tertiary):not([disabled],.inline):before{background:radial-gradient(ellipse 100% 100% at center,transparent 33%,var(--color-glow-outer) 50%,var(--color-glow) 100%);inset:0}.dark-theme :is(button,a.primary,a.secondary,a.tertiary):not([disabled],.inline):before{background:radial-gradient(ellipse at center,var(--color-glow) 0%,var(--color-glow-outer) 45%,transparent 72%);inset:-12px}:is(button,a.primary,a.secondary,a.tertiary):is(:not([disabled],.loading,.inline):hover,:not([disabled],.inline).loading):before{opacity:1}:is(button,a.primary,a.secondary,a.tertiary):not([disabled],.inline).loading{animation:anim-button-glow-enter .2s ease-out forwards,anim-button-glow-pulse 2s .2s ease-in-out infinite}:is(button.primary,a.primary,button:not(.tertiary,.inline,.secondary)):not(:disabled){background:linear-gradient(135deg,var(--color-accent-primary) 66%,var(--color-accent-gradient));background-size:200% 100%;background-position:right center;border:solid 1px var(--color-accent-primary);color:var(--color-text-on-accent);--color-icn-accent: var(--color-text-on-accent);transition:background-position .1s}:is(button.primary,a.primary,button:not(.tertiary,.inline,.secondary)):is(:not([disabled]):hover,.loading){background-position:left center}:is(button:not(.tertiary,.inline),a.primary,a.secondary):disabled{background-color:var(--color-disabled);border:none;box-shadow:none;color:var(--color-text-on-accent);--color-icn-accent: var(--color-text-on-accent)}button.secondary,a.secondary{background-color:var(--color-accent-secondary);border:none;color:var(--color-text-on-accent);--color-icn-accent: var(--color-text-on-accent)}button.tertiary,a.tertiary{background-color:transparent;color:var(--color-accent-tertiary);font-weight:500}:is(button.tertiary,a.tertiary):not(.borderless){border:2px solid var(--color-accent-tertiary)}:is(button.tertiary,a.tertiary).borderless,button.inline{border:none}:is(a,button).tertiary:disabled{background-color:transparent;border-color:var(--color-border-muted);color:var(--color-border-muted);--color-icn-accent: var(--color-border-muted)}button.inline{background-color:transparent;border:none;color:inherit;padding:0;text-align:inherit}a{color:inherit;text-decoration:none}a:not(.primary,.secondary,.tertiary)>span:only-child{color:var(--color-accent-primary);text-decoration:underline}.button-list{width:100%}.button-list :is(a:hover,button:hover,.selected){background-color:var(--color-accent-primary);color:var(--color-text-on-accent);--color-icn-accent: var(--color-glow-core)}.button-list>:is(a,button,div){align-items:center;display:flex;flex-direction:row;justify-content:space-between}.button-list>div.selected{cursor:default}.button-list :is(a,button,.selected){padding:12px 0}.button-list :is(a,button,.selected)>*:first-child{margin-left:16px}.button-list :is(a,button,.selected)>*:last-child{margin-right:16px}.popup>.button-list>:is(a,button):first-child{border-radius:12px 12px 0 0}.popup>.button-list>:is(a,button):last-child{border-radius:0 0 12px 12px}.popup>.button-list>:is(a,button):only-child{border-radius:12px}.card{border-radius:12px;box-sizing:border-box}:not(.card) .card:not(.dashed-border.inline){background-color:var(--color-surface-1)}.card .card:not(.dashed-border.inline,.muted){background-color:var(--color-surface-3)}.card.dashed-border.inline{background-color:transparent}.card:not(.compact,.wide){padding:0 20px 24px}.card.compact{padding:0 10px 10px}.card.wide{padding:0 36px 32px}.card>header{padding:0;width:100%}.card:not(.compact)>:is(header,h1,h2,h3,h4,h5,h6):first-child{margin-top:12px}.card.compact>:is(header,h1,h2,h3,h4,h5,h6){margin-top:8px}.card:not(.compact,.wide)>:not(header,h1,h2,h3,h4,h5,h6):first-child{margin-top:24px}.card.compact>:not(header,h1,h2,h3,h4,h5,h6):first-child{margin-top:10px}.card.wide>:not(header,h1,h2,h3,h4,h5,h6):first-child{margin-top:36px}.light-theme .card:not(.dashed-border){box-shadow:0 8px 24px var(--color-shadow-default)}:is(a,button).card{transition:box-shadow .15s}.light-theme :is(a,button).card:hover,.dark-theme :is(a,button).card:hover{box-shadow:var(--glow)}.card.bg-img :is(h1,h2,h3,h4,h5,h6,p,span,svg){color:var(--color-text-on-accent);--color-icn-accent: var(--color-text-on-accent)}.card.bg-img{position:relative;background-size:cover}.card.bg-img.col.just:before{background:linear-gradient(to bottom,black 0%,transparent 40%,transparent 60%,black 100%);border-radius:12px;content:"";inset:0;position:absolute;z-index:0}.card.bg-img:not(.col.just):before{background:#000;border-radius:12px;content:"";opacity:.5;inset:0;position:absolute;z-index:0}.card.bg-img>*{z-index:1}:is(a,button).card.bg-img.col.just:before{opacity:1;transition:opacity .15s}:is(a,button).card.bg-img.col.just:hover:before{opacity:.85}:is(a,button).card.bg-img:not(.col.just):hover:before{opacity:.45}.dark-theme .card:not(.bg-img,.dashed-border){border:1px solid var(--color-border-muted)}:is(a,button).card.dashed-border{border:2px dashed var(--color-accent-tertiary)}:root{--color-accent-primary: #d65414;--color-accent-secondary: #f4733e;--color-accent-tertiary: #e56328;--color-icn-accent: #f4733e}:root.dark-theme{--color-accent-gradient: #6b2b0d;--color-background: #2e160a;--color-background-low: #210e05;--color-background-high: #5c270d;--color-surface-1: #2d1406;--color-surface-2: #4b200b;--color-surface-3: #5e270d;--color-surface-hover: #702f0e;--color-text-muted: #b09a92;--color-text-default: #edd8cc;--color-text-low-contrast: #dbc4b4;--color-text-on-accent: #ffffff;--color-success: #4ade80;--color-warning: #fbbf24;--color-error: #ee1a1a;--color-error-muted: #ff8a8a;--color-info: #60a5fa;--color-disabled: #48342a;--color-border-muted: #8c6238;--color-border-default: #c6c5c2;--color-glow: #fa8800;--color-glow-core: #ffd27a;--color-glow-outer: rgba(214, 84, 20, .4)}:root.light-theme{--color-accent-gradient: #efad90;--color-background: #ffebe6;--color-background-low: #ffe0d9;--color-background-high: #ffffff;--color-surface-1: #fff8f6;--color-surface-2: #fff1ee;--color-surface-3: #ffebe6;--color-surface-hover: #f3bfa9;--color-text-muted: #b09a92;--color-text-default: #4c2311;--color-text-low-contrast: #4c2311;--color-text-on-accent: #ffffff;--color-success: #16a34a;--color-warning: #d97706;--color-error: #cc1a1a;--color-error-muted: #dd5a5a;--color-info: #2563eb;--color-disabled: #beb2ac;--color-border-muted: #e0bfb0;--color-border-default: #c6c5c2;--color-glow: #ffaa00;--color-glow-core: #ffdc96;--color-glow-outer: rgba(244, 130, 55, .3);--color-shadow-default: #52271426;--color-shadow-strong: #52271450}dialog{background-color:var(--color-surface-2);border:none;border-radius:12px;box-sizing:border-box;color:inherit;padding:0 20px 24px}dialog>:is(header,h1,h2,h3,h4,h5,h6):first-child{margin-top:12px}dialog>:not(header,h1,h2,h3,h4,h5,h6):first-child{margin-top:24px}dialog::backdrop{background:#000;opacity:.6}.dice-tray{aspect-ratio:1;height:auto;max-width:420px;width:100%}.dice-tray>canvas{aspect-ratio:1;width:100%}.dice-tray>canvas:hover{cursor:pointer}form{display:flex;flex-direction:column;width:100%}form>:is(dialog,div,input,select,textarea)+:is(div,label,fieldset),form>:not(div.row)>:is(dialog,div,input,select,textarea)+:is(div,label,fieldset){margin-top:30px}form small+:is(button[type=button],label,fieldset){margin-top:14px}form>button[type=submit]{align-self:center;margin-top:32px;max-width:160px}form>div:last-child{margin-top:32px}form label{display:flex;flex-direction:row;align-items:center;gap:4px;justify-content:flex-start;margin:0 0 2px 2px}form label:has(+*:required,+div *:required):after{content:"*";color:var(--color-text-muted)}form label:has(+*:disabled){color:var(--color-text-muted)}form small{margin-top:2px;min-height:16px}form fieldset{width:100%}:root{--glow: 0 0 3px 1px var(--color-glow-core), 0 0 8px 2px var(--color-glow), 0 0 18px 8px var(--color-glow-outer);--glow-muted: 0 0 2px 0 var(--color-glow-core), 0 0 6px 2px var(--color-glow), 0 0 14px 6px var(--color-glow-outer);--glow-strong: 0 0 4px 1px var(--color-glow-core), 0 0 12px 5px var(--color-glow), 0 0 24px 10px var(--color-glow-outer)}.glow{box-shadow:var(--glow)}.img-crop-area{position:relative;overflow:hidden;cursor:grab;border-radius:4px;width:100%;background-color:var(--color-surface-1)}.img-crop-area:active{cursor:grabbing}.img-crop-area>img{position:absolute;top:0;left:0;transform-origin:top left;-webkit-user-select:none;user-select:none;max-width:none;max-height:none}.img-crop-area-outline{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;box-shadow:0 0 0 9999px #00000080;z-index:1}select,textarea,input:not([type=range]){color:inherit;font-family:inherit}textarea{resize:vertical}input[type=checkbox]{appearance:none;-webkit-appearance:none;background-color:var(--color-disabled);border-radius:12px;cursor:pointer;height:24px;margin:0;position:relative;transition:background-color .2s ease;width:40px}input[type=checkbox]:before{background-color:var(--color-text-on-accent);border-radius:50%;content:"";height:18px;left:3px;position:absolute;top:3px;transition:transform .2s ease;width:18px}input[type=checkbox]:checked{background-color:var(--color-accent-primary);border-color:var(--color-accent-primary)}input[type=checkbox]:checked:before{transform:translate(16px)}input[type=checkbox]:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}input[type=checkbox]+span{align-self:center;margin-left:8px}select{padding:4px 2px}select,textarea,input:not([type=submit],[type=button],[type=checkbox]){background:transparent;border-radius:6px;min-height:28px}input[type=range]{accent-color:var(--color-accent-primary);width:100%}:not(.chat-input)>:is(fieldset,select,textarea,input:not([type=submit],[type=button],[type=checkbox])):not(:disabled){border:2px ridge var(--color-border-default)}:is(fieldset,select,textarea,input:not([type=submit],[type=button],[type=checkbox])):disabled{border:2px solid var(--color-border-muted);color:var(--color-text-muted)}:is(textarea,input,select):user-invalid:not(:focus){border:solid var(--color-error)}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;appearance:textfield}:is(input,select)~small.error{display:inline-block;max-width:100%;min-width:100%;width:0}.chat-input{align-items:center;background-color:var(--color-surface-1);border:1px solid var(--color-border-muted);border-radius:14px;box-sizing:border-box;display:flex;flex-direction:row;gap:18px;padding:18px 16px}.light-theme .chat-input{box-shadow:0 2px 16px 0 var(--color-shadow-default)}.chat-input>textarea{border:none;flex-grow:1;min-height:auto;min-width:0;outline:none;padding:0;resize:none}.chat-input>button.mic{font-size:28px}.chat-input>button{aspect-ratio:1}.chat-input>button.send>svg{margin-left:2px}div.password-row{position:relative}div.password-row>button{position:absolute;right:8px}div.password-row>input{padding-right:38px;width:100%}fieldset{box-sizing:border-box;margin-left:0;margin-right:0}fieldset:not(.compact){border:2px ridge var(--color-border-default);border-radius:6px;padding:8px 24px 36px}fieldset.compact{border-top:2px ridge var(--color-border-default);border-bottom:none;border-left:none;border-right:none}fieldset.compact{padding:0 0 12px}fieldset.compact>legend{margin-left:12px}fieldset.compact>header{margin:8px 0 12px 26px}body{margin:0}main{min-height:calc(100vh - 64px)}.col{display:flex;flex-direction:column}.row{display:flex;flex-direction:row}.row:not(.nowrap){flex-wrap:wrap}:is(.col,.row):not(.compact,.semi-compact,.wide){gap:24px}:is(.col,.row).semi-compact{gap:12px}:is(.col,.row).compact{gap:0}:is(.col,.row).wide{gap:48px}:is(.col,.row):not(.center,.end,.just,.start){justify-content:space-around}:is(.col,.row).center{justify-content:center}:is(.col,.row).end{justify-content:flex-end}:is(.col,.row).just{justify-content:space-between}:is(.col,.row).start{justify-content:flex-start}.col:not(.items-start,.items-center,.items-end,.items-stretch){align-items:start}.row:not(.items-start,.items-center,.items-end,.items-stretch){align-items:center}:is(.col,.row).items-start{align-items:start}:is(.col,.row).items-center{align-items:center}:is(.col,.row).items-end{align-items:end}:is(.col,.row).items-stretch{align-items:stretch}:not(.col,.row).start,.self-start{align-self:start}:not(.col,.row).center,.self-center{align-self:center}:not(.col,.row).end,.self-end{align-self:end}ul{margin:0;padding:0 0 0 16px}.message-bubble.npc,.message-bubble.user{border-bottom:1px solid var(--color-border-muted);border-right:1px solid var(--color-border-muted);border-top:1px solid var(--color-border-muted);border-radius:12px;box-sizing:border-box;padding:12px 16px}.message-bubble.user{background-color:var(--color-surface-1);border-left:4px solid var(--color-accent-primary)}.message-bubble.npc{background-color:var(--color-surface-2);border-left:4px solid var(--color-accent-secondary)}.light-theme .message-bubble:is(.npc,.user){box-shadow:0 4px 16px var(--color-shadow-default)}.message-bubble h4{margin-bottom:4px;text-transform:uppercase}.message-bubble.npc p{font-style:italic}.popup-container{anchor-scope:--popup-anchor}.popup-container>button{anchor-name:--popup-anchor}.popup{border:1px solid var(--color-border-default);border-radius:12px;background-color:var(--color-surface-2);position:fixed;position-anchor:--popup-anchor;z-index:2}.light-theme .popup.y-bottom{box-shadow:0 6px 12px var(--color-shadow-strong)}.light-theme .popup.y-top{box-shadow:0 -6px 12px var(--color-shadow-strong)}.light-theme .popup.y-center{box-shadow:0 0 12px var(--color-shadow-strong)}.popup.y-top.x-left{position-area:top center;right:anchor(right)}.popup.y-top.x-center{position-area:top center}.popup.y-top.x-right{position-area:top center;left:anchor(left)}.popup.y-center.x-left{position-area:center left}.popup.y-center.x-center{position-area:center center}.popup.y-center.x-right{position-area:center right}.popup.y-bottom.x-left{position-area:bottom center;right:anchor(right)}.popup.y-bottom.x-center{position-area:bottom center}.popup.y-bottom.x-right{left:anchor(left);position-area:bottom center}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}:is(div,header,section).loading{animation:skeleton-shimmer 2s infinite linear;background:linear-gradient(120deg,transparent 25%,var(--color-text-muted) 50%,transparent 75%);background-size:400% 100%}:is(div,header,section).loading>*{display:none}.toast{background-color:var(--color-surface-3);border-radius:8px;box-sizing:border-box;cursor:pointer;margin-bottom:8px;min-height:62px;padding:12px 20px}.toast:not(.error,.warn){border:1px solid var(--color-border-muted)}.toast.error{border:2px solid var(--color-error)}.toast.warn{border:2px solid var(--color-warning)}.toast-enter-active,.toast-leave-active{transition:all .3s ease}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono/JetBrainsMono-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono/JetBrainsMono-Italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono/JetBrainsMono-Light.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono/JetBrainsMono-LightItalic.woff2) format("woff2");font-weight:300;font-style:italic;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono/JetBrainsMono-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono/JetBrainsMono-BoldItalic.woff2) format("woff2");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:Space Grotesk;src:url(/fonts/space-grotesk/SpaceGrotesk-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Space Grotesk;src:url(/fonts/space-grotesk/SpaceGrotesk-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:"Noto Serif";src:url(/fonts/noto-serif/NotoSerif-Italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:"Noto Serif";src:url(/fonts/noto-serif/NotoSerif-BoldItalic.woff2) format("woff2");font-weight:700;font-style:italic;font-display:swap}body{color:var(--color-text-default);font-family:JetBrains Mono,monospace}svg{height:1em;width:auto}strong:not(.nohighlight){color:var(--color-accent-secondary)}h1,h2,h3{color:var(--color-text-low-contrast);font-family:Space Grotesk,sans-serif}h1{font-size:32px;margin:0}h1+svg,h1+button>svg,h1+div>button>svg{color:var(--color-text-low-contrast);font-size:34px;min-height:34px;min-width:34px}h2{font-size:24px;margin:0}h2+svg,h2+button>svg{color:var(--color-text-low-contrast);font-size:26px;min-height:26px;min-width:26px}h3{font-size:20px;margin:0}h3+svg,h3+button>svg{color:var(--color-text-low-contrast);font-size:22px;min-height:22px;min-width:22px}h4{font-size:16px;margin:0}h4+svg,h4+button>svg{font-size:18px;min-height:18px;min-width:18px}h5{font-size:14px;margin:0}h5+svg,h5+button>svg{font-size:16px;min-height:16px;min-width:16px}h6{font-size:12px;margin:0}h6+svg,h6+button>svg{font-size:14px;min-height:14px;min-width:14px}p{font-size:16px;margin:0}span{font-size:16px}span+svg,span+button>svg{font-size:24px;min-height:24px;min-width:24px}small{font-size:13px}small+svg,small+button>svg{font-size:18px;min-height:18px;min-width:18px}select,textarea,input:not([type=submit],[type=button]){font-size:16px}select+button>svg,textarea+button>svg,input:not([type=submit],[type=button])+button>svg{font-size:24px;min-height:24px;min-width:24px}:is(p,span,small,strong,h1,h2,h3,h4,h5,h6,svg).error:not(.muted),.error:not(.muted) :is(p,span,small,strong,h1,h2,h3,h4,h5,h6,svg){color:var(--color-error)}:is(p,span,small,strong,h1,h2,h3,h4,h5,h6,svg).error.muted,.error.muted :is(p,span,small,strong,h1,h2,h3,h4,h5,h6,svg){color:var(--color-error-muted)}:is(p,span,small,strong,h1,h2,h3,h4,h5,h6,svg).success,.success :is(p,span,small,strong,h1,h2,h3,h4,h5,h6,svg){color:var(--color-success)}:is(p,span,small,strong,h1,h2,h3,h4,h5,h6,svg).muted:not(.error){color:var(--color-text-muted)}:is(p,span,small,strong,h1,h2,h3,h4,h5,h6,svg).highlight{color:var(--color-accent-secondary)}svg>.icn-accent{fill:var(--color-icn-accent)}.size-s{font-size:18px}svg.size-s{min-height:18px;min-width:18px}.size-m{font-size:24px}svg.size-m{min-height:24px;min-width:24px}.size-l{font-size:34px}svg.size-l{min-height:34px;min-width:34px}.size-xl{font-size:42px}svg.size-xl{font-size:42px;min-height:42px;min-width:42px}.handwritten{font-family:"Noto Serif",serif;font-style:italic}.underline{text-decoration:underline}:is(p,span,small,strong,h1,h2,h3,h4,h5,h6,header).center{text-align:center}
