l.right+c||i.clientX<=l.right&&i.clientY>l.bottom&&i.clientX>=l.left:i.clientX>l.right&&i.clientY>l.top||i.clientX<=l.right&&i.clientY>l.bottom+c}function r0(i,t,n,l,c,d,a,h){var f=l?i.clientY:i.clientX,p=l?n.height:n.width,y=l?n.top:n.left,g=l?n.bottom:n.right,v=!1;if(!a){if(h&&lay+p*d/2:fg-la)return-so}else if(f>y+p*(1-c)/2&&fg-p*d/2)?f>y+p/2?1:-1:0}function n0(i){return Br(Ze)
{let d=c.target.closest(".sort-box-options [data-sort]");if(!d)return;c.preventDefault();let a=d.closest(".sort-box").querySelectorAll("ul"),h=d.getAttribute("data-sort");n=t===h?!n:!1;let f=Tf[h];n&&l.includes(h)&&(f=function(p,y){return 0-Tf[h](p,y)});for(let p of a)Array.from(p.children).filter(g=>g.matches("li")).sort(f).forEach(g=>{p.appendChild(g)});t=h,this.updateMapInput()})}bookSelect(t){if(this.elem.querySelector(`[data-type="book"][data-id="${t.id}"]`)!==null)return;let l=t.link+"/sort-item";window.$http.get(l).then(c=>{let d=document.createElement("div");d.innerHTML=c.data;let a=d.children[0];this.sortContainer.append(a),this.setupBookSortable(a)})}setupBookSortable(t){let n=[t.querySelector(".sort-list")];n.push(...t.querySelectorAll(".entity-list-item + ul"));let l={name:"book",pull:["book","chapter"],put:["book","chapter"]},c={name:"chapter",pull:["book","chapter"],put:function(d,a,h){return h.getAttribute("data-type")==="page"}};for(let d of n)new gi(d,{group:d.classList.contains("sort-list")?l:c,animation:150,fallbackOnBody:!0,swapThreshold:.65,onSort:this.updateMapInput.bind(this),dragClass:"bg-white",ghostClass:"primary-background-light",multiDrag:!0,multiDragKey:"CTRL",selectedClass:"sortable-selected"})}updateMapInput(){let t=this.buildEntityMap();this.input.value=JSON.stringify(t)}buildEntityMap(){let t=[],n=this.elem.querySelectorAll(".sort-list");for(let l of n){let c=l.closest('[data-type="book"]').getAttribute("data-id"),d=Array.from(l.children).filter(a=>a.matches('[data-type="page"], [data-type="chapter"]'));for(let a=0;a{n&&n()})}function ga(i,t=400,n=null){ya(i),va(i,{opacity:["1","0"]},t,()=>{i.style.display="none",n&&n()})}function vi(i,t=400){ya(i);let n=i.getBoundingClientRect().height,l=getComputedStyle(i),c=l.getPropertyValue("padding-top"),d=l.getPropertyValue("padding-bottom"),a={height:[`${n}px`,"0px"],overflow:["hidden","hidden"],paddingTop:[c,"0px"],paddingBottom:[d,"0px"]};va(i,a,t,()=>{i.style.display="none"})}function yi(i,t=400){ya(i),i.style.display="block";let n=i.getBoundingClientRect().height,l=getComputedStyle(i),c=l.getPropertyValue("padding-top"),d=l.getPropertyValue("padding-bottom"),a={height:["0px",`${n}px`],overflow:["hidden","hidden"],paddingTop:["0px",c],paddingBottom:["0px",d]};va(i,a,t)}function va(i,t,n=400,l=null){let c=Object.keys(t);for(let a of c)i.style[a]=t[a][0];let d=()=>{for(let a of c)i.style[a]=null;i.style.transition=null,i.removeEventListener("transitionend",d),ma.delete(i),l&&l()};setTimeout(()=>{i.style.transition=`all ease-in-out ${n}ms`;for(let a of c)i.style[a]=t[a][1];i.addEventListener("transitionend",d),ma.set(i,d)},15)}function ya(i){ma.has(i)&&ma.get(i)()}var If=class{constructor(t){this.elem=t,this.isOpen=t.classList.contains("open"),t.addEventListener("click",this.click.bind(this))}open(){let t=this.elem.parentNode.querySelector(".inset-list");this.elem.classList.add("open"),this.elem.setAttribute("aria-expanded","true"),yi(t,240)}close(){let t=this.elem.parentNode.querySelector(".inset-list");this.elem.classList.remove("open"),this.elem.setAttribute("aria-expanded","false"),vi(t,240)}click(t){t.preventDefault(),this.isOpen?this.close():this.open(),this.isOpen=!this.isOpen}},Ff=If;var jn=_t(Tt()),hh=_t(Qs()),C_=_t(Js()),T_=_t(el()),A_=_t(Bf()),L_=_t($f()),D_=_t(Wf()),I_=_t(Vf()),F_=_t(rl()),M_=_t(tl()),O_=_t(nd()),P_=_t(ad()),R_=_t(dd()),z_=_t(md()),N_=_t(yd()),B_=_t(wd()),q_=_t(Sd()),j_=_t(Td()),$_=_t(Dd()),U_=_t(Md()),H_=_t(Rd()),W_=_t(Bd()),G_=_t(Wd()),K_=_t(Vd()),V_=_t(Zd()),Y_=_t(eh()),X_=_t(nh()),Z_=_t(ah()),Q_=_t(ba()),J_=_t(uh()),eS=_t(dh()),nl={css:"css",c:"text/x-csrc",java:"text/x-java",scala:"text/x-scala",kotlin:"text/x-kotlin","c++":"text/x-c++src","c#":"text/x-csharp",csharp:"text/x-csharp",diff:"diff",for:"fortran",fortran:"fortran",go:"go",haskell:"haskell",hs:"haskell",html:"htmlmixed",ini:"properties",javascript:"javascript",json:{name:"javascript",json:!0},js:"javascript",jl:"julia",julia:"julia",lua:"lua",md:"markdown",mdown:"markdown",markdown:"markdown",ml:"mllike",nginx:"nginx",perl:"perl",pl:"perl",powershell:"powershell",properties:"properties",ocaml:"mllike",pascal:"text/x-pascal",pas:"text/x-pascal",php:i=>i.includes("/gi,`
+`);let n=i.textContent.trimEnd(),l="";if(t!==null){let d=t.className.replace("language-","");l=xa(d,n)}let c=(0,jn.default)(function(d){i.parentNode.replaceChild(d,i)},{value:n,mode:l,lineNumbers:!0,lineWrapping:!1,theme:wa(),readOnly:!0});u0(c)}function u0(i){let t='',n=document.createElement("div");n.classList.add("CodeMirror-copy"),n.innerHTML=t,i.display.wrapper.appendChild(n),new hh.default(n,{text:function(c){return i.getValue()}}).on("success",c=>{n.classList.add("success"),setTimeout(()=>{n.classList.remove("success")},240)})}function xa(i,t){i=i.trim().replace(/^\./g,"").toLowerCase();let n=typeof nl[i];return n==="undefined"?"":n==="function"?nl[i](t):nl[i]}function wa(){let i=document.documentElement.classList.contains("dark-mode");return window.codeTheme||(i?"darcula":"default")}function c0(i){let t=i.ownerDocument,n=i.querySelector("code"),l=(i.className||"").replace("language-","");l===""&&n&&(l=(n.className||"").replace("language-","")),i.innerHTML=i.innerHTML.replace(/
/gi,`
+`);let c=i.textContent,d=t.createElement("div"),a=t.createElement("textarea");d.className="CodeMirrorContainer",d.setAttribute("data-lang",l),d.setAttribute("dir","ltr"),a.style.display="none",i.parentNode.replaceChild(d,i),d.appendChild(a),d.contentEditable=!1,a.textContent=c;let h=(0,jn.default)(function(f){d.appendChild(f)},{value:c,mode:xa(l,c),lineNumbers:!0,lineWrapping:!1,theme:wa(),readOnly:!0});return{wrap:d,editor:h}}function f0(i,t){let n=i.textContent;return(0,jn.default)(function(l){i.parentNode.insertBefore(l,i),i.style.display="none"},{value:n,mode:xa(t,n),lineNumbers:!0,lineWrapping:!1,theme:wa()})}function d0(i,t,n){i.setOption("mode",xa(t,n))}function h0(i,t){i.setValue(t),setTimeout(()=>{mh(i)},10)}function mh(i){i.refresh()}function p0(i){let n={value:i.textContent,mode:"markdown",lineNumbers:!0,lineWrapping:!0,theme:wa(),scrollPastEnd:!0};return window.$events.emitPublic(i,"editor-markdown-cm::pre-init",{config:n}),(0,jn.default)(function(l){i.parentNode.insertBefore(l,i),i.style.display="none"},n)}function m0(){return jn.default.keyMap.default==jn.default.keyMap.macDefault?"Cmd":"Ctrl"}var ur={highlight:s0,highlightWithin:l0,wysiwygView:c0,popupEditor:f0,setMode:d0,setContent:h0,updateLayout:mh,markdownEditor:p0,getMetaKey:m0};var gh=class{setup(){this.container=this.$refs.container,this.popup=this.$el,this.editorInput=this.$refs.editor,this.languageLinks=this.$manyRefs.languageLink,this.saveButton=this.$refs.saveButton,this.languageInput=this.$refs.languageInput,this.historyDropDown=this.$refs.historyDropDown,this.historyList=this.$refs.historyList,this.callback=null,this.editor=null,this.history={},this.historyKey="code_history",this.setupListeners()}setupListeners(){this.container.addEventListener("keydown",t=>{t.ctrlKey&&t.key==="Enter"&&this.save()}),Rt(this.languageLinks,t=>{let n=t.target.dataset.lang;this.languageInput.value=n,this.updateEditorMode(n)}),Qo(this.languageInput,t=>this.save()),Rt(this.saveButton,t=>this.save()),$t(this.historyList,"button","click",(t,n)=>{t.preventDefault();let l=n.dataset.time;this.editor&&this.editor.setValue(this.history[l])})}save(){this.callback&&this.callback(this.editor.getValue(),this.languageInput.value),this.hide()}open(t,n,l){this.languageInput.value=n,this.callback=l,this.show(),this.updateEditorMode(n),ur.setContent(this.editor,t)}show(){this.editor||(this.editor=ur.popupEditor(this.editorInput,this.languageInput.value)),this.loadHistory(),this.popup.components.popup.show(()=>{ur.updateLayout(this.editor),this.editor.focus()},()=>{this.addHistory()})}hide(){this.popup.components.popup.hide(),this.addHistory()}updateEditorMode(t){ur.setMode(this.editor,t,this.editor.getValue())}loadHistory(){this.history=JSON.parse(window.sessionStorage.getItem(this.historyKey)||"{}");let t=Object.keys(this.history).reverse();this.historyDropDown.classList.toggle("hidden",t.length===0),this.historyList.innerHTML=t.map(n=>{let l=new Date(parseInt(n)).toLocaleTimeString();return``}).join("")}addHistory(){if(!this.editor)return;let t=this.editor.getValue();if(!t)return;let n=Object.keys(this.history).pop();if(this.history[n]===t)return;this.history[String(Date.now())]=t;let l=JSON.stringify(this.history);window.sessionStorage.setItem(this.historyKey,l)}},vh=gh;var yh=class{constructor(t){ur.highlightWithin(t)}},bh=yh;var xh=class{constructor(t){this.elem=t,this.trigger=t.querySelector("[collapsible-trigger]"),this.content=t.querySelector("[collapsible-content]"),!!this.trigger&&(this.trigger.addEventListener("click",this.toggle.bind(this)),this.openIfContainsError())}open(){this.elem.classList.add("open"),this.trigger.setAttribute("aria-expanded","true"),yi(this.content,300)}close(){this.elem.classList.remove("open"),this.trigger.setAttribute("aria-expanded","false"),vi(this.content,300)}toggle(){this.elem.classList.contains("open")?this.close():this.open()}openIfContainsError(){this.content.querySelector(".text-neg.text-small")&&this.open()}},wh=xh;var kh=class{constructor(t){this.elem=t,this.checkbox=t.querySelector("input[type=checkbox]"),this.display=t.querySelector('[role="checkbox"]'),this.checkbox.addEventListener("change",this.stateChange.bind(this)),this.elem.addEventListener("keydown",this.onKeyDown.bind(this))}onKeyDown(t){(t.keyCode===32||t.keyCode===13)&&(t.preventDefault(),this.toggle())}toggle(){this.checkbox.checked=!this.checkbox.checked,this.checkbox.dispatchEvent(new Event("change")),this.stateChange()}stateChange(){let t=this.checkbox.checked?"true":"false";this.display.setAttribute("aria-checked",t)}},_h=kh;var Sh=class{constructor(t){this.elem=t,this.dealtWith=!1,t.addEventListener("toggle",this.onToggle.bind(this))}onToggle(){this.dealtWith||(ur.highlightWithin(this.elem),this.dealtWith=!0)}},Eh=Sh;var Ch=class{setup(){this.container=this.$el,this.menu=this.$refs.menu,this.toggle=this.$refs.toggle,this.moveMenu=this.$opts.moveMenu,this.bubbleEscapes=this.$opts.bubbleEscapes==="true",this.direction=document.dir==="rtl"?"right":"left",this.body=document.body,this.showing=!1,this.setupListeners(),this.hide=this.hide.bind(this)}show(t=null){this.hideAll(),this.menu.style.display="block",this.menu.classList.add("anim","menuIn"),this.toggle.setAttribute("aria-expanded","true"),this.moveMenu&&(this.rect=this.menu.getBoundingClientRect(),this.body.appendChild(this.menu),this.menu.style.position="fixed",this.direction==="right"?this.menu.style.right=`${this.rect.right-this.rect.width}px`:this.menu.style.left=`${this.rect.left}px`,this.menu.style.top=`${this.rect.top}px`,this.menu.style.width=`${this.rect.width}px`),this.menu.addEventListener("mouseleave",this.hide.bind(this)),window.addEventListener("click",c=>{this.menu.contains(c.target)||this.hide()});let n=this.menu.querySelector("input");n!==null&&n.focus(),this.showing=!0;let l=new Event("show");this.container.dispatchEvent(l),t&&t.stopPropagation()}hideAll(){for(let t of window.components.dropdown)t.hide()}hide(){this.menu.style.display="none",this.menu.classList.remove("anim","menuIn"),this.toggle.setAttribute("aria-expanded","false"),this.moveMenu&&(this.menu.style.position="",this.menu.style[this.direction]="",this.menu.style.top="",this.menu.style.width="",this.container.appendChild(this.menu)),this.showing=!1}getFocusable(){return Array.from(this.menu.querySelectorAll("[tabindex],[href],button,input:not([type=hidden])"))}focusNext(){let t=this.getFocusable(),l=t.indexOf(document.activeElement)+1;l>=t.length&&(l=0),t[l].focus()}focusPrevious(){let t=this.getFocusable(),l=t.indexOf(document.activeElement)-1;l<0&&(l=t.length-1),t[l].focus()}setupListeners(){this.container.addEventListener("click",n=>{Array.from(this.menu.querySelectorAll("a")).includes(n.target)&&this.hide()}),Rt(this.toggle,n=>{n.stopPropagation(),this.show(n),n instanceof KeyboardEvent&&this.focusNext()});let t=n=>{n.key==="ArrowDown"||n.key==="ArrowRight"?(this.focusNext(),n.preventDefault()):n.key==="ArrowUp"||n.key==="ArrowLeft"?(this.focusPrevious(),n.preventDefault()):n.key==="Escape"&&(this.hide(),this.toggle.focus(),this.bubbleEscapes||n.stopPropagation())};this.container.addEventListener("keydown",t),this.moveMenu&&this.menu.addEventListener("keydown",t),this.menu.addEventListener("keydown ",n=>{n.key==="Enter"&&(n.preventDefault(),n.stopPropagation(),this.hide())})}},Th=Ch;var Ah=class{setup(){this.elem=this.$el,this.searchInput=this.$refs.searchInput,this.loadingElem=this.$refs.loading,this.listContainerElem=this.$refs.listContainer,this.localSearchSelector=this.$opts.localSearchSelector,this.url=this.$opts.url,this.elem.addEventListener("show",this.onShow.bind(this)),this.searchInput.addEventListener("input",this.onSearch.bind(this)),this.runAjaxSearch=Jo(this.runAjaxSearch,300,!1)}onShow(){this.loadList()}onSearch(){let t=this.searchInput.value.toLowerCase().trim();this.localSearchSelector?this.runLocalSearch(t):(this.toggleLoading(!0),this.listContainerElem.innerHTML="",this.runAjaxSearch(t))}runAjaxSearch(t){this.loadList(t)}runLocalSearch(t){let n=this.listContainerElem.querySelectorAll(this.localSearchSelector);for(let l of n){let c=!t||l.textContent.toLowerCase().includes(t);l.style.display=c?"flex":"none",l.classList.toggle("hidden",!c)}}async loadList(t=""){this.listContainerElem.innerHTML="",this.toggleLoading(!0);try{let n=await window.$http.get(this.getAjaxUrl(t));this.listContainerElem.innerHTML=n.data}catch(n){console.error(n)}this.toggleLoading(!1),this.localSearchSelector&&this.onSearch()}getAjaxUrl(t=null){if(!t)return this.url;let n=this.url.includes("?")?"&":"?";return`${this.url}${n}search=${encodeURIComponent(t)}`}toggleLoading(t=!1){this.loadingElem.style.display=t?"block":"none"}},Lh=Ah;var Ih=_t(Dh());var Fh=class{setup(){this.container=this.$el,this.url=this.$opts.url,this.successMessage=this.$opts.successMessage,this.removeMessage=this.$opts.removeMessage,this.uploadLimitMessage=this.$opts.uploadLimitMessage,this.timeoutMessage=this.$opts.timeoutMessage;let t=this;this.dz=new Ih.default(this.container,{addRemoveLinks:!0,dictRemoveFile:this.removeMessage,timeout:Number(window.uploadTimeout)||6e4,maxFilesize:Number(window.uploadLimit)||256,url:this.url,withCredentials:!0,init(){this.dz=this,this.dz.on("sending",t.onSending.bind(t)),this.dz.on("success",t.onSuccess.bind(t)),this.dz.on("error",t.onError.bind(t))}})}onSending(t,n,l){let c=window.document.querySelector("meta[name=token]").getAttribute("content");l.append("_token",c),n.ontimeout=d=>{this.dz.emit("complete",t),this.dz.emit("error",t,this.timeoutMessage)}}onSuccess(t,n){this.$emit("success",{file:t,data:n}),this.successMessage&&window.$events.emit("success",this.successMessage),ga(t.previewElement,800,()=>{this.dz.removeFile(t)})}onError(t,n,l){this.$emit("error",{file:t,errorMessage:n,xhr:l});let c=d=>{let a=t.previewElement.querySelector("[data-dz-errormessage]");a.textContent=d};l&&l.status===413?c(this.uploadLimitMessage):n.file&&c(n.file)}removeAll(){this.dz.removeAllFiles(!0)}},Mh=Fh;var Oh=class{constructor(t){this.elem=t,this.buttons=t.querySelectorAll("[toolbox-tab-button]"),this.contentElements=t.querySelectorAll("[toolbox-tab-content]"),this.toggleButton=t.querySelector("[toolbox-toggle]"),this.toggleButton.addEventListener("click",this.toggle.bind(this)),this.elem.addEventListener("click",n=>{let l=n.target.closest("[toolbox-tab-button]");if(l===null)return;let c=l.getAttribute("toolbox-tab-button");this.setActiveTab(c,!0)}),this.setActiveTab(this.contentElements[0].getAttribute("toolbox-tab-content"))}toggle(){this.elem.classList.toggle("open");let t=this.elem.classList.contains("open")?"true":"false";this.toggleButton.setAttribute("aria-expanded",t)}setActiveTab(t,n=!1){for(let l=0,c=this.buttons.length;l{t.preventDefault(),this.runSearch()}),Rt(this.clearButton,this.clearSearch.bind(this))}runSearch(){let t=this.searchInput.value.trim();if(t.length===0)return this.clearSearch();this.searchView.classList.remove("hidden"),this.contentView.classList.add("hidden"),this.loadingBlock.classList.remove("hidden");let n=window.baseUrl(`/search/${this.entityType}/${this.entityId}`);window.$http.get(n,{term:t}).then(l=>{this.searchResults.innerHTML=l.data}).catch(console.error).then(()=>{this.loadingBlock.classList.add("hidden")})}clearSearch(){this.searchView.classList.add("hidden"),this.contentView.classList.remove("hidden"),this.loadingBlock.classList.add("hidden"),this.searchInput.value=""}},Bh=Nh;var qh=class{setup(){this.elem=this.$el,this.entityTypes=this.$opts.entityTypes||"page,book,chapter",this.entityPermission=this.$opts.entityPermission||"view",this.input=this.$refs.input,this.searchInput=this.$refs.search,this.loading=this.$refs.loading,this.resultsContainer=this.$refs.results,this.addButton=this.$refs.add,this.search="",this.lastClick=0,this.selectedItemData=null,this.setupListeners(),this.showLoading(),this.initialLoad()}setupListeners(){this.elem.addEventListener("click",this.onClick.bind(this));let t=0;this.searchInput.addEventListener("input",n=>{t=Date.now(),this.showLoading(),setTimeout(()=>{Date.now()-t<199||this.searchEntities(this.searchInput.value)},200)}),this.searchInput.addEventListener("keydown",n=>{n.keyCode===13&&n.preventDefault()}),this.addButton&&this.addButton.addEventListener("click",n=>{this.selectedItemData&&(this.confirmSelection(this.selectedItemData),this.unselectAll())}),$t(this.$el,"[data-entity-type]","keydown",(n,l)=>{if(n.ctrlKey&&n.code==="Enter"){let c=this.$el.closest("form");if(c){c.submit(),n.preventDefault();return}}n.code==="ArrowDown"&&this.focusAdjacent(!0),n.code==="ArrowUp"&&this.focusAdjacent(!1)}),this.searchInput.addEventListener("keydown",n=>{n.code==="ArrowDown"&&this.focusAdjacent(!0)})}focusAdjacent(t=!0){let n=Array.from(this.resultsContainer.querySelectorAll("[data-entity-type]")),l=n.indexOf(document.activeElement),c=n[l+(t?1:-1)]||n[0];c&&c.focus()}showLoading(){this.loading.style.display="block",this.resultsContainer.style.display="none"}hideLoading(){this.loading.style.display="none",this.resultsContainer.style.display="block"}initialLoad(){window.$http.get(this.searchUrl()).then(t=>{this.resultsContainer.innerHTML=t.data,this.hideLoading()})}searchUrl(){return`/ajax/search/entities?types=${encodeURIComponent(this.entityTypes)}&permission=${encodeURIComponent(this.entityPermission)}`}searchEntities(t){this.input.value="";let n=`${this.searchUrl()}&term=${encodeURIComponent(t)}`;window.$http.get(n).then(l=>{this.resultsContainer.innerHTML=l.data,this.hideLoading()})}isDoubleClick(){let t=Date.now(),n=t-this.lastClick<300;return this.lastClick=t,n}onClick(t){let n=t.target.closest("[data-entity-type]");n&&(t.preventDefault(),t.stopPropagation(),this.selectItem(n))}selectItem(t){let n=this.isDoubleClick(),l=t.getAttribute("data-entity-type"),c=t.getAttribute("data-entity-id"),d=!t.classList.contains("selected")||n;this.unselectAll(),this.input.value=d?`${l}:${c}`:"";let a=t.getAttribute("href"),h=t.querySelector(".entity-list-item-name").textContent,f={id:Number(c),name:h,link:a};d?(t.classList.add("selected"),this.selectedItemData=f):window.$events.emit("entity-select-change",null),!(!n&&!d)&&(n&&this.confirmSelection(f),d&&window.$events.emit("entity-select-change",f))}confirmSelection(t){window.$events.emit("entity-select-confirm",t)}unselectAll(){let t=this.elem.querySelectorAll(".selected");for(let n of t)n.classList.remove("selected","primary-background");this.selectedItemData=null}},jh=qh;var $h=class{setup(){this.elem=this.$el,this.selectButton=this.$refs.select,window.EntitySelectorPopup=this,this.callback=null,this.selection=null,this.selectButton.addEventListener("click",this.onSelectButtonClick.bind(this)),window.$events.listen("entity-select-change",this.onSelectionChange.bind(this)),window.$events.listen("entity-select-confirm",this.onSelectionConfirm.bind(this))}show(t){this.callback=t,this.elem.components.popup.show()}hide(){this.elem.components.popup.hide()}onSelectButtonClick(){this.hide(),this.selection!==null&&this.callback&&this.callback(this.selection)}onSelectionConfirm(t){this.hide(),this.callback&&t&&this.callback(t)}onSelectionChange(t){this.selection=t,t===null?this.selectButton.setAttribute("disabled","true"):this.selectButton.removeAttribute("disabled")}},Uh=$h;var Hh=class{setup(){this.container=this.$el,this.name=this.$opts.name,Rt(this.$el,()=>{this.$emit(this.name,this.$opts)})}},Wh=Hh;var Gh=class{constructor(t){this.elem=t,this.isOpen=t.getAttribute("expand-toggle-is-open")==="yes",this.updateEndpoint=t.getAttribute("expand-toggle-update-endpoint"),this.selector=t.getAttribute("expand-toggle"),t.addEventListener("click",this.click.bind(this))}open(t){yi(t,200)}close(t){vi(t,200)}click(t){t.preventDefault();let n=document.querySelectorAll(this.selector);for(let l of n)this.isOpen?this.close(l):this.open(l);this.isOpen=!this.isOpen,this.updateSystemAjax(this.isOpen)}updateSystemAjax(t){window.$http.patch(this.updateEndpoint,{expand:t?"true":"false"})}},Kh=Gh;var Vh=class{setup(){this.elem=this.$el,this.toggleButton=this.$refs.toggle,this.menu=this.$refs.menu,this.open=!1,this.toggleButton.addEventListener("click",this.onToggle.bind(this)),this.onWindowClick=this.onWindowClick.bind(this),this.onKeyDown=this.onKeyDown.bind(this)}onToggle(t){this.open=!this.open,this.menu.classList.toggle("show",this.open),this.toggleButton.setAttribute("aria-expanded",this.open?"true":"false"),this.open?(this.elem.addEventListener("keydown",this.onKeyDown),window.addEventListener("click",this.onWindowClick)):(this.elem.removeEventListener("keydown",this.onKeyDown),window.removeEventListener("click",this.onWindowClick)),t.stopPropagation()}onKeyDown(t){t.code==="Escape"&&this.onToggle(t)}onWindowClick(t){this.onToggle(t)}},Yh=Vh;var Xh=class{constructor(t){this.elem=t,this.typeControl=t.querySelector('[name="setting-app-homepage-type"]'),this.pagePickerContainer=t.querySelector("[page-picker-container]"),this.typeControl.addEventListener("change",this.controlPagePickerVisibility.bind(this)),this.controlPagePickerVisibility()}controlPagePickerVisibility(){let t=this.typeControl.value==="page";this.pagePickerContainer.style.display=t?"block":"none"}},Zh=Xh;var Qh=class{setup(){this.uploadedTo=this.$opts.uploadedTo,this.container=this.$el,this.popupEl=this.$refs.popup,this.searchForm=this.$refs.searchForm,this.searchInput=this.$refs.searchInput,this.cancelSearch=this.$refs.cancelSearch,this.listContainer=this.$refs.listContainer,this.filterTabs=this.$manyRefs.filterTabs,this.selectButton=this.$refs.selectButton,this.formContainer=this.$refs.formContainer,this.dropzoneContainer=this.$refs.dropzoneContainer,this.type="gallery",this.lastSelected={},this.lastSelectedTime=0,this.callback=null,this.resetState=()=>{this.hasData=!1,this.page=1,this.filter="all"},this.resetState(),this.setupListeners(),window.ImageManager=this}setupListeners(){Rt(this.filterTabs,t=>{this.resetAll(),this.filter=t.target.dataset.filter,this.setActiveFilterTab(this.filter),this.loadGallery()}),this.searchForm.addEventListener("submit",t=>{this.resetListView(),this.loadGallery(),t.preventDefault()}),Rt(this.cancelSearch,t=>{this.resetListView(),this.resetSearchView(),this.loadGallery(),this.cancelSearch.classList.remove("active")}),this.searchInput.addEventListener("input",t=>{this.cancelSearch.classList.toggle("active",this.searchInput.value.trim())}),$t(this.listContainer,".load-more","click",async t=>{Ji(t.target),this.page++,await this.loadGallery(),t.target.remove()}),this.listContainer.addEventListener("event-emit-select-image",this.onImageSelectEvent.bind(this)),Rt(this.selectButton,()=>{this.callback&&this.callback(this.lastSelected),this.hide()}),$t(this.formContainer,"#image-manager-delete","click",t=>{this.lastSelected&&this.loadImageEditForm(this.lastSelected.id,!0)}),this.formContainer.addEventListener("ajax-form-success",this.refreshGallery.bind(this)),this.container.addEventListener("dropzone-success",this.refreshGallery.bind(this))}show(t,n="gallery"){this.resetAll(),this.callback=t,this.type=n,this.popupEl.components.popup.show(),this.dropzoneContainer.classList.toggle("hidden",n!=="gallery"),this.hasData||(this.loadGallery(),this.hasData=!0)}hide(){this.popupEl.components.popup.hide()}async loadGallery(){let t={page:this.page,search:this.searchInput.value||null,uploaded_to:this.uploadedTo,filter_type:this.filter==="all"?null:this.filter},{data:n}=await window.$http.get(`images/${this.type}`,t);this.addReturnedHtmlElementsToList(n),Uc(this.listContainer)}addReturnedHtmlElementsToList(t){let n=document.createElement("div");n.innerHTML=t,window.components.init(n);for(let l of[...n.children])this.listContainer.appendChild(l)}setActiveFilterTab(t){this.filterTabs.forEach(l=>l.classList.remove("selected"));let n=this.filterTabs.find(l=>l.dataset.filter===t);n&&n.classList.add("selected")}resetAll(){this.resetState(),this.resetListView(),this.resetSearchView(),this.resetEditForm(),this.setActiveFilterTab("all"),this.selectButton.classList.add("hidden")}resetSearchView(){this.searchInput.value=""}resetEditForm(){this.formContainer.innerHTML=""}resetListView(){Ji(this.listContainer),this.page=1}refreshGallery(){this.resetListView(),this.loadGallery()}onImageSelectEvent(t){let n=JSON.parse(t.detail.data),l=n&&n.id===this.lastSelected.id&&Date.now()-this.lastSelectedTime<400,c=t.target.classList.contains("selected");[...this.listContainer.querySelectorAll(".selected")].forEach(d=>{d.classList.remove("selected")}),c?this.resetEditForm():(t.target.classList.add("selected"),this.loadImageEditForm(n.id)),this.selectButton.classList.toggle("hidden",c),l&&this.callback&&(this.callback(n),this.hide()),this.lastSelected=n,this.lastSelectedTime=Date.now()}async loadImageEditForm(t,n=!1){n||(this.formContainer.innerHTML="");let l=n?{delete:!0}:{},{data:c}=await window.$http.get(`/images/edit/${t}`,l);this.formContainer.innerHTML=c,window.components.init(this.formContainer)}},Jh=Qh;var ep=class{constructor(t){this.elem=t,this.imageElem=t.querySelector("img"),this.imageInput=t.querySelector("input[type=file]"),this.resetInput=t.querySelector("input[data-reset-input]"),this.removeInput=t.querySelector("input[data-remove-input]"),this.defaultImage=t.getAttribute("data-default-image"),t.querySelector('button[data-action="reset-image"]').addEventListener("click",this.reset.bind(this));let l=t.querySelector('button[data-action="remove-image"]');l&&l.addEventListener("click",this.removeImage.bind(this)),this.imageInput.addEventListener("change",this.fileInputChange.bind(this))}fileInputChange(){this.resetInput.setAttribute("disabled","disabled"),this.removeInput&&this.removeInput.setAttribute("disabled","disabled");for(let t of this.imageInput.files)this.imageElem.src=window.URL.createObjectURL(t);this.imageElem.classList.remove("none")}reset(){this.imageInput.value="",this.imageElem.src=this.defaultImage,this.resetInput.removeAttribute("disabled"),this.removeInput&&this.removeInput.setAttribute("disabled","disabled"),this.imageElem.classList.remove("none")}removeImage(){this.imageInput.value="",this.imageElem.classList.add("none"),this.removeInput.removeAttribute("disabled"),this.resetInput.setAttribute("disabled","disabled")}},tp=ep;var rp=class{constructor(t){this.elem=t,this.menu=t.querySelector("ul"),this.sortInput=t.querySelector('[name="sort"]'),this.orderInput=t.querySelector('[name="order"]'),this.form=t.querySelector("form"),this.menu.addEventListener("click",n=>{n.target.closest("[data-sort-value]")!==null&&this.sortOptionClick(n)}),this.elem.addEventListener("click",n=>{n.target.closest("[data-sort-dir]")!==null&&this.sortDirectionClick(n)})}sortOptionClick(t){let n=t.target.closest("[data-sort-value]");this.sortInput.value=n.getAttribute("data-sort-value"),t.preventDefault(),this.form.submit()}sortDirectionClick(t){let l=this.orderInput.value==="asc"?"desc":"asc";this.orderInput.value=l,t.preventDefault(),this.form.submit()}},np=rp;var bv=_t(uv()),xv=_t(pv());var mv=class{constructor(t){this.data=t}hasItems(){return Boolean(this.data)&&Boolean(this.data.types)&&this.data.types.length>0}containsTabularData(){let t=this.data.getData("text/rtf");return t&&t.includes("\\trowd")}getImages(){let t=this.data.types,n=this.data.files,l=[];for(let c of t)if(c.includes("image")){let d=this.data.getData(c);l.push(d.getAsFile())}for(let c of n)c.type.includes("image")&&l.push(c);return l}},yo=mv;var pn=null,Ol,Pl,Rl;function zk(i,t,n){Pl=t,Rl=n,pn=document.createElement("iframe"),pn.setAttribute("frameborder","0"),window.addEventListener("message",gv),pn.setAttribute("src",i),pn.setAttribute("class","fullscreen"),pn.style.backgroundColor="#FFFFFF",document.body.appendChild(pn),Ol=new URL(i).origin}function Nk(){vv()}function gv(i){if(!i.data||i.data.length<1||i.origin!==Ol)return;let t=JSON.parse(i.data);t.event==="init"?jk():t.event==="exit"?vv():t.event==="save"?qk(t):t.event==="export"&&Bk(t)}function Bk(i){Rl&&Rl(i.data)}function qk(i){yv({action:"export",format:"xmlpng",xml:i.xml,spin:"Updating drawing"})}function jk(){!Pl||Pl().then(i=>{yv({action:"load",autosave:1,xml:i})})}function vv(){window.removeEventListener("message",gv),pn&&document.body.removeChild(pn)}function yv(i){pn.contentWindow.postMessage(JSON.stringify(i),Ol)}async function $k(i,t){let n={image:i,uploaded_to:t};return(await window.$http.post(window.baseUrl("/images/drawio"),n)).data}async function Uk(i){return`data:image/png;base64,${(await window.$http.get(window.baseUrl(`/images/drawio/base64/${i}`))).data.content}`}var Nr={show:zk,close:Nk,upload:$k,load:Uk};var wv=class{setup(){this.elem=this.$el,this.pageId=this.$opts.pageId,this.textDirection=this.$opts.textDirection,this.imageUploadErrorText=this.$opts.imageUploadErrorText,this.serverUploadLimitText=this.$opts.serverUploadLimitText,this.markdown=new bv.default({html:!0}),this.markdown.use(xv.default,{label:!0}),this.display=this.elem.querySelector(".markdown-display"),this.displayStylesLoaded=!1,this.input=this.elem.querySelector("textarea"),this.cm=ur.markdownEditor(this.input),this.onMarkdownScroll=this.onMarkdownScroll.bind(this);let t=()=>{this.displayDoc=this.display.contentDocument,this.init()};this.display.contentDocument.readyState==="complete"?t():this.display.addEventListener("load",t.bind(this)),window.$events.emitPublic(this.elem,"editor-markdown::setup",{markdownIt:this.markdown,displayEl:this.display,codeMirrorInstance:this.cm})}init(){let t=0;this.displayDoc.addEventListener("click",c=>{let d=Date.now()-t<300,a=c.target.closest("a");if(a!==null){c.preventDefault(),window.open(a.getAttribute("href"));return}let h=c.target.closest("[drawio-diagram]");if(h!==null&&d){this.actionEditDrawing(h);return}t=Date.now()}),this.elem.addEventListener("click",c=>{let d=c.target.closest("button[data-action]");if(d===null)return;let a=d.getAttribute("data-action");if(a==="insertImage"&&this.actionInsertImage(),a==="insertLink"&&this.actionShowLinkSelector(),a==="insertDrawing"&&(c.ctrlKey||c.metaKey)){this.actionShowImageManager();return}a==="insertDrawing"&&this.actionStartDrawing(),a==="fullscreen"&&this.actionFullScreen()}),this.elem.addEventListener("click",c=>{let d=c.target.closest(".editor-toolbar-label");if(!d)return;let a=this.elem.querySelectorAll(".markdown-editor-wrap");for(let h of a)h.classList.remove("active");d.closest(".markdown-editor-wrap").classList.add("active")}),window.$events.listen("editor-markdown-update",c=>{this.cm.setValue(c),this.updateAndRender()}),this.codeMirrorSetup(),this.listenForBookStackEditorEvents();let l=new URL(window.location).searchParams.get("content-text");l&&this.scrollToText(l)}updateAndRender(){let t=this.cm.getValue();this.input.value=t;let n=this.markdown.render(t);window.$events.emit("editor-html-change",n),window.$events.emit("editor-markdown-change",t),this.displayDoc.body.className="page-content",this.displayDoc.body.innerHTML=n,this.loadStylesIntoDisplay()}loadStylesIntoDisplay(){if(this.displayStylesLoaded)return;this.displayDoc.documentElement.classList.add("markdown-editor-display"),document.documentElement.classList.contains("dark-mode")&&(this.displayDoc.documentElement.style.backgroundColor="#222",this.displayDoc.documentElement.classList.add("dark-mode")),this.displayDoc.head.innerHTML="";let t=document.head.querySelectorAll("style,link[rel=stylesheet]");for(let n of t){let l=n.cloneNode(!0);this.displayDoc.head.appendChild(l)}this.displayStylesLoaded=!0}onMarkdownScroll(t){let n=this.displayDoc.body.children;if(n.length<=t)return;(t===-1?n[n.length-1]:n[t]).scrollIntoView({block:"start",inline:"nearest",behavior:"smooth"})}codeMirrorSetup(){let t=this.cm,n=this;t.setOption("direction","ltr");let l=ur.getMetaKey(),c={};c[`${l}-Alt-I`]=function(v){let k=``,_=v.getCursor("from");v.replaceSelection(k),v.setCursor(_.line,_.ch+k.length-1)},c[`${l}-S`]=v=>{window.$events.emit("editor-save-draft")},c[`${l}-Enter`]=v=>{window.$events.emit("editor-save-page")},c[`Shift-${l}-K`]=v=>{this.actionShowLinkSelector()},c[`${l}-K`]=v=>{g()},c[`${l}-1`]=v=>{h("##")},c[`${l}-2`]=v=>{h("###")},c[`${l}-3`]=v=>{h("####")},c[`${l}-4`]=v=>{h("#####")},c[`${l}-5`]=v=>{h("")},c[`${l}-d`]=v=>{h("")},c[`${l}-6`]=v=>{h(">")},c[`${l}-q`]=v=>{h(">")},c[`${l}-7`]=v=>{p("\n```\n","\n```")},c[`${l}-8`]=v=>{p("`","`")},c[`Shift-${l}-E`]=v=>{p("`","`")},c[`${l}-9`]=v=>{p('',"
")},t.setOption("extraKeys",c),t.on("change",(v,b)=>{this.updateAndRender()});let d=Jo(v=>{let b=v.getScrollInfo();if(b.top+b.clientHeight===b.height){this.onMarkdownScroll(-1);return}let _=v.lineAtHeight(b.top,"local"),w=v.getRange({line:0,ch:null},{line:_,ch:null}),z=new DOMParser().parseFromString(this.markdown.render(w),"text/html").documentElement.querySelectorAll("body > *");this.onMarkdownScroll(z.length)},100);t.on("scroll",v=>{d(v)}),t.on("paste",(v,b)=>{let k=new yo(b.clipboardData||b.dataTransfer);if(!k.hasItems()||k.containsTabularData())return;let _=k.getImages();for(let w of _)y(w)}),t.on("drop",(v,b)=>{let k=b.dataTransfer.getData("bookstack/template");if(k){let w=v.coordsChar({left:b.pageX,top:b.pageY});v.setCursor(w),b.preventDefault(),window.$http.get(`/templates/${k}`).then(F=>{let S=F.data.markdown||F.data.html;v.replaceSelection(S)})}let _=new yo(b.dataTransfer);if(_.hasItems()&&_.getImages().length>0){let w=v.coordsChar({left:b.pageX,top:b.pageY});v.setCursor(w),b.stopPropagation(),b.preventDefault();let F=_.getImages();for(let S of F)y(S)}});function a(v,b){let k=t.getValue(),_=t.listSelections();t.setValue(k.replace(v,b)),t.setSelections(_)}function h(v){let b=t.getCursor(),k=t.getLine(b.line),_=k.length,w=k.split(" ")[0];if(w===v){k=k.replace(`${v} `,""),t.replaceRange(k,{line:b.line,ch:0},{line:b.line,ch:_}),t.setCursor({line:b.line,ch:b.ch-(v.length+1)});return}let F=/^[#>`]/.test(w),S=0;F?(S=v.length-w.length,k=k.replace(w,v).trim()):v!==""&&(S=v.length+1,k=v+" "+k),t.replaceRange(k,{line:b.line,ch:0},{line:b.line,ch:_}),t.setCursor({line:b.line,ch:b.ch+S})}function f(v,b){let k=t.getCursor(),_=t.getLine(k.line),w=_.length,F=_;_.indexOf(v)===0&&_.slice(-b.length)===b?F=_.slice(v.length,_.length-b.length):F=`${v}${_}${b}`,t.replaceRange(F,{line:k.line,ch:0},{line:k.line,ch:w}),t.setCursor({line:k.line,ch:k.ch+v.length})}function p(v,b){let k=t.getSelection();if(k==="")return f(v,b);let _=k,w=0,F=0;k.indexOf(v)===0&&k.slice(-b.length)===b?(_=k.slice(v.length,k.length-b.length),F=-(b.length+v.length)):(_=`${v}${k}${b}`,F=v.length+b.length);let S=t.listSelections()[0];t.replaceSelection(_);let z=S.head.ch<=S.anchor.ch;S.head.ch+=z?w:F,S.anchor.ch+=z?F:w,t.setSelections([S])}function y(v){if(v===null||v.type.indexOf("image")!==0)return;let b="png";if(v.name){let H=v.name.match(/\.(.+)$/);H.length>1&&(b=H[1])}let k="image-"+Math.random().toString(16).slice(2),_=window.baseUrl(`/loading.gif#upload${k}`),w=t.getSelection(),F=``,S=t.getCursor();t.replaceSelection(F),t.setCursor({line:S.line,ch:S.ch+w.length+3});let z="image-"+Date.now()+"."+b,P=new FormData;P.append("file",v,z),P.append("uploaded_to",n.pageId),window.$http.post("/images/gallery",P).then(H=>{let $=`[](${H.data.url})`;a(F,$)}).catch(H=>{window.$events.emit("error",n.imageUploadErrorText),a(F,w),console.log(H)})}function g(){let v=t.getCursor("from"),b=t.getSelection()||"",k=`[${b}]()`;t.focus(),t.replaceSelection(k);let _=b===""?-3:-1;t.setCursor(v.line,v.ch+k.length+_)}this.updateAndRender()}actionInsertImage(){let t=this.cm.getCursor("from");window.ImageManager.show(n=>{let l=this.cm.getSelection(),c="[]("+n.url+")";this.cm.focus(),this.cm.replaceSelection(c),this.cm.setCursor(t.line,t.ch+c.length)},"gallery")}actionShowImageManager(){let t=this.cm.getCursor("from");window.ImageManager.show(n=>{this.insertDrawing(n,t)},"drawio")}actionShowLinkSelector(){let t=this.cm.getCursor("from");window.EntitySelectorPopup.show(n=>{let c=`[${this.cm.getSelection()||n.name}](${n.link})`;this.cm.focus(),this.cm.replaceSelection(c),this.cm.setCursor(t.line,t.ch+c.length)})}getDrawioUrl(){let t=document.querySelector("[drawio-url]");return t?t.getAttribute("drawio-url"):!1}actionStartDrawing(){let t=this.getDrawioUrl();if(!t)return;let n=this.cm.getCursor("from");Nr.show(t,()=>Promise.resolve(""),l=>{let c={image:l,uploaded_to:Number(this.pageId)};window.$http.post("/images/drawio",c).then(d=>{this.insertDrawing(d.data,n),Nr.close()}).catch(d=>{this.handleDrawingUploadError(d)})})}insertDrawing(t,n){let l=`
`;this.cm.focus(),this.cm.replaceSelection(l),this.cm.setCursor(n.line,n.ch+l.length)}actionEditDrawing(t){let n=this.getDrawioUrl();if(!n)return;let l=this.cm.getCursor("from"),c=t.getAttribute("drawio-diagram");Nr.show(n,()=>Nr.load(c),d=>{let a={image:d,uploaded_to:Number(this.pageId)};window.$http.post("/images/drawio",a).then(h=>{let f=`
`,p=this.cm.getValue().split(`
`).map(y=>y.indexOf(`drawio-diagram="${c}"`)!==-1?f:y).join(`
`);this.cm.setValue(p),this.cm.setCursor(l),this.cm.focus(),Nr.close()}).catch(h=>{this.handleDrawingUploadError(h)})})}handleDrawingUploadError(t){t.status===413?window.$events.emit("error",this.serverUploadLimitText):window.$events.emit("error",this.imageUploadErrorText),console.log(t)}actionFullScreen(){let t=this.elem.classList.contains("fullscreen");this.elem.classList.toggle("fullscreen",!t),document.body.classList.toggle("markdown-fullscreen",!t)}scrollToText(t){if(!t)return;let l=this.cm.getValue().split(/\r?\n/),c=l.findIndex(d=>d&&d.indexOf(t)!==-1);c!==-1&&(this.cm.scrollIntoView({line:c},200),this.cm.focus(),this.cm.setCursor({line:c,char:l[c].length}))}listenForBookStackEditorEvents(){function t({html:n,markdown:l}){return l||n}window.$events.listen("editor::replace",n=>{let l=t(n);this.cm.setValue(l)}),window.$events.listen("editor::append",n=>{let l=this.cm.getCursor("from"),c=t(n),d=this.cm.getValue()+`
`+c;this.cm.setValue(d),this.cm.setCursor(l.line,l.ch)}),window.$events.listen("editor::prepend",n=>{let l=this.cm.getCursor("from"),c=t(n),d=c+`
`+this.cm.getValue();this.cm.setValue(d);let a=c.split(`
-`).length;this.cm.setCursor(l.line+a,l.ch)}),window.$events.listen("editor::insert",n=>{let l=t(n);this.cm.replaceSelection(l)}),window.$events.listen("editor::focus",()=>{this.cm.focus()})}},bv=yv;var xv=class{constructor(t){this.elem=t,this.inviteOption=t.querySelector("input[name=send_invite]"),this.inviteOption&&(this.inviteOption.addEventListener("change",this.inviteOptionChange.bind(this)),this.inviteOptionChange())}inviteOptionChange(){let t=this.inviteOption.value==="true",n=this.elem.querySelectorAll("input[type=password]");for(let c of n)c.disabled=t;let l=this.elem.querySelector("#password-input-container");l&&(l.style.display=t?"none":"block")}},wv=xv;var kv=class{constructor(t){this.elem=t,this.type=t.getAttribute("notification"),this.textElem=t.querySelector("span"),this.autohide=this.elem.hasAttribute("data-autohide"),this.elem.style.display="grid",window.$events.listen(this.type,n=>{this.show(n)}),t.addEventListener("click",this.hide.bind(this)),t.hasAttribute("data-show")&&setTimeout(()=>this.show(this.textElem.textContent),100),this.hideCleanup=this.hideCleanup.bind(this)}show(t=""){if(this.elem.removeEventListener("transitionend",this.hideCleanup),this.textElem.textContent=t,this.elem.style.display="grid",setTimeout(()=>{this.elem.classList.add("showing")},1),this.autohide){let n=t.split(" ").length,l=Math.max(2e3,1e3+250*n);setTimeout(this.hide.bind(this),l)}}hide(){this.elem.classList.remove("showing"),this.elem.addEventListener("transitionend",this.hideCleanup)}hideCleanup(){this.elem.style.display="none",this.elem.removeEventListener("transitionend",this.hideCleanup)}},_v=kv;var Sv=class{setup(){this.removeButton=this.$refs.remove,this.showButton=this.$refs.show,this.input=this.$refs.input,this.setupListeners()}setupListeners(){Rt(this.removeButton,()=>{this.input.value="",this.input.classList.add("hidden"),this.removeButton.classList.add("hidden"),this.showButton.classList.remove("hidden")}),Rt(this.showButton,()=>{this.input.classList.remove("hidden"),this.removeButton.classList.remove("hidden"),this.showButton.classList.add("hidden")})}},Ev=Sv;var Cv=class{setup(){this.elem=this.$el,this.pageId=Number(this.$opts.pageId),this.container=this.$refs.commentContainer,this.formContainer=this.$refs.formContainer,this.commentCountBar=this.$refs.commentCountBar,this.addButtonContainer=this.$refs.addButtonContainer,this.replyToRow=this.$refs.replyToRow,this.updatedText=this.$opts.updatedText,this.deletedText=this.$opts.deletedText,this.createdText=this.$opts.createdText,this.countText=this.$opts.countText,this.editingComment=null,this.parentId=null,this.formContainer&&(this.form=this.formContainer.querySelector("form"),this.formInput=this.form.querySelector("textarea"),this.form.addEventListener("submit",this.saveComment.bind(this))),this.elem.addEventListener("click",this.handleAction.bind(this)),this.elem.addEventListener("submit",this.updateComment.bind(this))}handleAction(t){let n=t.target.closest("[action]");if(t.target.matches('a[href^="#"]')){let d=t.target.href.split("#")[1];eo(document.querySelector("#"+d))}if(n===null)return;t.preventDefault();let l=n.getAttribute("action"),c=n.closest("[comment]");l==="edit"&&this.editComment(c),l==="closeUpdateForm"&&this.closeUpdateForm(),l==="delete"&&this.deleteComment(c),l==="addComment"&&this.showForm(),l==="hideForm"&&this.hideForm(),l==="reply"&&this.setReply(c),l==="remove-reply-to"&&this.removeReplyTo()}closeUpdateForm(){!this.editingComment||(this.editingComment.querySelector("[comment-content]").style.display="block",this.editingComment.querySelector("[comment-edit-container]").style.display="none")}editComment(t){this.hideForm(),this.editingComment&&this.closeUpdateForm(),t.querySelector("[comment-content]").style.display="none",t.querySelector("[comment-edit-container]").style.display="block";let n=t.querySelector("[comment-edit-container] textarea"),l=n.value.split(`
-`).length;n.style.height=l*20+40+"px",this.editingComment=t}updateComment(t){let n=t.target;t.preventDefault();let c={text:n.querySelector("textarea").value,parent_id:this.parentId||null};this.showLoading(n);let d=this.editingComment.getAttribute("comment");window.$http.put(`/comment/${d}`,c).then(a=>{let h=document.createElement("div");h.innerHTML=a.data,this.editingComment.innerHTML=h.children[0].innerHTML,window.$events.success(this.updatedText),window.components.init(this.editingComment),this.closeUpdateForm(),this.editingComment=null}).catch(window.$events.showValidationErrors).then(()=>{this.hideLoading(n)})}deleteComment(t){let n=t.getAttribute("comment");this.showLoading(t.querySelector("[comment-content]")),window.$http.delete(`/comment/${n}`).then(l=>{t.parentNode.removeChild(t),window.$events.success(this.deletedText),this.updateCount(),this.hideForm()})}saveComment(t){t.preventDefault(),t.stopPropagation();let l={text:this.formInput.value,parent_id:this.parentId||null};this.showLoading(this.form),window.$http.post(`/comment/${this.pageId}`,l).then(c=>{let d=document.createElement("div");d.innerHTML=c.data;let a=d.children[0];this.container.appendChild(a),window.components.init(a),window.$events.success(this.createdText),this.resetForm(),this.updateCount()}).catch(c=>{window.$events.showValidationErrors(c),this.hideLoading(this.form)})}updateCount(){let t=this.container.children.length;this.elem.querySelector("[comments-title]").textContent=window.trans_plural(this.countText,t,{count:t})}resetForm(){this.formInput.value="",this.formContainer.appendChild(this.form),this.hideForm(),this.removeReplyTo(),this.hideLoading(this.form)}showForm(){this.formContainer.style.display="block",this.formContainer.parentNode.style.display="block",this.addButtonContainer.style.display="none",this.formInput.focus(),this.formInput.scrollIntoView({behavior:"smooth"})}hideForm(){this.formContainer.style.display="none",this.formContainer.parentNode.style.display="none",this.getCommentCount()>0?this.elem.appendChild(this.addButtonContainer):this.commentCountBar.appendChild(this.addButtonContainer),this.addButtonContainer.style.display="block"}getCommentCount(){return this.elem.querySelectorAll(".comment-box[comment]").length}setReply(t){this.showForm(),this.parentId=Number(t.getAttribute("local-id")),this.replyToRow.style.display="block";let n=this.replyToRow.querySelector("a");n.textContent=`#${this.parentId}`,n.href=`#comment${this.parentId}`}removeReplyTo(){this.parentId=null,this.replyToRow.style.display="none"}showLoading(t){let n=t.querySelectorAll(".form-group");for(let l of n)l.style.display="none";t.querySelector(".form-group.loading").style.display="block"}hideLoading(t){let n=t.querySelectorAll(".form-group");for(let l of n)l.style.display="block";t.querySelector(".form-group.loading").style.display="none"}},Tv=Cv;var Av=St(Qs());var Lv=class{constructor(t){if(this.elem=t,this.pageId=t.getAttribute("page-display"),ur.highlight(),this.setupPointer(),this.setupNavHighlighting(),this.setupDetailsCodeBlockRefresh(),window.location.hash){let l=window.location.hash.replace(/\%20/g," ").substr(1);this.goToText(l)}let n=document.querySelector(".sidebar-page-nav");n&&$t(n,"a","click",(l,c)=>{l.preventDefault(),window.components["tri-layout"][0].showContent();let d=c.getAttribute("href").substr(1);this.goToText(d),window.history.pushState(null,null,"#"+d)})}goToText(t){let n=document.getElementById(t);if(Xo(".page-content [data-highlighted]",l=>{l.removeAttribute("data-highlighted"),l.style.backgroundColor=null}),n!==null)eo(n);else{let l=$c(".page-content > div > *",t);l&&eo(l)}}setupPointer(){let t=document.getElementById("pointer");if(!t)return;t=t.parentNode.removeChild(t);let n=t.querySelector("div.pointer"),l=!1,c=!1,d=!0,a="";$t(t,"input","click",(f,p)=>{p.select(),f.stopPropagation()}),Zo(t,["click","focus"],f=>{f.stopPropagation()}),$t(t,"span.icon","click",(f,p)=>{f.stopPropagation(),d=!d,p.querySelector('[data-icon="include"]').style.display=d?"none":"inline",p.querySelector('[data-icon="link"]').style.display=d?"inline":"none",h()}),new Av.default(t.querySelector("button")),Zo(document.body,["click","focus"],f=>{!l||c||(t=t.parentElement.removeChild(t),l=!1)});let h=f=>{let p=d?window.baseUrl(`/link/${this.pageId}#${a}`):`{{@${this.pageId}#${a}}}`;d&&!p.startsWith("http")&&(p=window.location.protocol+"//"+window.location.host+p),t.querySelector("input").value=p;let y=t.querySelector("#pointer-edit");if(y&&f){let g=y.dataset.editHref,v=f.id,b=f.textContent&&f.textContent.substring(0,50);y.href=`${g}?content-id=${v}&content-text=${encodeURIComponent(b)}`}};Xo('.page-content [id^="bkmrk"]',f=>{Zo(f,["mouseup","keyup"],p=>{p.stopPropagation(),window.getSelection().toString().length!==0&&(a=f.id,h(f),f.parentNode.insertBefore(t,f),t.style.display="block",l=!0,c=!0,requestAnimationFrame(()=>{let g=f.getBoundingClientRect(),v=p.pageX-g.left-164;v<0&&(v=0);let b=v/g.width*100;n.style.left=b+"%",setTimeout(()=>{c=!1},100)}))})})}setupNavHighlighting(){if(!("IntersectionObserver"in window)||!("IntersectionObserverEntry"in window)||!("intersectionRatio"in window.IntersectionObserverEntry.prototype))return;let t=document.querySelector(".sidebar-page-nav"),n=document.querySelector(".page-content").querySelectorAll("h1, h2, h3, h4, h5, h6");n.length>0&&t!==null&&l(n);function l(a){let h={rootMargin:"0px 0px 0px 0px",threshold:1},f=new IntersectionObserver(c,h);for(let p of a)f.observe(p)}function c(a,h){for(let f of a){let p=f.intersectionRatio===1;d(f.target.id,p)}}function d(a,h){Xo('a[href="#'+a+'"]',f=>{f.closest("li").classList.toggle("current-heading",h)})}}setupDetailsCodeBlockRefresh(){let t=l=>{[...l.target.querySelectorAll(".CodeMirror")].forEach(d=>d.CodeMirror&&d.CodeMirror.refresh())};[...this.elem.querySelectorAll("details")].forEach(l=>l.addEventListener("toggle",t))}},Dv=Lv;function Iv(i){let t=new Date(i*1e3),n=t.getHours(),l=t.getMinutes();return`${(n>9?"":"0")+n}:${(l>9?"":"0")+l}`}var Fv=class{setup(){this.draftsEnabled=this.$opts.draftsEnabled==="true",this.editorType=this.$opts.editorType,this.pageId=Number(this.$opts.pageId),this.isNewDraft=this.$opts.pageNewDraft==="true",this.hasDefaultTitle=this.$opts.hasDefaultTitle||!1,this.container=this.$el,this.titleElem=this.$refs.titleContainer.querySelector("input"),this.saveDraftButton=this.$refs.saveDraft,this.discardDraftButton=this.$refs.discardDraft,this.discardDraftWrap=this.$refs.discardDraftWrap,this.draftDisplay=this.$refs.draftDisplay,this.draftDisplayIcon=this.$refs.draftDisplayIcon,this.changelogInput=this.$refs.changelogInput,this.changelogDisplay=this.$refs.changelogDisplay,this.draftText=this.$opts.draftText,this.autosaveFailText=this.$opts.autosaveFailText,this.editingPageText=this.$opts.editingPageText,this.draftDiscardedText=this.$opts.draftDiscardedText,this.setChangelogText=this.$opts.setChangelogText,this.editorHTML="",this.editorMarkdown="",this.autoSave={interval:null,frequency:3e4,last:0},this.pageId!==0&&this.draftsEnabled&&window.setTimeout(()=>{this.startAutoSave()},1e3),this.draftDisplay.innerHTML=this.draftText,this.setupListeners(),this.setInitialFocus()}setupListeners(){window.$events.listen("editor-save-draft",this.saveDraft.bind(this)),window.$events.listen("editor-save-page",this.savePage.bind(this)),window.$events.listen("editor-html-change",t=>{this.editorHTML=t}),window.$events.listen("editor-markdown-change",t=>{this.editorMarkdown=t}),this.changelogInput.addEventListener("change",this.updateChangelogDisplay.bind(this)),Rt(this.saveDraftButton,this.saveDraft.bind(this)),Rt(this.discardDraftButton,this.discardDraft.bind(this))}setInitialFocus(){if(this.hasDefaultTitle)return this.titleElem.select();window.setTimeout(()=>{window.$events.emit("editor::focus","")},500)}startAutoSave(){let t=this.titleElem.value.trim()+"::"+this.editorHTML;this.autoSaveInterval=window.setInterval(()=>{if(Date.now()-this.autoSave.last{this.draftDisplayIcon.classList.remove("visible")},2e3)}async discardDraft(){let t;try{t=await window.$http.get(`/ajax/page/${this.pageId}`)}catch(n){return console.error(n)}this.autoSave.interval&&window.clearInterval(this.autoSave.interval),this.draftDisplay.innerText=this.editingPageText,this.toggleDiscardDraftVisibility(!1),window.$events.emit("editor-html-update",t.data.html||""),window.$events.emit("editor-markdown-update",t.data.markdown||t.data.html),this.titleElem.value=t.data.name,window.setTimeout(()=>{this.startAutoSave()},1e3),window.$events.emit("success",this.draftDiscardedText)}updateChangelogDisplay(){let t=this.changelogInput.value.trim();t.length===0?t=this.setChangelogText:t.length>16&&(t=t.slice(0,16)+"..."),this.changelogDisplay.innerText=t}toggleDiscardDraftVisibility(t){this.discardDraftWrap.classList.toggle("hidden",!t)}},Mv=Fv;var Ov=class{constructor(t){this.elem=t,this.input=t.querySelector("input"),this.resetButton=t.querySelector("[page-picker-reset]"),this.selectButton=t.querySelector("[page-picker-select]"),this.display=t.querySelector("[page-picker-display]"),this.defaultDisplay=t.querySelector("[page-picker-default]"),this.buttonSep=t.querySelector("span.sep"),this.value=this.input.value,this.setupListeners()}setupListeners(){this.selectButton.addEventListener("click",this.showPopup.bind(this)),this.display.parentElement.addEventListener("click",this.showPopup.bind(this)),this.resetButton.addEventListener("click",t=>{this.setValue("","")})}showPopup(){window.EntitySelectorPopup.show(t=>{this.setValue(t.id,t.name)})}setValue(t,n){this.value=t,this.input.value=t,this.controlView(n)}controlView(t){let n=this.value&&this.value!==0;if(za(this.resetButton,n),za(this.buttonSep,n),za(this.defaultDisplay,!n),za(this.display,n),n){let l=this.getAssetIdFromVal();this.display.textContent=`#${l}, ${t}`,this.display.href=window.baseUrl(`/link/${l}`)}}getAssetIdFromVal(){return Number(this.value)}};function za(i,t){let n=i.tagName==="BUTTON"||i.tagName==="SPAN"?"inline-block":"block";i.style.display=t?n:"none"}var Pv=Ov;var Rv=class{constructor(t){this.container=t,t.querySelector("[permissions-table-toggle-all]").addEventListener("click",this.toggleAllClick.bind(this));let l=t.querySelectorAll("[permissions-table-toggle-all-in-row]");for(let d of l)d.addEventListener("click",this.toggleRowClick.bind(this));let c=t.querySelectorAll("[permissions-table-toggle-all-in-column]");for(let d of c)d.addEventListener("click",this.toggleColumnClick.bind(this))}toggleAllClick(t){t.preventDefault(),this.toggleAllInElement(this.container)}toggleRowClick(t){t.preventDefault(),this.toggleAllInElement(t.target.closest("tr"))}toggleColumnClick(t){t.preventDefault();let n=t.target.closest("th,td"),l=Array.from(n.parentElement.children).indexOf(n),c=n.closest("table").querySelectorAll("tr"),d=[];for(let a of c){let h=a.children[l];h&&d.push(...h.querySelectorAll("input[type=checkbox]"))}this.toggleAllInputs(d)}toggleAllInElement(t){let n=t.querySelectorAll("input[type=checkbox]");this.toggleAllInputs(n)}toggleAllInputs(t){let n=t.length>0?t[0].checked:!1;for(let l of t)l.checked=!n,l.dispatchEvent(new Event("change"))}},zv=Rv;var Nv=class{setup(){this.container=this.$el,this.hideButtons=this.$manyRefs.hide||[],this.onkeyup=null,this.onHide=null,this.setupListeners()}setupListeners(){let t=null;this.container.addEventListener("mousedown",n=>{t=n.target}),this.container.addEventListener("click",n=>{if(n.target===this.container&&t===this.container)return this.hide()}),Rt(this.hideButtons,n=>this.hide())}hide(t=null){ga(this.container,240,t),this.onkeyup&&(window.removeEventListener("keyup",this.onkeyup),this.onkeyup=null),this.onHide&&this.onHide()}show(t=null,n=null){Df(this.container,240,t),this.onkeyup=l=>{l.key==="Escape"&&this.hide()},window.addEventListener("keyup",this.onkeyup),this.onHide=n}},Bv=Nv;var qv=class{constructor(t){this.elem=t,this.colorInput=t.querySelector("input[type=color]"),this.lightColorInput=t.querySelector('input[name="setting-app-color-light"]'),this.resetButton=t.querySelector("[setting-app-color-picker-reset]"),this.defaultButton=t.querySelector("[setting-app-color-picker-default]"),this.colorInput.addEventListener("change",this.updateColor.bind(this)),this.colorInput.addEventListener("input",this.updateColor.bind(this)),this.resetButton.addEventListener("click",n=>{this.colorInput.value=this.colorInput.dataset.current,this.updateColor()}),this.defaultButton.addEventListener("click",n=>{this.colorInput.value=this.colorInput.dataset.default,this.updateColor()})}updateColor(){let t=this.colorInput.value,n=this.hexToRgb(t),l="rgba("+[n.r,n.g,n.b,"0.15"].join(",")+")";this.lightColorInput.value=l;let c=document.getElementById("custom-styles"),d=c.getAttribute("data-color"),a=c.getAttribute("data-color-light");c.innerHTML=c.innerHTML.split(d).join(t),c.innerHTML=c.innerHTML.split(a).join(l),c.setAttribute("data-color",t),c.setAttribute("data-color-light",l)}hexToRgb(t){let n=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(t);return{r:n?parseInt(n[1],16):0,g:n?parseInt(n[2],16):0,b:n?parseInt(n[3],16):0}}},jv=qv;var $v=class{constructor(t){this.elem=t,this.colorInput=t.querySelector("input[type=color]"),this.resetButton=t.querySelector("[setting-color-picker-reset]"),this.defaultButton=t.querySelector("[setting-color-picker-default]"),this.resetButton.addEventListener("click",n=>{this.colorInput.value=this.colorInput.dataset.current}),this.defaultButton.addEventListener("click",n=>{this.colorInput.value=this.colorInput.dataset.default})}},Uv=$v;var Hv=class{constructor(t){this.elem=t,this.input=document.getElementById("books-input"),this.shelfBooksList=t.querySelector("[shelf-sort-assigned-books]"),this.initSortable(),this.setupListeners()}initSortable(){let t=this.elem.querySelectorAll(".scroll-box");for(let n of t)new gi(n,{group:"shelf-books",ghostClass:"primary-background-light",animation:150,onSort:this.onChange.bind(this)})}setupListeners(){this.elem.addEventListener("click",t=>{let n=t.target.closest(".scroll-box-item:not(.instruction)");n&&(t.preventDefault(),this.sortItemClick(n))})}sortItemClick(t){let n=this.elem.querySelectorAll(".scroll-box"),l=Array.from(n).filter(c=>t.parentElement!==c);l.length>0&&l[0].appendChild(t),this.onChange()}onChange(){let t=Array.from(this.shelfBooksList.querySelectorAll("[data-id]"));this.input.value=t.map(n=>n.getAttribute("data-id")).join(",")}},Wv=Hv;var Gv=class{constructor(t){this.elem=t,this.toggleElem=t.querySelector(".sidebar-toggle"),this.toggleElem.addEventListener("click",this.toggle.bind(this))}toggle(t=!0){this.elem.classList.toggle("open")}},Kv=Gv;var Vv=class{setup(){this.container=this.$el,this.handleSelector=this.$opts.handleSelector;let t=new gi(this.container,{handle:this.handleSelector,animation:150,onSort:()=>{this.$emit("sort",{ids:t.toArray()})},setData(n,l){let c=l.getAttribute("data-drag-content");if(c){let d=JSON.parse(c);for(let[a,h]of Object.entries(d))n.setData(a,h)}},revertOnSpill:!0,dropBubble:!0,dragoverBubble:!1})}},Yv=Vv;var Xv=class{setup(){this.$el.addEventListener("change",()=>{let t=this.$el.closest("form");t&&t.submit()})}},Zv=Xv;var Qv=class{setup(){this.tabContentsByName={},this.tabButtonsByName={},this.allContents=[],this.allButtons=[];for(let[t,n]of Object.entries(this.$manyRefs||{})){if(t.startsWith("toggle")){let l=t.replace("toggle","").toLowerCase();Rt(n,c=>this.show(l)),this.allButtons.push(...n),this.tabButtonsByName[l]=n}if(t.startsWith("content")){let l=t.replace("content","").toLowerCase();this.tabContentsByName[l]=n,this.allContents.push(...n)}}}show(t){this.allContents.forEach(c=>{c.classList.add("hidden"),c.classList.remove("selected")}),this.allButtons.forEach(c=>c.classList.remove("selected"));let n=this.tabContentsByName[t]||[],l=this.tabButtonsByName[t]||[];n.length>0&&(n.forEach(c=>{c.classList.remove("hidden"),c.classList.add("selected")}),l.forEach(c=>c.classList.add("selected")))}},Jv=Qv;var ey=class{setup(){this.addRemoveComponentEl=this.$refs.addRemove,this.container=this.$el,this.rowSelector=this.$opts.rowSelector,this.setupListeners()}setupListeners(){this.container.addEventListener("change",t=>{let n=this.addRemoveComponentEl.components["add-remove-rows"];this.hasEmptyRows()||n.add()})}hasEmptyRows(){return[...this.container.querySelectorAll(this.rowSelector)].find(l=>[...l.querySelectorAll("input")].filter(c=>c.value).length===0)!==void 0}},ty=ey;var ry=class{constructor(t){this.elem=t,this.list=t.querySelector("[template-manager-list]"),this.searching=!1,$t(this.elem,"[template-action]","click",this.handleTemplateActionClick.bind(this)),$t(this.elem,".pagination a","click",this.handlePaginationClick.bind(this)),$t(this.elem,".template-item-content","click",this.handleTemplateItemClick.bind(this)),$t(this.elem,".template-item","dragstart",this.handleTemplateItemDragStart.bind(this)),this.setupSearchBox()}handleTemplateItemClick(t,n){let l=n.closest("[template-id]").getAttribute("template-id");this.insertTemplate(l,"replace")}handleTemplateItemDragStart(t,n){let l=n.closest("[template-id]").getAttribute("template-id");t.dataTransfer.setData("bookstack/template",l),t.dataTransfer.setData("text/plain",l)}handleTemplateActionClick(t,n){t.stopPropagation();let l=n.getAttribute("template-action"),c=n.closest("[template-id]").getAttribute("template-id");this.insertTemplate(c,l)}async insertTemplate(t,n="replace"){let l=await window.$http.get(`/templates/${t}`),c="editor::"+n;window.$events.emit(c,l.data)}async handlePaginationClick(t,n){t.preventDefault();let l=n.getAttribute("href"),c=await window.$http.get(l);this.list.innerHTML=c.data}setupSearchBox(){let t=this.elem.querySelector(".search-box");if(!t)return;let n=t.querySelector("input"),l=t.querySelector("button"),c=t.querySelector("button.search-box-cancel");async function d(){let a=n.value,h=await window.$http.get("/templates",{search:a});c.style.display=a?"block":"none",this.list.innerHTML=h.data}d=d.bind(this),t.addEventListener("keypress",a=>{a.key==="Enter"&&(a.preventDefault(),d())}),l.addEventListener("click",a=>{d()}),c.addEventListener("click",a=>{n.value="",d()})}},ny=ry;var iy=class{constructor(t){this.elem=t,this.input=t.querySelector("input[type=hidden]"),this.checkbox=t.querySelector("input[type=checkbox]"),this.checkbox.addEventListener("change",this.stateChange.bind(this))}stateChange(){this.input.value=this.checkbox.checked?"true":"false";let t=new Event("change");this.input.dispatchEvent(t)}},oy=iy;var ay=class{setup(){this.container=this.$refs.container,this.tabs=this.$manyRefs.tab,this.lastLayoutType="none",this.onDestroy=null,this.scrollCache={content:0,info:0},this.lastTabShown="content",this.mobileTabClick=this.mobileTabClick.bind(this),this.updateLayout(),window.addEventListener("resize",t=>{this.updateLayout()},{passive:!0})}updateLayout(){let t="tablet";window.innerWidth<=1e3&&(t="mobile"),window.innerWidth>=1400&&(t="desktop"),t!==this.lastLayoutType&&(this.onDestroy&&(this.onDestroy(),this.onDestroy=null),t==="desktop"?this.setupDesktop():t==="mobile"&&this.setupMobile(),this.lastLayoutType=t)}setupMobile(){for(let t of this.tabs)t.addEventListener("click",this.mobileTabClick);this.onDestroy=()=>{for(let t of this.tabs)t.removeEventListener("click",this.mobileTabClick)}}setupDesktop(){}mobileTabClick(t){let n=t.target.dataset.tab;this.showTab(n)}showContent(){this.showTab("content",!1)}showTab(t,n=!0){this.scrollCache[this.lastTabShown]=document.documentElement.scrollTop;for(let c of this.tabs){let d=c.dataset.tab===t;c.setAttribute("aria-selected",d?"true":"false")}let l=t==="info";if(this.container.classList.toggle("show-info",l),n){let d=document.querySelector("header").getBoundingClientRect().bottom;document.documentElement.scrollTop=this.scrollCache[t]||d,setTimeout(()=>{document.documentElement.scrollTop=this.scrollCache[t]||d},50)}this.lastTabShown=t}},sy=ay;var ly=class{setup(){this.input=this.$refs.input,this.userInfoContainer=this.$refs.userInfo,this.hide=this.$el.components.dropdown.hide,$t(this.$el,"a.dropdown-search-item","click",this.selectUser.bind(this))}selectUser(t,n){t.preventDefault();let l=n.getAttribute("data-id");this.input.value=l,this.userInfoContainer.innerHTML=n.innerHTML,this.input.dispatchEvent(new Event("change",{bubbles:!0})),this.hide()}},uy=ly;function cy(i,t,n){let l=new yo(i.clipboardData||i.dataTransfer);if(!l.hasItems()||l.containsTabularData())return;let c=l.getImages();for(let d of c){let a="image-"+Math.random().toString(16).slice(2),h=window.baseUrl("/loading.gif");i.preventDefault(),setTimeout(()=>{t.insertContent(`
`),jk(d,n).then(f=>{let p=f.name.replace(/"/g,""),y=`
`,g=t.dom.create("a",{target:"_blank",href:f.url},y);t.dom.replace(g,a)}).catch(f=>{t.dom.remove(a),window.$events.emit("error",n.imageUploadErrorText),console.log(f)})},10)}}async function jk(i,t){if(i===null||i.type.indexOf("image")!==0)throw new Error("Not an image file");let n="png";if(i.name){let a=i.name.match(/\.(.+)$/);a.length>1&&(n=a[1])}let l="image-"+Date.now()+"."+n,c=new FormData;return c.append("file",i,l),c.append("uploaded_to",t.pageId),(await window.$http.post(window.baseUrl("/images/gallery"),c)).data}function $k(i){for(let t=1;t<5;t++)i.shortcuts.add("meta+"+t,"",["FormatBlock",!1,"h"+(t+1)]);i.shortcuts.add("meta+5","",["FormatBlock",!1,"p"]),i.shortcuts.add("meta+d","",["FormatBlock",!1,"p"]),i.shortcuts.add("meta+6","",["FormatBlock",!1,"blockquote"]),i.shortcuts.add("meta+q","",["FormatBlock",!1,"blockquote"]),i.shortcuts.add("meta+7","",["codeeditor",!1,"pre"]),i.shortcuts.add("meta+e","",["codeeditor",!1,"pre"]),i.shortcuts.add("meta+8","",["FormatBlock",!1,"code"]),i.shortcuts.add("meta+shift+E","",["FormatBlock",!1,"code"]),i.shortcuts.add("meta+S","",()=>{window.$events.emit("editor-save-draft")}),i.shortcuts.add("meta+13","",()=>{window.$events.emit("editor-save-page")}),i.shortcuts.add("meta+9","",function(){let t=i.selection.getNode(),n=t?t.closest(".callout"):null,l=["info","success","warning","danger"],d=(l.findIndex(h=>n&&n.classList.contains(h))+1)%l.length,a=l[d];i.formatter.apply("callout"+a)})}function Uk(i){window.$http.get(window.baseUrl("/custom-head-content")).then(t=>{if(!t.data)return;let n=i.getDoc().querySelector("head");n.innerHTML+=t.data})}function Hk(){function i(l){return l.className==="CodeMirrorContainer"}function t(l){let c=l.selection.getNode();if(!i(c)){let h=l.selection.getNode().textContent;window.components.first("code-editor").open(h,"",(f,p)=>{let y=document.createElement("div");y.innerHTML=`
`,y.querySelector("code").innerText=f,l.formatter.toggle("pre");let g=l.selection.getNode();l.dom.setHTML(g,y.querySelector("pre").innerHTML),l.fire("SetContent"),l.focus()});return}let d=c.hasAttribute("data-lang")?c.getAttribute("data-lang"):"",a=c.querySelector("textarea").textContent;window.components.first("code-editor").open(a,d,(h,f)=>{let y=c.querySelector(".CodeMirror").CodeMirror;y&&(ur.setContent(y,h),ur.setMode(y,f,h));let g=c.querySelector("textarea");g&&(g.textContent=h),c.setAttribute("data-lang",f),l.focus()})}function n(l){let d=l.querySelector("textarea").textContent,a=l.getAttribute("data-lang");l.removeAttribute("contentEditable");let h=document.createElement("pre"),f=document.createElement("code");f.classList.add(`language-${a}`),f.textContent=d,h.appendChild(f),l.parentElement.replaceChild(h,l)}window.tinymce.PluginManager.add("codeeditor",function(l,c){let d=l.$;l.addButton("codeeditor",{text:"Code block",icon:!1,cmd:"codeeditor"}),l.addCommand("codeeditor",()=>{t(l)}),l.on("PreProcess",function(h){d("div.CodeMirrorContainer",h.node).each((f,p)=>{n(p)})}),l.on("dblclick",h=>{let f=l.selection.getNode();!i(f)||t(l)});function a(){d(".CodeMirrorContainer").filter((f,p)=>typeof p.querySelector(".CodeMirror").CodeMirror=="undefined").each((f,p)=>{n(p)}),d("body > pre").filter((f,p)=>p.contentEditable!=="false").each((f,p)=>{ur.wysiwygView(p)})}l.on("init",function(){l.undoManager.transact(function(){a()}),setTimeout(()=>{l.on("SetContent",()=>{setTimeout(a,100)})},200)})})}function Wk(i,t,n,l){let c=null,d=null;function a(g){return g.hasAttribute("drawio-diagram")}function h(g,v=null){c=g,d=v,window.ImageManager.show(function(b){if(v){let k=v.querySelector("img");c.dom.setAttrib(k,"src",b.url),c.dom.setAttrib(v,"drawio-diagram",b.id)}else{let k=`
`;c.insertContent(k)}},"drawio")}function f(g,v=null){c=g,d=v,Nr.show(i,y,p)}async function p(g){let v="image-"+Math.random().toString(16).slice(2),b=window.baseUrl("/loading.gif"),k=_=>{_.status===413?window.$events.emit("error",l.serverUploadLimitText):window.$events.emit("error",l.imageUploadErrorText),console.log(_)};if(d){Nr.close();let _=d.querySelector("img");try{let w=await Nr.upload(g,n);c.dom.setAttrib(_,"src",w.url),c.dom.setAttrib(d,"drawio-diagram",w.id)}catch(w){k(w)}return}setTimeout(async()=>{c.insertContent(`
`),Nr.close();try{let _=await Nr.upload(g,n);c.dom.setAttrib(v,"src",_.url),c.dom.get(v).parentNode.setAttribute("drawio-diagram",_.id)}catch(_){c.dom.remove(v),k(_)}},5)}function y(){if(!d)return Promise.resolve("");let g=d.getAttribute("drawio-diagram");return Nr.load(g)}window.tinymce.PluginManager.add("drawio",function(g,v){g.addCommand("drawio",()=>{let b=g.selection.getNode();f(g,a(b)?b:null)}),g.addButton("drawio",{type:"splitbutton",tooltip:"Drawing",image:`data:image/svg+xml;base64,${btoa(``)}`,cmd:"drawio",menu:[{text:"Drawing Manager",onclick(){let b=g.selection.getNode();h(g,a(b)?b:null)}}]}),g.on("dblclick",b=>{let k=g.selection.getNode();!a(k)||f(g,k)}),g.on("SetContent",function(){let b=g.$("body > div[drawio-diagram]");!b.length||g.undoManager.transact(function(){b.each((k,_)=>{_.setAttribute("contenteditable","false")})})})})}function Yk(){window.tinymce.PluginManager.add("customhr",function(i){i.addCommand("InsertHorizontalRule",function(){let t=document.createElement("hr"),n=i.selection.getNode();n.parentNode.insertBefore(t,n)}),i.addButton("hr",{icon:"hr",tooltip:"Horizontal line",cmd:"InsertHorizontalRule"}),i.addMenuItem("hr",{icon:"hr",text:"Horizontal line",cmd:"InsertHorizontalRule",context:"insert"})})}function Xk(i){window.$events.listen("editor::replace",({html:t})=>{i.setContent(t)}),window.$events.listen("editor::append",({html:t})=>{let n=i.getContent()+t;i.setContent(n)}),window.$events.listen("editor::prepend",({html:t})=>{let n=t+i.getContent();i.setContent(n)}),window.$events.listen("editor::insert",({html:t})=>{i.insertContent(t)}),window.$events.listen("editor::focus",()=>{i.focus()})}var py=class{setup(){this.elem=this.$el,this.pageId=this.$opts.pageId,this.textDirection=this.$opts.textDirection,this.imageUploadErrorText=this.$opts.imageUploadErrorText,this.serverUploadLimitText=this.$opts.serverUploadLimitText,this.isDarkMode=document.documentElement.classList.contains("dark-mode"),this.plugins="image imagetools table textcolor paste link autolink fullscreen code customhr autosave lists codeeditor media",this.loadPlugins(),this.tinyMceConfig=this.getTinyMceConfig(),window.$events.emitPublic(this.elem,"editor-tinymce::pre-init",{config:this.tinyMceConfig}),window.tinymce.init(this.tinyMceConfig)}loadPlugins(){Kk(),Yk();let t=document.querySelector("[drawio-url]");if(t){let n=t.getAttribute("drawio-url");Vk(n,this.isDarkMode,this.pageId,this),this.plugins+=" drawio"}this.textDirection==="rtl"&&(this.plugins+=" directionality")}getToolBar(){return`undo redo | styleselect | bold italic underline strikethrough superscript subscript | forecolor backcolor | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | table image-insert link hr drawio media | removeformat code ${this.textDirection==="rtl"?"ltr rtl":""} fullscreen`}getTinyMceConfig(){let t=this;return{selector:"#html-editor",content_css:[window.baseUrl("/dist/styles.css")],branding:!1,skin:this.isDarkMode?"dark":"lightgray",body_class:"page-content",browser_spellcheck:!0,relative_urls:!1,directionality:this.textDirection,remove_script_host:!1,document_base_url:window.baseUrl("/"),end_container_on_empty_block:!0,statusbar:!1,menubar:!1,paste_data_images:!1,extended_valid_elements:"pre[*],svg[*],div[drawio-diagram]",automatic_uploads:!1,valid_children:"-div[p|h1|h2|h3|h4|h5|h6|blockquote],+div[pre],+div[img]",plugins:this.plugins,imagetools_toolbar:"imageoptions",toolbar:this.getToolBar(),content_style:`html, body, html.dark-mode {background: ${this.isDarkMode?"#222":"#fff"};} body {padding-left: 15px !important; padding-right: 15px !important; margin:0!important; margin-left:auto!important;margin-right:auto!important;}`,style_formats:[{title:"Header Large",format:"h2"},{title:"Header Medium",format:"h3"},{title:"Header Small",format:"h4"},{title:"Header Tiny",format:"h5"},{title:"Paragraph",format:"p",exact:!0,classes:""},{title:"Blockquote",format:"blockquote"},{title:"Code Block",icon:"code",cmd:"codeeditor",format:"codeeditor"},{title:"Inline Code",icon:"code",inline:"code"},{title:"Callouts",items:[{title:"Info",format:"calloutinfo"},{title:"Success",format:"calloutsuccess"},{title:"Warning",format:"calloutwarning"},{title:"Danger",format:"calloutdanger"}]}],style_formats_merge:!1,media_alt_source:!1,media_poster:!1,formats:{codeeditor:{selector:"p,h1,h2,h3,h4,h5,h6,td,th,div"},alignleft:{selector:"p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img",classes:"align-left"},aligncenter:{selector:"p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img",classes:"align-center"},alignright:{selector:"p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img",classes:"align-right"},calloutsuccess:{block:"p",exact:!0,attributes:{class:"callout success"}},calloutinfo:{block:"p",exact:!0,attributes:{class:"callout info"}},calloutwarning:{block:"p",exact:!0,attributes:{class:"callout warning"}},calloutdanger:{block:"p",exact:!0,attributes:{class:"callout danger"}}},file_browser_callback:function(n,l,c,d){c==="file"&&window.EntitySelectorPopup.show(function(a){let h=d.document.getElementById(n);h.value=a.link;let p=h.closest(".mce-form").querySelectorAll("input");p[1].value||(p[1].value=a.name),p[2].value=a.name}),c==="image"&&window.ImageManager.show(function(a){if(d.document.getElementById(n).value=a.url,"createEvent"in document){let f=document.createEvent("HTMLEvents");f.initEvent("change",!1,!0),d.document.getElementById(n).dispatchEvent(f)}else d.document.getElementById(n).fireEvent("onchange");let h=``;h+=`
`,h+="",d.tinyMCE.activeEditor.execCommand("mceInsertContent",!1,h)},"gallery")},paste_preprocess:function(n,l){l.content.indexOf('
{l();let p=new URL(window.location).searchParams.get("content-id");p&&c(p);let g=n.getContainer().querySelectorAll(".mce-btn");for(let v of g)v.addEventListener("touchstart",b=>{b.stopPropagation()});window.editor=n});function l(){let f=n.getContent();t.isDarkMode&&n.contentDocument.documentElement.classList.add("dark-mode"),window.$events.emit("editor-html-change",f)}function c(f){let p=n.dom.get(encodeURIComponent(f).replace(/!/g,"%21"));!p||(p.scrollIntoView(),n.selection.select(p,!0),n.selection.collapse(!1),n.focus())}Xk(n),window.$events.listen("editor-html-update",f=>{n.setContent(f),n.selection.select(n.getBody(),!0),n.selection.collapse(!1),l(f)}),Wk(n);let d,a;function h(f){return f&&!!(f.textContent||f.innerText)}n.on("dragstart",function(){let f=n.selection.getNode();f.nodeName==="IMG"&&(d=n.dom.getParent(f,".mceTemp"),!d&&f.parentNode.nodeName==="A"&&!h(f.parentNode)&&(d=f.parentNode)),f.hasAttribute("contenteditable")&&f.getAttribute("contenteditable")==="false"&&(a=f)}),n.on("drop",function(f){let p=n.dom,y=tinymce.dom.RangeUtils.getCaretRangeFromPoint(f.clientX,f.clientY,n.getDoc()),g=f.dataTransfer&&f.dataTransfer.getData("bookstack/template");g&&(f.preventDefault(),window.$http.get(`/templates/${g}`).then(v=>{n.selection.setRng(y),n.undoManager.transact(function(){n.execCommand("mceInsertContent",!1,v.data.html)})})),p.getParent(y.startContainer,".mceTemp")?f.preventDefault():d&&(f.preventDefault(),n.undoManager.transact(function(){n.selection.setRng(y),n.selection.setNode(d),p.remove(d)})),!f.isDefaultPrevented()&&a&&(f.preventDefault(),n.undoManager.transact(function(){let v=n.selection.getNode(),b=n.selection.getRng(),k=v.closest("body > *");b.startOffset>b.startContainer.length/2?n.$(k).after(a):n.$(k).before(a)})),f.isDefaultPrevented()||hy(f,n,t),d=null}),n.addButton("image-insert",{title:"My title",icon:"image",tooltip:"Insert an image",onclick:function(){window.ImageManager.show(function(f){let p=``;p+=`
`,p+="",n.execCommand("mceInsertContent",!1,p)},"gallery")}}),n.on("paste",f=>hy(f,n,t)),window.$events.emitPublic(t.elem,"editor-tinymce::setup",{editor:n})}}}},my=py;var gy={"add-remove-rows":Kc,"ajax-delete-row":Yc,"ajax-form":Zc,attachments:Jc,"attachments-list":tf,"auto-suggest":nf,"back-to-top":af,"book-sort":Lf,"chapter-toggle":Ff,"code-editor":vh,"code-highlighter":bh,collapsible:wh,"custom-checkbox":_h,"details-highlighter":Eh,dropdown:Th,"dropdown-search":Lh,dropzone:Mh,"editor-toolbox":Ph,"entity-permissions-editor":zh,"entity-search":Bh,"entity-selector":jh,"entity-selector-popup":Uh,"event-emit-select":Wh,"expand-toggle":Kh,"header-mobile-toggle":Yh,"homepage-control":Zh,"image-manager":Jh,"image-picker":tp,index:Na,"list-sort-control":np,"markdown-editor":kv,"new-user-password":Sv,notification:Cv,"optional-input":Av,"page-comments":Dv,"page-display":Mv,"page-editor":Rv,"page-picker":Nv,"permissions-table":qv,popup:$v,"setting-app-color-picker":Hv,"setting-color-picker":Gv,"shelf-sort":Vv,sidebar:Xv,"sortable-list":Qv,"submit-on-change":ey,tabs:ry,"tag-manager":iy,"template-manager":ay,"toggle-switch":ly,"tri-layout":cy,"user-select":dy,"wysiwyg-editor":my};window.components={};function Zk(i,t){let n=t.querySelectorAll(`[${i}]`);for(let l=0,c=n.length;l{a.from=l;let h=new CustomEvent(`${i}-${d}`,{bubbles:!0,detail:a});l.$el.dispatchEvent(h)},typeof l.setup=="function"&&l.setup()}catch(c){console.error("Failed to create component",c,i,t)}typeof window.components[i]=="undefined"&&(window.components[i]=[]),window.components[i].push(l),typeof t.components=="undefined"&&(t.components={}),t.components[i]=l}function Qk(i,t){let n={},l={},c=`${i}@`,d=`[refs*="${c}"]`,a=[...t.querySelectorAll(d)];t.matches(d)&&a.push(t);for(let h of a){let f=h.getAttribute("refs").split(" ").filter(p=>p.startsWith(c)).map(p=>p.replace(c,"")).map(yy);for(let p of f)n[p]=h,typeof l[p]=="undefined"&&(l[p]=[]),l[p].push(h)}return{refs:n,manyRefs:l}}function Jk(i,t){let n={},l=`option:${i}:`;for(let{name:c,value:d}of t.attributes)if(c.startsWith(l)){let a=c.replace(l,"");n[yy(a)]=d||""}return n}function yy(i){let t=l=>l.slice(0,1).toUpperCase()+l.slice(1),n=i.split("-");return n[0]+n.slice(1).map(t).join("")}function by(i){typeof i=="undefined"&&(i=document);for(let n of Object.keys(gy))Zk(n,i);let t=i.querySelectorAll("[component],[components]");for(let n of t){let l=`${n.getAttribute("component")||""} ${n.getAttribute("components")}`.toLowerCase().split(" ").filter(Boolean);for(let c of l)vy(c,n)}}window.components.init=by;window.components.first=i=>(window.components[i]||[null])[0];var Na=by;window.baseUrl=function(i){let t=document.querySelector('meta[name="base-url"]').getAttribute("content");return t[t.length-1]==="/"&&(t=t.slice(0,t.length-1)),i[0]==="/"&&(i=i.slice(1)),t+"/"+i};window.$http=Bc;window.$events=zc;var Si=new jc;window.trans=Si.get.bind(Si);window.trans_choice=Si.getPlural.bind(Si);window.trans_plural=Si.parsePlural.bind(Si);Na();})();
/*!
* clipboard.js v2.0.8
* https://clipboardjs.com/
diff --git a/public/dist/styles.css b/public/dist/styles.css
index fa4961a25..9c1450be4 100644
--- a/public/dist/styles.css
+++ b/public/dist/styles.css
@@ -1 +1 @@
-html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after{content:"";content:none}q:before,q:after{content:"";content:none}table{border-collapse:collapse;border-spacing:0}:root{--color-primary: #206ea7;--color-primary-light: rgba(32,110,167,0.15);--color-page: #206ea7;--color-page-draft: #7e50b1;--color-chapter: #af4d0d;--color-book: #077b70;--color-bookshelf: #a94747}.m-none{margin:0 !important}.mx-none{margin-inline-start:0 !important;margin-inline-end:0 !important}.my-none{margin-top:0 !important;margin-bottom:0 !important}.mt-none{margin-top:0 !important}.mr-none{margin-inline-end:0 !important}.mb-none{margin-bottom:0 !important}.ml-none{margin-inline-start:0 !important}.m-xxs{margin:3px !important}.mx-xxs{margin-inline-start:3px !important;margin-inline-end:3px !important}.my-xxs{margin-top:3px !important;margin-bottom:3px !important}.mt-xxs{margin-top:3px !important}.mr-xxs{margin-inline-end:3px !important}.mb-xxs{margin-bottom:3px !important}.ml-xxs{margin-inline-start:3px !important}.m-xs{margin:6px !important}.mx-xs{margin-inline-start:6px !important;margin-inline-end:6px !important}.my-xs{margin-top:6px !important;margin-bottom:6px !important}.mt-xs{margin-top:6px !important}.mr-xs{margin-inline-end:6px !important}.mb-xs{margin-bottom:6px !important}.ml-xs{margin-inline-start:6px !important}.m-s{margin:12px !important}.mx-s{margin-inline-start:12px !important;margin-inline-end:12px !important}.my-s{margin-top:12px !important;margin-bottom:12px !important}.mt-s{margin-top:12px !important}.mr-s{margin-inline-end:12px !important}.mb-s{margin-bottom:12px !important}.ml-s{margin-inline-start:12px !important}.m-m{margin:16px !important}.mx-m{margin-inline-start:16px !important;margin-inline-end:16px !important}.my-m{margin-top:16px !important;margin-bottom:16px !important}.mt-m{margin-top:16px !important}.mr-m{margin-inline-end:16px !important}.mb-m{margin-bottom:16px !important}.ml-m{margin-inline-start:16px !important}.m-l{margin:24px !important}.mx-l{margin-inline-start:24px !important;margin-inline-end:24px !important}.my-l{margin-top:24px !important;margin-bottom:24px !important}.mt-l{margin-top:24px !important}.mr-l{margin-inline-end:24px !important}.mb-l{margin-bottom:24px !important}.ml-l{margin-inline-start:24px !important}.m-xl{margin:32px !important}.mx-xl{margin-inline-start:32px !important;margin-inline-end:32px !important}.my-xl{margin-top:32px !important;margin-bottom:32px !important}.mt-xl{margin-top:32px !important}.mr-xl{margin-inline-end:32px !important}.mb-xl{margin-bottom:32px !important}.ml-xl{margin-inline-start:32px !important}.m-xxl{margin:48px !important}.mx-xxl{margin-inline-start:48px !important;margin-inline-end:48px !important}.my-xxl{margin-top:48px !important;margin-bottom:48px !important}.mt-xxl{margin-top:48px !important}.mr-xxl{margin-inline-end:48px !important}.mb-xxl{margin-bottom:48px !important}.ml-xxl{margin-inline-start:48px !important}.m-auto{margin:auto !important}.mx-auto{margin-inline-start:auto !important;margin-inline-end:auto !important}.my-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-auto{margin-top:auto !important}.mr-auto{margin-inline-end:auto !important}.mb-auto{margin-bottom:auto !important}.ml-auto{margin-inline-start:auto !important}.p-none{padding:0 !important}.px-none{padding-inline-start:0 !important;padding-inline-end:0 !important}.py-none{padding-top:0 !important;padding-bottom:0 !important}.pt-none{padding-top:0 !important}.pr-none{padding-inline-end:0 !important}.pb-none{padding-bottom:0 !important}.pl-none{padding-inline-start:0 !important}.p-xxs{padding:3px !important}.px-xxs{padding-inline-start:3px !important;padding-inline-end:3px !important}.py-xxs{padding-top:3px !important;padding-bottom:3px !important}.pt-xxs{padding-top:3px !important}.pr-xxs{padding-inline-end:3px !important}.pb-xxs{padding-bottom:3px !important}.pl-xxs{padding-inline-start:3px !important}.p-xs{padding:6px !important}.px-xs{padding-inline-start:6px !important;padding-inline-end:6px !important}.py-xs{padding-top:6px !important;padding-bottom:6px !important}.pt-xs{padding-top:6px !important}.pr-xs{padding-inline-end:6px !important}.pb-xs{padding-bottom:6px !important}.pl-xs{padding-inline-start:6px !important}.p-s{padding:12px !important}.px-s{padding-inline-start:12px !important;padding-inline-end:12px !important}.py-s{padding-top:12px !important;padding-bottom:12px !important}.pt-s{padding-top:12px !important}.pr-s{padding-inline-end:12px !important}.pb-s{padding-bottom:12px !important}.pl-s{padding-inline-start:12px !important}.p-m{padding:16px !important}.px-m{padding-inline-start:16px !important;padding-inline-end:16px !important}.py-m{padding-top:16px !important;padding-bottom:16px !important}.pt-m{padding-top:16px !important}.pr-m{padding-inline-end:16px !important}.pb-m{padding-bottom:16px !important}.pl-m{padding-inline-start:16px !important}.p-l{padding:24px !important}.px-l{padding-inline-start:24px !important;padding-inline-end:24px !important}.py-l{padding-top:24px !important;padding-bottom:24px !important}.pt-l{padding-top:24px !important}.pr-l{padding-inline-end:24px !important}.pb-l{padding-bottom:24px !important}.pl-l{padding-inline-start:24px !important}.p-xl{padding:32px !important}.px-xl{padding-inline-start:32px !important;padding-inline-end:32px !important}.py-xl{padding-top:32px !important;padding-bottom:32px !important}.pt-xl{padding-top:32px !important}.pr-xl{padding-inline-end:32px !important}.pb-xl{padding-bottom:32px !important}.pl-xl{padding-inline-start:32px !important}.p-xxl{padding:48px !important}.px-xxl{padding-inline-start:48px !important;padding-inline-end:48px !important}.py-xxl{padding-top:48px !important;padding-bottom:48px !important}.pt-xxl{padding-top:48px !important}.pr-xxl{padding-inline-end:48px !important}.pb-xxl{padding-bottom:48px !important}.pl-xxl{padding-inline-start:48px !important}.p-auto{padding:auto !important}.px-auto{padding-inline-start:auto !important;padding-inline-end:auto !important}.py-auto{padding-top:auto !important;padding-bottom:auto !important}.pt-auto{padding-top:auto !important}.pr-auto{padding-inline-end:auto !important}.pb-auto{padding-bottom:auto !important}.pl-auto{padding-inline-start:auto !important}*{box-sizing:border-box;outline-color:var(--color-primary);outline-width:1px}*:focus{outline-style:dotted}html{height:100%;overflow-y:scroll;background-color:#f2f2f2}html.flexbox{overflow-y:hidden}html.dark-mode{background-color:#111}body{font-size:14px;line-height:1.6;color:#444;-webkit-font-smoothing:antialiased;height:100%;display:flex;flex-direction:column}html.dark-mode body{color:#aaa}body,button,input,select,label,textarea{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Oxygen","Ubuntu","Roboto","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif}.Codemirror,pre,#markdown-editor-input,.editor-toolbar,.code-base,span.code,code{font-family:"Lucida Console","DejaVu Sans Mono","Ubuntu Mono",Monaco,monospace}h1{font-size:3.425em;line-height:1.22222222em;margin-top:.48888889em;margin-bottom:.48888889em}h2{font-size:2.8275em;line-height:1.294117647em;margin-top:.8627451em;margin-bottom:.43137255em}h3{font-size:2.333em;line-height:1.221428572em;margin-top:.78571429em;margin-bottom:.43137255em}h4{font-size:1.666em;line-height:1.375em;margin-top:.78571429em;margin-bottom:.43137255em}h1,h2,h3,h4,h5,h6{font-weight:400;position:relative;display:block;color:#222}html.dark-mode h1,html.dark-mode h2,html.dark-mode h3,html.dark-mode h4,html.dark-mode h5,html.dark-mode h6{color:#bbb}h1 .subheader,h2 .subheader,h3 .subheader,h4 .subheader,h5 .subheader,h6 .subheader{font-size:.5em;line-height:1em;color:#969696}h5{font-size:1.4em}h5,h6{line-height:1.2em;margin-top:.78571429em;margin-bottom:.66em}@media screen and (max-width: 600px){h1{font-size:2.8275em}h2{font-size:2.333em}h3{font-size:1.666em}h4{font-size:1.333em}h5{font-size:1.161616em}}.list-heading{font-size:2rem}h2.list-heading{font-size:1.333rem}a{color:var(--color-primary);fill:currentColor;cursor:pointer;text-decoration:none;transition:filter ease-in-out 80ms;line-height:1.6}a:hover{text-decoration:underline}a.icon{display:inline-block}a svg{position:relative;display:inline-block}a:focus img:only-child{outline:2px dashed var(--color-primary);outline-offset:2px}a.no-link-style{color:inherit}a.no-link-style:hover{text-decoration:none}.blended-links a{color:inherit}.blended-links a svg{fill:currentColor}p,ul,ol,pre,table,blockquote{margin-top:.3em;margin-bottom:1.375em}hr{border:0;height:1px;background:#eaeaea;margin-bottom:24px}html.dark-mode hr{background:#555}hr.faded{background-image:linear-gradient(to right, #FFF, #e3e0e0 20%, #e3e0e0 80%, #FFF)}hr.darker{background:#ddd}html.dark-mode hr.darker{background:#666}hr.margin-top,hr.even{margin-top:24px}strong,b,.bold,.strong{font-weight:bold}strong>strong,strong>b,strong>.bold,strong>.strong,b>strong,b>b,b>.bold,b>.strong,.bold>strong,.bold>b,.bold>.bold,.bold>.strong,.strong>strong,.strong>b,.strong>.bold,.strong>.strong{font-weight:bolder}em,i,.italic{font-style:italic}small,p.small,span.small,.text-small{font-size:.75rem;color:#5e5e5e}html.dark-mode small,html.dark-mode p.small,html.dark-mode span.small,html.dark-mode .text-small{color:#999}sup,.superscript{vertical-align:super;font-size:.8em}sub,.subscript{vertical-align:sub;font-size:.8em}pre{font-size:12px;border:1px solid #ddd;background-color:#f5f5f5;border-color:#ddd;padding-left:31px;position:relative;padding-top:3px;padding-bottom:3px}html.dark-mode pre{background-color:#2b2b2b}html.dark-mode pre{border-color:#111}pre:after{content:"";display:block;position:absolute;top:0;width:29px;left:0;height:100%;background-color:#f5f5f5;border-right:1px solid #ddd}html.dark-mode pre:after{background-color:#313335}html.dark-mode pre:after{border-right:none}@media print{pre{padding-left:12px}pre:after{display:none}}blockquote{display:block;position:relative;border-left:4px solid var(--color-primary);background-color:#f8f8f8;padding:12px 16px 12px 32px;overflow:auto}html.dark-mode blockquote{background-color:#333}blockquote:before{content:"“";font-size:2em;font-weight:bold;position:absolute;top:12px;left:12px;color:#777}.text-mono{font-family:"Lucida Console","DejaVu Sans Mono","Ubuntu Mono",Monaco,monospace}.text-uppercase{text-transform:uppercase}.text-capitals{text-transform:capitalize}.code-base,span.code,code{font-size:.84em;border:1px solid #ddd;border-radius:3px;background-color:#f8f8f8;border-color:#ddd}html.dark-mode .code-base,html.dark-mode span.code,html.dark-mode code{background-color:#2b2b2b}html.dark-mode .code-base,html.dark-mode span.code,html.dark-mode code{border-color:#444}code{display:inline;padding:1px 3px;white-space:pre-wrap;line-height:1.2em}span.code{padding:1px 6px}pre code{background-color:transparent;border:0;font-size:1em;display:block;line-height:1.6}span.highlight{font-weight:bold;padding:2px 4px}ul p,ol p{margin:0}ul{padding-left:20.8px;padding-right:20.8px;list-style:disc}ul ul{list-style:circle;margin-top:0;margin-bottom:0}ul label{margin:0}ol{list-style:decimal;padding-left:32px;padding-right:32px}li.checkbox-item,li.task-list-item{list-style:none;margin-left:-20.8px}li.checkbox-item input[type=checkbox],li.task-list-item input[type=checkbox]{margin-right:6px}li>ol,li>ul{margin-block-end:0px;margin-block-start:0px;padding-block-end:0px;padding-block-start:0px}.underlined{text-decoration:underline}.text-center{text-align:center}.text-left{text-align:start}.text-right{text-align:end}@media screen and (min-width: 360px){.text-xxs-center{text-align:center}.text-xxs-left{text-align:start}.text-xxs-right{text-align:end}}@media screen and (min-width: 400px){.text-xs-center{text-align:center}.text-xs-left{text-align:start}.text-xs-right{text-align:end}}@media screen and (min-width: 600px){.text-s-center{text-align:center}.text-s-left{text-align:start}.text-s-right{text-align:end}}@media screen and (min-width: 880px){.text-m-center{text-align:center}.text-m-left{text-align:start}.text-m-right{text-align:end}}@media screen and (min-width: 1000px){.text-l-center{text-align:center}.text-l-left{text-align:start}.text-l-right{text-align:end}}@media screen and (min-width: 1100px){.text-xl-center{text-align:center}.text-xl-left{text-align:start}.text-xl-right{text-align:end}}.text-bigger{font-size:1.1em}.text-large{font-size:1.6666em}.no-color{color:inherit}.break-text{word-wrap:break-word;overflow-wrap:break-word}.text-limit-lines-1{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.text-limit-lines-2{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.header-group{margin:16px 0}.header-group h1,.header-group h2,.header-group h3,.header-group h4,.header-group h5,.header-group h6{margin:0}span.sep{color:#bbb;padding:0 6px}.list>*{display:block}.svg-icon{width:1em;height:1em;display:inline-block;position:relative;bottom:-0.105em;margin-inline-end:6px;pointer-events:none;fill:currentColor}.primary-background{background-color:var(--color-primary) !important}.primary-background-light{background-color:var(--color-primary-light)}html.dark-mode .primary-background-light{background:#000}html.dark-mode .primary-background-light .text-primary{color:#aaa !important}.text-pos,.text-pos:hover,.text-pos-hover:hover{color:#0f7d15 !important;fill:#0f7d15 !important}.text-warn,.text-warn:hover,.text-warn-hover:hover{color:#cf4d03 !important;fill:#cf4d03 !important}.text-neg,.text-neg:hover,.text-neg-hover:hover{color:#ab0f0e !important;fill:#ab0f0e !important}.text-primary,.text-primary:hover,.text-primary-hover:hover{color:var(--color-primary) !important;fill:var(--color-primary) !important}.text-muted{color:#575757 !important;fill:currentColor !important}html.dark-mode .text-muted{color:#888 !important}.text-dark{color:#222 !important;fill:currentColor !important}html.dark-mode .text-dark{color:#ccc !important}.text-white{color:#fff;fill:currentColor !important}.text-bookshelf,.text-bookshelf:hover{color:var(--color-bookshelf);fill:var(--color-bookshelf)}.text-book,.text-book:hover{color:var(--color-book);fill:var(--color-book)}.text-page,.text-page:hover{color:var(--color-page);fill:var(--color-page)}.text-page.draft,.text-page.draft:hover{color:var(--color-page-draft);fill:var(--color-page-draft)}.text-chapter,.text-chapter:hover{color:var(--color-chapter);fill:var(--color-chapter)}.bg-white{background-color:#fff}.bg-book{background-color:var(--color-book)}.bg-chapter{background-color:var(--color-chapter)}.bg-bookshelf{background-color:var(--color-bookshelf)}.container{max-width:1400px;margin-inline-start:auto;margin-inline-end:auto;padding-inline-start:16px;padding-inline-end:16px}.container.small{max-width:840px}.container.very-small{max-width:480px}.grid{display:grid;grid-column-gap:24px;grid-row-gap:24px}.grid.half{grid-template-columns:1fr 1fr}.grid.third{grid-template-columns:1fr 1fr 1fr}.grid.left-focus{grid-template-columns:2fr 1fr}.grid.right-focus{grid-template-columns:1fr 3fr}.grid.gap-y-xs{grid-row-gap:6px}.grid.gap-xl{grid-column-gap:32px;grid-row-gap:32px}.grid.gap-xxl{grid-column-gap:48px;grid-row-gap:48px}.grid.v-center{align-items:center}.grid.v-end{align-items:end}.grid.no-gap{grid-row-gap:0;grid-column-gap:0}.grid.no-row-gap{grid-row-gap:0}@media screen and (max-width: 880px){.grid.third:not(.no-break){grid-template-columns:1fr 1fr}.grid.half:not(.no-break),.grid.left-focus:not(.no-break),.grid.right-focus:not(.no-break){grid-template-columns:1fr}.grid.half.collapse-xs{grid-template-columns:1fr 1fr}.grid.gap-xl{grid-column-gap:16px;grid-row-gap:16px}.grid.right-focus.reverse-collapse>*:nth-child(2){order:0}.grid.right-focus.reverse-collapse>*:nth-child(1){order:1}}@media screen and (max-width: 600px){.grid.third:not(.no-break){grid-template-columns:1fr}}@media screen and (max-width: 400px){.grid.half.collapse-xs{grid-template-columns:1fr}}#content{flex:1 0 auto}body.flexbox{display:flex;flex-direction:column;align-items:stretch;height:100%;min-height:100%;max-height:100%;overflow:hidden}body.flexbox #content{flex:1;display:flex;min-height:0}.flex-fill{display:flex;align-items:stretch;min-height:0;max-width:100%;position:relative}.flex-container-row{display:flex;flex-direction:row}.flex-container-row.v-center{align-items:center}.flex-container-column{display:flex;flex-direction:column}.flex-container-column.wrap,.flex-container-row.wrap{flex-wrap:wrap}.flex{min-height:0;flex:1}.flex.fit-content{flex-basis:auto;flex-grow:0}.justify-flex-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-space-between{justify-content:space-between}.items-center{align-items:center}.block{display:block !important;position:relative}.inline{display:inline !important}.block.inline{display:inline-block !important}.hidden{display:none !important}.fill-height{height:100%}.float{float:left}.float.right{float:right}@media screen and (max-width: 360px){.hide-under-xxs{display:none !important}}@media screen and (min-width: 360px){.hide-over-xxs{display:none !important}}@media screen and (max-width: 400px){.hide-under-xs{display:none !important}}@media screen and (min-width: 400px){.hide-over-xs{display:none !important}}@media screen and (max-width: 600px){.hide-under-s{display:none !important}}@media screen and (min-width: 600px){.hide-over-s{display:none !important}}@media screen and (max-width: 880px){.hide-under-m{display:none !important}}@media screen and (min-width: 880px){.hide-over-m{display:none !important}}@media screen and (max-width: 1000px){.hide-under-l{display:none !important}}@media screen and (min-width: 1000px){.hide-over-l{display:none !important}}@media screen and (max-width: 1100px){.hide-under-xl{display:none !important}}@media screen and (min-width: 1100px){.hide-over-xl{display:none !important}}.rounded{border-radius:4px}.dual-column-content{columns:2}@media screen and (max-width: 880px){.dual-column-content{columns:1}}.clearfix::before,.clearfix::after{content:" ";display:table}.clearfix::after{clear:both}.tri-layout-container{display:grid;margin-inline-start:32px;margin-inline-end:32px;grid-template-columns:1fr 4fr 1fr;grid-template-areas:"a b c";grid-column-gap:48px}.tri-layout-container .tri-layout-right{grid-area:c;min-width:0}.tri-layout-container .tri-layout-left{grid-area:a;min-width:0}.tri-layout-container .tri-layout-middle{grid-area:b;padding-top:16px;min-width:0}@media screen and (max-width: 1400px){.tri-layout-container{grid-template-areas:"c b b" "a b b" ". b b";grid-template-columns:1fr 3fr;grid-template-rows:min-content min-content 1fr;padding-inline-end:24px}}@media screen and (min-width: 1000px)and (max-width: 1400px){.tri-layout-left{position:sticky;top:16px}}@media screen and (min-width: 1400px){.tri-layout-left-contents,.tri-layout-right-contents{padding:16px;position:sticky;top:16px;max-height:100vh;min-height:50vh;overflow-y:scroll;overflow-x:hidden;height:100%;scrollbar-width:none;-ms-overflow-style:none}.tri-layout-left-contents::-webkit-scrollbar,.tri-layout-right-contents::-webkit-scrollbar{display:none}.tri-layout-middle-contents{max-width:940px;margin:0 auto}}@media screen and (max-width: 1000px){.tri-layout-container{grid-template-areas:none;grid-template-columns:1fr;grid-column-gap:0;padding-inline-end:6px;padding-inline-start:6px}.tri-layout-container .tri-layout-left-contents,.tri-layout-container .tri-layout-right-contents{padding-inline-start:16px;padding-inline-end:16px}.tri-layout-container .tri-layout-left>*,.tri-layout-container .tri-layout-right>*{display:none;pointer-events:none}.tri-layout-container .tri-layout-left,.tri-layout-container .tri-layout-right{grid-area:none;grid-column:1/1;grid-row:1;padding-top:0 !important}.tri-layout-container .tri-layout-middle{grid-area:none;grid-row:3;grid-column:1/1;z-index:1;overflow:hidden;transition:transform ease-in-out 240ms}.tri-layout-container .tri-layout-left{grid-row:2}.tri-layout-container.show-info{overflow:hidden}.tri-layout-container.show-info .tri-layout-middle{display:none}.tri-layout-container.show-info .tri-layout-right>*,.tri-layout-container.show-info .tri-layout-left>*{display:block;pointer-events:auto}}@media screen and (min-width: 1000px){.tri-layout-mobile-tabs{display:none}.tri-layout-left-contents>*,.tri-layout-right-contents>*{opacity:.6;transition:opacity ease-in-out 120ms}.tri-layout-left-contents>*:hover,.tri-layout-right-contents>*:hover{opacity:1}.tri-layout-left-contents>*:focus-within,.tri-layout-right-contents>*:focus-within{opacity:1}}@media screen and (max-width: 880px){.tri-layout-container{margin-inline-start:0;margin-inline-end:0}}.callout{border-inline-start:3px solid #bbb;background-color:#eee;padding:12px 12px 12px 32px;display:block;position:relative;overflow:auto}.callout:before{background-image:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9IiMwMTUzODAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+ICAgIDxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz4gICAgPHBhdGggZD0iTTEyIDJDNi40OCAyIDIgNi40OCAyIDEyczQuNDggMTAgMTAgMTAgMTAtNC40OCAxMC0xMFMxNy41MiAyIDEyIDJ6bTEgMTVoLTJ2LTZoMnY2em0wLThoLTJWN2gydjJ6Ii8+PC9zdmc+");background-repeat:no-repeat;content:"";width:1.2em;height:1.2em;left:8px;top:50%;margin-top:-9px;display:inline-block;position:absolute;line-height:1;opacity:.8}.callout.success{border-left-color:#0f7d15;background-color:#eafdeb;color:#063409}html.dark-mode .callout.success{background-color:#031904}html.dark-mode .callout.success{color:#129419}.callout.success:before{background-image:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9IiMzNzZjMzkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+ICAgIDxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz4gICAgPHBhdGggZD0iTTEyIDJDNi40OCAyIDIgNi40OCAyIDEyczQuNDggMTAgMTAgMTAgMTAtNC40OCAxMC0xMFMxNy41MiAyIDEyIDJ6bS0yIDE1bC01LTUgMS40MS0xLjQxTDEwIDE0LjE3bDcuNTktNy41OUwxOSA4bC05IDl6Ii8+PC9zdmc+")}.callout.danger{border-left-color:#ab0f0e;background-color:#fcdbdb;color:#4d0706}html.dark-mode .callout.danger{background-color:#1e0302}html.dark-mode .callout.danger{color:#c31110}.callout.danger:before{background-image:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9IiNiOTE4MTgiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+ICAgIDxwYXRoIGQ9Ik0xNS43MyAzSDguMjdMMyA4LjI3djcuNDZMOC4yNyAyMWg3LjQ2TDIxIDE1LjczVjguMjdMMTUuNzMgM3pNMTIgMTcuM2MtLjcyIDAtMS4zLS41OC0xLjMtMS4zIDAtLjcyLjU4LTEuMyAxLjMtMS4zLjcyIDAgMS4zLjU4IDEuMyAxLjMgMCAuNzItLjU4IDEuMy0xLjMgMS4zem0xLTQuM2gtMlY3aDJ2NnoiLz4gICAgPHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPjwvc3ZnPg==")}.callout.info{border-left-color:#0288d1;color:#01466c;background-color:#d3efff}html.dark-mode .callout.info{color:#09a7fd}html.dark-mode .callout.info{background-color:#001520}.callout.warning{border-left-color:#cf4d03;background-color:#fee3d3;color:#6a2802}html.dark-mode .callout.warning{background-color:#1a0a00}html.dark-mode .callout.warning{color:#cf4d03}.callout.warning:before{background-image:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9IiNiNjUzMWMiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+ICAgIDxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz4gICAgPHBhdGggZD0iTTEgMjFoMjJMMTIgMiAxIDIxem0xMi0zaC0ydi0yaDJ2MnptMC00aC0ydi00aDJ2NHoiLz48L3N2Zz4=")}.callout a{color:inherit;text-decoration:underline}.card{background-color:#fff;box-shadow:0 1px 6px -1px rgba(0,0,0,.1);border-radius:3px;border:1px solid transparent}html.dark-mode .card{background-color:#222}.card .body,.card p.empty-text{padding:16px}.card a,.card p{word-wrap:break-word;word-break:break-word}.card-title{padding:16px 16px 6px;margin:0;font-size:14px;color:#222;fill:#222;font-weight:400}.card-title a{line-height:1}.card.border-card{border:1px solid #ddd}.card.drag-card{border:1px solid #ddd;border-color:#ddd;background-color:#fff;border-radius:4px;display:flex;padding:0 0 0 40px;margin:12px 0;position:relative}html.dark-mode .card.drag-card{border-color:#000}html.dark-mode .card.drag-card{background-color:#333}.card.drag-card .drag-card-action{cursor:pointer}.card.drag-card .handle,.card.drag-card .drag-card-action{display:flex;align-items:center;text-align:center;justify-content:center;width:28px;flex-grow:0;padding:0 6px}.card.drag-card .handle:hover,.card.drag-card .drag-card-action:hover{background-color:#eee}.card.drag-card .handle .svg-icon,.card.drag-card .drag-card-action .svg-icon{margin-inline-end:0px}.card.drag-card .outline input{margin:12px 0;width:100%}.card.drag-card .outline{position:relative}.card.drag-card .handle{background-color:#eee;left:0;position:absolute;top:0;bottom:0}html.dark-mode .card.drag-card .handle{background-color:#2d2d2d}.card.drag-card>div{padding:0 12px;max-width:80%;flex:1}.grid-card{display:flex;flex-direction:column;border:1px solid #ddd;border-color:#ddd;margin-bottom:24px;border-radius:4px;overflow:hidden;min-width:100px;color:#444;transition:border-color ease-in-out 120ms,box-shadow ease-in-out 120ms}html.dark-mode .grid-card{border-color:#000}.grid-card:hover{color:#444;text-decoration:none;box-shadow:0 1px 6px -1px rgba(0,0,0,.1)}html.dark-mode .grid-card:hover{box-shadow:0 1px 6px -1px rgba(0,0,0,.5)}.grid-card h2{width:100%;font-size:1.5em;margin:0 0 10px}.grid-card p{font-size:.7rem;margin:0;line-height:1.6em}.grid-card .grid-card-content{flex:1;border-top:0;border-bottom-width:2px}.grid-card .grid-card-content,.grid-card .grid-card-footer{padding:24px}.grid-card .grid-card-content+.grid-card-footer{padding-top:0}.book-grid-item .grid-card-footer p.small{font-size:.8em;margin:0}.content-wrap.card{padding:16px 48px;margin-inline-start:auto;margin-inline-end:auto;margin-bottom:24px;overflow:initial;min-height:60vh}.content-wrap.card.auto-height{min-height:0}.content-wrap.card.fill-width{width:100%}@media screen and (max-width: 1400px){.content-wrap.card{padding:16px 32px}}@media screen and (max-width: 880px){.content-wrap.card{padding:16px 24px}}@media screen and (max-width: 600px){.content-wrap.card{padding:16px 16px}}.outline-hover{border:1px solid transparent !important}.outline-hover:hover{border:1px solid rgba(0,0,0,.1) !important}.fade-in-when-active{opacity:.6;transition:opacity ease-in-out 120ms}.fade-in-when-active:hover,.fade-in-when-active:focus-within{opacity:1}.tag-item{display:inline-flex;margin-bottom:6px;margin-inline-end:6px;border-radius:4px;border:1px solid;overflow:hidden;font-size:.85em;border-color:#ccc}html.dark-mode .tag-item{border-color:#666}.tag-item a,.tag-item span,.tag-item a:hover,.tag-item a:active{padding:4px 8px;color:rgba(0,0,0,.6);transition:background-color ease-in-out 80ms;text-decoration:none}html.dark-mode .tag-item a,html.dark-mode .tag-item span,html.dark-mode .tag-item a:hover,html.dark-mode .tag-item a:active{color:rgba(255,255,255,.8)}.tag-item a:hover{background-color:rgba(255,255,255,.7)}html.dark-mode .tag-item a:hover{background-color:rgba(255,255,255,.3)}.tag-item svg{fill:rgba(0,0,0,.5)}html.dark-mode .tag-item svg{fill:rgba(255,255,255,.5)}.tag-item .tag-value{border-inline-start:1px solid;border-color:#ddd;background-color:rgba(255,255,255,.5)}html.dark-mode .tag-item .tag-value{border-color:#666}html.dark-mode .tag-item .tag-value{background-color:rgba(255,255,255,.2)}.tag-list div:last-child .tag-item{margin-bottom:0}.api-method{font-size:.75rem;background-color:#888;padding:6px;line-height:1.3;opacity:.7;vertical-align:top;border-radius:3px;color:#fff;display:inline-block;min-width:60px;text-align:center;font-weight:bold}.api-method[data-method=GET]{background-color:#077b70}.api-method[data-method=POST]{background-color:#cf4d03}.api-method[data-method=PUT]{background-color:#0288d1}.api-method[data-method=DELETE]{background-color:#ab0f0e}.sticky-sidebar{position:sticky;top:16px;max-height:calc(100vh - 16px);overflow-y:auto}button{background-color:transparent;border:0;font-size:100%}.button{text-decoration:none;font-size:.85rem;line-height:1.4em;padding:7.8px 16px;margin-top:6px;margin-bottom:6px;display:inline-block;font-weight:400;outline:0;border-radius:2px;cursor:pointer;transition:background-color ease-in-out 120ms,filter ease-in-out 120ms,box-shadow ease-in-out 120ms;box-shadow:none;background-color:var(--color-primary);color:#fff;text-transform:uppercase;border:1px solid var(--color-primary);vertical-align:top;filter:none}html.dark-mode .button{filter:saturate(0.8) brightness(0.8)}.button:hover,.button:focus,.button:active{background-color:var(--color-primary);text-decoration:none;color:#fff}.button:hover{box-shadow:0 0 4px 1px #ccc;filter:brightness(110%)}html.dark-mode .button:hover{box-shadow:0 0 4px 1px rgba(0,0,0,.5)}.button:focus{outline:1px dotted currentColor;outline-offset:-6px;box-shadow:none;filter:brightness(90%)}.button:active{outline:0}.button.outline{background-color:transparent;color:#666;fill:currentColor;border:1px solid #ccc}html.dark-mode .button.outline{color:#aaa}.button.outline:hover,.button.outline:focus,.button.outline:active{border:1px solid #ccc;box-shadow:none;background-color:#f2f2f2;background-color:#f2f2f2;filter:none}html.dark-mode .button.outline:hover,html.dark-mode .button.outline:focus,html.dark-mode .button.outline:active{background-color:#555}.button.outline:active{border-color:#bbb;background-color:#ddd;color:#666;box-shadow:inset 0 0 2px rgba(0,0,0,.1)}.button+.button{margin-inline-start:12px}.button.small{font-size:.75rem;padding:7.2px 12px}.text-button{cursor:pointer;background-color:transparent;padding:0;margin:0;border:none;user-select:none;font-size:.75rem;line-height:1.4em;color:var(--color-primary)}html.dark-mode .text-button{color:#aaa}.text-button:active{outline:0}.text-button:hover{text-decoration:none}.text-button:hover,.text-button:focus{color:var(--color-primary);fill:var(--color-primary)}.button.block{width:100%;text-align:start;display:block}.button.icon .svg-icon{margin-inline-end:0}.button.svg{display:flex;align-items:center;padding:12px 16px;padding-bottom:10px;width:100%}.button.svg svg{display:inline-block;width:24px;height:24px;bottom:auto;margin-inline-end:16px}.button[disabled]{background-color:#bbb;cursor:default;border-color:#ccc}.button[disabled]:hover{background-color:#bbb;cursor:default;box-shadow:none}table{min-width:100px;max-width:100%}table thead{background-color:#f8f8f8;font-weight:500}html.dark-mode table thead{background-color:#333}table td,table th{min-width:10px;padding:6px 8px;border:1px solid #ddd;overflow:auto;line-height:1.2;word-break:break-word}table td p,table th p{margin:0}table.table{width:100%}table.table tr td,table.table tr th{border-bottom:1px solid rgba(0,0,0,.05)}table.table th,table.table td{text-align:start;border:none;padding:12px 12px;vertical-align:middle;margin:0;overflow:visible}table.table th{font-weight:bold}table.table tr:hover{background-color:#eee}html.dark-mode table.table tr:hover{background-color:#333}table.table .text-right{text-align:end}table.table .text-center{text-align:center}table.table td.actions{overflow:visible}table.table a{display:inline-block}table.no-style td{border:0;padding:0}table.list-table{margin:-6px}table.list-table td{border:0;vertical-align:middle;padding:6px}.input-base,input[type=text],input[type=number],input[type=email],input[type=date],input[type=search],input[type=url],input[type=color],input[type=password],select,textarea,.fake-input{border-radius:3px;border:1px solid #d4d4d4;background-color:#fff;border-color:#d4d4d4;color:#666;display:inline-block;font-size:14px;padding:9px;width:250px;max-width:100%}html.dark-mode .input-base,html.dark-mode input[type=text],html.dark-mode input[type=number],html.dark-mode input[type=email],html.dark-mode input[type=date],html.dark-mode input[type=search],html.dark-mode input[type=url],html.dark-mode input[type=color],html.dark-mode input[type=password],html.dark-mode select,html.dark-mode textarea,html.dark-mode .fake-input{background-color:#333}html.dark-mode .input-base,html.dark-mode input[type=text],html.dark-mode input[type=number],html.dark-mode input[type=email],html.dark-mode input[type=date],html.dark-mode input[type=search],html.dark-mode input[type=url],html.dark-mode input[type=color],html.dark-mode input[type=password],html.dark-mode select,html.dark-mode textarea,html.dark-mode .fake-input{border-color:#111}html.dark-mode .input-base,html.dark-mode input[type=text],html.dark-mode input[type=number],html.dark-mode input[type=email],html.dark-mode input[type=date],html.dark-mode input[type=search],html.dark-mode input[type=url],html.dark-mode input[type=color],html.dark-mode input[type=password],html.dark-mode select,html.dark-mode textarea,html.dark-mode .fake-input{color:#aaa}.input-base.neg,input.neg[type=text],input.neg[type=number],input.neg[type=email],input.neg[type=date],input.neg[type=search],input.neg[type=url],input.neg[type=color],input.neg[type=password],select.neg,textarea.neg,.neg.fake-input,.input-base.invalid,input.invalid[type=text],input.invalid[type=number],input.invalid[type=email],input.invalid[type=date],input.invalid[type=search],input.invalid[type=url],input.invalid[type=color],input.invalid[type=password],select.invalid,textarea.invalid,.invalid.fake-input{border:1px solid #ab0f0e}.input-base.pos,input.pos[type=text],input.pos[type=number],input.pos[type=email],input.pos[type=date],input.pos[type=search],input.pos[type=url],input.pos[type=color],input.pos[type=password],select.pos,textarea.pos,.pos.fake-input,.input-base.valid,input.valid[type=text],input.valid[type=number],input.valid[type=email],input.valid[type=date],input.valid[type=search],input.valid[type=url],input.valid[type=color],input.valid[type=password],select.valid,textarea.valid,.valid.fake-input{border:1px solid #0f7d15}.input-base.disabled,input.disabled[type=text],input.disabled[type=number],input.disabled[type=email],input.disabled[type=date],input.disabled[type=search],input.disabled[type=url],input.disabled[type=color],input.disabled[type=password],select.disabled,textarea.disabled,.disabled.fake-input,.input-base[disabled],input[disabled][type=text],input[disabled][type=number],input[disabled][type=email],input[disabled][type=date],input[disabled][type=search],input[disabled][type=url],input[disabled][type=color],input[disabled][type=password],select[disabled],textarea[disabled],[disabled].fake-input{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAHCAYAAADEUlfTAAAAMUlEQVQIW2NkwAGuXbv2nxGbHEhCS0uLEUMSJgHShCKJLIEiiS4Bl8QmAZbEJQGSBAC62BuJ+tt7zgAAAABJRU5ErkJggg==)}.input-base[readonly],input[readonly][type=text],input[readonly][type=number],input[readonly][type=email],input[readonly][type=date],input[readonly][type=search],input[readonly][type=url],input[readonly][type=color],input[readonly][type=password],select[readonly],textarea[readonly],[readonly].fake-input{background-color:#f8f8f8}.input-base:focus,input[type=text]:focus,input[type=number]:focus,input[type=email]:focus,input[type=date]:focus,input[type=search]:focus,input[type=url]:focus,input[type=color]:focus,input[type=password]:focus,select:focus,textarea:focus,.fake-input:focus{border-color:var(--color-primary);outline:1px solid var(--color-primary)}.fake-input{overflow:auto}#html-editor{display:none}#markdown-editor{position:relative;z-index:5}#markdown-editor #markdown-editor-input{font-style:normal;font-weight:400;padding:6px 16px;color:#444;border-radius:0;max-height:100%;flex:1;border:0;width:100%}#markdown-editor #markdown-editor-input:focus{outline:0}#markdown-editor .markdown-display,#markdown-editor .markdown-editor-wrap{flex:1;position:relative}#markdown-editor .markdown-editor-wrap{display:flex;flex-direction:column;border:1px solid #ddd;border-color:#ddd;width:50%;max-width:50%}html.dark-mode #markdown-editor .markdown-editor-wrap{border-color:#000}#markdown-editor.fullscreen{position:fixed;top:0;left:0;height:100%;z-index:2}@media screen and (max-width: 880px){#markdown-editor{flex-direction:column}#markdown-editor .markdown-editor-wrap{width:100%;max-width:100%;flex-grow:1}#markdown-editor .editor-toolbar{padding:0}#markdown-editor .editor-toolbar>*{padding:6px 12px}.editor-toolbar-label{float:none !important;border-bottom:1px solid #ddd;display:block}.markdown-editor-wrap:not(.active) .editor-toolbar+div,.markdown-editor-wrap:not(.active) .editor-toolbar .buttons,.markdown-editor-wrap:not(.active) .markdown-display{display:none}#markdown-editor .markdown-editor-wrap:not(.active){flex-grow:0;flex:none;min-height:0}}.markdown-display{margin-inline-start:-1px}.markdown-editor-display{background-color:#fff}.markdown-editor-display body{background-color:#fff;padding-inline-start:16px;padding-inline-end:16px}.markdown-editor-display [drawio-diagram]:hover{outline:2px solid var(--color-primary)}html.markdown-editor-display.dark-mode{background-color:#222}html.markdown-editor-display.dark-mode body{background-color:#222}.editor-toolbar{width:100%;padding:6px 16px;font-size:11px;line-height:1.6;border-bottom:1px solid #ddd;background-color:#eee;background-color:#eee;border-color:#ddd;flex:none}html.dark-mode .editor-toolbar{background-color:#111}html.dark-mode .editor-toolbar{border-color:#000}.editor-toolbar:after{content:"";display:block;clear:both}html.dark-mode .editor-toolbar button{color:#aaa}label{color:#666;display:block;line-height:1.4em;font-size:.94em;font-weight:400;padding-bottom:2px;margin-bottom:.2em}html.dark-mode label{color:#ddd}label.inline{display:inline-block}label.radio,label.checkbox{font-weight:400;user-select:none}label.radio input[type=radio],label.radio input[type=checkbox],label.checkbox input[type=radio],label.checkbox input[type=checkbox]{margin-inline-end:6px}label.inline.checkbox{margin-inline-end:16px}label+p.small{margin-bottom:.8em}table.form-table{max-width:100%}table.form-table td{overflow:hidden;padding:1.5px 0}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:url("data:image/svg+xml;utf8,");background-size:12px;background-position:calc(100% - 20px) 70%;background-repeat:no-repeat}input[type=date]{width:190px}input[type=color]{height:60px}input[type=color].small{height:42px;width:60px;padding:2px}.toggle-switch{user-select:none;display:inline-grid;grid-template-columns:28px 1fr;align-items:center;margin:16px 0}.toggle-switch .custom-checkbox{width:16px;height:16px;border-radius:2px;display:inline-block;border:2px solid currentColor;opacity:.6;overflow:hidden;fill:currentColor}.toggle-switch .custom-checkbox .svg-icon{width:100%;height:100%;margin:0;bottom:auto;top:-1.5px;left:0;transition:transform ease-in-out 120ms;transform:scale(0);transform-origin:center center}.toggle-switch input[type=checkbox]{display:none}.toggle-switch input[type=checkbox]:checked+.custom-checkbox .svg-icon{transform:scale(1)}.toggle-switch .custom-checkbox:hover{background-color:rgba(0,0,0,.05);opacity:.8}.toggle-switch-list .toggle-switch{margin:6px 0}.toggle-switch-list.compact .toggle-switch{margin:1px 0}.form-group{margin-bottom:12px}.setting-list>div{border-bottom:1px solid #ddd;padding:32px 0}.setting-list>div:last-child{border-bottom:none}.setting-list-label{color:#222;font-size:1rem}.setting-list-label+p.small{margin-bottom:0}.setting-list-label+.grid{margin-top:16px}.setting-list .grid input[type=text],.setting-list .grid input[type=email],.setting-list .grid input[type=password],.setting-list .grid select,.stretch-inputs input[type=text],.stretch-inputs input[type=email],.stretch-inputs input[type=password],.stretch-inputs select{width:100%}.simple-code-input{background-color:#f8f8f8;font-family:monospace;font-size:12px;min-height:100px;display:block;width:100%}.form-group div.text-pos,.form-group div.text-neg,.form-group p.text-post,.form-group p.text-neg{padding:6px 0}.form-group[collapsible]{padding:0 16px;border:1px solid #ddd;border-radius:4px}.form-group[collapsible] .collapse-title{margin-inline-start:-16px;margin-inline-end:-16px;padding:12px 16px;display:block;width:calc(100% + 32px);text-align:start}.form-group[collapsible] .collapse-title,.form-group[collapsible] .collapse-title label{cursor:pointer}.form-group[collapsible] .collapse-title label{padding-bottom:0;margin-bottom:0;color:inherit}.form-group[collapsible] .collapse-title label:before{display:inline-block;content:"▸";margin-inline-end:16px;transition:all ease-in-out 400ms;transform:rotate(0)}.form-group[collapsible] .collapse-content{display:none;padding-bottom:16px}.form-group[collapsible].open .collapse-title label:before{transform:rotate(90deg)}.inline-input-style,.description-input textarea,.title-input input[type=text]{display:block;width:100%;padding:12px}.title-input input[type=text]{margin-top:0;font-size:2em}.title-input.page-title{font-size:.8em;background-color:#fff}html.dark-mode .title-input.page-title{background-color:#333}.title-input.page-title .input{border:0;margin-bottom:-1px}.title-input.page-title input[type=text]{max-width:840px;margin:0 auto;border:none}.page-title input{display:block;width:100%;font-size:1.4em}.description-input textarea{font-size:14px;color:#666;width:100%}div[editor-type=markdown] .title-input.page-title input[type=text]{max-width:100%;border-radius:0}.search-box{max-width:100%;position:relative}.search-box button{background-color:transparent;border:none;color:#666;padding:0;cursor:pointer;position:absolute;left:8px;top:9px}html.dark-mode .search-box button{color:#aaa}html[dir=rtl] .search-box button{right:8px;left:auto}.search-box input{display:block;padding-inline-start:28px;width:300px;max-width:100%}.search-box.flexible input{width:100%}.search-box .search-box-cancel{left:auto;right:0}.outline>input{border:0;border-bottom:2px solid #ddd;border-radius:0}.outline>input:focus,.outline>input:active{border:0;border-bottom:2px solid #aaa;outline:0}.image-picker img{background-color:#bbb;max-width:100%}.custom-file-input{overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px;height:1px;border:0;clip:rect(0, 0, 0, 0)}.custom-file-input:focus+label{border-color:var(--color-primary);outline:1px solid var(--color-primary)}.anim.fadeIn{opacity:0;animation-name:fadeIn;animation-duration:180ms;animation-timing-function:ease-in-out;animation-fill-mode:forwards}@keyframes fadeIn{0%{opacity:0}100%{opacity:1}}.anim.searchResult{opacity:0;transform:translate3d(580px, 0, 0);animation-name:searchResult;animation-duration:220ms;animation-fill-mode:forwards;animation-timing-function:cubic-bezier(0.62, 0.28, 0.23, 0.99)}@keyframes searchResult{0%{opacity:0;transform:translate3d(400px, 0, 0)}100%{opacity:1;transform:translate3d(0, 0, 0)}}@keyframes loadingBob{0%{transform:translate3d(0, 0, 0)}30%{transform:translate3d(0, 0, 0)}50%{transform:translate3d(0, -10px, 0)}70%{transform:translate3d(0, 0, 0)}100%{transform:translate3d(0, 0, 0)}}@keyframes pointer{0%{transform:translate3d(0, 20px, 0) scale3d(0, 0, 0)}100%{transform:translate3d(0, 0, 0) scale3d(1, 1, 1)}}.anim.pointer{transform-origin:50% 100%;animation-name:pointer;animation-duration:180ms;animation-delay:0s;animation-timing-function:cubic-bezier(0.62, 0.28, 0.23, 0.99)}.mce-tinymce.mce-container.mce-fullscreen{position:fixed;top:0;height:100%;width:100%;max-width:100%;z-index:100}.mce-tinymce .mce-panel{background-color:#fff}html.dark-mode .mce-tinymce .mce-panel{background-color:#333}.mce-tinymce .mce-btn{background-color:#fff}html.dark-mode .mce-tinymce .mce-btn{background-color:#333}.mce-container-body.mce-flow-layout{text-align:center}@media screen and (max-width: 1000px){.mce-container-body.mce-flow-layout{overflow-x:scroll;white-space:nowrap}}.edit-area.flex>div>.mce-tinymce.mce-container.mce-panel{flex:1 1 auto;display:flex !important;flex-direction:column;align-items:stretch;margin:0 -1px}.edit-area.flex>div>.mce-tinymce.mce-container.mce-panel>.mce-container-body{flex:1 1 auto;display:flex !important;flex-direction:column;align-items:stretch}.edit-area.flex>div>.mce-tinymce.mce-container.mce-panel>.mce-container-body>.mce-toolbar-grp{flex:0 1 auto}.edit-area.flex>div>.mce-tinymce.mce-container.mce-panel>.mce-container-body>.mce-edit-area{flex:1 1 auto;display:flex !important;flex-direction:column;align-items:stretch;-webkit-overflow-scrolling:touch;overflow:auto}.edit-area.flex>div>.mce-tinymce.mce-container.mce-panel>.mce-container-body>.mce-edit-area iframe{flex:1;will-change:transform}.page-content.mce-content-body p{line-height:1.6}.page-content.mce-content-body{padding-block-start:1rem;padding-block-end:1rem;outline:none;display:block}.page-content.mce-content-body>:last-child{margin-bottom:3rem}.mce-colorbtn-trans{overflow:hidden}.mce-content-body .CodeMirrorContainer>.CodeMirror{pointer-events:none}.CodeMirror{font-family:monospace;height:300px;color:#000;direction:ltr}.CodeMirror-lines{padding:4px 0}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{padding:0 4px}.CodeMirror-scrollbar-filler,.CodeMirror-gutter-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-fat-cursor-mark{background-color:rgba(20,255,20,.5);-webkit-animation:blink 1.06s steps(1) infinite;-moz-animation:blink 1.06s steps(1) infinite;animation:blink 1.06s steps(1) infinite}.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-rulers{position:absolute;left:0;right:0;top:-50px;bottom:0;overflow:hidden}.CodeMirror-ruler{border-left:1px solid #ccc;top:0;bottom:0;position:absolute}.cm-s-default .cm-header{color:blue}.cm-s-default .cm-quote{color:#090}.cm-negative{color:#d44}.cm-positive{color:#292}.cm-header,.cm-strong{font-weight:bold}.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:blue}.cm-s-default .cm-variable-2{color:#05a}.cm-s-default .cm-variable-3,.cm-s-default .cm-type{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{color:#555}.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-s-default .cm-error{color:red}.cm-invalidchar{color:red}.CodeMirror-composing{border-bottom:2px solid}div.CodeMirror span.CodeMirror-matchingbracket{color:#0b0}div.CodeMirror span.CodeMirror-nonmatchingbracket{color:#a22}.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:-50px;margin-right:-50px;padding-bottom:50px;height:100%;outline:none;position:relative}.CodeMirror-sizer{position:relative;border-right:50px solid transparent}.CodeMirror-vscrollbar,.CodeMirror-hscrollbar,.CodeMirror-scrollbar-filler,.CodeMirror-gutter-filler{position:absolute;z-index:6;display:none;outline: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:-50px}.CodeMirror-gutter-wrapper{position:absolute;z-index:4;background:none !important;border:none !important}.CodeMirror-gutter-background{position:absolute;top:0;bottom:0;z-index:4}.CodeMirror-gutter-elt{position:absolute;cursor:default;z-index:4}.CodeMirror-gutter-wrapper ::selection{background-color:transparent}.CodeMirror-gutter-wrapper ::-moz-selection{background-color:transparent}.CodeMirror-lines{cursor:text;min-height:1px}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;border-width:0;background:transparent;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:contextual;font-variant-ligatures:contextual}.CodeMirror-wrap pre.CodeMirror-line,.CodeMirror-wrap pre.CodeMirror-line-like{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;padding:.1px}.CodeMirror-rtl pre{direction:rtl}.CodeMirror-code{outline:none}.CodeMirror-scroll,.CodeMirror-sizer,.CodeMirror-gutter,.CodeMirror-gutters,.CodeMirror-linenumber{-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;pointer-events:none}.CodeMirror-measure pre{position:static}div.CodeMirror-cursors{visibility:hidden;position:relative;z-index:3}div.CodeMirror-dragcursors{visibility:visible}.CodeMirror-focused div.CodeMirror-cursors{visibility:visible}.CodeMirror-selected{background:#d9d9d9}.CodeMirror-focused .CodeMirror-selected{background:#d7d4f0}.CodeMirror-crosshair{cursor:crosshair}.CodeMirror-line::selection,.CodeMirror-line>span::selection,.CodeMirror-line>span>span::selection{background:#d7d4f0}.CodeMirror-line::-moz-selection,.CodeMirror-line>span::-moz-selection,.CodeMirror-line>span>span::-moz-selection{background:#d7d4f0}.cm-searching{background-color:#ffa;background-color: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:none}.cm-s-darcula{font-family:Consolas,Menlo,Monaco,"Lucida Console","Liberation Mono","DejaVu Sans Mono","Bitstream Vera Sans Mono","Courier New",monospace,serif}.cm-s-darcula.CodeMirror{background:#2b2b2b;color:#a9b7c6}.cm-s-darcula span.cm-meta{color:#bbb529}.cm-s-darcula span.cm-number{color:#6897bb}.cm-s-darcula span.cm-keyword{color:#cc7832;line-height:1em;font-weight:bold}.cm-s-darcula span.cm-def{color:#a9b7c6;font-style:italic}.cm-s-darcula span.cm-variable{color:#a9b7c6}.cm-s-darcula span.cm-variable-2{color:#a9b7c6}.cm-s-darcula span.cm-variable-3{color:#9876aa}.cm-s-darcula span.cm-type{color:#abc;font-weight:bold}.cm-s-darcula span.cm-property{color:#ffc66d}.cm-s-darcula span.cm-operator{color:#a9b7c6}.cm-s-darcula span.cm-string{color:#6a8759}.cm-s-darcula span.cm-string-2{color:#6a8759}.cm-s-darcula span.cm-comment{color:#61a151;font-style:italic}.cm-s-darcula span.cm-link{color:#cc7832}.cm-s-darcula span.cm-atom{color:#cc7832}.cm-s-darcula span.cm-error{color:#bc3f3c}.cm-s-darcula span.cm-tag{color:#629755;font-weight:bold;font-style:italic;text-decoration:underline}.cm-s-darcula span.cm-attribute{color:#6897bb}.cm-s-darcula span.cm-qualifier{color:#6a8759}.cm-s-darcula span.cm-bracket{color:#a9b7c6}.cm-s-darcula span.cm-builtin{color:#ff9e59}.cm-s-darcula span.cm-special{color:#ff9e59}.cm-s-darcula span.cm-matchhighlight{color:#fff;background-color:rgba(50,89,48,.7);font-weight:normal}.cm-s-darcula span.cm-searching{color:#fff;background-color:rgba(61,115,59,.7);font-weight:normal}.cm-s-darcula .CodeMirror-cursor{border-left:1px solid #a9b7c6}.cm-s-darcula .CodeMirror-activeline-background{background:#323232}.cm-s-darcula .CodeMirror-gutters{background:#313335;border-right:1px solid #313335}.cm-s-darcula .CodeMirror-guttermarker{color:#ffee80}.cm-s-darcula .CodeMirror-guttermarker-subtle{color:#d0d0d0}.cm-s-darcula .CodeMirrir-linenumber{color:#606366}.cm-s-darcula .CodeMirror-matchingbracket{background-color:#3b514d;color:#ffef28 !important;font-weight:bold}.cm-s-darcula div.CodeMirror-selected{background:#214283}.CodeMirror-hints.darcula{font-family:Menlo,Monaco,Consolas,"Courier New",monospace;color:#9c9e9e;background-color:#3b3e3f !important}.CodeMirror-hints.darcula .CodeMirror-hint-active{background-color:#494d4e !important;color:#9c9e9e !important}.CodeMirror,.CodeMirror pre{font-size:12px}.CodeMirror{font-size:12px;height:auto;margin-bottom:24px;border:1px solid;border-color:#ddd}html.dark-mode .CodeMirror{border-color:#111}.CodeMirror pre::after{display:none}html.dark-mode .CodeMirror pre{background-color:transparent}.cm-s-mdn-like .CodeMirror-gutters{background:#f8f8f8;border-left:0;color:#333}.code-fill .CodeMirror{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;margin-bottom:0}.CodeMirror-copy{position:absolute;top:-1px;right:-1px;background-color:#eee;border:1px solid #ddd;background-color:#eee;border-color:#ddd;fill:#444;padding:6px;line-height:0;cursor:pointer;z-index:5;user-select:none;opacity:0;pointer-events:none}html.dark-mode .CodeMirror-copy{background-color:#333}html.dark-mode .CodeMirror-copy{border-color:#444}html.dark-mode .CodeMirror-copy{fill:#888}.CodeMirror-copy svg{transition:all ease-in 240ms;transform:translateY(0)}.CodeMirror-copy.success{background-color:#14ab1d}.CodeMirror-copy.success svg{fill:#fff;transform:translateY(-3px)}.CodeMirror:hover .CodeMirror-copy{user-select:all;opacity:1;pointer-events:all}[notification]{position:fixed;top:0;right:0;margin:32px;padding:16px 24px;background-color:#fff;background-color:#fff;border-radius:4px;border-inline-start:6px solid currentColor;box-shadow:0 1px 6px 1px rgba(22,22,22,.2);z-index:999999;cursor:pointer;max-width:360px;transition:transform ease-in-out 280ms;transform:translateX(580px);display:grid;grid-template-columns:42px 1fr 12px;color:#444;font-weight:700}html.dark-mode [notification]{background-color:#444}[notification] span,[notification] svg{vertical-align:middle;justify-self:center;align-self:center}[notification] svg{width:2.8rem;height:2.8rem;padding-inline-end:12px;fill:currentColor}[notification] .dismiss{margin-top:-8px}[notification] .dismiss svg{height:1rem;color:#444}html.dark-mode [notification] .dismiss svg{color:#888}[notification] span{vertical-align:middle;line-height:1.3}html.dark-mode [notification] span{color:#bbb}[notification].pos{color:#0f7d15}[notification].neg{color:#ab0f0e}[notification].warning{color:#cf4d03}[notification].showing{transform:translateX(0)}[notification].showing:hover{transform:translate3d(0, -2px, 0)}[chapter-toggle]{cursor:pointer;margin:0;transition:all ease-in-out 180ms;user-select:none}[chapter-toggle] svg[data-icon=caret-right]{margin-inline-end:0;font-size:1rem;transition:all ease-in-out 180ms;transform:rotate(0deg);transform-origin:50% 50%}[chapter-toggle].open svg[data-icon=caret-right]{transform:rotate(90deg)}[chapter-toggle] svg[data-icon=caret-right]+*{margin-inline-start:6px}[overlay],.popup-background{background-color:rgba(0,0,0,.333);position:fixed;z-index:95536;width:100%;height:100%;min-width:100%;min-height:100%;top:0;left:0;right:0;bottom:0;align-items:center;justify-content:center;display:none}html.dark-mode [overlay],html.dark-mode .popup-background{background-color:rgba(0,0,0,.6)}.popup-body-wrap{display:flex}.popup-body{background-color:#fff;max-height:90%;max-width:1200px;width:90%;height:auto;margin:2% auto;border-radius:4px;box-shadow:0 0 15px 0 rgba(0,0,0,.3);overflow:hidden;z-index:999;display:flex;flex-direction:column}html.dark-mode .popup-body{background-color:#333}.popup-body.small{margin:2% auto;width:800px;max-width:90%}.popup-body:before{display:flex;align-self:flex-start}.popup-body .popup-content{overflow-y:auto}.popup-body:focus{outline:0}.popup-footer button,.popup-header-close{position:absolute;top:0;right:0;margin:0;height:40px;border-radius:0;box-shadow:none}.popup-footer button:active,.popup-header-close:active{outline:0}.popup-header-close{background-color:transparent;border:0;color:#fff;font-size:16px;padding:0 16px}.popup-header,.popup-footer{display:block !important;position:relative;height:40px;flex:none !important}.popup-header .popup-title,.popup-footer .popup-title{color:#fff;padding:8px 16px}body.flexbox-support #entity-selector-wrap .popup-body .form-group{height:444px;min-height:444px}#entity-selector-wrap .popup-body .form-group{margin:0}.popup-body .entity-selector-container{flex:1}.image-manager-body{min-height:70vh}.dropzone-container{position:relative;background-color:#eee;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3E%3Cpath fill='%23a9a9a9' fill-opacity='0.52' d='M1 3h1v1H1V3zm2-2h1v1H3V1z'%3E%3C/path%3E%3C/svg%3E")}html.dark-mode .dropzone-container{background-color:#222}.image-manager-list .image{display:block;position:relative;border-radius:0;float:left;margin:0;cursor:pointer;width:16.6666666667%;height:auto;border-color:#ddd;box-shadow:0 0 0 0 rgba(0,0,0,0);transition:all cubic-bezier(0.4, 0, 1, 1) 160ms;overflow:hidden}html.dark-mode .image-manager-list .image{border-color:#000}.image-manager-list .image.selected{transform:scale3d(0.92, 0.92, 0.92);outline:currentColor 2px solid}.image-manager-list .image img{width:100%;max-width:100%;display:block}.image-manager-list .image .image-meta{position:absolute;width:100%;bottom:0;left:0;color:#eee;background-color:rgba(0,0,0,.4);font-size:10px;padding:3px 4px}.image-manager-list .image .image-meta span{display:block}@media screen and (max-width: 1100px){.image-manager-list .image{width:25%}}@media screen and (max-width: 880px){.image-manager-list .image .image-meta{display:none}}.image-manager .load-more{display:block;text-align:center;background-color:#eee;padding:12px 16px;color:#aaa;clear:both;font-size:20px;cursor:pointer;font-style:italic}html.dark-mode .image-manager .load-more{background-color:#444}.image-manager .loading-container{text-align:center}.image-manager-sidebar{width:300px;overflow-y:auto;overflow-x:hidden;border-inline-start:1px solid #ddd;border-color:#ddd}html.dark-mode .image-manager-sidebar{border-color:#000}.image-manager-sidebar .inner{min-height:auto;padding:16px}.image-manager-sidebar img{max-width:100%;max-height:180px;display:block;margin:0 auto 16px auto;box-shadow:0 1px 21px 1px rgba(76,76,76,.3)}.image-manager-sidebar .image-manager-viewer{height:196px;display:flex;align-items:center;justify-content:center}.image-manager-sidebar .image-manager-viewer a{display:inline-block}.image-manager-sidebar .dropzone-container{border-bottom:1px solid #ddd;border-color:#ddd}html.dark-mode .image-manager-sidebar .dropzone-container{border-color:#000}.image-manager-list{overflow-y:scroll;flex:1}.image-manager-content{display:flex;flex-direction:column;flex:1}.image-manager-content .container{width:100%}.image-manager-content .full-tab{text-align:center}.image-manager .corner-button{margin:0;border-radius:0;padding:16px}.dz-message{font-size:1em;line-height:2.85;font-style:italic;color:#888;text-align:center;cursor:pointer;padding:24px 16px;transition:all ease-in-out 120ms}.dz-drag-hover .dz-message{background-color:#107ed2;color:#eee}@keyframes passing-through{0%{opacity:0;transform:translateY(40px)}30%,70%{opacity:1;transform:translateY(0px)}100%{opacity:0;transform:translateY(-40px)}}@keyframes slide-in{0%{opacity:0;transform:translateY(40px)}30%{opacity:1;transform:translateY(0px)}}@keyframes pulse{0%{transform:scale(1)}10%{transform:scale(1.1)}20%{transform:scale(1)}}.dropzone,.dropzone *{box-sizing:border-box}.dz-preview{position:relative;display:inline-block;vertical-align:top;margin:12px;min-height:80px}.dz-preview:hover{z-index:1000}.dz-preview:hover .dz-details{opacity:1}.dz-preview.dz-file-preview .dz-image{border-radius:4px;background:#e9e9e9}.dz-preview.dz-file-preview .dz-details{opacity:1}.dz-preview.dz-image-preview{background:#fff}.dz-preview.dz-image-preview .dz-details{transition:opacity .2s linear}.dz-preview .dz-remove{font-size:13px;text-align:center;display:block;cursor:pointer;border:none;margin-top:3px}.dz-preview .dz-remove:hover{text-decoration:underline}.dz-preview:hover .dz-details{opacity:1}.dz-preview .dz-details{z-index:20;position:absolute;top:0;left:0;opacity:0;font-size:10px;min-width:100%;max-width:100%;padding:6px 3px;text-align:center;color:rgba(0,0,0,.9);line-height:150%}.dz-preview .dz-details .dz-size{margin-bottom:.5em;font-size:12px}.dz-preview .dz-details .dz-filename{white-space:nowrap}.dz-preview .dz-details .dz-filename:hover span{border:1px solid rgba(200,200,200,.8);background-color:rgba(255,255,255,.8)}.dz-preview .dz-details .dz-filename:not(:hover){overflow:hidden;text-overflow:ellipsis}.dz-preview .dz-details .dz-filename:not(:hover) span{border:1px solid transparent}.dz-preview .dz-details .dz-filename span{background-color:rgba(255,255,255,.4);padding:0 .4em;border-radius:3px}.dz-preview:hover .dz-image img{filter:blur(8px)}.dz-preview .dz-image{border-radius:4px;overflow:hidden;width:80px;height:80px;position:relative;display:block;z-index:10}.dz-preview .dz-image img{display:block}.dz-preview.dz-success .dz-success-mark{animation:passing-through 3s cubic-bezier(0.77, 0, 0.175, 1)}.dz-preview.dz-error .dz-error-mark{opacity:1;animation:slide-in 3s cubic-bezier(0.77, 0, 0.175, 1)}.dz-preview .dz-success-mark,.dz-preview .dz-error-mark{pointer-events:none;opacity:0;z-index:1001;position:absolute;display:block;top:50%;left:50%;margin-inline-start:-27px;margin-top:-35px}.dz-preview .dz-success-mark svg,.dz-preview .dz-error-mark svg{display:block;width:54px;height:54px}.dz-preview.dz-processing .dz-progress{opacity:1;transition:all .2s linear}.dz-preview.dz-complete .dz-progress{opacity:0;transition:opacity .4s ease-in}.dz-preview:not(.dz-processing) .dz-progress{animation:pulse 6s ease infinite}.dz-preview .dz-progress{opacity:1;z-index:1000;pointer-events:none;position:absolute;height:16px;left:50%;top:50%;margin-top:-8px;width:80px;margin-inline-start:-40px;background:rgba(255,255,255,.9);transform:scale(1);border-radius:8px;overflow:hidden}.dz-preview .dz-progress .dz-upload{background:#333;background:linear-gradient(to bottom, #666, #444);position:absolute;top:0;left:0;bottom:0;width:0;transition:width 300ms ease-in-out}.dz-preview.dz-error .dz-error-message{display:block}.dz-preview.dz-error .dz-image:hover~.dz-error-message,.dz-preview.dz-error .dz-details:hover~.dz-error-message{opacity:1;pointer-events:auto}.dz-preview .dz-error-message{pointer-events:none;z-index:1000;position:absolute;display:block;display:none;opacity:0;transition:opacity .3s ease;border-radius:4px;font-size:12px;line-height:1.2;top:88px;left:-12px;width:160px;background:#ab0f0e;padding:6px;color:#fff}.dz-preview .dz-error-message:after{content:"";position:absolute;top:-6px;left:44px;width:0;height:0;border-inline-start:6px solid transparent;border-inline-end:6px solid transparent;border-bottom:6px solid #ab0f0e}.tab-container .nav-tabs{text-align:start;border-bottom:1px solid #ddd;border-color:#ddd;margin-bottom:16px}html.dark-mode .tab-container .nav-tabs{border-color:#444}.tab-container .nav-tabs .tab-item{padding:12px;color:#666}html.dark-mode .tab-container .nav-tabs .tab-item{color:#999}.tab-container .nav-tabs .tab-item.selected{border-bottom-width:3px}.nav-tabs{text-align:center}.nav-tabs a,.nav-tabs .tab-item{padding:16px;display:inline-block;color:#666;cursor:pointer;border-right:1px solid rgba(0,0,0,.1);border-bottom:2px solid transparent}html.dark-mode .nav-tabs a,html.dark-mode .nav-tabs .tab-item{color:#999}.nav-tabs a.selected,.nav-tabs .tab-item.selected{border-bottom:2px solid var(--color-primary)}.nav-tabs a:last-child,.nav-tabs .tab-item:last-child{border-right:0}.image-picker .none{display:none}.code-editor .CodeMirror{height:400px}.code-editor .lang-options{max-width:480px;margin-bottom:12px}.code-editor .lang-options a{margin-inline-end:6px;text-decoration:underline}@media screen and (max-width: 880px){.code-editor .lang-options{max-width:100%}.code-editor .CodeMirror{height:200px}}.comment-box{border-radius:4px;border:1px solid #ddd;border-color:#ddd;background-color:#fff}html.dark-mode .comment-box{border-color:#000}html.dark-mode .comment-box{background-color:#222}.comment-box .content{font-size:.666em}.comment-box .content p,.comment-box .content ul,.comment-box .content ol{font-size:14px;margin:.5em 0}.comment-box .actions{opacity:0;transition:opacity ease-in-out 120ms}.comment-box:hover .actions,.comment-box:focus-within .actions{opacity:1}.comment-box .header .meta img,.comment-box .header .meta a,.comment-box .header .meta span{display:inline-block;vertical-align:top}.comment-box .header .meta a,.comment-box .header .meta span{padding:3px 0 3px 0;line-height:1.6}.comment-box .header .meta a{color:#666}.comment-box .header .meta span{padding-inline-start:3px}.comment-box .header .text-muted{color:#999}#tag-manager .drag-card{max-width:500px}.permissions-table [permissions-table-toggle-all-in-row]{display:none}.permissions-table tr:hover [permissions-table-toggle-all-in-row]{display:inline}.template-item{cursor:pointer;position:relative}.template-item:hover,.template-item .template-item-actions button:hover{background-color:#f2f2f2}.template-item .template-item-actions{position:absolute;top:0;right:0;width:50px;height:100%;display:flex;flex-direction:column;border-inline-start:1px solid #ddd}.template-item .template-item-actions button{cursor:pointer;flex:1;background:#fff;border:0;border-top:1px solid #ddd}.template-item .template-item-actions button:first-child{border-top:0}.dropdown-search-dropdown{box-shadow:0 1px 3px 1px rgba(76,76,76,.26);overflow:hidden;min-height:100px;width:240px;display:none;position:absolute;z-index:80;right:-16px}html[dir=rtl] .dropdown-search-dropdown{right:auto;left:-16px}.dropdown-search-dropdown .dropdown-search-search .svg-icon{position:absolute;left:12px;top:11px;fill:#888;pointer-events:none}html[dir=rtl] .dropdown-search-dropdown .dropdown-search-search .svg-icon{right:12px;left:auto}.dropdown-search-dropdown .dropdown-search-list{max-height:400px;overflow-y:scroll;text-align:start}.dropdown-search-dropdown .dropdown-search-item{padding:12px 16px}.dropdown-search-dropdown .dropdown-search-item:hover,.dropdown-search-dropdown .dropdown-search-item:focus{background-color:#f2f2f2;text-decoration:none}.dropdown-search-dropdown input{padding-inline-start:32px;border-radius:0;border:0;border-bottom:1px solid #ddd}@media screen and (max-width: 880px){.dropdown-search-dropdown{position:fixed;right:auto;left:16px}.dropdown-search-dropdown .dropdown-search-list{max-height:240px}}.custom-select-input{max-width:280px;border:1px solid #d4d4d4;border-radius:3px}header .grid{grid-template-columns:minmax(max-content, 2fr) 1fr minmax(max-content, 2fr)}@media screen and (max-width: 1000px){header .grid{grid-template-columns:1fr;grid-row-gap:0}}header{position:relative;display:block;z-index:11;top:0;color:#fafafa;border-bottom:1px solid #ddd;box-shadow:0 1px 6px -1px rgba(0,0,0,.1);padding:3px 0;border-bottom-color:#ddd}html.dark-mode header{border-bottom-color:#000}html.dark-mode header{filter:saturate(0.8) brightness(0.8)}header .links{display:inline-block;vertical-align:top}header .links a{display:inline-block;padding:16px;color:#fff}header .dropdown-container{padding-inline-start:16px;padding-inline-end:0}header .avatar,header .user-name{display:inline-block}header .avatar{width:30px;height:30px}header .user-name{vertical-align:top;position:relative;display:inline-block;cursor:pointer}header .user-name>*{vertical-align:top}header .user-name>span{padding-inline-start:6px;display:inline-block;padding-top:3px}header .user-name>svg{padding-top:4px;font-size:18px}@media screen and (min-width: 1000px)and (max-width: 1100px){header .user-name{padding-inline-start:6px}header .user-name .name{display:none}}.header *,.primary-background *{outline-color:#fff}header .search-box{display:inline-block;margin-top:10px}header .search-box input{background-color:rgba(0,0,0,.2);border:1px solid rgba(255,255,255,.2);border-radius:40px;color:#eee;z-index:2;padding-inline-start:40px}header .search-box input:focus{outline:none;border:1px solid rgba(255,255,255,.6)}header .search-box button{z-index:1;left:16px;color:rgba(255,255,255,.8)}html.dark-mode header .search-box button{color:#aaa}html[dir=rtl] header .search-box button{left:auto;right:16px}header .search-box button svg{margin-block-end:0}header .search-box ::-webkit-input-placeholder{color:#ddd}header .search-box ::-moz-placeholder{color:#ddd}@media screen and (min-width: 1000px)and (max-width: 1100px){header .search-box{max-width:200px}}.logo{display:inline-block}.logo:hover{color:#fff;text-decoration:none}.logo-text{display:inline-block;font-size:1.8em;color:#fff;font-weight:400;padding-block-start:14px;padding-block-end:14px;padding-inline-start:0;padding-inline-end:24px;vertical-align:top;line-height:1}.logo-image{margin-block-start:6px;margin-block-end:6px;margin-inline-start:0;margin-inline-end:12px;vertical-align:top;height:43px}.mobile-menu-toggle{color:#fff;fill:#fff;font-size:2em;border:2px solid rgba(255,255,255,.8);border-radius:4px;padding:0 6px;position:absolute;right:16px;top:13px;line-height:1;cursor:pointer;user-select:none}.mobile-menu-toggle svg{margin:0;bottom:-2px}html[dir=rtl] .mobile-menu-toggle{left:16px;right:auto}@media screen and (max-width: 1000px){header .header-links{background-color:#fff;display:none;z-index:10;right:16px;border-radius:4px;overflow:hidden;position:absolute;box-shadow:0 2px 2px 1px rgba(0,0,0,.13);margin-top:-6px}html.dark-mode header .header-links{background-color:#333}header .header-links.show{display:block}header .links a,header .dropdown-container ul li a,header .dropdown-container ul li button{text-align:start;display:block;padding:12px 16px;color:#444;color:#444}html.dark-mode header .links a,html.dark-mode header .dropdown-container ul li a,html.dark-mode header .dropdown-container ul li button{color:#eee}header .links a svg,header .dropdown-container ul li a svg,header .dropdown-container ul li button svg{margin-inline-end:12px}header .links a:hover,header .dropdown-container ul li a:hover,header .dropdown-container ul li button:hover{background-color:#eee;color:#000;text-decoration:none}html.dark-mode header .links a:hover,html.dark-mode header .dropdown-container ul li a:hover,html.dark-mode header .dropdown-container ul li button:hover{background-color:#333}html.dark-mode header .links a:hover,html.dark-mode header .dropdown-container ul li a:hover,html.dark-mode header .dropdown-container ul li button:hover{color:#fff}header .links a:focus,header .dropdown-container ul li a:focus,header .dropdown-container ul li button:focus{background-color:#eee;outline-color:var(--color-primary);color:var(--color-primary)}html.dark-mode header .links a:focus,html.dark-mode header .dropdown-container ul li a:focus,html.dark-mode header .dropdown-container ul li button:focus{background-color:#333}header .dropdown-container{display:block;padding-inline-start:0}header .links{display:block}header .dropdown-container ul{display:block !important;position:relative;background-color:transparent;border:0;padding:0;margin:0;box-shadow:none}}.tri-layout-mobile-tabs{position:sticky;top:0;z-index:5;background-color:#fff;border-bottom:1px solid #ddd;border-bottom-color:#ddd;box-shadow:0 1px 6px -1px rgba(0,0,0,.1)}html.dark-mode .tri-layout-mobile-tabs{border-bottom-color:#333}.tri-layout-mobile-tab{text-align:center;border-bottom:3px solid #bbb;cursor:pointer;margin:0;background-color:#fff;border-bottom-color:#bbb}html.dark-mode .tri-layout-mobile-tab{background-color:#222}html.dark-mode .tri-layout-mobile-tab{border-bottom-color:#333}.tri-layout-mobile-tab:first-child{border-inline-end:1px solid #ddd;border-inline-end-color:#ddd}html.dark-mode .tri-layout-mobile-tab:first-child{border-inline-end-color:#000}.tri-layout-mobile-tab[aria-selected=true]{border-bottom-color:currentColor !important}.breadcrumbs{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;flex-wrap:wrap;opacity:.7}.breadcrumbs .icon-list-item{width:auto;padding-top:6px;padding-bottom:6px}.breadcrumbs .separator{display:inline-block;fill:#aaa;font-size:1.6em;line-height:.8;margin:-2px 0 0}.breadcrumbs:hover,.breadcrumbs:focus-within{opacity:1}@media screen and (max-width: 1000px){.breadcrumbs .icon-list-item{padding:6px}.breadcrumbs .icon-list-item>span+span{display:none}.breadcrumbs .icon-list-item>span:first-child{margin-inline-end:0}}.dropdown-search{position:relative}.dropdown-search .dropdown-search-toggle{padding:6px;border:1px solid transparent;border-radius:4px}.dropdown-search .dropdown-search-toggle:hover{border-color:#ddd}.dropdown-search .svg-icon{margin-inline-end:0}.dropdown-search-toggle.compact{padding:3px 6px}.dropdown-search-toggle.compact .avatar{height:22px;width:22px}.faded a,.faded button,.faded span,.faded span>div{color:#666;fill:#666}.faded .text-button{opacity:.5;transition:all ease-in-out 120ms}.faded .text-button:hover{opacity:1;text-decoration:none}.faded span.faded-text{display:inline-block;padding:12px}.action-buttons .text-button{display:inline-block;padding:6px 12px}.action-buttons .text-button:last-child{padding-inline-end:0}.action-buttons .text-button:first-child{padding-inline-start:0}.action-buttons .dropdown-container:last-child a{padding-inline-end:0;padding-inline-start:12px}.action-buttons{text-align:end}.action-buttons.text-left{text-align:start}.action-buttons.text-left .text-button{padding-inline-end:16px;padding-inline-start:0}.action-buttons.text-center{text-align:center}@media screen and (max-width: 880px){.action-buttons .text-button{padding:6px 6px}.action-buttons .dropdown-container:last-child a{padding-inline-start:6px}}footer{flex-shrink:0;padding:1rem 1rem 2rem 1rem;text-align:center}footer a{margin:0 .5em}body.flexbox footer{display:none}.book-contents .entity-list-item .icon{width:4px;border-radius:1px;justify-self:stretch;align-self:stretch;height:auto;margin-inline-end:24px}.book-contents .entity-list-item .icon:after{opacity:.5}.book-contents .entity-list-item .icon svg{display:none}.book-contents .entity-list-item p{margin-bottom:0}.book-contents .entity-list-item .inner-page{padding-top:0;padding-bottom:0}.entity-list-item+.chapter-expansion{display:flex;padding:0 16px 16px 16px;align-items:center;border:0;width:100%;position:relative}.entity-list-item+.chapter-expansion>.icon{width:4px;height:auto;border-radius:0 0 1px 1px;align-self:stretch;flex-shrink:0}.entity-list-item+.chapter-expansion>.icon:before{position:absolute;top:0;left:0;width:100%;height:1px;background-color:currentColor;content:"";opacity:.5}.entity-list-item+.chapter-expansion>.icon:after{opacity:.5}.entity-list-item+.chapter-expansion .icon svg{display:none}.entity-list-item+.chapter-expansion>.content{flex:1}.entity-list-item+.chapter-expansion .chapter-expansion-toggle{border-radius:0 4px 4px 0;padding:6px 16px;width:100%;text-align:start}.entity-list-item+.chapter-expansion .chapter-expansion-toggle:hover{background-color:rgba(0,0,0,.06)}.entity-list-item.has-children{padding-bottom:0}.entity-list-item.has-children>.icon{border-radius:4px 4px 0 0}.inset-list{display:none}.inset-list .entity-list-item-name{font-size:1rem}.inset-list .entity-list-item-children{padding-top:0;padding-bottom:0}.sidebar-page-nav{list-style:none;margin-block-start:12px;margin-block-end:16px;margin-inline-start:6px;margin-inline-end:0;position:relative}.sidebar-page-nav:after{content:"";display:block;position:absolute;left:0;background-color:rgba(0,0,0,.2);width:2px;top:5px;bottom:5px;z-index:0}html[dir=rtl] .sidebar-page-nav:after{left:auto;right:0}html.dark-mode .sidebar-page-nav:after{background-color:rgba(255,255,255,.2)}.sidebar-page-nav li{margin-bottom:4px;font-size:.95em;position:relative}.sidebar-page-nav .h1{padding-inline-start:16px}.sidebar-page-nav .h2{padding-inline-start:24px}.sidebar-page-nav .h3{padding-inline-start:32px}.sidebar-page-nav .h4{padding-inline-start:40px}.sidebar-page-nav .h5{padding-inline-start:48px}.sidebar-page-nav .h6{padding-inline-start:56px}.sidebar-page-nav .current-heading{font-weight:bold}.sidebar-page-nav li:not(.current-heading) .sidebar-page-nav-bullet{background-color:#bbb !important}html.dark-mode .sidebar-page-nav li:not(.current-heading) .sidebar-page-nav-bullet{background-color:#666 !important}.sidebar-page-nav .sidebar-page-nav-bullet{width:6px;height:6px;position:absolute;left:-2px;top:30%;border-radius:50%;box-shadow:0 0 0 6px #f2f2f2;box-shadow:0 0 0 6px #f2f2f2;z-index:1}html.dark-mode .sidebar-page-nav .sidebar-page-nav-bullet{box-shadow:0 0 0 6px #111}html[dir=rtl] .sidebar-page-nav .sidebar-page-nav-bullet{left:auto;right:-2px}.book-tree .sidebar-page-list{list-style:none;margin-block-start:6px;margin-block-end:0;margin-inline-start:-12px;margin-inline-end:-12px;padding-inline-start:0;padding-inline-end:0;position:relative}.book-tree .sidebar-page-list:after,.book-tree .sidebar-page-list .sub-menu:after{content:"";display:block;position:absolute;left:16px;top:1rem;bottom:1rem;border-inline-start:4px solid rgba(0,0,0,.1);z-index:0}html[dir=rtl] .book-tree .sidebar-page-list:after,html[dir=rtl] .book-tree .sidebar-page-list .sub-menu:after{left:auto;right:16px}.book-tree .sidebar-page-list ul{list-style:none;padding-inline-start:1rem;padding-inline-end:0}.book-tree .sidebar-page-list .entity-list-item{padding-top:3px;padding-bottom:3px;background-clip:content-box;border-radius:0 3px 3px 0}.book-tree .sidebar-page-list .entity-list-item .content{padding-top:6px;padding-bottom:6px;max-width:calc(100% - 20px)}.book-tree .sidebar-page-list .entity-list-item.selected{background-color:rgba(0,0,0,.08)}.book-tree .sidebar-page-list .entity-list-item.no-hover{margin-top:-6px;padding-inline-end:0}.book-tree .sidebar-page-list .entity-list-item-name{font-size:1em;margin:0}.book-tree .sidebar-page-list .chapter-child-menu{font-size:.8rem;margin-top:-0.2rem;margin-inline-start:-1rem}.book-tree .sidebar-page-list [chapter-toggle]{padding-inline-start:.7rem;padding-bottom:.2rem}.book-tree .sidebar-page-list .entity-list-item .icon{z-index:2;width:4px;height:auto;align-self:stretch;flex-shrink:0;border-radius:1px;opacity:.6}.book-tree .sidebar-page-list .entity-list-item .icon:after{opacity:1}.book-tree .sidebar-page-list .entity-list-item .icon svg{display:none}.chapter-child-menu ul.sub-menu{display:none;padding-inline-start:0;position:relative}.chapter-child-menu [chapter-toggle].open+.sub-menu{display:block}.sortable-page-list,.sortable-page-list ul{list-style:none}.sort-box{margin-bottom:16px;padding:16px 32px;position:relative}.sort-box::before{pointer-events:none;content:"";border-radius:4px;opacity:.5;border:2px solid var(--color-book);display:block;top:0;bottom:0;left:0;right:0;position:absolute}.sort-box-options{display:flex;flex-wrap:wrap;justify-content:space-between}.sort-box-options .button{margin-inline-start:0}.sortable-page-list{margin-inline-start:0;padding:0}.sortable-page-list .entity-list-item>span:first-child{align-self:flex-start}.sortable-page-list .sortable-selected .entity-list-item,.sortable-page-list .sortable-selected .entity-list-item:hover{outline:1px dotted var(--color-primary);background-color:var(--color-primary-light) !important}.sortable-page-list .entity-list-item>div{display:block;flex:1}.sortable-page-list>ul{margin-inline-start:0}.sortable-page-list ul{margin-bottom:16px;margin-top:0;padding-inline-start:16px}.sortable-page-list li{border:1px solid #ddd;margin-top:-1px;min-height:38px}.sortable-page-list li.text-page,.sortable-page-list li.text-chapter{border-inline-start:2px solid currentColor}.sortable-page-list li:first-child{margin-top:6px}.sortable-page-list li.placeholder{position:relative}.sortable-page-list li.placeholder:before{position:absolute}.activity-list-item{padding:12px 0;display:grid;grid-template-columns:min-content 1fr;grid-column-gap:16px;font-size:.9em}.card .activity-list-item{padding:12px 16px}.user-list-item{display:inline-grid;padding:12px;grid-template-columns:min-content 1fr;grid-column-gap:16px;font-size:.9em;align-items:center}.user-list-item>div:first-child{line-height:0}ul.pagination{display:inline-block;list-style:none;margin:16px 0;padding-inline-start:1px}ul.pagination li{float:left}ul.pagination li:first-child a,ul.pagination li:first-child span{border-radius:3px 0 0 3px}ul.pagination li:last-child a,ul.pagination li:last-child span{border-radius:0 3px 3px 0}ul.pagination a,ul.pagination span{display:block;padding:3px 12px;border:1px solid #ccc;margin-inline-start:-1px;user-select:none;color:#555;border-color:#ccc}html.dark-mode ul.pagination a,html.dark-mode ul.pagination span{color:#eee}html.dark-mode ul.pagination a,html.dark-mode ul.pagination span{border-color:#666}ul.pagination li.disabled{cursor:not-allowed}ul.pagination li.active span{color:#111;background-color:rgba(0,0,0,.05)}html.dark-mode ul.pagination li.active span{color:#eee}html.dark-mode ul.pagination li.active span{background-color:rgba(0,0,0,.5)}.compact ul.pagination{margin:0}.entity-list,.icon-list{margin:0 -16px}.entity-list h4,.icon-list h4{margin:0}.entity-list hr,.icon-list hr{margin:0}.entity-list .text-small.text-muted,.icon-list .text-small.text-muted{color:#aaa;font-size:.75em;margin-top:6px}.entity-list .text-muted p.text-muted,.icon-list .text-muted p.text-muted{margin-top:0}.entity-list .page.draft .text-page,.icon-list .page.draft .text-page{color:var(--color-page-draft);fill:var(--color-page-draft)}.entity-list>.dropdown-container,.icon-list>.dropdown-container{display:block}.icon-list hr{margin:12px 16px;max-width:140px;opacity:.25;height:1.1px}.icon-list hr+hr,.icon-list hr:first-child,.icon-list hr:last-child{display:none}.entity-list-item,.icon-list-item{padding:12px 16px;display:flex;align-items:center;background-color:transparent;border:0;width:100%;position:relative;word-break:break-word}.entity-list-item h4 a,.icon-list-item h4 a{color:#666}.entity-list-item>span:first-child,.icon-list-item>span:first-child{margin-inline-end:16px;flex-basis:1.88em;flex:none}.entity-list-item>span:last-child,.icon-list-item>span:last-child{flex:1;text-align:start}.entity-list-item>.content,.icon-list-item>.content{min-width:0}.entity-list-item:not(.no-hover),.icon-list-item:not(.no-hover){cursor:pointer}.entity-list-item:not(.no-hover):hover,.icon-list-item:not(.no-hover):hover{text-decoration:none;background-color:rgba(0,0,0,.1);border-radius:4px}.entity-list-item.outline-hover:hover,.icon-list-item.outline-hover:hover{background-color:transparent}.entity-list-item:focus,.icon-list-item:focus{background-color:#eee;outline:1px dotted #666;outline-offset:-2px}html.dark-mode .entity-list-item:focus,html.dark-mode .icon-list-item:focus{background-color:#222}.entity-list-item-path-sep{display:inline-block;vertical-align:top;position:relative;top:1px}.entity-list-item-path-sep svg{margin-inline-end:0}.card .entity-list-item:not(.no-hover):hover{background-color:#f2f2f2}html.dark-mode .card .entity-list-item:not(.no-hover):hover{background-color:#2d2d2d}.card .entity-list-item .entity-list-item:hover{background-color:#eee}.entity-list-item-children{padding:16px}.entity-list-item-children>div{overflow:hidden;padding:6px 0;margin-top:-6px}.entity-list-item-children .entity-chip{text-overflow:ellipsis;height:2.5em;overflow:hidden;text-align:start;display:block;white-space:nowrap}.entity-list-item-image{align-self:stretch;width:140px;flex:none;background-size:cover;background-position:50% 50%;border-radius:3px;position:relative;margin-inline-end:24px}.entity-list-item-image.entity-list-item-image-wide{width:220px}.entity-list-item-image .svg-icon{color:#fff;font-size:1.66rem;margin-inline-end:0;position:absolute;bottom:6px;left:6px}html.dark-mode .entity-list-item-image .svg-icon{color:rgba(255,255,255,.6)}@media screen and (max-width: 880px){.entity-list-item-image{width:80px}}.chapter>.entity-list-item-image{width:60px}.entity-list.compact{font-size:8.4px}.entity-list.compact h4,.entity-list.compact a{line-height:1.2}.entity-list.compact .entity-item-snippet{display:none}.entity-list.compact .entity-list-item p{font-size:11.2px;padding-top:6px}.entity-list.compact p{margin:0}.entity-list.compact>p.empty-text{display:block;font-size:14px}.entity-list.compact hr{margin:0}@media screen and (max-width: 880px){.entity-list.compact h4{font-size:1.666em}}.entity-item-tags{font-size:.75rem;opacity:1}.entity-item-tags .primary-background-light{background:transparent}.entity-item-tags .tag-name{background-color:rgba(0,0,0,.05)}.dropdown-container{display:inline-block;vertical-align:top;position:relative}.dropdown-menu{display:none;position:absolute;z-index:999;top:0;list-style:none;right:0;margin:16px 0;background-color:#fff;box-shadow:0 2px 4px rgba(0,0,0,.18);border-radius:1px;min-width:180px;padding:6px 0;color:#555;fill:currentColor;text-align:start !important;max-height:500px;overflow-y:auto}html.dark-mode .dropdown-menu{background-color:#333}html.dark-mode .dropdown-menu{color:#eee}.dropdown-menu.wide{min-width:220px}.dropdown-menu .text-muted{color:#999;fill:#999}.dropdown-menu li.active a{font-weight:600}.dropdown-menu a,.dropdown-menu button{display:block;padding:6px 16px;color:#555;fill:currentColor;white-space:nowrap;line-height:1.6;cursor:pointer}html.dark-mode .dropdown-menu a,html.dark-mode .dropdown-menu button{color:#eee}.dropdown-menu a:hover,.dropdown-menu a:focus,.dropdown-menu button:hover,.dropdown-menu button:focus{text-decoration:none;background-color:var(--color-primary-light);color:var(--color-primary)}.dropdown-menu a:focus,.dropdown-menu button:focus{outline:1px solid var(--color-primary);outline-offset:-2px}.dropdown-menu a svg,.dropdown-menu button svg{margin-inline-end:12px;display:inline-block;width:16px}.dropdown-menu button{width:100%;text-align:start}.dropdown-menu li.border-bottom{border-bottom:1px solid #ddd}.dropdown-menu li hr{margin:6px 0}.featured-image-container{position:relative;overflow:hidden;min-height:140px;background-size:cover;background-position:50% 50%;transition:opacity ease-in-out 240ms}.featured-image-container a{display:block}.featured-image-container img{display:block;width:100%;max-width:100%;height:auto}.featured-image-container-wrap{position:relative}.featured-image-container-wrap .svg-icon{color:#fff;font-size:2rem;margin-inline-end:0;position:absolute;bottom:10px;left:6px}html.dark-mode .featured-image-container-wrap .svg-icon{color:rgba(255,255,255,.6)}.grid-card:hover .featured-image-container{opacity:.5}.action-link{background:transparent;border:none;color:currentColor;padding:16px 0}.active-link-list a{display:inline-block;padding:12px}.active-link-list a:not(.active){color:#444}html.dark-mode .active-link-list a:not(.active){color:#666}.active-link-list a:hover{background-color:rgba(0,0,0,.05);border-radius:3px;text-decoration:none}html.dark-mode .active-link-list a:hover{background-color:rgba(255,255,255,.05)}.page-editor{display:flex;flex-direction:column;align-items:stretch;overflow:hidden}.page-editor .edit-area{flex:1;flex-direction:column;z-index:10}.page-editor .mce-tinymce{box-shadow:none}.page-editor .mce-top-part::before{box-shadow:none}body.mce-fullscreen .page-editor .edit-area,body.markdown-fullscreen .page-editor .edit-area{z-index:12}body.mce-fullscreen .page-editor,body.mce-fullscreen .flex-fill,body.markdown-fullscreen .page-editor,body.markdown-fullscreen .flex-fill{overflow:visible}@media screen and (max-width: 600px){.page-edit-toolbar{overflow-x:scroll;overflow-y:visible}.page-edit-toolbar .grid.third{display:block;white-space:nowrap}.page-edit-toolbar .grid.third>div{display:inline-block}}.page-save-mobile-button{position:fixed;z-index:30;border-radius:50%;width:56px;height:56px;font-size:24px;right:16px;bottom:12px;box-shadow:0 2px 2px 1px rgba(0,0,0,.13);background-color:currentColor;text-align:center}.page-save-mobile-button svg{fill:#fff;margin-inline-end:0}.draft-notification{pointer-events:none;transform:scale(0);transition:transform ease-in-out 120ms;transform-origin:50% 50%}.draft-notification.visible{transform:scale(1)}.page-style.editor{padding:0 !important}.page-content{width:100%;max-width:840px;margin:0 auto;overflow-wrap:break-word}.page-content .align-left{text-align:left}.page-content img.align-left,.page-content table.align-left{float:left !important;margin:6px 16px 16px 0}.page-content .align-right{text-align:right !important}.page-content img.align-right,.page-content table.align-right{float:right !important;margin:6px 0 6px 12px}.page-content .align-center{text-align:center}.page-content img.align-center{display:block}.page-content img.align-center,.page-content table.align-center{margin-left:auto;margin-right:auto}.page-content img{max-width:100%;height:auto}.page-content h1,.page-content h2,.page-content h3,.page-content h4,.page-content h5,.page-content h6,.page-content pre{clear:left}.page-content hr{clear:both;margin:16px 0}.page-content table{hyphens:auto;table-layout:fixed;max-width:100%;height:auto !important}.page-content ins,.page-content del{text-decoration:none}.page-content ins{background:#dbffdb}.page-content del{background:#ffecec}.page-content.page-revision pre code{white-space:pre-wrap}.pointer-container{position:relative;display:none;left:0;z-index:10}.pointer{border:1px solid #ccc;border-color:#ccc;display:flex;align-items:center;justify-items:center;padding:12px 12px;border-radius:4px;box-shadow:0 0 12px 1px rgba(0,0,0,.1);position:absolute;top:-60px;background-color:#fff;width:275px;z-index:55}html.dark-mode .pointer{border-color:#000}html.dark-mode .pointer{background-color:#333}.pointer.is-page-editable{width:328px}.pointer:before{position:absolute;left:50%;bottom:-9px;width:16px;height:16px;margin-inline-start:-8px;content:"";display:block;transform:rotate(45deg);transform-origin:50% 50%;border-block-end:1px solid #ccc;border-inline-end:1px solid #ccc;z-index:56;background-color:#fff;border-color:#ccc}html.dark-mode .pointer:before{background-color:#333}html.dark-mode .pointer:before{border-color:#000}.pointer input,.pointer button,.pointer a{position:relative;border-radius:0;height:28px;font-size:12px;vertical-align:top;padding:5px 16px}.pointer input{background-color:#fff;border:1px solid #ddd;border-color:#ddd;color:#666;width:172px;z-index:40;padding:5px 10px}html.dark-mode .pointer input{border-color:#000}.pointer span.icon{fill:#444;cursor:pointer;user-select:none;display:inline-block;line-height:1}.pointer .input-group .button{line-height:1;margin:0 0 0 -4px;box-shadow:none}.pointer a.button{margin:0}.pointer .svg-icon{width:1.2em;height:1.2em}.pointer .button{border-color:#ddd}html.dark-mode .pointer .button{border-color:#000}.floating-toolbox{border:1px solid #ddd;background-color:#fff;border-color:#ddd;right:64px;width:48px;overflow:hidden;align-items:stretch;flex-direction:row;display:flex;transition:width ease-in-out 180ms;margin-top:-1px;min-height:0}html.dark-mode .floating-toolbox{background-color:#222}html.dark-mode .floating-toolbox{border-color:#000}.floating-toolbox.open{width:480px}.floating-toolbox [toolbox-toggle] svg{transition:transform ease-in-out 180ms}.floating-toolbox [toolbox-toggle]{transition:background-color ease-in-out 180ms}.floating-toolbox.open [toolbox-toggle]{background-color:rgba(255,0,0,.29)}.floating-toolbox.open [toolbox-toggle] svg{transform:rotate(180deg)}.floating-toolbox>div{flex:1;position:relative}.floating-toolbox .tabs{display:block;border-inline-end:1px solid #ddd;border-color:#ddd;width:48px;flex:0 1 auto}html.dark-mode .floating-toolbox .tabs{border-color:#000}.floating-toolbox .tabs svg{padding:0;margin:0}.floating-toolbox .tabs>button{color:rgba(0,0,0,.5);display:block;cursor:pointer;padding:12px 16px;font-size:16px;line-height:1.6;border-bottom:1px solid rgba(255,255,255,.3)}html.dark-mode .floating-toolbox .tabs>button{color:rgba(255,255,255,.5)}.floating-toolbox.open .tabs>button.active{color:#444;background-color:rgba(0,0,0,.1)}html.dark-mode .floating-toolbox.open .tabs>button.active{color:#eee}.floating-toolbox div[toolbox-tab-content]{padding-bottom:45px;display:flex;flex:1;flex-direction:column;min-height:0;overflow-y:scroll}.floating-toolbox h4{font-size:24px;margin:16px 0 0 0;padding:0 24px 12px 24px}.floating-toolbox .tags input{max-width:100%;width:100%;min-width:50px}.floating-toolbox .tags td,.floating-toolbox .inline-start-table>div>div>div{padding-inline-end:12px;padding-top:12px;position:relative}.floating-toolbox .handle{user-select:none;cursor:move;fill:#999}.floating-toolbox form{display:flex;flex:1;flex-direction:column;overflow-y:scroll}.floating-toolbox table td,.floating-toolbox table th{overflow:visible}[toolbox-tab-content]{display:none}.suggestion-box{top:auto;margin:-4px 0 0;right:auto;left:0;padding:0}.suggestion-box li{display:block;border-bottom:1px solid #ddd}.suggestion-box li:last-child{border-bottom:0}.comments-container h5{color:#888;font-weight:normal;margin-top:.5em}.comment-editor .CodeMirror,.comment-editor .CodeMirror-scroll{min-height:175px}.mce-floatpanel[aria-label="Insert/edit media"] .mce-open{display:none}.entity-list-item>span:first-child,.icon-list-item>span:first-child,.chapter-expansion>.icon{font-size:.8rem;width:1.88em;height:1.88em;display:flex;align-items:center;justify-content:center;text-align:center;border-radius:1em;position:relative;overflow:hidden}.entity-list-item>span:first-child svg,.icon-list-item>span:first-child svg,.chapter-expansion>.icon svg{margin:0;bottom:0}.entity-list-item>span:first-child:after,.icon-list-item>span:first-child:after,.chapter-expansion>.icon:after{content:"";position:absolute;background-color:currentColor;opacity:.2;left:0;top:0;width:100%;height:100%}.entity-chip{display:inline-block;align-items:center;justify-content:center;text-align:center;font-size:.9em;border-radius:3px;position:relative;overflow:hidden;padding:6px 12px;fill:currentColor;opacity:.85;transition:opacity ease-in-out 120ms}.entity-chip:after{content:"";position:absolute;background-color:currentColor;opacity:.15;left:0;top:0;width:100%;height:100%}.entity-chip:hover{text-decoration:none;opacity:1}.dragged{position:absolute;opacity:.5;z-index:2000}body.dragging,body.dragging *{cursor:move !important}.avatar{border-radius:100%;background-color:#eee;width:30px;height:30px}html.dark-mode .avatar{background-color:#000}.avatar.med{width:40px;height:40px}.avatar.large{width:80px;height:80px}.avatar.huge{width:120px;height:120px}.avatar.square{border-radius:3px}html.dark-mode .avatar[src$="user_avatar.png"]{filter:invert(1)}.loading-container{position:relative;display:block;margin:32px auto}.loading-container>div{width:10px;height:10px;border-radius:10px;display:inline-block;vertical-align:top;transform:translate3d(-10px, 0, 0);margin-top:6px;animation-name:loadingBob;animation-duration:1.4s;animation-iteration-count:infinite;animation-timing-function:cubic-bezier(0.62, 0.28, 0.23, 0.99);margin-inline-end:4px;background-color:var(--color-page);animation-delay:.3s}.loading-container>div:first-child{left:-16px;background-color:var(--color-book);animation-delay:0s}.loading-container>div:last-of-type{left:16px;background-color:var(--color-chapter);animation-delay:.6s}.loading-container>span{margin-inline-start:12px;font-style:italic;color:#888;vertical-align:top}[back-to-top]{background-color:var(--color-primary);position:fixed;bottom:16px;right:24px;padding:5px 7px;cursor:pointer;color:#fff;fill:#fff;width:40px;height:40px;border-radius:40px;transition:all ease-in-out 180ms;opacity:0;z-index:999;overflow:hidden}[back-to-top] svg{width:26.6666666667px;height:26.6666666667px;margin-inline-end:4px}[back-to-top]:hover{width:136px;opacity:1 !important}[back-to-top] .inner{width:136px}[back-to-top] span{position:relative;vertical-align:top;line-height:2}.skip-to-content-link{position:fixed;top:-48px;left:0;background-color:#fff;z-index:15;border-radius:0 4px 4px 0;display:block;box-shadow:0 0 4px 1px rgba(0,0,0,.5);font-weight:bold}.skip-to-content-link:focus{top:32px;outline-offset:-10px;outline:2px dotted var(--color-primary)}.contained-search-box{display:flex;height:38px}.contained-search-box input,.contained-search-box button{border-radius:0;border:1px solid #ddd;border-color:#ddd;margin-inline-start:-1px}html.dark-mode .contained-search-box input,html.dark-mode .contained-search-box button{border-color:#000}.contained-search-box input{flex:5;padding:6px 12px}.contained-search-box input:focus,.contained-search-box input:active{outline:0}.contained-search-box button{width:60px}.contained-search-box button i{padding:0}.contained-search-box button.cancel.active{background-color:#ab0f0e;color:#eee}.contained-search-box svg{margin:0}.entity-selector{border:1px solid #ddd;border-color:#ddd;border-radius:3px;overflow:hidden;font-size:.8em}html.dark-mode .entity-selector{border-color:#111}.entity-selector input[type=text]{width:100%;display:block;border-radius:0;border:0;border-bottom:1px solid #ddd;font-size:16px;padding:12px 16px}.entity-selector .entity-list{overflow-y:scroll;height:400px;background-color:#eee;margin-inline-end:0;margin-inline-start:0}html.dark-mode .entity-selector .entity-list{background-color:#222}.entity-selector .entity-list-item{background-color:#fff}html.dark-mode .entity-selector .entity-list-item{background-color:#222}.entity-selector .entity-list-item p{margin-bottom:0}.entity-selector .entity-list-item:focus{outline:2px dotted var(--color-primary);outline-offset:-4px}.entity-selector .entity-list-item.selected{background-color:rgba(0,0,0,.05)}html.dark-mode .entity-selector .entity-list-item.selected{background-color:rgba(255,255,255,.05)}.entity-selector .loading{height:400px;padding-top:24px}.entity-selector .entity-selector-add button{margin:0;display:block;width:100%;border:0;border-top:1px solid #ddd}.entity-selector.compact{font-size:10px}.entity-selector.compact .entity-item-snippet{display:none}.scroll-box{max-height:250px;overflow-y:scroll;border:1px solid #ddd;border-radius:3px}.scroll-box .scroll-box-item{padding:6px 16px;border-bottom:1px solid #ddd;border-top:1px solid #ddd;margin-top:-1px}.scroll-box .scroll-box-item:last-child{border-bottom:0}.scroll-box[data-instruction]:before{content:attr(data-instruction);padding:6px 16px;border-bottom:1px solid #ddd;display:block;font-size:.75rem;color:#666}.fullscreen{border:0;position:fixed;top:0;left:0;right:0;bottom:0;width:100%;height:100%;z-index:150}.list-sort-container{display:inline-block}.list-sort-container form{display:inline-block}.list-sort-container .list-sort{display:inline-grid;margin-inline-start:12px;grid-template-columns:minmax(120px, max-content) 40px;font-size:.9rem;border:2px solid #ddd;border-color:#ddd;border-radius:4px}html.dark-mode .list-sort-container .list-sort{border-color:#444}.list-sort-container .list-sort-label{font-weight:bold;display:inline-block;color:#555}html.dark-mode .list-sort-container .list-sort-label{color:#888}.list-sort-container .list-sort-type{text-align:start}.list-sort-container .list-sort-type,.list-sort-container .list-sort-dir{padding:6px 12px;cursor:pointer}.list-sort-container .list-sort-dir{border-inline-start:2px solid #ddd;color:#888;border-color:#ddd}html.dark-mode .list-sort-container .list-sort-dir{border-color:#444}.list-sort-container .list-sort-dir .svg-icon{transition:transform ease-in-out 120ms}.list-sort-container .list-sort-dir:hover .svg-icon{transform:rotate(180deg)}table.table .table-user-item{display:grid;grid-template-columns:42px 1fr;align-items:center}table.table .table-entity-item{display:grid;grid-template-columns:36px 1fr;align-items:center}/*# sourceMappingURL=styles.css.map */
+html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after{content:"";content:none}q:before,q:after{content:"";content:none}table{border-collapse:collapse;border-spacing:0}:root{--color-primary: #206ea7;--color-primary-light: rgba(32,110,167,0.15);--color-page: #206ea7;--color-page-draft: #7e50b1;--color-chapter: #af4d0d;--color-book: #077b70;--color-bookshelf: #a94747}.m-none{margin:0 !important}.mx-none{margin-inline-start:0 !important;margin-inline-end:0 !important}.my-none{margin-top:0 !important;margin-bottom:0 !important}.mt-none{margin-top:0 !important}.mr-none{margin-inline-end:0 !important}.mb-none{margin-bottom:0 !important}.ml-none{margin-inline-start:0 !important}.m-xxs{margin:3px !important}.mx-xxs{margin-inline-start:3px !important;margin-inline-end:3px !important}.my-xxs{margin-top:3px !important;margin-bottom:3px !important}.mt-xxs{margin-top:3px !important}.mr-xxs{margin-inline-end:3px !important}.mb-xxs{margin-bottom:3px !important}.ml-xxs{margin-inline-start:3px !important}.m-xs{margin:6px !important}.mx-xs{margin-inline-start:6px !important;margin-inline-end:6px !important}.my-xs{margin-top:6px !important;margin-bottom:6px !important}.mt-xs{margin-top:6px !important}.mr-xs{margin-inline-end:6px !important}.mb-xs{margin-bottom:6px !important}.ml-xs{margin-inline-start:6px !important}.m-s{margin:12px !important}.mx-s{margin-inline-start:12px !important;margin-inline-end:12px !important}.my-s{margin-top:12px !important;margin-bottom:12px !important}.mt-s{margin-top:12px !important}.mr-s{margin-inline-end:12px !important}.mb-s{margin-bottom:12px !important}.ml-s{margin-inline-start:12px !important}.m-m{margin:16px !important}.mx-m{margin-inline-start:16px !important;margin-inline-end:16px !important}.my-m{margin-top:16px !important;margin-bottom:16px !important}.mt-m{margin-top:16px !important}.mr-m{margin-inline-end:16px !important}.mb-m{margin-bottom:16px !important}.ml-m{margin-inline-start:16px !important}.m-l{margin:24px !important}.mx-l{margin-inline-start:24px !important;margin-inline-end:24px !important}.my-l{margin-top:24px !important;margin-bottom:24px !important}.mt-l{margin-top:24px !important}.mr-l{margin-inline-end:24px !important}.mb-l{margin-bottom:24px !important}.ml-l{margin-inline-start:24px !important}.m-xl{margin:32px !important}.mx-xl{margin-inline-start:32px !important;margin-inline-end:32px !important}.my-xl{margin-top:32px !important;margin-bottom:32px !important}.mt-xl{margin-top:32px !important}.mr-xl{margin-inline-end:32px !important}.mb-xl{margin-bottom:32px !important}.ml-xl{margin-inline-start:32px !important}.m-xxl{margin:48px !important}.mx-xxl{margin-inline-start:48px !important;margin-inline-end:48px !important}.my-xxl{margin-top:48px !important;margin-bottom:48px !important}.mt-xxl{margin-top:48px !important}.mr-xxl{margin-inline-end:48px !important}.mb-xxl{margin-bottom:48px !important}.ml-xxl{margin-inline-start:48px !important}.m-auto{margin:auto !important}.mx-auto{margin-inline-start:auto !important;margin-inline-end:auto !important}.my-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-auto{margin-top:auto !important}.mr-auto{margin-inline-end:auto !important}.mb-auto{margin-bottom:auto !important}.ml-auto{margin-inline-start:auto !important}.p-none{padding:0 !important}.px-none{padding-inline-start:0 !important;padding-inline-end:0 !important}.py-none{padding-top:0 !important;padding-bottom:0 !important}.pt-none{padding-top:0 !important}.pr-none{padding-inline-end:0 !important}.pb-none{padding-bottom:0 !important}.pl-none{padding-inline-start:0 !important}.p-xxs{padding:3px !important}.px-xxs{padding-inline-start:3px !important;padding-inline-end:3px !important}.py-xxs{padding-top:3px !important;padding-bottom:3px !important}.pt-xxs{padding-top:3px !important}.pr-xxs{padding-inline-end:3px !important}.pb-xxs{padding-bottom:3px !important}.pl-xxs{padding-inline-start:3px !important}.p-xs{padding:6px !important}.px-xs{padding-inline-start:6px !important;padding-inline-end:6px !important}.py-xs{padding-top:6px !important;padding-bottom:6px !important}.pt-xs{padding-top:6px !important}.pr-xs{padding-inline-end:6px !important}.pb-xs{padding-bottom:6px !important}.pl-xs{padding-inline-start:6px !important}.p-s{padding:12px !important}.px-s{padding-inline-start:12px !important;padding-inline-end:12px !important}.py-s{padding-top:12px !important;padding-bottom:12px !important}.pt-s{padding-top:12px !important}.pr-s{padding-inline-end:12px !important}.pb-s{padding-bottom:12px !important}.pl-s{padding-inline-start:12px !important}.p-m{padding:16px !important}.px-m{padding-inline-start:16px !important;padding-inline-end:16px !important}.py-m{padding-top:16px !important;padding-bottom:16px !important}.pt-m{padding-top:16px !important}.pr-m{padding-inline-end:16px !important}.pb-m{padding-bottom:16px !important}.pl-m{padding-inline-start:16px !important}.p-l{padding:24px !important}.px-l{padding-inline-start:24px !important;padding-inline-end:24px !important}.py-l{padding-top:24px !important;padding-bottom:24px !important}.pt-l{padding-top:24px !important}.pr-l{padding-inline-end:24px !important}.pb-l{padding-bottom:24px !important}.pl-l{padding-inline-start:24px !important}.p-xl{padding:32px !important}.px-xl{padding-inline-start:32px !important;padding-inline-end:32px !important}.py-xl{padding-top:32px !important;padding-bottom:32px !important}.pt-xl{padding-top:32px !important}.pr-xl{padding-inline-end:32px !important}.pb-xl{padding-bottom:32px !important}.pl-xl{padding-inline-start:32px !important}.p-xxl{padding:48px !important}.px-xxl{padding-inline-start:48px !important;padding-inline-end:48px !important}.py-xxl{padding-top:48px !important;padding-bottom:48px !important}.pt-xxl{padding-top:48px !important}.pr-xxl{padding-inline-end:48px !important}.pb-xxl{padding-bottom:48px !important}.pl-xxl{padding-inline-start:48px !important}.p-auto{padding:auto !important}.px-auto{padding-inline-start:auto !important;padding-inline-end:auto !important}.py-auto{padding-top:auto !important;padding-bottom:auto !important}.pt-auto{padding-top:auto !important}.pr-auto{padding-inline-end:auto !important}.pb-auto{padding-bottom:auto !important}.pl-auto{padding-inline-start:auto !important}*{box-sizing:border-box;outline-color:var(--color-primary);outline-width:1px}*:focus{outline-style:dotted}html{height:100%;overflow-y:scroll;background-color:#f2f2f2}html.flexbox{overflow-y:hidden}html.dark-mode{background-color:#111}body{font-size:14px;line-height:1.6;color:#444;-webkit-font-smoothing:antialiased;height:100%;display:flex;flex-direction:column}html.dark-mode body{color:#aaa}body,button,input,select,label,textarea{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Oxygen","Ubuntu","Roboto","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif}.Codemirror,pre,#markdown-editor-input,.editor-toolbar,.code-base,span.code,code{font-family:"Lucida Console","DejaVu Sans Mono","Ubuntu Mono",Monaco,monospace}h1{font-size:3.425em;line-height:1.22222222em;margin-top:.48888889em;margin-bottom:.48888889em}h2{font-size:2.8275em;line-height:1.294117647em;margin-top:.8627451em;margin-bottom:.43137255em}h3{font-size:2.333em;line-height:1.221428572em;margin-top:.78571429em;margin-bottom:.43137255em}h4{font-size:1.666em;line-height:1.375em;margin-top:.78571429em;margin-bottom:.43137255em}h1,h2,h3,h4,h5,h6{font-weight:400;position:relative;display:block;color:#222}html.dark-mode h1,html.dark-mode h2,html.dark-mode h3,html.dark-mode h4,html.dark-mode h5,html.dark-mode h6{color:#bbb}h1 .subheader,h2 .subheader,h3 .subheader,h4 .subheader,h5 .subheader,h6 .subheader{font-size:.5em;line-height:1em;color:#969696}h5{font-size:1.4em}h5,h6{line-height:1.2em;margin-top:.78571429em;margin-bottom:.66em}@media screen and (max-width: 600px){h1{font-size:2.8275em}h2{font-size:2.333em}h3{font-size:1.666em}h4{font-size:1.333em}h5{font-size:1.161616em}}.list-heading{font-size:2rem}h2.list-heading{font-size:1.333rem}a{color:var(--color-primary);fill:currentColor;cursor:pointer;text-decoration:none;transition:filter ease-in-out 80ms;line-height:1.6}a:hover{text-decoration:underline}a.icon{display:inline-block}a svg{position:relative;display:inline-block}a:focus img:only-child{outline:2px dashed var(--color-primary);outline-offset:2px}a.no-link-style{color:inherit}a.no-link-style:hover{text-decoration:none}.blended-links a{color:inherit}.blended-links a svg{fill:currentColor}p,ul,ol,pre,table,blockquote{margin-top:.3em;margin-bottom:1.375em}hr{border:0;height:1px;background:#eaeaea;margin-bottom:24px}html.dark-mode hr{background:#555}hr.faded{background-image:linear-gradient(to right, #FFF, #e3e0e0 20%, #e3e0e0 80%, #FFF)}hr.darker{background:#ddd}html.dark-mode hr.darker{background:#666}hr.margin-top,hr.even{margin-top:24px}strong,b,.bold,.strong{font-weight:bold}strong>strong,strong>b,strong>.bold,strong>.strong,b>strong,b>b,b>.bold,b>.strong,.bold>strong,.bold>b,.bold>.bold,.bold>.strong,.strong>strong,.strong>b,.strong>.bold,.strong>.strong{font-weight:bolder}em,i,.italic{font-style:italic}small,p.small,span.small,.text-small{font-size:.75rem;color:#5e5e5e}html.dark-mode small,html.dark-mode p.small,html.dark-mode span.small,html.dark-mode .text-small{color:#999}sup,.superscript{vertical-align:super;font-size:.8em}sub,.subscript{vertical-align:sub;font-size:.8em}pre{font-size:12px;border:1px solid #ddd;background-color:#f5f5f5;border-color:#ddd;padding-left:31px;position:relative;padding-top:3px;padding-bottom:3px}html.dark-mode pre{background-color:#2b2b2b}html.dark-mode pre{border-color:#111}pre:after{content:"";display:block;position:absolute;top:0;width:29px;left:0;height:100%;background-color:#f5f5f5;border-right:1px solid #ddd}html.dark-mode pre:after{background-color:#313335}html.dark-mode pre:after{border-right:none}@media print{pre{padding-left:12px}pre:after{display:none}}blockquote{display:block;position:relative;border-left:4px solid var(--color-primary);background-color:#f8f8f8;padding:12px 16px 12px 32px;overflow:auto}html.dark-mode blockquote{background-color:#333}blockquote:before{content:"“";font-size:2em;font-weight:bold;position:absolute;top:12px;left:12px;color:#777}.text-mono{font-family:"Lucida Console","DejaVu Sans Mono","Ubuntu Mono",Monaco,monospace}.text-uppercase{text-transform:uppercase}.text-capitals{text-transform:capitalize}.code-base,span.code,code{font-size:.84em;border:1px solid #ddd;border-radius:3px;background-color:#f8f8f8;border-color:#ddd}html.dark-mode .code-base,html.dark-mode span.code,html.dark-mode code{background-color:#2b2b2b}html.dark-mode .code-base,html.dark-mode span.code,html.dark-mode code{border-color:#444}code{display:inline;padding:1px 3px;white-space:pre-wrap;line-height:1.2em}span.code{padding:1px 6px}pre code{background-color:transparent;border:0;font-size:1em;display:block;line-height:1.6}span.highlight{font-weight:bold;padding:2px 4px}ul p,ol p{margin:0}ul{padding-left:20.8px;padding-right:20.8px;list-style:disc}ul ul{list-style:circle;margin-top:0;margin-bottom:0}ul label{margin:0}ol{list-style:decimal;padding-left:32px;padding-right:32px}li.checkbox-item,li.task-list-item{list-style:none;margin-left:-20.8px}li.checkbox-item input[type=checkbox],li.task-list-item input[type=checkbox]{margin-right:6px}li>ol,li>ul{margin-block-end:0px;margin-block-start:0px;padding-block-end:0px;padding-block-start:0px}.underlined{text-decoration:underline}.text-center{text-align:center}.text-left{text-align:start}.text-right{text-align:end}@media screen and (min-width: 360px){.text-xxs-center{text-align:center}.text-xxs-left{text-align:start}.text-xxs-right{text-align:end}}@media screen and (min-width: 400px){.text-xs-center{text-align:center}.text-xs-left{text-align:start}.text-xs-right{text-align:end}}@media screen and (min-width: 600px){.text-s-center{text-align:center}.text-s-left{text-align:start}.text-s-right{text-align:end}}@media screen and (min-width: 880px){.text-m-center{text-align:center}.text-m-left{text-align:start}.text-m-right{text-align:end}}@media screen and (min-width: 1000px){.text-l-center{text-align:center}.text-l-left{text-align:start}.text-l-right{text-align:end}}@media screen and (min-width: 1100px){.text-xl-center{text-align:center}.text-xl-left{text-align:start}.text-xl-right{text-align:end}}.text-bigger{font-size:1.1em}.text-large{font-size:1.6666em}.no-color{color:inherit}.break-text{word-wrap:break-word;overflow-wrap:break-word}.text-limit-lines-1{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.text-limit-lines-2{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.header-group{margin:16px 0}.header-group h1,.header-group h2,.header-group h3,.header-group h4,.header-group h5,.header-group h6{margin:0}span.sep{color:#bbb;padding:0 6px}.list>*{display:block}.svg-icon{width:1em;height:1em;display:inline-block;position:relative;bottom:-0.105em;margin-inline-end:6px;pointer-events:none;fill:currentColor}.primary-background{background-color:var(--color-primary) !important}.primary-background-light{background-color:var(--color-primary-light)}html.dark-mode .primary-background-light{background:#000}html.dark-mode .primary-background-light .text-primary{color:#aaa !important}.text-pos,.text-pos:hover,.text-pos-hover:hover{color:#0f7d15 !important;fill:#0f7d15 !important}.text-warn,.text-warn:hover,.text-warn-hover:hover{color:#cf4d03 !important;fill:#cf4d03 !important}.text-neg,.text-neg:hover,.text-neg-hover:hover{color:#ab0f0e !important;fill:#ab0f0e !important}.text-primary,.text-primary:hover,.text-primary-hover:hover{color:var(--color-primary) !important;fill:var(--color-primary) !important}.text-muted{color:#575757 !important;fill:currentColor !important}html.dark-mode .text-muted{color:#888 !important}.text-dark{color:#222 !important;fill:currentColor !important}html.dark-mode .text-dark{color:#ccc !important}.text-white{color:#fff;fill:currentColor !important}.text-bookshelf,.text-bookshelf:hover{color:var(--color-bookshelf);fill:var(--color-bookshelf)}.text-book,.text-book:hover{color:var(--color-book);fill:var(--color-book)}.text-page,.text-page:hover{color:var(--color-page);fill:var(--color-page)}.text-page.draft,.text-page.draft:hover{color:var(--color-page-draft);fill:var(--color-page-draft)}.text-chapter,.text-chapter:hover{color:var(--color-chapter);fill:var(--color-chapter)}.bg-white{background-color:#fff}.bg-book{background-color:var(--color-book)}.bg-chapter{background-color:var(--color-chapter)}.bg-bookshelf{background-color:var(--color-bookshelf)}.container{max-width:1400px;margin-inline-start:auto;margin-inline-end:auto;padding-inline-start:16px;padding-inline-end:16px}.container.small{max-width:840px}.container.very-small{max-width:480px}.grid{display:grid;grid-column-gap:24px;grid-row-gap:24px}.grid.half{grid-template-columns:1fr 1fr}.grid.third{grid-template-columns:1fr 1fr 1fr}.grid.left-focus{grid-template-columns:2fr 1fr}.grid.right-focus{grid-template-columns:1fr 3fr}.grid.gap-y-xs{grid-row-gap:6px}.grid.gap-xl{grid-column-gap:32px;grid-row-gap:32px}.grid.gap-xxl{grid-column-gap:48px;grid-row-gap:48px}.grid.v-center{align-items:center}.grid.v-end{align-items:end}.grid.no-gap{grid-row-gap:0;grid-column-gap:0}.grid.no-row-gap{grid-row-gap:0}@media screen and (max-width: 880px){.grid.third:not(.no-break){grid-template-columns:1fr 1fr}.grid.half:not(.no-break),.grid.left-focus:not(.no-break),.grid.right-focus:not(.no-break){grid-template-columns:1fr}.grid.half.collapse-xs{grid-template-columns:1fr 1fr}.grid.gap-xl{grid-column-gap:16px;grid-row-gap:16px}.grid.right-focus.reverse-collapse>*:nth-child(2){order:0}.grid.right-focus.reverse-collapse>*:nth-child(1){order:1}}@media screen and (max-width: 600px){.grid.third:not(.no-break){grid-template-columns:1fr}}@media screen and (max-width: 400px){.grid.half.collapse-xs{grid-template-columns:1fr}}#content{flex:1 0 auto}body.flexbox{display:flex;flex-direction:column;align-items:stretch;height:100%;min-height:100%;max-height:100%;overflow:hidden}body.flexbox #content{flex:1;display:flex;min-height:0}.flex-fill{display:flex;align-items:stretch;min-height:0;max-width:100%;position:relative}.flex-container-row{display:flex;flex-direction:row}.flex-container-row.v-center{align-items:center}.flex-container-column{display:flex;flex-direction:column}.flex-container-column.wrap,.flex-container-row.wrap{flex-wrap:wrap}.flex{min-height:0;flex:1}.flex.fit-content{flex-basis:auto;flex-grow:0}.justify-flex-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-space-between{justify-content:space-between}.items-center{align-items:center}.block{display:block !important;position:relative}.inline{display:inline !important}.block.inline{display:inline-block !important}.hidden{display:none !important}.fill-height{height:100%}.float{float:left}.float.right{float:right}@media screen and (max-width: 360px){.hide-under-xxs{display:none !important}}@media screen and (min-width: 360px){.hide-over-xxs{display:none !important}}@media screen and (max-width: 400px){.hide-under-xs{display:none !important}}@media screen and (min-width: 400px){.hide-over-xs{display:none !important}}@media screen and (max-width: 600px){.hide-under-s{display:none !important}}@media screen and (min-width: 600px){.hide-over-s{display:none !important}}@media screen and (max-width: 880px){.hide-under-m{display:none !important}}@media screen and (min-width: 880px){.hide-over-m{display:none !important}}@media screen and (max-width: 1000px){.hide-under-l{display:none !important}}@media screen and (min-width: 1000px){.hide-over-l{display:none !important}}@media screen and (max-width: 1100px){.hide-under-xl{display:none !important}}@media screen and (min-width: 1100px){.hide-over-xl{display:none !important}}.rounded{border-radius:4px}.dual-column-content{columns:2}@media screen and (max-width: 880px){.dual-column-content{columns:1}}.clearfix::before,.clearfix::after{content:" ";display:table}.clearfix::after{clear:both}.tri-layout-container{display:grid;margin-inline-start:32px;margin-inline-end:32px;grid-template-columns:1fr 4fr 1fr;grid-template-areas:"a b c";grid-column-gap:48px}.tri-layout-container .tri-layout-right{grid-area:c;min-width:0}.tri-layout-container .tri-layout-left{grid-area:a;min-width:0}.tri-layout-container .tri-layout-middle{grid-area:b;padding-top:16px;min-width:0}@media screen and (max-width: 1400px){.tri-layout-container{grid-template-areas:"c b b" "a b b" ". b b";grid-template-columns:1fr 3fr;grid-template-rows:min-content min-content 1fr;padding-inline-end:24px}}@media screen and (min-width: 1000px)and (max-width: 1400px){.tri-layout-left{position:sticky;top:16px}}@media screen and (min-width: 1400px){.tri-layout-left-contents,.tri-layout-right-contents{padding:16px;position:sticky;top:16px;max-height:100vh;min-height:50vh;overflow-y:scroll;overflow-x:hidden;height:100%;scrollbar-width:none;-ms-overflow-style:none}.tri-layout-left-contents::-webkit-scrollbar,.tri-layout-right-contents::-webkit-scrollbar{display:none}.tri-layout-middle-contents{max-width:940px;margin:0 auto}}@media screen and (max-width: 1000px){.tri-layout-container{grid-template-areas:none;grid-template-columns:1fr;grid-column-gap:0;padding-inline-end:6px;padding-inline-start:6px}.tri-layout-container .tri-layout-left-contents,.tri-layout-container .tri-layout-right-contents{padding-inline-start:16px;padding-inline-end:16px}.tri-layout-container .tri-layout-left>*,.tri-layout-container .tri-layout-right>*{display:none;pointer-events:none}.tri-layout-container .tri-layout-left,.tri-layout-container .tri-layout-right{grid-area:none;grid-column:1/1;grid-row:1;padding-top:0 !important}.tri-layout-container .tri-layout-middle{grid-area:none;grid-row:3;grid-column:1/1;z-index:1;overflow:hidden;transition:transform ease-in-out 240ms}.tri-layout-container .tri-layout-left{grid-row:2}.tri-layout-container.show-info{overflow:hidden}.tri-layout-container.show-info .tri-layout-middle{display:none}.tri-layout-container.show-info .tri-layout-right>*,.tri-layout-container.show-info .tri-layout-left>*{display:block;pointer-events:auto}}@media screen and (min-width: 1000px){.tri-layout-mobile-tabs{display:none}.tri-layout-left-contents>*,.tri-layout-right-contents>*{opacity:.6;transition:opacity ease-in-out 120ms}.tri-layout-left-contents>*:hover,.tri-layout-right-contents>*:hover{opacity:1}.tri-layout-left-contents>*:focus-within,.tri-layout-right-contents>*:focus-within{opacity:1}}@media screen and (max-width: 880px){.tri-layout-container{margin-inline-start:0;margin-inline-end:0}}.callout{border-inline-start:3px solid #bbb;background-color:#eee;padding:12px 12px 12px 32px;display:block;position:relative;overflow:auto}.callout:before{background-image:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9IiMwMTUzODAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+ICAgIDxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz4gICAgPHBhdGggZD0iTTEyIDJDNi40OCAyIDIgNi40OCAyIDEyczQuNDggMTAgMTAgMTAgMTAtNC40OCAxMC0xMFMxNy41MiAyIDEyIDJ6bTEgMTVoLTJ2LTZoMnY2em0wLThoLTJWN2gydjJ6Ii8+PC9zdmc+");background-repeat:no-repeat;content:"";width:1.2em;height:1.2em;left:8px;top:50%;margin-top:-9px;display:inline-block;position:absolute;line-height:1;opacity:.8}.callout.success{border-left-color:#0f7d15;background-color:#eafdeb;color:#063409}html.dark-mode .callout.success{background-color:#031904}html.dark-mode .callout.success{color:#129419}.callout.success:before{background-image:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9IiMzNzZjMzkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+ICAgIDxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz4gICAgPHBhdGggZD0iTTEyIDJDNi40OCAyIDIgNi40OCAyIDEyczQuNDggMTAgMTAgMTAgMTAtNC40OCAxMC0xMFMxNy41MiAyIDEyIDJ6bS0yIDE1bC01LTUgMS40MS0xLjQxTDEwIDE0LjE3bDcuNTktNy41OUwxOSA4bC05IDl6Ii8+PC9zdmc+")}.callout.danger{border-left-color:#ab0f0e;background-color:#fcdbdb;color:#4d0706}html.dark-mode .callout.danger{background-color:#1e0302}html.dark-mode .callout.danger{color:#c31110}.callout.danger:before{background-image:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9IiNiOTE4MTgiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+ICAgIDxwYXRoIGQ9Ik0xNS43MyAzSDguMjdMMyA4LjI3djcuNDZMOC4yNyAyMWg3LjQ2TDIxIDE1LjczVjguMjdMMTUuNzMgM3pNMTIgMTcuM2MtLjcyIDAtMS4zLS41OC0xLjMtMS4zIDAtLjcyLjU4LTEuMyAxLjMtMS4zLjcyIDAgMS4zLjU4IDEuMyAxLjMgMCAuNzItLjU4IDEuMy0xLjMgMS4zem0xLTQuM2gtMlY3aDJ2NnoiLz4gICAgPHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPjwvc3ZnPg==")}.callout.info{border-left-color:#0288d1;color:#01466c;background-color:#d3efff}html.dark-mode .callout.info{color:#09a7fd}html.dark-mode .callout.info{background-color:#001520}.callout.warning{border-left-color:#cf4d03;background-color:#fee3d3;color:#6a2802}html.dark-mode .callout.warning{background-color:#1a0a00}html.dark-mode .callout.warning{color:#cf4d03}.callout.warning:before{background-image:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9IiNiNjUzMWMiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+ICAgIDxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz4gICAgPHBhdGggZD0iTTEgMjFoMjJMMTIgMiAxIDIxem0xMi0zaC0ydi0yaDJ2MnptMC00aC0ydi00aDJ2NHoiLz48L3N2Zz4=")}.callout a{color:inherit;text-decoration:underline}.card{background-color:#fff;box-shadow:0 1px 6px -1px rgba(0,0,0,.1);border-radius:3px;border:1px solid transparent}html.dark-mode .card{background-color:#222}.card .body,.card p.empty-text{padding:16px}.card a,.card p{word-wrap:break-word;word-break:break-word}.card-title{padding:16px 16px 6px;margin:0;font-size:14px;color:#222;fill:#222;font-weight:400}.card-title a{line-height:1}.card.border-card{border:1px solid #ddd}.card.drag-card{border:1px solid #ddd;border-color:#ddd;background-color:#fff;border-radius:4px;display:flex;padding:0 0 0 40px;margin:12px 0;position:relative}html.dark-mode .card.drag-card{border-color:#000}html.dark-mode .card.drag-card{background-color:#333}.card.drag-card .drag-card-action{cursor:pointer}.card.drag-card .handle,.card.drag-card .drag-card-action{display:flex;align-items:center;text-align:center;justify-content:center;width:28px;flex-grow:0;padding:0 6px}.card.drag-card .handle:hover,.card.drag-card .drag-card-action:hover{background-color:#eee}.card.drag-card .handle .svg-icon,.card.drag-card .drag-card-action .svg-icon{margin-inline-end:0px}.card.drag-card .outline input{margin:12px 0;width:100%}.card.drag-card .outline{position:relative}.card.drag-card .handle{background-color:#eee;left:0;position:absolute;top:0;bottom:0}html.dark-mode .card.drag-card .handle{background-color:#2d2d2d}.card.drag-card>div{padding:0 12px;max-width:80%;flex:1}.grid-card{display:flex;flex-direction:column;border:1px solid #ddd;border-color:#ddd;margin-bottom:24px;border-radius:4px;overflow:hidden;min-width:100px;color:#444;transition:border-color ease-in-out 120ms,box-shadow ease-in-out 120ms}html.dark-mode .grid-card{border-color:#000}.grid-card:hover{color:#444;text-decoration:none;box-shadow:0 1px 6px -1px rgba(0,0,0,.1)}html.dark-mode .grid-card:hover{box-shadow:0 1px 6px -1px rgba(0,0,0,.5)}.grid-card h2{width:100%;font-size:1.5em;margin:0 0 10px}.grid-card p{font-size:.7rem;margin:0;line-height:1.6em}.grid-card .grid-card-content{flex:1;border-top:0;border-bottom-width:2px}.grid-card .grid-card-content,.grid-card .grid-card-footer{padding:24px}.grid-card .grid-card-content+.grid-card-footer{padding-top:0}.book-grid-item .grid-card-footer p.small{font-size:.8em;margin:0}.content-wrap.card{padding:16px 48px;margin-inline-start:auto;margin-inline-end:auto;margin-bottom:24px;overflow:initial;min-height:60vh}.content-wrap.card.auto-height{min-height:0}.content-wrap.card.fill-width{width:100%}@media screen and (max-width: 1400px){.content-wrap.card{padding:16px 32px}}@media screen and (max-width: 880px){.content-wrap.card{padding:16px 24px}}@media screen and (max-width: 600px){.content-wrap.card{padding:16px 16px}}.outline-hover{border:1px solid transparent !important}.outline-hover:hover{border:1px solid rgba(0,0,0,.1) !important}.fade-in-when-active{opacity:.6;transition:opacity ease-in-out 120ms}.fade-in-when-active:hover,.fade-in-when-active:focus-within{opacity:1}.tag-item{display:inline-flex;margin-bottom:6px;margin-inline-end:6px;border-radius:4px;border:1px solid;overflow:hidden;font-size:.85em;border-color:#ccc}html.dark-mode .tag-item{border-color:#666}.tag-item a,.tag-item span,.tag-item a:hover,.tag-item a:active{padding:4px 8px;color:rgba(0,0,0,.6);transition:background-color ease-in-out 80ms;text-decoration:none}html.dark-mode .tag-item a,html.dark-mode .tag-item span,html.dark-mode .tag-item a:hover,html.dark-mode .tag-item a:active{color:rgba(255,255,255,.8)}.tag-item a:hover{background-color:rgba(255,255,255,.7)}html.dark-mode .tag-item a:hover{background-color:rgba(255,255,255,.3)}.tag-item svg{fill:rgba(0,0,0,.5)}html.dark-mode .tag-item svg{fill:rgba(255,255,255,.5)}.tag-item .tag-value{border-inline-start:1px solid;border-color:#ddd;background-color:rgba(255,255,255,.5)}html.dark-mode .tag-item .tag-value{border-color:#666}html.dark-mode .tag-item .tag-value{background-color:rgba(255,255,255,.2)}.tag-list div:last-child .tag-item{margin-bottom:0}.api-method{font-size:.75rem;background-color:#888;padding:6px;line-height:1.3;opacity:.7;vertical-align:top;border-radius:3px;color:#fff;display:inline-block;min-width:60px;text-align:center;font-weight:bold}.api-method[data-method=GET]{background-color:#077b70}.api-method[data-method=POST]{background-color:#cf4d03}.api-method[data-method=PUT]{background-color:#0288d1}.api-method[data-method=DELETE]{background-color:#ab0f0e}.sticky-sidebar{position:sticky;top:16px;max-height:calc(100vh - 16px);overflow-y:auto}button{background-color:transparent;border:0;font-size:100%}.button{text-decoration:none;font-size:.85rem;line-height:1.4em;padding:7.8px 16px;margin-top:6px;margin-bottom:6px;display:inline-block;font-weight:400;outline:0;border-radius:2px;cursor:pointer;transition:background-color ease-in-out 120ms,filter ease-in-out 120ms,box-shadow ease-in-out 120ms;box-shadow:none;background-color:var(--color-primary);color:#fff;text-transform:uppercase;border:1px solid var(--color-primary);vertical-align:top;filter:none}html.dark-mode .button{filter:saturate(0.8) brightness(0.8)}.button:hover,.button:focus,.button:active{background-color:var(--color-primary);text-decoration:none;color:#fff}.button:hover{box-shadow:0 0 4px 1px #ccc;filter:brightness(110%)}html.dark-mode .button:hover{box-shadow:0 0 4px 1px rgba(0,0,0,.5)}.button:focus{outline:1px dotted currentColor;outline-offset:-6px;box-shadow:none;filter:brightness(90%)}.button:active{outline:0}.button.outline{background-color:transparent;color:#666;fill:currentColor;border:1px solid #ccc}html.dark-mode .button.outline{color:#aaa}.button.outline:hover,.button.outline:focus,.button.outline:active{border:1px solid #ccc;box-shadow:none;background-color:#f2f2f2;background-color:#f2f2f2;filter:none}html.dark-mode .button.outline:hover,html.dark-mode .button.outline:focus,html.dark-mode .button.outline:active{background-color:#555}.button.outline:active{border-color:#bbb;background-color:#ddd;color:#666;box-shadow:inset 0 0 2px rgba(0,0,0,.1)}.button+.button{margin-inline-start:12px}.button.small{font-size:.75rem;padding:7.2px 12px}.text-button{cursor:pointer;background-color:transparent;padding:0;margin:0;border:none;user-select:none;font-size:.75rem;line-height:1.4em;color:var(--color-primary)}html.dark-mode .text-button{color:#aaa}.text-button:active{outline:0}.text-button:hover{text-decoration:none}.text-button:hover,.text-button:focus{color:var(--color-primary);fill:var(--color-primary)}.button.block{width:100%;text-align:start;display:block}.button.icon .svg-icon{margin-inline-end:0}.button.svg{display:flex;align-items:center;padding:12px 16px;padding-bottom:10px;width:100%}.button.svg svg{display:inline-block;width:24px;height:24px;bottom:auto;margin-inline-end:16px}.button[disabled]{background-color:#bbb;cursor:default;border-color:#ccc}.button[disabled]:hover{background-color:#bbb;cursor:default;box-shadow:none}table{min-width:100px;max-width:100%}table thead{background-color:#f8f8f8;font-weight:500}html.dark-mode table thead{background-color:#333}table td,table th{min-width:10px;padding:6px 8px;border:1px solid #ddd;overflow:auto;line-height:1.2;word-break:break-word}table td p,table th p{margin:0}table.table{width:100%}table.table tr td,table.table tr th{border-bottom:1px solid rgba(0,0,0,.05)}table.table th,table.table td{text-align:start;border:none;padding:12px 12px;vertical-align:middle;margin:0;overflow:visible}table.table th{font-weight:bold}table.table tr:hover{background-color:#eee}html.dark-mode table.table tr:hover{background-color:#333}table.table .text-right{text-align:end}table.table .text-center{text-align:center}table.table td.actions{overflow:visible}table.table a{display:inline-block}table.no-style td{border:0;padding:0}table.list-table{margin:-6px}table.list-table td{border:0;vertical-align:middle;padding:6px}.input-base,input[type=text],input[type=number],input[type=email],input[type=date],input[type=search],input[type=url],input[type=color],input[type=password],select,textarea,.fake-input{border-radius:3px;border:1px solid #d4d4d4;background-color:#fff;border-color:#d4d4d4;color:#666;display:inline-block;font-size:14px;padding:9px;width:250px;max-width:100%}html.dark-mode .input-base,html.dark-mode input[type=text],html.dark-mode input[type=number],html.dark-mode input[type=email],html.dark-mode input[type=date],html.dark-mode input[type=search],html.dark-mode input[type=url],html.dark-mode input[type=color],html.dark-mode input[type=password],html.dark-mode select,html.dark-mode textarea,html.dark-mode .fake-input{background-color:#333}html.dark-mode .input-base,html.dark-mode input[type=text],html.dark-mode input[type=number],html.dark-mode input[type=email],html.dark-mode input[type=date],html.dark-mode input[type=search],html.dark-mode input[type=url],html.dark-mode input[type=color],html.dark-mode input[type=password],html.dark-mode select,html.dark-mode textarea,html.dark-mode .fake-input{border-color:#111}html.dark-mode .input-base,html.dark-mode input[type=text],html.dark-mode input[type=number],html.dark-mode input[type=email],html.dark-mode input[type=date],html.dark-mode input[type=search],html.dark-mode input[type=url],html.dark-mode input[type=color],html.dark-mode input[type=password],html.dark-mode select,html.dark-mode textarea,html.dark-mode .fake-input{color:#aaa}.input-base.neg,input.neg[type=text],input.neg[type=number],input.neg[type=email],input.neg[type=date],input.neg[type=search],input.neg[type=url],input.neg[type=color],input.neg[type=password],select.neg,textarea.neg,.neg.fake-input,.input-base.invalid,input.invalid[type=text],input.invalid[type=number],input.invalid[type=email],input.invalid[type=date],input.invalid[type=search],input.invalid[type=url],input.invalid[type=color],input.invalid[type=password],select.invalid,textarea.invalid,.invalid.fake-input{border:1px solid #ab0f0e}.input-base.pos,input.pos[type=text],input.pos[type=number],input.pos[type=email],input.pos[type=date],input.pos[type=search],input.pos[type=url],input.pos[type=color],input.pos[type=password],select.pos,textarea.pos,.pos.fake-input,.input-base.valid,input.valid[type=text],input.valid[type=number],input.valid[type=email],input.valid[type=date],input.valid[type=search],input.valid[type=url],input.valid[type=color],input.valid[type=password],select.valid,textarea.valid,.valid.fake-input{border:1px solid #0f7d15}.input-base.disabled,input.disabled[type=text],input.disabled[type=number],input.disabled[type=email],input.disabled[type=date],input.disabled[type=search],input.disabled[type=url],input.disabled[type=color],input.disabled[type=password],select.disabled,textarea.disabled,.disabled.fake-input,.input-base[disabled],input[disabled][type=text],input[disabled][type=number],input[disabled][type=email],input[disabled][type=date],input[disabled][type=search],input[disabled][type=url],input[disabled][type=color],input[disabled][type=password],select[disabled],textarea[disabled],[disabled].fake-input{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAHCAYAAADEUlfTAAAAMUlEQVQIW2NkwAGuXbv2nxGbHEhCS0uLEUMSJgHShCKJLIEiiS4Bl8QmAZbEJQGSBAC62BuJ+tt7zgAAAABJRU5ErkJggg==)}.input-base[readonly],input[readonly][type=text],input[readonly][type=number],input[readonly][type=email],input[readonly][type=date],input[readonly][type=search],input[readonly][type=url],input[readonly][type=color],input[readonly][type=password],select[readonly],textarea[readonly],[readonly].fake-input{background-color:#f8f8f8}.input-base:focus,input[type=text]:focus,input[type=number]:focus,input[type=email]:focus,input[type=date]:focus,input[type=search]:focus,input[type=url]:focus,input[type=color]:focus,input[type=password]:focus,select:focus,textarea:focus,.fake-input:focus{border-color:var(--color-primary);outline:1px solid var(--color-primary)}.fake-input{overflow:auto}#html-editor{display:none}#markdown-editor{position:relative;z-index:5}#markdown-editor #markdown-editor-input{font-style:normal;font-weight:400;padding:6px 16px;color:#444;border-radius:0;max-height:100%;flex:1;border:0;width:100%}#markdown-editor #markdown-editor-input:focus{outline:0}#markdown-editor .markdown-display,#markdown-editor .markdown-editor-wrap{flex:1;position:relative}#markdown-editor .markdown-editor-wrap{display:flex;flex-direction:column;border:1px solid #ddd;border-color:#ddd;width:50%;max-width:50%}html.dark-mode #markdown-editor .markdown-editor-wrap{border-color:#000}#markdown-editor.fullscreen{position:fixed;top:0;left:0;height:100%;z-index:2}@media screen and (max-width: 880px){#markdown-editor{flex-direction:column}#markdown-editor .markdown-editor-wrap{width:100%;max-width:100%;flex-grow:1}#markdown-editor .editor-toolbar{padding:0}#markdown-editor .editor-toolbar>*{padding:6px 12px}.editor-toolbar-label{float:none !important;border-bottom:1px solid #ddd;display:block}.markdown-editor-wrap:not(.active) .editor-toolbar+div,.markdown-editor-wrap:not(.active) .editor-toolbar .buttons,.markdown-editor-wrap:not(.active) .markdown-display{display:none}#markdown-editor .markdown-editor-wrap:not(.active){flex-grow:0;flex:none;min-height:0}}.markdown-display{margin-inline-start:-1px}.markdown-editor-display{background-color:#fff}.markdown-editor-display body{background-color:#fff;padding-inline-start:16px;padding-inline-end:16px}.markdown-editor-display [drawio-diagram]:hover{outline:2px solid var(--color-primary)}html.markdown-editor-display.dark-mode{background-color:#222}html.markdown-editor-display.dark-mode body{background-color:#222}.editor-toolbar{width:100%;padding:6px 16px;font-size:11px;line-height:1.6;border-bottom:1px solid #ddd;background-color:#eee;background-color:#eee;border-color:#ddd;flex:none}html.dark-mode .editor-toolbar{background-color:#111}html.dark-mode .editor-toolbar{border-color:#000}.editor-toolbar:after{content:"";display:block;clear:both}html.dark-mode .editor-toolbar button{color:#aaa}label{color:#666;display:block;line-height:1.4em;font-size:.94em;font-weight:400;padding-bottom:2px;margin-bottom:.2em}html.dark-mode label{color:#ddd}label.inline{display:inline-block}label.radio,label.checkbox{font-weight:400;user-select:none}label.radio input[type=radio],label.radio input[type=checkbox],label.checkbox input[type=radio],label.checkbox input[type=checkbox]{margin-inline-end:6px}label.inline.checkbox{margin-inline-end:16px}label+p.small{margin-bottom:.8em}table.form-table{max-width:100%}table.form-table td{overflow:hidden;padding:1.5px 0}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:url("data:image/svg+xml;utf8,");background-size:12px;background-position:calc(100% - 20px) 70%;background-repeat:no-repeat}input[type=date]{width:190px}input[type=color]{height:60px}input[type=color].small{height:42px;width:60px;padding:2px}.toggle-switch{user-select:none;display:inline-grid;grid-template-columns:28px 1fr;align-items:center;margin:16px 0}.toggle-switch .custom-checkbox{width:16px;height:16px;border-radius:2px;display:inline-block;border:2px solid currentColor;opacity:.6;overflow:hidden;fill:currentColor}.toggle-switch .custom-checkbox .svg-icon{width:100%;height:100%;margin:0;bottom:auto;top:-1.5px;left:0;transition:transform ease-in-out 120ms;transform:scale(0);transform-origin:center center}.toggle-switch input[type=checkbox]{display:none}.toggle-switch input[type=checkbox]:checked+.custom-checkbox .svg-icon{transform:scale(1)}.toggle-switch .custom-checkbox:hover{background-color:rgba(0,0,0,.05);opacity:.8}.toggle-switch-list .toggle-switch{margin:6px 0}.toggle-switch-list.compact .toggle-switch{margin:1px 0}.form-group{margin-bottom:12px}.setting-list>div{border-bottom:1px solid #ddd;padding:32px 0}.setting-list>div:last-child{border-bottom:none}.setting-list-label{color:#222;font-size:1rem}.setting-list-label+p.small{margin-bottom:0}.setting-list-label+.grid{margin-top:16px}.setting-list .grid input[type=text],.setting-list .grid input[type=email],.setting-list .grid input[type=password],.setting-list .grid select,.stretch-inputs input[type=text],.stretch-inputs input[type=email],.stretch-inputs input[type=password],.stretch-inputs select{width:100%}.simple-code-input{background-color:#f8f8f8;font-family:monospace;font-size:12px;min-height:100px;display:block;width:100%}.form-group div.text-pos,.form-group div.text-neg,.form-group p.text-post,.form-group p.text-neg{padding:6px 0}.form-group[collapsible]{padding:0 16px;border:1px solid #ddd;border-radius:4px}.form-group[collapsible] .collapse-title{margin-inline-start:-16px;margin-inline-end:-16px;padding:12px 16px;display:block;width:calc(100% + 32px);text-align:start}.form-group[collapsible] .collapse-title,.form-group[collapsible] .collapse-title label{cursor:pointer}.form-group[collapsible] .collapse-title label{padding-bottom:0;margin-bottom:0;color:inherit}.form-group[collapsible] .collapse-title label:before{display:inline-block;content:"▸";margin-inline-end:16px;transition:all ease-in-out 400ms;transform:rotate(0)}.form-group[collapsible] .collapse-content{display:none;padding-bottom:16px}.form-group[collapsible].open .collapse-title label:before{transform:rotate(90deg)}.inline-input-style,.description-input textarea,.title-input input[type=text]{display:block;width:100%;padding:12px}.title-input input[type=text]{margin-top:0;font-size:2em}.title-input.page-title{font-size:.8em;background-color:#fff}html.dark-mode .title-input.page-title{background-color:#333}.title-input.page-title .input{border:0;margin-bottom:-1px}.title-input.page-title input[type=text]{max-width:840px;margin:0 auto;border:none}.page-title input{display:block;width:100%;font-size:1.4em}.description-input textarea{font-size:14px;color:#666;width:100%}div[editor-type=markdown] .title-input.page-title input[type=text]{max-width:100%;border-radius:0}.search-box{max-width:100%;position:relative}.search-box button{background-color:transparent;border:none;color:#666;padding:0;cursor:pointer;position:absolute;left:8px;top:9px}html.dark-mode .search-box button{color:#aaa}html[dir=rtl] .search-box button{right:8px;left:auto}.search-box input{display:block;padding-inline-start:28px;width:300px;max-width:100%}.search-box.flexible input{width:100%}.search-box .search-box-cancel{left:auto;right:0}.outline>input{border:0;border-bottom:2px solid #ddd;border-radius:0}.outline>input:focus,.outline>input:active{border:0;border-bottom:2px solid #aaa;outline:0}.image-picker img{background-color:#bbb;max-width:100%}.custom-file-input{overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px;height:1px;border:0;clip:rect(0, 0, 0, 0)}.custom-file-input:focus+label{border-color:var(--color-primary);outline:1px solid var(--color-primary)}.anim.fadeIn{opacity:0;animation-name:fadeIn;animation-duration:180ms;animation-timing-function:ease-in-out;animation-fill-mode:forwards}@keyframes fadeIn{0%{opacity:0}100%{opacity:1}}.anim.searchResult{opacity:0;transform:translate3d(580px, 0, 0);animation-name:searchResult;animation-duration:220ms;animation-fill-mode:forwards;animation-timing-function:cubic-bezier(0.62, 0.28, 0.23, 0.99)}@keyframes searchResult{0%{opacity:0;transform:translate3d(400px, 0, 0)}100%{opacity:1;transform:translate3d(0, 0, 0)}}@keyframes loadingBob{0%{transform:translate3d(0, 0, 0)}30%{transform:translate3d(0, 0, 0)}50%{transform:translate3d(0, -10px, 0)}70%{transform:translate3d(0, 0, 0)}100%{transform:translate3d(0, 0, 0)}}@keyframes pointer{0%{transform:translate3d(0, 20px, 0) scale3d(0, 0, 0)}100%{transform:translate3d(0, 0, 0) scale3d(1, 1, 1)}}.anim.pointer{transform-origin:50% 100%;animation-name:pointer;animation-duration:180ms;animation-delay:0s;animation-timing-function:cubic-bezier(0.62, 0.28, 0.23, 0.99)}.mce-tinymce.mce-container.mce-fullscreen{position:fixed;top:0;height:100%;width:100%;max-width:100%;z-index:100}.mce-tinymce .mce-panel{background-color:#fff}html.dark-mode .mce-tinymce .mce-panel{background-color:#333}.mce-tinymce .mce-btn{background-color:#fff}html.dark-mode .mce-tinymce .mce-btn{background-color:#333}.mce-container-body.mce-flow-layout{text-align:center}@media screen and (max-width: 1000px){.mce-container-body.mce-flow-layout{overflow-x:scroll;white-space:nowrap}}.edit-area.flex>div>.mce-tinymce.mce-container.mce-panel{flex:1 1 auto;display:flex !important;flex-direction:column;align-items:stretch;margin:0 -1px}.edit-area.flex>div>.mce-tinymce.mce-container.mce-panel>.mce-container-body{flex:1 1 auto;display:flex !important;flex-direction:column;align-items:stretch}.edit-area.flex>div>.mce-tinymce.mce-container.mce-panel>.mce-container-body>.mce-toolbar-grp{flex:0 1 auto}.edit-area.flex>div>.mce-tinymce.mce-container.mce-panel>.mce-container-body>.mce-edit-area{flex:1 1 auto;display:flex !important;flex-direction:column;align-items:stretch;-webkit-overflow-scrolling:touch;overflow:auto}.edit-area.flex>div>.mce-tinymce.mce-container.mce-panel>.mce-container-body>.mce-edit-area iframe{flex:1;will-change:transform}.page-content.mce-content-body p{line-height:1.6}.page-content.mce-content-body{padding-block-start:1rem;padding-block-end:1rem;outline:none;display:block}.page-content.mce-content-body>:last-child{margin-bottom:3rem}.mce-colorbtn-trans{overflow:hidden}.mce-content-body .CodeMirrorContainer>.CodeMirror{pointer-events:none}.CodeMirror{font-family:monospace;height:300px;color:#000;direction:ltr}.CodeMirror-lines{padding:4px 0}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{padding:0 4px}.CodeMirror-scrollbar-filler,.CodeMirror-gutter-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-fat-cursor-mark{background-color:rgba(20,255,20,.5);-webkit-animation:blink 1.06s steps(1) infinite;-moz-animation:blink 1.06s steps(1) infinite;animation:blink 1.06s steps(1) infinite}.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-rulers{position:absolute;left:0;right:0;top:-50px;bottom:0;overflow:hidden}.CodeMirror-ruler{border-left:1px solid #ccc;top:0;bottom:0;position:absolute}.cm-s-default .cm-header{color:blue}.cm-s-default .cm-quote{color:#090}.cm-negative{color:#d44}.cm-positive{color:#292}.cm-header,.cm-strong{font-weight:bold}.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:blue}.cm-s-default .cm-variable-2{color:#05a}.cm-s-default .cm-variable-3,.cm-s-default .cm-type{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{color:#555}.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-s-default .cm-error{color:red}.cm-invalidchar{color:red}.CodeMirror-composing{border-bottom:2px solid}div.CodeMirror span.CodeMirror-matchingbracket{color:#0b0}div.CodeMirror span.CodeMirror-nonmatchingbracket{color:#a22}.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:-50px;margin-right:-50px;padding-bottom:50px;height:100%;outline:none;position:relative}.CodeMirror-sizer{position:relative;border-right:50px solid transparent}.CodeMirror-vscrollbar,.CodeMirror-hscrollbar,.CodeMirror-scrollbar-filler,.CodeMirror-gutter-filler{position:absolute;z-index:6;display:none;outline: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:-50px}.CodeMirror-gutter-wrapper{position:absolute;z-index:4;background:none !important;border:none !important}.CodeMirror-gutter-background{position:absolute;top:0;bottom:0;z-index:4}.CodeMirror-gutter-elt{position:absolute;cursor:default;z-index:4}.CodeMirror-gutter-wrapper ::selection{background-color:transparent}.CodeMirror-gutter-wrapper ::-moz-selection{background-color:transparent}.CodeMirror-lines{cursor:text;min-height:1px}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;border-width:0;background:transparent;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:contextual;font-variant-ligatures:contextual}.CodeMirror-wrap pre.CodeMirror-line,.CodeMirror-wrap pre.CodeMirror-line-like{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;padding:.1px}.CodeMirror-rtl pre{direction:rtl}.CodeMirror-code{outline:none}.CodeMirror-scroll,.CodeMirror-sizer,.CodeMirror-gutter,.CodeMirror-gutters,.CodeMirror-linenumber{-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;pointer-events:none}.CodeMirror-measure pre{position:static}div.CodeMirror-cursors{visibility:hidden;position:relative;z-index:3}div.CodeMirror-dragcursors{visibility:visible}.CodeMirror-focused div.CodeMirror-cursors{visibility:visible}.CodeMirror-selected{background:#d9d9d9}.CodeMirror-focused .CodeMirror-selected{background:#d7d4f0}.CodeMirror-crosshair{cursor:crosshair}.CodeMirror-line::selection,.CodeMirror-line>span::selection,.CodeMirror-line>span>span::selection{background:#d7d4f0}.CodeMirror-line::-moz-selection,.CodeMirror-line>span::-moz-selection,.CodeMirror-line>span>span::-moz-selection{background:#d7d4f0}.cm-searching{background-color:#ffa;background-color: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:none}.cm-s-darcula{font-family:Consolas,Menlo,Monaco,"Lucida Console","Liberation Mono","DejaVu Sans Mono","Bitstream Vera Sans Mono","Courier New",monospace,serif}.cm-s-darcula.CodeMirror{background:#2b2b2b;color:#a9b7c6}.cm-s-darcula span.cm-meta{color:#bbb529}.cm-s-darcula span.cm-number{color:#6897bb}.cm-s-darcula span.cm-keyword{color:#cc7832;line-height:1em;font-weight:bold}.cm-s-darcula span.cm-def{color:#a9b7c6;font-style:italic}.cm-s-darcula span.cm-variable{color:#a9b7c6}.cm-s-darcula span.cm-variable-2{color:#a9b7c6}.cm-s-darcula span.cm-variable-3{color:#9876aa}.cm-s-darcula span.cm-type{color:#abc;font-weight:bold}.cm-s-darcula span.cm-property{color:#ffc66d}.cm-s-darcula span.cm-operator{color:#a9b7c6}.cm-s-darcula span.cm-string{color:#6a8759}.cm-s-darcula span.cm-string-2{color:#6a8759}.cm-s-darcula span.cm-comment{color:#61a151;font-style:italic}.cm-s-darcula span.cm-link{color:#cc7832}.cm-s-darcula span.cm-atom{color:#cc7832}.cm-s-darcula span.cm-error{color:#bc3f3c}.cm-s-darcula span.cm-tag{color:#629755;font-weight:bold;font-style:italic;text-decoration:underline}.cm-s-darcula span.cm-attribute{color:#6897bb}.cm-s-darcula span.cm-qualifier{color:#6a8759}.cm-s-darcula span.cm-bracket{color:#a9b7c6}.cm-s-darcula span.cm-builtin{color:#ff9e59}.cm-s-darcula span.cm-special{color:#ff9e59}.cm-s-darcula span.cm-matchhighlight{color:#fff;background-color:rgba(50,89,48,.7);font-weight:normal}.cm-s-darcula span.cm-searching{color:#fff;background-color:rgba(61,115,59,.7);font-weight:normal}.cm-s-darcula .CodeMirror-cursor{border-left:1px solid #a9b7c6}.cm-s-darcula .CodeMirror-activeline-background{background:#323232}.cm-s-darcula .CodeMirror-gutters{background:#313335;border-right:1px solid #313335}.cm-s-darcula .CodeMirror-guttermarker{color:#ffee80}.cm-s-darcula .CodeMirror-guttermarker-subtle{color:#d0d0d0}.cm-s-darcula .CodeMirrir-linenumber{color:#606366}.cm-s-darcula .CodeMirror-matchingbracket{background-color:#3b514d;color:#ffef28 !important;font-weight:bold}.cm-s-darcula div.CodeMirror-selected{background:#214283}.CodeMirror-hints.darcula{font-family:Menlo,Monaco,Consolas,"Courier New",monospace;color:#9c9e9e;background-color:#3b3e3f !important}.CodeMirror-hints.darcula .CodeMirror-hint-active{background-color:#494d4e !important;color:#9c9e9e !important}.CodeMirror,.CodeMirror pre{font-size:12px}.CodeMirror{font-size:12px;height:auto;margin-bottom:24px;border:1px solid;border-color:#ddd}html.dark-mode .CodeMirror{border-color:#111}.CodeMirror pre::after{display:none}html.dark-mode .CodeMirror pre{background-color:transparent}.cm-s-mdn-like .CodeMirror-gutters{background:#f8f8f8;border-left:0;color:#333}.code-fill .CodeMirror{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;margin-bottom:0}.CodeMirror-copy{position:absolute;top:-1px;right:-1px;background-color:#eee;border:1px solid #ddd;background-color:#eee;border-color:#ddd;fill:#444;padding:6px;line-height:0;cursor:pointer;z-index:5;user-select:none;opacity:0;pointer-events:none}html.dark-mode .CodeMirror-copy{background-color:#333}html.dark-mode .CodeMirror-copy{border-color:#444}html.dark-mode .CodeMirror-copy{fill:#888}.CodeMirror-copy svg{transition:all ease-in 240ms;transform:translateY(0)}.CodeMirror-copy.success{background-color:#14ab1d}.CodeMirror-copy.success svg{fill:#fff;transform:translateY(-3px)}.CodeMirror:hover .CodeMirror-copy{user-select:all;opacity:1;pointer-events:all}[notification]{position:fixed;top:0;right:0;margin:32px;padding:16px 24px;background-color:#fff;background-color:#fff;border-radius:4px;border-inline-start:6px solid currentColor;box-shadow:0 1px 6px 1px rgba(22,22,22,.2);z-index:999999;cursor:pointer;max-width:360px;transition:transform ease-in-out 280ms;transform:translateX(580px);display:grid;grid-template-columns:42px 1fr 12px;color:#444;font-weight:700}html.dark-mode [notification]{background-color:#444}[notification] span,[notification] svg{vertical-align:middle;justify-self:center;align-self:center}[notification] svg{width:2.8rem;height:2.8rem;padding-inline-end:12px;fill:currentColor}[notification] .dismiss{margin-top:-8px}[notification] .dismiss svg{height:1rem;color:#444}html.dark-mode [notification] .dismiss svg{color:#888}[notification] span{vertical-align:middle;line-height:1.3}html.dark-mode [notification] span{color:#bbb}[notification].pos{color:#0f7d15}[notification].neg{color:#ab0f0e}[notification].warning{color:#cf4d03}[notification].showing{transform:translateX(0)}[notification].showing:hover{transform:translate3d(0, -2px, 0)}[chapter-toggle]{cursor:pointer;margin:0;transition:all ease-in-out 180ms;user-select:none}[chapter-toggle] svg[data-icon=caret-right]{margin-inline-end:0;font-size:1rem;transition:all ease-in-out 180ms;transform:rotate(0deg);transform-origin:50% 50%}[chapter-toggle].open svg[data-icon=caret-right]{transform:rotate(90deg)}[chapter-toggle] svg[data-icon=caret-right]+*{margin-inline-start:6px}[overlay],.popup-background{background-color:rgba(0,0,0,.333);position:fixed;z-index:95536;width:100%;height:100%;min-width:100%;min-height:100%;top:0;left:0;right:0;bottom:0;align-items:center;justify-content:center;display:none}html.dark-mode [overlay],html.dark-mode .popup-background{background-color:rgba(0,0,0,.6)}.popup-body-wrap{display:flex}.popup-body{background-color:#fff;max-height:90%;max-width:1200px;width:90%;height:auto;margin:2% auto;border-radius:4px;box-shadow:0 0 15px 0 rgba(0,0,0,.3);overflow:hidden;z-index:999;display:flex;flex-direction:column}html.dark-mode .popup-body{background-color:#333}.popup-body.small{margin:2% auto;width:800px;max-width:90%}.popup-body:before{display:flex;align-self:flex-start}.popup-body .popup-content{overflow-y:auto}.popup-body:focus{outline:0}.popup-footer button,.popup-header-close{position:absolute;top:0;right:0;margin:0;height:40px;border-radius:0;box-shadow:none}.popup-footer button:active,.popup-header-close:active{outline:0}.popup-header-close{background-color:transparent;border:0;color:#fff;font-size:16px;padding:0 16px}.popup-header,.popup-footer{display:block !important;position:relative;height:40px;flex:none !important}.popup-header .popup-title,.popup-footer .popup-title{color:#fff;padding:8px 16px}body.flexbox-support #entity-selector-wrap .popup-body .form-group{height:444px;min-height:444px}#entity-selector-wrap .popup-body .form-group{margin:0}.popup-body .entity-selector-container{flex:1}.image-manager-body{min-height:70vh}.dropzone-container{position:relative;background-color:#eee;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3E%3Cpath fill='%23a9a9a9' fill-opacity='0.52' d='M1 3h1v1H1V3zm2-2h1v1H3V1z'%3E%3C/path%3E%3C/svg%3E")}html.dark-mode .dropzone-container{background-color:#222}.image-manager-list .image{display:block;position:relative;border-radius:0;float:left;margin:0;cursor:pointer;width:16.6666666667%;height:auto;border-color:#ddd;box-shadow:0 0 0 0 rgba(0,0,0,0);transition:all cubic-bezier(0.4, 0, 1, 1) 160ms;overflow:hidden}html.dark-mode .image-manager-list .image{border-color:#000}.image-manager-list .image.selected{transform:scale3d(0.92, 0.92, 0.92);outline:currentColor 2px solid}.image-manager-list .image img{width:100%;max-width:100%;display:block}.image-manager-list .image .image-meta{position:absolute;width:100%;bottom:0;left:0;color:#eee;background-color:rgba(0,0,0,.4);font-size:10px;padding:3px 4px}.image-manager-list .image .image-meta span{display:block}@media screen and (max-width: 1100px){.image-manager-list .image{width:25%}}@media screen and (max-width: 880px){.image-manager-list .image .image-meta{display:none}}.image-manager .load-more{display:block;text-align:center;background-color:#eee;padding:12px 16px;color:#aaa;clear:both;font-size:20px;cursor:pointer;font-style:italic}html.dark-mode .image-manager .load-more{background-color:#444}.image-manager .loading-container{text-align:center}.image-manager-sidebar{width:300px;overflow-y:auto;overflow-x:hidden;border-inline-start:1px solid #ddd;border-color:#ddd}html.dark-mode .image-manager-sidebar{border-color:#000}.image-manager-sidebar .inner{min-height:auto;padding:16px}.image-manager-sidebar img{max-width:100%;max-height:180px;display:block;margin:0 auto 16px auto;box-shadow:0 1px 21px 1px rgba(76,76,76,.3)}.image-manager-sidebar .image-manager-viewer{height:196px;display:flex;align-items:center;justify-content:center}.image-manager-sidebar .image-manager-viewer a{display:inline-block}.image-manager-sidebar .dropzone-container{border-bottom:1px solid #ddd;border-color:#ddd}html.dark-mode .image-manager-sidebar .dropzone-container{border-color:#000}.image-manager-list{overflow-y:scroll;flex:1}.image-manager-content{display:flex;flex-direction:column;flex:1}.image-manager-content .container{width:100%}.image-manager-content .full-tab{text-align:center}.image-manager .corner-button{margin:0;border-radius:0;padding:16px}.dz-message{font-size:1em;line-height:2.85;font-style:italic;color:#888;text-align:center;cursor:pointer;padding:24px 16px;transition:all ease-in-out 120ms}.dz-drag-hover .dz-message{background-color:#107ed2;color:#eee}@keyframes passing-through{0%{opacity:0;transform:translateY(40px)}30%,70%{opacity:1;transform:translateY(0px)}100%{opacity:0;transform:translateY(-40px)}}@keyframes slide-in{0%{opacity:0;transform:translateY(40px)}30%{opacity:1;transform:translateY(0px)}}@keyframes pulse{0%{transform:scale(1)}10%{transform:scale(1.1)}20%{transform:scale(1)}}.dropzone,.dropzone *{box-sizing:border-box}.dz-preview{position:relative;display:inline-block;vertical-align:top;margin:12px;min-height:80px}.dz-preview:hover{z-index:1000}.dz-preview:hover .dz-details{opacity:1}.dz-preview.dz-file-preview .dz-image{border-radius:4px;background:#e9e9e9}.dz-preview.dz-file-preview .dz-details{opacity:1}.dz-preview.dz-image-preview{background:#fff}.dz-preview.dz-image-preview .dz-details{transition:opacity .2s linear}.dz-preview .dz-remove{font-size:13px;text-align:center;display:block;cursor:pointer;border:none;margin-top:3px}.dz-preview .dz-remove:hover{text-decoration:underline}.dz-preview:hover .dz-details{opacity:1}.dz-preview .dz-details{z-index:20;position:absolute;top:0;left:0;opacity:0;font-size:10px;min-width:100%;max-width:100%;padding:6px 3px;text-align:center;color:rgba(0,0,0,.9);line-height:150%}.dz-preview .dz-details .dz-size{margin-bottom:.5em;font-size:12px}.dz-preview .dz-details .dz-filename{white-space:nowrap}.dz-preview .dz-details .dz-filename:hover span{border:1px solid rgba(200,200,200,.8);background-color:rgba(255,255,255,.8)}.dz-preview .dz-details .dz-filename:not(:hover){overflow:hidden;text-overflow:ellipsis}.dz-preview .dz-details .dz-filename:not(:hover) span{border:1px solid transparent}.dz-preview .dz-details .dz-filename span{background-color:rgba(255,255,255,.4);padding:0 .4em;border-radius:3px}.dz-preview:hover .dz-image img{filter:blur(8px)}.dz-preview .dz-image{border-radius:4px;overflow:hidden;width:80px;height:80px;position:relative;display:block;z-index:10}.dz-preview .dz-image img{display:block}.dz-preview.dz-success .dz-success-mark{animation:passing-through 3s cubic-bezier(0.77, 0, 0.175, 1)}.dz-preview.dz-error .dz-error-mark{opacity:1;animation:slide-in 3s cubic-bezier(0.77, 0, 0.175, 1)}.dz-preview .dz-success-mark,.dz-preview .dz-error-mark{pointer-events:none;opacity:0;z-index:1001;position:absolute;display:block;top:50%;left:50%;margin-inline-start:-27px;margin-top:-35px}.dz-preview .dz-success-mark svg,.dz-preview .dz-error-mark svg{display:block;width:54px;height:54px}.dz-preview.dz-processing .dz-progress{opacity:1;transition:all .2s linear}.dz-preview.dz-complete .dz-progress{opacity:0;transition:opacity .4s ease-in}.dz-preview:not(.dz-processing) .dz-progress{animation:pulse 6s ease infinite}.dz-preview .dz-progress{opacity:1;z-index:1000;pointer-events:none;position:absolute;height:16px;left:50%;top:50%;margin-top:-8px;width:80px;margin-inline-start:-40px;background:rgba(255,255,255,.9);transform:scale(1);border-radius:8px;overflow:hidden}.dz-preview .dz-progress .dz-upload{background:#333;background:linear-gradient(to bottom, #666, #444);position:absolute;top:0;left:0;bottom:0;width:0;transition:width 300ms ease-in-out}.dz-preview.dz-error .dz-error-message{display:block}.dz-preview.dz-error .dz-image:hover~.dz-error-message,.dz-preview.dz-error .dz-details:hover~.dz-error-message{opacity:1;pointer-events:auto}.dz-preview .dz-error-message{pointer-events:none;z-index:1000;position:absolute;display:block;display:none;opacity:0;transition:opacity .3s ease;border-radius:4px;font-size:12px;line-height:1.2;top:88px;left:-12px;width:160px;background:#ab0f0e;padding:6px;color:#fff}.dz-preview .dz-error-message:after{content:"";position:absolute;top:-6px;left:44px;width:0;height:0;border-inline-start:6px solid transparent;border-inline-end:6px solid transparent;border-bottom:6px solid #ab0f0e}.tab-container .nav-tabs{text-align:start;border-bottom:1px solid #ddd;border-color:#ddd;margin-bottom:16px}html.dark-mode .tab-container .nav-tabs{border-color:#444}.tab-container .nav-tabs .tab-item{padding:12px;color:#666}html.dark-mode .tab-container .nav-tabs .tab-item{color:#999}.tab-container .nav-tabs .tab-item.selected{border-bottom-width:3px}.nav-tabs{text-align:center}.nav-tabs a,.nav-tabs .tab-item{padding:16px;display:inline-block;color:#666;cursor:pointer;border-right:1px solid rgba(0,0,0,.1);border-bottom:2px solid transparent}html.dark-mode .nav-tabs a,html.dark-mode .nav-tabs .tab-item{color:#999}.nav-tabs a.selected,.nav-tabs .tab-item.selected{border-bottom:2px solid var(--color-primary)}.nav-tabs a:last-child,.nav-tabs .tab-item:last-child{border-right:0}.image-picker .none{display:none}.code-editor .CodeMirror{height:400px}.code-editor .lang-options{max-width:540px;margin-bottom:12px}.code-editor .lang-options a{margin-inline-end:6px;text-decoration:underline}@media screen and (max-width: 880px){.code-editor .lang-options{max-width:100%}.code-editor .CodeMirror{height:200px}}.comment-box{border-radius:4px;border:1px solid #ddd;border-color:#ddd;background-color:#fff}html.dark-mode .comment-box{border-color:#000}html.dark-mode .comment-box{background-color:#222}.comment-box .content{font-size:.666em}.comment-box .content p,.comment-box .content ul,.comment-box .content ol{font-size:14px;margin:.5em 0}.comment-box .actions{opacity:0;transition:opacity ease-in-out 120ms}.comment-box:hover .actions,.comment-box:focus-within .actions{opacity:1}.comment-box .header .meta img,.comment-box .header .meta a,.comment-box .header .meta span{display:inline-block;vertical-align:top}.comment-box .header .meta a,.comment-box .header .meta span{padding:3px 0 3px 0;line-height:1.6}.comment-box .header .meta a{color:#666}.comment-box .header .meta span{padding-inline-start:3px}.comment-box .header .text-muted{color:#999}#tag-manager .drag-card{max-width:500px}.permissions-table [permissions-table-toggle-all-in-row]{display:none}.permissions-table tr:hover [permissions-table-toggle-all-in-row]{display:inline}.template-item{cursor:pointer;position:relative}.template-item:hover,.template-item .template-item-actions button:hover{background-color:#f2f2f2}.template-item .template-item-actions{position:absolute;top:0;right:0;width:50px;height:100%;display:flex;flex-direction:column;border-inline-start:1px solid #ddd}.template-item .template-item-actions button{cursor:pointer;flex:1;background:#fff;border:0;border-top:1px solid #ddd}.template-item .template-item-actions button:first-child{border-top:0}.dropdown-search-dropdown{box-shadow:0 1px 3px 1px rgba(76,76,76,.26);overflow:hidden;min-height:100px;width:240px;display:none;position:absolute;z-index:80;right:-16px}html[dir=rtl] .dropdown-search-dropdown{right:auto;left:-16px}.dropdown-search-dropdown .dropdown-search-search .svg-icon{position:absolute;left:12px;top:11px;fill:#888;pointer-events:none}html[dir=rtl] .dropdown-search-dropdown .dropdown-search-search .svg-icon{right:12px;left:auto}.dropdown-search-dropdown .dropdown-search-list{max-height:400px;overflow-y:scroll;text-align:start}.dropdown-search-dropdown .dropdown-search-item{padding:12px 16px}.dropdown-search-dropdown .dropdown-search-item:hover,.dropdown-search-dropdown .dropdown-search-item:focus{background-color:#f2f2f2;text-decoration:none}.dropdown-search-dropdown input{padding-inline-start:32px;border-radius:0;border:0;border-bottom:1px solid #ddd}@media screen and (max-width: 880px){.dropdown-search-dropdown{position:fixed;right:auto;left:16px}.dropdown-search-dropdown .dropdown-search-list{max-height:240px}}.custom-select-input{max-width:280px;border:1px solid #d4d4d4;border-radius:3px}header .grid{grid-template-columns:minmax(max-content, 2fr) 1fr minmax(max-content, 2fr)}@media screen and (max-width: 1000px){header .grid{grid-template-columns:1fr;grid-row-gap:0}}header{position:relative;display:block;z-index:11;top:0;color:#fafafa;border-bottom:1px solid #ddd;box-shadow:0 1px 6px -1px rgba(0,0,0,.1);padding:3px 0;border-bottom-color:#ddd}html.dark-mode header{border-bottom-color:#000}html.dark-mode header{filter:saturate(0.8) brightness(0.8)}header .links{display:inline-block;vertical-align:top}header .links a{display:inline-block;padding:16px;color:#fff}header .dropdown-container{padding-inline-start:16px;padding-inline-end:0}header .avatar,header .user-name{display:inline-block}header .avatar{width:30px;height:30px}header .user-name{vertical-align:top;position:relative;display:inline-block;cursor:pointer}header .user-name>*{vertical-align:top}header .user-name>span{padding-inline-start:6px;display:inline-block;padding-top:3px}header .user-name>svg{padding-top:4px;font-size:18px}@media screen and (min-width: 1000px)and (max-width: 1100px){header .user-name{padding-inline-start:6px}header .user-name .name{display:none}}.header *,.primary-background *{outline-color:#fff}header .search-box{display:inline-block;margin-top:10px}header .search-box input{background-color:rgba(0,0,0,.2);border:1px solid rgba(255,255,255,.2);border-radius:40px;color:#eee;z-index:2;padding-inline-start:40px}header .search-box input:focus{outline:none;border:1px solid rgba(255,255,255,.6)}header .search-box button{z-index:1;left:16px;color:rgba(255,255,255,.8)}html.dark-mode header .search-box button{color:#aaa}html[dir=rtl] header .search-box button{left:auto;right:16px}header .search-box button svg{margin-block-end:0}header .search-box ::-webkit-input-placeholder{color:#ddd}header .search-box ::-moz-placeholder{color:#ddd}@media screen and (min-width: 1000px)and (max-width: 1100px){header .search-box{max-width:200px}}.logo{display:inline-block}.logo:hover{color:#fff;text-decoration:none}.logo-text{display:inline-block;font-size:1.8em;color:#fff;font-weight:400;padding-block-start:14px;padding-block-end:14px;padding-inline-start:0;padding-inline-end:24px;vertical-align:top;line-height:1}.logo-image{margin-block-start:6px;margin-block-end:6px;margin-inline-start:0;margin-inline-end:12px;vertical-align:top;height:43px}.mobile-menu-toggle{color:#fff;fill:#fff;font-size:2em;border:2px solid rgba(255,255,255,.8);border-radius:4px;padding:0 6px;position:absolute;right:16px;top:13px;line-height:1;cursor:pointer;user-select:none}.mobile-menu-toggle svg{margin:0;bottom:-2px}html[dir=rtl] .mobile-menu-toggle{left:16px;right:auto}@media screen and (max-width: 1000px){header .header-links{background-color:#fff;display:none;z-index:10;right:16px;border-radius:4px;overflow:hidden;position:absolute;box-shadow:0 2px 2px 1px rgba(0,0,0,.13);margin-top:-6px}html.dark-mode header .header-links{background-color:#333}header .header-links.show{display:block}header .links a,header .dropdown-container ul li a,header .dropdown-container ul li button{text-align:start;display:block;padding:12px 16px;color:#444;color:#444}html.dark-mode header .links a,html.dark-mode header .dropdown-container ul li a,html.dark-mode header .dropdown-container ul li button{color:#eee}header .links a svg,header .dropdown-container ul li a svg,header .dropdown-container ul li button svg{margin-inline-end:12px}header .links a:hover,header .dropdown-container ul li a:hover,header .dropdown-container ul li button:hover{background-color:#eee;color:#000;text-decoration:none}html.dark-mode header .links a:hover,html.dark-mode header .dropdown-container ul li a:hover,html.dark-mode header .dropdown-container ul li button:hover{background-color:#333}html.dark-mode header .links a:hover,html.dark-mode header .dropdown-container ul li a:hover,html.dark-mode header .dropdown-container ul li button:hover{color:#fff}header .links a:focus,header .dropdown-container ul li a:focus,header .dropdown-container ul li button:focus{background-color:#eee;outline-color:var(--color-primary);color:var(--color-primary)}html.dark-mode header .links a:focus,html.dark-mode header .dropdown-container ul li a:focus,html.dark-mode header .dropdown-container ul li button:focus{background-color:#333}header .dropdown-container{display:block;padding-inline-start:0}header .links{display:block}header .dropdown-container ul{display:block !important;position:relative;background-color:transparent;border:0;padding:0;margin:0;box-shadow:none}}.tri-layout-mobile-tabs{position:sticky;top:0;z-index:5;background-color:#fff;border-bottom:1px solid #ddd;border-bottom-color:#ddd;box-shadow:0 1px 6px -1px rgba(0,0,0,.1)}html.dark-mode .tri-layout-mobile-tabs{border-bottom-color:#333}.tri-layout-mobile-tab{text-align:center;border-bottom:3px solid #bbb;cursor:pointer;margin:0;background-color:#fff;border-bottom-color:#bbb}html.dark-mode .tri-layout-mobile-tab{background-color:#222}html.dark-mode .tri-layout-mobile-tab{border-bottom-color:#333}.tri-layout-mobile-tab:first-child{border-inline-end:1px solid #ddd;border-inline-end-color:#ddd}html.dark-mode .tri-layout-mobile-tab:first-child{border-inline-end-color:#000}.tri-layout-mobile-tab[aria-selected=true]{border-bottom-color:currentColor !important}.breadcrumbs{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;flex-wrap:wrap;opacity:.7}.breadcrumbs .icon-list-item{width:auto;padding-top:6px;padding-bottom:6px}.breadcrumbs .separator{display:inline-block;fill:#aaa;font-size:1.6em;line-height:.8;margin:-2px 0 0}.breadcrumbs:hover,.breadcrumbs:focus-within{opacity:1}@media screen and (max-width: 1000px){.breadcrumbs .icon-list-item{padding:6px}.breadcrumbs .icon-list-item>span+span{display:none}.breadcrumbs .icon-list-item>span:first-child{margin-inline-end:0}}.dropdown-search{position:relative}.dropdown-search .dropdown-search-toggle{padding:6px;border:1px solid transparent;border-radius:4px}.dropdown-search .dropdown-search-toggle:hover{border-color:#ddd}.dropdown-search .svg-icon{margin-inline-end:0}.dropdown-search-toggle.compact{padding:3px 6px}.dropdown-search-toggle.compact .avatar{height:22px;width:22px}.faded a,.faded button,.faded span,.faded span>div{color:#666;fill:#666}.faded .text-button{opacity:.5;transition:all ease-in-out 120ms}.faded .text-button:hover{opacity:1;text-decoration:none}.faded span.faded-text{display:inline-block;padding:12px}.action-buttons .text-button{display:inline-block;padding:6px 12px}.action-buttons .text-button:last-child{padding-inline-end:0}.action-buttons .text-button:first-child{padding-inline-start:0}.action-buttons .dropdown-container:last-child a{padding-inline-end:0;padding-inline-start:12px}.action-buttons{text-align:end}.action-buttons.text-left{text-align:start}.action-buttons.text-left .text-button{padding-inline-end:16px;padding-inline-start:0}.action-buttons.text-center{text-align:center}@media screen and (max-width: 880px){.action-buttons .text-button{padding:6px 6px}.action-buttons .dropdown-container:last-child a{padding-inline-start:6px}}footer{flex-shrink:0;padding:1rem 1rem 2rem 1rem;text-align:center}footer a{margin:0 .5em}body.flexbox footer{display:none}.book-contents .entity-list-item .icon{width:4px;border-radius:1px;justify-self:stretch;align-self:stretch;height:auto;margin-inline-end:24px}.book-contents .entity-list-item .icon:after{opacity:.5}.book-contents .entity-list-item .icon svg{display:none}.book-contents .entity-list-item p{margin-bottom:0}.book-contents .entity-list-item .inner-page{padding-top:0;padding-bottom:0}.entity-list-item+.chapter-expansion{display:flex;padding:0 16px 16px 16px;align-items:center;border:0;width:100%;position:relative}.entity-list-item+.chapter-expansion>.icon{width:4px;height:auto;border-radius:0 0 1px 1px;align-self:stretch;flex-shrink:0}.entity-list-item+.chapter-expansion>.icon:before{position:absolute;top:0;left:0;width:100%;height:1px;background-color:currentColor;content:"";opacity:.5}.entity-list-item+.chapter-expansion>.icon:after{opacity:.5}.entity-list-item+.chapter-expansion .icon svg{display:none}.entity-list-item+.chapter-expansion>.content{flex:1}.entity-list-item+.chapter-expansion .chapter-expansion-toggle{border-radius:0 4px 4px 0;padding:6px 16px;width:100%;text-align:start}.entity-list-item+.chapter-expansion .chapter-expansion-toggle:hover{background-color:rgba(0,0,0,.06)}.entity-list-item.has-children{padding-bottom:0}.entity-list-item.has-children>.icon{border-radius:4px 4px 0 0}.inset-list{display:none}.inset-list .entity-list-item-name{font-size:1rem}.inset-list .entity-list-item-children{padding-top:0;padding-bottom:0}.sidebar-page-nav{list-style:none;margin-block-start:12px;margin-block-end:16px;margin-inline-start:6px;margin-inline-end:0;position:relative}.sidebar-page-nav:after{content:"";display:block;position:absolute;left:0;background-color:rgba(0,0,0,.2);width:2px;top:5px;bottom:5px;z-index:0}html[dir=rtl] .sidebar-page-nav:after{left:auto;right:0}html.dark-mode .sidebar-page-nav:after{background-color:rgba(255,255,255,.2)}.sidebar-page-nav li{margin-bottom:4px;font-size:.95em;position:relative}.sidebar-page-nav .h1{padding-inline-start:16px}.sidebar-page-nav .h2{padding-inline-start:24px}.sidebar-page-nav .h3{padding-inline-start:32px}.sidebar-page-nav .h4{padding-inline-start:40px}.sidebar-page-nav .h5{padding-inline-start:48px}.sidebar-page-nav .h6{padding-inline-start:56px}.sidebar-page-nav .current-heading{font-weight:bold}.sidebar-page-nav li:not(.current-heading) .sidebar-page-nav-bullet{background-color:#bbb !important}html.dark-mode .sidebar-page-nav li:not(.current-heading) .sidebar-page-nav-bullet{background-color:#666 !important}.sidebar-page-nav .sidebar-page-nav-bullet{width:6px;height:6px;position:absolute;left:-2px;top:30%;border-radius:50%;box-shadow:0 0 0 6px #f2f2f2;box-shadow:0 0 0 6px #f2f2f2;z-index:1}html.dark-mode .sidebar-page-nav .sidebar-page-nav-bullet{box-shadow:0 0 0 6px #111}html[dir=rtl] .sidebar-page-nav .sidebar-page-nav-bullet{left:auto;right:-2px}.book-tree .sidebar-page-list{list-style:none;margin-block-start:6px;margin-block-end:0;margin-inline-start:-12px;margin-inline-end:-12px;padding-inline-start:0;padding-inline-end:0;position:relative}.book-tree .sidebar-page-list:after,.book-tree .sidebar-page-list .sub-menu:after{content:"";display:block;position:absolute;left:16px;top:1rem;bottom:1rem;border-inline-start:4px solid rgba(0,0,0,.1);z-index:0}html[dir=rtl] .book-tree .sidebar-page-list:after,html[dir=rtl] .book-tree .sidebar-page-list .sub-menu:after{left:auto;right:16px}.book-tree .sidebar-page-list ul{list-style:none;padding-inline-start:1rem;padding-inline-end:0}.book-tree .sidebar-page-list .entity-list-item{padding-top:3px;padding-bottom:3px;background-clip:content-box;border-radius:0 3px 3px 0}.book-tree .sidebar-page-list .entity-list-item .content{padding-top:6px;padding-bottom:6px;max-width:calc(100% - 20px)}.book-tree .sidebar-page-list .entity-list-item.selected{background-color:rgba(0,0,0,.08)}.book-tree .sidebar-page-list .entity-list-item.no-hover{margin-top:-6px;padding-inline-end:0}.book-tree .sidebar-page-list .entity-list-item-name{font-size:1em;margin:0}.book-tree .sidebar-page-list .chapter-child-menu{font-size:.8rem;margin-top:-0.2rem;margin-inline-start:-1rem}.book-tree .sidebar-page-list [chapter-toggle]{padding-inline-start:.7rem;padding-bottom:.2rem}.book-tree .sidebar-page-list .entity-list-item .icon{z-index:2;width:4px;height:auto;align-self:stretch;flex-shrink:0;border-radius:1px;opacity:.6}.book-tree .sidebar-page-list .entity-list-item .icon:after{opacity:1}.book-tree .sidebar-page-list .entity-list-item .icon svg{display:none}.chapter-child-menu ul.sub-menu{display:none;padding-inline-start:0;position:relative}.chapter-child-menu [chapter-toggle].open+.sub-menu{display:block}.sortable-page-list,.sortable-page-list ul{list-style:none}.sort-box{margin-bottom:16px;padding:16px 32px;position:relative}.sort-box::before{pointer-events:none;content:"";border-radius:4px;opacity:.5;border:2px solid var(--color-book);display:block;top:0;bottom:0;left:0;right:0;position:absolute}.sort-box-options{display:flex;flex-wrap:wrap;justify-content:space-between}.sort-box-options .button{margin-inline-start:0}.sortable-page-list{margin-inline-start:0;padding:0}.sortable-page-list .entity-list-item>span:first-child{align-self:flex-start}.sortable-page-list .sortable-selected .entity-list-item,.sortable-page-list .sortable-selected .entity-list-item:hover{outline:1px dotted var(--color-primary);background-color:var(--color-primary-light) !important}.sortable-page-list .entity-list-item>div{display:block;flex:1}.sortable-page-list>ul{margin-inline-start:0}.sortable-page-list ul{margin-bottom:16px;margin-top:0;padding-inline-start:16px}.sortable-page-list li{border:1px solid #ddd;margin-top:-1px;min-height:38px}.sortable-page-list li.text-page,.sortable-page-list li.text-chapter{border-inline-start:2px solid currentColor}.sortable-page-list li:first-child{margin-top:6px}.sortable-page-list li.placeholder{position:relative}.sortable-page-list li.placeholder:before{position:absolute}.activity-list-item{padding:12px 0;display:grid;grid-template-columns:min-content 1fr;grid-column-gap:16px;font-size:.9em}.card .activity-list-item{padding:12px 16px}.user-list-item{display:inline-grid;padding:12px;grid-template-columns:min-content 1fr;grid-column-gap:16px;font-size:.9em;align-items:center}.user-list-item>div:first-child{line-height:0}ul.pagination{display:inline-block;list-style:none;margin:16px 0;padding-inline-start:1px}ul.pagination li{float:left}ul.pagination li:first-child a,ul.pagination li:first-child span{border-radius:3px 0 0 3px}ul.pagination li:last-child a,ul.pagination li:last-child span{border-radius:0 3px 3px 0}ul.pagination a,ul.pagination span{display:block;padding:3px 12px;border:1px solid #ccc;margin-inline-start:-1px;user-select:none;color:#555;border-color:#ccc}html.dark-mode ul.pagination a,html.dark-mode ul.pagination span{color:#eee}html.dark-mode ul.pagination a,html.dark-mode ul.pagination span{border-color:#666}ul.pagination li.disabled{cursor:not-allowed}ul.pagination li.active span{color:#111;background-color:rgba(0,0,0,.05)}html.dark-mode ul.pagination li.active span{color:#eee}html.dark-mode ul.pagination li.active span{background-color:rgba(0,0,0,.5)}.compact ul.pagination{margin:0}.entity-list,.icon-list{margin:0 -16px}.entity-list h4,.icon-list h4{margin:0}.entity-list hr,.icon-list hr{margin:0}.entity-list .text-small.text-muted,.icon-list .text-small.text-muted{color:#aaa;font-size:.75em;margin-top:6px}.entity-list .text-muted p.text-muted,.icon-list .text-muted p.text-muted{margin-top:0}.entity-list .page.draft .text-page,.icon-list .page.draft .text-page{color:var(--color-page-draft);fill:var(--color-page-draft)}.entity-list>.dropdown-container,.icon-list>.dropdown-container{display:block}.icon-list hr{margin:12px 16px;max-width:140px;opacity:.25;height:1.1px}.icon-list hr+hr,.icon-list hr:first-child,.icon-list hr:last-child{display:none}.entity-list-item,.icon-list-item{padding:12px 16px;display:flex;align-items:center;background-color:transparent;border:0;width:100%;position:relative;word-break:break-word}.entity-list-item h4 a,.icon-list-item h4 a{color:#666}.entity-list-item>span:first-child,.icon-list-item>span:first-child{margin-inline-end:16px;flex-basis:1.88em;flex:none}.entity-list-item>span:last-child,.icon-list-item>span:last-child{flex:1;text-align:start}.entity-list-item>.content,.icon-list-item>.content{min-width:0}.entity-list-item:not(.no-hover),.icon-list-item:not(.no-hover){cursor:pointer}.entity-list-item:not(.no-hover):hover,.icon-list-item:not(.no-hover):hover{text-decoration:none;background-color:rgba(0,0,0,.1);border-radius:4px}.entity-list-item.outline-hover:hover,.icon-list-item.outline-hover:hover{background-color:transparent}.entity-list-item:focus,.icon-list-item:focus{background-color:#eee;outline:1px dotted #666;outline-offset:-2px}html.dark-mode .entity-list-item:focus,html.dark-mode .icon-list-item:focus{background-color:#222}.entity-list-item-path-sep{display:inline-block;vertical-align:top;position:relative;top:1px}.entity-list-item-path-sep svg{margin-inline-end:0}.card .entity-list-item:not(.no-hover):hover{background-color:#f2f2f2}html.dark-mode .card .entity-list-item:not(.no-hover):hover{background-color:#2d2d2d}.card .entity-list-item .entity-list-item:hover{background-color:#eee}.entity-list-item-children{padding:16px}.entity-list-item-children>div{overflow:hidden;padding:6px 0;margin-top:-6px}.entity-list-item-children .entity-chip{text-overflow:ellipsis;height:2.5em;overflow:hidden;text-align:start;display:block;white-space:nowrap}.entity-list-item-image{align-self:stretch;width:140px;flex:none;background-size:cover;background-position:50% 50%;border-radius:3px;position:relative;margin-inline-end:24px}.entity-list-item-image.entity-list-item-image-wide{width:220px}.entity-list-item-image .svg-icon{color:#fff;font-size:1.66rem;margin-inline-end:0;position:absolute;bottom:6px;left:6px}html.dark-mode .entity-list-item-image .svg-icon{color:rgba(255,255,255,.6)}@media screen and (max-width: 880px){.entity-list-item-image{width:80px}}.chapter>.entity-list-item-image{width:60px}.entity-list.compact{font-size:8.4px}.entity-list.compact h4,.entity-list.compact a{line-height:1.2}.entity-list.compact .entity-item-snippet{display:none}.entity-list.compact .entity-list-item p{font-size:11.2px;padding-top:6px}.entity-list.compact p{margin:0}.entity-list.compact>p.empty-text{display:block;font-size:14px}.entity-list.compact hr{margin:0}@media screen and (max-width: 880px){.entity-list.compact h4{font-size:1.666em}}.entity-item-tags{font-size:.75rem;opacity:1}.entity-item-tags .primary-background-light{background:transparent}.entity-item-tags .tag-name{background-color:rgba(0,0,0,.05)}.dropdown-container{display:inline-block;vertical-align:top;position:relative}.dropdown-menu{display:none;position:absolute;z-index:999;top:0;list-style:none;right:0;margin:16px 0;background-color:#fff;box-shadow:0 2px 4px rgba(0,0,0,.18);border-radius:1px;min-width:180px;padding:6px 0;color:#555;fill:currentColor;text-align:start !important;max-height:500px;overflow-y:auto}html.dark-mode .dropdown-menu{background-color:#333}html.dark-mode .dropdown-menu{color:#eee}.dropdown-menu.wide{min-width:220px}.dropdown-menu .text-muted{color:#999;fill:#999}.dropdown-menu li.active a{font-weight:600}.dropdown-menu a,.dropdown-menu button{display:block;padding:6px 16px;color:#555;fill:currentColor;white-space:nowrap;line-height:1.6;cursor:pointer}html.dark-mode .dropdown-menu a,html.dark-mode .dropdown-menu button{color:#eee}.dropdown-menu a:hover,.dropdown-menu a:focus,.dropdown-menu button:hover,.dropdown-menu button:focus{text-decoration:none;background-color:var(--color-primary-light);color:var(--color-primary)}.dropdown-menu a:focus,.dropdown-menu button:focus{outline:1px solid var(--color-primary);outline-offset:-2px}.dropdown-menu a svg,.dropdown-menu button svg{margin-inline-end:12px;display:inline-block;width:16px}.dropdown-menu button{width:100%;text-align:start}.dropdown-menu li.border-bottom{border-bottom:1px solid #ddd}.dropdown-menu li hr{margin:6px 0}.featured-image-container{position:relative;overflow:hidden;min-height:140px;background-size:cover;background-position:50% 50%;transition:opacity ease-in-out 240ms}.featured-image-container a{display:block}.featured-image-container img{display:block;width:100%;max-width:100%;height:auto}.featured-image-container-wrap{position:relative}.featured-image-container-wrap .svg-icon{color:#fff;font-size:2rem;margin-inline-end:0;position:absolute;bottom:10px;left:6px}html.dark-mode .featured-image-container-wrap .svg-icon{color:rgba(255,255,255,.6)}.grid-card:hover .featured-image-container{opacity:.5}.action-link{background:transparent;border:none;color:currentColor;padding:16px 0}.active-link-list a{display:inline-block;padding:12px}.active-link-list a:not(.active){color:#444}html.dark-mode .active-link-list a:not(.active){color:#666}.active-link-list a:hover{background-color:rgba(0,0,0,.05);border-radius:3px;text-decoration:none}html.dark-mode .active-link-list a:hover{background-color:rgba(255,255,255,.05)}.page-editor{display:flex;flex-direction:column;align-items:stretch;overflow:hidden}.page-editor .edit-area{flex:1;flex-direction:column;z-index:10}.page-editor .mce-tinymce{box-shadow:none}.page-editor .mce-top-part::before{box-shadow:none}body.mce-fullscreen .page-editor .edit-area,body.markdown-fullscreen .page-editor .edit-area{z-index:12}body.mce-fullscreen .page-editor,body.mce-fullscreen .flex-fill,body.markdown-fullscreen .page-editor,body.markdown-fullscreen .flex-fill{overflow:visible}@media screen and (max-width: 600px){.page-edit-toolbar{overflow-x:scroll;overflow-y:visible}.page-edit-toolbar .grid.third{display:block;white-space:nowrap}.page-edit-toolbar .grid.third>div{display:inline-block}}.page-save-mobile-button{position:fixed;z-index:30;border-radius:50%;width:56px;height:56px;font-size:24px;right:16px;bottom:12px;box-shadow:0 2px 2px 1px rgba(0,0,0,.13);background-color:currentColor;text-align:center}.page-save-mobile-button svg{fill:#fff;margin-inline-end:0}.draft-notification{pointer-events:none;transform:scale(0);transition:transform ease-in-out 120ms;transform-origin:50% 50%}.draft-notification.visible{transform:scale(1)}.page-style.editor{padding:0 !important}.page-content{width:100%;max-width:840px;margin:0 auto;overflow-wrap:break-word}.page-content .align-left{text-align:left}.page-content img.align-left,.page-content table.align-left{float:left !important;margin:6px 16px 16px 0}.page-content .align-right{text-align:right !important}.page-content img.align-right,.page-content table.align-right{float:right !important;margin:6px 0 6px 12px}.page-content .align-center{text-align:center}.page-content img.align-center{display:block}.page-content img.align-center,.page-content table.align-center{margin-left:auto;margin-right:auto}.page-content img{max-width:100%;height:auto}.page-content h1,.page-content h2,.page-content h3,.page-content h4,.page-content h5,.page-content h6,.page-content pre{clear:left}.page-content hr{clear:both;margin:16px 0}.page-content table{hyphens:auto;table-layout:fixed;max-width:100%;height:auto !important}.page-content ins,.page-content del{text-decoration:none}.page-content ins{background:#dbffdb}.page-content del{background:#ffecec}.page-content.page-revision pre code{white-space:pre-wrap}.pointer-container{position:relative;display:none;left:0;z-index:10}.pointer{border:1px solid #ccc;border-color:#ccc;display:flex;align-items:center;justify-items:center;padding:12px 12px;border-radius:4px;box-shadow:0 0 12px 1px rgba(0,0,0,.1);position:absolute;top:-60px;background-color:#fff;width:275px;z-index:55}html.dark-mode .pointer{border-color:#000}html.dark-mode .pointer{background-color:#333}.pointer.is-page-editable{width:328px}.pointer:before{position:absolute;left:50%;bottom:-9px;width:16px;height:16px;margin-inline-start:-8px;content:"";display:block;transform:rotate(45deg);transform-origin:50% 50%;border-block-end:1px solid #ccc;border-inline-end:1px solid #ccc;z-index:56;background-color:#fff;border-color:#ccc}html.dark-mode .pointer:before{background-color:#333}html.dark-mode .pointer:before{border-color:#000}.pointer input,.pointer button,.pointer a{position:relative;border-radius:0;height:28px;font-size:12px;vertical-align:top;padding:5px 16px}.pointer input{background-color:#fff;border:1px solid #ddd;border-color:#ddd;color:#666;width:172px;z-index:40;padding:5px 10px}html.dark-mode .pointer input{border-color:#000}.pointer span.icon{fill:#444;cursor:pointer;user-select:none;display:inline-block;line-height:1}.pointer .input-group .button{line-height:1;margin:0 0 0 -4px;box-shadow:none}.pointer a.button{margin:0}.pointer .svg-icon{width:1.2em;height:1.2em}.pointer .button{border-color:#ddd}html.dark-mode .pointer .button{border-color:#000}.floating-toolbox{border:1px solid #ddd;background-color:#fff;border-color:#ddd;right:64px;width:48px;overflow:hidden;align-items:stretch;flex-direction:row;display:flex;transition:width ease-in-out 180ms;margin-top:-1px;min-height:0}html.dark-mode .floating-toolbox{background-color:#222}html.dark-mode .floating-toolbox{border-color:#000}.floating-toolbox.open{width:480px}.floating-toolbox [toolbox-toggle] svg{transition:transform ease-in-out 180ms}.floating-toolbox [toolbox-toggle]{transition:background-color ease-in-out 180ms}.floating-toolbox.open [toolbox-toggle]{background-color:rgba(255,0,0,.29)}.floating-toolbox.open [toolbox-toggle] svg{transform:rotate(180deg)}.floating-toolbox>div{flex:1;position:relative}.floating-toolbox .tabs{display:block;border-inline-end:1px solid #ddd;border-color:#ddd;width:48px;flex:0 1 auto}html.dark-mode .floating-toolbox .tabs{border-color:#000}.floating-toolbox .tabs svg{padding:0;margin:0}.floating-toolbox .tabs>button{color:rgba(0,0,0,.5);display:block;cursor:pointer;padding:12px 16px;font-size:16px;line-height:1.6;border-bottom:1px solid rgba(255,255,255,.3)}html.dark-mode .floating-toolbox .tabs>button{color:rgba(255,255,255,.5)}.floating-toolbox.open .tabs>button.active{color:#444;background-color:rgba(0,0,0,.1)}html.dark-mode .floating-toolbox.open .tabs>button.active{color:#eee}.floating-toolbox div[toolbox-tab-content]{padding-bottom:45px;display:flex;flex:1;flex-direction:column;min-height:0;overflow-y:scroll}.floating-toolbox h4{font-size:24px;margin:16px 0 0 0;padding:0 24px 12px 24px}.floating-toolbox .tags input{max-width:100%;width:100%;min-width:50px}.floating-toolbox .tags td,.floating-toolbox .inline-start-table>div>div>div{padding-inline-end:12px;padding-top:12px;position:relative}.floating-toolbox .handle{user-select:none;cursor:move;fill:#999}.floating-toolbox form{display:flex;flex:1;flex-direction:column;overflow-y:scroll}.floating-toolbox table td,.floating-toolbox table th{overflow:visible}[toolbox-tab-content]{display:none}.suggestion-box{top:auto;margin:-4px 0 0;right:auto;left:0;padding:0}.suggestion-box li{display:block;border-bottom:1px solid #ddd}.suggestion-box li:last-child{border-bottom:0}.comments-container h5{color:#888;font-weight:normal;margin-top:.5em}.comment-editor .CodeMirror,.comment-editor .CodeMirror-scroll{min-height:175px}.mce-floatpanel[aria-label="Insert/edit media"] .mce-open{display:none}.entity-list-item>span:first-child,.icon-list-item>span:first-child,.chapter-expansion>.icon{font-size:.8rem;width:1.88em;height:1.88em;display:flex;align-items:center;justify-content:center;text-align:center;border-radius:1em;position:relative;overflow:hidden}.entity-list-item>span:first-child svg,.icon-list-item>span:first-child svg,.chapter-expansion>.icon svg{margin:0;bottom:0}.entity-list-item>span:first-child:after,.icon-list-item>span:first-child:after,.chapter-expansion>.icon:after{content:"";position:absolute;background-color:currentColor;opacity:.2;left:0;top:0;width:100%;height:100%}.entity-chip{display:inline-block;align-items:center;justify-content:center;text-align:center;font-size:.9em;border-radius:3px;position:relative;overflow:hidden;padding:6px 12px;fill:currentColor;opacity:.85;transition:opacity ease-in-out 120ms}.entity-chip:after{content:"";position:absolute;background-color:currentColor;opacity:.15;left:0;top:0;width:100%;height:100%}.entity-chip:hover{text-decoration:none;opacity:1}.dragged{position:absolute;opacity:.5;z-index:2000}body.dragging,body.dragging *{cursor:move !important}.avatar{border-radius:100%;background-color:#eee;width:30px;height:30px}html.dark-mode .avatar{background-color:#000}.avatar.med{width:40px;height:40px}.avatar.large{width:80px;height:80px}.avatar.huge{width:120px;height:120px}.avatar.square{border-radius:3px}html.dark-mode .avatar[src$="user_avatar.png"]{filter:invert(1)}.loading-container{position:relative;display:block;margin:32px auto}.loading-container>div{width:10px;height:10px;border-radius:10px;display:inline-block;vertical-align:top;transform:translate3d(-10px, 0, 0);margin-top:6px;animation-name:loadingBob;animation-duration:1.4s;animation-iteration-count:infinite;animation-timing-function:cubic-bezier(0.62, 0.28, 0.23, 0.99);margin-inline-end:4px;background-color:var(--color-page);animation-delay:.3s}.loading-container>div:first-child{left:-16px;background-color:var(--color-book);animation-delay:0s}.loading-container>div:last-of-type{left:16px;background-color:var(--color-chapter);animation-delay:.6s}.loading-container>span{margin-inline-start:12px;font-style:italic;color:#888;vertical-align:top}[back-to-top]{background-color:var(--color-primary);position:fixed;bottom:16px;right:24px;padding:5px 7px;cursor:pointer;color:#fff;fill:#fff;width:40px;height:40px;border-radius:40px;transition:all ease-in-out 180ms;opacity:0;z-index:999;overflow:hidden}[back-to-top] svg{width:26.6666666667px;height:26.6666666667px;margin-inline-end:4px}[back-to-top]:hover{width:136px;opacity:1 !important}[back-to-top] .inner{width:136px}[back-to-top] span{position:relative;vertical-align:top;line-height:2}.skip-to-content-link{position:fixed;top:-48px;left:0;background-color:#fff;z-index:15;border-radius:0 4px 4px 0;display:block;box-shadow:0 0 4px 1px rgba(0,0,0,.5);font-weight:bold}.skip-to-content-link:focus{top:32px;outline-offset:-10px;outline:2px dotted var(--color-primary)}.contained-search-box{display:flex;height:38px}.contained-search-box input,.contained-search-box button{border-radius:0;border:1px solid #ddd;border-color:#ddd;margin-inline-start:-1px}html.dark-mode .contained-search-box input,html.dark-mode .contained-search-box button{border-color:#000}.contained-search-box input{flex:5;padding:6px 12px}.contained-search-box input:focus,.contained-search-box input:active{outline:0}.contained-search-box button{width:60px}.contained-search-box button i{padding:0}.contained-search-box button.cancel.active{background-color:#ab0f0e;color:#eee}.contained-search-box svg{margin:0}.entity-selector{border:1px solid #ddd;border-color:#ddd;border-radius:3px;overflow:hidden;font-size:.8em}html.dark-mode .entity-selector{border-color:#111}.entity-selector input[type=text]{width:100%;display:block;border-radius:0;border:0;border-bottom:1px solid #ddd;font-size:16px;padding:12px 16px}.entity-selector .entity-list{overflow-y:scroll;height:400px;background-color:#eee;margin-inline-end:0;margin-inline-start:0}html.dark-mode .entity-selector .entity-list{background-color:#222}.entity-selector .entity-list-item{background-color:#fff}html.dark-mode .entity-selector .entity-list-item{background-color:#222}.entity-selector .entity-list-item p{margin-bottom:0}.entity-selector .entity-list-item:focus{outline:2px dotted var(--color-primary);outline-offset:-4px}.entity-selector .entity-list-item.selected{background-color:rgba(0,0,0,.05)}html.dark-mode .entity-selector .entity-list-item.selected{background-color:rgba(255,255,255,.05)}.entity-selector .loading{height:400px;padding-top:24px}.entity-selector .entity-selector-add button{margin:0;display:block;width:100%;border:0;border-top:1px solid #ddd}.entity-selector.compact{font-size:10px}.entity-selector.compact .entity-item-snippet{display:none}.scroll-box{max-height:250px;overflow-y:scroll;border:1px solid #ddd;border-radius:3px}.scroll-box .scroll-box-item{padding:6px 16px;border-bottom:1px solid #ddd;border-top:1px solid #ddd;margin-top:-1px}.scroll-box .scroll-box-item:last-child{border-bottom:0}.scroll-box[data-instruction]:before{content:attr(data-instruction);padding:6px 16px;border-bottom:1px solid #ddd;display:block;font-size:.75rem;color:#666}.fullscreen{border:0;position:fixed;top:0;left:0;right:0;bottom:0;width:100%;height:100%;z-index:150}.list-sort-container{display:inline-block}.list-sort-container form{display:inline-block}.list-sort-container .list-sort{display:inline-grid;margin-inline-start:12px;grid-template-columns:minmax(120px, max-content) 40px;font-size:.9rem;border:2px solid #ddd;border-color:#ddd;border-radius:4px}html.dark-mode .list-sort-container .list-sort{border-color:#444}.list-sort-container .list-sort-label{font-weight:bold;display:inline-block;color:#555}html.dark-mode .list-sort-container .list-sort-label{color:#888}.list-sort-container .list-sort-type{text-align:start}.list-sort-container .list-sort-type,.list-sort-container .list-sort-dir{padding:6px 12px;cursor:pointer}.list-sort-container .list-sort-dir{border-inline-start:2px solid #ddd;color:#888;border-color:#ddd}html.dark-mode .list-sort-container .list-sort-dir{border-color:#444}.list-sort-container .list-sort-dir .svg-icon{transition:transform ease-in-out 120ms}.list-sort-container .list-sort-dir:hover .svg-icon{transform:rotate(180deg)}table.table .table-user-item{display:grid;grid-template-columns:42px 1fr;align-items:center}table.table .table-entity-item{display:grid;grid-template-columns:36px 1fr;align-items:center}/*# sourceMappingURL=styles.css.map */
diff --git a/version b/version
index 65b60d94a..3034b3415 100644
--- a/version
+++ b/version
@@ -1 +1 @@
-v21.05.3
+v21.05.4