diff --git a/application/Module.php b/application/Module.php index 1fbad38d36..708b424e3f 100644 --- a/application/Module.php +++ b/application/Module.php @@ -19,7 +19,7 @@ class Module extends AbstractModule /** * This Omeka version. */ - const VERSION = '4.1.0-alpha6'; + const VERSION = '4.1.0-alpha7'; /** * The vocabulary IRI used to define Omeka application data. diff --git a/application/asset/css/page-blocks.css b/application/asset/css/page-blocks.css index 327bb7be72..bf1c8b4fb6 100644 --- a/application/asset/css/page-blocks.css +++ b/application/asset/css/page-blocks.css @@ -1 +1 @@ -.item-showcase{margin:1rem 0;border-top:1px solid #dfdfdf;border-bottom:1px solid #dfdfdf;padding:calc(1rem - 1px) 0 0;overflow:hidden;text-align:center;clear:both;display:flex;flex-wrap:wrap;justify-content:center}.item.resource .caption{font-size:.875rem;line-height:1.5rem}.item.resource .caption *{margin:0 0 1rem 0}.item.resource .caption>*:last-child{margin-bottom:0}.item-showcase .resource.item{vertical-align:top;margin-bottom:1rem}.item-showcase .resource.item img{margin-right:.5rem;max-width:100%}.item-showcase .resource.item:only-child img{margin:0 auto}.item-showcase .resource.item:not(:only-child){width:25%;clear:none;padding:0 .5rem}.item-showcase .resource.item:not(:only-child) h3{clear:left;font-size:1rem;line-height:1.5rem;margin:.5rem 0 0}.item-showcase .resource.item:not(:only-child) img{max-height:7rem;width:auto;float:none;margin-right:0;vertical-align:top}.right,.left{overflow:hidden;max-width:33.33%}.left .item.resource,.right .item.resource{margin:0 0 1rem 0}.left .item.resource:first-of-type,.right .item.resource:first-of-type{padding-top:calc(1rem - 1px);margin-top:0}.left .item.resource:last-of-type,.right .item.resource:last-of-type{padding-bottom:-1px}.left .item.resource .media-render a,.right .item.resource .media-render a{display:block}.left .item.resource audio,.left .item.resource canvas,.left .item.resource video,.left .item.resource progress,.left .item.resource img,.right .item.resource audio,.right .item.resource canvas,.right .item.resource video,.right .item.resource progress,.right .item.resource img{max-width:100%;vertical-align:bottom;margin-bottom:.5rem}.file{border-top:1px solid #dfdfdf;border-bottom:1px solid #dfdfdf;margin-top:1rem;margin-bottom:1rem}.left.file,.left.assets{float:left;clear:left;margin:0 1rem 1rem 0}.right.file,.right.assets{float:right;clear:right;margin:0 0 1rem 1rem}.center.file,.center.assets{display:flex;justify-content:center;flex-wrap:wrap;text-align:center}.center.file .item,.center.assets .item{width:100%}.left .item.resource>a:first-child,.right .item.resource>a:first-child{vertical-align:top}.medium .item.resource>h3,.square .item.resource>h3{font-size:16px;line-height:1.5rem}.left .item.resource>h3,.right .item.resource>h3{margin:0}.left .item.resource+p,.right .item.resource+p{margin-top:0}.break{width:100%;clear:both;border-bottom:1px solid #dfdfdf;padding-bottom:-1px;margin:1rem 0}.break.transparent{border-color:transparent}.break.opaque{border-color:#dfdfdf}.preview-block{margin:1rem 0;overflow:hidden;width:100%;clear:both}.toc-block>ul{margin:1rem 0;list-style-type:none;border-left:5px solid #dfdfdf}.toc-block>ul>li{margin-bottom:.5rem}.toc-block>ul>li>a{font-weight:bold}.toc-block ul ul{list-style-type:none;padding-left:0}.toc-block ul ul ul{padding-left:1.25em}.toc-block ul ul li:before{content:"—";color:#dfdfdf}.item-with-metadata{width:100%;overflow:hidden;margin:1rem 0}.item-with-metadata .show.resource{margin:2rem 0}.list-of-sites .site-list .site{margin-bottom:.5rem;overflow:auto}.list-of-sites .site-list .site-link{display:inline-block;font-size:1.25rem;margin-bottom:.25rem}.list-of-sites .site-list .site-summary{margin:0 0 .25rem 0;line-height:20px}.list-of-sites .site-list .site-thumbnail-image{max-width:25%;float:left;margin-right:1rem}.assets .asset,.assets .asset img{max-width:100%;height:auto}.assets .asset{margin-bottom:1rem}.assets .link-title{display:block;font-size:1.25rem;font-weight:bold}.page-date-time{margin:1rem 0}.page-date-time .property{font-weight:bold}.page-date-time .property:after{content:": "}.page-date-time>div,.page-date-time .property,.page-date-time .value{display:inline-block;margin:0} \ No newline at end of file +.item-showcase{margin:1rem 0;border-top:1px solid #dfdfdf;border-bottom:1px solid #dfdfdf;padding:calc(1rem - 1px) 0 0;overflow:hidden;text-align:center;clear:both;display:flex;flex-wrap:wrap;justify-content:center}.item.resource .caption{font-size:.875rem;line-height:1.5rem}.item.resource .caption *{margin:0 0 1rem 0}.item.resource .caption>*:last-child{margin-bottom:0}.item-showcase .resource.item{vertical-align:top;margin-bottom:1rem}.item-showcase .resource.item img{margin-right:.5rem;max-width:100%}.item-showcase .resource.item:only-child img{margin:0 auto}.item-showcase .resource.item:not(:only-child){width:25%;clear:none;padding:0 .5rem}.item-showcase .resource.item:not(:only-child) h3{clear:left;font-size:1rem;line-height:1.5rem;margin:.5rem 0 0}.item-showcase .resource.item:not(:only-child) img{max-height:7rem;width:auto;float:none;margin-right:0;vertical-align:top}.file{border-top:1px solid #dfdfdf;border-bottom:1px solid #dfdfdf;margin-top:1rem;margin-bottom:1rem}.medium .item.resource>h3,.square .item.resource>h3{font-size:16px;line-height:1.5rem}.break{width:100%;clear:both;border-bottom:1px solid #dfdfdf;padding-bottom:-1px;margin:1rem 0}.break.transparent{border-color:transparent}.break.opaque{border-color:#dfdfdf}.preview-block{margin:1rem 0;overflow:hidden;width:100%;clear:both}.toc-block>ul{margin:1rem 0;list-style-type:none;border-left:5px solid #dfdfdf}.toc-block>ul>li{margin-bottom:.5rem}.toc-block>ul>li>a{font-weight:bold}.toc-block ul ul{list-style-type:none;padding-left:0}.toc-block ul ul ul{padding-left:1.25em}.toc-block ul ul li:before{content:"—";color:#dfdfdf}.item-with-metadata{width:100%;overflow:hidden;margin:1rem 0}.item-with-metadata .show.resource{margin:2rem 0}.list-of-sites .site-list .site{margin-bottom:.5rem;overflow:auto}.list-of-sites .site-list .site-link{display:inline-block;font-size:1.25rem;margin-bottom:.25rem}.list-of-sites .site-list .site-summary{margin:0 0 .25rem 0;line-height:20px}.list-of-sites .site-list .site-thumbnail-image{max-width:25%;float:left;margin-right:1rem}.assets .asset,.assets .asset img{max-width:100%;height:auto}.assets .asset{margin-bottom:1rem}.assets .link-title{display:block;font-size:1.25rem;font-weight:bold}.page-date-time{margin:1rem 0}.page-date-time .property{font-weight:bold}.page-date-time .property:after{content:": "}.page-date-time>div,.page-date-time .property,.page-date-time .value{display:inline-block;margin:0} \ No newline at end of file diff --git a/application/asset/css/page-grid.css b/application/asset/css/page-grid.css new file mode 100644 index 0000000000..92dd34d207 --- /dev/null +++ b/application/asset/css/page-grid.css @@ -0,0 +1 @@ +.page-layout-grid{display:grid;gap:10px}.page-layout-grid>div{min-height:50px}@media screen and (max-width: 896px){.page-layout-grid{display:block}}.block-layout-background-position-y-top{background-position-y:top}.block-layout-background-position-y-center{background-position-y:center}.block-layout-background-position-y-bottom{background-position-y:bottom}.block-layout-background-position-x-left{background-position-x:left}.block-layout-background-position-x-center{background-position-x:center}.block-layout-background-position-x-right{background-position-x:right}.page-layout-normal .block-layout-alignment-right,.page-layout-normal .block-layout-alignment-left{overflow:hidden;max-width:33.33%}.block-layout-alignment-left .item.resource,.block-layout-alignment-right .item.resource{margin:0 0 1rem 0}.block-layout-alignment-left .item.resource:first-of-type,.block-layout-alignment-right .item.resource:first-of-type{padding-top:calc(1rem - 1px);margin-top:0}.block-layout-alignment-left .item.resource:last-of-type,.block-layout-alignment-right .item.resource:last-of-type{padding-bottom:-1px}.block-layout-alignment-left .item.resource .media-render a,.block-layout-alignment-right .item.resource .media-render a{display:block}.block-layout-alignment-left .item.resource audio,.block-layout-alignment-left .item.resource canvas,.block-layout-alignment-left .item.resource video,.block-layout-alignment-left .item.resource progress,.block-layout-alignment-left .item.resource img,.block-layout-alignment-right .item.resource audio,.block-layout-alignment-right .item.resource canvas,.block-layout-alignment-right .item.resource video,.block-layout-alignment-right .item.resource progress,.block-layout-alignment-right .item.resource img{max-width:100%;vertical-align:bottom;margin-bottom:.5rem}.block-layout-alignment-left{float:left;clear:left;margin:0 1rem 1rem 0}.block-layout-alignment-right{float:right;clear:right;margin:0 0 1rem 1rem}.block-layout-alignment-center{display:flex;justify-content:center;flex-wrap:wrap;text-align:center}.block-layout-alignment-center .item{width:100%}.block-layout-alignment-left .item.resource>a:first-child,.block-layout-alignment-right .item.resource>a:first-child{vertical-align:top}.block-layout-alignment-left .item.resource>h3,.block-layout-alignment-right .item.resource>h3{margin:0}.block-layout-alignment-left .item.resource+p,.block-layout-alignment-right .item.resource+p{margin-top:0} \ No newline at end of file diff --git a/application/asset/css/style.css b/application/asset/css/style.css index 148d0085fb..6dd4005d46 100644 --- a/application/asset/css/style.css +++ b/application/asset/css/style.css @@ -1 +1 @@ -/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block}audio:not([controls]){display:none;height:0}progress{vertical-align:baseline}template,[hidden]{display:none}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}svg:not(:root){overflow:hidden}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}button,input,select,textarea{font:inherit;margin:0}optgroup{font-weight:bold}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;max-width:100%;padding:0;white-space:normal}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-input-placeholder{color:inherit;opacity:.54}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}@media screen{*{box-sizing:border-box}em,i{font-style:italic}strong,b{font-weight:bold}a{text-decoration:none}a:link,a:visited{color:#a91919}a:active,a:hover{color:#e34545}h1,h2,h3,h4,h5,h6{margin:0}h3,h4,h5,h6{font-weight:bold}h1{font-size:32px;line-height:48px;margin-bottom:24px}h2{font-size:30px;line-height:36px;margin-bottom:24px}h3{font-size:24px;margin-bottom:24px}h5{font-size:14px}p{margin:24px 0}ul{padding-left:24px;list-style:disc}pre{max-width:100%;overflow-x:auto}html,body{height:100%}body{font-family:"Lato",sans-serif;font-size:16px;line-height:24px;color:#676767;overflow-x:hidden}table{width:100%;border-spacing:0;table-layout:fixed}th,table.tablesaw th{font-weight:bold;text-align:left;padding:6px .5em}table,table.tablesaw{margin-bottom:12px;border:1px solid #dfdfdf;border-radius:3px;border-collapse:separate}.tablesaw tr:not(:last-child) td{border-bottom:1px solid #dfdfdf}tr.delete{background-color:#fcc}td,table.tablesaw td{padding:6px .5em 5px;position:relative;vertical-align:middle}table.tablesaw td:first-child a{word-wrap:break-word}table.tablesaw thead tr:first-child th{padding-top:6px;padding-bottom:5px;border-bottom:1px solid #dfdfdf}legend{font-size:20px;padding:12px 0;font-weight:bold}[contenteditable=true],textarea{clear:both;padding:6px;border:1px solid rgba(0,0,0,.15);display:block;background-color:#fff;min-height:72px;overflow-y:auto}[contenteditable=true] p{margin:12px 0}.cke_dialog_body textarea{max-height:none}input,[contenteditable=true],textarea,button,select{font-family:"Lato",sans-serif;font-size:16px;line-height:24px;margin:0;color:#676767}input[type=text],input[type=password],input[type=email],input[type=url],input[type=number],input[type=date],input[type=datetime-local]{-webkit-appearance:none;appearance:none;border-radius:0;height:36px;border:1px solid rgba(0,0,0,.15);padding:6px;margin:0}:disabled{background-color:rgba(0,0,0,.04);box-shadow:0 0 0 1px rgba(0,0,0,.15) inset;color:#a7a7a7;-webkit-text-fill-color:#a7a7a7;cursor:default}:disabled:hover{box-shadow:0 0 0 1px rgba(0,0,0,.15) inset !important}::placeholder{font-style:italic}[contenteditable=true]>*:first-child{margin-top:0}[contenteditable=true]>*:last-child{margin-bottom:0}input[type=submit],button,a.button,.button{min-height:36px;background-color:rgba(0,0,0,.08);color:#676767;border-radius:3px;border:0;box-shadow:0 0 0 1px rgba(0,0,0,.15) inset;padding:6px 10px;display:inline-block;text-align:center;cursor:pointer;margin:0 0 12px 0}input[type=submit]:hover:not(.inactive),button:hover:not(.inactive),a.button:hover:not(.inactive),.button:hover:not(.inactive){box-shadow:0 0 0 1px rgba(0,0,0,.3) inset}input[type=submit].inactive,button.inactive,a.button.inactive,.button.inactive{box-shadow:none;background-color:#d2d2d2;cursor:default;border:0}.red.button{background-color:#fdefef;box-shadow:0 0 0 1px #e0c3c3 inset;color:#a91919}.red.button:hover{box-shadow:0 0 0 1px #da8b8b inset}.green.button{background-color:#cdffcd;color:green;box-shadow:0 0 0 1px #addead inset}.green.button:hover{box-shadow:0 0 0 1px #63c363 inset}.required .field-meta{position:relative;padding-right:36px}.required .field-meta:after{font-family:"Font Awesome 5 Free";font-weight:900;content:"";font-size:12px;position:absolute;right:12px;color:#a91919;top:6px}label input[type=checkbox]{display:inline-block;width:auto}label.required:after{font-family:"Font Awesome 5 Free";font-weight:900;content:"";font-size:12px;color:#a91919;float:right;padding-right:12px}.touched:invalid{box-shadow:0 0 2px 2px #a91919}.field{width:100%;background-color:rgba(0,0,0,.04);padding:6px;position:relative;margin-bottom:6px;display:flex;flex-wrap:wrap}.field:first-child{border-color:transparent}.media-field-wrapper{width:100%;padding:12px 6px;margin-bottom:6px;background-color:rgba(0,0,0,.04);position:relative}.media-field-wrapper .field{width:100%;margin:0 0 6px;padding:0;background-color:transparent}.media-field-wrapper .field:last-of-type{margin-bottom:0}.media-field-wrapper .field:last-of-type .field-meta,.media-field-wrapper .field:last-of-type .inputs{margin-bottom:-6px}.media-field-wrapper .actions{font-size:16px;padding:6px 0}select{background:#fff url("../img/select-arrow.svg") no-repeat;background-position:right 6px center;background-size:8px;border:1px solid #dfdfdf;height:36px;line-height:36px;font-size:16px;margin:0;padding:0 24px 0 6px;border-radius:3px;vertical-align:top;-webkit-appearance:none;appearance:none}select::-ms-expand{display:none}label input{margin-right:.5em}fieldset{margin:0 0 24px;border:0;padding:0;min-width:100%}.selector input[type=text],.selector>ul{width:100%}.selector>ul{margin:0}.chosen-container{max-width:100%}.chosen-container-single .chosen-single,.chosen-container-multi .chosen-choices{background-image:none;background-color:#fff;box-shadow:none;font-size:16px;line-height:24px;padding:6px;height:auto;border-radius:3px;border-collapse:#dfdfdf;color:#676767;border-color:#dfdfdf}.chosen-container-multi.chosen-container-active .chosen-choices{border-color:#aaa;border-radius:3px 3px 0 0}.chosen-container-multi.chosen-container.chosen-drop-up .chosen-choices{border-radius:0 0 3px 3px}.chosen-container-multi.chosen-container .chosen-drop{top:calc(100% - 1px);border-top:1px solid #aaa}.chosen-container-multi.chosen-container.chosen-drop-up .chosen-drop{bottom:calc(100% - 1px)}.chosen-container-multi .chosen-choices{padding:3px}.chosen-container-multi .chosen-choices li.search-field input[type=text]{font-family:"Lato",sans-serif;margin:0}.chosen-container-multi .chosen-choices li.search-choice{background:#f0f0f0;font-size:14px;line-height:24px;border:0;padding:0 27px 0 0}.chosen-container-multi .chosen-choices li.search-choice span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;display:block}.chosen-container .search-choice .group-name{color:#676767;position:relative;background-color:rgba(0,0,0,.04);margin-right:6px;padding:0 6px;display:inline-block;vertical-align:top}.chosen-container-multi .chosen-choices li.search-choice .search-choice-close{top:50%;right:6px;transform:translateY(-50%)}.chosen-container .search-choice .group-name:after{content:""}.chosen-container-multi .chosen-choices li.search-field input[type=text]{min-height:0;margin:3px;height:auto;line-height:24px}.chosen-container-active.chosen-with-drop .chosen-single{background-image:none}.chosen-container-single .chosen-single abbr{top:12px}.chosen-container-single .chosen-single div b{background:none !important}.chosen-container-single .chosen-single div b:after{font-family:"Font Awesome 5 Free";font-weight:900;content:"";line-height:24px;padding:6px 0;display:inline-block}.chosen-container-active.chosen-with-drop .chosen-single div b:after{content:""}.chosen-container-single .chosen-search input[type=text]{background:none !important}.chosen-search{position:relative}.chosen-search:after{font-family:"Font Awesome 5 Free";font-weight:900;content:"";line-height:24px;padding:6px 0;display:block;position:absolute;top:3px;right:12px}.chosen-container .chosen-results li.highlighted{background-color:#676767;background-image:none}.chosen-container.chosen-drop-up .chosen-drop{top:auto;bottom:100%;border-radius:3px 3px 0 0;box-shadow:0 -1px 2px rgba(0,0,0,.15);border-top:1px solid #aaa}.chosen-container-active.chosen-drop-up.chosen-with-drop .chosen-single{border-radius:0 0 3px 3px}.flex{display:flex}.mobile-only{display:none}.sr-only{left:-9999px}div[role=main]>.messages{margin-bottom:12px}div[role=main]>.messages li{margin:0 0 6px}div[role=main]>.messages .error{background-color:#f4b4b4}div[role=main]>.messages .success{background-color:#cdffcd}div[role=main]>.messages .warning{background-color:#fff6e6}div[role=main]>.messages a{text-decoration:underline}.messages{padding:0;margin:0;clear:both}.messages li{background-color:rgba(255,255,255,.5);border-radius:3px;padding:6px 10px;margin-top:6px;display:block;width:100%}.field .messages{width:70%;color:#a91919;margin-left:auto}.field .messages li{box-shadow:0 0 0 1px inset}.error,.error a{color:#a91919}.success,.success a{color:green}.warning,.warning a{color:orange}.version-notification{background-color:#cdffcd;color:green;border-radius:3px;padding:6px 10px;margin-top:6px;display:block;width:100%}.version-notification a{color:green;text-decoration:underline}table .icon-sortable{opacity:.4;font-size:12px;line-height:100%}.row{width:100%;background-color:rgba(0,0,0,.04);padding:6px;position:relative;margin-bottom:6px}.row.delete{background-color:#fcc;overflow:hidden}.jstree-themeicon,.sortable-handle{cursor:move;margin-right:12px;width:18px}.jstree-themeicon:before,.sortable-handle:before{content:"";font-family:"Font Awesome 5 Free";font-weight:900;opacity:.35;font-size:20px;line-height:24px}.jstree i.jstree-themeicon{color:#676767;position:static;top:auto;right:auto}.o-description{margin-bottom:0}a.expand,a.collapse{color:#676767}.expand:after{content:"";font-family:"Font Awesome 5 Free";font-weight:900;margin-left:3px}.collapse:after{content:"";font-family:"Font Awesome 5 Free";font-weight:900;margin-left:3px}.selector-table{display:table}.selector-table.empty,.selector-table+.no-resources{display:none}.selector-table.empty+.no-resources{display:block}.selector .resources-available.empty,.selector .resources-available+.resources-unavailable{display:none}.selector .resources-available.empty+.resources-unavailable{display:block}.selector .selector-child.filter-hidden,.selector .selector-child.added{display:none}header{background-color:#404e61;width:18.75%;min-height:100vh;text-align:left;padding:0 1.0416666667% 24px;color:#bdcde3}.skip{position:absolute;left:-9999px}.skip:focus{position:absolute;top:0;left:45%;width:10%;z-index:1002;text-align:center;background-color:#fff;border-radius:0 0 3px 3px;border:1px solid #dfdfdf;padding:5px}.logo a,#user a{color:#bdcde3}#user{color:#fff;padding-top:12px;margin-bottom:-6px;display:flex;flex-wrap:wrap}#user p{margin:0 0 6px;display:inline-flex;vertical-align:top}#user .user-id{text-transform:uppercase;font-size:12px;margin-right:auto}#user .user-id a.button{display:inline-block;font-size:12px;text-transform:none;margin-bottom:0;background-color:#222933;padding:0 6px;min-height:0;border:0}#user .user-show{border-radius:3px 0 0 3px;margin-right:1px;display:inline-flex;max-width:85%;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}#user .user-show:before{margin-right:6px}#user .user-settings{border-radius:0 3px 3px 0;border-left:0}#user .user-settings:before{content:"";font-family:"Font Awesome 5 Free";font-weight:900}#user .logout{font-size:12px;padding:0 6px;background-color:#222933;border-radius:3px;display:inline-block;min-width:25%;text-align:center}.logo{padding:6px 6.25%;margin:0 -6.25%;background-color:#222933}#search{width:100%;display:inline-block;vertical-align:top;margin:24px 0}#search input[type=text]{width:calc(100% - 72px);float:left}#search button{width:36px;text-indent:-9999px;background-color:#222933;color:#bdcde3;border:0;float:left;margin:0;border-radius:0;position:relative;height:36px;box-shadow:none}#search button:last-of-type{border-left:1px solid rgba(255,255,255,.2);border-radius:0 3px 3px 0}#search button:last-of-type:after{content:""}#search button:after{content:"";font-family:"Font Awesome 5 Free";font-weight:900;text-indent:0;position:absolute;top:0;left:0;width:36px;line-height:36px;text-align:center}#advanced-options{display:none}div[role=main]>h1:first-of-type{background-color:#fff;font-size:24px;position:fixed;padding:3px 30% 3px 1.0416666667%;z-index:3;top:0;right:0;width:81.25%;height:48px;border-bottom:1px solid #dfdfdf;overflow:hidden;line-height:36px}div[role=main]>h1:first-of-type .title{text-overflow:ellipsis;white-space:nowrap;max-width:65%;display:inline-block;overflow:hidden;vertical-align:middle}.subhead{text-transform:uppercase;font-size:14px;padding:0 6px;background-color:#eee;line-height:36px;vertical-align:middle;margin:0 12px 0 0;font-weight:normal;display:inline-block}.subhead:before{font-family:"Font Awesome 5 Free";font-weight:900;display:inline-block;margin-right:6px;font-size:16px;vertical-align:top}.action{display:inline-block;vertical-align:middle}.action:before{content:"·";margin:0 12px}.sidebar-open footer{margin-right:25%}footer{font-size:12px;position:relative;margin-top:-27px;margin-left:18.75%;padding-right:1.0416666667%;text-align:right}footer .site-version{margin:0;display:inline-block}footer .version-number{display:inline-block;margin:0 12px;line-height:1}body.transitions-enabled footer{transition:margin-right .5s}footer>a:not(:last-child){margin-right:12px}nav ul{padding:0;list-style:none;margin:0}nav.pagination{margin-bottom:12px;overflow:hidden}nav.pagination form,nav.pagination .button,nav.pagination .row-count{float:left}nav.pagination form{margin-right:12px}nav.pagination form *{display:inline-block;padding:0;text-align:center}nav.pagination .button{border-radius:0;margin:0;padding:0 10px}nav.pagination .button,nav.pagination input[type=text],.sorting button,.sorting select{font-size:13.08px;min-height:0;height:24px;line-height:24px;vertical-align:top;background-size:6.5408px}nav.pagination .button{box-shadow:0 0 0 1px #c8c8c8 inset;position:relative}nav.pagination .button:hover{z-index:1}nav.pagination .button:before{vertical-align:top;line-height:24px}nav.pagination .previous.button{border-radius:3px 0 0 3px}nav.pagination .next.button{border-radius:0 3px 3px 0;margin-left:-1px}nav.pagination form input[type=text]{margin-right:.25em;width:48px;border:1px solid #dfdfdf;padding:5px}nav.pagination+*:not(.sorting){clear:left}#mobile-nav{display:none}.mobile-container{position:relative}button .o-icon-private{margin:0 6px;color:#dfdfdf}header nav h4{padding-bottom:5px;border-bottom:1px solid #364252;margin-bottom:6px}header nav h4:not(:first-of-type){margin-top:24px}header nav ul.navigation>li:not(:first-of-type){margin-top:6px}header nav ul.navigation>li:not(:last-of-type){border-color:#dfdfdf}header nav ul.navigation li li{display:none}header nav ul.navigation li.active li{display:block;margin-left:24px}header nav ul.navigation li.active>a{color:#fff}header nav a:link,header nav a:visited{color:#bdcde3}header nav li>a:before{content:"";font-family:"Font Awesome 5 Free";font-weight:900;display:inline-block;width:24px}header nav .items:before,.items .subhead:before{content:""}header nav .media:before,.media .subhead:before{content:""}header nav .item-sets:before,.item-sets .subhead:before{content:""}header nav .vocabularies:before,.vocabularies .subhead:before{content:""}header nav .resource-templates:before,.resource-templates .subhead:before{content:""}header nav .users:before,.users .subhead:before{content:""}header nav .modules:before,.modules .subhead:before{content:""}header nav .jobs:before,.jobs .subhead:before{content:""}header nav .sites:before,.sites .subhead:before{content:""}header nav .settings:before,.settings .subhead:before{content:""}header nav .assets:before,.assets .subhead:before{content:""}header nav li li a:before{content:""}header ul.navigation{margin-bottom:6px}#menu{position:relative}#menu h5{text-transform:uppercase;border-top:1px solid #364252;padding-top:5px;margin-bottom:0}#menu .expand,#menu .collapse{width:100%;z-index:1;padding-bottom:6px;margin-bottom:6px}#site-nav{background-color:#364252;padding:6px;margin-bottom:12px;border-radius:3px}#site-nav h5{border-top:0;border-bottom:1px solid #2c3542;padding:0 24px 5px 0;margin-bottom:6px}header nav#site-nav h5 a:before{content:"";font-family:"Font Awesome 5 Free";font-weight:900;width:24px;display:inline-block;font-size:16px}#menu .pages:before,.site-pages .subhead:before{content:""}#menu a.navigation:before{content:""}#menu a.public{float:right;text-align:right;font-size:16px;line-height:30px;margin-top:-39px}#menu a.resources:before{content:""}#menu a.site-info:before{content:""}#menu a.theme:before,.theme-settings .subhead:before{content:""}div[role=main]{width:81.25%;padding:60px 1.0416666667% 36px;background-color:#fff;min-height:100%;overflow:hidden}body.transitions-enabled div[role=main]{transition:width .5s}#dashboard>p{width:100%;margin-top:12px}#manage-resources .add.button:before{content:"";font-family:"Font Awesome 5 Free";font-weight:900}.panel{width:48.9583333333%;float:left;padding-left:1.0416666667%;padding-right:1.0416666667%;border:1px solid #dfdfdf;padding:5px;margin:0 1.0416666667% 0 0;float:left;overflow:hidden}.panel .row{width:100%;background-color:rgba(0,0,0,.04);padding:6px;position:relative;margin-bottom:6px}.panel>.row:last-child{margin-bottom:0}.panel .button{float:right;margin:0}.panel .row a.button{box-shadow:none;padding:0;color:#a91919;background-color:transparent}.panel h2{font-size:18px;line-height:24px;margin-bottom:6px}.browse .add.button,.browse .batch-edit.button{float:left;margin-right:.25em}.browse td:first-child,.browse th:first-child{width:50%}.browse td,.browse th{padding:12px 6px;overflow:hidden}.browse .browse-controls{display:flex;justify-content:space-between;flex-wrap:wrap;font-size:13.08px}.sites.pages.browse .browse-controls{justify-content:flex-end}.browse .browse-controls .advanced-search:before{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;font-style:normal;font-variant:normal;font-weight:normal;line-height:1;font-family:"Font Awesome 5 Free";font-weight:900;content:"";padding:.25em}.browse-controls select,.browse-controls input,.browse-controls button,.browse-controls .button{font-size:13.08px;min-height:0;height:24px;line-height:24px;vertical-align:top;background-size:6.5408px}.browse-controls .sorting:not(:last-child){margin-left:auto}.browse-controls button,.browse-controls .button{padding:0 10px}.browse-controls .filtering{margin-left:24px}.browse .select-all{width:12px;margin-right:12px}.browse .tablesaw-cell-content,#properties .tablesaw-cell-content{display:flex;align-items:center;justify-content:flex-start;word-wrap:break-word}.browse .tablesaw-cell-content>.actions,#properties .tablesaw-cell-content>.actions{white-space:nowrap}.browse .batch-edit .tablesaw-cell-content>input[type=checkbox]{margin-right:12px;flex-shrink:0}.browse .tablesaw-cell-content>span.indent{display:inline-block;vertical-align:top;flex:0;min-width:1em}.actions{margin:0 0 0 auto;display:flex;padding:0}.actions li{list-style-type:none}.actions a,.actions a:before,.actions button,.actions button:before{width:24px;height:24px;line-height:24px;vertical-align:top;border:0;box-shadow:none;display:inline-block}.actions .button:hover,.actions button:hover{box-shadow:none !important}.actions a,.actions button{opacity:.5}.actions a:before,.actions button:before{text-align:right}.actions a:hover,.actions a:active,.actions button:hover{opacity:1}.actions .inactive{display:none}.actions button{background-color:transparent;color:#a91919;margin:0;text-indent:-9999px;position:relative;padding:0;min-height:0}.actions button:before{text-indent:0;position:absolute;top:0;left:0}.row-count{margin:0 6px}.no-resources{text-align:center;position:relative;margin-top:96px}.no-resources:before{font-family:"Font Awesome 5 Free";font-weight:900;font-size:96px;position:absolute;top:0;left:0;width:100%;opacity:.08;content:""}.no-resources p{font-size:24px;line-height:48px;margin-top:48px}td .o-icon-private,td .o-icon-user-inactive{display:inline-block;vertical-align:bottom;margin-left:.5em;opacity:.5}.items .no-resources:before{content:""}.item-sets .no-resources:before{content:""}.media .no-resources:before,#media-list .no-resources:before{content:""}.modules .no-resources:before{content:""}.vocabs .no-resources:before{content:""}.resource-templates .no-resources:before,.resources-templates{content:""}.users .no-resources:before{content:""}.jobs .no-resources:before{content:""}.sites .no-resources:before{content:""}.sidebar .no-resources{display:block}.browse.assets td:first-child,.browse.assets th:first-child{width:75%}.asset-inline{max-width:100%}#batch-form{border:1px solid #dfdfdf;border-bottom:0;border-radius:3px;margin-bottom:12px}#batch-form table.tablesaw{border-width:1px 0;border-radius:0 0 3px 3px;margin-bottom:0}#batch-form .batch-actions{display:inline-block}#batch-form .batch-inputs{display:flex;align-items:center;padding:6px;background-color:rgba(0,0,0,.04)}#batch-form .batch-actions>a.button,#batch-form .batch-actions>button,#batch-form .batch-actions>input[type=submit]{display:none;margin:0 12px 0 0;font-size:14px;line-height:24px;min-height:0;padding:0 6px}#batch-form .batch-actions>a.button.active,#batch-form .batch-actions>button.active,#batch-form .batch-actions>input[type=submit].active{display:inline-block}#batch-form select{font-size:14px;min-height:0;height:auto;line-height:24px;padding:0 24px 0 6px;margin-right:6px;border:0;box-shadow:0 0 0 1px #dfdfdf inset}.batch-selected{padding-left:0;list-style:none}.batch-selected li{padding:12px 0 11px;border-bottom:1px solid #dfdfdf}.batch-selected li:first-child{padding-top:0}.batch-selected li:last-child{border-color:transparent}#advanced-options{background-color:#fff;padding:6px 12px calc(6px - 1px);clear:both;border:1px solid rgba(0,0,0,.15);border-top:0;color:#676767}#advanced-options legend{float:left;width:calc(100% + 24px);font-weight:bold;padding:6px 12px;margin:-6px -12px 12px;background-color:rgba(0,0,0,.04);max-width:none}#advanced-options input{float:left;clear:left;margin-right:.5em;height:24px;margin-bottom:6px}#advanced-options label{float:left;margin-bottom:6px}.search-filters{margin-bottom:6px;display:inline-block}.filter{display:inline-block;font-size:13.08px;margin:0 6px 6px 0;border-radius:3px;background-color:#f0f0f0;padding:0;vertical-align:top}.filter-label{display:inline-block;background-color:rgba(0,0,0,.04);border-radius:3px 0 0 3px}.filter-label,.filter-value{padding:0 6px}.filter-value:not(:last-child):after{content:","}.multi-value .value{display:flex}.multi-value .add-value,.multi-value.field .remove-value{background-color:transparent;color:#a91919;display:inline-block;text-indent:-9999px;position:relative;min-width:36px;width:36px;text-align:center;box-shadow:none}.multi-value .add-value:before,.multi-value.field .remove-value:before{position:absolute;top:0;left:0;width:36px;line-height:36px;text-indent:0}.multi-value .add-value:hover,.multi-value.field .remove-value:hover{box-shadow:none;color:#a91919}.multi-value .add-value{position:absolute;top:0;right:0}.multi-value .field-meta{padding-right:36px}.item-set-select-type{max-width:25%}fieldset.section>legend{position:absolute;left:-9999px}.section-nav{border-top:1px solid #fff;height:42px;position:relative;margin-bottom:12px;clear:both}.section-nav:before{content:"";height:3px;position:absolute;bottom:1px;left:0;right:0;z-index:0;background:#fff;border:1px solid #dfdfdf;border-width:1px 0}.section-nav a{display:block;float:left;height:36px;line-height:30px;padding:3px 1em;position:relative;z-index:1;background-color:#fff;border-color:#dfdfdf;border:1px solid #dfdfdf;margin-left:.25em;color:#676767}.section-nav .active a{font-weight:bold;border-bottom-color:#fff}.section:not(a){display:none}.section.active{display:block;clear:both}#page-actions{position:fixed;padding:6px 1.0416666667%;z-index:4;top:0;height:36px;right:0;text-align:right;margin-bottom:0}#page-actions input[type=submit],#page-actions button,#page-actions .button{display:inline-block;height:36px;padding:6px 1em;min-height:0;vertical-align:top}#page-actions .delete.button{background-color:#fdefef;box-shadow:0 0 0 1px #e0c3c3 inset;color:#a91919}#page-actions .delete.button:hover{box-shadow:0 0 0 1px #da8b8b inset}.page-action-menu{display:inline-block;position:relative}.page-action-menu ul{display:none;list-style:none;border:1px solid #dfdfdf;background-color:#fff;border-radius:3px;text-align:left;padding:0;position:relative;box-shadow:0 0 5px #dfdfdf;position:absolute;right:0;width:auto;white-space:nowrap;margin:12px 0}.page-action-menu ul:before{content:"";position:absolute;bottom:calc(100% - 1px);right:12px;width:0;height:0;border-bottom:12px solid #fff;border-left:6px solid transparent;border-right:6px solid transparent}.page-action-menu ul:after{content:"";position:absolute;bottom:calc(100% - 1px);right:11px;width:0;height:0;border-bottom:14px solid #dfdfdf;border-left:7px solid transparent;border-right:7px solid transparent;z-index:-1}.page-action-menu ul a,.page-action-menu ul .inactive{padding:6px 12px 5px;display:block;position:relative}.page-action-menu ul .inactive{color:#dfdfdf}.page-action-menu ul li{position:relative}.page-action-menu ul li:hover:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background-color:#dfdfdf}.page-action-menu ul li:not(:last-child) a,.page-action-menu ul li:not(:last-child) span,.page-action-menu ul li:not(:last-child) [type=submit]{border-bottom:1px solid #dfdfdf}.page-action-menu [type=submit]{background:none;box-shadow:none;width:100%;margin-bottom:0;text-align:left}.page-action-menu li label{display:inline-block;height:36px;padding:6px 1em;min-height:0;vertical-align:top;width:100%}.page-action-menu li label input{margin-left:.25em}.page-action-menu li:not(:last-child) label{border-bottom:1px solid #dfdfdf}.page-action-menu .expand:after{content:""}.page-action-menu .expand:after,.page-action-menu .collapse:after{margin-left:6px}.page-action-menu .collapse+.collapsible{overflow:visible;display:block}.add-property.button{margin-top:24px}.field-term{display:inline-block;font-family:"Source Code Pro",monospace;font-size:12px}.value .input-body a.value-language{margin-right:0;vertical-align:top;position:absolute;top:0;right:0;height:36px;width:36px;line-height:36px;border:1px solid #dfdfdf;border-width:0 0 1px 1px;overflow:hidden;text-align:center;color:#f19d9d;z-index:1}.value .input-body a.value-language~textarea{padding-right:42px}.value .input-body .language-wrapper.active a.value-language{border-color:transparent;color:#a91919}.value .language-wrapper:not(.active)~textarea{padding-right:48px}.value .actions a.o-icon-more{display:block;height:36px}.more-actions.active a.o-icon-more{border-bottom:1px solid #dfdfdf}.language-wrapper input[type=text].value-language{line-height:24px;background-color:transparent;border:0;min-height:0;padding:6px 42px 6px 6px;display:block;background-color:#fff}.language-wrapper.active input[type=text].value-language~textarea{padding-left:6px;border-top:0}.input-body .language-wrapper:not(.active) .language-label{display:none}.sidebar .language-label{font-weight:inherit}.language-wrapper .language-label,.value[data-data-type=uri] .input-body label{display:flex;align-items:flex-start;background-color:#fff;margin:0;padding:0 42px 0 6px;box-shadow:0 0 0 1px #dfdfdf}.value-label-text{background-color:rgba(0,0,0,.04);border-radius:2px;font-size:14px;margin:6px;padding:0 6px}.sidebar .value-annotation .value{padding-bottom:0}.sidebar .value-annotation label:after{content:none}.sidebar .value-annotation p.selected-resource{border-bottom:1px solid #dfdfdf}.sidebar .value-annotation-resource-select{margin:6px !important}.sidebar [data-data-type^=resource] .o-title:not(:empty){padding:0;border-bottom:0}.sidebar [data-data-type^=resource] .o-title:not(:empty) a:empty{display:none}.sidebar [data-data-type^=resource] .o-title:not(:empty) img{margin:6px}.sidebar [data-data-type^=resource] .o-title:not(:empty) a{padding:6px;width:100%}.non-properties{margin-bottom:12px}.resource-form .values .sortable-handle{width:12px;background-color:rgba(0,0,0,.04);border:1px solid #dfdfdf;border-radius:2px 0 0 2px;align-self:stretch;border-right:0;margin:0;display:flex;align-items:center;justify-content:center}.resource-form .values .sortable-handle:before{font-size:10px}.visibility{display:inline-block;padding:6px;margin-right:12px}.add .visibility:before,.edit .visibility:before{margin-right:.25em}.add .visibility [type=checkbox],.edit .visibility [type=checkbox]{margin-left:.5em}#add-item .remove.field{background-color:#ea7171;opacity:.6}.resource.input-option span{display:block;background-color:rgba(255,255,255,.5);padding:6px 10px 0;width:100%;float:left}.field-meta{width:30%;padding-right:6px;position:relative}.field-meta legend,.field-meta label,.field-meta .label{max-width:80%;padding:6px 0;display:inline-block}.field-meta legend{position:static;float:left}.field-meta .error{float:left}.field-meta ul{margin:0}.field-label-text{display:block}.template{display:none}.selector ul{list-style:none;padding-left:0}.selector>ul{margin-top:6px}.selector li{position:relative}.selector li.total-count-heading{background-color:#404e61;color:#fff;border-radius:3px;text-transform:uppercase;font-size:12px;padding:6px 10px}.selector li.total-count-heading>ul{margin:6px -10px -6px;border-radius:0 0 3px 3px}.selector li.selector-parent.empty{display:none}.selector li.show>ul{position:relative;top:0;left:0;overflow:visible}.selector .selectable-list{background-color:#fff;color:#676767;overflow:visible;border-radius:3px;font-weight:bold;position:relative;border:1px solid #dfdfdf;margin:6px 0 0;text-transform:uppercase;font-size:12px}.selector .selectable-list li{padding:6px 12px}.selector .selectable-list .selector-parent{cursor:pointer;padding-right:24px;margin-bottom:0}.selector .selectable-list .selector-parent:after{content:"";font-family:"Font Awesome 5 Free";font-weight:900;position:absolute;right:0;top:6px;width:18px}.selector .selectable-list .selector-parent.show:after{content:""}.selector .selectable-list .selector-parent:hover:before{content:"";position:absolute;top:0;bottom:0;left:0;width:5px;background-color:#dfdfdf}.selector .selectable-list .selector-parent:not(:last-of-type){border-bottom:1px solid #dfdfdf;padding-bottom:5px;border-color:#dfdfdf}.selector-parent ul{position:absolute;top:-9999px;left:-9999px}.selector-child{border-radius:0;font-weight:normal;padding:6px 10px;margin:0 -12px;font-size:16px;text-transform:none;width:calc(100% + 36px)}.selector-child:hover{background-color:rgba(0,0,0,.04)}.selector-child:last-of-type{margin-bottom:-6px}.selector .description{display:inline-block;vertical-align:top}.selector .description.no-comment{opacity:0}.selector .description .o-icon-info{display:inline-block;margin:0 6px 0 0;opacity:.75;width:1em}.selector .description .o-icon-info:hover+.field-comment{left:5px;right:0;top:36px;padding:3px 10px 3px 36px;line-height:18px;background-color:#fff;z-index:1;margin:0;border-bottom:1px solid #dfdfdf;font-size:12px}.selector .description .o-icon-info:hover+.field-comment:before{content:"";position:absolute;left:7px;top:-6px;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #fff}.selector .description .o-icon-info:hover+.field-comment.above{bottom:100%;top:auto}.selector .description .o-icon-info:hover+.field-comment.above:before{top:calc(100% - 6px);transform:rotate(180deg)}.selector .description .o-icon-info+.field-comment{position:absolute;top:-9999px;left:-9999px;width:calc(100% - 5px)}.selector .selectable{display:inline-block;width:calc(100% - 36px);word-wrap:break-word}.field-actions{width:60%;display:inline-block;margin:24px 0 0 30%}.field .field-label{display:inline-block}.field .field-description,.field .docs-link{font-size:14px;line-height:18px;position:static;text-align:left;height:auto}.field .field-description:not(:only-child){margin-bottom:6px}.field-description{display:block;margin-right:10px;line-height:36px;height:36px;position:absolute;top:0;right:0;text-align:right;left:0}.field-description .o-icon-info{margin:0;cursor:pointer}.field-description .field-comment.open{left:inherit;right:0px;top:36px;background-color:#333;color:#fff;border-radius:3px;z-index:1;max-width:100%;font-size:14px;padding:6px 5px;margin:12px 0}.field-description .field-comment.open.above{top:auto;bottom:30px}.field-description .field-comment.open:before{content:"";display:block;height:0;width:0;position:absolute;top:-6px;bottom:0;right:3px;font-size:16px;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:12px solid #333}.field-description .field-comment.open.above:before{top:auto;bottom:-12px;transform:rotate(180deg)}.field .docs-link:before{content:"";font-family:"Font Awesome 5 Free";font-weight:900;display:inline-block;margin-right:6px;font-size:14px;line-height:18px}.field-meta .expand,.field-meta .collapse{display:inline-block !important;margin-left:.5em !important;padding:0 !important;border:0 !important;width:auto !important}.field-meta .expand:after,.field-meta .collapse:after{float:none !important;margin-right:0 !important}.collapsible{display:none}.collapse+.collapsible{display:block;clear:both;overflow:hidden}.field-description .field-comment{position:absolute;top:-9999px;left:-9999px}.resource-property .field-term{display:block}.inputs{line-height:36px;width:70%}.inputs:only-child{width:100%}.inputs p:only-child{margin:0}.inputs label,.inputs select,.inputs textarea,.inputs input[type=text],.inputs input[type=password],.inputs input[type=email],.inputs input[type=url],.inputs input[type=date],.inputs input[type=datetime-local]{width:100%;min-height:36px;margin:6px 0}.inputs label:only-child,.inputs select:only-child,.inputs textarea:only-child,.inputs input[type=text]:only-child,.inputs input[type=password]:only-child,.inputs input[type=email]:only-child,.inputs input[type=url]:only-child,.inputs input[type=date]:only-child,.inputs input[type=datetime-local]:only-child{margin:0}.inputs textarea{resize:vertical;line-height:1.5;background-color:#fff;min-width:0}.inputs label{padding:6px 0;margin:0 24px 0 0}.inputs .button,.inputs button,.inputs input[type=submit]{margin:6px 0;line-height:24px}.inputs input:focus,.inputs textarea:focus{position:relative;z-index:100}#resource-values div.value{display:flex;align-items:stretch}#resource-values div.value:only-of-type .sortable-handle{display:none}.value{margin-bottom:6px}.value:last-of-type{margin-bottom:0}.value:last-of-type .remove-value{margin-bottom:0;box-shadow:none}.value.template{display:none}.inputs p.no-values{padding:12px;border-radius:3px;background-color:rgba(0,0,0,.04);line-height:24px}.inputs p.no-values:not(:only-child){display:none}.add-values{margin:6px 0 -3px}.add-values *{display:inline-block;min-width:36px;height:36px;border-radius:2px;text-align:center;margin:0}.inputs .add-values a.button{margin:0 0 3px}.inputs .add-values a.button:before{margin-right:.25em}.add-values label{background-color:rgba(0,0,0,.04);line-height:36px;margin-right:0;overflow:hidden;width:12px;vertical-align:top}.input-footer{display:flex;width:30px}.input-footer .actions{margin-left:6px;flex-direction:column}.input-footer .actions a:before{line-height:36px;height:36px;text-align:center}.more-actions ul{padding:0;display:none}.more-actions.active{box-shadow:0 0 0 1px #dfdfdf;background-color:#fff;border-radius:2px}.more-actions.active ul{display:block}.value.delete{background-color:#fcc;overflow:hidden}.value .restore-value,.value.delete a.tab,.value.delete [class*=o-icon-]:not(.restore-value){display:none}.value.delete .input-footer{background-color:transparent;width:100%}.value.delete .restore-value{display:inline-block}.value [class*=o-icon-].label{position:absolute;top:0;left:0;height:36px;width:36px;background-color:rgba(0,0,0,.04);text-align:center;line-height:36px;overflow:hidden}.value label,.add-values label{margin:0;min-height:0;line-height:24px}.block.value .inputs label{margin-right:24px}.add-values button,.add-values .button{line-height:24px}.inputs .value textarea,.inputs .value input[type=text]{width:100%;margin:0}.inputs .value textarea{min-height:72px;border:0;box-shadow:0 0 0 1px #dfdfdf}.inputs .value .input-body>textarea{padding:6px 12px}[data-data-type^=resource] .default,[data-data-type^=resource] .o-title:not(:empty){padding:6px;border-bottom:1px solid #dfdfdf;word-wrap:break-word;line-height:24px;display:flex}[data-data-type^=resource].delete .o-icon-undo:before{padding-right:0}.input-body{clear:both;background-color:#fff;flex:1;position:relative;box-shadow:0 0 0 1px inset #dfdfdf;max-width:calc(100% - 30px)}.value:not(:only-of-type) .input-body{max-width:calc(100% - 48px)}.inputs .input-body input[type=text]{margin:0;background-color:transparent}.inputs .input-body input[type=text]:focus,.inputs .input-body textarea:focus{z-index:10}.inputs .input-body .chosen-container{max-width:calc(100% - 12px);margin:6px}[data-data-type^=resource] .button{font-size:14px;padding:0 6px;line-height:24px;min-height:0;margin-right:3px}[data-data-type^=resource] .button:before{margin-right:6px}.value.delete span.restore-value{display:inline-block;padding:0 6px;width:calc(100% - 36px)}.value.delete>*:not(.input-footer){display:none}.sortable-handle~.input-body{background-color:transparent}.resource-inputs{background-color:#fff;box-shadow:0 0 0 1px #dfdfdf}p.selected-resource{position:relative;width:100%;margin:0}.selected-resource a{width:calc(100% - 72px)}.selected-resource+a.button{margin-left:6px}.selected-resource img{height:24px;margin-right:6px}.selected-resource .o-title a:after{font-family:"Font Awesome 5 Free";font-weight:900;display:inline-block;margin:0 6px}.selected-resource .items a:after{content:""}.selected-resource .item_sets a:after{content:""}.selected-resource .media a:after{content:""}[data-data-type=literal] .sortable-handle~.input-body{background-color:#fff}.inputs [data-data-type=literal] textarea.input-value{background-color:transparent;padding-right:42px}[data-data-type=uri] .input{position:relative;clear:both;background-color:#fff;box-shadow:0 0 0 1px #dfdfdf}[data-data-type=uri] .input:first-child{border-bottom:1px solid #dfdfdf}.value[data-data-type=uri] .input-body label{padding-right:0}.sidebar [data-data-type=uri] label{font-weight:inherit}[data-data-type=uri] .input-body input.uri-value,[data-data-type=uri] textarea.value-label{height:36px;border:0;box-shadow:none;padding:6px 42px 6px 6px;font-weight:normal;background:transparent;min-height:36px}[data-data-type=uri] textarea.value-label{border-top-width:0}.annotation-form{padding-bottom:12px}.annotation-form>div,.annotation-form>select{margin-bottom:6px}.value-annotation:not(:last-child){border-bottom:1px solid #dfdfdf;padding-bottom:12px;margin-bottom:12px}.value-annotation .restore-value{line-height:36px}#resource-files button{margin:24px 0 0}#add-media-field{margin-bottom:0}.media.row{padding:6px;margin-bottom:6px;display:flex;align-items:center;word-wrap:break-word}.media.row img{width:36px;height:auto;margin-right:12px}.media.row .resource-name{margin-right:12px;min-width:0}.media.row .primary-media{text-transform:uppercase;font-size:12px;font-weight:bold;margin:0 0 0 auto}.media.row .primary-media input{margin-left:6px}.media.row .actions{margin-left:24px}.media.value.delete span.restore-value{padding:0}.media.value.delete>*:not(.restore-value),.media.value.delete .actions a:not(.o-icon-undo){display:none}.media.value.delete>.actions{display:block;top:18px}.media-header{font-size:16px;margin:6px -6px;margin-top:-12px;background-color:rgba(0,0,0,.04);padding:0 6px;display:flex;align-items:center}.value.delete>.actions{display:inline-block}.media-render{margin-bottom:24px}.media-render>*{max-width:100%}.media-render img{max-width:100%;height:auto}#item-media .sidebar button{width:100%;text-align:left}#item-item-sets+.no-resources:before,#site-item-sets+.no-resources:before{content:""}#item-item-sets tr.delete{background-color:#fcc}#page-actions [class*=o-icon-].button{background-color:transparent;width:auto;padding:6px 6px;box-shadow:none}.o-icon-private.button,.o-icon-public.button{margin-right:6px;box-shadow:none}#item-sites.empty+.no-resources:before{content:""}.media.edit #media .cke_contents{min-height:500px}.search-nav{width:100%}.search-nav .resource-search{width:100%;position:relative;margin-bottom:6px;display:flex;flex-wrap:wrap}.search-nav .chosen-container{margin-bottom:6px}.search-nav button.o-icon-search{height:36px;width:36px;line-height:24px;padding:0 10px;border-radius:0 3px 3px 0;min-height:0;position:relative;text-indent:-9999px;margin:0}.search-nav button.o-icon-search:before{text-indent:0px;position:absolute;left:0;top:6px;line-height:24px;width:100%}.search-nav .resource-search>input[type=text]{width:calc(100% - 36px);border-right:0;margin-bottom:6px}.resource-search-filters{padding-bottom:5px;border-bottom:1px solid #dfdfdf;margin-bottom:6px;width:100%}.resource-search-filters a.expand:after,.resource-search-filters a.collapse:after{float:right}.resource-search-filters .collapsible{margin-top:6px;overflow:visible}.sidebar .pagination{font-size:13.08px;border-bottom:1px solid rgba(0,0,0,.08);padding-bottom:11px;margin-bottom:0;overflow:hidden;width:100%}.sidebar .pagination li{float:left}.sidebar .pagination li:first-of-type{padding-right:10px}.sidebar .pagination input{width:3em;text-align:center;color:#333;margin:0 3px}.sidebar .pagination .next.button{margin-right:5px}.sidebar .pagination input[type=text]{float:left;line-height:19.62px;height:24px;border:1px solid #dfdfdf;margin-left:0}.sidebar .pagination .page-count{float:left;margin-right:12px}.sidebar .pagination .inactive{background-color:#e6e6e6;color:#b9b9b9}.sidebar textarea{resize:vertical}#item-results+.confirm-panel,#item-results .select-resource-checkbox-wrapper{display:none}#item-results.active{padding-bottom:72px}#item-results.active+.confirm-panel{display:block}#item-results.active .select-resource-checkbox-wrapper{display:inline-flex;align-items:center}.sidebar button.select-all,.sidebar button.quick-select-toggle{background-color:transparent;color:#676767;box-shadow:none;margin:12px;padding:0;line-height:1;min-height:0}.success-statuses{position:absolute}.success-statuses .status,.sidebar button .sr-only{display:none}.sidebar button:not(.active) .sr-only.off,.sidebar button.active .sr-only.on,.success-statuses:not(.active) .sr-only.off,.success-statuses.active .sr-only.on{display:block}.sidebar button.select-all:before,.sidebar button.quick-select-toggle:before{font-family:"Font Awesome 5 Free";font-weight:900;content:"";display:inline-block;margin-right:6px}.sidebar button.quick-select-toggle.active:before{content:""}.sidebar button.select-all:before{content:"";font-weight:400}.sidebar button.select-all.active:before{content:""}.sidebar button.quick-select-toggle+.resource-list{border-top:1px solid #dfdfdf}.resource-link{display:inline-flex;align-items:center;max-width:100%;min-width:0}.resource-link img{height:36px;margin-right:6px}.resource-link .resource-name{flex:1;min-width:0}.resource-list{width:100%}.resource-list .resource{padding:6px 12px 5px;border-bottom:1px solid rgba(0,0,0,.08);position:relative;width:100%;overflow:hidden;display:flex;align-items:center;word-wrap:break-word}.resource-list .resource:hover{background-color:rgba(255,255,255,.8)}.resource-list .resource:hover .select{right:0px}.resource-list .resource .select-resource-checkbox-wrapper{height:24px;margin-right:12px}#resource-details{background-color:#fff;overflow:hidden;padding:0}#resource-details .o-description,#resource-details .property{margin-bottom:0}.confirm-main{position:absolute;top:0;bottom:60px;overflow-y:auto;left:0;right:0;padding:12px 12px 0}.confirm-panel{position:absolute;bottom:0;right:0;left:0;padding:12px;background-color:#f7f7f7;border-top:1px solid #dfdfdf}.confirm-panel button,.confirm-panel .button{width:100%;margin:0}.sidebar .field-meta{width:100%;position:relative;padding-right:36px;margin-bottom:12px;border-bottom:3px solid #dfdfdf}.sidebar .field-meta .label,.sidebar .field-meta label{margin:0;width:auto;display:inline-block;padding:0 0 6px}.sidebar .field-meta .label:after,.sidebar .field-meta label:after{content:none}.sidebar .field-meta .collapsible{margin-bottom:12px}.sidebar .field-meta button.add-value{padding:0;background:transparent;color:#676767;min-height:0;position:absolute;top:0;right:0}.sidebar .field-meta button.add-value:before{height:auto;line-height:1.5}.sidebar .inputs{width:100%}.sidebar #advanced-search .value{flex-wrap:wrap}.sidebar #advanced-search .value:not(:first-child){margin-top:6px}.sidebar .multi-value .value:not(:only-child){width:calc(100% - 36px);position:relative;padding-bottom:0;margin-bottom:5px;border-bottom:0}.sidebar .multi-value .value:only-child .remove-value{display:none}.sidebar .multi-value .remove-value{position:absolute;right:-36px;bottom:0}.sidebar #advanced-search .value select,.sidebar #advanced-search .value input{margin-left:0}.sidebar #advanced-search .confirm-panel{display:flex;justify-content:space-between}.sidebar #advanced-search .confirm-panel button{width:calc(33.33% - 6px)}.block .block-content input[type=hidden]+button{padding-top:6px}.query-form-element .active{display:block}.query-form-element .inactive{display:none}.query-display .search-filters{margin-bottom:0}.query-display .filter{background-color:#fff;box-shadow:0 0 0 1px #dfdfdf inset}.query-display .filter-label{background-color:#dfdfdf}.query-form-element button.active{display:inline-block}.query-display{min-height:42px}input[type=text].query-form-query{margin-top:0}.query-display .filter-value:not(:last-child):after{content:none}#save-search{display:none}#save-search.active{display:flex;margin-top:-6px;padding:0 6px 12px calc(30% + 3px);background-color:rgba(0,0,0,.04)}#save-search.active input{margin-left:6px}.vocabs .field [type=file]{margin:6px 0 0}.vocabulary ul{padding-left:0;list-style:none;overflow:hidden}.vocabulary h2{margin-bottom:0}.vocabs.update td{vertical-align:top}.vocabs.update td:first-of-type,.vocabs.update td:nth-of-type(2){width:15%;word-wrap:break-word}.vocabs.update td:nth-of-type(3),.vocabs.update td:nth-of-type(4){width:35%}.vocabs.update td:nth-of-type(3):last-child{width:auto}.vocabs.update td:nth-of-type(3):not(:last-child){background-color:#ffe6e6}.vocabs.update td:nth-of-type(4){background-color:#cdffcd}.show .property,.meta-group{overflow:hidden;display:flex;justify-content:flex-end;flex-wrap:wrap}.show .property dt,.meta-group dt{width:22.2222222222%;vertical-align:top;padding:6px 0;font-weight:bold}.show .property dd,.show .property .values,.meta-group dd,.meta-group .values{padding:6px;margin:0;word-wrap:break-word;width:77.7777777778%}.show .property dd:not(:first-of-type),.show .property .values:not(:first-of-type),.meta-group dd:not(:first-of-type),.meta-group .values:not(:first-of-type){padding-top:0}.show .property .language,.meta-group .language{font-size:12px;padding:0 6px;margin-right:6px;background-color:rgba(0,0,0,.04)}#linked-filter label{display:flex;align-items:center;margin-bottom:24px}#linked-filter label select{margin-left:12px}#linked-resources table{margin-bottom:24px}#linked-resources caption{background-color:rgba(0,0,0,.04);font-family:bold;padding:6px;font-family:"Lato",sans-serif;font-weight:bold;text-align:left;font-size:20px}#linked-resources th{border-bottom:3px solid #dfdfdf}.linked-resource{margin-bottom:12px;padding-bottom:11px;border-bottom:1px solid #dfdfdf}.has-annotation:before{display:inline-block}.o-icon-annotation:before{content:"";font-family:"Font Awesome 5 Free";font-weight:900}.show .value.resource,.show .value.resource .value-content{display:flex;flex-wrap:wrap;align-items:center}.show .value .o-icon-private,.show .value .value-content{margin-right:12px}.collapsible.annotation{border-left:3px solid #dfdfdf;padding:0;border-radius:3px;margin:6px 0 12px 24px;width:100%}.collapsible.annotation h4,.collapsible.annotation .values{width:100%;padding:0}.collapsible.annotation .property{padding:0 12px}.collapsible.annotation .property:not(:first-child){margin-top:12px;border-top:1px solid #dfdfdf;padding-top:12px}.property .value .resource-name:after,.property .value.uri .uri-value-link:after{font-family:"Font Awesome 5 Free";font-weight:900;display:inline-block;margin-left:.5em}.property .value.uri .uri-value-link:after{content:""}.property .value.items .resource-name:after{content:""}.property .value.media .resource-name:after{content:""}.property .value.item_sets .resource-name:after{content:""}.sidebar .meta-group.item-sites .o-icon-external{float:right}.class-row{border-bottom:1px solid #dfdfdf;padding-bottom:11px}.class-label{font-weight:bold}.class-label:after{content:": "}.sidebar{position:fixed;top:48px;left:100%;visibility:hidden;bottom:0;background-color:#f7f7f7;z-index:3;border-left:1px solid #dfdfdf;overflow-y:auto;overflow-x:hidden;width:25%;padding:12px}body.transitions-enabled .sidebar{transition:left .5s,visibility .5s}.sidebar.active,.sidebar.always-open{left:75%;visibility:visible}.sidebar.loading{overflow:hidden}.sidebar.loading *{visibility:hidden}.sidebar.loading:after{font-family:"Font Awesome 5 Free";font-weight:900;content:"";line-height:1;position:absolute;top:.75em;left:calc(50% - .5em);font-size:4em;animation:fa-spin 1s infinite linear;height:1em;width:1em;text-align:center}.sidebar a.o-icon-close{position:absolute;right:12px;top:12px;z-index:3;color:#666}.sidebar .vocabulary,.sidebar .meta-group{margin-bottom:0}.sidebar .value{margin-bottom:6px;border-bottom:1px solid #dfdfdf;padding-bottom:5px;vertical-align:middle}.sidebar .value *:last-child{margin-bottom:0}.sidebar .value:last-child{border-color:transparent;margin-bottom:0}.sidebar input,.sidebar textarea,.sidebar select{width:100%}.sidebar input[type=checkbox],.sidebar input[type=radio]{width:auto}.sidebar h2{font-size:24px;margin-bottom:12px}.sidebar h3,.sidebar label,.sidebar .label{display:block;font-size:16px;font-weight:bold;margin:0 0 12px 0;padding:0 24px 12px 0;position:relative;width:100%;word-wrap:break-word;max-width:none}.sidebar h3:after,.sidebar label:after,.sidebar .label:after{content:"";position:absolute;left:-12px;right:-12px;bottom:0;top:-12px;background-color:#dfdfdf;z-index:-1}.sidebar .field{background-color:transparent;padding:0;margin-bottom:24px;flex-wrap:wrap;justify-content:flex-start}.sidebar .field .option{width:100%}.sidebar .field div.option+div.option{padding-top:11px;border-top:1px solid #dfdfdf;margin-top:12px}.sidebar .button,.sidebar button{background-color:#676767;border-color:#676767;color:#fff}.sidebar .button:disabled,.sidebar .button.disabled,.sidebar button:disabled,.sidebar button.disabled{background-color:rgba(0,0,0,.04);border-color:rgba(0,0,0,.04);color:#676767;box-shadow:none !important}.sidebar button.option{width:100%;text-align:left;border-color:#dfdfdf;background-color:#fff;color:#676767;display:inline-flex;justify-content:space-between}.sidebar button.option:after{content:"";font-family:"Font Awesome 5 Free";font-weight:900;color:#dfdfdf}#sidebar-confirm{display:block;padding-bottom:12px;margin-bottom:12px}#sidebar-confirm input[type=submit]{background-color:#a91919;color:#fff;box-shadow:none}body.sidebar-open #content{width:56.25%}.sidebar .meta-group{margin-bottom:12px}.sidebar .meta-group .value{width:100%;padding:6px 0;margin:0;word-wrap:break-word;display:block}.sidebar .meta-group .value:not(:last-child){border-bottom:1px solid #dfdfdf;padding-bottom:5px}.sidebar .meta-group h4{display:block;background-color:transparent;border-color:#dfdfdf;padding:6px 0;border-bottom:2px solid #dfdfdf;padding-bottom:4px;margin-bottom:0;width:100%}.sidebar .media a:first-child img,.sidebar>img:first-child{height:168px;width:auto;display:block;margin-bottom:12px}.sidebar .meta-group img{height:48px;box-shadow:0 0 0 1px #dfdfdf}.source-type{font-weight:bold}.resource-templates #properties{list-style:none;padding-left:0;margin-left:0}.resource-templates table{width:100%}.resource-templates th,.resource-templates td{padding:6px;vertical-align:top}.resource-templates .property.row{display:flex}.resource-templates .property.row.delete{background-color:#fcc}.resource-templates .property.row.delete .actions li:not(:last-child){display:none}.resource-templates .property.row:not(.delete) .sortable-handle{display:inline-flex}.resource-templates #properties{margin:24px 0 0;clear:both;padding:0}.resource-templates #edit-sidebar{padding-bottom:48px}.resource-templates #edit-sidebar .field h4,.resource-templates #edit-sidebar .field h4+span{width:100%}.resource-templates #edit-sidebar .field h4+span{margin-bottom:12px}.resource-templates #edit-sidebar .field label:not(:first-child),.resource-templates #edit-sidebar .field .option label{margin:0;padding-bottom:6px;padding-right:0;display:flex;justify-content:space-between}.resource-templates #edit-sidebar .field label:not(:first-child):only-child,.resource-templates #edit-sidebar .field .option label:only-child{padding-bottom:0}.resource-templates #edit-sidebar .field label:not(:first-child):after,.resource-templates #edit-sidebar .field .option label:after{padding:0;margin:0;background:transparent}.alternate-label-cell:not(:empty){background-color:#dfdfdf;display:inline-block;padding:0 6px;margin:0 6px;position:relative}.alternate-label-cell:not(:empty):after{content:"";border-top:12px solid transparent;border-bottom:12px solid transparent;border-left:6px solid #dfdfdf;width:0;height:0;position:absolute;left:100%;top:0}.title-property-cell,.description-property-cell{text-transform:uppercase;font-size:12px;font-weight:bold;margin-left:auto;margin-right:12px}.title-property-cell:after,.description-property-cell:after{content:"";font-family:"Font Awesome 5 Free";font-weight:900;display:inline-block;margin-left:6px}.title-property-cell~.actions,.description-property-cell~.actions{margin-left:0}.title-property-cell~.description-property-cell,.description-property-cell~.title-property-cell{margin-left:12px}#modules.installed tbody tr:not(.installed),#modules.uninstalled tbody tr:not(.uninstalled),#modules.needs-upgrade tbody tr:not(.needs-upgrade),#modules.active tbody tr:not(.active),#modules.deactivated tbody tr:not(.deactivated){display:none}.state-filter select{margin-bottom:12px}.module-name{font-weight:bold}.module-author{display:block}#modules .module{border-bottom:1px solid #dfdfdf;padding-bottom:11px;margin-bottom:12px;overflow:hidden}#modules .module-meta{float:left;max-width:50%}#modules .module-actions{float:right;max-width:50%;text-align:right}#modules .module form{display:inline-block}#modules button,#modules .button{display:inline-block;margin-left:6px;box-shadow:0 0 0 1px rgba(0,0,0,.15) inset}#modules button:hover,#modules .button:hover{box-shadow:0 0 0 1px rgba(0,0,0,.3) inset}#modules button:before,#modules .button:before{margin-right:6px}#modules .o-icon-install{box-shadow:0 0 0 1px #addead inset}#modules .o-icon-install:hover{box-shadow:0 0 0 1px #63c363 inset}#modules .o-icon-uninstall{margin-left:24px;box-shadow:0 0 0 1px #e0c3c3 inset}#modules .o-icon-uninstall:hover{box-shadow:0 0 0 1px #da8b8b inset}#edit-keys td{word-wrap:break-word}.api-delete{width:10%}.api-label{width:25%}#system-info-table .label-col{width:25%}#system-info-table th,#system-info-table td{font-size:.875em;padding:0;line-height:1.75;border:none;vertical-align:top}#system-info-table th[scope=rowgroup]{font-size:1em;border-bottom:1px solid #dfdfdf;padding-left:6px}#system-info-table tbody:not(:last-child) tr:last-child td{padding-bottom:24px}#system-info-table th[scope=row]{padding-left:1.5em}.breadcrumbs{border-bottom:1px solid #dfdfdf;padding-bottom:11px;margin-bottom:24px}.breadcrumbs+.field{margin-top:24px}.breadcrumbs a:before{margin-right:6px}.breadcrumbs>*:not(:last-child):after{content:"";font-family:"Font Awesome 5 Free";font-weight:900;display:inline-block;margin:0 calc(12px - 3px) 0 12px;color:#000;cursor:default}#site-item-sets th:first-child,#site-item-sets th:last-child{width:36px}.manual-assignment .inputs label{display:block;padding:0;margin:6px 0 0;min-height:0;line-height:24px}.manual-assignment .inputs label:last-child{margin-bottom:6px}.manual-assignment #advanced-search{margin-top:-6px;padding:12px 0 6px;background-color:rgba(0,0,0,.04);border-top:1px solid #dfdfdf}.manual-assignment #advanced-search.inactive{display:none}.manual-assignment .advanced-search-header{padding:0 6px}.manual-assignment .advanced-search-header a.button{margin-bottom:6px}.manual-assignment .advanced-search-content .field{background-color:transparent}.keep-search,.keep-search input{margin:0 0 0 6px}tr.value.delete>td:not(.input-footer){display:table-cell}tr.value.delete .user-name,tr.value.delete select,tr.value.delete .o-icon-delete{display:none}td.user-meta{width:50%}#site-user-permissions.empty+.no-resources:before{content:""}#site-user-permissions .actions{justify-content:flex-end;padding:6px 0}.indent:before{content:"—";margin-right:-1px}.expand-collapse-all{margin-top:12px;text-align:right}.block{margin-bottom:6px}.block .block-header{position:relative;display:flex;align-items:center;background-color:rgba(0,0,0,.12);padding:6px;font-weight:bold}.block .block-header .actions a:before{text-align:center}.block .block-content input[type=hidden]+*{padding-top:0;margin-top:0}.block.html>div{border:1px solid #dfdfdf}.block .field{padding:0;border-color:transparent;background-color:transparent;margin-top:6px}.block .field:last-child{margin-bottom:0}.block.delete>.block-header{font-weight:normal;display:flex;background:transparent}.block.delete>*:not(.block-header){display:none}.block.delete span.restore-value{padding:0 3px;text-transform:lowercase;width:auto}.block.delete a.restore-value:before{padding:0}.block.delete .sortable-handle{display:none}.delete .block-type,.block .delete div.item-title{margin-left:30px}.delete .block-type{font-weight:bold}.block div.item-title{margin:6px 0;display:flex;align-items:center}.block .item-title img{height:36px;width:auto;display:inline-block;margin-right:6px;vertical-align:top}.block .delete.attachment{background-color:#fcc}.block .delete.attachment .actions .undo{display:inline-block}.block .delete.attachment .sortable-handle,.block .delete.attachment .actions li:not(.undo){display:none}.block .attachments-form{margin-bottom:12px}.block .attachments-form a h4{display:inline-block}.block .attachment .actions{margin-left:auto}.block .attachment .actions .button{background-color:transparent;color:#a91919;padding:0;min-height:0}.block .attachment .actions .button:hover{color:#a91919}.block .attachment .actions .undo{display:none}.block .block-content{clear:both;background-color:rgba(0,0,0,.04);padding:6px}.block.sortable-ghost .block-content{display:none}.block-content fieldset:last-of-type{margin-bottom:0}.block .attachment{display:flex;align-items:center;position:relative;padding:0 6px}.block .attachment:not(:last-child){border-bottom:1px solid #dfdfdf;padding-bottom:-1px}.block .attachment .button{margin-bottom:0}.block .attachment-add{margin:6px 0 0}.block-header.collapse:after{content:none}.block-content .expand,.block-content .collapse{width:100%;display:flex;padding:0 6px 0 0;justify-content:space-between}.block .field-meta .collapse+.collapsible{width:auto;border:0}.block .expand h4,.block .collapse h4{display:inline-block;padding:0}.block-content .collapse+.collapsible{border-top:1px solid #dfdfdf;padding:-1px 0 0 24px;margin-top:6px}.block[data-block-layout=html] [contenteditable=true]{resize:vertical;min-height:72px;max-height:288px}#attachment-options .option{position:relative;margin-bottom:12px}#attachment-options .expand,#attachment-options .collapse{position:absolute;right:0;top:0}#attachment-options h3{overflow:visible;white-space:normal}#attachment-item-select{display:block;margin:12px 0 0}#attachment-options .selected-attachment{margin-bottom:12px;margin-top:-12px;box-sizing:content-box;margin-right:-12px;margin-left:-12px;padding-right:12px;padding-left:12px;padding-top:12px;padding-bottom:12px;overflow:hidden}#attachment-options .selected-attachment img{height:96px;width:auto;float:right;margin:0 0 0 12px}#attachment-options .selected-attachment p:first-child{margin:0}#attachment-options h3.item-title{text-align:left}#attachment-options .item-thumbnail~h3.item-title{width:100%}#attachment-options .media-title{font-size:12px;display:block;width:calc(100% - 108px);float:left;word-wrap:break-word;text-align:left;clear:left}#attachment-options .item-thumbnail~#attachment-item-select{font-size:12px;display:inline-block;width:calc(100% - 108px);word-wrap:break-word}#attachment-options h3{word-wrap:break-word}#attachment-options .media-list{list-style:none;padding:0;margin:0 0 12px}#attachment-options .media-list li.media{position:relative;height:48px;width:48px;cursor:pointer;display:inline-block;padding:3px;border:1px solid #dfdfdf}#attachment-options .media-list li.media.attached,#attachment-options .media-list li.media:hover{background-color:rgba(0,0,0,.04)}#attachment-options .media-list img{width:100%;height:auto}#asset-options .selected-asset{overflow:hidden}#asset-options .selected-asset-image{float:left;margin:0 12px 0 0;max-width:50%}#asset-list.active{z-index:6}#asset-options .selected-asset .selected-asset-name{display:none}.asset-attachments-form{margin-bottom:12px}.add-asset-attachment{margin-top:6px}#asset-options .sidebar-content>div{margin-bottom:2rem}.asset-attachment-select{margin-top:.5rem}.asset-title{display:flex;align-items:center}.asset-title img{height:100%;width:auto}.asset-title .thumbnail:not(:empty){height:2rem;position:relative;width:2rem;margin:.25rem .25rem .25rem 0;overflow:hidden;display:inline-flex;justify-content:center}#asset-options .none-selected.inactive{display:none}#asset-options .none-selected:not(.inactive)~*{display:none}#asset-options .page-status{margin-bottom:12px}#asset-options .selected-page+.o-icon-external{margin-left:6px}.browse-defualts-form-element{display:flex;justify-content:space-between}.browse-defualts-form-element select{width:49.5%}input[type=text].page-selector-filter{width:100%;margin-bottom:12px}#nav-page-links,#nav-custom-links{width:100%}.page-selector-filter.empty,#nav-page-links .nav-page-link,#nav-page-links .added.active.nav-page-link,#no-pages{display:none}#nav-page-links .active.nav-page-link{display:flex}.empty~#no-pages{display:block}.site-page-add{margin:0}.jstree>.jstree-node:first-child .jstree-anchor{margin-top:0}.block-pagelist-tree li:last-child{margin-bottom:6px}.selectable-themes,.current-theme{display:flex;flex-wrap:wrap}.selectable-themes img,.current-theme img{max-width:100%;height:auto;vertical-align:bottom;position:relative;z-index:1}.selectable-themes .error,.current-theme .error{background-color:#f4b4b4;border-radius:3px;padding:6px 10px;margin:6px 0;display:block;width:100%;order:2}.theme-thumbnail{align-self:flex-start}.current-theme .error+ul{font-family:monospace;padding:11px;border:1px solid #dfdfdf;list-style-type:none}.invalid .theme-thumbnail img{opacity:.5}.selectable-themes .theme{width:calc(33.33% - 24px);margin:0 24px 24px 0;padding:11px;border:1px solid #dfdfdf;background-color:#fff;display:flex;flex-wrap:wrap}.selectable-themes .theme:hover{border:3px solid #9f9f9f;padding:9px}.selectable-themes .invalid.theme:hover{border:1px solid #dfdfdf;padding:11px}.selectable-themes .theme-thumbnail{width:100%;margin-bottom:12px;border:1px solid #dfdfdf}.selectable-themes .active.theme{background-color:#e7e7e7;position:relative;overflow:hidden;border-width:3px;padding:9px}.selectable-themes .active.theme:after{content:"";font-family:"Font Awesome 5 Free";font-weight:900;position:absolute;bottom:0;right:0;opacity:.15;font-size:96px;line-height:96px}.current-theme{padding-bottom:23px;border-bottom:1px solid #dfdfdf;margin-bottom:24px;flex-wrap:nowrap}.current-theme .theme-thumbnail{width:50%;margin:0 24px 0 0;border:1px solid #dfdfdf}.current-theme .current-theme-info{width:calc(50% - 24px)}.current-theme-label{font-size:16px;text-transform:uppercase;display:block;margin-bottom:6px}.theme-meta{display:flex;flex-direction:column;width:100%}.theme-resource-pages .blocks{list-style:none;padding-left:0;border:1px solid #dfdfdf;padding:12px;min-height:30px}.theme-resource-pages .block{width:100%;background-color:rgba(0,0,0,.04);padding:6px;position:relative;margin-bottom:6px;display:flex;height:36px}.theme-resource-pages .block.delete{background-color:#fcc;padding-left:36px}.theme-resource-pages .block.delete>*:not(.block-header){display:block}.theme-resource-pages .block.delete .sortable-handle{display:none}.theme-resource-pages button:disabled{display:none}.jobs.browse th:first-child,.jobs.browse td:first-child{width:10%}body.minimal{padding:0;margin:48px 0;width:93.75%;max-width:100%;margin-left:auto;margin-right:auto;height:auto;background-color:#404e61}body.minimal:after{content:" ";display:block;clear:both}body.minimal div[role=main]>h1:first-of-type{position:static;padding:0;width:100%;height:auto;display:inline-block;margin:0 0 24px 0}body.minimal h2{font-size:20px;margin-bottom:12px}body.minimal h3{font-size:18px;margin-bottom:12px}body.minimal fieldset legend{font-weight:bold;font-size:20px;margin-bottom:12px}body.minimal .logo{position:static;width:auto;float:none;padding:0;text-align:center;font-size:32px;line-height:48px}body.minimal div[role=main]{width:100%;min-height:0;margin:0;padding:48px 6.25%;overflow:hidden}body.minimal .inputs{width:70%}body.minimal .inputs input{width:calc(66.66% - 6px);vertical-align:top}body.minimal .inputs *:only-child{width:100%}body.minimal [type=submit]{width:100%;display:block;margin:auto;clear:both}body.minimal .field:last-child{margin-bottom:0}body.minimal .site-list{margin-bottom:24px;display:flex;flex-wrap:wrap}body.minimal .site-list .site{margin-bottom:12px;overflow:auto;max-width:60rem;width:50%;padding-right:1rem}body.minimal .site-list .site-link{display:inline-block;font-size:18px}body.minimal .site-list .site-summary{margin:0;line-height:20px}body.minimal .site-list .site-thumbnail{float:left;display:block;margin-right:1rem}body.minimal .site-list .site-thumbnail-image{max-width:15rem;vertical-align:bottom}body.minimal .results{margin-bottom:24px}body.minimal .results>ul{padding-left:0}body.minimal .results>ul>li{list-style-type:none}body.minimal .advanced-search{margin:-12px 0 24px;display:block}body.minimal .advanced-search-actions{margin:12px 0}body.minimal .advanced-search-actions input[type=submit]{width:auto;display:inline-block}.forgot-password{margin:6px 0}.sitewide-search-form{display:flex;margin-bottom:24px}.sitewide-search-form input[type=text]{min-width:60%;margin-right:6px}.sitewide-search-form input[type=submit]{width:auto;margin:0}body.minimal .site.results thead{background-color:rgba(0,0,0,.04)}.results>ul{display:flex;flex-wrap:wrap;align-items:flex-start;margin-bottom:0}.results>ul>li{border:1px solid #dfdfdf;border-radius:3px;padding:6px 6px 0;margin-bottom:12px;width:calc(50% - 12px)}.results>ul>li:nth-child(2n){margin-left:12px}.results ul ul{list-style:none;padding:0;margin-top:6px}.results li li{padding:6px;border-top:1px solid #dfdfdf;margin:0px -6px}.results .result-title{background-color:rgba(0,0,0,.04);display:block;padding:6px;margin:-6px;font-weight:bold}.results+.pagination{margin-top:-24px}.site.results .result-title{border-bottom:1px solid #dfdfdf;margin-bottom:6px}.site.results .result-site{margin-bottom:6px;display:block}.asset-form-element{line-height:36px}.asset-form-element.empty .asset-form-clear{display:none}.asset-form-element:not(.empty) .no-selected-asset{display:none}.selected-asset,.no-selected-asset{display:block}.selected-asset-name:not(:empty)~.none-selected,.selected-page:empty+a,.selected-page:not(:empty)~.none-selected{display:none}.selected-asset-image{max-width:100%}.asset-form-select{margin-top:12px}.new.attachment{display:none}.asset-upload{overflow:hidden;margin-bottom:24px}.asset-upload button{margin:6px 0 0;display:none}.asset-upload button.active{display:inline-block}.asset-upload ul.errors{color:#a91919;margin-top:0;word-wrap:break-word}.asset-upload ul.errors:empty{display:none}.asset-upload ul.errors a{border-bottom:1px solid #a91919}.asset-upload label{margin:6px 0;padding:0}.asset-upload label:after{content:none}.asset-upload input[type=file]{width:100%}.asset-filters{margin-bottom:6px}.asset-list .asset{padding-bottom:5px;border-bottom:1px solid #dfdfdf;margin-bottom:6px}.asset-list .asset:last-child{border-bottom-color:transparent}.asset-entry{display:flex;align-items:center;word-wrap:break-word}.asset-entry img{margin-right:6px;max-height:48px;max-width:50%}.asset-entry .asset-name{flex-grow:1}.color-picker{display:flex}.color-picker input[type=text]{margin:0}.color-picker .color-picker-sample{border:1px solid #dfdfdf;width:30%;margin-left:6px}}@media screen and (max-width: 640px){script{display:none !important}body{padding:0}.mobile-only{display:block}button.mobile-only{width:100%}header{width:100%;float:none;text-align:center;position:fixed;top:0;left:0;padding:0;right:0;z-index:1000;min-height:0}header .button{border-radius:0px;position:absolute;top:0;z-index:1001;color:#fff;background-color:#222933;box-shadow:none}header .o-icon-menu.button{left:0;border-right:1px solid rgba(0,0,0,.08);width:36px}header .o-icon-search.button{left:36px}header .o-icon-user.button{right:0}header nav ul.navigation>li:not(:first-of-type){margin-top:0}.logo{line-height:36px;padding:0 16.6666666667%;width:100%;text-align:center;display:block;background-color:#404e61}#user,#search,header nav{position:fixed;top:-9999px;left:-9999px;z-index:1000}header nav#site-nav{position:static;background-color:#fff;padding:0;margin-bottom:0}header nav#site-nav h5{border-top:1px solid #dfdfdf;padding-top:6px -1px;margin-bottom:0}header nav#site-nav h5 a{padding:0;border-bottom:0}#menu.active,#user.active,#search.active{top:36px;left:0;bottom:0;right:0;background-color:#fff;margin:0}footer{margin:0;padding:0;position:static;width:100%;text-align:center}footer:after{position:static;background:transparent}.browse td:first-child,.browse th:first-child{width:100%}td .o-icon-private,td .o-icon-user-inactive{vertical-align:top;margin:0}div[role=main]{margin:36px 0 0 0;width:100%;min-height:calc(100% - 72px);position:relative;padding-top:48px}div[role=main]>h1:first-of-type{width:auto;position:static;padding:12px 1.0416666667%;height:auto;margin:0 -1.0416666667% 12px;white-space:normal;line-height:36px}#menu{text-align:left;background-color:#fff;position:fixed;overflow:scroll}#menu ul{margin-bottom:0;border-bottom:0;padding-bottom:0}#menu a{display:block;padding:6px 12px 5px;color:#676767;border-bottom:1px solid #dfdfdf}#menu li:last-child a{border-bottom:0;padding-bottom:6px}#menu h5 a{padding:0;border-bottom:0}#menu h5{height:36px;color:#676767;background-color:rgba(0,0,0,.04);padding:6px 12px 5px;border:1px solid #dfdfdf;border-width:1px 0}#menu h4{background-color:rgba(0,0,0,.12);margin-bottom:0}#menu h4:not(:first-of-type){margin-top:0}#menu a.public,#menu a.expand,#menu a.collapse{height:36px;margin:-36px 0 0;padding:0 12px 0 0}#menu a.public:before,#menu a.public:after,#menu a.expand:before,#menu a.expand:after,#menu a.collapse:before,#menu a.collapse:after{height:36px;line-height:36px}#mobile-nav{display:block}#mobile-nav a.active{background-color:#500c0c}#user{text-align:center}#user .user-id{color:#676767;width:100%;margin:0 6px 24px}#user .user-id a{color:#a91919}#user .logout{display:block;margin:12px 6px;font-size:16px;color:#676767;border-radius:3px;width:calc(100% - 12px);min-height:36px;background-color:rgba(0,0,0,.08);border-radius:3px;border:0;box-shadow:0 0 0 1px rgba(0,0,0,.15) inset;padding:6px 10px;display:inline-block;text-align:center;cursor:pointer;margin:0 6px}#user .logout:last-of-type:before{content:""}#user .logout a{color:#676767}#page-actions{top:36px;background-color:#fff;width:100%;border-bottom:1px solid rgba(0,0,0,.08);height:48px;padding-bottom:5px}#sidebar{position:fixed;top:36px;z-index:100;width:100%}#sidebar #content.sidebar-open{left:0}body.sidebar-open #content{width:100%}.sidebar{width:100%;top:36px;z-index:1000}.sidebar.always-open{left:100%}.sidebar.active,.confirm-panel{left:0;width:100%}fieldset.section>.always.active{content:"";bottom:0;left:0;right:0;height:48px;background-color:#fff;position:fixed;border-top:1px solid rgba(0,0,0,.04)}fieldset.section>.always.active button{width:100%;margin:6px}#modules .module-meta,#modules .module-actions{width:100%;max-width:100%}#modules .module-meta{margin-bottom:12px}#modules .module-actions{text-align:left}#modules button,#modules .button{margin:0 6px 0 0}.vocabs.update td{width:100% !important}#search-form{margin:48px 4.1666666667%}.batch-edit.button{margin:0;border-radius:0px;position:relative;z-index:1}.browse table{position:relative}.browse .sorting{float:left}.browse .pagination{margin-right:48px}.jobs.browse th:first-child,.jobs.browse td:first-child{width:100%}fieldset.section,fieldset.section{margin-bottom:0;position:relative}fieldset.section>legend:first-child{position:relative;left:auto;display:block;width:100%;font-size:20px;padding:6px 9px 6px 0;color:#a91919;cursor:pointer;border-bottom:3px solid rgba(0,0,0,.08);padding-bottom:-3px;margin-bottom:12px}fieldset.section>legend:after{content:"";font-family:"Font Awesome 5 Free";position:absolute;right:9px;top:12px}fieldset.section.mobile-active>legend:after{content:""}.add .active.section>.button,.edit .active.section>.button{display:inline-block}.field-meta,.inputs{width:100%}.field-actions{position:absolute;top:9px;right:1.6666666667%;z-index:1;width:50%}.field-actions a{float:right;display:block}.field-actions a.button{margin-left:.5em !important}.field-meta label,.field-description p{line-height:24px;margin-bottom:6px}.field-meta label{font-weight:bold}.unset .field-meta{width:100%}.show .sidebar.active{position:static;border:1px solid #dfdfdf;padding:11px;margin-top:24px}.show .section .property,.show .section .meta-group{margin-bottom:6px;box-shadow:0 0 0 1px #dfdfdf;border-radius:2px}.show .section .meta-group h4,.show .section .property h4{padding-bottom:6px;border-bottom:1px solid #dfdfdf;background-color:rgba(0,0,0,.04)}.show .section .meta-group h4,.show .section .meta-group .value,.show .section .property h4,.show .section .property .values{width:100% !important;padding:6px !important}.show .section .meta-group .value:not(:first-of-type),.show .section .property .value:not(:first-of-type){border-top:1px solid #dfdfdf;padding-top:6px -1px;margin-top:6px}.show .sidebar .meta-group .value:not(:first-of-type),.show .sidebar .property .value:not(:first-of-type){padding-top:6px}body.minimal{width:100%;margin:0}body.minimal .logo{background-color:transparent}body.minimal div[role=main]{padding:24px 6.25%}body.minimal div[role=main]>.messages{margin-top:24px}body.minimal .inputs{width:100%;margin-left:0}body.minimal footer{color:#fff}.tablesaw tr{overflow:hidden;margin-bottom:0}.tablesaw tr:first-of-type{border-top:1px solid #dfdfdf}.browse td:not(:first-of-type) .tablesaw-cell-content,#properties td:not(:first-of-type) .tablesaw-cell-content{display:inline-block}.tablesaw td:first-of-type{background-color:rgba(0,0,0,.04)}.tablesaw td:first-of-type .tablesaw-cell-label{width:0;height:0;overflow:hidden;padding:0;display:block}.tablesaw td:first-of-type .tablesaw-cell-content{width:100%;max-width:100%}.batch-edit.tablesaw td:first-of-type{width:100%;background:rgba(0,0,0,.04)}.batch-edit.tablesaw td:first-of-type img{margin-bottom:0}.batch-edit.tablesaw td:first-of-type .tablesaw-cell-label{width:0;overflow:hidden;padding:0}.batch-edit .tablesaw-cell-content{display:inline-flex}.tablesaw-cell-content{width:70%;max-width:70%}.tablesaw-cell-content img{margin:0 6px 0 0}.tablesaw tr:last-of-type td,.tablesaw tr:last-of-type th,.tablesaw th,.tablesaw td{padding-top:6px;padding-bottom:6px;vertical-align:top}.tablesaw th:not(:last-of-type),.tablesaw td:not(:last-of-type){border-bottom:1px solid #dfdfdf}.tablesaw tr.delete{border:0}.tablesaw tr.delete td{border:0}.tablesaw tr.delete td:not(:first-of-type){display:none}.resource-template th:first-of-type,.resource-template td:first-of-type{width:100%}#site-user-permissions tr.user.value{position:relative}#site-user-permissions td:nth-child(3){position:absolute;top:0;right:0;padding:0 6px 0 0}#site-user-permissions td:nth-child(3) .tablesaw-cell-label{display:none}#site-user-permissions td:nth-child(3) .tablesaw-cell-content{width:100%;max-width:100%}#site-user-permissions.tablesaw-stack tbody tr{border-bottom:0}} \ No newline at end of file +/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block}audio:not([controls]){display:none;height:0}progress{vertical-align:baseline}template,[hidden]{display:none}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}svg:not(:root){overflow:hidden}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}button,input,select,textarea{font:inherit;margin:0}optgroup{font-weight:bold}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;max-width:100%;padding:0;white-space:normal}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-input-placeholder{color:inherit;opacity:.54}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}@media screen{*{box-sizing:border-box}em,i{font-style:italic}strong,b{font-weight:bold}a{text-decoration:none}a:link,a:visited{color:#a91919}a:active,a:hover{color:#e34545}h1,h2,h3,h4,h5,h6{margin:0}h3,h4,h5,h6{font-weight:bold}h1{font-size:32px;line-height:48px;margin-bottom:24px}h2{font-size:30px;line-height:36px;margin-bottom:24px}h3{font-size:24px;margin-bottom:24px}h5{font-size:14px}p{margin:24px 0}ul{padding-left:24px;list-style:disc}pre{max-width:100%;overflow-x:auto}html,body{height:100%}body{font-family:"Lato",sans-serif;font-size:16px;line-height:24px;color:#676767;overflow-x:hidden}table{width:100%;border-spacing:0;table-layout:fixed}th,table.tablesaw th{font-weight:bold;text-align:left;padding:6px .5em}table,table.tablesaw{margin-bottom:12px;border:1px solid #dfdfdf;border-radius:3px;border-collapse:separate}.tablesaw tr:not(:last-child) td{border-bottom:1px solid #dfdfdf}tr.delete{background-color:#fcc}td,table.tablesaw td{padding:6px .5em 5px;position:relative;vertical-align:middle}table.tablesaw td:first-child a{word-wrap:break-word}table.tablesaw thead tr:first-child th{padding-top:6px;padding-bottom:5px;border-bottom:1px solid #dfdfdf}legend{font-size:20px;padding:12px 0;font-weight:bold}[contenteditable=true],textarea{clear:both;padding:6px;border:1px solid rgba(0,0,0,.15);display:block;background-color:#fff;min-height:72px;overflow-y:auto}[contenteditable=true] p{margin:12px 0}.cke_dialog_body textarea{max-height:none}input,[contenteditable=true],textarea,button,select{font-family:"Lato",sans-serif;font-size:16px;line-height:24px;margin:0;color:#676767}input[type=text],input[type=password],input[type=email],input[type=url],input[type=number],input[type=date],input[type=datetime-local]{appearance:none;border-radius:0;height:36px;border:1px solid rgba(0,0,0,.15);padding:6px;margin:0}:disabled{background-color:rgba(0,0,0,.04);box-shadow:0 0 0 1px rgba(0,0,0,.15) inset;color:#a7a7a7;-webkit-text-fill-color:#a7a7a7;cursor:default}:disabled:hover{box-shadow:0 0 0 1px rgba(0,0,0,.15) inset !important}::placeholder{font-style:italic}[contenteditable=true]>*:first-child{margin-top:0}[contenteditable=true]>*:last-child{margin-bottom:0}input[type=submit],button,a.button,.button{min-height:36px;background-color:rgba(0,0,0,.08);color:#676767;border-radius:3px;border:0;box-shadow:0 0 0 1px rgba(0,0,0,.15) inset;padding:6px 10px;display:inline-block;text-align:center;cursor:pointer;margin:0 0 12px 0}input[type=submit]:hover:not(.inactive),button:hover:not(.inactive),a.button:hover:not(.inactive),.button:hover:not(.inactive){box-shadow:0 0 0 1px rgba(0,0,0,.3) inset}input[type=submit].inactive,button.inactive,a.button.inactive,.button.inactive{box-shadow:none;background-color:#d2d2d2;cursor:default;border:0}.red.button{background-color:#fdefef;box-shadow:0 0 0 1px #e0c3c3 inset;color:#a91919}.red.button:hover{box-shadow:0 0 0 1px #da8b8b inset}.green.button{background-color:#cdffcd;color:green;box-shadow:0 0 0 1px #addead inset}.green.button:hover{box-shadow:0 0 0 1px #63c363 inset}.required .field-meta{position:relative;padding-right:36px}.required .field-meta:after{font-family:"Font Awesome 5 Free";font-weight:900;content:"";font-size:12px;position:absolute;right:12px;color:#a91919;top:6px}label input[type=checkbox]{display:inline-block;width:auto}label.required:after{font-family:"Font Awesome 5 Free";font-weight:900;content:"";font-size:12px;color:#a91919;float:right;padding-right:12px}.touched:invalid{box-shadow:0 0 2px 2px #a91919}.field{width:100%;background-color:rgba(0,0,0,.04);padding:6px;position:relative;margin-bottom:6px;display:flex;flex-wrap:wrap}.field:first-child{border-color:transparent}.media-field-wrapper{width:100%;padding:12px 6px;margin-bottom:6px;background-color:rgba(0,0,0,.04);position:relative}.media-field-wrapper .field{width:100%;margin:0 0 6px;padding:0;background-color:transparent}.media-field-wrapper .field:last-of-type{margin-bottom:0}.media-field-wrapper .field:last-of-type .field-meta,.media-field-wrapper .field:last-of-type .inputs{margin-bottom:-6px}.media-field-wrapper .actions{font-size:16px;padding:6px 0}select{background:#fff url("../img/select-arrow.svg") no-repeat;background-position:right 6px center;background-size:8px;border:1px solid #dfdfdf;height:36px;line-height:36px;font-size:16px;margin:0;padding:0 24px 0 6px;border-radius:3px;vertical-align:top;appearance:none}select::-ms-expand{display:none}label input{margin-right:.5em}fieldset{margin:0 0 24px;border:0;padding:0;min-width:100%}.selector input[type=text],.selector>ul{width:100%}.selector>ul{margin:0}.chosen-container{max-width:100%}.chosen-container-single .chosen-single,.chosen-container-multi .chosen-choices{background-image:none;background-color:#fff;box-shadow:none;font-size:16px;line-height:24px;padding:6px;height:auto;border-radius:3px;border-collapse:#dfdfdf;color:#676767;border-color:#dfdfdf}.chosen-container-multi.chosen-container-active .chosen-choices{border-color:#aaa;border-radius:3px 3px 0 0}.chosen-container-multi.chosen-container.chosen-drop-up .chosen-choices{border-radius:0 0 3px 3px}.chosen-container-multi.chosen-container .chosen-drop{top:calc(100% - 1px);border-top:1px solid #aaa}.chosen-container-multi.chosen-container.chosen-drop-up .chosen-drop{bottom:calc(100% - 1px)}.chosen-container-multi .chosen-choices{padding:3px}.chosen-container-multi .chosen-choices li.search-field input[type=text]{font-family:"Lato",sans-serif;margin:0}.chosen-container-multi .chosen-choices li.search-choice{background:#f0f0f0;font-size:14px;line-height:24px;border:0;padding:0 27px 0 0}.chosen-container-multi .chosen-choices li.search-choice span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;display:block}.chosen-container .search-choice .group-name{color:#676767;position:relative;background-color:rgba(0,0,0,.04);margin-right:6px;padding:0 6px;display:inline-block;vertical-align:top}.chosen-container-multi .chosen-choices li.search-choice .search-choice-close{top:50%;right:6px;transform:translateY(-50%)}.chosen-container .search-choice .group-name:after{content:""}.chosen-container-multi .chosen-choices li.search-field input[type=text]{min-height:0;margin:3px;height:auto;line-height:24px}.chosen-container-active.chosen-with-drop .chosen-single{background-image:none}.chosen-container-single .chosen-single abbr{top:12px}.chosen-container-single .chosen-single div b{background:none !important}.chosen-container-single .chosen-single div b:after{font-family:"Font Awesome 5 Free";font-weight:900;content:"";line-height:24px;padding:6px 0;display:inline-block}.chosen-container-active.chosen-with-drop .chosen-single div b:after{content:""}.chosen-container-single .chosen-search input[type=text]{background:none !important}.chosen-search{position:relative}.chosen-search:after{font-family:"Font Awesome 5 Free";font-weight:900;content:"";line-height:24px;padding:6px 0;display:block;position:absolute;top:3px;right:12px}.chosen-container .chosen-results li.highlighted{background-color:#676767;background-image:none}.chosen-container.chosen-drop-up .chosen-drop{top:auto;bottom:100%;border-radius:3px 3px 0 0;box-shadow:0 -1px 2px rgba(0,0,0,.15);border-top:1px solid #aaa}.chosen-container-active.chosen-drop-up.chosen-with-drop .chosen-single{border-radius:0 0 3px 3px}.flex{display:flex}.mobile-only{display:none}.sr-only{left:-9999px}div[role=main]>.messages{margin-bottom:12px}div[role=main]>.messages li{margin:0 0 6px}div[role=main]>.messages .error{background-color:#f4b4b4}div[role=main]>.messages .success{background-color:#cdffcd}div[role=main]>.messages .warning{background-color:#fff6e6}div[role=main]>.messages a{text-decoration:underline}.messages{padding:0;margin:0;clear:both}.messages li{background-color:rgba(255,255,255,.5);border-radius:3px;padding:6px 10px;margin-top:6px;display:block;width:100%}.field .messages{width:70%;color:#a91919;margin-left:auto}.field .messages li{box-shadow:0 0 0 1px inset}.error,.error a{color:#a91919}.success,.success a{color:green}.warning,.warning a{color:orange}.version-notification{background-color:#cdffcd;color:green;border-radius:3px;padding:6px 10px;margin-top:6px;display:block;width:100%}.version-notification a{color:green;text-decoration:underline}table .icon-sortable{opacity:.4;font-size:12px;line-height:100%}.row{width:100%;background-color:rgba(0,0,0,.04);padding:6px;position:relative;margin-bottom:6px}.row.delete{background-color:#fcc;overflow:hidden}.jstree-themeicon,.sortable-handle{cursor:move;margin-right:12px;width:18px}.jstree-themeicon:before,.sortable-handle:before{content:"";font-family:"Font Awesome 5 Free";font-weight:900;opacity:.35;font-size:20px;line-height:24px}.jstree i.jstree-themeicon{color:#676767;position:static;top:auto;right:auto}.o-description{margin-bottom:0}a.expand,a.collapse{color:#676767}.expand:after{content:"";font-family:"Font Awesome 5 Free";font-weight:900;margin-left:3px}.collapse:after{content:"";font-family:"Font Awesome 5 Free";font-weight:900;margin-left:3px}.selector-table{display:table}.selector-table.empty,.selector-table+.no-resources{display:none}.selector-table.empty+.no-resources{display:block}.selector .resources-available.empty,.selector .resources-available+.resources-unavailable{display:none}.selector .resources-available.empty+.resources-unavailable{display:block}.selector .selector-child.filter-hidden,.selector .selector-child.added{display:none}header{background-color:#404e61;width:18.75%;min-height:100vh;text-align:left;padding:0 1.0416666667% 24px;color:#bdcde3}.skip{position:absolute;left:-9999px}.skip:focus{position:absolute;top:0;left:45%;width:10%;z-index:1002;text-align:center;background-color:#fff;border-radius:0 0 3px 3px;border:1px solid #dfdfdf;padding:5px}.logo a,#user a{color:#bdcde3}#user{color:#fff;padding-top:12px;margin-bottom:-6px;display:flex;flex-wrap:wrap}#user p{margin:0 0 6px;display:inline-flex;vertical-align:top}#user .user-id{text-transform:uppercase;font-size:12px;margin-right:auto}#user .user-id a.button{display:inline-block;font-size:12px;text-transform:none;margin-bottom:0;background-color:#222933;padding:0 6px;min-height:0;border:0}#user .user-show{border-radius:3px 0 0 3px;margin-right:1px;display:inline-flex;max-width:85%;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}#user .user-show:before{margin-right:6px}#user .user-settings{border-radius:0 3px 3px 0;border-left:0}#user .user-settings:before{content:"";font-family:"Font Awesome 5 Free";font-weight:900}#user .logout{font-size:12px;padding:0 6px;background-color:#222933;border-radius:3px;display:inline-block;min-width:25%;text-align:center}.logo{padding:6px 6.25%;margin:0 -6.25%;background-color:#222933}#search{width:100%;display:inline-block;vertical-align:top;margin:24px 0}#search input[type=text]{width:calc(100% - 72px);float:left}#search button{width:36px;text-indent:-9999px;background-color:#222933;color:#bdcde3;border:0;float:left;margin:0;border-radius:0;position:relative;height:36px;box-shadow:none}#search button:last-of-type{border-left:1px solid rgba(255,255,255,.2);border-radius:0 3px 3px 0}#search button:last-of-type:after{content:""}#search button:after{content:"";font-family:"Font Awesome 5 Free";font-weight:900;text-indent:0;position:absolute;top:0;left:0;width:36px;line-height:36px;text-align:center}#advanced-options{display:none}div[role=main]>h1:first-of-type{background-color:#fff;font-size:24px;position:fixed;padding:3px 30% 3px 1.0416666667%;z-index:3;top:0;right:0;width:81.25%;height:48px;border-bottom:1px solid #dfdfdf;overflow:hidden;line-height:36px}div[role=main]>h1:first-of-type .title{text-overflow:ellipsis;white-space:nowrap;max-width:65%;display:inline-block;overflow:hidden;vertical-align:middle}.subhead{text-transform:uppercase;font-size:14px;padding:0 6px;background-color:#eee;line-height:36px;vertical-align:middle;margin:0 12px 0 0;font-weight:normal;display:inline-block}.subhead:before{font-family:"Font Awesome 5 Free";font-weight:900;display:inline-block;margin-right:6px;font-size:16px;vertical-align:top}.action{display:inline-block;vertical-align:middle}.action:before{content:"·";margin:0 12px}.sidebar-open footer{margin-right:25%}footer{font-size:12px;position:relative;margin-top:-27px;margin-left:18.75%;padding-right:1.0416666667%;text-align:right}footer .site-version{margin:0;display:inline-block}footer .version-number{display:inline-block;margin:0 12px;line-height:1}body.transitions-enabled footer{transition:margin-right .5s}footer>a:not(:last-child){margin-right:12px}nav ul{padding:0;list-style:none;margin:0}nav.pagination{margin-bottom:12px;overflow:hidden}nav.pagination form,nav.pagination .button,nav.pagination .row-count{float:left}nav.pagination form{margin-right:12px}nav.pagination form *{display:inline-block;padding:0;text-align:center}nav.pagination .button{border-radius:0;margin:0;padding:0 10px}nav.pagination .button,nav.pagination input[type=text],.sorting button,.sorting select{font-size:13.08px;min-height:0;height:24px;line-height:24px;vertical-align:top;background-size:6.5408px}nav.pagination .button{box-shadow:0 0 0 1px #c8c8c8 inset;position:relative}nav.pagination .button:hover{z-index:1}nav.pagination .button:before{vertical-align:top;line-height:24px}nav.pagination .previous.button{border-radius:3px 0 0 3px}nav.pagination .next.button{border-radius:0 3px 3px 0;margin-left:-1px}nav.pagination form input[type=text]{margin-right:.25em;width:48px;border:1px solid #dfdfdf;padding:5px}nav.pagination+*:not(.sorting){clear:left}#mobile-nav{display:none}.mobile-container{position:relative}button .o-icon-private{margin:0 6px;color:#dfdfdf}header nav h4{padding-bottom:5px;border-bottom:1px solid #364252;margin-bottom:6px}header nav h4:not(:first-of-type){margin-top:24px}header nav ul.navigation>li:not(:first-of-type){margin-top:6px}header nav ul.navigation>li:not(:last-of-type){border-color:#dfdfdf}header nav ul.navigation li li{display:none}header nav ul.navigation li.active li{display:block;margin-left:24px}header nav ul.navigation li.active>a{color:#fff}header nav a:link,header nav a:visited{color:#bdcde3}header nav li>a:before{content:"";font-family:"Font Awesome 5 Free";font-weight:900;display:inline-block;width:24px}header nav .items:before,.items .subhead:before{content:""}header nav .media:before,.media .subhead:before{content:""}header nav .item-sets:before,.item-sets .subhead:before{content:""}header nav .vocabularies:before,.vocabularies .subhead:before{content:""}header nav .resource-templates:before,.resource-templates .subhead:before{content:""}header nav .users:before,.users .subhead:before{content:""}header nav .modules:before,.modules .subhead:before{content:""}header nav .jobs:before,.jobs .subhead:before{content:""}header nav .sites:before,.sites .subhead:before{content:""}header nav .settings:before,.settings .subhead:before{content:""}header nav .assets:before,.assets .subhead:before{content:""}header nav li li a:before{content:""}header ul.navigation{margin-bottom:6px}#menu{position:relative}#menu h5{text-transform:uppercase;border-top:1px solid #364252;padding-top:5px;margin-bottom:0}#menu .expand,#menu .collapse{width:100%;z-index:1;padding-bottom:6px;margin-bottom:6px}#site-nav{background-color:#364252;padding:6px;margin-bottom:12px;border-radius:3px}#site-nav h5{border-top:0;border-bottom:1px solid #2c3542;padding:0 24px 5px 0;margin-bottom:6px}header nav#site-nav h5 a:before{content:"";font-family:"Font Awesome 5 Free";font-weight:900;width:24px;display:inline-block;font-size:16px}#menu .pages:before,.site-pages .subhead:before{content:""}#menu a.navigation:before{content:""}#menu a.public{float:right;text-align:right;font-size:16px;line-height:30px;margin-top:-39px}#menu a.resources:before{content:""}#menu a.site-info:before{content:""}#menu a.theme:before,.theme-settings .subhead:before{content:""}div[role=main]{width:81.25%;padding:60px 1.0416666667% 36px;background-color:#fff;min-height:100%;overflow:hidden}body.transitions-enabled div[role=main]{transition:width .5s}#dashboard>p{width:100%;margin-top:12px}#manage-resources .add.button:before{content:"";font-family:"Font Awesome 5 Free";font-weight:900}.panel{width:48.9583333333%;float:left;padding-left:1.0416666667%;padding-right:1.0416666667%;border:1px solid #dfdfdf;padding:5px;margin:0 1.0416666667% 0 0;float:left;overflow:hidden}.panel .row{width:100%;background-color:rgba(0,0,0,.04);padding:6px;position:relative;margin-bottom:6px}.panel>.row:last-child{margin-bottom:0}.panel .button{float:right;margin:0}.panel .row a.button{box-shadow:none;padding:0;color:#a91919;background-color:transparent}.panel h2{font-size:18px;line-height:24px;margin-bottom:6px}.browse .add.button,.browse .batch-edit.button{float:left;margin-right:.25em}.browse td:first-child,.browse th:first-child{width:50%}.browse td,.browse th{padding:12px 6px;overflow:hidden}.browse .browse-controls{display:flex;justify-content:space-between;flex-wrap:wrap;font-size:13.08px}.sites.pages.browse .browse-controls{justify-content:flex-end}.browse .browse-controls .advanced-search:before{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;font-style:normal;font-variant:normal;font-weight:normal;line-height:1;font-family:"Font Awesome 5 Free";font-weight:900;content:"";padding:.25em}.browse-controls select,.browse-controls input,.browse-controls button,.browse-controls .button{font-size:13.08px;min-height:0;height:24px;line-height:24px;vertical-align:top;background-size:6.5408px}.browse-controls .sorting:not(:last-child){margin-left:auto}.browse-controls button,.browse-controls .button{padding:0 10px}.browse-controls .filtering{margin-left:24px}.browse .select-all{width:12px;margin-right:12px}.browse .tablesaw-cell-content,#properties .tablesaw-cell-content{display:flex;align-items:center;justify-content:flex-start;word-wrap:break-word}.browse .tablesaw-cell-content>.actions,#properties .tablesaw-cell-content>.actions{white-space:nowrap}.browse .batch-edit .tablesaw-cell-content>input[type=checkbox]{margin-right:12px;flex-shrink:0}.browse .tablesaw-cell-content>span.indent{display:inline-block;vertical-align:top;flex:0;min-width:1em}.actions{margin:0 0 0 auto;display:flex;padding:0}.actions li{list-style-type:none}.actions a,.actions a:before,.actions button,.actions button:before{width:24px;height:24px;line-height:24px;vertical-align:top;border:0;box-shadow:none;display:inline-block}.actions .button:hover,.actions button:hover{box-shadow:none !important}.actions a,.actions button{opacity:.5}.actions a:before,.actions button:before{text-align:right}.actions a:hover,.actions a:active,.actions button:hover{opacity:1}.actions .inactive{display:none}.actions button{background-color:transparent;color:#a91919;margin:0;text-indent:-9999px;position:relative;padding:0;min-height:0}.actions button:before{text-indent:0;position:absolute;top:0;left:0}.row-count{margin:0 6px}.no-resources{text-align:center;position:relative;margin-top:96px}.no-resources:before{font-family:"Font Awesome 5 Free";font-weight:900;font-size:96px;position:absolute;top:0;left:0;width:100%;opacity:.08;content:""}.no-resources p{font-size:24px;line-height:48px;margin-top:48px}td .o-icon-private,td .o-icon-user-inactive{display:inline-block;vertical-align:bottom;margin-left:.5em;opacity:.5}.items .no-resources:before{content:""}.item-sets .no-resources:before{content:""}.media .no-resources:before,#media-list .no-resources:before{content:""}.modules .no-resources:before{content:""}.vocabs .no-resources:before{content:""}.resource-templates .no-resources:before,.resources-templates{content:""}.users .no-resources:before{content:""}.jobs .no-resources:before{content:""}.sites .no-resources:before{content:""}.sidebar .no-resources{display:block}.browse.assets td:first-child,.browse.assets th:first-child{width:75%}.asset-inline{max-width:100%}#batch-form{border:1px solid #dfdfdf;border-bottom:0;border-radius:3px;margin-bottom:12px}#batch-form table.tablesaw{border-width:1px 0;border-radius:0 0 3px 3px;margin-bottom:0}#batch-form .batch-actions{display:inline-block}#batch-form .batch-inputs{display:flex;align-items:center;padding:6px;background-color:rgba(0,0,0,.04)}#batch-form .batch-actions>a.button,#batch-form .batch-actions>button,#batch-form .batch-actions>input[type=submit]{display:none;margin:0 12px 0 0;font-size:14px;line-height:24px;min-height:0;padding:0 6px}#batch-form .batch-actions>a.button.active,#batch-form .batch-actions>button.active,#batch-form .batch-actions>input[type=submit].active{display:inline-block}#batch-form select{font-size:14px;min-height:0;height:auto;line-height:24px;padding:0 24px 0 6px;margin-right:6px;border:0;box-shadow:0 0 0 1px #dfdfdf inset}.batch-selected{padding-left:0;list-style:none}.batch-selected li{padding:12px 0 11px;border-bottom:1px solid #dfdfdf}.batch-selected li:first-child{padding-top:0}.batch-selected li:last-child{border-color:transparent}#advanced-options{background-color:#fff;padding:6px 12px calc(6px - 1px);clear:both;border:1px solid rgba(0,0,0,.15);border-top:0;color:#676767}#advanced-options legend{float:left;width:calc(100% + 24px);font-weight:bold;padding:6px 12px;margin:-6px -12px 12px;background-color:rgba(0,0,0,.04);max-width:none}#advanced-options input{float:left;clear:left;margin-right:.5em;height:24px;margin-bottom:6px}#advanced-options label{float:left;margin-bottom:6px}.search-filters{margin-bottom:6px;display:inline-block}.filter{display:inline-block;font-size:13.08px;margin:0 6px 6px 0;border-radius:3px;background-color:#f0f0f0;padding:0;vertical-align:top}.filter-label{display:inline-block;background-color:rgba(0,0,0,.04);border-radius:3px 0 0 3px}.filter-label,.filter-value{padding:0 6px}.filter-value:not(:last-child):after{content:","}.multi-value .value{display:flex}.multi-value .add-value,.multi-value.field .remove-value{background-color:transparent;color:#a91919;display:inline-block;text-indent:-9999px;position:relative;min-width:36px;width:36px;text-align:center;box-shadow:none}.multi-value .add-value:before,.multi-value.field .remove-value:before{position:absolute;top:0;left:0;width:36px;line-height:36px;text-indent:0}.multi-value .add-value:hover,.multi-value.field .remove-value:hover{box-shadow:none;color:#a91919}.multi-value .add-value{position:absolute;top:0;right:0}.multi-value .field-meta{padding-right:36px}.item-set-select-type{max-width:25%}fieldset.section>legend{position:absolute;left:-9999px}.section-nav{border-top:1px solid #fff;height:42px;position:relative;margin-bottom:12px;clear:both}.section-nav:before{content:"";height:3px;position:absolute;bottom:1px;left:0;right:0;z-index:0;background:#fff;border:1px solid #dfdfdf;border-width:1px 0}.section-nav a{display:block;float:left;height:36px;line-height:30px;padding:3px 1em;position:relative;z-index:1;background-color:#fff;border-color:#dfdfdf;border:1px solid #dfdfdf;margin-left:.25em;color:#676767}.section-nav .active a{font-weight:bold;border-bottom-color:#fff}.section:not(a){display:none}.section.active{display:block;clear:both}#page-actions{position:fixed;padding:6px 1.0416666667%;z-index:4;top:0;height:36px;right:0;text-align:right;margin-bottom:0}#page-actions input[type=submit],#page-actions button,#page-actions .button{display:inline-block;height:36px;padding:6px 1em;min-height:0;vertical-align:top}#page-actions .delete.button{background-color:#fdefef;box-shadow:0 0 0 1px #e0c3c3 inset;color:#a91919}#page-actions .delete.button:hover{box-shadow:0 0 0 1px #da8b8b inset}.page-action-menu{display:inline-block;position:relative}.page-action-menu ul{display:none;list-style:none;border:1px solid #dfdfdf;background-color:#fff;border-radius:3px;text-align:left;padding:0;position:relative;box-shadow:0 0 5px #dfdfdf;position:absolute;right:0;width:auto;white-space:nowrap;margin:12px 0}.page-action-menu ul:before{content:"";position:absolute;bottom:calc(100% - 1px);right:12px;width:0;height:0;border-bottom:12px solid #fff;border-left:6px solid transparent;border-right:6px solid transparent}.page-action-menu ul:after{content:"";position:absolute;bottom:calc(100% - 1px);right:11px;width:0;height:0;border-bottom:14px solid #dfdfdf;border-left:7px solid transparent;border-right:7px solid transparent;z-index:-1}.page-action-menu ul a,.page-action-menu ul .inactive{padding:6px 12px 5px;display:block;position:relative}.page-action-menu ul .inactive{color:#dfdfdf}.page-action-menu ul li{position:relative}.page-action-menu ul li:hover:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background-color:#dfdfdf}.page-action-menu ul li:not(:last-child) a,.page-action-menu ul li:not(:last-child) span,.page-action-menu ul li:not(:last-child) [type=submit]{border-bottom:1px solid #dfdfdf}.page-action-menu [type=submit]{background:none;box-shadow:none;width:100%;margin-bottom:0;text-align:left}.page-action-menu li label{display:inline-block;height:36px;padding:6px 1em;min-height:0;vertical-align:top;width:100%}.page-action-menu li label input{margin-left:.25em}.page-action-menu li:not(:last-child) label{border-bottom:1px solid #dfdfdf}.page-action-menu .expand:after{content:""}.page-action-menu .expand:after,.page-action-menu .collapse:after{margin-left:6px}.page-action-menu .collapse+.collapsible{overflow:visible;display:block}.add-property.button{margin-top:24px}.field-term{display:inline-block;font-family:"Source Code Pro",monospace;font-size:12px}.value .input-body a.value-language{margin-right:0;vertical-align:top;position:absolute;top:0;right:0;height:36px;width:36px;line-height:36px;border:1px solid #dfdfdf;border-width:0 0 1px 1px;overflow:hidden;text-align:center;color:#f19d9d;z-index:1}.value .input-body a.value-language~textarea{padding-right:42px}.value .input-body .language-wrapper.active a.value-language{border-color:transparent;color:#a91919}.value .language-wrapper:not(.active)~textarea{padding-right:48px}.value .actions a.o-icon-more{display:block;height:36px}.more-actions.active a.o-icon-more{border-bottom:1px solid #dfdfdf}.language-wrapper input[type=text].value-language{line-height:24px;background-color:transparent;border:0;min-height:0;padding:6px 42px 6px 6px;display:block;background-color:#fff}.language-wrapper.active input[type=text].value-language~textarea{padding-left:6px;border-top:0}.input-body .language-wrapper:not(.active) .language-label{display:none}.sidebar .language-label{font-weight:inherit}.language-wrapper .language-label,.value[data-data-type=uri] .input-body label{display:flex;align-items:flex-start;background-color:#fff;margin:0;padding:0 42px 0 6px;box-shadow:0 0 0 1px #dfdfdf}.value-label-text{background-color:rgba(0,0,0,.04);border-radius:2px;font-size:14px;margin:6px;padding:0 6px}.sidebar .value-annotation .value{padding-bottom:0}.sidebar .value-annotation label:after{content:none}.sidebar .value-annotation p.selected-resource{border-bottom:1px solid #dfdfdf}.sidebar .value-annotation-resource-select{margin:6px !important}.sidebar [data-data-type^=resource] .o-title:not(:empty){padding:0;border-bottom:0}.sidebar [data-data-type^=resource] .o-title:not(:empty) a:empty{display:none}.sidebar [data-data-type^=resource] .o-title:not(:empty) img{margin:6px}.sidebar [data-data-type^=resource] .o-title:not(:empty) a{padding:6px;width:100%}.non-properties{margin-bottom:12px}.resource-form .values .sortable-handle{width:12px;background-color:rgba(0,0,0,.04);border:1px solid #dfdfdf;border-radius:2px 0 0 2px;align-self:stretch;border-right:0;margin:0;display:flex;align-items:center;justify-content:center}.resource-form .values .sortable-handle:before{font-size:10px}.visibility{display:inline-block;padding:6px;margin-right:12px}.add .visibility:before,.edit .visibility:before{margin-right:.25em}.add .visibility [type=checkbox],.edit .visibility [type=checkbox]{margin-left:.5em}#add-item .remove.field{background-color:#ea7171;opacity:.6}.resource.input-option span{display:block;background-color:rgba(255,255,255,.5);padding:6px 10px 0;width:100%;float:left}.field-meta{width:30%;padding-right:6px;position:relative}.field-meta legend,.field-meta label,.field-meta .label{max-width:80%;padding:6px 0;display:inline-block}.field-meta legend{position:static;float:left}.field-meta .error{float:left}.field-meta ul{margin:0}.field-label-text{display:block}.template{display:none}.selector ul{list-style:none;padding-left:0}.selector>ul{margin-top:6px}.selector li{position:relative}.selector li.total-count-heading{background-color:#404e61;color:#fff;border-radius:3px;text-transform:uppercase;font-size:12px;padding:6px 10px}.selector li.total-count-heading>ul{margin:6px -10px -6px;border-radius:0 0 3px 3px}.selector li.selector-parent.empty{display:none}.selector li.show>ul{position:relative;top:0;left:0;overflow:visible}.selector .selectable-list{background-color:#fff;color:#676767;overflow:visible;border-radius:3px;font-weight:bold;position:relative;border:1px solid #dfdfdf;margin:6px 0 0;text-transform:uppercase;font-size:12px}.selector .selectable-list li{padding:6px 12px}.selector .selectable-list .selector-parent{cursor:pointer;padding-right:24px;margin-bottom:0}.selector .selectable-list .selector-parent:after{content:"";font-family:"Font Awesome 5 Free";font-weight:900;position:absolute;right:0;top:6px;width:18px}.selector .selectable-list .selector-parent.show:after{content:""}.selector .selectable-list .selector-parent:hover:before{content:"";position:absolute;top:0;bottom:0;left:0;width:5px;background-color:#dfdfdf}.selector .selectable-list .selector-parent:not(:last-of-type){border-bottom:1px solid #dfdfdf;padding-bottom:5px;border-color:#dfdfdf}.selector-parent ul{position:absolute;top:-9999px;left:-9999px}.selector-child{border-radius:0;font-weight:normal;padding:6px 10px;margin:0 -12px;font-size:16px;text-transform:none;width:calc(100% + 36px)}.selector-child:hover{background-color:rgba(0,0,0,.04)}.selector-child:last-of-type{margin-bottom:-6px}.selector .description{display:inline-block;vertical-align:top}.selector .description.no-comment{opacity:0}.selector .description .o-icon-info{display:inline-block;margin:0 6px 0 0;opacity:.75;width:1em}.selector .description .o-icon-info:hover+.field-comment{left:5px;right:0;top:36px;padding:3px 10px 3px 36px;line-height:18px;background-color:#fff;z-index:1;margin:0;border-bottom:1px solid #dfdfdf;font-size:12px}.selector .description .o-icon-info:hover+.field-comment:before{content:"";position:absolute;left:7px;top:-6px;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #fff}.selector .description .o-icon-info:hover+.field-comment.above{bottom:100%;top:auto}.selector .description .o-icon-info:hover+.field-comment.above:before{top:calc(100% - 6px);transform:rotate(180deg)}.selector .description .o-icon-info+.field-comment{position:absolute;top:-9999px;left:-9999px;width:calc(100% - 5px)}.selector .selectable{display:inline-block;width:calc(100% - 36px);word-wrap:break-word}.field-actions{width:60%;display:inline-block;margin:24px 0 0 30%}.field .field-label{display:inline-block}.field .field-description,.field .docs-link{font-size:14px;line-height:18px;position:static;text-align:left;height:auto}.field .field-description:not(:only-child){margin-bottom:6px}.field-description{display:block;margin-right:10px;line-height:36px;height:36px;position:absolute;top:0;right:0;text-align:right;left:0}.field-description .o-icon-info{margin:0;cursor:pointer}.field-description .field-comment.open{left:inherit;right:0px;top:36px;background-color:#333;color:#fff;border-radius:3px;z-index:1;max-width:100%;font-size:14px;padding:6px 5px;margin:12px 0}.field-description .field-comment.open.above{top:auto;bottom:30px}.field-description .field-comment.open:before{content:"";display:block;height:0;width:0;position:absolute;top:-6px;bottom:0;right:3px;font-size:16px;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:12px solid #333}.field-description .field-comment.open.above:before{top:auto;bottom:-12px;transform:rotate(180deg)}.field .docs-link:before{content:"";font-family:"Font Awesome 5 Free";font-weight:900;display:inline-block;margin-right:6px;font-size:14px;line-height:18px}.field-meta .expand,.field-meta .collapse{display:inline-block !important;margin-left:.5em !important;padding:0 !important;border:0 !important;width:auto !important}.field-meta .expand:after,.field-meta .collapse:after{float:none !important;margin-right:0 !important}.collapsible{display:none}.collapse+.collapsible{display:block;clear:both;overflow:hidden}.field-description .field-comment{position:absolute;top:-9999px;left:-9999px}.resource-property .field-term{display:block}.inputs{line-height:36px;width:70%}.inputs:only-child{width:100%}.inputs p:only-child{margin:0}.inputs label,.inputs select,.inputs textarea,.inputs input[type=text],.inputs input[type=password],.inputs input[type=email],.inputs input[type=url],.inputs input[type=date],.inputs input[type=datetime-local]{width:100%;min-height:36px;margin:6px 0}.inputs label:only-child,.inputs select:only-child,.inputs textarea:only-child,.inputs input[type=text]:only-child,.inputs input[type=password]:only-child,.inputs input[type=email]:only-child,.inputs input[type=url]:only-child,.inputs input[type=date]:only-child,.inputs input[type=datetime-local]:only-child{margin:0}.inputs textarea{resize:vertical;line-height:1.5;background-color:#fff;min-width:0}.inputs label{padding:6px 0;margin:0 24px 0 0}.inputs .button,.inputs button,.inputs input[type=submit]{margin:6px 0;line-height:24px}.inputs input:focus,.inputs textarea:focus{position:relative;z-index:100}#resource-values div.value{display:flex;align-items:stretch}#resource-values div.value:only-of-type .sortable-handle{display:none}.value{margin-bottom:6px}.value:last-of-type{margin-bottom:0}.value:last-of-type .remove-value{margin-bottom:0;box-shadow:none}.value.template{display:none}.inputs p.no-values{padding:12px;border-radius:3px;background-color:rgba(0,0,0,.04);line-height:24px}.inputs p.no-values:not(:only-child){display:none}.add-values{margin:6px 0 -3px}.add-values *{display:inline-block;min-width:36px;height:36px;border-radius:2px;text-align:center;margin:0}.inputs .add-values a.button{margin:0 0 3px}.inputs .add-values a.button:before{margin-right:.25em}.add-values label{background-color:rgba(0,0,0,.04);line-height:36px;margin-right:0;overflow:hidden;width:12px;vertical-align:top}.input-footer{display:flex;width:30px}.input-footer .actions{margin-left:6px;flex-direction:column}.input-footer .actions a:before{line-height:36px;height:36px;text-align:center}.more-actions ul{padding:0;display:none}.more-actions.active{box-shadow:0 0 0 1px #dfdfdf;background-color:#fff;border-radius:2px}.more-actions.active ul{display:block}.value.delete{background-color:#fcc;overflow:hidden}.value .restore-value,.value.delete a.tab,.value.delete [class*=o-icon-]:not(.restore-value),.value.delete .block-page-layout-grid-controls{display:none}.value.delete .input-footer{background-color:transparent;width:100%}.value.delete .restore-value{display:inline-block}.value [class*=o-icon-].label{position:absolute;top:0;left:0;height:36px;width:36px;background-color:rgba(0,0,0,.04);text-align:center;line-height:36px;overflow:hidden}.value label,.add-values label{margin:0;min-height:0;line-height:24px}.block.value .inputs label{margin-right:24px}.add-values button,.add-values .button{line-height:24px}.inputs .value textarea,.inputs .value input[type=text]{width:100%;margin:0}.inputs .value textarea{min-height:72px;border:0;box-shadow:0 0 0 1px #dfdfdf}.inputs .value .input-body>textarea{padding:6px 12px}[data-data-type^=resource] .default,[data-data-type^=resource] .o-title:not(:empty){padding:6px;border-bottom:1px solid #dfdfdf;word-wrap:break-word;line-height:24px;display:flex}[data-data-type^=resource].delete .o-icon-undo:before{padding-right:0}.input-body{clear:both;background-color:#fff;flex:1;position:relative;box-shadow:0 0 0 1px inset #dfdfdf;max-width:calc(100% - 30px)}.value:not(:only-of-type) .input-body{max-width:calc(100% - 48px)}.inputs .input-body input[type=text]{margin:0;background-color:transparent}.inputs .input-body input[type=text]:focus,.inputs .input-body textarea:focus{z-index:10}.inputs .input-body .chosen-container{max-width:calc(100% - 12px);margin:6px}[data-data-type^=resource] .button{font-size:14px;padding:0 6px;line-height:24px;min-height:0;margin-right:3px}[data-data-type^=resource] .button:before{margin-right:6px}.value.delete span.restore-value{display:inline-block;padding:0 6px;width:calc(100% - 36px)}.value.delete>*:not(.input-footer){display:none}.sortable-handle~.input-body{background-color:transparent}.resource-inputs{background-color:#fff;box-shadow:0 0 0 1px #dfdfdf}p.selected-resource{position:relative;width:100%;margin:0}.selected-resource a{width:calc(100% - 72px)}.selected-resource+a.button{margin-left:6px}.selected-resource img{height:24px;margin-right:6px}.selected-resource .o-title a:after{font-family:"Font Awesome 5 Free";font-weight:900;display:inline-block;margin:0 6px}.selected-resource .items a:after{content:""}.selected-resource .item_sets a:after{content:""}.selected-resource .media a:after{content:""}[data-data-type=literal] .sortable-handle~.input-body{background-color:#fff}.inputs [data-data-type=literal] textarea.input-value{background-color:transparent;padding-right:42px}[data-data-type=uri] .input{position:relative;clear:both;background-color:#fff;box-shadow:0 0 0 1px #dfdfdf}[data-data-type=uri] .input:first-child{border-bottom:1px solid #dfdfdf}.value[data-data-type=uri] .input-body label{padding-right:0}.sidebar [data-data-type=uri] label{font-weight:inherit}[data-data-type=uri] .input-body input.uri-value,[data-data-type=uri] textarea.value-label{height:36px;border:0;box-shadow:none;padding:6px 42px 6px 6px;font-weight:normal;background:transparent;min-height:36px}[data-data-type=uri] textarea.value-label{border-top-width:0}.annotation-form{padding-bottom:12px}.annotation-form>div,.annotation-form>select{margin-bottom:6px}.value-annotation:not(:last-child){border-bottom:1px solid #dfdfdf;padding-bottom:12px;margin-bottom:12px}.value-annotation .restore-value{line-height:36px}#resource-files button{margin:24px 0 0}#add-media-field{margin-bottom:0}.media.row{padding:6px;margin-bottom:6px;display:flex;align-items:center;word-wrap:break-word}.media.row img{width:36px;height:auto;margin-right:12px}.media.row .resource-name{margin-right:12px;min-width:0}.media.row .primary-media{text-transform:uppercase;font-size:12px;font-weight:bold;margin:0 0 0 auto}.media.row .primary-media input{margin-left:6px}.media.row .actions{margin-left:24px}.media.value.delete span.restore-value{padding:0}.media.value.delete>*:not(.restore-value),.media.value.delete .actions a:not(.o-icon-undo){display:none}.media.value.delete>.actions{display:block;top:18px}.media-header{font-size:16px;margin:6px -6px;margin-top:-12px;background-color:rgba(0,0,0,.04);padding:0 6px;display:flex;align-items:center}.value.delete>.actions{display:inline-block}.media-render{margin-bottom:24px}.media-render>*{max-width:100%}.media-render img{max-width:100%;height:auto}#item-media .sidebar button{width:100%;text-align:left}#item-item-sets+.no-resources:before,#site-item-sets+.no-resources:before{content:""}#item-item-sets tr.delete{background-color:#fcc}#page-actions [class*=o-icon-].button{background-color:transparent;width:auto;padding:6px 6px;box-shadow:none}.o-icon-private.button,.o-icon-public.button{margin-right:6px;box-shadow:none}#item-sites.empty+.no-resources:before{content:""}.media.edit #media .cke_contents{min-height:500px}.search-nav{width:100%}.search-nav .resource-search{width:100%;position:relative;margin-bottom:6px;display:flex;flex-wrap:wrap}.search-nav .chosen-container{margin-bottom:6px}.search-nav button.o-icon-search{height:36px;width:36px;line-height:24px;padding:0 10px;border-radius:0 3px 3px 0;min-height:0;position:relative;text-indent:-9999px;margin:0}.search-nav button.o-icon-search:before{text-indent:0px;position:absolute;left:0;top:6px;line-height:24px;width:100%}.search-nav .resource-search>input[type=text]{width:calc(100% - 36px);border-right:0;margin-bottom:6px}.resource-search-filters{padding-bottom:5px;border-bottom:1px solid #dfdfdf;margin-bottom:6px;width:100%}.resource-search-filters a.expand:after,.resource-search-filters a.collapse:after{float:right}.resource-search-filters .collapsible{margin-top:6px;overflow:visible}.sidebar .pagination{font-size:13.08px;border-bottom:1px solid rgba(0,0,0,.08);padding-bottom:11px;margin-bottom:0;overflow:hidden;width:100%}.sidebar .pagination li{float:left}.sidebar .pagination li:first-of-type{padding-right:10px}.sidebar .pagination input{width:3em;text-align:center;color:#333;margin:0 3px}.sidebar .pagination .next.button{margin-right:5px}.sidebar .pagination input[type=text]{float:left;line-height:19.62px;height:24px;border:1px solid #dfdfdf;margin-left:0}.sidebar .pagination .page-count{float:left;margin-right:12px}.sidebar .pagination .inactive{background-color:#e6e6e6;color:#b9b9b9}.sidebar textarea{resize:vertical}#item-results+.confirm-panel,#item-results .select-resource-checkbox-wrapper{display:none}#item-results.active{padding-bottom:72px}#item-results.active+.confirm-panel{display:block}#item-results.active .select-resource-checkbox-wrapper{display:inline-flex;align-items:center}.sidebar button.select-all,.sidebar button.quick-select-toggle{background-color:transparent;color:#676767;box-shadow:none;margin:12px;padding:0;line-height:1;min-height:0}.success-statuses{position:absolute}.success-statuses .status,.sidebar button .sr-only{display:none}.sidebar button:not(.active) .sr-only.off,.sidebar button.active .sr-only.on,.success-statuses:not(.active) .sr-only.off,.success-statuses.active .sr-only.on{display:block}.sidebar button.select-all:before,.sidebar button.quick-select-toggle:before{font-family:"Font Awesome 5 Free";font-weight:900;content:"";display:inline-block;margin-right:6px}.sidebar button.quick-select-toggle.active:before{content:""}.sidebar button.select-all:before{content:"";font-weight:400}.sidebar button.select-all.active:before{content:""}.sidebar button.quick-select-toggle+.resource-list{border-top:1px solid #dfdfdf}.resource-link{display:inline-flex;align-items:center;max-width:100%;min-width:0}.resource-link img{height:36px;margin-right:6px}.resource-link .resource-name{flex:1;min-width:0}.resource-list{width:100%}.resource-list .resource{padding:6px 12px 5px;border-bottom:1px solid rgba(0,0,0,.08);position:relative;width:100%;overflow:hidden;display:flex;align-items:center;word-wrap:break-word}.resource-list .resource:hover{background-color:rgba(255,255,255,.8)}.resource-list .resource:hover .select{right:0px}.resource-list .resource .select-resource-checkbox-wrapper{height:24px;margin-right:12px}#resource-details{background-color:#fff;overflow:hidden;padding:0}#resource-details .o-description,#resource-details .property{margin-bottom:0}.confirm-main{position:absolute;top:0;bottom:60px;overflow-y:auto;left:0;right:0;padding:12px 12px 0}.confirm-panel{position:absolute;bottom:0;right:0;left:0;padding:12px;background-color:#f7f7f7;border-top:1px solid #dfdfdf}.confirm-panel button,.confirm-panel .button{width:100%;margin:0}.sidebar .field-meta{width:100%;position:relative;padding-right:36px;margin-bottom:12px;border-bottom:3px solid #dfdfdf}.sidebar .field-meta .label,.sidebar .field-meta label{margin:0;width:auto;display:inline-block;padding:0 0 6px}.sidebar .field-meta .label:after,.sidebar .field-meta label:after{content:none}.sidebar .field-meta .collapsible{margin-bottom:12px}.sidebar .field-meta button.add-value{padding:0;background:transparent;color:#676767;min-height:0;position:absolute;top:0;right:0}.sidebar .field-meta button.add-value:before{height:auto;line-height:1.5}.sidebar .inputs{width:100%}.sidebar #advanced-search .value{flex-wrap:wrap}.sidebar #advanced-search .value:not(:first-child){margin-top:6px}.sidebar .multi-value .value:not(:only-child){width:calc(100% - 36px);position:relative;padding-bottom:0;margin-bottom:5px;border-bottom:0}.sidebar .multi-value .value:only-child .remove-value{display:none}.sidebar .multi-value .remove-value{position:absolute;right:-36px;bottom:0}.sidebar #advanced-search .value select,.sidebar #advanced-search .value input{margin-left:0}.sidebar #advanced-search .confirm-panel{display:flex;justify-content:space-between}.sidebar #advanced-search .confirm-panel button{width:calc(33.33% - 6px)}.block .block-content input[type=hidden]+button{padding-top:6px}.query-form-element .active{display:block}.query-form-element .inactive{display:none}.query-display .search-filters{margin-bottom:0}.query-display .filter{background-color:#fff;box-shadow:0 0 0 1px #dfdfdf inset}.query-display .filter-label{background-color:#dfdfdf}.query-form-element button.active{display:inline-block}.query-display{min-height:42px}input[type=text].query-form-query{margin-top:0}.query-display .filter-value:not(:last-child):after{content:none}#save-search{display:none}#save-search.active{display:flex;margin-top:-6px;padding:0 6px 12px calc(30% + 3px);background-color:rgba(0,0,0,.04)}#save-search.active input{margin-left:6px}.vocabs .field [type=file]{margin:6px 0 0}.vocabulary ul{padding-left:0;list-style:none;overflow:hidden}.vocabulary h2{margin-bottom:0}.vocabs.update td{vertical-align:top}.vocabs.update td:first-of-type,.vocabs.update td:nth-of-type(2){width:15%;word-wrap:break-word}.vocabs.update td:nth-of-type(3),.vocabs.update td:nth-of-type(4){width:35%}.vocabs.update td:nth-of-type(3):last-child{width:auto}.vocabs.update td:nth-of-type(3):not(:last-child){background-color:#ffe6e6}.vocabs.update td:nth-of-type(4){background-color:#cdffcd}.show .property,.meta-group{overflow:hidden;display:flex;justify-content:flex-end;flex-wrap:wrap}.show .property dt,.meta-group dt{width:22.2222222222%;vertical-align:top;padding:6px 0;font-weight:bold}.show .property dd,.show .property .values,.meta-group dd,.meta-group .values{padding:6px;margin:0;word-wrap:break-word;width:77.7777777778%}.show .property dd:not(:first-of-type),.show .property .values:not(:first-of-type),.meta-group dd:not(:first-of-type),.meta-group .values:not(:first-of-type){padding-top:0}.show .property .language,.meta-group .language{font-size:12px;padding:0 6px;margin-right:6px;background-color:rgba(0,0,0,.04)}#linked-filter label{display:flex;align-items:center;margin-bottom:24px}#linked-filter label select{margin-left:12px}#linked-resources table{margin-bottom:24px}#linked-resources caption{background-color:rgba(0,0,0,.04);font-family:bold;padding:6px;font-family:"Lato",sans-serif;font-weight:bold;text-align:left;font-size:20px}#linked-resources th{border-bottom:3px solid #dfdfdf}.linked-resource{margin-bottom:12px;padding-bottom:11px;border-bottom:1px solid #dfdfdf}.has-annotation:before{display:inline-block}.o-icon-annotation:before{content:"";font-family:"Font Awesome 5 Free";font-weight:900}.show .value.resource,.show .value.resource .value-content{display:flex;flex-wrap:wrap;align-items:center}.show .value .o-icon-private,.show .value .value-content{margin-right:12px}.collapsible.annotation{border-left:3px solid #dfdfdf;padding:0;border-radius:3px;margin:6px 0 12px 24px;width:100%}.collapsible.annotation h4,.collapsible.annotation .values{width:100%;padding:0}.collapsible.annotation .property{padding:0 12px}.collapsible.annotation .property:not(:first-child){margin-top:12px;border-top:1px solid #dfdfdf;padding-top:12px}.property .value .resource-name:after,.property .value.uri .uri-value-link:after{font-family:"Font Awesome 5 Free";font-weight:900;display:inline-block;margin-left:.5em}.property .value.uri .uri-value-link:after{content:""}.property .value.items .resource-name:after{content:""}.property .value.media .resource-name:after{content:""}.property .value.item_sets .resource-name:after{content:""}.sidebar .meta-group.item-sites .o-icon-external{float:right}.class-row{border-bottom:1px solid #dfdfdf;padding-bottom:11px}.class-label{font-weight:bold}.class-label:after{content:": "}.sidebar{position:fixed;top:48px;left:100%;visibility:hidden;bottom:0;background-color:#f7f7f7;z-index:3;border-left:1px solid #dfdfdf;overflow-y:auto;overflow-x:hidden;width:25%;padding:12px}body.transitions-enabled .sidebar{transition:left .5s,visibility .5s}.sidebar.active,.sidebar.always-open{left:75%;visibility:visible}.sidebar.loading{overflow:hidden}.sidebar.loading *{visibility:hidden}.sidebar.loading:after{font-family:"Font Awesome 5 Free";font-weight:900;content:"";line-height:1;position:absolute;top:.75em;left:calc(50% - .5em);font-size:4em;animation:fa-spin 1s infinite linear;height:1em;width:1em;text-align:center}.sidebar a.o-icon-close{position:absolute;right:12px;top:12px;z-index:3;color:#666}.sidebar .vocabulary,.sidebar .meta-group{margin-bottom:0}.sidebar .value{margin-bottom:6px;border-bottom:1px solid #dfdfdf;padding-bottom:5px;vertical-align:middle}.sidebar .value *:last-child{margin-bottom:0}.sidebar .value:last-child{border-color:transparent;margin-bottom:0}.sidebar input,.sidebar textarea,.sidebar select{width:100%}.sidebar input[type=checkbox],.sidebar input[type=radio]{width:auto}.sidebar h2{font-size:24px;margin-bottom:12px}.sidebar h3,.sidebar label,.sidebar .label{display:block;font-size:16px;font-weight:bold;margin:0 0 12px 0;padding:0 24px 12px 0;position:relative;width:100%;word-wrap:break-word;max-width:none}.sidebar h3:after,.sidebar label:after,.sidebar .label:after{content:"";position:absolute;left:-12px;right:-12px;bottom:0;top:-12px;background-color:#dfdfdf;z-index:-1}.sidebar .field{background-color:transparent;padding:0;margin-bottom:24px;flex-wrap:wrap;justify-content:flex-start}.sidebar .field .option{width:100%}.sidebar .field div.option+div.option{padding-top:11px;border-top:1px solid #dfdfdf;margin-top:12px}.sidebar .button,.sidebar button{background-color:#676767;border-color:#676767;color:#fff}.sidebar .button:disabled,.sidebar .button.disabled,.sidebar button:disabled,.sidebar button.disabled{background-color:rgba(0,0,0,.04);border-color:rgba(0,0,0,.04);color:#676767;box-shadow:none !important}.sidebar button.option{width:100%;text-align:left;border-color:#dfdfdf;background-color:#fff;color:#676767;display:inline-flex;justify-content:space-between}.sidebar button.option:after{content:"";font-family:"Font Awesome 5 Free";font-weight:900;color:#dfdfdf}#sidebar-confirm{display:block;padding-bottom:12px;margin-bottom:12px}#sidebar-confirm input[type=submit]{background-color:#a91919;color:#fff;box-shadow:none}body.sidebar-open #content{width:56.25%}.sidebar .meta-group{margin-bottom:12px}.sidebar .meta-group .value{width:100%;padding:6px 0;margin:0;word-wrap:break-word;display:block}.sidebar .meta-group .value:not(:last-child){border-bottom:1px solid #dfdfdf;padding-bottom:5px}.sidebar .meta-group h4{display:block;background-color:transparent;border-color:#dfdfdf;padding:6px 0;border-bottom:2px solid #dfdfdf;padding-bottom:4px;margin-bottom:0;width:100%}.sidebar .media a:first-child img,.sidebar>img:first-child{height:168px;width:auto;display:block;margin-bottom:12px}.sidebar .meta-group img{height:48px;box-shadow:0 0 0 1px #dfdfdf}.source-type{font-weight:bold}.resource-templates #properties{list-style:none;padding-left:0;margin-left:0}.resource-templates table{width:100%}.resource-templates th,.resource-templates td{padding:6px;vertical-align:top}.resource-templates .property.row{display:flex}.resource-templates .property.row.delete{background-color:#fcc}.resource-templates .property.row.delete .actions li:not(:last-child){display:none}.resource-templates .property.row:not(.delete) .sortable-handle{display:inline-flex}.resource-templates #properties{margin:24px 0 0;clear:both;padding:0}.resource-templates #edit-sidebar{padding-bottom:48px}.resource-templates #edit-sidebar .field h4,.resource-templates #edit-sidebar .field h4+span{width:100%}.resource-templates #edit-sidebar .field h4+span{margin-bottom:12px}.resource-templates #edit-sidebar .field label:not(:first-child),.resource-templates #edit-sidebar .field .option label{margin:0;padding-bottom:6px;padding-right:0;display:flex;justify-content:space-between}.resource-templates #edit-sidebar .field label:not(:first-child):only-child,.resource-templates #edit-sidebar .field .option label:only-child{padding-bottom:0}.resource-templates #edit-sidebar .field label:not(:first-child):after,.resource-templates #edit-sidebar .field .option label:after{padding:0;margin:0;background:transparent}.alternate-label-cell:not(:empty){background-color:#dfdfdf;display:inline-block;padding:0 6px;margin:0 6px;position:relative}.alternate-label-cell:not(:empty):after{content:"";border-top:12px solid transparent;border-bottom:12px solid transparent;border-left:6px solid #dfdfdf;width:0;height:0;position:absolute;left:100%;top:0}.title-property-cell,.description-property-cell{text-transform:uppercase;font-size:12px;font-weight:bold;margin-left:auto;margin-right:12px}.title-property-cell:after,.description-property-cell:after{content:"";font-family:"Font Awesome 5 Free";font-weight:900;display:inline-block;margin-left:6px}.title-property-cell~.actions,.description-property-cell~.actions{margin-left:0}.title-property-cell~.description-property-cell,.description-property-cell~.title-property-cell{margin-left:12px}#modules.installed tbody tr:not(.installed),#modules.uninstalled tbody tr:not(.uninstalled),#modules.needs-upgrade tbody tr:not(.needs-upgrade),#modules.active tbody tr:not(.active),#modules.deactivated tbody tr:not(.deactivated){display:none}.state-filter select{margin-bottom:12px}.module-name{font-weight:bold}.module-author{display:block}#modules .module{border-bottom:1px solid #dfdfdf;padding-bottom:11px;margin-bottom:12px;overflow:hidden}#modules .module-meta{float:left;max-width:50%}#modules .module-actions{float:right;max-width:50%;text-align:right}#modules .module form{display:inline-block}#modules button,#modules .button{display:inline-block;margin-left:6px;box-shadow:0 0 0 1px rgba(0,0,0,.15) inset}#modules button:hover,#modules .button:hover{box-shadow:0 0 0 1px rgba(0,0,0,.3) inset}#modules button:before,#modules .button:before{margin-right:6px}#modules .o-icon-install{box-shadow:0 0 0 1px #addead inset}#modules .o-icon-install:hover{box-shadow:0 0 0 1px #63c363 inset}#modules .o-icon-uninstall{margin-left:24px;box-shadow:0 0 0 1px #e0c3c3 inset}#modules .o-icon-uninstall:hover{box-shadow:0 0 0 1px #da8b8b inset}#edit-keys td{word-wrap:break-word}.api-delete{width:10%}.api-label{width:25%}#system-info-table .label-col{width:25%}#system-info-table th,#system-info-table td{font-size:.875em;padding:0;line-height:1.75;border:none;vertical-align:top}#system-info-table th[scope=rowgroup]{font-size:1em;border-bottom:1px solid #dfdfdf;padding-left:6px}#system-info-table tbody:not(:last-child) tr:last-child td{padding-bottom:24px}#system-info-table th[scope=row]{padding-left:1.5em}.breadcrumbs{border-bottom:1px solid #dfdfdf;padding-bottom:11px;margin-bottom:24px}.breadcrumbs+.field{margin-top:24px}.breadcrumbs a:before{margin-right:6px}.breadcrumbs>*:not(:last-child):after{content:"";font-family:"Font Awesome 5 Free";font-weight:900;display:inline-block;margin:0 calc(12px - 3px) 0 12px;color:#000;cursor:default}#site-item-sets th:first-child,#site-item-sets th:last-child{width:36px}.manual-assignment .inputs label{display:block;padding:0;margin:6px 0 0;min-height:0;line-height:24px}.manual-assignment .inputs label:last-child{margin-bottom:6px}.manual-assignment #advanced-search{margin-top:-6px;padding:12px 0 6px;background-color:rgba(0,0,0,.04);border-top:1px solid #dfdfdf}.manual-assignment #advanced-search.inactive{display:none}.manual-assignment .advanced-search-header{padding:0 6px}.manual-assignment .advanced-search-header a.button{margin-bottom:6px}.manual-assignment .advanced-search-content .field{background-color:transparent}.keep-search,.keep-search input{margin:0 0 0 6px}tr.value.delete>td:not(.input-footer){display:table-cell}tr.value.delete .user-name,tr.value.delete select,tr.value.delete .o-icon-delete{display:none}td.user-meta{width:50%}#site-user-permissions.empty+.no-resources:before{content:""}#site-user-permissions .actions{justify-content:flex-end;padding:6px 0}#page-layout-controls{display:flex;align-items:center;justify-content:flex-end;margin-bottom:12px}#page-layout-controls>*:not(:last-child){margin-right:6px}#page-layout-controls button{margin-bottom:0}.indent:before{content:"—";margin-right:-1px}.expand-collapse-all{margin-top:12px;text-align:right}.block{margin-bottom:6px}.block .block-header{position:relative;display:flex;align-items:center;background-color:rgba(0,0,0,.12);padding:6px;font-weight:bold}.block .block-header .actions a:before{text-align:center}.block .block-header .block-type{margin-right:auto}.block .block-header select{margin-right:6px;font-weight:normal}.block-page-layout-grid-controls+.actions{margin-left:0}.block .block-content input[type=hidden]+*{padding-top:0;margin-top:0}.block.html>div{border:1px solid #dfdfdf}.block .field{padding:0;border-color:transparent;background-color:transparent;margin-top:6px}.block .field:last-child{margin-bottom:0}.block.delete>.block-header{font-weight:normal;display:flex;background:transparent}.block.delete>*:not(.block-header){display:none}.block.delete span.restore-value{padding:0 3px;text-transform:lowercase;width:auto}.block.delete a.restore-value:before{padding:0}.block.delete .sortable-handle{display:none}.delete .block-type,.block .delete div.item-title{margin-left:30px}.delete .block-type{font-weight:bold}.block div.item-title{margin:6px 0;display:flex;align-items:center}.block .item-title img{height:36px;width:auto;display:inline-block;margin-right:6px;vertical-align:top}.block .delete.attachment{background-color:#fcc}.block .delete.attachment .actions .undo{display:inline-block}.block .delete.attachment .sortable-handle,.block .delete.attachment .actions li:not(.undo){display:none}.block .attachments-form{margin-bottom:12px}.block .attachments-form a h4{display:inline-block}.block .attachment .actions{margin-left:auto}.block .attachment .actions .button{background-color:transparent;color:#a91919;padding:0;min-height:0}.block .attachment .actions .button:hover{color:#a91919}.block .attachment .actions .undo{display:none}.block .block-content{clear:both;background-color:rgba(0,0,0,.04);padding:6px}.block.sortable-ghost .block-content{display:none}.block-content fieldset:last-of-type{margin-bottom:0}.block .attachment{display:flex;align-items:center;position:relative;padding:0 6px}.block .attachment:not(:last-child){border-bottom:1px solid #dfdfdf;padding-bottom:-1px}.block .attachment .button{margin-bottom:0}.block .attachment-add{margin:6px 0 0}.block-header.collapse:after{content:none}.block-content .expand,.block-content .collapse{width:100%;display:flex;padding:0 6px 0 0;justify-content:space-between}.block .field-meta .collapse+.collapsible{width:auto;border:0}.block .expand h4,.block .collapse h4{display:inline-block;padding:0}.block-content .collapse+.collapsible{border-top:1px solid #dfdfdf;padding:-1px 0 0 24px;margin-top:6px}.block[data-block-layout=html] [contenteditable=true]{resize:vertical;min-height:72px;max-height:288px}#attachment-options .option{position:relative;margin-bottom:12px}#attachment-options .expand,#attachment-options .collapse{position:absolute;right:0;top:0}#attachment-options h3{overflow:visible;white-space:normal}#attachment-item-select{display:block;margin:12px 0 0}#attachment-options .selected-attachment{margin-bottom:12px;margin-top:-12px;box-sizing:content-box;margin-right:-12px;margin-left:-12px;padding-right:12px;padding-left:12px;padding-top:12px;padding-bottom:12px;overflow:hidden}#attachment-options .selected-attachment img{height:96px;width:auto;float:right;margin:0 0 0 12px}#attachment-options .selected-attachment p:first-child{margin:0}#attachment-options h3.item-title{text-align:left}#attachment-options .item-thumbnail~h3.item-title{width:100%}#attachment-options .media-title{font-size:12px;display:block;width:calc(100% - 108px);float:left;word-wrap:break-word;text-align:left;clear:left}#attachment-options .item-thumbnail~#attachment-item-select{font-size:12px;display:inline-block;width:calc(100% - 108px);word-wrap:break-word}#attachment-options h3{word-wrap:break-word}#attachment-options .media-list{list-style:none;padding:0;margin:0 0 12px}#attachment-options .media-list li.media{position:relative;height:48px;width:48px;cursor:pointer;display:inline-block;padding:3px;border:1px solid #dfdfdf}#attachment-options .media-list li.media.attached,#attachment-options .media-list li.media:hover{background-color:rgba(0,0,0,.04)}#attachment-options .media-list img{width:100%;height:auto}#asset-options .selected-asset{overflow:hidden}#asset-options .selected-asset-image{float:left;margin:0 12px 0 0;max-width:50%}#asset-list.active{z-index:6}#asset-options .selected-asset .selected-asset-name{display:none}.asset-attachments-form{margin-bottom:12px}.add-asset-attachment{margin-top:6px}#asset-options .sidebar-content>div{margin-bottom:2rem}.asset-attachment-select{margin-top:.5rem}.asset-title{display:flex;align-items:center}.asset-title img{height:100%;width:auto}.asset-title .thumbnail:not(:empty){height:2rem;position:relative;width:2rem;margin:.25rem .25rem .25rem 0;overflow:hidden;display:inline-flex;justify-content:center}#asset-options .none-selected.inactive{display:none}#asset-options .none-selected:not(.inactive)~*{display:none}#asset-options .page-status{margin-bottom:12px}#asset-options .selected-page+.o-icon-external{margin-left:6px}#grid-layout-preview{display:grid;gap:6px}.grid-layout-previewing-block{min-height:60px;background-color:#dfdfdf}.hovered-block{box-shadow:0 0 0 1px #676767 inset}#grid-layout-preview .grid-layout-previewing{box-shadow:0 0 0 2px #676767 inset;display:flex;justify-content:center;align-items:center}.grid-layout-previewing.block{box-shadow:0 0 0 2px #676767 inset}.selected-tooltip:before{content:"";font-family:"Font Awesome 5 Free";font-weight:900}.browse-defualts-form-element{display:flex;justify-content:space-between}.browse-defualts-form-element select{width:49.5%}input[type=text].page-selector-filter{width:100%;margin-bottom:12px}#nav-page-links,#nav-custom-links{width:100%}.page-selector-filter.empty,#nav-page-links .nav-page-link,#nav-page-links .added.active.nav-page-link,#no-pages{display:none}#nav-page-links .active.nav-page-link{display:flex}.empty~#no-pages{display:block}.site-page-add{margin:0}.jstree>.jstree-node:first-child .jstree-anchor{margin-top:0}.block-pagelist-tree li:last-child{margin-bottom:6px}.selectable-themes,.current-theme{display:flex;flex-wrap:wrap}.selectable-themes img,.current-theme img{max-width:100%;height:auto;vertical-align:bottom;position:relative;z-index:1}.selectable-themes .error,.current-theme .error{background-color:#f4b4b4;border-radius:3px;padding:6px 10px;margin:6px 0;display:block;width:100%;order:2}.theme-thumbnail{align-self:flex-start}.current-theme .error+ul{font-family:monospace;padding:11px;border:1px solid #dfdfdf;list-style-type:none}.invalid .theme-thumbnail img{opacity:.5}.selectable-themes .theme{width:calc(33.33% - 24px);margin:0 24px 24px 0;padding:11px;border:1px solid #dfdfdf;background-color:#fff;display:flex;flex-wrap:wrap}.selectable-themes .theme:hover{border:3px solid #9f9f9f;padding:9px}.selectable-themes .invalid.theme:hover{border:1px solid #dfdfdf;padding:11px}.selectable-themes .theme-thumbnail{width:100%;margin-bottom:12px;border:1px solid #dfdfdf}.selectable-themes .active.theme{background-color:#e7e7e7;position:relative;overflow:hidden;border-width:3px;padding:9px}.selectable-themes .active.theme:after{content:"";font-family:"Font Awesome 5 Free";font-weight:900;position:absolute;bottom:0;right:0;opacity:.15;font-size:96px;line-height:96px}.current-theme{padding-bottom:23px;border-bottom:1px solid #dfdfdf;margin-bottom:24px;flex-wrap:nowrap}.current-theme .theme-thumbnail{width:50%;margin:0 24px 0 0;border:1px solid #dfdfdf}.current-theme .current-theme-info{width:calc(50% - 24px)}.current-theme-label{font-size:16px;text-transform:uppercase;display:block;margin-bottom:6px}.theme-meta{display:flex;flex-direction:column;width:100%}.theme-resource-pages .blocks{list-style:none;padding-left:0;border:1px solid #dfdfdf;padding:12px;min-height:30px}.theme-resource-pages .block{width:100%;background-color:rgba(0,0,0,.04);padding:6px;position:relative;margin-bottom:6px;display:flex;height:36px}.theme-resource-pages .block.delete{background-color:#fcc;padding-left:36px}.theme-resource-pages .block.delete>*:not(.block-header){display:block}.theme-resource-pages .block.delete .sortable-handle{display:none}.theme-resource-pages button:disabled{display:none}.jobs.browse th:first-child,.jobs.browse td:first-child{width:10%}body.minimal{padding:0;margin:48px 0;width:93.75%;max-width:100%;margin-left:auto;margin-right:auto;height:auto;background-color:#404e61}body.minimal:after{content:" ";display:block;clear:both}body.minimal div[role=main]>h1:first-of-type{position:static;padding:0;width:100%;height:auto;display:inline-block;margin:0 0 24px 0}body.minimal h2{font-size:20px;margin-bottom:12px}body.minimal h3{font-size:18px;margin-bottom:12px}body.minimal fieldset legend{font-weight:bold;font-size:20px;margin-bottom:12px}body.minimal .logo{position:static;width:auto;float:none;padding:0;text-align:center;font-size:32px;line-height:48px}body.minimal div[role=main]{width:100%;min-height:0;margin:0;padding:48px 6.25%;overflow:hidden}body.minimal .inputs{width:70%}body.minimal .inputs input{width:calc(66.66% - 6px);vertical-align:top}body.minimal .inputs *:only-child{width:100%}body.minimal [type=submit]{width:100%;display:block;margin:auto;clear:both}body.minimal .field:last-child{margin-bottom:0}body.minimal .site-list{margin-bottom:24px;display:flex;flex-wrap:wrap}body.minimal .site-list .site{margin-bottom:12px;overflow:auto;max-width:60rem;width:50%;padding-right:1rem}body.minimal .site-list .site-link{display:inline-block;font-size:18px}body.minimal .site-list .site-summary{margin:0;line-height:20px}body.minimal .site-list .site-thumbnail{float:left;display:block;margin-right:1rem}body.minimal .site-list .site-thumbnail-image{max-width:15rem;vertical-align:bottom}body.minimal .results{margin-bottom:24px}body.minimal .results>ul{padding-left:0}body.minimal .results>ul>li{list-style-type:none}body.minimal .advanced-search{margin:-12px 0 24px;display:block}body.minimal .advanced-search-actions{margin:12px 0}body.minimal .advanced-search-actions input[type=submit]{width:auto;display:inline-block}.forgot-password{margin:6px 0}.sitewide-search-form{display:flex;margin-bottom:24px}.sitewide-search-form input[type=text]{min-width:60%;margin-right:6px}.sitewide-search-form input[type=submit]{width:auto;margin:0}body.minimal .site.results thead{background-color:rgba(0,0,0,.04)}.results>ul{display:flex;flex-wrap:wrap;align-items:flex-start;margin-bottom:0}.results>ul>li{border:1px solid #dfdfdf;border-radius:3px;padding:6px 6px 0;margin-bottom:12px;width:calc(50% - 12px)}.results>ul>li:nth-child(2n){margin-left:12px}.results ul ul{list-style:none;padding:0;margin-top:6px}.results li li{padding:6px;border-top:1px solid #dfdfdf;margin:0px -6px}.results .result-title{background-color:rgba(0,0,0,.04);display:block;padding:6px;margin:-6px;font-weight:bold}.results+.pagination{margin-top:-24px}.site.results .result-title{border-bottom:1px solid #dfdfdf;margin-bottom:6px}.site.results .result-site{margin-bottom:6px;display:block}.asset-form-element{line-height:36px}.asset-form-element.empty .asset-form-clear{display:none}.asset-form-element:not(.empty) .no-selected-asset{display:none}.selected-asset,.no-selected-asset{display:block}.selected-asset-name:not(:empty)~.none-selected,.selected-page:empty+a,.selected-page:not(:empty)~.none-selected{display:none}.selected-asset-image{max-width:100%}.asset-form-select{margin-top:12px}.new.attachment{display:none}.asset-upload{overflow:hidden;margin-bottom:24px}.asset-upload button{margin:6px 0 0;display:none}.asset-upload button.active{display:inline-block}.asset-upload ul.errors{color:#a91919;margin-top:0;word-wrap:break-word}.asset-upload ul.errors:empty{display:none}.asset-upload ul.errors a{border-bottom:1px solid #a91919}.asset-upload label{margin:6px 0;padding:0}.asset-upload label:after{content:none}.asset-upload input[type=file]{width:100%}.asset-filters{margin-bottom:6px}.asset-list .asset{padding-bottom:5px;border-bottom:1px solid #dfdfdf;margin-bottom:6px}.asset-list .asset:last-child{border-bottom-color:transparent}.asset-entry{display:flex;align-items:center;word-wrap:break-word}.asset-entry img{margin-right:6px;max-height:48px;max-width:50%}.asset-entry .asset-name{flex-grow:1}.color-picker{display:flex}.color-picker input[type=text]{margin:0}.color-picker .color-picker-sample{border:1px solid #dfdfdf;width:30%;margin-left:6px}}@media screen and (max-width: 640px){script{display:none !important}body{padding:0}.mobile-only{display:block}button.mobile-only{width:100%}header{width:100%;float:none;text-align:center;position:fixed;top:0;left:0;padding:0;right:0;z-index:1000;min-height:0}header .button{border-radius:0px;position:absolute;top:0;z-index:1001;color:#fff;background-color:#222933;box-shadow:none}header .o-icon-menu.button{left:0;border-right:1px solid rgba(0,0,0,.08);width:36px}header .o-icon-search.button{left:36px}header .o-icon-user.button{right:0}header nav ul.navigation>li:not(:first-of-type){margin-top:0}.logo{line-height:36px;padding:0 16.6666666667%;width:100%;text-align:center;display:block;background-color:#404e61}#user,#search,header nav{position:fixed;top:-9999px;left:-9999px;z-index:1000}header nav#site-nav{position:static;background-color:#fff;padding:0;margin-bottom:0}header nav#site-nav h5{border-top:1px solid #dfdfdf;padding-top:6px -1px;margin-bottom:0}header nav#site-nav h5 a{padding:0;border-bottom:0}#menu.active,#user.active,#search.active{top:36px;left:0;bottom:0;right:0;background-color:#fff;margin:0}footer{margin:0;padding:0;position:static;width:100%;text-align:center}footer:after{position:static;background:transparent}.browse td:first-child,.browse th:first-child{width:100%}td .o-icon-private,td .o-icon-user-inactive{vertical-align:top;margin:0}div[role=main]{margin:36px 0 0 0;width:100%;min-height:calc(100% - 72px);position:relative;padding-top:48px}div[role=main]>h1:first-of-type{width:auto;position:static;padding:12px 1.0416666667%;height:auto;margin:0 -1.0416666667% 12px;white-space:normal;line-height:36px}#menu{text-align:left;background-color:#fff;position:fixed;overflow:scroll}#menu ul{margin-bottom:0;border-bottom:0;padding-bottom:0}#menu a{display:block;padding:6px 12px 5px;color:#676767;border-bottom:1px solid #dfdfdf}#menu li:last-child a{border-bottom:0;padding-bottom:6px}#menu h5 a{padding:0;border-bottom:0}#menu h5{height:36px;color:#676767;background-color:rgba(0,0,0,.04);padding:6px 12px 5px;border:1px solid #dfdfdf;border-width:1px 0}#menu h4{background-color:rgba(0,0,0,.12);margin-bottom:0}#menu h4:not(:first-of-type){margin-top:0}#menu a.public,#menu a.expand,#menu a.collapse{height:36px;margin:-36px 0 0;padding:0 12px 0 0}#menu a.public:before,#menu a.public:after,#menu a.expand:before,#menu a.expand:after,#menu a.collapse:before,#menu a.collapse:after{height:36px;line-height:36px}#mobile-nav{display:block}#mobile-nav a.active{background-color:#500c0c}#user{text-align:center}#user .user-id{color:#676767;width:100%;margin:0 6px 24px}#user .user-id a{color:#a91919}#user .logout{display:block;margin:12px 6px;font-size:16px;color:#676767;border-radius:3px;width:calc(100% - 12px);min-height:36px;background-color:rgba(0,0,0,.08);border-radius:3px;border:0;box-shadow:0 0 0 1px rgba(0,0,0,.15) inset;padding:6px 10px;display:inline-block;text-align:center;cursor:pointer;margin:0 6px}#user .logout:last-of-type:before{content:""}#user .logout a{color:#676767}#page-actions{top:36px;background-color:#fff;width:100%;border-bottom:1px solid rgba(0,0,0,.08);height:48px;padding-bottom:5px}#sidebar{position:fixed;top:36px;z-index:100;width:100%}#sidebar #content.sidebar-open{left:0}body.sidebar-open #content{width:100%}.sidebar{width:100%;top:36px;z-index:1000}.sidebar.always-open{left:100%}.sidebar.active,.confirm-panel{left:0;width:100%}fieldset.section>.always.active{content:"";bottom:0;left:0;right:0;height:48px;background-color:#fff;position:fixed;border-top:1px solid rgba(0,0,0,.04)}fieldset.section>.always.active button{width:100%;margin:6px}#modules .module-meta,#modules .module-actions{width:100%;max-width:100%}#modules .module-meta{margin-bottom:12px}#modules .module-actions{text-align:left}#modules button,#modules .button{margin:0 6px 0 0}.vocabs.update td{width:100% !important}#search-form{margin:48px 4.1666666667%}.batch-edit.button{margin:0;border-radius:0px;position:relative;z-index:1}.browse table{position:relative}.browse .sorting{float:left}.browse .pagination{margin-right:48px}.jobs.browse th:first-child,.jobs.browse td:first-child{width:100%}fieldset.section,fieldset.section{margin-bottom:0;position:relative}fieldset.section>legend:first-child{position:relative;left:auto;display:block;width:100%;font-size:20px;padding:6px 9px 6px 0;color:#a91919;cursor:pointer;border-bottom:3px solid rgba(0,0,0,.08);padding-bottom:-3px;margin-bottom:12px}fieldset.section>legend:after{content:"";font-family:"Font Awesome 5 Free";position:absolute;right:9px;top:12px}fieldset.section.mobile-active>legend:after{content:""}.add .active.section>.button,.edit .active.section>.button{display:inline-block}.field-meta,.inputs{width:100%}.field-actions{position:absolute;top:9px;right:1.6666666667%;z-index:1;width:50%}.field-actions a{float:right;display:block}.field-actions a.button{margin-left:.5em !important}.field-meta label,.field-description p{line-height:24px;margin-bottom:6px}.field-meta label{font-weight:bold}.unset .field-meta{width:100%}.show .sidebar.active{position:static;border:1px solid #dfdfdf;padding:11px;margin-top:24px}.show .section .property,.show .section .meta-group{margin-bottom:6px;box-shadow:0 0 0 1px #dfdfdf;border-radius:2px}.show .section .meta-group h4,.show .section .property h4{padding-bottom:6px;border-bottom:1px solid #dfdfdf;background-color:rgba(0,0,0,.04)}.show .section .meta-group h4,.show .section .meta-group .value,.show .section .property h4,.show .section .property .values{width:100% !important;padding:6px !important}.show .section .meta-group .value:not(:first-of-type),.show .section .property .value:not(:first-of-type){border-top:1px solid #dfdfdf;padding-top:6px -1px;margin-top:6px}.show .sidebar .meta-group .value:not(:first-of-type),.show .sidebar .property .value:not(:first-of-type){padding-top:6px}body.minimal{width:100%;margin:0}body.minimal .logo{background-color:transparent}body.minimal div[role=main]{padding:24px 6.25%}body.minimal div[role=main]>.messages{margin-top:24px}body.minimal .inputs{width:100%;margin-left:0}body.minimal footer{color:#fff}.tablesaw tr{overflow:hidden;margin-bottom:0}.tablesaw tr:first-of-type{border-top:1px solid #dfdfdf}.browse td:not(:first-of-type) .tablesaw-cell-content,#properties td:not(:first-of-type) .tablesaw-cell-content{display:inline-block}.tablesaw td:first-of-type{background-color:rgba(0,0,0,.04)}.tablesaw td:first-of-type .tablesaw-cell-label{width:0;height:0;overflow:hidden;padding:0;display:block}.tablesaw td:first-of-type .tablesaw-cell-content{width:100%;max-width:100%}.batch-edit.tablesaw td:first-of-type{width:100%;background:rgba(0,0,0,.04)}.batch-edit.tablesaw td:first-of-type img{margin-bottom:0}.batch-edit.tablesaw td:first-of-type .tablesaw-cell-label{width:0;overflow:hidden;padding:0}.batch-edit .tablesaw-cell-content{display:inline-flex}.tablesaw-cell-content{width:70%;max-width:70%}.tablesaw-cell-content img{margin:0 6px 0 0}.tablesaw tr:last-of-type td,.tablesaw tr:last-of-type th,.tablesaw th,.tablesaw td{padding-top:6px;padding-bottom:6px;vertical-align:top}.tablesaw th:not(:last-of-type),.tablesaw td:not(:last-of-type){border-bottom:1px solid #dfdfdf}.tablesaw tr.delete{border:0}.tablesaw tr.delete td{border:0}.tablesaw tr.delete td:not(:first-of-type){display:none}.resource-template th:first-of-type,.resource-template td:first-of-type{width:100%}#site-user-permissions tr.user.value{position:relative}#site-user-permissions td:nth-child(3){position:absolute;top:0;right:0;padding:0 6px 0 0}#site-user-permissions td:nth-child(3) .tablesaw-cell-label{display:none}#site-user-permissions td:nth-child(3) .tablesaw-cell-content{width:100%;max-width:100%}#site-user-permissions.tablesaw-stack tbody tr{border-bottom:0}} \ No newline at end of file diff --git a/application/asset/js/site-page-edit.js b/application/asset/js/site-page-edit.js index abea7d9aa3..aae8ef58ea 100644 --- a/application/asset/js/site-page-edit.js +++ b/application/asset/js/site-page-edit.js @@ -208,6 +208,11 @@ replaceIndex(thisAttachment, 'attachmentIndex', attachmentIndex); }); } + // Set block layout data to form. + const blockLayoutData = thisBlock.data('block-layout-data'); + blockLayoutData.grid_column_position = thisBlock.find('.block-page-layout-grid-column-position-select').val(); + blockLayoutData.grid_column_span = thisBlock.find('.block-page-layout-grid-column-span-select').val(); + thisBlock.find('.block-layout-data').val(JSON.stringify(blockLayoutData)); }); }); @@ -427,5 +432,254 @@ $('#content').on('click', '.page-clear', function() { resetAssetOption('#asset-options .page-link'); }); + + // Prepare page layout for use. + const preparePageLayout = function() { + const layoutSelect = $('#page-layout-select'); + const gridColumnsSelect = $('#page-layout-grid-columns-select'); + const gridPreview = $('#preview-page-layout-grid'); + const blockGridControls = $('.block-page-layout-grid-controls'); + const blockGridPreview = $('.preview-block-page-layout-grid'); + // Disable and hide all layout-specific controls by default. + gridColumnsSelect.hide(); + gridPreview.hide(); + blockGridControls.hide(); + blockGridPreview.hide(); + switch (layoutSelect.val()) { + case 'grid': + // Prepare grid layout. + gridColumnsSelect.show(); + gridPreview.show(); + blockGridControls.show(); + blockGridPreview.show(); + preparePageGridLayout(); + break; + case '': + default: + // Prepare normal flow layout. Do nothing. + break; + } + }; + + // Prepare page grid layout for use. + const preparePageGridLayout = function() { + const gridColumns = parseInt($('#page-layout-grid-columns-select').val(), 10); + $('.block').each(function() { + const thisBlock = $(this); + const gridColumnPositionSelect = thisBlock.find('.block-page-layout-grid-column-position-select'); + const gridColumnPositionSelectValue = parseInt(gridColumnPositionSelect.val(), 10); + const gridColumnSpanSelect = thisBlock.find('.block-page-layout-grid-column-span-select'); + const gridColumnSpanSelectValue = parseInt(gridColumnSpanSelect.val(), 10); + // Hide invalid positions according to the column # and span #. + gridColumnPositionSelect.find('option').show() + .filter(function() { + const thisOption = $(this); + const thisValue = parseInt(thisOption.attr('value'), 10); + return (thisValue > gridColumns) || (thisValue > (1 + gridColumns - gridColumnSpanSelectValue)); + }).hide(); + // Hide invalid spans according to the column # and position #. + gridColumnSpanSelect.find('option').show() + .filter(function() { + const thisOption = $(this); + const thisValue = parseInt(thisOption.attr('value'), 10); + return (thisValue > gridColumns) || (thisValue > (1 + gridColumns - gridColumnPositionSelectValue)); + }).hide(); + }); + }; + + // Set layout-specific block controls to their default values. + const setPageLayoutBlockDefaults = function(blockElements) { + const layoutSelect = $('#page-layout-select'); + switch (layoutSelect.val()) { + case 'grid': + // Set grid layout defaults. + const gridColumns = $('#page-layout-grid-columns-select').val(); + blockElements.each(function() { + const thisBlock = $(this); + thisBlock.find('.block-page-layout-grid-column-position-select').val('auto'); + thisBlock.find('.block-page-layout-grid-column-span-select').val(gridColumns); + }); + break; + case '': + default: + // Set normal flow layout defaults. Do nothing. + break; + } + } + + // Preview the page layout grid. + const previewPageLayoutGrid = function() { + const gridLayoutPreview = $('#grid-layout-preview'); + const gridColumns = parseInt($('#page-layout-grid-columns-select').val(), 10); + gridLayoutPreview + .empty() + .css('grid-template-columns', `repeat(${gridColumns}, 1fr)`); + $('.block').each(function() { + const thisBlock = $(this); + const gridColumnPositionSelect = thisBlock.find('.block-page-layout-grid-column-position-select'); + const gridColumnPositionSelectValue = parseInt(gridColumnPositionSelect.val(), 10) || 'auto'; + const gridColumnSpanSelect = thisBlock.find('.block-page-layout-grid-column-span-select'); + const gridColumnSpanSelectValue = parseInt(gridColumnSpanSelect.val(), 10); + const selectedTooltip = $('
'); + const blockDiv = $('
') + .css('grid-column', `${gridColumnPositionSelectValue} / span ${gridColumnSpanSelectValue}`); + if (thisBlock.hasClass('grid-layout-previewing')) { + blockDiv.addClass('grid-layout-previewing').append(selectedTooltip); + } + blockDiv.hover( + function() { + thisBlock.addClass('hovered-block'); + $(this).addClass('hovered-block'); + }, + function() { + thisBlock.removeClass('hovered-block'); + $(this).removeClass('hovered-block'); + } + ); + gridLayoutPreview.append(blockDiv); + }); + Omeka.openSidebar($('#grid-layout-preview-sidebar')); + }; + + // Prepare page layout on initial load. + preparePageLayout(); + + // Handle adding a block. + $('#blocks').on('o:block-added', '.block', function(e) { + const thisBlock = $(this); + setPageLayoutBlockDefaults(thisBlock); + preparePageLayout(); + }); + + // Handle a page layout change. + $('#page-layout-select').on('change', function() { + // Revert to the previous grid state, if any. + const columnsSelect = $('#page-layout-grid-columns-select'); + columnsSelect.val(columnsSelect.data('page-layout-grid-columns')); + $('.block').each(function() { + const thisBlock = $(this); + const positionSelect = thisBlock.find('.block-page-layout-grid-column-position-select'); + const spanSelect = thisBlock.find('.block-page-layout-grid-column-span-select'); + positionSelect.val(positionSelect.data('block-page-layout-grid-column-position')); + spanSelect.val(spanSelect.data('block-page-layout-grid-column-span')); + }); + preparePageLayout(); + $('#page-layout-restore').show(); + }); + + // Handle a grid columns change. + $('#page-layout-grid-columns-select').on('change', function() { + setPageLayoutBlockDefaults($('.block')); + preparePageGridLayout(); + $('#page-layout-restore').show(); + }); + + // Handle a grid position and grid span change. + $('#blocks').on('change', '.block-page-layout-grid-column-position-select, .block-page-layout-grid-column-span-select', function() { + preparePageGridLayout(); + $('#page-layout-restore').show(); + }); + + // Handle a page layout grid preview click. + $('#preview-page-layout-grid').on('click', function(e) { + e.preventDefault(); + $('.block').removeClass('grid-layout-previewing'); + previewPageLayoutGrid(); + }) + + // Handle a page layout grid preview click for a specific block. + $('#blocks').on('click', '.preview-block-page-layout-grid', function(e) { + e.preventDefault(); + $('.block').removeClass('grid-layout-previewing'); + $(this).closest('.block').addClass('grid-layout-previewing'); + previewPageLayoutGrid(); + }); + + // Handle a configure block layout click. (open the sidebar) + $('#blocks').on('click', '.configure-block-layout-data', function(e) { + e.preventDefault(); + const thisBlock = $(this).closest('.block'); + const blockLayoutData = thisBlock.data('block-layout-data'); + const blockLayoutDataSidebar = $('#block-layout-data-sidebar'); + $('.block').removeClass('block-layout-data-configuring'); + thisBlock.addClass('block-layout-data-configuring'); + + // Populate form with block layout data. + $('#block-layout-data-class').val(blockLayoutData.class); + $('#block-layout-data-alignment').val(blockLayoutData.alignment); + if (blockLayoutData.background_image_asset) { + const apiEndpointUrl = blockLayoutDataSidebar.data('api-endpoint-url'); + const assetId = parseInt(blockLayoutData.background_image_asset, 10); + $('#block-layout-data-background-image-asset').val(blockLayoutData.background_image_asset); + $.get(`${apiEndpointUrl}/assets/${assetId}`, function(data) { + blockLayoutDataSidebar.find('.selected-asset').show(); + blockLayoutDataSidebar.find('img.selected-asset-image').attr('src', data['o:asset_url']); + blockLayoutDataSidebar.find('selected-asset-name').attr('src', data['o:name']); + blockLayoutDataSidebar.find('.no-selected-asset').hide(); + blockLayoutDataSidebar.find('.asset-form-clear').show(); + }); + } else { + blockLayoutDataSidebar.find('.selected-asset').hide(); + blockLayoutDataSidebar.find('.no-selected-asset').show(); + blockLayoutDataSidebar.find('.asset-form-clear').hide(); + } + $('#block-layout-data-background-position-y').val(blockLayoutData.background_position_y); + $('#block-layout-data-background-position-x').val(blockLayoutData.background_position_x); + + Omeka.openSidebar(blockLayoutDataSidebar); + }); + + // Handle a configure block layout apply changes click (close the sidebar). + $('#apply-block-layout-data').on('click', function(e) { + e.preventDefault(); + const block = $('.block-layout-data-configuring'); + const blockLayoutData = block.data('block-layout-data'); + + // Apply block layout data. + blockLayoutData.class = $('#block-layout-data-class').val(); + blockLayoutData.alignment = $('#block-layout-data-alignment').val(); + blockLayoutData.background_image_asset = $('#block-layout-data-background-image-asset').val(); + blockLayoutData.background_position_y = $('#block-layout-data-background-position-y').val(); + blockLayoutData.background_position_x = $('#block-layout-data-background-position-x').val(); + + Omeka.closeSidebar($('#block-layout-data-sidebar')); + }); + + // Handle a layout restore click. + $('#page-layout-restore').on('click', function() { + const restoreButton = $(this); + const layoutSelect = $('#page-layout-select'); + layoutSelect.val(layoutSelect.data('page-layout')); + preparePageLayout(); + switch (layoutSelect.val()) { + case 'grid': + // Restore grid layout. + const gridColumnsSelect = $('#page-layout-grid-columns-select'); + gridColumnsSelect.val(gridColumnsSelect.data('page-layout-grid-columns')); + $('.block').each(function() { + const thisBlock = $(this); + const gridColumnPositionSelect = thisBlock.find('.block-page-layout-grid-column-position-select'); + const gridColumnSpanSelect = thisBlock.find('.block-page-layout-grid-column-span-select'); + let originalGridColumnPosition = gridColumnPositionSelect.data('block-page-layout-grid-column-position'); + let originalGridColumnSpan = gridColumnSpanSelect.data('block-page-layout-grid-column-span'); + // Set default values if this is a new block. + if ('' === originalGridColumnPosition) { + originalGridColumnPosition = 'auto'; + } + if ('' === originalGridColumnSpan) { + originalGridColumnSpan = $('#page-layout-grid-columns-select').val(); + } + gridColumnPositionSelect.val(originalGridColumnPosition); + gridColumnSpanSelect.val(originalGridColumnSpan); + }); + preparePageGridLayout(); + break; + case '': + default: + // Restore normal flow layout. Do nothing. + break; + } + restoreButton.hide(); + }); }); })(window.jQuery); diff --git a/application/asset/sass/_screen.scss b/application/asset/sass/_screen.scss index bb274fb532..97dd9254bb 100755 --- a/application/asset/sass/_screen.scss +++ b/application/asset/sass/_screen.scss @@ -689,11 +689,11 @@ a.collapse { .selector-table + .no-resources { display: none; } - + .selector-table.empty + .no-resources { display: block; } - + .selector .resources-available.empty, .selector .resources-available + .resources-unavailable { display: none; @@ -1688,7 +1688,7 @@ td .o-icon-user-inactive { .multi-value .value { display: flex; } - + .multi-value .add-value, .multi-value.field .remove-value { background-color: transparent; @@ -1715,13 +1715,13 @@ td .o-icon-user-inactive { color: $red; } } - + .multi-value .add-value { position: absolute; top: 0; right: 0; } - + .multi-value .field-meta { padding-right: 1.5 * $spacing-large; } @@ -2049,7 +2049,7 @@ fieldset.section > legend { padding: 0; border-bottom: 0; - a:empty { + a:empty { display: none; } @@ -2079,7 +2079,7 @@ fieldset.section > legend { display: flex; align-items: center; justify-content: center; - + &:before { font-size: 10px; } @@ -2177,7 +2177,7 @@ fieldset.section > legend { border-radius: 0 0 3px 3px; } } - + .selector li.selector-parent.empty { display: none; } @@ -2510,7 +2510,7 @@ fieldset.section > legend { #resource-values div.value { display: flex; align-items: stretch; - + &:only-of-type .sortable-handle { display: none; } @@ -2604,7 +2604,7 @@ fieldset.section > legend { display: block; } } - + .value.delete { background-color: $delete-bg; overflow: hidden; @@ -2612,7 +2612,8 @@ fieldset.section > legend { .value .restore-value, .value.delete a.tab, - .value.delete [class*="o-icon-"]:not(.restore-value) { + .value.delete [class*="o-icon-"]:not(.restore-value), + .value.delete .block-page-layout-grid-controls { display: none; } @@ -2658,13 +2659,13 @@ fieldset.section > legend { width: 100%; margin: 0; } - + .inputs .value textarea { min-height: 3 * $spacing-large; border: 0; box-shadow: 0 0 0 1px $border-gray; } - + .inputs .value .input-body > textarea { padding: $spacing-small $spacing-medium; } @@ -2750,7 +2751,7 @@ fieldset.section > legend { .selected-resource a { width: calc(100% - #{3 * $spacing-large}); } - + .selected-resource + a.button { margin-left: $spacing-small; } @@ -2882,7 +2883,7 @@ fieldset.section > legend { } } - .media.row .actions { + .media.row .actions { margin-left: $spacing-large; } @@ -2940,7 +2941,7 @@ fieldset.section > legend { #site-item-sets + .no-resources:before { content: fa-content($fa-var-cubes); } - + #item-item-sets tr.delete { background-color: $delete-bg; } @@ -2959,13 +2960,13 @@ fieldset.section > legend { } /* @end */ - + /* @group ----- Sites ----- */ - + #item-sites.empty + .no-resources:before { content: fa-content($fa-var-laptop); } - + /* @end */ /* @group ----- Media ----- */ @@ -3258,7 +3259,7 @@ fieldset.section > legend { margin-bottom: $spacing-medium; border-bottom: 3px solid $border-gray; - .label, + .label, label { margin: 0; width: auto; @@ -3321,7 +3322,7 @@ fieldset.section > legend { bottom: 0;; } -.sidebar #advanced-search .value select, +.sidebar #advanced-search .value select, .sidebar #advanced-search .value input { margin-left: 0; } @@ -3547,7 +3548,7 @@ input[type=text].query-form-query { width: 100%; } -.collapsible.annotation h4, +.collapsible.annotation h4, .collapsible.annotation .values { width: 100%; padding: 0; @@ -3921,7 +3922,7 @@ body.sidebar-open #content { padding: 0 $spacing-small; margin: 0 $spacing-small; position: relative; - + &:after { content: ""; border-top: $spacing-medium solid transparent; @@ -3942,14 +3943,14 @@ body.sidebar-open #content { font-weight: bold; margin-left: auto; margin-right: $spacing-medium; - + &:after { content: "\f00c"; @include font-awesome; display: inline-block; margin-left: $spacing-small; } - + ~ .actions { margin-left: 0; } @@ -4113,43 +4114,43 @@ body.sidebar-open #content { } /* @group ----- Resources ----- */ - + #site-item-sets th:first-child, #site-item-sets th:last-child { width: 1.5 * $spacing-large; } - + .manual-assignment .inputs label { display: block; padding: 0; margin: $spacing-small 0 0; min-height: 0; line-height: $base-line-height; - + &:last-child { margin-bottom: $spacing-small; } } - + .manual-assignment #advanced-search { margin-top: -1 * $spacing-small; padding: $spacing-medium 0 $spacing-small; background-color: $gray-on-white; border-top: 1px solid $border-gray; - + &.inactive { display: none; } } - + .manual-assignment .advanced-search-header { padding: 0 $spacing-small; } - + .manual-assignment .advanced-search-header a.button { margin-bottom: $spacing-small; } - + .manual-assignment .advanced-search-content .field { background-color: transparent; } @@ -4158,9 +4159,9 @@ body.sidebar-open #content { .keep-search input { margin: 0 0 0 $spacing-small; } - - - + + + /* @end */ /* @group ----- User Permissions ----- */ @@ -4169,7 +4170,7 @@ body.sidebar-open #content { tr.value.delete > td:not(.input-footer) { display: table-cell; } - + tr.value.delete .user-name, tr.value.delete select, tr.value.delete .o-icon-delete { @@ -4193,6 +4194,21 @@ body.sidebar-open #content { /* @group ----- Pages ----- */ + #page-layout-controls { + display: flex; + align-items: center; + justify-content: flex-end; + margin-bottom: $spacing-medium; + } + + #page-layout-controls > *:not(:last-child) { + margin-right: $spacing-small; + } + + #page-layout-controls button { + margin-bottom: 0; + } + .indent:before { content: "\2014"; margin-right: -1px; @@ -4220,6 +4236,19 @@ body.sidebar-open #content { text-align: center; } + .block .block-header .block-type { + margin-right: auto; + } + + .block .block-header select { + margin-right: $spacing-small; + font-weight: normal; + } + + .block-page-layout-grid-controls + .actions { + margin-left: 0; + } + .block .block-content input[type="hidden"] + * { padding-top: 0; margin-top: 0; @@ -4518,25 +4547,25 @@ body.sidebar-open #content { .add-asset-attachment { margin-top: $spacing-small; } - + #asset-options .sidebar-content > div { margin-bottom: 2rem; } - + .asset-attachment-select { margin-top: .5rem; } - + .asset-title { display: flex; align-items: center; } - + .asset-title img { height: 100%; width: auto; } - + .asset-title .thumbnail:not(:empty) { height: 2rem; position: relative; @@ -4546,7 +4575,7 @@ body.sidebar-open #content { display: inline-flex; justify-content: center; } - + #asset-options .none-selected.inactive { display: none; } @@ -4563,6 +4592,41 @@ body.sidebar-open #content { margin-left: $spacing-small; } + /* @group ----- Page Grid ----- */ + + #grid-layout-preview { + display: grid; + gap: $spacing-small; + } + + .grid-layout-previewing-block { + min-height: 60px; + background-color: $border-gray; + } + + .hovered-block { + box-shadow: 0 0 0 1px $copy-gray inset; + } + + #grid-layout-preview .grid-layout-previewing { + box-shadow: 0 0 0 2px $copy-gray inset; + display: flex; + justify-content: center; + align-items: center; + } + + .grid-layout-previewing.block { + box-shadow: 0 0 0 2px $copy-gray inset; + } + + .selected-tooltip:before { + content: fa-content($fa-var-asterisk); + font-family: "Font Awesome 5 Free"; + font-weight: 900; + } + + /* @end */ + /* @end */ /* @group ----- Site Admin ----- */ @@ -4644,7 +4708,7 @@ body.sidebar-open #content { order: 2; } } - + .theme-thumbnail { align-self: flex-start; } @@ -4717,7 +4781,7 @@ body.sidebar-open #content { margin: 0 $spacing-large 0 0; border: 1px solid $border-gray; } - + .current-theme .current-theme-info { width: calc(50% - #{$spacing-large}); } @@ -4741,11 +4805,12 @@ body.sidebar-open #content { /* @groups ----- Page Block Config ----- */ + .theme-resource-pages .blocks { list-style: none; padding-left: 0; - border: 1px solid $border-gray; - padding: $spacing-medium; + border: 1px solid $border-gray; + padding: $spacing-medium; min-height: 30px; } @@ -4865,7 +4930,7 @@ body.minimal { margin-bottom: $spacing-large; display: flex; flex-wrap: wrap; - + .site { margin-bottom: $spacing-medium; overflow: auto; @@ -4878,12 +4943,12 @@ body.minimal { display: inline-block; font-size: 1.125 * $base-font-size; } - + .site-summary { margin: 0; line-height: 20px; } - + .site-thumbnail { float: left; display: block; @@ -4899,23 +4964,23 @@ body.minimal { .results { margin-bottom: $spacing-large; } - + .results > ul { padding-left: 0; } - + .results > ul > li { list-style-type: none; } - + .advanced-search { margin: (-1 * $spacing-medium) 0 $spacing-large; display: block; } - + .advanced-search-actions { margin: $spacing-medium 0; - + input[type="submit"] { width: auto; display: inline-block; @@ -4927,15 +4992,15 @@ body.minimal { margin: $spacing-small 0; } -.sitewide-search-form { +.sitewide-search-form { display: flex; margin-bottom: $spacing-large; input[type="text"] { min-width: 60%; - margin-right: $spacing-small; + margin-right: $spacing-small; } - + input[type="submit"] { width: auto; margin: 0; @@ -4959,7 +5024,7 @@ body.minimal .site.results thead { padding: $spacing-small $spacing-small 0; margin-bottom: $spacing-medium; width: calc(50% - #{$spacing-medium}); - + &:nth-child(2n) { margin-left: $spacing-medium; } diff --git a/application/asset/sass/page-blocks.scss b/application/asset/sass/page-blocks.scss index 155cbf04e2..b243e5edbb 100644 --- a/application/asset/sass/page-blocks.scss +++ b/application/asset/sass/page-blocks.scss @@ -61,40 +61,6 @@ } } -.right, -.left { - overflow: hidden; - max-width: 33.33%; -} - -.left .item.resource, -.right .item.resource { - margin: 0 0 1rem 0; - - &:first-of-type { - padding-top: calc(1rem - 1px); - margin-top: 0; - } - - &:last-of-type { - padding-bottom: -1px; - } - - .media-render a { - display: block; - } - - audio, - canvas, - video, - progress, - img { - max-width: 100%; - vertical-align: bottom; - margin-bottom: .5rem; - } -} - /* IE/Edge min-content alternative */ .file { border-top: 1px solid $border-gray; @@ -103,53 +69,12 @@ margin-bottom: 1rem; } -.left.file, -.left.assets { - float: left; - clear: left; - margin: 0 1rem 1rem 0; -} - -.right.file, -.right.assets { - float: right; - clear: right; - margin: 0 0 1rem 1rem; -} - -.center.file, -.center.assets { - display: flex; - justify-content: center; - flex-wrap: wrap; - text-align: center; - - .item { - width: 100%; - } -} - -.left .item.resource > a:first-child, -.right .item.resource > a:first-child { - vertical-align: top; -} - .medium .item.resource > h3, .square .item.resource > h3 { font-size: $base-font-size; line-height: 1.5rem; } -.left .item.resource > h3, -.right .item.resource > h3 { - margin: 0; -} - -.left .item.resource + p, -.right .item.resource + p { - margin-top: 0; -} - .break { width: 100%; clear: both; diff --git a/application/asset/sass/page-grid.scss b/application/asset/sass/page-grid.scss new file mode 100644 index 0000000000..7667de60a9 --- /dev/null +++ b/application/asset/sass/page-grid.scss @@ -0,0 +1,112 @@ +.page-layout-grid { + display: grid; + gap: 10px; +} + +.page-layout-grid > div { + min-height: 50px; +} + +@media screen and (max-width:896px) { + .page-layout-grid { + display: block; + } +} + +.block-layout-background-position-y-top { + background-position-y: top; +} + +.block-layout-background-position-y-center { + background-position-y: center; +} + +.block-layout-background-position-y-bottom { + background-position-y: bottom; +} + +.block-layout-background-position-x-left { + background-position-x: left; +} + +.block-layout-background-position-x-center { + background-position-x: center; +} + +.block-layout-background-position-x-right { + background-position-x: right; +} + +.page-layout-normal .block-layout-alignment-right, +.page-layout-normal .block-layout-alignment-left { + overflow: hidden; + max-width: 33.33%; +} + +.block-layout-alignment-left .item.resource, +.block-layout-alignment-right .item.resource { + margin: 0 0 1rem 0; + + &:first-of-type { + padding-top: calc(1rem - 1px); + margin-top: 0; + } + + &:last-of-type { + padding-bottom: -1px; + } + + .media-render a { + display: block; + } + + audio, + canvas, + video, + progress, + img { + max-width: 100%; + vertical-align: bottom; + margin-bottom: .5rem; + } +} + +.block-layout-alignment-left { + float: left; + clear: left; + margin: 0 1rem 1rem 0; +} + +.block-layout-alignment-right { + float: right; + clear: right; + margin: 0 0 1rem 1rem; +} + +.block-layout-alignment-center { + display: flex; + justify-content: center; + flex-wrap: wrap; + text-align: center; + + .item { + width: 100%; + } +} + +.block-layout-alignment-left .item.resource > a:first-child, +.block-layout-alignment-right .item.resource > a:first-child { + vertical-align: top; +} + + + +.block-layout-alignment-left .item.resource > h3, +.block-layout-alignment-right .item.resource > h3 { + margin: 0; +} + +.block-layout-alignment-left .item.resource + p, +.block-layout-alignment-right .item.resource + p { + margin-top: 0; +} diff --git a/application/data/doctrine-proxies/__CG__OmekaEntitySitePage.php b/application/data/doctrine-proxies/__CG__OmekaEntitySitePage.php index 7b4b7dd28b..492b5d2baf 100644 --- a/application/data/doctrine-proxies/__CG__OmekaEntitySitePage.php +++ b/application/data/doctrine-proxies/__CG__OmekaEntitySitePage.php @@ -67,10 +67,10 @@ public function __construct(?\Closure $initializer = null, ?\Closure $cloner = n public function __sleep() { if ($this->__isInitialized__) { - return ['__isInitialized__', 'id', 'slug', 'title', 'isPublic', 'site', 'created', 'modified', 'blocks']; + return ['__isInitialized__', 'id', 'slug', 'title', 'isPublic', 'layout', 'layoutData', 'site', 'created', 'modified', 'blocks']; } - return ['__isInitialized__', 'id', 'slug', 'title', 'isPublic', 'site', 'created', 'modified', 'blocks']; + return ['__isInitialized__', 'id', 'slug', 'title', 'isPublic', 'layout', 'layoutData', 'site', 'created', 'modified', 'blocks']; } /** @@ -258,6 +258,50 @@ public function isPublic() return parent::isPublic(); } + /** + * {@inheritDoc} + */ + public function setLayout($layout) + { + + $this->__initializer__ && $this->__initializer__->__invoke($this, 'setLayout', [$layout]); + + return parent::setLayout($layout); + } + + /** + * {@inheritDoc} + */ + public function getLayout() + { + + $this->__initializer__ && $this->__initializer__->__invoke($this, 'getLayout', []); + + return parent::getLayout(); + } + + /** + * {@inheritDoc} + */ + public function setLayoutData($layoutData) + { + + $this->__initializer__ && $this->__initializer__->__invoke($this, 'setLayoutData', [$layoutData]); + + return parent::setLayoutData($layoutData); + } + + /** + * {@inheritDoc} + */ + public function getLayoutData() + { + + $this->__initializer__ && $this->__initializer__->__invoke($this, 'getLayoutData', []); + + return parent::getLayoutData(); + } + /** * {@inheritDoc} */ diff --git a/application/data/doctrine-proxies/__CG__OmekaEntitySitePageBlock.php b/application/data/doctrine-proxies/__CG__OmekaEntitySitePageBlock.php index 2c26235da4..99da6f79a6 100644 --- a/application/data/doctrine-proxies/__CG__OmekaEntitySitePageBlock.php +++ b/application/data/doctrine-proxies/__CG__OmekaEntitySitePageBlock.php @@ -67,10 +67,10 @@ public function __construct(?\Closure $initializer = null, ?\Closure $cloner = n public function __sleep() { if ($this->__isInitialized__) { - return ['__isInitialized__', 'id', 'layout', 'data', 'position', 'page', 'attachments']; + return ['__isInitialized__', 'id', 'layout', 'data', 'layoutData', 'position', 'page', 'attachments']; } - return ['__isInitialized__', 'id', 'layout', 'data', 'position', 'page', 'attachments']; + return ['__isInitialized__', 'id', 'layout', 'data', 'layoutData', 'position', 'page', 'attachments']; } /** @@ -258,6 +258,28 @@ public function getPosition() return parent::getPosition(); } + /** + * {@inheritDoc} + */ + public function setLayoutData($layoutData) + { + + $this->__initializer__ && $this->__initializer__->__invoke($this, 'setLayoutData', [$layoutData]); + + return parent::setLayoutData($layoutData); + } + + /** + * {@inheritDoc} + */ + public function getLayoutData() + { + + $this->__initializer__ && $this->__initializer__->__invoke($this, 'getLayoutData', []); + + return parent::getLayoutData(); + } + /** * {@inheritDoc} */ diff --git a/application/data/install/schema.sql b/application/data/install/schema.sql index 1c2f15803f..de45f51478 100644 --- a/application/data/install/schema.sql +++ b/application/data/install/schema.sql @@ -281,6 +281,8 @@ CREATE TABLE `site_page` ( `slug` varchar(190) COLLATE utf8mb4_unicode_ci NOT NULL, `title` varchar(190) COLLATE utf8mb4_unicode_ci NOT NULL, `is_public` tinyint(1) NOT NULL, + `layout` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `layout_data` longtext COLLATE utf8mb4_unicode_ci COMMENT '(DC2Type:json)', `created` datetime NOT NULL, `modified` datetime DEFAULT NULL, PRIMARY KEY (`id`), @@ -293,6 +295,7 @@ CREATE TABLE `site_page_block` ( `page_id` int NOT NULL, `layout` varchar(80) COLLATE utf8mb4_unicode_ci NOT NULL, `data` longtext COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '(DC2Type:json_array)', + `layout_data` longtext COLLATE utf8mb4_unicode_ci COMMENT '(DC2Type:json)', `position` int NOT NULL, PRIMARY KEY (`id`), KEY `IDX_C593E731C4663E4` (`page_id`), diff --git a/application/data/migrations/20230124033031_AddPageGridLayout.php b/application/data/migrations/20230124033031_AddPageGridLayout.php new file mode 100644 index 0000000000..a3e47056cf --- /dev/null +++ b/application/data/migrations/20230124033031_AddPageGridLayout.php @@ -0,0 +1,14 @@ +query("ALTER TABLE site_page ADD layout VARCHAR(255) DEFAULT NULL, ADD layout_data LONGTEXT DEFAULT NULL COMMENT '(DC2Type:json)';"); + $conn->query("ALTER TABLE site_page_block ADD page_layout_data LONGTEXT DEFAULT NULL COMMENT '(DC2Type:json)';"); + } +} diff --git a/application/data/migrations/20230519025536_AlterLayoutData.php b/application/data/migrations/20230519025536_AlterLayoutData.php new file mode 100644 index 0000000000..1739f93a0d --- /dev/null +++ b/application/data/migrations/20230519025536_AlterLayoutData.php @@ -0,0 +1,13 @@ +query("ALTER TABLE site_page_block CHANGE page_layout_data layout_data LONGTEXT DEFAULT NULL COMMENT '(DC2Type:json)';"); + } +} diff --git a/application/data/migrations/20230523085358_MigrateBlockLayoutData.php b/application/data/migrations/20230523085358_MigrateBlockLayoutData.php new file mode 100644 index 0000000000..310ac557f4 --- /dev/null +++ b/application/data/migrations/20230523085358_MigrateBlockLayoutData.php @@ -0,0 +1,67 @@ +get('Omeka\EntityManager')); + } + + public function __construct($em) + { + $this->em = $em; + } + + public function up(Connection $conn) + { + $blocksRepository = $this->em->getRepository('Omeka\Entity\SitePageBlock'); + + // Migrate "HTML" (html) blocks. + foreach ($blocksRepository->findBy(['layout' => 'html']) as $block) { + $data = $block->getData(); + $layoutData = $block->getLayoutData(); + if (isset($data['divclass'])) { + $layoutData['class'] = $data['divclass']; + unset($data['divclass']); + $block->setData($data); + $block->setLayoutData($layoutData); + } + } + // Migrate "Media embed" (media) blocks. + foreach ($blocksRepository->findBy(['layout' => 'media']) as $block) { + $data = $block->getData(); + $layoutData = $block->getLayoutData(); + if (isset($data['alignment'])) { + $layoutData['alignment'] = $data['alignment']; + unset($data['alignment']); + $block->setData($data); + $block->setLayoutData($layoutData); + } + } + // Migrate "Asset" (asset) blocks. + foreach ($blocksRepository->findBy(['layout' => 'asset']) as $block) { + $data = $block->getData(); + $layoutData = $block->getLayoutData(); + if (isset($data['className'])) { + $layoutData['class'] = $data['className']; + unset($data['className']); + $block->setData($data); + $block->setLayoutData($layoutData); + } + if (isset($data['alignment'])) { + $layoutData['alignment'] = $data['alignment']; + unset($data['alignment']); + $block->setData($data); + $block->setLayoutData($layoutData); + } + } + $this->em->flush(); + } +} diff --git a/application/src/Api/Adapter/SitePageAdapter.php b/application/src/Api/Adapter/SitePageAdapter.php index e18600db6e..5a4fb6c83a 100644 --- a/application/src/Api/Adapter/SitePageAdapter.php +++ b/application/src/Api/Adapter/SitePageAdapter.php @@ -143,6 +143,14 @@ public function hydrate(Request $request, EntityInterface $entity, $entity->setIsPublic($request->getValue('o:is_public', true)); } + if ($this->shouldHydrate($request, 'o:layout')) { + $entity->setLayout($request->getValue('o:layout', null)); + } + + if ($this->shouldHydrate($request, 'o:layout_data')) { + $entity->setLayoutData($request->getValue('o:layout_data', null)); + } + $appendBlocks = $request->getOperation() === Request::UPDATE && $request->getOption('isPartial', false); $this->hydrateBlocks($blockData, $entity, $errorStore, $appendBlocks); $this->updateTimestamps($request, $entity); @@ -226,6 +234,7 @@ private function hydrateBlocks(array $blockData, SitePage $page, ErrorStore $err $block->setLayout($inputBlock['o:layout']); $block->setData($inputBlock['o:data']); + $block->setLayoutData($inputBlock['o:layout_data'] ?? null); // (Re-)order blocks by their order in the input $block->setPosition($position++); diff --git a/application/src/Api/Representation/SitePageBlockRepresentation.php b/application/src/Api/Representation/SitePageBlockRepresentation.php index eaa470df6a..dcc941107b 100644 --- a/application/src/Api/Representation/SitePageBlockRepresentation.php +++ b/application/src/Api/Representation/SitePageBlockRepresentation.php @@ -29,6 +29,7 @@ public function jsonSerialize(): array return [ 'o:layout' => $this->layout(), 'o:data' => $this->data(), + 'o:layout_data' => $this->layoutData(), 'o:attachment' => $this->attachments(), ]; } @@ -79,6 +80,27 @@ public function dataValue($key, $default = null) return $data[$key] ?? $default; } + /** + * Get block layout data by key. + * + * @param string $key The layout data key + * @param mixed $default Return this if key does not exist + * @return mixed + */ + public function layoutDataValue($key, $default = null) + { + $layoutData = $this->block->getLayoutData(); + return $layoutData[$key] ?? $default; + } + + /** + * @return array + */ + public function layoutData() + { + return $this->block->getLayoutData(); + } + public function attachments() { $attachments = []; diff --git a/application/src/Api/Representation/SitePageRepresentation.php b/application/src/Api/Representation/SitePageRepresentation.php index 96b87cde50..020968ddd3 100644 --- a/application/src/Api/Representation/SitePageRepresentation.php +++ b/application/src/Api/Representation/SitePageRepresentation.php @@ -25,6 +25,8 @@ public function getJsonLd() 'o:slug' => $this->slug(), 'o:title' => $this->title(), 'o:is_public' => $this->isPublic(), + 'o:layout' => $this->layout(), + 'o:layout_data' => $this->layoutData(), 'o:block' => $this->blocks(), 'o:site' => $this->site()->getReference(), 'o:created' => $created, @@ -72,6 +74,22 @@ public function isPublic() return $this->resource->isPublic(); } + /** + * @return ?string + */ + public function layout() + { + return $this->resource->getLayout(); + } + + /** + * @return ?array + */ + public function layoutData() + { + return $this->resource->getLayoutData(); + } + /** * Get the blocks assigned to this page. * diff --git a/application/src/Controller/SiteAdmin/PageController.php b/application/src/Controller/SiteAdmin/PageController.php index 525c823f0a..228c05ebc1 100644 --- a/application/src/Controller/SiteAdmin/PageController.php +++ b/application/src/Controller/SiteAdmin/PageController.php @@ -1,6 +1,7 @@ getRequest()->isPost()) { $post = $this->params()->fromPost(); + // Prepare block layout data. + foreach ($post['o:block'] as $key => $blockData) { + $post['o:block'][$key]['o:layout_data'] = json_decode($blockData['o:layout_data'], true); + } $form->setData($post); if ($form->isValid()) { $response = $this->api($form)->update('site_pages', $page->id(), $post); @@ -41,6 +46,7 @@ public function editAction() $view->setVariable('sitePages', $sitePages); $view->setVariable('page', $page); $view->setVariable('form', $form); + $view->setVariable('blockLayoutDataForm', $this->getForm(BlockLayoutDataForm::class)); return $view; } diff --git a/application/src/Entity/SitePage.php b/application/src/Entity/SitePage.php index c2dcf64dec..bc156922f3 100644 --- a/application/src/Entity/SitePage.php +++ b/application/src/Entity/SitePage.php @@ -38,6 +38,16 @@ class SitePage extends AbstractEntity */ protected $isPublic = true; + /** + * @Column(type="string", nullable=true) + */ + protected $layout; + + /** + * @Column(type="json", nullable=true) + */ + protected $layoutData; + /** * @ManyToOne(targetEntity="Site", inversedBy="pages") * @JoinColumn(nullable=false) @@ -105,6 +115,26 @@ public function isPublic() return (bool) $this->isPublic; } + public function setLayout($layout) + { + $this->layout = $layout; + } + + public function getLayout() + { + return $this->layout; + } + + public function setLayoutData($layoutData) + { + $this->layoutData = $layoutData; + } + + public function getLayoutData() + { + return $this->layoutData; + } + public function setSite(Site $site) { $this->site = $site; diff --git a/application/src/Entity/SitePageBlock.php b/application/src/Entity/SitePageBlock.php index f039f82a9c..5a681c0e74 100644 --- a/application/src/Entity/SitePageBlock.php +++ b/application/src/Entity/SitePageBlock.php @@ -33,6 +33,11 @@ class SitePageBlock extends AbstractEntity */ protected $data; + /** + * @Column(type="json", nullable=true) + */ + protected $layoutData; + /** * @Column(type="integer") */ @@ -95,6 +100,16 @@ public function getPosition() return $this->position; } + public function setLayoutData($layoutData) + { + $this->layoutData = $layoutData; + } + + public function getLayoutData() + { + return $this->layoutData; + } + public function setPage(SitePage $page) { $this->page = $page; diff --git a/application/src/Form/BlockLayoutDataForm.php b/application/src/Form/BlockLayoutDataForm.php new file mode 100644 index 0000000000..2ea3006d22 --- /dev/null +++ b/application/src/Form/BlockLayoutDataForm.php @@ -0,0 +1,90 @@ +add([ + 'name' => 'class', + 'type' => 'text', + 'options' => [ + 'label' => 'Class', // @translate + ], + 'attributes' => [ + 'id' => 'block-layout-data-class', + ], + ]); + $this->add([ + 'name' => 'alignment', + 'type' => 'select', + 'options' => [ + 'label' => 'Alignment', // @translate + 'empty_option' => 'Default', // @translate + 'value_options' => [ + 'left' => 'Float left', // @translate + 'right' => 'Float right', // @translate + 'center' => 'Center', // @translate + ], + ], + 'attributes' => [ + 'id' => 'block-layout-data-alignment', + ], + ]); + $this->add([ + 'name' => 'background-image-asset', + 'type' => \Omeka\Form\Element\Asset::class, + 'options' => [ + 'label' => 'Background: image', // @translate + ], + 'attributes' => [ + 'id' => 'block-layout-data-background-image-asset', + ], + ]); + $this->add([ + 'name' => 'background-position-y', + 'type' => 'select', + 'options' => [ + 'label' => 'Background: image vertical anchor position', // @translate + 'empty_option' => 'Default', // @translate + 'value_options' => [ + 'top' => 'Top', // @translate + 'center' => 'Center', // @translate + 'bottom' => 'Bottom', // @translate + ], + ], + 'attributes' => [ + 'id' => 'block-layout-data-background-position-y', + ], + ]); + $this->add([ + 'name' => 'background-position-x', + 'type' => 'select', + 'options' => [ + 'label' => 'Background: image horizontal anchor position', // @translate + 'empty_option' => 'Default', // @translate + 'value_options' => [ + 'left' => 'Left', // @translate + 'center' => 'Center', // @translate + 'right' => 'Right', // @translate + ], + ], + 'attributes' => [ + 'id' => 'block-layout-data-background-position-x', + ], + ]); + + $event = new Event('form.add_elements', $this); + $this->getEventManager()->triggerEvent($event); + + $inputFilter = $this->getInputFilter(); + $event = new Event('form.add_input_filters', $this, ['inputFilter' => $inputFilter]); + $this->getEventManager()->triggerEvent($event); + } +} diff --git a/application/src/Service/ViewHelper/BlockLayoutFactory.php b/application/src/Service/ViewHelper/BlockLayoutFactory.php index fbbfae1abd..4130100249 100644 --- a/application/src/Service/ViewHelper/BlockLayoutFactory.php +++ b/application/src/Service/ViewHelper/BlockLayoutFactory.php @@ -18,6 +18,9 @@ class BlockLayoutFactory implements FactoryInterface */ public function __invoke(ContainerInterface $services, $requestedName, array $options = null) { - return new BlockLayout($services->get('Omeka\BlockLayoutManager')); + return new BlockLayout( + $services->get('Omeka\BlockLayoutManager'), + $services->get('EventManager') + ); } } diff --git a/application/src/Site/BlockLayout/Asset.php b/application/src/Site/BlockLayout/Asset.php index 9b479b8ca6..a29dea2b33 100644 --- a/application/src/Site/BlockLayout/Asset.php +++ b/application/src/Site/BlockLayout/Asset.php @@ -7,7 +7,6 @@ use Omeka\Api\Representation\SitePageBlockRepresentation; use Omeka\Entity\SitePageBlock; use Omeka\Stdlib\ErrorStore; -use Laminas\Form\Element\Select; use Laminas\View\Renderer\PhpRenderer; class Asset extends AbstractBlockLayout @@ -28,31 +27,6 @@ public function onHydrate(SitePageBlock $block, ErrorStore $errorStore) $block->setData($data); } - public function alignmentClassSelect(PhpRenderer $view, SitePageBlockRepresentation $block = null - ) { - $alignmentLabels = [ - 'default', // @translate - 'float left', // @translate - 'float right', // @translate - 'center', // @translate - ]; - $alignmentValues = [ - 'default', // @translate - 'left', // @translate - 'right', // @translate - 'center', // @translate - ]; - $alignment = $block ? $block->dataValue('alignment', 'default') : 'default'; - $select = new Select('o:block[__blockIndex__][o:data][alignment]'); - $select->setValueOptions(array_combine($alignmentValues, $alignmentLabels))->setValue($alignment); - $selectLabel = 'Alignment'; // @translate - $select->setAttributes(['title' => $selectLabel, 'aria-label' => $selectLabel]); - $html = '
'; - $html .= '
'; - $html .= '
' . $view->formSelect($select) . '
'; - return $html; - } - public function prepareAssetAttachments(PhpRenderer $view, $blockData, SiteRepresentation $site) { $attachments = []; @@ -93,13 +67,11 @@ public function form(PhpRenderer $view, SiteRepresentation $site, SitePageRepres $apiUrl = $site->apiUrl(); $blockData = ($block) ? $block->data() : ''; $attachments = $this->prepareAssetAttachments($view, $blockData, $site); - $alignmentClassSelect = $this->alignmentClassSelect($view, $block); return $view->partial('common/asset-block-form', [ 'block' => $blockData, 'siteId' => $siteId, 'apiUrl' => $apiUrl, 'attachments' => $attachments, - 'alignmentClassSelect' => $alignmentClassSelect, ]); } @@ -108,12 +80,8 @@ public function render(PhpRenderer $view, SitePageBlockRepresentation $block) $blockData = ($block) ? $block->data() : ''; $site = $view->site; $attachments = $this->prepareAssetAttachments($view, $blockData, $site); - $customClass = $block->dataValue('className'); - $alignment = $block->dataValue('alignment'); return $view->partial('common/block-layout/asset', [ 'attachments' => $attachments, - 'className' => $customClass, - 'alignment' => $alignment, ]); } } diff --git a/application/src/Site/BlockLayout/Html.php b/application/src/Site/BlockLayout/Html.php index e51b8efec8..7af155b8cd 100644 --- a/application/src/Site/BlockLayout/Html.php +++ b/application/src/Site/BlockLayout/Html.php @@ -42,35 +42,17 @@ public function form(PhpRenderer $view, SiteRepresentation $site, $form = new Form(); $html = new Element\Textarea("o:block[__blockIndex__][o:data][html]"); $html->setAttribute('class', 'block-html full wysiwyg'); - $divClass = new Element\Text("o:block[__blockIndex__][o:data][divclass]"); - $divClass->setOptions([ - 'label' => 'Class', // @translate - 'info' => 'Optional CSS class for styling HTML.', // @translate - ]); if ($block) { $html->setValue($block->dataValue('html')); - $divClass->setValue($block->dataValue('divclass')); } $form->add($html); - $form->add($divClass); return $view->formCollection($form); } public function render(PhpRenderer $view, SitePageBlockRepresentation $block) { - $htmlBlock = $block->dataValue('html', ''); - $divClass = $view->escapeHtml($block->dataValue('divclass')); - if (!empty($divClass)) { - //wrap HTML in div with specified class, if present - $htmlFinal = '
'; - $htmlFinal .= $htmlBlock; - $htmlFinal .= '
'; - } else { - $htmlFinal = $htmlBlock; - } - - return $htmlFinal; + return $block->dataValue('html', ''); } public function getFulltextText(PhpRenderer $view, SitePageBlockRepresentation $block) diff --git a/application/src/Site/BlockLayout/Media.php b/application/src/Site/BlockLayout/Media.php index 83008d506e..9ae1d410dc 100644 --- a/application/src/Site/BlockLayout/Media.php +++ b/application/src/Site/BlockLayout/Media.php @@ -1,7 +1,6 @@

' . $view->translate('Options') . '

'; $html .= '
'; $html .= $view->blockThumbnailTypeSelect($block); - $html .= $this->alignmentClassSelect($view, $block); $html .= $view->blockShowTitleSelect($block); $html .= '
'; return $html; @@ -35,7 +33,6 @@ public function render(PhpRenderer $view, SitePageBlockRepresentation $block) return ''; } - $alignmentClass = $block->dataValue('alignment', 'left'); $thumbnailType = $block->dataValue('thumbnail_type', 'square'); $linkType = $view->siteSetting('attachment_link_type', 'item'); $showTitleOption = $block->dataValue('show_title_option', 'item_title'); @@ -43,26 +40,9 @@ public function render(PhpRenderer $view, SitePageBlockRepresentation $block) return $view->partial('common/block-layout/file', [ 'block' => $block, 'attachments' => $attachments, - 'alignmentClass' => $alignmentClass, 'thumbnailType' => $thumbnailType, 'link' => $linkType, 'showTitleOption' => $showTitleOption, ]); } - - public function alignmentClassSelect(PhpRenderer $view, - SitePageBlockRepresentation $block = null - ) { - $alignmentLabels = ['float left', 'float right', 'center']; - $alignmentValues = ['left', 'right', 'center']; - $alignment = $block ? $block->dataValue('alignment', 'left') : 'left'; - $select = new Select('o:block[__blockIndex__][o:data][alignment]'); - $select->setValueOptions(array_combine($alignmentValues, $alignmentLabels))->setValue($alignment); - $selectLabel = 'Alignment'; // @translate - $select->setAttributes(['title' => $selectLabel, 'aria-label' => $selectLabel]); - $html = '
'; - $html .= '
'; - $html .= '
' . $view->formSelect($select) . '
'; - return $html; - } } diff --git a/application/src/View/Helper/BlockLayout.php b/application/src/View/Helper/BlockLayout.php index a9ffab4e55..8b959eac71 100644 --- a/application/src/View/Helper/BlockLayout.php +++ b/application/src/View/Helper/BlockLayout.php @@ -5,6 +5,8 @@ use Omeka\Api\Representation\SitePageRepresentation; use Omeka\Api\Representation\SitePageBlockRepresentation; use Omeka\Site\BlockLayout\Manager as BlockLayoutManager; +use Laminas\EventManager\Event; +use Laminas\EventManager\EventManager; use Laminas\View\Helper\AbstractHelper; /** @@ -22,9 +24,12 @@ class BlockLayout extends AbstractHelper */ protected $manager; - public function __construct(BlockLayoutManager $manager) + protected $eventManager; + + public function __construct(BlockLayoutManager $manager, EventManager $eventManager) { $this->manager = $manager; + $this->eventManager = $eventManager; } /** @@ -86,11 +91,13 @@ public function form($layout, SiteRepresentation $site = null, ) { $view = $this->getView(); $block = null; + $layoutData = []; if ($layout instanceof SitePageBlockRepresentation) { $block = $layout; $layout = $block->layout(); $page = $block->page(); $site = $page->site(); + $layoutData = $block->layoutData(); } $partialName = $partialName ?: self::PARTIAL_NAME; return $view->partial( @@ -98,6 +105,7 @@ public function form($layout, SiteRepresentation $site = null, [ 'layout' => $layout, 'layoutLabel' => $this->getLayoutLabel($layout), + 'layoutData' => $layoutData, 'blockContent' => $this->manager->get($layout)->form($this->getView(), $site, $page, $block), ] ); @@ -121,6 +129,91 @@ public function prepareRender($layout) */ public function render(SitePageBlockRepresentation $block) { - return $this->manager->get($block->layout())->render($this->getView(), $block); + $view = $this->getView(); + + // Allow modules to add classes for styling the layout. + $eventArgs = $this->eventManager->prepareArgs(['classes' => []]); + $this->eventManager->triggerEvent(new Event('block_layout.classes', $block, $eventArgs)); + $classes = $eventArgs['classes']; + + // Allow modules to add inline styles for styling the layout. + $eventArgs = $this->eventManager->prepareArgs(['inline_styles' => []]); + $this->eventManager->triggerEvent(new Event('block_layout.inline_styles', $block, $eventArgs)); + $inlineStyles = $eventArgs['inline_styles']; + + // Add classes and inline styles, if any. + $class = $block->layoutDataValue('class'); + if (is_string($class) && '' !== trim($class)) { + $classes[] = $class; + } + $alignment = $block->layoutDataValue('alignment'); + switch ($alignment) { + case 'left': + $classes[] = 'block-layout-alignment-left'; + break; + case 'right': + $classes[] = 'block-layout-alignment-right'; + break; + case 'center': + $classes[] = 'block-layout-alignment-center'; + break; + default: + // No alignment + } + $backgroundImageAsset = $block->layoutDataValue('background_image_asset'); + if ($backgroundImageAsset) { + $asset = $view->api()->searchOne('assets', ['id' => $backgroundImageAsset])->getContent(); + if ($asset) { + $inlineStyles[] = sprintf('background-image: url("%s");', $view->escapeCss($asset->assetUrl())); + } + } + $backgroundPositionY = $block->layoutDataValue('background_position_y'); + if ($backgroundPositionY) { + switch ($backgroundPositionY) { + case 'top': + $classes[] = 'block-layout-background-position-y-top'; + break; + case 'center': + $classes[] = 'block-layout-background-position-y-center'; + break; + case 'bottom': + $classes[] = 'block-layout-background-position-y-bottom'; + break; + default: + // No background position Y + } + } + $backgroundPositionX = $block->layoutDataValue('background_position_x'); + if ($backgroundPositionX) { + switch ($backgroundPositionX) { + case 'left': + $classes[] = 'block-layout-background-position-x-left'; + break; + case 'center': + $classes[] = 'block-layout-background-position-x-center'; + break; + case 'right': + $classes[] = 'block-layout-background-position-x-right'; + break; + default: + // No background position X + } + } + + $view = $this->getView(); + $blockLayout = $this->manager->get($block->layout()); + + // Wrap block markup in a div only if the layout declares special + // styling via classes or inline styles. + if ($classes || $inlineStyles) { + return sprintf( + '
%s
', + $view->escapeHtml(implode(' ', $classes)), + $view->escapeHtml(implode(' ', $inlineStyles)), + $blockLayout->render($this->getView(), $block) + ); + } + + return $blockLayout->render($this->getView(), $block); } } diff --git a/application/view/common/asset-block-form.phtml b/application/view/common/asset-block-form.phtml index b423b2e096..554d89b842 100644 --- a/application/view/common/asset-block-form.phtml +++ b/application/view/common/asset-block-form.phtml @@ -23,7 +23,7 @@ $attachmentRowTemplate = '
- id()) : ''; $page = (array_key_exists('page', $attachment)) ? $attachment['page'] : null; @@ -54,18 +54,3 @@ $attachmentRowTemplate = '
- -

-
-
-
-
- -
-
- - -
-
- -
diff --git a/application/view/common/block-layout.phtml b/application/view/common/block-layout.phtml index db3e26e7f2..1392c78f7f 100644 --- a/application/view/common/block-layout.phtml +++ b/application/view/common/block-layout.phtml @@ -1,21 +1,47 @@ plugin('translate'); $escape = $this->plugin('escapeHtml'); + +$layoutGridColumnPositionOptions = ['auto' => $translate('Auto placement')]; +foreach (range(1, 12) as $value) { + $layoutGridColumnPositionOptions[$value] = sprintf($translate('Position %s'), $value); +} +$layoutGridColumnSpanOptions = []; +foreach (range(1, 12) as $value) { + $layoutGridColumnSpanOptions[$value] = sprintf($translate('Span %s'), $value); +} +$layoutGridColumnPosition = $layoutData['grid_column_position'] ?? 'auto'; +$layoutGridColumnSpan = $layoutData['grid_column_span'] ?? '12'; ?> -
+
+ + + +
    +
  • +
  • +
  • +
  • -
  • -
+
diff --git a/application/view/common/block-layout/asset.phtml b/application/view/common/block-layout/asset.phtml index 8340c99e66..4830b40be9 100644 --- a/application/view/common/block-layout/asset.phtml +++ b/application/view/common/block-layout/asset.phtml @@ -1,6 +1,6 @@ plugin('escapeHtml'); ?> -
+
diff --git a/application/view/common/block-layout/file.phtml b/application/view/common/block-layout/file.phtml index 6db7f13a6d..1c709e8088 100644 --- a/application/view/common/block-layout/file.phtml +++ b/application/view/common/block-layout/file.phtml @@ -1,4 +1,4 @@ -
+
attachments as $attachment): ?>
diff --git a/application/view/omeka/site-admin/page/edit.phtml b/application/view/omeka/site-admin/page/edit.phtml index a57e743db5..63cf6bc439 100644 --- a/application/view/omeka/site-admin/page/edit.phtml +++ b/application/view/omeka/site-admin/page/edit.phtml @@ -38,6 +38,36 @@ $form->prepare();
+layout(); +$pageLayoutData = $page->layoutData(); +$pageLayoutOptions = [ + '' => $translate('Normal flow'), + 'grid' => $translate('Grid'), +]; +$pageLayoutGridColumnsOptions = [1 => $translate('1 column')]; +foreach (range(2, 12) as $value) { + $pageLayoutGridColumnsOptions[$value] = sprintf($translate('%s columns'), $value); +} +$pageLayoutGridColumns = $pageLayoutData['grid_columns'] ?? '12'; + +?> +
+ + + + + +
+ blockLayout()->forms($page); ?> form()->closeTag(); ?> @@ -51,6 +81,23 @@ $form->prepare();
+ + + +