/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}
:root{--menu-padding:0 0 0 1.5rem;--home-columns:25vw auto 25vw;--main-columns:25vw auto min-content 25vw;--main-rows:56px calc(100vh - 112px) 56px}@media screen and (max-width:1024px){:root{--home-columns:8px auto 8px;--main-columns:8px auto min-content 8px;--main-rows:56px auto 0}main{padding-top:8px}main.site{padding:8px}}*,*:before,*:after{box-sizing:border-box;font-size:clamp(14px,1.75cqw,18px)}body{background-color:#eee;font-family:"Roboto Mono",monospace;overscroll-behavior-y:contain;overflow:hidden visible}br{margin-bottom:8px}button,.button{padding:0.6rem 1.2rem;border-radius:4px;border:1px solid #ccc;cursor:pointer;font-weight:600;display:inline-block}button.primary,.button.primary{background:#0275d8;color:white;border-color:#0275d8}button.red,.button.red{background:rgb(233,29,29);color:white;border-color:rgb(147,29,29)}button.transparent,.button.transparent{background:transparent;color:black}button:hover,.button:hover{opacity:0.9}details>summary.button:hover{background-color:#bababa;border-color:grey}details[open]>summary.button{background-color:#b5b5b5;border-color:black}h1,h2,h3,h4,h5,h6{margin:0;color:#004580}h2{font-size:1.5em;margin-bottom:8px}h3{font-size:1.3em;margin-bottom:8px}h4{font-size:1.2em;margin-bottom:8px}h5{font-size:1.1em;margin-bottom:8px}img{width:100%;height:auto}input,textarea{box-sizing:border-box;width:100%}input[type="checkbox"]{width:auto}input[type="file"]::file-selector-button{cursor:pointer}label{cursor:pointer}label:has([role="switch"]){display:inline-flex;align-items:center;gap:0.25em}[role="switch"]{--height:1.1875em;--width:0.8;appearance:none;background-color:#e5e5e5;height:var(--height);width:calc(var(--height) * calc(1 + var(--width)))!important;border:0;border-radius:99em;display:inline-block;transition:background-color 100ms ease-in-out}[role="switch"]::after{content:"";display:block;aspect-ratio:1;background-color:white;border:max(2px,0.125em) solid #808080;height:100%;border-radius:50%;transition:translate 100ms ease-in-out}[role="switch"]:checked{background-color:#08c}[role="switch"]:checked::after{border-color:#08c;translate:calc(var(--height) * var(--width)) 0}main{opacity:1;transition:opacity .25s linear;position:relative}main[v-cloak]{opacity:0}p{margin:0 0 8px}p button,p .button{display:inline-block}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}textarea{resize:none;min-height:88px}#bg-canvas{position:fixed;left:0;top:0;width:100vw;height:100vh}#navigationMenu{grid-area:menu;margin:0;width:0;padding:0;transition:all linear .2s;overflow:hidden}#navigationMenu.show{padding:var(--menu-padding);width:clamp(128px,10vw,10vw)}#navigationMenu li{display:flex}#navigationMenu li a{container-type:size;font-size:1.75cqw;min-height:32px;width:100%;padding:5px 0;display:flex;align-items:center;color:#717171}#navigationMenu li a:hover,#navigationMenu li.active a{color:black}#navigationMenu li.active>a{cursor:default;pointer-events:none}#navigationMenu li a span{width:8px;height:14px;display:block;border-radius:100%;border:1px solid black;transform:rotate(15deg);margin-right:2px}#navigationMenu li.active>a span{background-color:black}main>div{display:grid;grid-template-areas:". header header ." ". content menu ." ". footer footer .";grid-template-columns:var(--main-columns);grid-template-rows:var(--main-rows);height:100vh}main header{grid-area:header;position:relative;display:flex;align-items:center}main header #menuButton{position:absolute;right:8px;top:50%;padding:.2rem .25rem 0;transform:translate(0%,-50%)}main header #menuButton svg{width:100%;height:auto;max-width:32px}main #content{grid-area:content;overflow:hidden auto;padding:0 0 16px 0;opacity:1;transition:opacity .25s linear;background-color:#eee}main#characterCreation #content{margin-bottom:34px}main#characterCreation footer{position:fixed;bottom:0;left:0;width:100%;margin-bottom:0;display:flex;justify-content:center}main#characterCreation footer>div{background-color:#eee;width:100%;max-width:800px;padding:8px;display:flex;justify-content:space-between;align-items:center}footer{grid-area:footer}.site footer{margin-bottom:16px}main.site{position:absolute;left:0;top:0;display:flex;justify-content:center;width:100%}main.site>div{width:100%;max-width:800px;display:flex;flex-direction:column;gap:16px;height:max-content}#home header h1{width:100%;display:inline-block;font-size:clamp(14px,7cqw,54px);text-align:center;border:2px solid black;white-space:nowrap}#homeNavigation{grid-area:menu}.main-menu ul{display:flex;list-style:none;padding:0;margin:0;width:100%;gap:8px}.main-menu li{flex:1 0 auto;text-align:center;position:relative}.main-menu li:last-child{border-right:none}.main-menu .submenu{display:none;position:absolute;top:100%;left:0;min-width:max-content;background:#eee;list-style:none;padding:4px;margin:0;z-index:1000;box-shadow:0px 4px 8px rgba(0,0,0,0.3);gap:4px}.main-menu li:hover .submenu{display:flex;flex-direction:column}.main-menu .submenu li{width:100%;border-right:none;border-bottom:1px solid #444}.main-menu .submenu a{padding:12px 20px;text-align:left}.has-submenu>span::after{content:' ▾';font-size:0.8rem;opacity:0.7}.main-menu a,.main-menu .has-submenu span{display:block;padding:8px 16px;color:black;text-decoration:none;white-space:nowrap;transition:background 0.2s;border:2px solid black}.main-menu li.active>a,.main-menu li.active>.submenu li.active a{background-color:#4e4e4e;pointer-events:none;color:white}.main-menu li.active>span{background-color:#4e4e4e;color:white}.menu-toggle{display:none}.nav-list{display:flex;list-style:none;width:100%}@media (max-width:1024px){.main-menu .menu-toggle{background:#333;color:white;border:none;padding:8px 15px;width:100%;font-size:1.5rem;cursor:pointer;display:flex;justify-content:right}.main-menu .nav-list{display:none;flex-direction:column;width:100%}.main-menu.is-open .nav-list{display:flex}.main-menu .nav-list li{width:100%;border-right:none}.main-menu .nav-list li:first-child{margin-top:8px}.main-menu .submenu{position:static;display:flex;flex-direction:column;padding-left:16px;box-shadow:none}.main-menu .has-submenu>a::after{content:''}}#home #content{display:grid;grid-template-areas:"featuredPosts . moreStuff";grid-template-columns:calc(75% - 4px) 8px calc(25% - 4px);padding:0}@media (max-width:1024px){#home #content{display:grid;grid-template-areas:"featuredPosts" "moreStuff";grid-template-columns:auto;grid-template-rows:max-content;padding:0;gap:16px}}#home #featuredPosts{grid-area:featuredPosts}#home #moreStuff{grid-area:moreStuff;border:2px solid black}#home #moreStuff h2{padding:8px;border-bottom:2px solid black}#home .featuredPost{display:grid;grid-template-areas:"title title" "image excerpt";grid-template-columns:30% auto;border:2px solid black}#home .featuredPostTitle{grid-area:title;border-bottom:2px solid black;padding:8px}#home .featuredPostTitle h2{margin:0}#home .featuredPostImage{grid-area:image;border-right:1px solid black;display:flex}#home .featuredPostExcerpt{grid-area:excerpt;border-left:1px solid black;padding:8px}#featuredPost,#playerGuide,#characterCreation{opacity:1;transition:opacity .25s linear;position:relative;overflow:hidden auto}#featuredPost>div,#playerGuide>div,#characterCreation>div{height:auto}.site header h1{width:100%;display:inline-block;font-size:clamp(14px,7cqw,54px);text-align:center;border:2px solid black;white-space:nowrap}#featuredPost .main-menu{grid-area:menu}#featuredPost #content{padding:0}#start>div{display:flex;justify-content:center;align-items:center;height:100vh}#start details{min-width:300px;display:flex;flex-direction:column}#start details summary{text-align:center;display:flex;align-items:center}#start details summary img{width:100%;transform-origin:left center;display:block;transition:all 0.4s cubic-bezier(0.175,0.885,0.32,1.275)}#start details summary img.show{opacity:1}#start details[open] summary img{width:150px;opacity:0.8;transform:scale(1) translate(50%,0%)}#start details div{margin-top:16px;display:flex;flex-direction:column;gap:8px}#start details div input,#start details div button{padding:8px 8px}#start #userNotFoundDialog{border:none;border-radius:8px;padding:0;box-shadow:0 10px 25px rgba(0,0,0,0.2);width:90%;max-width:400px}#start #userNotFoundDialog::backdrop{background:rgba(0,0,0,0.6);backdrop-filter:blur(2px)}#start #userNotFoundDialog h2{margin:0;font-size:1.25rem;color:#d9534f}#start #userNotFoundDialog .content{display:flex;flex-direction:column;gap:16px;padding:1.5em}#start #userNotFoundDialog .content div{display:flex;gap:8px}#start #userVerificationDialog{border:none;border-radius:8px;padding:0;box-shadow:0 10px 25px rgba(0,0,0,0.2);width:90%;max-width:400px}#start #userVerificationDialog .content{display:flex;flex-direction:column;gap:8px;padding:1.5em}#profile>div{display:grid;grid-template-areas:". header header ." ". content menu ." ". footer footer .";grid-template-columns:var(--main-columns);grid-template-rows:var(--main-rows)}#profile header{grid-area:header;position:relative;display:flex;align-items:center}#profile header #menuButton{position:absolute;right:8px;top:50%;padding:.2rem .25rem 0;transform:translate(0%,-50%)}#profile header #menuButton svg{width:100%;height:auto;max-width:32px}#profile #content{grid-area:content;display:flex;flex-direction:column;align-items:center;gap:16px;overflow:hidden auto;padding-bottom:32px;position:relative}#profile #content>*{width:100%;max-width:300px;display:flex;flex-direction:column;gap:16px}#profile #content div input{width:calc(100% - 16px);container-type:size;font-size:1.75cqw;padding:8px 8px 2px}#profile #profileImage{width:100%;max-width:256px;position:relative}#profile #profileImage img{border-radius:50%;border:2px solid;box-sizing:border-box}#profile #profileImage button{position:absolute;padding:0;opacity:0}#profile #profileImage:hover button{opacity:1}#profile #profileImage button svg{width:32px;height:auto}#profile #userImageForm .content{display:flex;flex-direction:column;gap:16px}#profile #userImageForm .actions{display:flex;justify-content:space-between}#profile input{background-color:transparent;border:none;border-bottom:1px solid}#profile textarea{background-color:transparent;border:1px solid;resize:none;min-height:150px;padding:8px}#profile textarea:focus{background-color:#fafafa66}#profile #content div input.required{border-color:red}#campaigns #campaignForm>div{display:flex;flex-direction:column;gap:16px}#campaigns #userCampaigns{opacity:1;transition:opacity .25s linear}#campaigns #userCampaigns[v-cloak]{opacity:0}#campaigns .campaign .content{padding:8px;border:1px solid grey;border-bottom-left-radius:6px;border-bottom-right-radius:6px}#campaigns .campaign summary{width:100%}#campaigns details.campaign[open] summary{border-bottom:0;border-bottom-left-radius:0px;border-bottom-right-radius:0px}#campaigns .button.createCampaignButton{display:inline-flex !important;justify-content:space-between;min-width:188px;align-items:center}#campaigns .button.createCampaignButton img{width:32px}#campaigns #campaignActions{display:flex;margin-bottom:16px}#campaigns #campaignActions button{width:fit-content;display:flex;align-items:center}#campaigns #addCampaignDialog{background:transparent;border:none;width:100%;height:100%}#campaigns #addCampaignDialog .wrapper{display:flex;justify-content:center;align-items:center;height:100%}#campaigns #addCampaignDialog .content{position:relative;padding:2em;border:4px solid;background-color:white}#createCampaign{display:grid;grid-template-areas:". header header ." ". content menu ." ". footer footer .";grid-template-columns:var(--main-columns);grid-template-rows:var(--main-rows)}#createCampaign header{grid-area:header;position:relative;display:flex;align-items:center}#createCampaign header #menuButton{position:absolute;right:8px;top:50%;padding:.2rem .25rem 0;transform:translate(0%,-50%)}#createCampaign header #menuButton svg{width:100%;height:auto;max-width:32px}#createCampaign #content{grid-area:content;overflow:hidden auto;padding:0 8px;opacity:1;transition:opacity .25s linear}#campaignForm{display:flex;flex-direction:column;gap:16px}#campaignForm{opacity:1;transition:opacity .25s linear}#campaignForm[v-cloak]{opacity:0}#createCampaign #navigationMenu{grid-area:menu;margin:0;width:0;padding:0;transition:all linear .2s;overflow:hidden}#createCampaign #navigationMenu.show{padding:var(--menu-padding);width:10vw}#createCampaign #navigationMenu li{display:flex}#createCampaign #navigationMenu li a{container-type:size;font-size:1.75cqw;min-height:32px;width:100%;padding:5px 0;display:flex;align-items:center;color:#717171}#createCampaign #navigationMenu li a:hover,#createCampaign #navigationMenu li.active a{color:black}#createCampaign #navigationMenu li.active a{cursor:default;pointer-events:none}#createCampaign #navigationMenu li a span{width:8px;height:14px;display:block;border-radius:100%;border:1px solid black;transform:rotate(15deg);margin-right:2px}#createCampaign #navigationMenu li.active a span{background-color:black}#campaignScenes,#campaignPremadeCharacters{display:flex;flex-direction:column;margin-top:8px;padding:0}#campaignScenes li,#campaignPremadeCharacters li{display:flex;align-items:center;justify-content:space-between;padding:8px;background-color:#e1e1e1}#campaignScenes li:nth-child(2n+1),#campaignPremadeCharacters li:nth-child(2n+1){background-color:#f6f6f6;border-bottom:1px solid grey}#campaignScenes .campaignSceneActions,#campaignPremadeCharacters .premadeCharacterActions{display:flex;gap:8px}#sceneForm{max-width:800px;width:100%;height:90vh;padding:0}#sceneForm>div{display:grid;grid-template-rows:auto max-content;height:100%}#sceneDetails{display:flex;flex-direction:column;gap:16px;overflow:hidden auto;padding:16px}#sceneFooter{padding:16px}.image-preview{position:relative}.image-preview>button{position:absolute;top:16px;right:16px;opacity:0}.image-preview:hover>button{opacity:1}.sceneNpcs{display:flex;flex-direction:column;gap:16px}.sceneNpc[open]{border:1px solid;padding-bottom:8px;border-top-left-radius:6px;border-top-right-radius:6px}.sceneNpc>summary{display:flex;align-items:center;justify-content:space-between;padding:4px 8px}.sceneNpc>summary>div{display:flex;gap:8px}.sceneNpcQuantity{display:flex;align-items:center}.sceneNpcQuantity>input{min-width:50px}.sceneNpcCost{display:flex;align-items:center;min-width:114px;justify-content:right}.npcStats{display:grid;grid-template-columns:auto auto;gap:16px}.sceneNpcContent{display:flex;flex-direction:column;gap:16px;margin-top:8px;padding:0 8px}.npcAbilities{display:flex;flex-direction:column;gap:16px}.npcAbilitiesContent{display:flex;flex-direction:column;gap:16px;margin-top:8px;padding:0 8px}.npcAbilitiesHeader{display:flex;align-items:center;gap:8px}.npcAbility>summary{display:flex;justify-content:space-between;align-items:center;padding:4px 8px}#sceneFooter>div{display:flex;justify-content:space-between}#scenePremadeNpcs{padding:16px}.premadeNpcGallery{display:grid;grid-template-columns:1fr 1fr 1fr 1fr}.premadeNpc{display:flex;flex-direction:column;gap:8px;padding:8px;border:1px solid;border-radius:6px}.premadeNpcFooter{display:flex;justify-content:space-around}.premadeNpcName{text-align:center}.premadeNpcPreview{position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgb(96,96,96,.5);backdrop-filter:blur(2px);display:flex;justify-content:center;align-items:center;overflow-y:auto}.premadeNpcPreview>div{background-color:white;padding:8px;border:solid;width:100%;max-width:400px;display:flex;flex-direction:column;align-items:center;gap:16px}.npcPreviewStats{display:flex;justify-content:space-between;width:100%}.npcPreviewAbilities{width:100%}.npcPreviewAbility{padding:4px;border:1px solid;margin-bottom:8px}.npcPreviewFooter{width:100%;display:flex;justify-content:space-between}.meter-track{width:100%;height:15px;background:#222;border-radius:8px;overflow:hidden;position:relative;border:1px solid #444}.campaignScene{cursor:grab;transition:transform 0.2s ease}.campaignScene:active{cursor:grabbing}.is-dragging{opacity:0.5;background:#f0f0f0;border:2px dashed #ccc}.drag-handle{margin-right:10px;color:#999;user-select:none}#editPage{display:grid;grid-template-areas:". header header ." ". content menu ." ". footer footer .";grid-template-columns:var(--main-columns);grid-template-rows:var(--main-rows)}#editPage header{grid-area:header;position:relative;display:flex;align-items:center}#editPage header #menuButton{position:absolute;right:8px;top:50%;padding:.2rem .25rem 0;transform:translate(0%,-50%)}#editPage header #menuButton svg{width:100%;height:auto;max-width:32px}#editPage #content{grid-area:content;overflow:hidden auto;padding:0 8px;opacity:1;transition:opacity .25s linear}#editPage #campaignForm>div{display:flex;flex-direction:column;gap:16px}#editPage #userCampaigns{opacity:1;transition:opacity .25s linear}#editPage #userCampaigns[v-cloak]{opacity:0}#editPage #navigationMenu{grid-area:menu;margin:0;width:0;padding:0;transition:all linear .2s;overflow:hidden}#editPage #navigationMenu.show{padding:var(--menu-padding);width:10vw}#editPage #navigationMenu li{display:flex}#editPage #navigationMenu li a{container-type:size;font-size:1.75cqw;min-height:32px;width:100%;padding:5px 0;display:flex;align-items:center;color:#717171}#editPage #navigationMenu li a:hover,#editPage #navigationMenu li.active a{color:black}#editPage #navigationMenu li.active a{cursor:default;pointer-events:none}#editPage #navigationMenu li a span{width:8px;height:14px;display:block;border-radius:100%;border:1px solid black;transform:rotate(15deg);margin-right:2px}#editPage #navigationMenu li.active a span{background-color:black}#characterForm{overflow:hidden;padding:0}#characterForm>div{display:grid;grid-template-rows:calc(100vh - 112px) 80px;overflow:hidden;padding:0}#characterDetails{display:flex;flex-direction:column;gap:16px;overflow-y:auto;padding:8px 16px 8px}.site #characterDetails{padding:0}#characterDetails summary{padding:8px;display:flex;justify-content:space-between;align-items:center}#characterFormFooter{padding:16px;display:flex;justify-content:space-between;align-items:center}#characterStats{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}#characterSkills>h3,#characterTalents>h3,#characterAbilities>h3,#characterItems>h3{display:flex;align-items:center;justify-content:space-between}#characterSkills>h3 button,#characterTalents>h3 button,#characterAbilities>h3 button,#characterItems>h3 button{width:36px;height:36px;padding:4px}#characterSkills>details summary.button{padding:0 0 0 8px;display:flex;justify-content:space-between;align-items:center}#characterSkills .skill,#characterTalents .talent{padding:8px;display:grid;grid-template-columns:auto 120px max-content max-content;gap:8px}#characterSkills .skill div,#characterTalents .talent div{display:flex;align-items:center}#characterAbilities .ability>div{margin-top:8px;display:grid;gap:8px}#characterItems,#characterItems>div{display:grid;gap:8px}#characterItems .item{display:grid;gap:8px}#characterAbilities,#characterAbilities{display:grid;gap:8px 16px}#campaignCharacters{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:0;list-style:none;margin:0 0 16px 0}#campaignCharacters .character{list-style:none;border:1px solid;padding:4px;border-radius:4px;background-color:#fff;display:grid;gap:8px}#campaignCharacters .character h2{display:flex;position:relative;justify-content:space-between;align-items:center}#campaignCharacters .character h2 button{padding:4px 0;line-height:0}#campaignCharacters .navigation{display:flex;justify-content:space-between;font-size:.55em;position:absolute;background-color:#e9e9ed;padding:2px;top:0;left:0;width:calc(100% - 40px);border:1px solid;border-radius:4px;height:100%;align-items:center}#campaignCharacters .navigation label{text-align:center}#campaignCharacters .character{background:#fff;border:1px solid #ddd;border-radius:8px;padding:20px;width:100%;box-shadow:0 4px 6px rgba(0,0,0,0.05);font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif}#campaignCharacters .character h2{margin-top:0;border-bottom:2px solid #333;padding-bottom:5px;text-transform:uppercase;font-size:1.5rem}#campaignCharacters .character h3{font-size:1rem;color:#666;text-transform:uppercase;margin:15px 0 5px 0;border-bottom:1px solid #eee}#campaignCharacters .characterStats{display:grid;grid-template-columns:1fr 1fr;gap:5px 15px;background:#f9f9f9;padding:10px;border-radius:4px}#campaignCharacters .characterStats p{margin:0;font-weight:bold;display:flex;justify-content:space-between}#campaignCharacters .characterSkills,.characterTalents{display:grid;grid-template-columns:1fr 1fr;font-size:0.9rem}#campaignCharacters details{background:#f1f1f1;margin-bottom:5px;border-radius:4px;font-size:0.9rem}#campaignCharacters summary{padding:8px;cursor:pointer;font-weight:bold;outline:none}#campaignCharacters details p{padding:0 10px 10px 10px;margin:0;color:#444;line-height:1.4}#campaignCharacters .character p{font-style:italic;color:#555;margin-bottom:10px}#campaignPage .sceneDetails{padding:10px;background-color:#fff;border-radius:4px;margin-bottom:16px;filter:drop-shadow(1px 1px 1px grey)}#campaignPage .sceneNpcs>details{border:1px solid #ccc;margin-bottom:10px;background:#fff;border-radius:4px}#campaignPage .sceneNpcs summary{padding:10px;background:#f8f8f8;cursor:pointer;font-weight:bold;display:flex;justify-content:space-between;align-items:center;border-radius:4px}#campaignPage .sceneNpcs>details[open] summary{border-radius:0;border-top-left-radius:4px;border-top-right-radius:4px}#campaignPage .npcDescription{padding:10px;font-style:italic;color:#555;border-bottom:1px dashed #ddd;font-size:0.95rem}#campaignPage .npcStats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:10px;background:#fdfdfd}#campaignPage .npcStats p{margin:0;font-family:'Courier New',Courier,monospace;font-size:0.9rem;background:#eee;padding:4px;text-align:center;border-radius:3px;border:1px solid #ddd}#campaignPage .npcAbilities{margin:10px;border:1px solid #eee;gap:0}#campaignPage .npcAbility{padding:8px;border-top:1px solid #eee;font-size:0.9rem}#campaignPage .npcAbility p:first-child{font-weight:bold;margin:0 0 4px 0;color:#b30000}#campaignPage .npcAbility p:last-child{margin:0;color:#444}#campaignPage .sceneTitle{display:flex;align-items:center;justify-content:space-between}#campaignPage .sceneTitle button{padding:0;line-height:0}#campaignPage .npcRank{padding:5px 10px;font-size:0.85rem;text-transform:uppercase;letter-spacing:1px;background:#f0f0f0;color:#333;border-left:4px solid #b30000;margin:10px 10px 0px;border-radius:0 4px 4px 0}#campaignPage .npcRank strong{color:#666;font-size:0.75rem}#campaignPage .sceneOptions{display:flex;gap:10px;align-items:center;background:white;padding:10px;border-radius:5px;margin-bottom:20px;filter:drop-shadow(1px 1px 1px grey)}#campaignPage .sceneOptions button{padding:5px 15px;cursor:pointer;background:#eee;border:none;border-radius:3px;font-weight:bold}#campaignPage .sceneOptions button:disabled{opacity:0.5;cursor:not-allowed;background:#999}#campaignPage .sceneOptions select{flex-grow:1;padding:5px;border-radius:3px;container-type:size}.caveat{font-family:"Caveat",cursive;font-optical-sizing:auto;font-weight:500;font-style:normal}.input-group,.form-group{display:flex;flex-direction:column;gap:8px}.campaignSceneTitle{width:100%}.npc{border:1px solid;padding:4px;border-radius:4px;display:grid;grid-template-columns:63% 134px auto 48px;gap:8px;align-items:center}.npc-quantity{display:flex;align-items:center}.npc-cost{text-align:right}.text-right{text-align:right}.text-center{text-align:center}.wiggle{animation:wiggle 0.3s ease-in-out}@keyframes wiggle{0%{transform:rotate(0deg)}25%{transform:rotate(3deg)}50%{transform:rotate(0deg)}75%{transform:rotate(-3deg)}100%{transform:rotate(0deg)}}.flash-message{position:absolute;top:20px;right:20px;padding:1rem 2rem;border-radius:8px;color:white;z-index:9999;white-space:pre-line;text-align:left}.flash-message.success{background:#2ecc71}.flash-message.error{background:#e74c3c}.fade-enter-active,.fade-leave-active{transition:opacity 0.5s}.fade-enter-from,.fade-leave-to{opacity:0}.guide-layout{display:block;width:100%;max-width:900px;margin:0 auto;padding:0 8px}.guide-sidebar{float:right;width:250px;margin-left:20px;margin-bottom:20px;padding:15px;background:#f9f9f9;border:1px solid #ddd;border-radius:8px;position:relative;z-index:10}.guide-layout .fade-enter-active,.guide-layout .fade-leave-active{transition:opacity 0.2s ease}.guide-layout::after{content:"";clear:both;display:table}.guide-sidebar ul{list-style:none;padding:0;margin:-8px 0 0 0}.guide-sidebar li a{display:block;padding:8px 0;color:#666;text-decoration:none;transition:color 0.2s}.guide-sidebar li a.active{color:#b30000;font-weight:bold}.guide-body{line-height:1.6;font-size:1.1rem}.guide-nav-bar{display:flex;justify-content:space-between;align-items:center;margin-top:40px;padding-top:20px;border-top:2px dashed #000}.nav-btn{width:56px;padding:2px 0 6px;background:#fff;border:3px solid #000;border-radius:50px;cursor:pointer;font-weight:bold;transition:all 0.2s ease;box-shadow:0 4px 0 #000;white-space:nowrap;overflow:hidden;line-height:1;text-align:center;font-size:2em}.nav-btn:hover{transform:translateY(-2px);box-shadow:0 6px 0 #000;background:#fff}.nav-btn:active{transform:translateY(2px);box-shadow:0 0px 0 #000}.nav-select-wrapper select{padding:8px 15px;border-radius:10px;border:2px solid #000;background:white;font-family:inherit}.nav-spacer{width:150px}.free{background-image:url(/storage/app/media/icons/cost-eee.svg);background-color:white;background-size:contain;background-position:center;background-repeat:no-repeat;padding:15px;border-color:#8f8f9d}.free.active{background-color:green;border-color:darkgreen}div:has(>table){background:#fffdf5;border:3px solid #dcd0c0;border-radius:15px;overflow:hidden;box-shadow:0 4px 10px rgba(0,0,0,0.1);margin-top:20px}div:has(>table) table{width:100%;border-collapse:collapse;font-family:'Montserrat',sans-serif;font-size:15px;color:#333}div:has(>table) table thead{background-color:#f7f1e3}div:has(>table) table th{text-align:left;padding:15px 20px;font-weight:bold;color:#4b3621;text-transform:uppercase;letter-spacing:1px;border-bottom:2px solid #dcd0c0}div:has(>table) table th:nth-child(1),div:has(>table) table td:nth-child(1){width:20%}div:has(>table) table th:nth-child(2),div:has(>table) table td:nth-child(2){width:30%}div:has(>table) table td{padding:15px 20px;vertical-align:top;border-bottom:1px solid #eae1d6}.condition-name{font-weight:bold;color:#e67e22}div:has(>table) table tbody tr:nth-child(even){background-color:#fcfbf6}div:has(>table) table tbody tr:hover{background-color:#fdfae6}.fade-enter-active,.fade-leave-active{transition:opacity 0.2s ease}.fade-enter-from,.fade-leave-to{opacity:0}@media (max-width:1024px){.guide-layout{grid-template-columns:1fr}.guide-sidebar{position:static;border-right:none;border-bottom:1px solid #eee;margin:0 0 20px 0;float:none;width:100%}}
.CodeMirror{color:#000}.CodeMirror-lines{padding:4px 0}.CodeMirror pre{padding:0 4px}.CodeMirror-gutter-filler,.CodeMirror-scrollbar-filler{background-color:#fff}.CodeMirror-gutters{border-right:1px solid #ddd;background-color:#f7f7f7;white-space:nowrap}.CodeMirror-linenumber{padding:0 3px 0 5px;min-width:20px;text-align:right;color:#999;white-space:nowrap}.CodeMirror-guttermarker{color:#000}.CodeMirror-guttermarker-subtle{color:#999}.CodeMirror-cursor{border-left:1px solid #000;border-right:none;width:0}.CodeMirror div.CodeMirror-secondarycursor{border-left:1px solid silver}.cm-fat-cursor .CodeMirror-cursor{width:auto;border:0!important;background:#7e7}.cm-fat-cursor div.CodeMirror-cursors{z-index:1}.cm-animate-fat-cursor{width:auto;border:0;-webkit-animation:blink 1.06s steps(1) infinite;-moz-animation:blink 1.06s steps(1) infinite;animation:blink 1.06s steps(1) infinite;background-color:#7e7}@-moz-keyframes blink{50%{background-color:transparent}}@-webkit-keyframes blink{50%{background-color:transparent}}@keyframes blink{50%{background-color:transparent}}.cm-tab{display:inline-block;text-decoration:inherit}.CodeMirror-ruler{border-left:1px solid #ccc;position:absolute}.cm-s-default .cm-header{color:#00f}.cm-s-default .cm-quote{color:#090}.cm-negative{color:#d44}.cm-positive{color:#292}.cm-header,.cm-strong{font-weight:700}.cm-em{font-style:italic}.cm-link{text-decoration:underline}.cm-strikethrough{text-decoration:line-through}.cm-s-default .cm-keyword{color:#708}.cm-s-default .cm-atom{color:#219}.cm-s-default .cm-number{color:#164}.cm-s-default .cm-def{color:#00f}.cm-s-default .cm-variable-2{color:#05a}.cm-s-default .cm-variable-3{color:#085}.cm-s-default .cm-comment{color:#a50}.cm-s-default .cm-string{color:#a11}.cm-s-default .cm-string-2{color:#f50}.cm-s-default .cm-meta,.cm-s-default .cm-qualifier{color:#555}.cm-s-default .cm-builtin{color:#30a}.cm-s-default .cm-bracket{color:#997}.cm-s-default .cm-tag{color:#170}.cm-s-default .cm-attribute{color:#00c}.cm-s-default .cm-hr{color:#999}.cm-s-default .cm-link{color:#00c}.cm-invalidchar,.cm-s-default .cm-error{color:red}.CodeMirror-composing{border-bottom:2px solid}div.CodeMirror span.CodeMirror-matchingbracket{color:#0f0}div.CodeMirror span.CodeMirror-nonmatchingbracket{color:#f22}.CodeMirror-matchingtag{background:rgba(255,150,0,.3)}.CodeMirror-activeline-background{background:#e8f2ff}.CodeMirror{position:relative;overflow:hidden;background:#fff}.CodeMirror-scroll{overflow:scroll!important;margin-bottom:-30px;margin-right:-30px;padding-bottom:30px;height:100%;outline:0;position:relative}.CodeMirror-sizer{position:relative;border-right:30px solid transparent}.CodeMirror-gutter-filler,.CodeMirror-hscrollbar,.CodeMirror-scrollbar-filler,.CodeMirror-vscrollbar{position:absolute;z-index:6;display:none}.CodeMirror-vscrollbar{right:0;top:0;overflow-x:hidden;overflow-y:scroll}.CodeMirror-hscrollbar{bottom:0;left:0;overflow-y:hidden;overflow-x:scroll}.CodeMirror-scrollbar-filler{right:0;bottom:0}.CodeMirror-gutter-filler{left:0;bottom:0}.CodeMirror-gutters{position:absolute;left:0;top:0;min-height:100%;z-index:3}.CodeMirror-gutter{white-space:normal;height:100%;display:inline-block;vertical-align:top;margin-bottom:-30px}.CodeMirror-gutter-wrapper{position:absolute;z-index:4;background:0 0!important;border:none!important;-webkit-user-select:none;-moz-user-select:none;user-select:none}.CodeMirror-gutter-background{position:absolute;top:0;bottom:0;z-index:4}.CodeMirror-gutter-elt{position:absolute;cursor:default;z-index:4}.CodeMirror-lines{cursor:text;min-height:1px}.CodeMirror pre{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;border-width:0;background:0 0;font-family:inherit;font-size:inherit;margin:0;white-space:pre;word-wrap:normal;line-height:inherit;color:inherit;z-index:2;position:relative;overflow:visible;-webkit-tap-highlight-color:transparent;-webkit-font-variant-ligatures:none;font-variant-ligatures:none}.CodeMirror-wrap pre{word-wrap:break-word;white-space:pre-wrap;word-break:normal}.CodeMirror-linebackground{position:absolute;left:0;right:0;top:0;bottom:0;z-index:0}.CodeMirror-linewidget{position:relative;z-index:2;overflow:auto}.CodeMirror-code{outline:0}.CodeMirror-gutter,.CodeMirror-gutters,.CodeMirror-linenumber,.CodeMirror-scroll,.CodeMirror-sizer{-moz-box-sizing:content-box;box-sizing:content-box}.CodeMirror-measure{position:absolute;width:100%;height:0;overflow:hidden;visibility:hidden}.CodeMirror-cursor{position:absolute}.CodeMirror-measure pre{position:static}div.CodeMirror-cursors{visibility:hidden;position:relative;z-index:3}.CodeMirror-focused div.CodeMirror-cursors,div.CodeMirror-dragcursors{visibility:visible}.CodeMirror-selected{background:#d9d9d9}.CodeMirror-focused .CodeMirror-selected,.CodeMirror-line::selection,.CodeMirror-line>span::selection,.CodeMirror-line>span>span::selection{background:#d7d4f0}.CodeMirror-crosshair{cursor:crosshair}.CodeMirror-line::-moz-selection,.CodeMirror-line>span::-moz-selection,.CodeMirror-line>span>span::-moz-selection{background:#d7d4f0}.cm-searching{background:#ffa;background:rgba(255,255,0,.4)}.cm-force-border{padding-right:.1px}@media print{.CodeMirror div.CodeMirror-cursors{visibility:hidden}}.cm-tab-wrap-hack:after{content:''}span.CodeMirror-selectedtext{background:0 0}.CodeMirror{height:auto;min-height:300px;border:1px solid #ddd;border-bottom-left-radius:4px;border-bottom-right-radius:4px;padding:10px;font:inherit;z-index:1}.CodeMirror-scroll{min-height:300px}.CodeMirror-fullscreen{background:#fff;position:fixed!important;top:50px;left:0;right:0;bottom:0;height:auto;z-index:9}.CodeMirror-sided{width:50%!important}.editor-toolbar{position:relative;opacity:.6;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;padding:0 10px;border-top:1px solid #bbb;border-left:1px solid #bbb;border-right:1px solid #bbb;border-top-left-radius:4px;border-top-right-radius:4px}.editor-toolbar:after,.editor-toolbar:before{display:block;content:' ';height:1px}.editor-toolbar:before{margin-bottom:8px}.editor-toolbar:after{margin-top:8px}.editor-toolbar:hover,.editor-wrapper input.title:focus,.editor-wrapper input.title:hover{opacity:.8}.editor-toolbar.fullscreen{width:100%;height:50px;overflow-x:auto;overflow-y:hidden;white-space:nowrap;padding-top:10px;padding-bottom:10px;box-sizing:border-box;background:#fff;border:0;position:fixed;top:0;left:0;opacity:1;z-index:9}.editor-toolbar.fullscreen::before{width:20px;height:50px;background:-moz-linear-gradient(left,rgba(255,255,255,1) 0,rgba(255,255,255,0) 100%);background:-webkit-gradient(linear,left top,right top,color-stop(0,rgba(255,255,255,1)),color-stop(100%,rgba(255,255,255,0)));background:-webkit-linear-gradient(left,rgba(255,255,255,1) 0,rgba(255,255,255,0) 100%);background:-o-linear-gradient(left,rgba(255,255,255,1) 0,rgba(255,255,255,0) 100%);background:-ms-linear-gradient(left,rgba(255,255,255,1) 0,rgba(255,255,255,0) 100%);background:linear-gradient(to right,rgba(255,255,255,1) 0,rgba(255,255,255,0) 100%);position:fixed;top:0;left:0;margin:0;padding:0}.editor-toolbar.fullscreen::after{width:20px;height:50px;background:-moz-linear-gradient(left,rgba(255,255,255,0) 0,rgba(255,255,255,1) 100%);background:-webkit-gradient(linear,left top,right top,color-stop(0,rgba(255,255,255,0)),color-stop(100%,rgba(255,255,255,1)));background:-webkit-linear-gradient(left,rgba(255,255,255,0) 0,rgba(255,255,255,1) 100%);background:-o-linear-gradient(left,rgba(255,255,255,0) 0,rgba(255,255,255,1) 100%);background:-ms-linear-gradient(left,rgba(255,255,255,0) 0,rgba(255,255,255,1) 100%);background:linear-gradient(to right,rgba(255,255,255,0) 0,rgba(255,255,255,1) 100%);position:fixed;top:0;right:0;margin:0;padding:0}.editor-toolbar a{display:inline-block;text-align:center;text-decoration:none!important;color:#2c3e50!important;width:30px;height:30px;margin:0;border:1px solid transparent;border-radius:3px;cursor:pointer}.editor-toolbar a.active,.editor-toolbar a:hover{background:#fcfcfc;border-color:#95a5a6}.editor-toolbar a:before{line-height:30px}.editor-toolbar i.separator{display:inline-block;width:0;border-left:1px solid #d9d9d9;border-right:1px solid #fff;color:transparent;text-indent:-10px;margin:0 6px}.editor-toolbar a.fa-header-x:after{font-family:Arial,"Helvetica Neue",Helvetica,sans-serif;font-size:65%;vertical-align:text-bottom;position:relative;top:2px}.editor-toolbar a.fa-header-1:after{content:"1"}.editor-toolbar a.fa-header-2:after{content:"2"}.editor-toolbar a.fa-header-3:after{content:"3"}.editor-toolbar a.fa-header-bigger:after{content:"▲"}.editor-toolbar a.fa-header-smaller:after{content:"▼"}.editor-toolbar.disabled-for-preview a:not(.no-disable){pointer-events:none;background:#fff;border-color:transparent;text-shadow:inherit}@media only screen and (max-width:700px){.editor-toolbar a.no-mobile{display:none}}.editor-statusbar{padding:8px 10px;font-size:12px;color:#959694;text-align:right}.editor-statusbar span{display:inline-block;min-width:4em;margin-left:1em}.editor-preview,.editor-preview-side{padding:10px;background:#fafafa;overflow:auto;display:none;box-sizing:border-box}.editor-statusbar .lines:before{content:'lines:'}.editor-statusbar .words:before{content:'words:'}.editor-statusbar .characters:before{content:'characters:'}.editor-preview{position:absolute;width:100%;height:100%;top:0;left:0;z-index:7}.editor-preview-side{position:fixed;bottom:0;width:50%;top:50px;right:0;z-index:9;border:1px solid #ddd}.editor-preview-active,.editor-preview-active-side{display:block}.editor-preview-side>p,.editor-preview>p{margin-top:0}.editor-preview pre,.editor-preview-side pre{background:#eee;margin-bottom:10px}.editor-preview table td,.editor-preview table th,.editor-preview-side table td,.editor-preview-side table th{border:1px solid #ddd;padding:5px}.CodeMirror .CodeMirror-code .cm-tag{color:#63a35c}.CodeMirror .CodeMirror-code .cm-attribute{color:#795da3}.CodeMirror .CodeMirror-code .cm-string{color:#183691}.CodeMirror .CodeMirror-selected{background:#d9d9d9}.CodeMirror .CodeMirror-code .cm-header-1{font-size:200%;line-height:200%}.CodeMirror .CodeMirror-code .cm-header-2{font-size:160%;line-height:160%}.CodeMirror .CodeMirror-code .cm-header-3{font-size:125%;line-height:125%}.CodeMirror .CodeMirror-code .cm-header-4{font-size:110%;line-height:110%}.CodeMirror .CodeMirror-code .cm-comment{background:rgba(0,0,0,.05);border-radius:2px}.CodeMirror .CodeMirror-code .cm-link{color:#7f8c8d}.CodeMirror .CodeMirror-code .cm-url{color:#aab2b3}.CodeMirror .CodeMirror-code .cm-strikethrough{text-decoration:line-through}.CodeMirror .CodeMirror-placeholder{opacity:.5}.CodeMirror .cm-spell-error:not(.cm-url):not(.cm-comment):not(.cm-tag):not(.cm-word){background:rgba(255,0,0,.15)}