/* /static/admin/css/base.css */
/*
    DJANGO Admin styles
*/

/* VARIABLE DEFINITIONS */
html[data-theme="light"],
:root {
    --primary: #79aec8;
    --secondary: #417690;
    --accent: #f5dd5d;
    --primary-fg: #fff;

    --body-fg: #333;
    --body-bg: #fff;
    --body-quiet-color: #666;
    --body-medium-color: #444;
    --body-loud-color: #000;

    --header-color: #ffc;
    --header-branding-color: var(--accent);
    --header-bg: var(--secondary);
    --header-link-color: var(--primary-fg);

    --breadcrumbs-fg: #c4dce8;
    --breadcrumbs-link-fg: var(--body-bg);
    --breadcrumbs-bg: #264b5d;

    --link-fg: #417893;
    --link-hover-color: #036;
    --link-selected-fg: var(--secondary);

    --hairline-color: #e8e8e8;
    --border-color: #ccc;

    --error-fg: #ba2121;

    --message-success-bg: #dfd;
    --message-warning-bg: #ffc;
    --message-error-bg: #ffefef;

    --darkened-bg: #f8f8f8; /* A bit darker than --body-bg */
    --selected-bg: #e4e4e4; /* E.g. selected table cells */
    --selected-row: #ffc;

    --button-fg: #fff;
    --button-bg: var(--secondary);
    --button-hover-bg: #205067;
    --default-button-bg: #205067;
    --default-button-hover-bg: var(--secondary);
    --close-button-bg: #747474;
    --close-button-hover-bg: #333;
    --delete-button-bg: #ba2121;
    --delete-button-hover-bg: #a41515;

    --object-tools-fg: var(--button-fg);
    --object-tools-bg: var(--close-button-bg);
    --object-tools-hover-bg: var(--close-button-hover-bg);

    --font-family-primary:
        "Segoe UI",
        system-ui,
        Roboto,
        "Helvetica Neue",
        Arial,
        sans-serif,
        "Apple Color Emoji",
        "Segoe UI Emoji",
        "Segoe UI Symbol",
        "Noto Color Emoji";
    --font-family-monospace:
        ui-monospace,
        Menlo,
        Monaco,
        "Cascadia Mono",
        "Segoe UI Mono",
        "Roboto Mono",
        "Oxygen Mono",
        "Ubuntu Monospace",
        "Source Code Pro",
        "Fira Mono",
        "Droid Sans Mono",
        "Courier New",
        monospace,
        "Apple Color Emoji",
        "Segoe UI Emoji",
        "Segoe UI Symbol",
        "Noto Color Emoji";

    color-scheme: light;
}

html, body {
    height: 100%;
}

body {
    margin: 0;
    padding: 0;
    font-size: 0.875rem;
    font-family: var(--font-family-primary);
    color: var(--body-fg);
    background: var(--body-bg);
}

/* LINKS */

a:link, a:visited {
    color: var(--link-fg);
    text-decoration: none;
    transition: color 0.15s, background 0.15s;
}

a:focus, a:hover {
    color: var(--link-hover-color);
}

a:focus {
    text-decoration: underline;
}

a img {
    border: none;
}

a.section:link, a.section:visited {
    color: var(--header-link-color);
    text-decoration: none;
}

a.section:focus, a.section:hover {
    text-decoration: underline;
}

/* GLOBAL DEFAULTS */

p, ol, ul, dl {
    margin: .2em 0 .8em 0;
}

p {
    padding: 0;
    line-height: 140%;
}

h1,h2,h3,h4,h5 {
    font-weight: bold;
}

h1 {
    margin: 0 0 20px;
    font-weight: 300;
    font-size: 1.25rem;
}

h2 {
    font-size: 1rem;
    margin: 1em 0 .5em 0;
}

h2.subhead {
    font-weight: normal;
    margin-top: 0;
}

h3 {
    font-size: 0.875rem;
    margin: .8em 0 .3em 0;
    color: var(--body-medium-color);
    font-weight: bold;
}

h4 {
    font-size: 0.75rem;
    margin: 1em 0 .8em 0;
    padding-bottom: 3px;
    color: var(--body-medium-color);
}

h5 {
    font-size: 0.625rem;
    margin: 1.5em 0 .5em 0;
    color: var(--body-quiet-color);
    text-transform: uppercase;
    letter-spacing: 1px;
}

ul > li {
    list-style-type: square;
    padding: 1px 0;
}

li ul {
    margin-bottom: 0;
}

li, dt, dd {
    font-size: 0.8125rem;
    line-height: 1.25rem;
}

dt {
    font-weight: bold;
    margin-top: 4px;
}

dd {
    margin-left: 0;
}

form {
    margin: 0;
    padding: 0;
}

fieldset {
    margin: 0;
    min-width: 0;
    padding: 0;
    border: none;
    border-top: 1px solid var(--hairline-color);
}

details summary {
    cursor: pointer;
}

blockquote {
    font-size: 0.6875rem;
    color: #777;
    margin-left: 2px;
    padding-left: 10px;
    border-left: 5px solid #ddd;
}

code, pre {
    font-family: var(--font-family-monospace);
    color: var(--body-quiet-color);
    font-size: 0.75rem;
    overflow-x: auto;
}

pre.literal-block {
    margin: 10px;
    background: var(--darkened-bg);
    padding: 6px 8px;
}

code strong {
    color: #930;
}

hr {
    clear: both;
    color: var(--hairline-color);
    background-color: var(--hairline-color);
    height: 1px;
    border: none;
    margin: 0;
    padding: 0;
    line-height: 1px;
}

/* TEXT STYLES & MODIFIERS */

.small {
    font-size: 0.6875rem;
}

.mini {
    font-size: 0.625rem;
}

.help, p.help, form p.help, div.help, form div.help, div.help li {
    font-size: 0.6875rem;
    color: var(--body-quiet-color);
}

div.help ul {
     margin-bottom: 0;
}

.help-tooltip {
    cursor: help;
}

p img, h1 img, h2 img, h3 img, h4 img, td img {
    vertical-align: middle;
}

.quiet, a.quiet:link, a.quiet:visited {
    color: var(--body-quiet-color);
    font-weight: normal;
}

.clear {
    clear: both;
}

.nowrap {
    white-space: nowrap;
}

.hidden {
    display: none !important;
}

/* TABLES */

table {
    border-collapse: collapse;
    border-color: var(--border-color);
}

td, th {
    font-size: 0.8125rem;
    line-height: 1rem;
    border-bottom: 1px solid var(--hairline-color);
    vertical-align: top;
    padding: 8px;
}

th {
    font-weight: 500;
    text-align: left;
}

thead th,
tfoot td {
    color: var(--body-quiet-color);
    padding: 5px 10px;
    font-size: 0.6875rem;
    background: var(--body-bg);
    border: none;
    border-top: 1px solid var(--hairline-color);
    border-bottom: 1px solid var(--hairline-color);
}

tfoot td {
    border-bottom: none;
    border-top: 1px solid var(--hairline-color);
}

thead th.required {
    font-weight: bold;
}

tr.alt {
    background: var(--darkened-bg);
}

tr:nth-child(odd), .row-form-errors {
    background: var(--body-bg);
}

tr:nth-child(even),
tr:nth-child(even) .errorlist,
tr:nth-child(odd) + .row-form-errors,
tr:nth-child(odd) + .row-form-errors .errorlist {
    background: var(--darkened-bg);
}

/* SORTABLE TABLES */

thead th {
    padding: 5px 10px;
    line-height: normal;
    text-transform: uppercase;
    background: var(--darkened-bg);
}

thead th a:link, thead th a:visited {
    color: var(--body-quiet-color);
}

thead th.sorted {
    background: var(--selected-bg);
}

thead th.sorted .text {
    padding-right: 42px;
}

table thead th .text span {
    padding: 8px 10px;
    display: block;
}

table thead th .text a {
    display: block;
    cursor: pointer;
    padding: 8px 10px;
}

table thead th .text a:focus, table thead th .text a:hover {
    background: var(--selected-bg);
}

thead th.sorted a.sortremove {
    visibility: hidden;
}

table thead th.sorted:hover a.sortremove {
    visibility: visible;
}

table thead th.sorted .sortoptions {
    display: block;
    padding: 9px 5px 0 5px;
    float: right;
    text-align: right;
}

table thead th.sorted .sortpriority {
    font-size: .8em;
    min-width: 12px;
    text-align: center;
    vertical-align: 3px;
    margin-left: 2px;
    margin-right: 2px;
}

table thead th.sorted .sortoptions a {
    position: relative;
    width: 14px;
    height: 14px;
    display: inline-block;
    background: url(/static/admin/img/sorting-icons.svg) 0 0 no-repeat;
    background-size: 14px auto;
}

table thead th.sorted .sortoptions a.sortremove {
    background-position: 0 0;
}

table thead th.sorted .sortoptions a.sortremove:after {
    content: '\\';
    position: absolute;
    top: -6px;
    left: 3px;
    font-weight: 200;
    font-size: 1.125rem;
    color: var(--body-quiet-color);
}

table thead th.sorted .sortoptions a.sortremove:focus:after,
table thead th.sorted .sortoptions a.sortremove:hover:after {
    color: var(--link-fg);
}

table thead th.sorted .sortoptions a.sortremove:focus,
table thead th.sorted .sortoptions a.sortremove:hover {
    background-position: 0 -14px;
}

table thead th.sorted .sortoptions a.ascending {
    background-position: 0 -28px;
}

table thead th.sorted .sortoptions a.ascending:focus,
table thead th.sorted .sortoptions a.ascending:hover {
    background-position: 0 -42px;
}

table thead th.sorted .sortoptions a.descending {
    top: 1px;
    background-position: 0 -56px;
}

table thead th.sorted .sortoptions a.descending:focus,
table thead th.sorted .sortoptions a.descending:hover {
    background-position: 0 -70px;
}

/* FORM DEFAULTS */

input, textarea, select, .form-row p, form .button {
    margin: 2px 0;
    padding: 2px 3px;
    vertical-align: middle;
    font-family: var(--font-family-primary);
    font-weight: normal;
    font-size: 0.8125rem;
}
.form-row div.help {
    padding: 2px 3px;
}

textarea {
    vertical-align: top;
}

/*
Minifiers remove the default (text) "type" attribute from "input" HTML tags.
Add input:not([type]) to make the CSS stylesheet work the same.
*/
input:not([type]), input[type=text], input[type=password], input[type=email],
input[type=url], input[type=number], input[type=tel], textarea, select,
.vTextField {
    border: 1px solid var(--border-color);
    border-radius: 4px;
    padding: 5px 6px;
    margin-top: 0;
    color: var(--body-fg);
    background-color: var(--body-bg);
}

/*
Minifiers remove the default (text) "type" attribute from "input" HTML tags.
Add input:not([type]) to make the CSS stylesheet work the same.
*/
input:not([type]):focus, input[type=text]:focus, input[type=password]:focus,
input[type=email]:focus, input[type=url]:focus, input[type=number]:focus,
input[type=tel]:focus, textarea:focus, select:focus, .vTextField:focus {
    border-color: var(--body-quiet-color);
}

select {
    height: 1.875rem;
}

select[multiple] {
    /* Allow HTML size attribute to override the height in the rule above. */
    height: auto;
    min-height: 150px;
}

/* FORM BUTTONS */

.button, input[type=submit], input[type=button], .submit-row input, a.button {
    background: var(--button-bg);
    padding: 10px 15px;
    border: none;
    border-radius: 4px;
    color: var(--button-fg);
    cursor: pointer;
    transition: background 0.15s;
}

a.button {
    padding: 4px 5px;
}

.button:active, input[type=submit]:active, input[type=button]:active,
.button:focus, input[type=submit]:focus, input[type=button]:focus,
.button:hover, input[type=submit]:hover, input[type=button]:hover {
    background: var(--button-hover-bg);
}

.button[disabled], input[type=submit][disabled], input[type=button][disabled] {
    opacity: 0.4;
}

.button.default, input[type=submit].default, .submit-row input.default {
    border: none;
    font-weight: 400;
    background: var(--default-button-bg);
}

.button.default:active, input[type=submit].default:active,
.button.default:focus, input[type=submit].default:focus,
.button.default:hover, input[type=submit].default:hover {
    background: var(--default-button-hover-bg);
}

.button[disabled].default,
input[type=submit][disabled].default,
input[type=button][disabled].default {
    opacity: 0.4;
}


/* MODULES */

.module {
    border: none;
    margin-bottom: 30px;
    background: var(--body-bg);
}

.module p, .module ul, .module h3, .module h4, .module dl, .module pre {
    padding-left: 10px;
    padding-right: 10px;
}

.module blockquote {
    margin-left: 12px;
}

.module ul, .module ol {
    margin-left: 1.5em;
}

.module h3 {
    margin-top: .6em;
}

.module h2, .module caption, .inline-group h2 {
    margin: 0;
    padding: 8px;
    font-weight: 400;
    font-size: 0.8125rem;
    text-align: left;
    background: var(--header-bg);
    color: var(--header-link-color);
}

.module caption,
.inline-group h2 {
    font-size: 0.75rem;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

.module table {
    border-collapse: collapse;
}

/* MESSAGES & ERRORS */

ul.messagelist {
    padding: 0;
    margin: 0;
}

ul.messagelist li {
    display: block;
    font-weight: 400;
    font-size: 0.8125rem;
    padding: 10px 10px 10px 65px;
    margin: 0 0 10px 0;
    background: var(--message-success-bg) url(/static/admin/img/icon-yes.svg) 40px 12px no-repeat;
    background-size: 16px auto;
    color: var(--body-fg);
    word-break: break-word;
}

ul.messagelist li.warning {
    background: var(--message-warning-bg) url(/static/admin/img/icon-alert.svg) 40px 14px no-repeat;
    background-size: 14px auto;
}

ul.messagelist li.error {
    background: var(--message-error-bg) url(/static/admin/img/icon-no.svg) 40px 12px no-repeat;
    background-size: 16px auto;
}

.errornote {
    font-size: 0.875rem;
    font-weight: 700;
    display: block;
    padding: 10px 12px;
    margin: 0 0 10px 0;
    color: var(--error-fg);
    border: 1px solid var(--error-fg);
    border-radius: 4px;
    background-color: var(--body-bg);
    background-position: 5px 12px;
    overflow-wrap: break-word;
}

ul.errorlist {
    margin: 0 0 4px;
    padding: 0;
    color: var(--error-fg);
    background: var(--body-bg);
}

ul.errorlist li {
    font-size: 0.8125rem;
    display: block;
    margin-bottom: 4px;
    overflow-wrap: break-word;
}

ul.errorlist li:first-child {
    margin-top: 0;
}

ul.errorlist li a {
    color: inherit;
    text-decoration: underline;
}

td ul.errorlist {
    margin: 0;
    padding: 0;
}

td ul.errorlist li {
    margin: 0;
}

.form-row.errors {
    margin: 0;
    border: none;
    border-bottom: 1px solid var(--hairline-color);
    background: none;
}

.form-row.errors ul.errorlist li {
    padding-left: 0;
}

.errors input, .errors select, .errors textarea,
td ul.errorlist + input, td ul.errorlist + select, td ul.errorlist + textarea {
    border: 1px solid var(--error-fg);
}

.description {
    font-size: 0.75rem;
    padding: 5px 0 0 12px;
}

/* BREADCRUMBS */

div.breadcrumbs {
    background: var(--breadcrumbs-bg);
    padding: 10px 40px;
    border: none;
    color: var(--breadcrumbs-fg);
    text-align: left;
}

div.breadcrumbs a {
    color: var(--breadcrumbs-link-fg);
}

div.breadcrumbs a:focus, div.breadcrumbs a:hover {
    color: var(--breadcrumbs-fg);
}

/* ACTION ICONS */

.viewlink, .inlineviewlink {
    padding-left: 16px;
    background: url(/static/admin/img/icon-viewlink.svg) 0 1px no-repeat;
}

.hidelink {
    padding-left: 16px;
    background: url(/static/admin/img/icon-hidelink.svg) 0 1px no-repeat;
}

.addlink {
    padding-left: 16px;
    background: url(/static/admin/img/icon-addlink.svg) 0 1px no-repeat;
}

.changelink, .inlinechangelink {
    padding-left: 16px;
    background: url(/static/admin/img/icon-changelink.svg) 0 1px no-repeat;
}

.deletelink {
    padding-left: 16px;
    background: url(/static/admin/img/icon-deletelink.svg) 0 1px no-repeat;
}

a.deletelink:link, a.deletelink:visited {
    color: #CC3434; /* XXX Probably unused? */
}

a.deletelink:focus, a.deletelink:hover {
    color: #993333; /* XXX Probably unused? */
    text-decoration: none;
}

/* OBJECT TOOLS */

.object-tools {
    font-size: 0.625rem;
    font-weight: bold;
    padding-left: 0;
    float: right;
    position: relative;
    margin-top: -48px;
}

.object-tools li {
    display: block;
    float: left;
    margin-left: 5px;
    height: 1rem;
}

.object-tools a {
    border-radius: 15px;
}

.object-tools a:link, .object-tools a:visited {
    display: block;
    float: left;
    padding: 3px 12px;
    background: var(--object-tools-bg);
    color: var(--object-tools-fg);
    font-weight: 400;
    font-size: 0.6875rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.object-tools a:focus, .object-tools a:hover {
    background-color: var(--object-tools-hover-bg);
}

.object-tools a:focus{
    text-decoration: none;
}

.object-tools a.viewsitelink, .object-tools a.addlink {
    background-repeat: no-repeat;
    background-position: right 7px center;
    padding-right: 26px;
}

.object-tools a.viewsitelink {
    background-image: url(/static/admin/img/tooltag-arrowright.svg);
}

.object-tools a.addlink {
    background-image: url(/static/admin/img/tooltag-add.svg);
}

/* OBJECT HISTORY */

#change-history table {
    width: 100%;
}

#change-history table tbody th {
    width: 16em;
}

#change-history .paginator {
    color: var(--body-quiet-color);
    border-bottom: 1px solid var(--hairline-color);
    background: var(--body-bg);
    overflow: hidden;
}

/* PAGE STRUCTURE */

#container {
    position: relative;
    width: 100%;
    min-width: 980px;
    padding: 0;
    display: flex;
    flex-direction: column;
    height: 100%;
}

#container > .main {
    display: flex;
    flex: 1 0 auto;
}

.main > .content {
    flex:  1 0;
    max-width: 100%;
}

.skip-to-content-link {
    position: absolute;
    top: -999px;
    margin: 5px;
    padding: 5px;
    background: var(--body-bg);
    z-index: 1;
}

.skip-to-content-link:focus {
    left: 0px;
    top: 0px;
}

#content {
    padding: 20px 40px;
}

.dashboard #content {
    width: 600px;
}

#content-main {
    float: left;
    width: 100%;
}

#content-related {
    float: right;
    width: 260px;
    position: relative;
    margin-right: -300px;
}

@media (forced-colors: active) {
  #content-related {
      border: 1px solid;
  }
}

/* COLUMN TYPES */

.colMS {
    margin-right: 300px;
}

.colSM {
    margin-left: 300px;
}

.colSM #content-related {
    float: left;
    margin-right: 0;
    margin-left: -300px;
}

.colSM #content-main {
    float: right;
}

.popup .colM {
    width: auto;
}

/* HEADER */

#header {
    width: auto;
    height: auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 40px;
    background: var(--header-bg);
    color: var(--header-color);
}

#header a:link, #header a:visited, #logout-form button {
    color: var(--header-link-color);
}

#header a:focus , #header a:hover {
    text-decoration: underline;
}

@media (forced-colors: active) {
  #header {
      border-bottom: 1px solid;
  }
}

#branding {
    display: flex;
}

#site-name {
    padding: 0;
    margin: 0;
    margin-inline-end: 20px;
    font-weight: 300;
    font-size: 1.5rem;
    color: var(--header-branding-color);
}

#site-name a:link, #site-name a:visited {
    color: var(--accent);
}

#branding h2 {
    padding: 0 10px;
    font-size: 0.875rem;
    margin: -8px 0 8px 0;
    font-weight: normal;
    color: var(--header-color);
}

#branding a:hover {
    text-decoration: none;
}

#logout-form {
    display: inline;
}

#logout-form button {
    background: none;
    border: 0;
    cursor: pointer;
    font-family: var(--font-family-primary);
}

#user-tools {
    float: right;
    margin: 0 0 0 20px;
    text-align: right;
}

#user-tools, #logout-form button{
    padding: 0;
    font-weight: 300;
    font-size: 0.6875rem;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

#user-tools a, #logout-form button {
    border-bottom: 1px solid rgba(255, 255, 255, 0.25);
}

#user-tools a:focus, #user-tools a:hover,
#logout-form button:active, #logout-form button:hover {
    text-decoration: none;
    border-bottom: 0;
}

#logout-form button:active, #logout-form button:hover {
    margin-bottom: 1px;
}

/* SIDEBAR */

#content-related {
    background: var(--darkened-bg);
}

#content-related .module {
    background: none;
}

#content-related h3 {
    color: var(--body-quiet-color);
    padding: 0 16px;
    margin: 0 0 16px;
}

#content-related h4 {
    font-size: 0.8125rem;
}

#content-related p {
    padding-left: 16px;
    padding-right: 16px;
}

#content-related .actionlist {
    padding: 0;
    margin: 16px;
}

#content-related .actionlist li {
    line-height: 1.2;
    margin-bottom: 10px;
    padding-left: 18px;
}

#content-related .module h2 {
    background: none;
    padding: 16px;
    margin-bottom: 16px;
    border-bottom: 1px solid var(--hairline-color);
    font-size: 1.125rem;
    color: var(--body-fg);
}

.delete-confirmation form input[type="submit"] {
    background: var(--delete-button-bg);
    border-radius: 4px;
    padding: 10px 15px;
    color: var(--button-fg);
}

.delete-confirmation form input[type="submit"]:active,
.delete-confirmation form input[type="submit"]:focus,
.delete-confirmation form input[type="submit"]:hover {
    background: var(--delete-button-hover-bg);
}

.delete-confirmation form .cancel-link {
    display: inline-block;
    vertical-align: middle;
    height: 0.9375rem;
    line-height: 0.9375rem;
    border-radius: 4px;
    padding: 10px 15px;
    color: var(--button-fg);
    background: var(--close-button-bg);
    margin: 0 0 0 10px;
}

.delete-confirmation form .cancel-link:active,
.delete-confirmation form .cancel-link:focus,
.delete-confirmation form .cancel-link:hover {
    background: var(--close-button-hover-bg);
}

/* POPUP */
.popup #content {
    padding: 20px;
}

.popup #container {
    min-width: 0;
}

.popup #header {
    padding: 10px 20px;
}

/* PAGINATOR */

.paginator {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 0.8125rem;
    padding-top: 10px;
    padding-bottom: 10px;
    line-height: 22px;
    margin: 0;
    border-top: 1px solid var(--hairline-color);
    width: 100%;
    box-sizing: border-box;
}

.paginator a:link, .paginator a:visited {
    padding: 2px 6px;
    background: var(--button-bg);
    text-decoration: none;
    color: var(--button-fg);
}

.paginator a.showall {
    border: none;
    background: none;
    color: var(--link-fg);
}

.paginator a.showall:focus, .paginator a.showall:hover {
    background: none;
    color: var(--link-hover-color);
}

.paginator .end {
    margin-right: 6px;
}

.paginator .this-page {
    padding: 2px 6px;
    font-weight: bold;
    font-size: 0.8125rem;
    vertical-align: top;
}

.paginator a:focus, .paginator a:hover {
    color: white;
    background: var(--link-hover-color);
}

.paginator input {
    margin-left: auto;
}

.base-svgs {
    display: none;
}

.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0,0,0,0);
    white-space: nowrap;
    border: 0;
    color: var(--body-fg);
    background-color: var(--body-bg);
}

/* /static/admin/css/dark_mode.css */
@media (prefers-color-scheme: dark) {
    :root {
      --primary: #264b5d;
      --primary-fg: #f7f7f7;
  
      --body-fg: #eeeeee;
      --body-bg: #121212;
      --body-quiet-color: #d0d0d0;
      --body-medium-color: #e0e0e0;
      --body-loud-color: #ffffff;
  
      --breadcrumbs-link-fg: #e0e0e0;
      --breadcrumbs-bg: var(--primary);
  
      --link-fg: #81d4fa;
      --link-hover-color: #4ac1f7;
      --link-selected-fg: #6f94c6;
  
      --hairline-color: #272727;
      --border-color: #353535;
  
      --error-fg: #e35f5f;
      --message-success-bg: #006b1b;
      --message-warning-bg: #583305;
      --message-error-bg: #570808;
  
      --darkened-bg: #212121;
      --selected-bg: #1b1b1b;
      --selected-row: #00363a;
  
      --close-button-bg: #333333;
      --close-button-hover-bg: #666666;

      color-scheme: dark;
    }
  }


html[data-theme="dark"] {
    --primary: #264b5d;
    --primary-fg: #f7f7f7;

    --body-fg: #eeeeee;
    --body-bg: #121212;
    --body-quiet-color: #d0d0d0;
    --body-medium-color: #e0e0e0;
    --body-loud-color: #ffffff;

    --breadcrumbs-link-fg: #e0e0e0;
    --breadcrumbs-bg: var(--primary);

    --link-fg: #81d4fa;
    --link-hover-color: #4ac1f7;
    --link-selected-fg: #6f94c6;

    --hairline-color: #272727;
    --border-color: #353535;

    --error-fg: #e35f5f;
    --message-success-bg: #006b1b;
    --message-warning-bg: #583305;
    --message-error-bg: #570808;

    --darkened-bg: #212121;
    --selected-bg: #1b1b1b;
    --selected-row: #00363a;

    --close-button-bg: #333333;
    --close-button-hover-bg: #666666;

    color-scheme: dark;
}

/* THEME SWITCH */
.theme-toggle {
    cursor: pointer;
    border: none;
    padding: 0;
    background: transparent;
    vertical-align: middle;
    margin-inline-start: 5px;
    margin-top: -1px;
}

.theme-toggle svg {
    vertical-align: middle;
    height: 1.5rem;
    width: 1.5rem;
    display: none;
}

/*
Fully hide screen reader text so we only show the one matching the current
theme.
*/
.theme-toggle .visually-hidden {
    display: none;
}

html[data-theme="auto"] .theme-toggle .theme-label-when-auto {
    display: block;
}

html[data-theme="dark"] .theme-toggle .theme-label-when-dark {
    display: block;
}

html[data-theme="light"] .theme-toggle .theme-label-when-light {
    display: block;
}

/* ICONS */
.theme-toggle svg.theme-icon-when-auto,
.theme-toggle svg.theme-icon-when-dark,
.theme-toggle svg.theme-icon-when-light {
    fill: var(--header-link-color);
    color: var(--header-bg);
}

html[data-theme="auto"] .theme-toggle svg.theme-icon-when-auto {
    display: block;
}

html[data-theme="dark"] .theme-toggle svg.theme-icon-when-dark {
    display: block;
}

html[data-theme="light"] .theme-toggle svg.theme-icon-when-light {
    display: block;
}

/* /static/admin/css/nav_sidebar.css */
.sticky {
    position: sticky;
    top: 0;
    max-height: 100vh;
}

.toggle-nav-sidebar {
    z-index: 20;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 23px;
    width: 23px;
    border: 0;
    border-right: 1px solid var(--hairline-color);
    background-color: var(--body-bg);
    cursor: pointer;
    font-size: 1.25rem;
    color: var(--link-fg);
    padding: 0;
}

[dir="rtl"] .toggle-nav-sidebar {
    border-left: 1px solid var(--hairline-color);
    border-right: 0;
}

.toggle-nav-sidebar:hover,
.toggle-nav-sidebar:focus {
    background-color: var(--darkened-bg);
}

#nav-sidebar {
    z-index: 15;
    flex: 0 0 275px;
    left: -276px;
    margin-left: -276px;
    border-top: 1px solid transparent;
    border-right: 1px solid var(--hairline-color);
    background-color: var(--body-bg);
    overflow: auto;
}

[dir="rtl"] #nav-sidebar {
    border-left: 1px solid var(--hairline-color);
    border-right: 0;
    left: 0;
    margin-left: 0;
    right: -276px;
    margin-right: -276px;
}

.toggle-nav-sidebar::before {
    content: '\00BB';
}

.main.shifted .toggle-nav-sidebar::before {
    content: '\00AB';
}

.main > #nav-sidebar {
    visibility: hidden;
}

.main.shifted > #nav-sidebar {
    margin-left: 0;
    visibility: visible;
}

[dir="rtl"] .main.shifted > #nav-sidebar {
    margin-right: 0;
}

#nav-sidebar .module th {
    width: 100%;
    overflow-wrap: anywhere;
}

#nav-sidebar .module th,
#nav-sidebar .module caption {
    padding-left: 16px;
}

#nav-sidebar .module td {
    white-space: nowrap;
}

[dir="rtl"] #nav-sidebar .module th,
[dir="rtl"] #nav-sidebar .module caption {
    padding-left: 8px;
    padding-right: 16px;
}

#nav-sidebar .current-app .section:link,
#nav-sidebar .current-app .section:visited {
    color: var(--header-color);
    font-weight: bold;
}

#nav-sidebar .current-model {
    background: var(--selected-row);
}

@media (forced-colors: active) {
    #nav-sidebar .current-model {
        background-color: SelectedItem;
    }
}

.main > #nav-sidebar + .content {
    max-width: calc(100% - 23px);
}

.main.shifted > #nav-sidebar + .content {
    max-width: calc(100% - 299px);
}

@media (max-width: 767px) {
    #nav-sidebar, #toggle-nav-sidebar {
        display: none;
    }

    .main > #nav-sidebar + .content,
    .main.shifted > #nav-sidebar + .content {
        max-width: 100%;
    }
}

#nav-filter {
    width: 100%;
    box-sizing: border-box;
    padding: 2px 5px;
    margin: 5px 0;
    border: 1px solid var(--border-color);
    background-color: var(--darkened-bg);
    color: var(--body-fg);
}

#nav-filter:focus {
    border-color: var(--body-quiet-color);
}

#nav-filter.no-results {
    background: var(--message-error-bg);
}

#nav-sidebar table {
    width: 100%;
}

/* inline <style> */

        :root .admin-interface {
            --admin-interface-title-color: #F5DD5D;
            --admin-interface-logo-color: #FFFFFF;
            --admin-interface-logo-default-background-image: url("data:image/svg+xml;utf8,<?xml version='1.0' encoding='utf-8'?><svg width='104px' height='36px' viewBox='0 0 104 36' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:sketch='http://www.bohemiancoding.com/sketch/ns'><g id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' sketch:type='MSPage'><g id='logo-django' sketch:type='MSArtboardGroup' transform='translate(-8.000000, -5.000000)' fill='%23FFFFFF'><path d='M20.2602817,5 L25.9509859,5 L25.9509859,31.0824248 C23.0360563,31.6338042 20.8901408,31.8507285 18.5684507,31.8507285 C11.6180282,31.8434735 8,28.7383366 8,22.7747325 C8,17.0287781 11.8377465,13.2997118 17.7847887,13.2997118 C18.7076056,13.2997118 19.4107042,13.3722617 20.2602817,13.5899115 L20.2602817,5 L20.2602817,5 Z M20.2602817,18.1242821 C19.5938028,17.9066323 19.044507,17.8340823 18.3414085,17.8340823 C15.4630986,17.8340823 13.8005634,19.5897906 13.8005634,22.6666331 C13.8005634,25.6622196 15.3898592,27.316358 18.3047887,27.316358 C18.9346479,27.316358 19.4473239,27.2808085 20.2602817,27.1719836 L20.2602817,18.1242821 L20.2602817,18.1242821 Z M34.9960563,13.6987364 L34.9960563,26.7577235 C34.9960563,31.2550936 34.6591549,33.417807 33.6704225,35.2823401 C32.7476056,37.0750489 31.531831,38.2053768 29.0197183,39.453961 L23.7391549,36.9654985 C26.2512676,35.7981701 27.4670423,34.7665101 28.2433803,33.1921767 C29.056338,31.5822938 29.3126761,29.7177606 29.3126761,24.8133855 L29.3126761,13.6987364 L34.9960563,13.6987364 Z M29.3126761,5.02901997 L35.0033803,5.02901997 L35.0033803,10.8112493 L29.3126761,10.8112493 L29.3126761,5.02901997 Z M38.4302535,14.9828702 C40.9430986,13.8148163 43.3453521,13.2997118 45.9673239,13.2997118 C48.8895775,13.2997118 50.8077183,14.0687411 51.6580282,15.5705246 C52.1340845,16.4121037 52.2878873,17.5076077 52.2878873,19.8509704 L52.2878873,31.2993491 C49.7398873,31.6620987 46.5239437,31.922553 44.1649014,31.922553 C39.3970141,31.922553 37.2584225,30.2756696 37.2584225,26.6198787 C37.2584225,22.6659076 40.1008451,20.8376494 47.079831,20.2565245 L47.079831,19.0159207 C47.079831,17.9929667 46.559831,17.6229621 45.124338,17.6229621 C43.0223662,17.6229621 40.6567324,18.2106165 38.4375775,19.3423954 L38.4302535,14.9828702 Z M47.336169,23.9420608 C43.571662,24.3048105 42.3485634,24.8931904 42.3485634,26.3579734 C42.3485634,27.4549284 43.051662,27.9693073 44.604338,27.9693073 C45.4539155,27.9693073 46.2302535,27.8967574 47.3354366,27.7153826 L47.3354366,23.9420608 L47.336169,23.9420608 Z M55.056338,14.5765906 C58.4180282,13.6987364 61.1857465,13.2997118 63.9908169,13.2997118 C66.9057465,13.2997118 69.0157746,13.9599162 70.2674366,15.2367949 C71.4458592,16.4411237 71.8208451,17.7615324 71.8208451,20.5764696 L71.8208451,31.6258237 L66.1294085,31.6258237 L66.1294085,20.8013744 C66.1294085,18.6393866 65.3896901,17.8340823 63.3616901,17.8340823 C62.5846197,17.8340823 61.8822535,17.9066323 60.7397183,18.2403619 L60.7397183,31.6265492 L55.056338,31.6265492 L55.056338,14.5765906 Z M74.0326761,34.7012152 C76.0240563,35.7241692 78.0169014,36.1964692 80.1261972,36.1964692 C83.8540845,36.1964692 85.4433803,34.6946857 85.4433803,31.1107193 L85.4433803,31.0018944 C84.3374648,31.5460188 83.223493,31.7716491 81.7513803,31.7716491 C76.764507,31.7716491 73.5932394,28.5141573 73.5932394,23.3558574 C73.5932394,16.9496987 78.2878873,13.3294573 86.5932394,13.3294573 C89.0321127,13.3294573 91.2878873,13.583382 94.0189859,14.1347615 L92.0708169,18.1975575 C90.5562254,17.9073578 91.9463099,18.1540275 90.804507,18.0452026 L90.804507,18.6328571 L90.8777465,21.0124947 L90.9136338,24.0886117 C90.9509859,24.8583664 90.9509859,25.6259447 90.988338,26.3956994 L90.988338,27.9330324 C90.988338,32.7648576 90.5774648,35.0291409 89.3616901,36.900929 C87.5892958,39.6425908 84.5212958,41 80.1620845,41 C77.943662,41 76.0240563,40.6727998 74.0326761,39.9030451 L74.0326761,34.7012152 L74.0326761,34.7012152 Z M85.3335211,17.8703573 L85.1504225,17.8703573 L84.7395493,17.8703573 C83.6336338,17.8340823 82.3380282,18.1242821 81.4510986,18.6756615 C80.0895775,19.4446908 79.3872113,20.8376494 79.3872113,22.8110074 C79.3872113,25.6252192 80.7934085,27.2365531 83.3055211,27.2365531 C84.0811268,27.2365531 84.7117183,27.0921787 85.4441127,26.8738034 L85.4441127,26.4667983 L85.4441127,24.9294653 C85.4441127,24.269261 85.4067606,23.5365067 85.4067606,22.7674775 L85.3708732,20.17019 L85.3335211,18.3056569 L85.3335211,17.8703573 Z M102.84507,13.2271619 C108.528451,13.2271619 112,16.7748534 112,22.5208077 C112,28.4118619 108.382704,32.1039278 102.617296,32.1039278 C96.9265915,32.1039278 93.4176901,28.5569618 93.4176901,22.8480079 C93.4272113,16.9199532 97.044507,13.2271619 102.84507,13.2271619 Z M102.727887,27.5623023 C104.910423,27.5623023 106.199437,25.7710445 106.199437,22.6586526 C106.199437,19.5825356 104.94631,17.7542774 102.765239,17.7542774 C100.509465,17.7542774 99.2189859,19.5462607 99.2189859,22.6586526 C99.2189859,25.7710445 100.516056,27.5623023 102.727887,27.5623023 L102.727887,27.5623023 Z M102.727887,27.5623023' id='Shape' sketch:type='MSShapeGroup'></path></g></g></svg>");
            --admin-interface-env-color: #E74C3C;
            --admin-interface-header-background-color: #334FB4;
            --admin-interface-header-text-color: #FFFFFF;
            --admin-interface-header-link-color: #FFFFFF;
            --admin-interface-header-link-hover-color: #C5D0F0;
            --admin-interface-module-background-color: #3E5BC0;
            --admin-interface-module-background-selected-color: #E0E6F8;
            --admin-interface-module-text-color: #FFFFFF;
            --admin-interface-module-link-color: #FFFFFF;
            --admin-interface-module-link-selected-color: #C5D0F0;
            --admin-interface-module-link-hover-color: #C5D0F0;
            --admin-interface-generic-link-color: #334FB4;
            --admin-interface-generic-link-hover-color: #2A3D8F;
            --admin-interface-generic-link-active-color: #1E2E6E;
            --admin-interface-save-button-background-color: #334FB4;
            --admin-interface-save-button-background-hover-color: #2A3D8F;
            --admin-interface-save-button-text-color: #FFFFFF;
            --admin-interface-delete-button-background-color: #BA2121;
            --admin-interface-delete-button-background-hover-color: #A41515;
            --admin-interface-delete-button-text-color: #FFFFFF;
            --admin-interface-related-modal-background-color: #000000;
            --admin-interface-related-modal-background-opacity: 0.3;

        
            --admin-interface-main-border-top: 10px solid var(--admin-interface-module-background-color);
        

        
            --admin-interface-logo-max-width: min(200px, 100%);
        

        
            --admin-interface-logo-max-height: 30px;
        

        
            --admin-interface-related-modal-border-radius: 4px;
        

        
            --admin-interface-module-border-radius: 4px;
            --admin-interface-jsoneditor-border-radius: var(--admin-interface-module-border-radius);
            --admin-interface-jsoneditor-overflow: hidden;
        

        
            --admin-interface-related-modal-close-button-display: unset;
        
        }
    
/* /static/admin_interface/css/admin-interface.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
@media (prefers-color-scheme: dark) {
    :root .admin-interface {
        --primary: #79aec8;
        --secondary: #417690;
        --accent: #f5dd5d;
        --primary-fg: #fff;
        --body-fg: #333;
        --body-bg: #fff;
        --body-medium-color: #444;
        --body-quiet-color: #666;
        --body-loud-color: #000;
        --header-color: #ffc;
        --header-branding-color: var(--accent);
        --header-bg: var(--secondary);
        --header-link-color: var(--primary-fg);
        --breadcrumbs-fg: #c4dce8;
        --breadcrumbs-link-fg: var(--body-bg);
        --breadcrumbs-bg: var(--primary);
        --link-fg: #447e9b;
        --link-hover-color: #036;
        --link-selected-fg: #5b80b2;
        --hairline-color: #e8e8e8;
        --border-color: #ccc;
        --error-fg: #ba2121;
        --message-success-bg: #dfd;
        --message-warning-bg: #ffc;
        --message-error-bg: #ffefef;
        --darkened-bg: #f8f8f8;
        --selected-bg: #e4e4e4;
        --selected-row: #ffc;
        --button-fg: #fff;
        --button-bg: var(--primary);
        --button-hover-bg: #609ab6;
        --default-button-bg: var(--secondary);
        --default-button-hover-bg: #205067;
        --close-button-bg: #888;
        --close-button-hover-bg: #747474;
        --delete-button-bg: #ba2121;
        --delete-button-hover-bg: #a41515;
        --object-tools-fg: var(--button-fg);
        --object-tools-bg: var(--close-button-bg);
        --object-tools-hover-bg: var(--close-button-hover-bg);
    }
}

.admin-interface {
    overflow-x: hidden;
}

.admin-interface #header {
    background: var(--admin-interface-header-background-color);
    color: var(--admin-interface-header-text-color);
}

.admin-interface #header + #main {
    border-top: var(--admin-interface-main-border-top);
}

.admin-interface .environment-label {
}

.admin-interface .environment-label::before {
    content: "";
    display: inline-block;
    width: 8px;
    height: 8px;
    background-color: var(--admin-interface-env-color);
    border-radius: 100%;
    margin-right: 6px;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

.admin-interface .environment-label::after {
    content: " - ";
}

@media (max-width: 1024px) {
    .admin-interface .environment-label::after {
        content: "";
    }
}

.admin-interface .language-chooser {
    display: inline-block;
    position: absolute;
    top: 15px;
    right: 15px;
    z-index: 10;
}

@media (min-width: 768px) {
    .admin-interface .language-chooser {
        right: 30px;
    }
}

@media (min-width: 1024px) {
    .admin-interface .language-chooser {
        position: static;
        float: right;
        margin-left: 20px;
    }
}

.admin-interface .language-chooser-hidden-form {
    display: none;
}

.admin-interface .language-chooser-select-form {
    display: inline-block;
}

.admin-interface #branding h1,
.admin-interface.login #header h1,
.admin-interface.login #header h1 a {
    color: var(--admin-interface-title-color);
}

.admin-interface #branding h1 a {
    color: inherit;
}

.admin-interface #branding h1 .logo.default {
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 104px 36px;
    background-image: var(--admin-interface-logo-default-background-image);
}

.admin-interface #branding h1 img.logo,
.admin-interface.login #header #branding h1 img.logo {
    max-width: var(--admin-interface-logo-max-width);
    max-height: var(--admin-interface-logo-max-height);
}

.admin-interface #header #user-tools a,
.admin-interface #header #user-tools #logout-form button {
    color: var(--admin-interface-header-link-color);
}

.admin-interface #header #user-tools a:hover,
.admin-interface #header #user-tools a:active,
.admin-interface #header #user-tools #logout-form button:hover,
.admin-interface #header #user-tools #logout-form button:active {
    color: var(--admin-interface-header-link-hover-color);
    border-bottom-color: rgba(255, 255, 255, 0.5);
}

.admin-interface #header #user-tools button.theme-toggle svg {
    color: transparent;
    fill: var(--admin-interface-header-link-color);
}

.admin-interface #header #user-tools button.theme-toggle:hover svg,
.admin-interface #header #user-tools button.theme-toggle:active svg {
    color: transparent;
    fill: var(--admin-interface-header-link-hover-color);
}

.admin-interface #nav-sidebar .current-app .section:link,
.admin-interface #nav-sidebar .current-app .section:visited {
    color: var(--admin-interface-module-link-selected-color);
    font-weight: normal;
}

.admin-interface #nav-sidebar .current-app .section:focus,
.admin-interface #nav-sidebar .current-app .section:hover {
    color: var(--admin-interface-module-link-hover-color);
}

.admin-interface #nav-sidebar .current-model {
    background: var(--admin-interface-module-background-selected-color);
}

.admin-interface #changelist table tbody tr.selected {
    background-color: var(--admin-interface-module-background-selected-color);
}

.admin-interface .module h2,
.admin-interface .module caption,
.admin-interface .module.collapse details summary,
.admin-interface .module.filtered h2 {
    background: var(--admin-interface-module-background-color);
    border-color: var(--admin-interface-module-background-color);
    color: var(--admin-interface-module-text-color);
}

.admin-interface .module a.section:link,
.admin-interface .module a.section:visited {
    color: var(--admin-interface-module-link-color);
}

.admin-interface .module a.section:active,
.admin-interface .module a.section:hover {
    color: var(--admin-interface-module-link-hover-color);
}

.admin-interface div.breadcrumbs {
    background: var(--admin-interface-module-background-color);
    color: var(--admin-interface-module-text-color);
}

.admin-interface div.breadcrumbs a {
    color: var(--admin-interface-module-link-color);
}

.admin-interface div.breadcrumbs a:active,
.admin-interface div.breadcrumbs a:focus,
.admin-interface div.breadcrumbs a:hover {
    color: var(--admin-interface-module-link-hover-color);
}

.admin-interface fieldset.collapse a.collapse-toggle,
.admin-interface fieldset.collapse.collapsed a.collapse-toggle,
.admin-interface .inline-group .inline-related fieldset.module a.collapse-toggle,
.admin-interface .inline-group .inline-related fieldset.module.collapsed a.collapse-toggle {
    color: var(--admin-interface-module-link-color);
}

.admin-interface fieldset.collapse a.collapse-toggle:hover,
.admin-interface fieldset.collapse a.collapse-toggle:active,
.admin-interface fieldset.collapse.collapsed a.collapse-toggle:hover,
.admin-interface fieldset.collapse.collapsed a.collapse-toggle:active,
.admin-interface .inline-group .inline-related fieldset.module a.collapse-toggle:hover,
.admin-interface .inline-group .inline-related fieldset.module a.collapse-toggle:active,
.admin-interface .inline-group .inline-related fieldset.module.collapsed a.collapse-toggle:hover,
.admin-interface .inline-group .inline-related fieldset.module.collapsed a.collapse-toggle:active {
    color: var(--admin-interface-module-link-hover-color);
}

.admin-interface .inline-group h2 {
    background: var(--admin-interface-module-background-color);
    color: var(--admin-interface-module-text-color);
}

.admin-interface .selector .selector-chosen h2 {
    border-color: var(--admin-interface-module-background-color);
    background: var(--admin-interface-module-background-color);
    color: var(--admin-interface-module-text-color);
}

.admin-interface .selector .selector-chosen .selector-chosen-title {
    background: var(--admin-interface-module-background-color);
    color: var(--admin-interface-module-text-color);
}

.admin-interface .selector .selector-available h2,
.admin-interface .selector .selector-chosen h2 {
    border-bottom-left-radius: 0px;
    border-bottom-right-radius: 0px;
}

.admin-interface .selector a.selector-chooseall:focus,
.admin-interface .selector a.selector-chooseall:hover,
.admin-interface .selector a.selector-clearall:focus,
.admin-interface .selector a.selector-clearall:hover {
    color: var(--admin-interface-generic-link-hover-color);
}

.admin-interface .selector button.selector-chooseall,
.admin-interface .selector button.selector-clearall {
    background-color: var(--admin-interface-generic-link-color);
    padding: 8px 12px;
}

.admin-interface .selector button.selector-chooseall:focus,
.admin-interface .selector button.selector-chooseall:hover,
.admin-interface .selector button.selector-clearall:focus,
.admin-interface .selector button.selector-clearall:hover {
    background-color: var(--admin-interface-generic-link-hover-color);
}

/* fix #393  */
.admin-interface .selector-chosen .list-footer-display {
    background: var(--admin-interface-module-background-color);
}
.admin-interface .selector-chosen .list-footer-display {
    color: var(--admin-interface-module-text-color);
}
.admin-interface .selector-chosen .list-footer-display__clear {
    color: var(--admin-interface-module-link-color);
}
.admin-interface .selector-chosen .list-footer-display__clear:hover {
    color: var(--admin-interface-module-link-hover-color);
}
/* endfix */

.admin-interface a:link,
.admin-interface a:visited {
    color: var(--admin-interface-generic-link-color);
}

.admin-interface a:hover {
    color: var(--admin-interface-generic-link-hover-color);
}

.admin-interface thead th a,
.admin-interface thead th a:link,
.admin-interface thead th a:visited,
.admin-interface thead th a:focus,
.admin-interface thead th a:hover {
    color: #666666;
}

.admin-interface .button,
.admin-interface input[type=submit],
.admin-interface input[type=button],
.admin-interface .submit-row input,
.admin-interface a.button {
    background: var(--admin-interface-save-button-background-color);
    color: var(--admin-interface-save-button-text-color);
}

.admin-interface .button:active,
.admin-interface .button:focus,
.admin-interface .button:hover,
.admin-interface input[type=submit]:active,
.admin-interface input[type=submit]:focus,
.admin-interface input[type=submit]:hover,
.admin-interface input[type=button]:active,
.admin-interface input[type=button]:focus,
.admin-interface input[type=button]:hover {
    background: var(--admin-interface-save-button-background-hover-color);
    color: var(--admin-interface-save-button-text-color);
    outline: none;
}

.admin-interface .button.default,
.admin-interface input[type=submit].default,
.admin-interface .submit-row input.default {
    background: var(--admin-interface-save-button-background-color);
    color: var(--admin-interface-save-button-text-color);
    outline: none;
}

.admin-interface .button.default:active,
.admin-interface .button.default:focus,
.admin-interface .button.default:hover,
.admin-interface input[type=submit].default:active,
.admin-interface input[type=submit].default:focus,
.admin-interface input[type=submit].default:hover,
.admin-interface.delete-confirmation form .cancel-link:hover {
    background: var(--admin-interface-save-button-background-hover-color);
    color: var(--admin-interface-save-button-text-color);
    outline: none;
}

.admin-interface .submit-row a.deletelink:link,
.admin-interface .submit-row a.deletelink:visited,
.admin-interface.delete-confirmation form input[type="submit"] {
    background: var(--admin-interface-delete-button-background-color);
    color: var(--admin-interface-delete-button-text-color);
}

.admin-interface .submit-row a.deletelink:hover,
.admin-interface.delete-confirmation form input[type="submit"]:hover {
    background: var(--admin-interface-delete-button-background-hover-color);
    color: var(--admin-interface-delete-button-text-color);
}

.admin-interface #changelist .changelist-footer .paginator a,
.admin-interface #changelist .changelist-footer .paginator a:link,
.admin-interface #changelist .changelist-footer .paginator a:visited,
.admin-interface #changelist .changelist-footer .paginator a[aria-current="page"],
.admin-interface #changelist .changelist-footer .paginator .this-page {
    border-radius: var(--admin-interface-module-border-radius);
}

.admin-interface #changelist .changelist-footer .paginator a,
.admin-interface #changelist .changelist-footer .paginator a:link,
.admin-interface #changelist .changelist-footer .paginator a:visited {
    background-color: #FFFFFF;
    color: var(--admin-interface-generic-link-color);
}

.admin-interface #changelist .changelist-footer .paginator a:hover,
.admin-interface #changelist .changelist-footer .paginator a:active {
    background-color: #F8F8F8;
    color: var(--admin-interface-generic-link-hover-color);
}

.admin-interface #changelist .changelist-footer .paginator a[aria-current="page"],
.admin-interface #changelist .changelist-footer .paginator .this-page {
    background-color: var(--admin-interface-module-background-color);
    color: var(--admin-interface-module-link-color);
}

.admin-interface #changelist .changelist-footer .paginator a.showall,
.admin-interface #changelist .changelist-footer .paginator a.showall:link,
.admin-interface #changelist .changelist-footer .paginator a.showall:visited {
    color: var(--admin-interface-generic-link-color);
}

.admin-interface #changelist .changelist-footer .paginator a.showall:hover,
.admin-interface #changelist .changelist-footer .paginator a.showall:active {
    color: var(--admin-interface-generic-link-hover-color);
}

/* list-filter sticky */
@media (min-width: 768px) {
    .admin-interface.list-filter-sticky .module.filtered #changelist-filter {
        position: sticky;
        top: 30px;
        float: right;
        z-index: 30;
        display: flex;
        flex-direction: column;
        overflow-y: auto;
        scrollbar-width: thin;
        height: 100%;
        max-height: calc(100vh - 60px);
    }
    .admin-interface.list-filter-sticky.sticky-pagination .module.filtered #changelist-filter {
        max-height: calc(100vh - 125px);
    }

    /* feature not available for django < 3.1.2 */
    .admin-interface.list-filter-sticky .module.filtered #toolbar + #changelist-filter {
        position: absolute;
        top: 0px;
        z-index: 30;
        max-height: calc(100vh - 105px);
    }
    .admin-interface.list-filter-sticky.sticky-pagination .module.filtered #toolbar + #changelist-filter {
        max-height: calc(100vh - 170px);
    }
}

.admin-interface .module.filtered #changelist-filter {
    border-radius: var(--admin-interface-module-border-radius);
}

.admin-interface .module.filtered .changelist-filter-clear-container {
    margin: 12px 0;
}

.admin-interface .module.filtered #changelist-filter h3#changelist-filter-clear {
    margin-top: 5px;
    margin-bottom: 10px;
}

.admin-interface .module.filtered #changelist-filter .changelist-filter-clear a {
    font-size: 12px;
    margin: .3em 0;
    padding: 0 15px 0 32px;
}

.admin-interface .module.filtered #changelist-filter .changelist-filter-clear a:focus,
.admin-interface .module.filtered #changelist-filter .changelist-filter-clear a:hover,
.admin-interface .module.filtered #changelist-filter #changelist-filter-clear a:focus,
.admin-interface .module.filtered #changelist-filter #changelist-filter-clear a:hover {
    color: #666;
    text-decoration: none;
}

.admin-interface .module.filtered #changelist-filter .changelist-filter-clear a span {
    font-weight: bold;
}

.admin-interface .module.filtered #changelist-filter li a:focus,
.admin-interface .module.filtered #changelist-filter li a:hover {
    color: #666;
    text-decoration: none;
}

.admin-interface.list-filter-highlight .module.filtered #changelist-filter h3.active,
.admin-interface.list-filter-highlight .module.filtered #changelist-filter summary.active {
    font-weight: bold;
}

.admin-interface.list-filter-highlight .module.filtered #changelist-filter ul.active li.selected {
    color: var(--admin-interface-module-text-color);
    background: var(--admin-interface-module-background-color);
    margin-left: -10px;
    padding-left: 5px;
    margin-right: -10px;
    border-left: 5px solid var(--admin-interface-module-background-color);
    border-right: 5px solid var(--admin-interface-module-background-color);
    border-radius: var(--admin-interface-module-border-radius);
}

.admin-interface.list-filter-highlight .module.filtered #changelist-filter ul.active li.selected a,
.admin-interface.list-filter-highlight .module.filtered #changelist-filter ul.active li.selected a:link,
.admin-interface.list-filter-highlight .module.filtered #changelist-filter ul.active li.selected a:visited,
.admin-interface.list-filter-highlight .module.filtered #changelist-filter ul.active li.selected a:focus,
.admin-interface.list-filter-highlight .module.filtered #changelist-filter ul.active li.selected a:hover {
    background: inherit;
    color: inherit;
}

.admin-interface .module.filtered #changelist-filter li.selected a,
.admin-interface .module.filtered #changelist-filter li.selected a:link,
.admin-interface .module.filtered #changelist-filter li.selected a:visited,
.admin-interface .module.filtered #changelist-filter li.selected a:focus,
.admin-interface .module.filtered #changelist-filter li.selected a:hover {
    color: var(--admin-interface-generic-link-hover-color);
}

.admin-interface .module.filtered #changelist-filter a,
.admin-interface .module.filtered #changelist-filter a:link,
.admin-interface .module.filtered #changelist-filter a:visited {
    color: var(--admin-interface-generic-link-color);
    text-decoration: none;
}

.admin-interface .module.filtered #changelist-filter a:hover,
.admin-interface .module.filtered #changelist-filter a:active {
    color: var(--admin-interface-generic-link-hover-color);
    text-decoration: none;
}

/* begin fix issue #11 - Inline border bottom should not be rounded */
.admin-interface .module h2,
.admin-interface.dashboard .module caption,
.admin-interface #nav-sidebar .module th,
.admin-interface #nav-sidebar .module caption,
.admin-interface .module.collapse details summary,
.admin-interface .module.filtered h2 {
    border-radius: var(--admin-interface-module-border-radius);
}

.admin-interface .inline-group h2 {
    border-bottom-left-radius: 0px;
    border-bottom-right-radius: 0px;
}

.admin-interface .module.collapse.collapsed h2 {
    /* fix collapsed inlines rounded bottom borders */
    border-bottom-left-radius: var(--admin-interface-module-border-radius);
    border-bottom-right-radius: var(--admin-interface-module-border-radius);
}

/* end fix */

.admin-interface #content-related {
    border-radius: var(--admin-interface-module-border-radius);
}

.admin-interface .select2-container--admin-autocomplete .select2-results__option--highlighted[aria-selected] {
    background-color: var(--admin-interface-module-background-color);
    color: var(--admin-interface-module-text-color);
}

.admin-interface #toggle-nav-sidebar {
    border-top-right-radius: var(--admin-interface-module-border-radius);
    border-bottom-right-radius: var(--admin-interface-module-border-radius);
    color: var(--admin-interface-generic-link-color);
}

.admin-interface #toggle-nav-sidebar:focus,
.admin-interface #toggle-nav-sidebar:hover,
.admin-interface #toggle-nav-sidebar:active {
    color: var(--admin-interface-generic-link-hover-color);
}

.admin-interface .calendar td.selected a,
.admin-interface .calendar td a:active,
.admin-interface .calendar td a:focus,
.admin-interface .calendar td a:hover,
.admin-interface .timelist a:active,
.admin-interface .timelist a:focus,
.admin-interface .timelist a:hover {
    background: var(--admin-interface-module-background-color);
}

.admin-interface .calendarbox .calendarnav-previous,
.admin-interface .calendarbox .calendarnav-next {
    transition: none;
    filter: invert(100%);
}

/* /static/admin_interface/css/changelist.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
@media (min-width: 1024px) {
    .admin-interface #changelist .actions .button,
    .admin-interface #changelist .actions .action-counter {
        margin-left: 8px;
    }
}

.admin-interface #changelist-form .results {
    scrollbar-width: thin;
}

/* fix searchbar overriden padding */
.admin-interface #changelist #changelist-search #searchbar {
    padding: 2px 5px 3px 5px;
}

@media (min-width: 1024px) {
    .admin-interface #changelist #changelist-search #searchbar,
    .admin-interface #changelist #changelist-search input[type="submit"],
    .admin-interface #changelist #changelist-search .quiet {
        margin-left: 8px;
    }
    .admin-interface #changelist #changelist-search label img {
        vertical-align: text-top;
        margin-right: 0px;
    }
}

@media (max-width: 1024px) {
    .admin-interface #changelist #toolbar {
        border-top: 1px solid #eee;
        border-bottom: 1px solid #eee;
    }
    /* fixed changelist search size when there are search results and .quiet is visible */
    .admin-interface #changelist-search label img {
        margin-top: 2px;
    }
    .admin-interface #changelist-search .quiet {
        margin: 0 0 0 10px;
        align-self: center;
        flex-basis: content;
    }
}

/* prevent cells text wrapping */
.admin-interface #changelist #changelist-form table tbody th,
.admin-interface #changelist #changelist-form table tbody td {
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    max-width: min(400px, 30vw);
}

/* make date hierarchy scrollable horizontally */
/*
.admin-interface.scrollable-date-hierarchy #changelist .changelist-form-container #toplinks {
    display: flex;
    white-space: nowrap;
    flex-wrap: nowrap;
    max-width: 100%;
    overflow: auto;
    flex-direction: row-reverse;
    padding-bottom: 15px;
    scrollbar-width: thin;
    padding-left: 10px;
    padding-right: 10px;
}
*/

/* /static/admin_interface/css/change-form.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
.admin-interface .submit-row {
    width: 100%;
    box-sizing: border-box;
}

/* fix form submit buttons alignemnt and ordering */
@media (min-width: 768px) {
    .admin-interface .submit-row {
        flex-direction: row-reverse;
    }
    .admin-interface .submit-row input[name="_save"] {
        order: 1;
    }
    .admin-interface .submit-row input[name="_continue"] {
        order: 2;
    }
    .admin-interface .submit-row input[name="_addanother"] {
        order: 3;
    }
    .admin-interface .submit-row a.deletelink {
        order: 4;
        margin-left: 0;
        margin-right: auto;
    }
}
/* endfix */

/* fix help-text horizontal alignment when using show-fieldsets-as-tabs / show-inlines-as-tabs options - #317 */
.admin-interface.show-fieldsets-as-tabs fieldset > .form-row .help,
.admin-interface.show-inlines-as-tabs .inline-related > fieldset .help {
    margin-left: 0;
    padding-left: 0;
}
.admin-interface.show-fieldsets-as-tabs fieldset > .form-row div:has(.related-widget-wrapper .selector) + .help,
.admin-interface.show-inlines-as-tabs .inline-related > fieldset div:has(.related-widget-wrapper .selector) + .help {
    display: flex;
    width: 100%;
}
/* endfix */

/* /static/admin_interface/css/fieldsets.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
.admin-interface fieldset.collapse {
    border: 1px solid transparent;
}

.admin-interface fieldset.collapse.collapsed a.collapse-toggle,
.admin-interface fieldset.collapse a.collapse-toggle,
.admin-interface .inline-group .inline-related fieldset.module a.collapse-toggle,
.admin-interface .inline-group .inline-related fieldset.module.collapsed a.collapse-toggle {
    font-weight: normal;
    text-transform: lowercase;
    font-size: 12px;
    text-decoration: underline;
    padding: 0 1px;
}

/* /static/admin_interface/css/file-upload.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
.admin-interface .file-thumbnail > a {
    display: inline-block;
}

.admin-interface .aligned p.file-upload {
    display: table;
    margin-left: 0;
}

.admin-interface form .form-row p.file-upload > a {
    margin-right: 20px;
}

.admin-interface form .form-row p.file-upload .clearable-file-input {
    display: inline-block;
}

.admin-interface form .form-row p.file-upload .clearable-file-input label {
    padding-bottom: 0px;
    margin-left: 5px;
}

.admin-interface form .form-row p.file-upload > input[type="file"] {
    margin-top: 0px;
}

@media (max-width:767px){

    .admin-interface form .form-row p.file-upload {
        width: 100%;
    }

    .admin-interface form .form-row p.file-upload > a {
        margin-right: 0px;
        display: block;
        white-space: pre-wrap;
        word-break: break-word;
    }

    .admin-interface form .form-row p.file-upload .clearable-file-input {
        display: block;
        margin-top: 10px;
        margin-left: 0;
        margin-bottom: -10px;
    }

    .admin-interface form .form-row p.file-upload > input[type="file"] {
        display: block;
        width: auto;
        padding: 0px;
    }
}

/* /static/admin_interface/css/header.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
.admin-interface #header {
    height: auto;
    box-sizing: border-box;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

@media (max-width:1024px) {
    .admin-interface #header {
        align-items: start;
    }
}

.admin-interface #branding h1 img.logo {
    margin-top: 10px;
    margin-bottom: 10px;
    margin-right: 15px;
    display: inline-block !important; /* override inline display:none; */
}

.admin-interface #branding h1 span {
    display: inline-block;
}

.admin-interface #branding h1 img.logo+span {
    white-space: nowrap;
}

.admin-interface #user-tools {
    margin-top: 10px;
    margin-bottom: 10px;
    white-space: nowrap;
    align-self: flex-start;
}

.admin-interface #user-tools .theme-toggle {
    transform: scale(0.7) !important;
}

.admin-interface #user-tools br {
    display: none;
}

@media (max-width: 768px) {
    .admin-interface #user-tools br {
        display: block;
    }
}

/* hide theme toggle button until dark theme will be supported */
/*
.admin-interface #user-tools button.theme-toggle {
    display: none;
}
*/

/* /static/admin_interface/css/inlines.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
/* begin fix help text icon on newline */
.admin-interface .inline-group thead th {
    white-space:nowrap;
}

.admin-interface .inline-group thead th img {
    vertical-align: -2px;
    margin-left: 5px;
}

.admin-interface .inline-group .inlinechangelink {
    margin-left: 10px;
    font-size: 11px;
    padding-left: 18px;
}
/* end fix */

/* begin fix restrict tabular-inline horizontal-scroll to inline-group instead of whole page */
.admin-interface .inline-group[data-inline-type="tabular"] {
    overflow-x: auto;
}
/* end fix */

/* begin fix stacked-inline margin-bottom in responsive small viewport */
.admin-interface .inline-group[data-inline-type="stacked"] .module {
    margin-bottom: 0px;
}
/* end fix */

/* begin fix tabular inlines horizontal scroll */
.admin-interface .inline-related.tabular {
    overflow-x: scroll;
    overflow-y: hidden;
}
.admin-interface .inline-related.tabular fieldset.module {
    display: contents;
    width: 100%;
    white-space: nowrap;
    position: relative;
}
.admin-interface .inline-related.tabular fieldset.module h2 {
    position: sticky;
    left: 0;
}
.admin-interface .inline-related.tabular fieldset.module table {
    scrollbar-width: thin;
}
.admin-interface .inline-related.tabular fieldset.module table tbody tr {
    position: relative;
}
/* end fix */

.admin-interface .inline-related h3 {
    padding: 6px 10px;
}

/* begin fix issue #12 - Inlines bad delete buttons alignement */
.admin-interface .inline-group .tabular thead th:last-child:not([class]):not([style]) {
    text-align: right;
}

.admin-interface  .inline-group .tabular tr td.original p {
    font-size: 11px;
}

.admin-interface .inline-group .tabular tr td {
    vertical-align: top;
}

.admin-interface .inline-group .tabular tr td.delete {
    text-align: right;
    padding-right: 15px;
    vertical-align: top;
}

.admin-interface .inline-group .tabular tr td input[type="checkbox"] {
    margin: 7px 0px;
}

.admin-interface .inline-group .tabular tr td.delete a.inline-deletelink {
    margin-top: 4px;
    overflow: hidden;
    text-indent: 9999px;
    width: 18px;
    height: 18px;
}
/* end fix */

/* begin fix remove button at the end od dynamically added inline rows */
.admin-interface .inline-group .tabular tr td:not(.delete) * + div:has(> a.inline-deletelink) {
    display: inline-block;
    margin-bottom: -3px;
    margin-left: 10px;
}
/* end fix */

/* begin fix issue #13 - Datetime widget broken in long inlines */
.admin-interface .inline-group .inline-related p.datetime {
    white-space: nowrap;
}
/* end fix */

/* begin fix inline horizontal scroll caused by checkbox-row */
@media (max-width:767px){
    .admin-interface form .form-row > div.checkbox-row {
        width: 100%;
    }
}
/* end fix */

/* /static/admin_interface/css/jquery.ui.tabs.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
/*
* jQuery UI CSS Framework
* Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses.
* http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.2/themes/base/jquery.ui.core.css
*/

/*
backward compatibility:
.ui-tabs-selected:      jquery ui <  1.10
.ui-tabs-active classes jquery ui >= 1.10
*/

/* Layout helpers
----------------------------------*/
.ui-helper-hidden {
    display: none;
}

.ui-helper-hidden-accessible {
    position: absolute;
    left: -99999999px;
}

.ui-helper-reset {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    line-height: 1.3;
    text-decoration: none;
    font-size: 100%;
    list-style: none;
}

.ui-helper-clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

.ui-helper-clearfix {
    display: inline-block;
}

/* required comment for clearfix to work in Opera \*/
* html .ui-helper-clearfix {
    height: 1%;
}

.ui-helper-clearfix {
    display: block;
}

.ui-helper-zfix {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    opacity: 0;
    filter: Alpha(Opacity=0);
}

.ui-state-disabled {
    cursor: default !important;
}

.ui-icon {
    display: block;
    text-indent: -99999px;
    overflow: hidden;
    background-repeat: no-repeat;
}

/* http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.2/themes/base/jquery.ui.tabs.css */
.ui-widget-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.ui-tabs {
    position: relative;
    padding: .2em;
    zoom: 1;
}

/* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
.ui-tabs .ui-tabs-nav {
    margin: 0;
    padding: .2em .2em 0;
}

.ui-tabs .ui-tabs-nav li {
    list-style: none;
    float: left;
    position: relative;
    top: 1px;
    margin: 0 .2em 1px 0;
    border-bottom: 0 !important;
    padding: 0;
    white-space: nowrap;
}

.ui-tabs .ui-tabs-nav li a {
    float: left;
    padding: .5em 1em;
    text-decoration: none;
}

.ui-tabs .ui-tabs-nav li.ui-tabs-active, .ui-tabs .ui-tabs-nav li.ui-tabs-selected {
    margin-bottom: 0;
    padding-bottom: 1px;
}

.ui-tabs .ui-tabs-nav li.ui-tabs-active a, .ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a {
    cursor: text;
}

.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a {
    cursor: pointer;
}

/* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */
.ui-tabs .ui-tabs-panel {
    display: block;
    border-width: 0;
    padding: 1em 1.4em;
    background: none;
}

.ui-tabs .ui-tabs-hide {
    position: absolute;
    display: none;
}

/* Custom tabs theme */
.admin-interface .ui-tabs {
    padding: 0;
}

.admin-interface .ui-tabs,
.admin-interface .ui-tabs .ui-widget-header,
.admin-interface .ui-tabs .ui-widget-header .ui-state-default {
    border: none;
    background: transparent;
}

.admin-interface .ui-tabs .ui-tabs-nav {
    padding: 10px 0 0 10px;
    border-bottom: none;
}

.admin-interface .ui-tabs .ui-tabs-nav li {
    margin: 0 0 0 -1px;
}

.admin-interface .ui-tabs .ui-tabs-nav li.required {
    font-weight: bold;
}

.admin-interface .ui-tabs .ui-tabs-nav li a {
    border: 1px solid #eeeeee;
    background-color: #f8f8f8;
    border-bottom: none;
    color: #666666;
    padding: 7px 14px 8px 14px;
    margin-top: 1px;
    -moz-border-radius-topright: 4px;
    -webkit-border-top-right-radius: 4px;
    -moz-border-radius-topleft: 4px;
    -webkit-border-top-left-radius: 4px;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    font-size: 12px;
    text-transform: uppercase;
    outline: none;
}

.admin-interface .ui-tabs .ui-tabs-nav li.ui-tabs-active a,
.admin-interface .ui-tabs .ui-tabs-nav li.ui-tabs-selected a {
    padding: 8px 14px 8px 14px;
    margin-top: 0px;
    margin-bottom: -1px;
    font-weight: bold;
    background-color: #FFFFFF;
    color: var(--admin-interface-module-background-color);
    border-bottom: 1px solid #FFFFFF;
}

.admin-interface .ui-tabs .ui-tabs-panel {
    border: 1px solid #eeeeee;
    border-radius: 4px;
    padding: 10px;
    margin-bottom: 30px;
    overflow: hidden;
}

.admin-interface .inline-group .tabular .ui-tabs .ui-tabs-panel {
    padding: 8px;
}

.admin-interface .inline-group .tabular .ui-tabs .ui-tabs-nav {
    padding-left: 4px;
}

.admin-interface .inline-group .tabular tr td {
    vertical-align: top;
}

.admin-interface .inline-group .tabular tr.has_original td.original,
.admin-interface .inline-group .tabular tr td.delete {
    vertical-align: top;
}

.admin-interface .inline-group .tabular .datetime > input {
    margin-right: 5px;
}

.admin-interface #changelist .row1:not(.selected):hover,
.admin-interface #changelist .row2:not(.selected):hover {
    background: #f9f9f9;
}

.admin-interface .row2 {
    background: #fcfcfc;
}

.admin-interface .row2 .ui-tabs .ui-tabs-nav li a {
    background-color: #f5f5f5;
    border: 1px solid #ebebeb;
}

.admin-interface .row2 .ui-tabs .ui-tabs-nav li.ui-tabs-active a,
.admin-interface .row2 .ui-tabs .ui-tabs-nav li.ui-tabs-selected a {
    background-color: #fcfcfc;
    border-bottom: 1px solid #fcfcfc;
}

/* /static/admin_interface/css/language-chooser.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
.admin-interface .language-chooser {
    display: inline-block;
    position: absolute;
    top: 15px;
    right: 15px;
    z-index: 10;
}

@media (min-width: 768px) {
    .admin-interface .language-chooser {
        right: 30px;
    }
}

@media (min-width: 1024px) {
    .admin-interface .language-chooser {
        position: static;
        margin-left: 20px;
    }
}

.admin-interface .language-chooser .language-chooser-hidden-form {
    display: none;
}

.admin-interface .language-chooser .language-chooser-select-form {
    display: inline-block;
    position: relative;
    z-index: 0;
}

.admin-interface .language-chooser select {
    width: auto;
    min-width: auto;
}

.admin-interface .language-chooser.minimal .language-chooser-select-form::after {
    content: "";
    position: absolute;
    right: 2px;
    top: 50%;
    border: solid var(--admin-interface-header-text-color);
    border-width: 0px 0px 1px 1px;
    display: inline-block;
    padding: 2px;
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    pointer-events: none;
    margin-top: -4px;
}

.admin-interface .language-chooser.minimal .language-chooser-select-form:hover select {
    border-bottom: 1px solid transparent;
    color: var(--admin-interface-header-link-hover-color);
}

.admin-interface .language-chooser.minimal select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: transparent;
    border: none;
    border-bottom: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 0;
    color: var(--admin-interface-header-link-color);
    cursor: pointer;
    font-weight: inherit;
    font-size: inherit;
    height: auto;
    margin: 0;
    padding: 0 15px 0 0;
}

/* /static/admin_interface/css/list-filter.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
.admin-interface .module.filtered h2 {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.admin-interface .module.filtered #changelist-filter {
    min-width: 240px;
}

@media (max-width: 1024px) {
    .admin-interface .module.filtered #changelist-filter {
        min-width: 200px;
    }
}

.admin-interface .module.filtered #changelist-filter h2#changelist-filter-header {
    margin-bottom: 0;
}

.admin-interface .module.filtered #changelist-filter h2#changelist-filter-header + details {
    margin-top: 12px;
}

.admin-interface .module.filtered #changelist-filter h2 {
    font-size: 11px;
    padding: 10px 15px;
}

.admin-interface .module.filtered #changelist-filter h2 + h3 {
    margin-top: 0px;
}

.admin-interface .module.filtered #changelist-filter h3 {
    margin-top: 12px;
    margin-bottom: 12px;
}

/* fix summary shift when expanding/collapsing list filter */
.admin-interface .module.filtered #changelist-filter details > summary::before {
    display: inline-block;
    width: 14px;
    text-align: center;
}

/* /static/admin_interface/css/list-filter-dropdown.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
/*
list-filter-dropdown
*/

.admin-interface #changelist-filter .list-filter-dropdown {
    margin-top: 15px;
    margin-bottom: 15px;
}

.admin-interface #changelist-filter h2 + .list-filter-dropdown,
.admin-interface #changelist-filter #changelist-filter-extra-actions + .list-filter-dropdown,
.admin-interface #changelist-filter .list-filter-dropdown + .list-filter-dropdown {
    margin-top: 5px;
}

.admin-interface #changelist-filter .list-filter-dropdown h3 {
    margin-top: 0 !important;
}

.admin-interface #changelist-filter .list-filter-dropdown select {
    background-color: #FFFFFF;
    width: calc(100% - 30px);
    margin-right: 15px;
}

.admin-interface.list-filter-highlight #changelist-filter .list-filter-dropdown h3.active + div select {
    font-weight: bold;
}

/* /static/admin_interface/css/login.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
.admin-interface.login #container {
    width: 100%;
    max-width: 360px;
    margin: 15px auto;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

.admin-interface.login #content {
    padding: 15px 30px 30px 30px;
}

@media (min-width:768px){
    .admin-interface.login #container {
        margin: 90px auto;
    }
}

.admin-interface.login #header {
    min-height: auto;
    padding: 10px 30px;
    line-height: 30px;
    align-items: center;
    justify-content: flex-start;
}

.admin-interface.login #header #branding h1 {
    margin-right:0;
}

.admin-interface.login #header #branding h1 img.logo {
    margin-right: 0;
}

.admin-interface.login #header #branding h1 img.logo+span {
    display: block;
}

.admin-interface.login #login-form {
    display: flex;
    flex-direction: column;
}

.admin-interface.login .submit-row {
    float: left;
    width: 100%;
    margin-top: 20px;
    padding-top: 0;
    padding-left: 0;
    text-align: right;
}

.admin-interface.login .submit-row label {
    display: none;
}

.admin-interface.login .submit-row input[type="submit"] {
    width: 100%;
    text-transform: uppercase;
}

.admin-interface.login #footer {
    display: none;
}

/* /static/admin_interface/css/modules.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
.admin-interface .module {
    width: 100%;
    box-sizing: border-box;
}

/* begin fix lateral padding to align text with field labels */
.admin-interface .module h2,
.admin-interface.dashboard .module caption,
.admin-interface.dashboard .module th,
.admin-interface .module.filtered h2,
.admin-interface .inline-group h2,
.admin-interface #nav-sidebar .module caption,
.admin-interface #nav-sidebar .module th {
    padding-left: 10px;
    padding-right: 10px;
}
/* end fix */

/* /static/admin_interface/css/nav-sidebar.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
/* fix nav-sidebar (added in django 3.1.0) */
.admin-interface #toggle-nav-sidebar {
    top: 10px;
    left: 0;
    z-index: 20;
    flex: 0 0 30px;
    width: 30px;
    height: 45px;
    margin-top: 10px;
    margin-right: -30px;
    background-color: #FFFFFF;
    font-size: 16px;
    border: 1px solid #eaeaea;
    border-left: none;
    outline: none;
    -webkit-box-shadow: 4px 4px 8px -4px #DBDBDB;
    -moz-box-shadow: 4px 4px 8px -4px #DBDBDB;
    box-shadow: 4px 4px 8px -4px #DBDBDB;
    /*transition: left .3s;*/
}

.admin-interface .toggle-nav-sidebar::before {
    margin-top: -2px;
}

.admin-interface .main > #nav-sidebar + .content,
.admin-interface .main.shifted > #nav-sidebar + .content {
    max-width: 100%;
}

/* hide nav-sidebar below 1280px to prevent horizontal overflow issues */
@media (max-width:1279px) {
    .admin-interface #nav-sidebar,
    .admin-interface #toggle-nav-sidebar {
        display: none;
    }
}

.admin-interface #nav-sidebar {
    flex: 0 0 360px;
    left: -360px;
    margin-left: -360px;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    padding: 40px 40px 40px 40px;
    border-top: none;
    border-bottom: none;
    border-left: none;
    scrollbar-width: thin;
    /*transition: left .3s, margin-left .3s;*/
}

.admin-interface #nav-filter {
    background-color: transparent;
    border-radius: 4px;
    height: 30px;
    margin: 0 0 30px 0;
    padding: 5px 6px;
    outline-width: initial;
}

@media (min-width:1280px) {
    .admin-interface #main.shifted > #toggle-nav-sidebar {
        left: 359px;
    }
    .admin-interface #main.shifted > #nav-sidebar {
        left: 0px;
        margin-left: 0;
    }
    .admin-interface #main:not(.shifted) > .content {
        max-width: 100%;
    }
    .admin-interface.change-list:not(.popup) #main.shifted > #nav-sidebar + .content,
    .admin-interface.change-form:not(.popup) #main.shifted > #nav-sidebar + .content {
        max-width: calc(100% - 360px);
    }
}

/* Hide the app element when all its models filtered-out (hidden) by quick-search. */
.admin-interface #nav-sidebar .module[class^="app-"]:has([class^="model-"][style="display: none;"]) {
    display: none;
}

.admin-interface #nav-sidebar .module[class^="app-"]:has([class^="model-"]:not([style="display: none;"])) {
    display: block !important;
}

/* /static/admin_interface/css/paginator.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
.admin-interface #changelist .changelist-footer .paginator {
    margin-top: -1px; /* merge 2 borders into 1 */
    line-height: 1.5em;
}

.admin-interface #changelist .changelist-footer .paginator a,
.admin-interface #changelist .changelist-footer .paginator a:link,
.admin-interface #changelist .changelist-footer .paginator a:visited,
.admin-interface #changelist .changelist-footer .paginator a[aria-current="page"],
.admin-interface #changelist .changelist-footer .paginator .this-page {
    padding: 7px 12px;
}

.admin-interface #changelist .changelist-footer .paginator a,
.admin-interface #changelist .changelist-footer .paginator a[aria-current="page"],
.admin-interface #changelist .changelist-footer .paginator .this-page {
    margin-left: 0px;
}

body.admin-interface #changelist .changelist-footer .paginator a.showall,
body.admin-interface #changelist .changelist-footer .paginator a.showall:link,
body.admin-interface #changelist .changelist-footer .paginator a.showall:visited {
    margin-left: 20px;
}

/* /static/admin_interface/css/object-tools.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
/* top-right buttons color on hover -> just a lighten grey */
@media (min-width:768px) {
    .admin-interface .object-tools {
        margin-top: -45px;
        width: 55%;
        float: right;
        display: flex;
        justify-content: flex-end;
        align-items: center;
        flex-wrap: wrap;
    }
}
@media (min-width:1024px) {
    .admin-interface .object-tools {
        width: 60%;
    }
}
@media (min-width:1280px) {
    .admin-interface .object-tools {
        width: 70%;
    }
}
.admin-interface .object-tools li {
    margin-bottom: 4px;
}
.admin-interface .object-tools li + li {
    margin-left: 6px;
}
.admin-interface .object-tools a {
    color: #FFFFFF;
    white-space: nowrap;
}
.admin-interface .object-tools a:focus,
.admin-interface .object-tools a:hover,
.admin-interface .object-tools li:focus a,
.admin-interface .object-tools li:hover a {
    background-color: #AAAAAA;
}

/* /static/admin_interface/css/recent-actions.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
.admin-interface.dashboard #content {
    width: auto;
    max-width: 600px;
    margin-right: 0;
    margin-left: 0;
}

.admin-interface.dashboard #content #recent-actions-module {
    display: none;
}

/* /static/admin_interface/css/rtl.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
[dir="rtl"] .admin-interface,
[dir="rtl"] .admin-interface * {
    font-family: 'Vazir', sans-serif !important;
}

[dir="rtl"] .admin-interface .main .toggle-nav-sidebar.sticky {
    left: auto !important;
    right: 0px !important;
    margin-right: 0px !important;
    margin-left: 10px;
    border: 1px solid #eaeaea !important;
    border-right: none !important;
    border-top-right-radius: 0px !important;
    border-bottom-right-radius: 0px !important;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
    box-shadow: -4px 2px 8px -2px #DBDBDB !important;
}

[dir="rtl"] .admin-interface #main.shifted > #toggle-nav-sidebar {
    right: 359px !important;
}

[dir="rtl"] .admin-interface #main > #nav-sidebar {
    margin-right: -360px !important;
    margin-left: 0px !important;
    right: -320px !important;
}

[dir="rtl"] .admin-interface #main.shifted > #nav-sidebar {
    border-left: 1px solid #eaeaea;
    margin-right: 0px !important;
    padding: 40px 0px 40px 40px !important;
}

[dir="rtl"] .admin-interface .paginator .this-page + a:not(.showall)  {
    margin-left: 0px;
}

[dir="rtl"] .admin-interface .paginator .this-page, .admin-interface .paginator a.end {
    margin-right: 0px;
}

/* /static/admin_interface/css/sticky-form-controls.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
/* sticky actions */

.admin-interface.sticky-actions #changelist .actions {
    display: flex;
    align-items: center;
    width: auto;
    background: var(--body-bg);
    border-top: none;
    border-bottom: 1px solid #EEEEEE;
    padding: 10px;
    line-height: 1.5rem;
    color: var(--body-quiet-color);
    position: sticky;
    top: 0;
    z-index: 1;
    margin-bottom: -1px;
}

/* sticky pagination */

.admin-interface.sticky-pagination.change-list #content-main {
    padding-bottom: 4.375rem;
}

.admin-interface.sticky-pagination.change-list #changelist .changelist-footer {
    width: 100%;
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 40;
    box-sizing: border-box;
    padding-left: 15px;
    padding-right: 15px;
    white-space: nowrap;
    text-overflow: ellipsis;
    background: var(--body-bg);
    border-radius: 0;
    border-top: 1px solid #EEEEEE !important;
    border-bottom: none;
    margin: 0;
}

.admin-interface.sticky-pagination.change-list.popup #changelist .changelist-footer {
    padding-left: 20px;
    padding-right: 20px;
}

@media (min-width:768px) {
    .admin-interface.sticky-pagination.change-list:not(.popup) #changelist .changelist-footer {
        padding-left: 30px;
        padding-right: 30px;
    }
}

@media (min-width:1024px) {
    .admin-interface.sticky-pagination.change-list:not(.popup) #changelist .changelist-footer {
        padding-left: 40px;
        padding-right: 40px;
    }
}

@media (min-width:1280px) {
    .admin-interface.sticky-pagination.change-list:not(.popup) #main.shifted > #nav-sidebar + .content #changelist .changelist-footer {
        width: calc(100% - 360px);
    }
}

/* sticky submit */

@media (min-width:768px) {
    .admin-interface.sticky-submit.change-form #content-main {
        padding-bottom: 4.375rem;
    }

    .admin-interface.sticky-submit.change-form .submit-row:last-of-type {
        width: 100%;
        position: fixed;
        bottom: 0;
        right: 0;
        z-index: 40;
        box-sizing: border-box;
        padding-left: 15px;
        padding-right: 15px;
        white-space: nowrap;
        text-overflow: ellipsis;
        border-radius: 0;
        border-top: 1px solid #EEEEEE;
        border-bottom: none !important;
        margin: 0;
    }

    .admin-interface.sticky-submit.change-form.popup .submit-row:last-of-type {
        padding-left: 20px;
        padding-right: 20px;
    }

    .admin-interface.sticky-submit.change-form:not(.popup) .submit-row:last-of-type {
        padding-left: 30px;
        padding-right: 30px;
    }
}

@media (min-width:1024px) {
    .admin-interface.sticky-submit.change-form:not(.popup) .submit-row:last-of-type {
        padding-left: 40px;
        padding-right: 40px;
    }
}

@media (min-width:1280px) {
    .admin-interface.sticky-submit.change-form:not(.popup) #main.shifted > #nav-sidebar + .content .submit-row:last-of-type {
        width: calc(100% - 359px);
    }
}

/* /static/admin_interface/css/tabbed-changeform.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
.admin-interface .tabbed-changeform-tabs {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: thin;
    padding-bottom: 15px;
}

@-moz-document url-prefix() {
    .admin-interface .tabbed-changeform-tabs {
        padding-bottom: 13px;
    }
}

.admin-interface .tabbed-changeform-tabs .tabbed-changeform-tablink {
    appearance: none;
    -webkit-appearance: none;
    border: 1px solid transparent;
    border-bottom: 1px solid var(--border-color);
    border-radius: var(--admin-interface-module-border-radius);
    border-bottom-left-radius: 0px;
    border-bottom-right-radius: 0px;
    flex-shrink: 0;
    flex-grow: 0;
    cursor: pointer;
    padding: 10px 15px;
    margin: 0;
    background-color: var(--admin-interface-module-header-text-color);
    color: var(--admin-interface-generic-link-color);
    font-size: 13px;
    font-weight: bold;
    outline: none !important;
}

.admin-interface .tabbed-changeform-tabs .tabbed-changeform-tablink + .tabbed-changeform-tablink {
    margin-left: -1px;
}

.admin-interface .tabbed-changeform-tabs .tabbed-changeform-tablink:hover {
    color: var(--admin-interface-generic-link-hover-color);
}

.admin-interface .tabbed-changeform-tabs .tabbed-changeform-tablink:focus {
    color: var(--admin-interface-generic-link-hover-color);
}

.admin-interface .tabbed-changeform-tabs .tabbed-changeform-tablink.active {
    border: 1px solid var(--border-color);
    border-bottom: 1px solid transparent;
    color: var(--admin-interface-generic-link-active-color);
}

.admin-interface .tabbed-changeform-tabs .tabbed-changeform-tablink.error {
    color: var(--error-fg) !important;
}

.admin-interface .tabbed-changeform-tabs-remaining-space {
    flex: 1;
    border-bottom: 1px solid var(--border-color);
}

.admin-interface .tabbed-changeform-tabcontent {
    display: none;
    padding: 1em 0;
}

.admin-interface .tabbed-changeform-tabcontent.active {
    display: block;
}

/* /static/admin_interface/css/widgets.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
.admin-interface a:not([role="button"], #header a, #nav-sidebar a, #content-main.app-list a, .object-tools a) {
    text-decoration: inherit;
}
.admin-interface a:not([role="button"], #header a, #nav-sidebar a, #content-main.app-list a, .object-tools a):hover,
.admin-interface a:not([role="button"], #header a, #nav-sidebar a, #content-main.app-list a, .object-tools a):focus {
    text-decoration: underline;
}

/* fix generic flex container */
.admin-interface .flex-container {
    width: 100%;
}
/* end-fix */

/* fix flex container for boolean fields */
.admin-interface .flex-container.checkbox-row {
    align-items: center;
}
.admin-interface .flex-container.checkbox-row label.vCheckboxLabel {
    margin-top: 0 !important;
    padding-left: 5px !important;
    padding-bottom: 0;
}
/* end-fix */

/* fix flex container for related-lookup (raw_id_fields) */
.admin-interface .flex-container:has(.vForeignKeyRawIdAdminField) {
    align-items: center;
}

.admin-interface .flex-container:has(.vForeignKeyRawIdAdminField) .related-lookup {
    margin-left: 12px;
}

.admin-interface .flex-container:has(.vForeignKeyRawIdAdminField) .related-lookup + * {
    margin-left: 8px;
}
/* end-fix */

/* fix flex container input fields height inheritance */
.admin-interface .flex-container label + input[type="text"],
.admin-interface .flex-container label + input[type="password"],
.admin-interface .flex-container label + input[type="email"],
.admin-interface .flex-container label + input[type="url"],
.admin-interface .flex-container label + input[type="number"],
.admin-interface .flex-container label + input[type="tel"] {
    height: 1.375em;
}
/* end-fix */

/* fix user reset password form */
.admin-interface #user_form #id_password p bdi::after {
    content: "";
    display: block;
}

.admin-interface #user_form #id_password a.button {
    display: inline-block;
    padding: 6px 12px;
    text-decoration: none !important;
}
/* end-fix */

/* fixed time widget header border radius */
.admin-interface .clockbox.module h2 {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}
/* end-fix */

/* fixed related widget and select2 */
/* begin fix issue #10 - Related widget broken in long tabular inline */
.admin-interface .related-widget-wrapper {
    display: flex;
    flex-wrap: nowrap;
    white-space: nowrap;
    max-width: 1000px;
    height: fit-content;
    gap: 0;
}
/* end fix */

/* fix related widget links icons size and vertical alignment */
.admin-interface .related-widget-wrapper .related-widget-wrapper-link {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 28px;
    height: 32px;
}
.admin-interface .related-widget-wrapper .related-widget-wrapper-link:first-of-type {
    margin-left: 8px;
}
.admin-interface .related-widget-wrapper .related-widget-wrapper-link:hover {
    filter: brightness(80%);
}
.admin-interface .related-widget-wrapper .related-widget-wrapper-link img {
    width: 16px;
    height: 16px;
}
/* end fix */

/* fix related widget links add button position on many-to-many selector */
.admin-interface .related-widget-wrapper .related-widget-wrapper-link:has(+ .selector) {
    order: 2;
    align-self: flex-start;
    margin-top: 8px;
}
/* end fix */

.admin-interface .related-widget-wrapper .selector-chooser {
    border-radius: 15px;
}

/* fix selector chooser slide transition */
.admin-interface .related-widget-wrapper .selector-chooser .selector-add,
.admin-interface .related-widget-wrapper .selector-chooser .selector-remove {
    transition: none;
}
/* end fix */

/* fix related widget links margin from select2 (autocomplete_fields) */
/*
.admin-interface .related-widget-wrapper .select2-container + .related-widget-wrapper-link {
    margin-left: 12px !important;
}
*/
/* end fix */

/* improve responsive selector */

/* fix [stacked, not-stacked] equalize horizontal and vertical select padding for selector */
.admin-interface .selector .selector-available select,
.admin-interface .selector .selector-chosen select {
    padding: 7px 10px;
    display: block;
}

/* fix [stacked, not-stacked] select options text overflow */
.admin-interface .selector .selector-available select option,
.admin-interface .selector .selector-chosen select option {
    color: var(--body-fg) !important;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* fix [not-stacked] equalize selectors height by adding the height of the .selector-available filter-bar */
.admin-interface .selector:not(.stacked) .selector-chosen select {
    height: calc(46px + 17.2em) !important;
}

/* fix selected options color */
.admin-interface .selector select option:checked {
    color: inherit;
}

@media (max-width: 767px) {
    /* fixed responsive widgets */
    .admin-interface .aligned.collapsed .form-row {
        display: none;
    }

    .admin-interface .aligned .form-row > div {
        display: flex;
        width: 100%;
        max-width: 100vw;
        flex-direction: column;
        align-items: flex-start;
    }

    .admin-interface .aligned .form-row .help {
        margin-left: 0;
    }

    .admin-interface .aligned .form-row .checkbox-row label {
        margin: 10px 0 0 0;
        padding: 0;
    }

    .admin-interface .aligned .form-row input[type="file"],
    .admin-interface .aligned .form-row input[type="text"],
    .admin-interface .aligned .form-row input[type="email"] {
        width: 100%;
    }

    /* fix textarea horizontal scroll on Firefox */
    .admin-interface .aligned .form-row textarea {
        width: 100% !important;
        flex: 0 1 auto;
    }

    .admin-interface .aligned .form-row .datetime input[type="text"] {
        width: 50%;
    }

    .admin-interface .aligned .form-row span + .file-upload {
        margin-top: 10px;
    }

    .admin-interface .aligned .form-row .file-upload input[type="file"] {
        margin-top: 5px;
    }
}

/* /static/admin_interface/css/third-party/ckeditor.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
/*
ckeditor + light theme
https://github.com/Ikimea/ckeditor-light-theme
*/

.admin-interface .cke {
    border: none;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

.admin-interface .cke_inner,
.admin-interface .cke_wysiwyg_frame {
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
}

.admin-interface .cke_inner {
    border: 1px solid #CCCCCC;
}

.admin-interface .cke_chrome {
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.admin-interface .cke_top {
    background: #f8f8f8;
    border-top: none;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    border-bottom: 1px solid #EEEEEE;
    padding-left: 10px;
    padding-right: 10px;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.admin-interface .cke_toolgroup {
    background: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.admin-interface .cke_bottom {
    background: #f8f8f8;
    border-top: 1px solid #EEEEEE;

    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;

    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.admin-interface .cke_source {
    padding: 13px 15px;
    box-sizing: border-box;
}

.admin-interface a.cke_button,
.admin-interface a.cke_button:active,
.admin-interface a.cke_button:hover,
.admin-interface a.cke_button:focus {
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    background-image: none;
    border-radius: 4px;
    border: none;
}

.admin-interface a.cke_button:active,
.admin-interface a.cke_button:hover,
.admin-interface a.cke_button:focus {
    background-color: #E8E8E8 !important;
}

.admin-interface a.cke_button.cke_button_on {
    background-color: #CCCCCC !important;
}

.admin-interface a.cke_button.cke_button_disabled {
    background-color: transparent !important;
}

.admin-interface .cke_resizer {
    border-color: transparent #666666 transparent transparent;
}

@media (max-width: 767px){

    .admin-interface .django-ckeditor-widget,
    .admin-interface .cke {
        width: 100% !important;
    }

    .admin-interface .cke_top {
        padding-left: 10px;
        padding-right: 10px;
    }

    .admin-interface .cke_toolbar {
        height: auto;
    }

    .admin-interface .cke_contents {
        height: auto;
    }

    .admin-interface .tabular .django-ckeditor-widget,
    .admin-interface .tabular .cke {
        width: 400px !important;
    }

    .admin-interface .tabular .cke_contents {
        height: 90px !important;
    }
}

/* /static/admin_interface/css/third-party/import-export.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
/* Fix left/right scrolling broken with django-import-export #165 */
.admin-interface table.import-preview {
    display: block;
    width: 100%;
    max-width: 100%;
    overflow: auto;
}

/* /static/admin_interface/css/third-party/json-widget.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
/*
django-json-widget support
https://github.com/jmrivas86/django-json-widget
*/

.admin-interface div.jsoneditor {
    border: 1px solid var(--admin-interface-module-background-color);
    border-radius: var(--admin-interface-jsoneditor-border-radius);
    overflow: var(--admin-interface-jsoneditor-overflow);
}

.admin-interface div.jsoneditor-menu {
    background-color: var(--admin-interface-module-background-color);
    border-bottom: 1px solid var(--admin-interface-module-background-color);
}

.admin-interface div.jsoneditor-menu a.jsoneditor-poweredBy {
    color: var(--admin-interface-module-link-color);
}

.admin-interface div.jsoneditor-contextmenu ul li button.jsoneditor-selected,
.admin-interface div.jsoneditor-contextmenu ul li button.jsoneditor-selected:focus,
.admin-interface div.jsoneditor-contextmenu ul li button.jsoneditor-selected:hover {
    background-color: var(--admin-interface-module-background-selected-color);
    color: #000000;
    font-weight: bold;
}

/* /static/admin_interface/css/third-party/modeltranslation.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
/*
django-modeltranslation support
https://github.com/deschler/django-modeltranslation
*/

.admin-interface #content h1 select {
    text-transform: uppercase;
    margin-left: 15px;
    min-width: 50px;
}

.admin-interface .ui-tabs .ui-tabs-panel[id^=tab_id_] {
    border: none;
    border-top: 1px solid #eeeeee;
    padding: 0;
    margin-bottom: 0;
}

/* /static/admin_interface/css/third-party/rangefilter.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
.admin-interface #changelist-filter .admindatefilter {
    border-bottom: 1px solid var(--hairline-color);
}

.admin-interface #changelist-filter .admindatefilter .button,
.admin-interface #changelist-filter .admindatefilter .submit-row input,
.admin-interface #changelist-filter .admindatefilter a.button,
.admin-interface #changelist-filter .admindatefilter input[type="submit"],
.admin-interface #changelist-filter .admindatefilter input[type="button"],
.admin-interface #changelist-filter .admindatefilter input[type="reset"] {
    background: var(--admin-interface-module-background-color);
    color: var(--admin-interface-module-link-color);
    padding: 6px 10px;
    font-size: 12px;
    margin-right: 4px;
}

.admin-interface #changelist-filter .admindatefilter .button:hover,
.admin-interface #changelist-filter .admindatefilter .submit-row input:hover,
.admin-interface #changelist-filter .admindatefilter a.button:hover,
.admin-interface #changelist-filter .admindatefilter input[type="submit"]:hover,
.admin-interface #changelist-filter .admindatefilter input[type="button"]:hover,
.admin-interface #changelist-filter .admindatefilter input[type="reset"]:hover {
    color: var(--admin-interface-module-link-hover-color);
}

/* /static/admin_interface/css/third-party/sorl-thumbnail.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
/*
sorl-thumbnail - improved AdminImageMixin widget layout
https://github.com/mariocesar/sorl-thumbnail
*/

.admin-interface a.thumbnail + a {
    font-weight: normal;
}

.admin-interface a.thumbnail + a + input[type="checkbox"] {
    margin: 10px 0px 10px 18px;
}

@media (max-width: 767px){
    .admin-interface a.thumbnail + a {
        display: block;
        margin-top: 3px;
        white-space: pre-wrap;
        word-break: break-word;
    }
    .admin-interface a.thumbnail + a + input[type="checkbox"]  {
        margin: 15px 0;
    }
}

.admin-interface a.thumbnail ~ label {
    color: #333;
    font-size: 11px;
    display: inline;
    float: none;
    margin-left: 2px;
}

.admin-interface.change-form div[style="float:left"] {
    font-size: 11px;
    font-weight: bold;
    color: #666;
    margin-bottom: 5px;
}

@media (max-width: 767px){
    .admin-interface.change-form div[style="float:left"] {
        font-size: 12px;
        width: 100%;
    }
}

.admin-interface .aligned .form-row a.thumbnail ~ input[type="file"] {
    margin-top: 0px;
}

@media (max-width:767px){
    .admin-interface .aligned .form-row a.thumbnail ~ input[type="file"] {
        width: auto;
        padding: 0px;
        display: block;
        margin-top: 3px;
    }

    .admin-interface div[style="float:left"] {
        margin-bottom: 0px;
    }

    .admin-interface div[style="float:left"] + div.help {
        margin-top: 0px !important;
    }
}

/* /static/admin_interface/css/third-party/streamfield.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
/*
django-streamfield support
https://github.com/raagin/django-streamfield/
*/

.admin-interface .form-row.field-stream {
    margin: 0;
    padding: 0;
    border-bottom: none;
}

.admin-interface .form-row.field-stream label[for=id_stream] {
    display: none;
}

.admin-interface .streamfield_app {
    clear: both;
    width: 100%;
}

.admin-interface .streamfield_app .stream-help-text {
    margin-bottom: 15px;
    display: flex;
    flex-direction: column;
    clear: both;
}

.admin-interface .streamfield_app .stream-help-text .stream-help-text__title {
    align-self: flex-end;
    user-select: none;
    padding: 8px;
    padding-right: 0;
    color: var(--admin-interface-generic-link-color);
}

.admin-interface .streamfield_app .stream-help-text .stream-help-text__title:hover {
    color: var(--admin-interface-generic-link-hover-color);
}

.admin-interface .streamfield_app .stream-help-text .stream-help-text__content {
    background: var(--admin-interface-module-background-selected-color);
    border-radius: var(--admin-interface-module-border-radius);
    border: 1px solid rgba(0,0,0,0.1);
    padding: 15px;
}

.admin-interface .streamfield_app .stream-help-text .stream-help-text__content > ul {
    margin: 0;
    padding: 0;
}

.admin-interface .streamfield_app .collapse-handlers .collapse-handler {
    user-select: none;
    padding: 8px;
    padding-right: 0;
    margin: 0 0 5px 0;
    color: var(--admin-interface-generic-link-color);
    text-decoration: none;
}

.admin-interface .streamfield_app .collapse-handlers .collapse-handler:hover {
    color: var(--admin-interface-generic-link-hover-color);
    text-decoration: underline;
}

.admin-interface .streamfield_app .stream-model-block {
    position: relative;
    box-shadow: none;
    border: 1px solid rgba(0,0,0,0.1);
    border-radius: var(--admin-interface-module-border-radius);
    overflow: hidden;
}

.admin-interface .streamfield_app .stream-model-block,
.admin-interface .streamfield_app .streamfield-models.collapsed .stream-model-block {
    margin-bottom: 10px;
}

.admin-interface .streamfield_app .stream-model-block .streamblock__block__title {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    margin: 0;
    padding: 10px 10px 10px 20px;
}

.admin-interface .streamfield_app .stream-model-block .streamblock__block__title .streamblock__block__model_title {
    white-space: nowrap;
    flex-shrink: 0;
    margin-right: 20px;
}

.admin-interface .streamfield_app .stream-model-block .streamblock__block__title span {
    font-size: 18px;
}

.admin-interface .streamfield_app .stream-model-block .streamblock__block__title .streamblock__block-handle {
    position: static;
    right: 0;
    top: 0;
    color: var(--admin-interface-generic-link-color);
}

.admin-interface .streamfield_app .stream-model-block .streamblock__block__title .streamblock__block-handle:hover {
    color: var(--admin-interface-generic-link-hover-color);
}

.admin-interface .streamfield_app .stream-model-block .streamblock__block__title .streamblock__block-handle {
    display: flex;
    justify-content: center;
    align-items: center;
}

.admin-interface .streamfield_app .stream-model-block .streamblock__block__title .streamblock__block-handle .block-move,
.admin-interface .streamfield_app .stream-model-block .streamblock__block__title .streamblock__block-handle .block-delete {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 40px;
    height: 40px;
    font-weight: normal;
    background: none;
    flex-shrink: 0;
    color: inherit;
    font-size: 16px;
}

.admin-interface .streamfield_app .stream-model-block .streamblock__block__title .streamblock__block-handle .block-move {
    cursor: move; /* fallback if grab cursor is unsupported */
    cursor: grab;
    cursor: -moz-grab;
    cursor: -webkit-grab;
}

.admin-interface .streamfield_app .stream-model-block .streamblock__block__title .streamblock__block-handle .block-move:before {
    content: "↕";

    display: block;
}

.admin-interface .streamfield_app .stream-model-block .streamblock__block__title .streamblock__block-handle .block-delete:before {
    content: "×";
    display: block;
    font-size: 18px;
}

.admin-interface .streamfield_app .stream-model-block .streamblock__block__subtitle {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
    flex-shrink: 1;
    margin-right: 10px;
}

.admin-interface .streamfield_app .block-fields > div {
    margin-bottom: 15px;
}

/* don't inherit form .aligned ul style */
.admin-interface .streamfield_app .block-fields > div ul {
    margin-left: 0px;
    padding-left: 0px;
}

.admin-interface .streamfield_app .stream-model-block .stream-model-block__content {
    background-color: #f8f8f8;
    padding: 20px;
}

.admin-interface .streamfield_app .stream-model-block .stream-model-block__content.no-subblocks.abstract-block  {
    display: none;
}

.admin-interface .streamfield_app .stream-model-block .add_here {
    display: none !important;
}

.admin-interface .streamfield_app .stream-insert-new-block {
    margin-bottom: 20px;
}

.admin-interface .streamfield_app .stream-insert-new-block .add-new-block-button {
    color: var(--admin-interface-generic-link-color);
    text-decoration: none;
}

.admin-interface .streamfield_app .stream-insert-new-block .add-new-block-button:hover {
    color: var(--admin-interface-generic-link-hover-color);
    text-decoration: underline;
}

.admin-interface .streamfield_app .stream-insert-new-block ul {
    display: block;
    width: 100%;
    margin: 10px 0 0 0;
    padding: 0;
    user-select: none;
}

.admin-interface .streamfield_app .stream-insert-new-block ul li {
    display: inline-block;
    font-size: 12px;
    margin: 0;
    padding: 0;
}

.admin-interface .streamfield_app .stream-btn {
    font-weight: normal;
    text-decoration: none;
    background-color: var(--admin-interface-generic-link-color);
    padding: 6px 12px;
    border-radius: 4px;
}

.admin-interface .streamfield_app .stream-btn:hover {
    text-decoration: none;
    background-color: var(--admin-interface-generic-link-hover-color);
}

.admin-interface .streamfield_app .stream-insert-new-block ul li .stream-btn {
    margin-top: 5px;
    margin-left: 5px;
}

/* /static/admin_interface/css/third-party/tinymce.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
.admin-interface textarea.tinymce ~ p.help {
    margin-top:5px !important;
}

/* /static/ui/css/admin-customizations.css */
/*
 * DCOps admin customizations for django-admin-interface.
 */

body {
    overflow: scroll;
    overflow-x: auto;
}

/* --- Selected module background with transparency --- */
.admin-interface .module th.selected,
.admin-interface .module td.selected,
.admin-interface .module tr.selected td,
.admin-interface .module tr.selected th {
    background-color: #E0E6F880;
}

/* --- Breadcrumbs: show "DCOps" instead of "Home" --- */
.breadcrumbs a[href="/"] {
    font-size: 0;
}
.breadcrumbs a[href="/"]:before {
    content: "DCOps";
    font-size: 0.8125rem;
}

/* --- Checkboxes: slightly larger for easier targeting --- */
body input[type="checkbox"],
body .form-row label input[type="checkbox"] {
    width: 18px;
    height: 18px;
    vertical-align: middle;
}

/* --- Admin-header mute icon-button (task #5700) ---
   Injected by notifications-badge.js into #user-tools, after the
   environment label. Icon-only toggle for the per-session mute state. */
.dcops-admin-mute {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    padding: 0;
    margin: 0 0.5rem 0 0;
    border: 1px solid rgba(255, 255, 255, 0.4);
    border-radius: 50%;
    background: transparent;
    color: inherit;
    cursor: pointer;
    vertical-align: middle;
    line-height: 1;
    transition: background 150ms ease, border-color 150ms ease;
}
.dcops-admin-mute:hover {
    background: rgba(255, 255, 255, 0.18);
    border-color: rgba(255, 255, 255, 0.7);
}
.dcops-admin-mute:focus-visible {
    outline: 2px solid #fff;
    outline-offset: 1px;
}
.dcops-admin-mute.is-muted {
    background: rgba(255, 255, 255, 0.22);
    border-color: rgba(255, 255, 255, 0.7);
}
.dcops-admin-mute svg {
    width: 16px;
    height: 16px;
    display: block;
}

/* --- Admin-header sound icon-button (task #7900) ---
   Pre-rendered in admin/base_site.html next to the mute button and bound
   by spa-audio.js. Global mute for toast/scan audio; preference lives in
   localStorage (client-side, unlike the notification mute which is a
   server-persisted session flag). */
.dcops-admin-sound {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    padding: 0;
    margin: 0 0.5rem 0 0;
    border: 1px solid rgba(255, 255, 255, 0.4);
    border-radius: 50%;
    background: transparent;
    color: inherit;
    cursor: pointer;
    vertical-align: middle;
    line-height: 1;
    transition: background 150ms ease, border-color 150ms ease;
}
.dcops-admin-sound:hover {
    background: rgba(255, 255, 255, 0.18);
    border-color: rgba(255, 255, 255, 0.7);
}
.dcops-admin-sound:focus-visible {
    outline: 2px solid #fff;
    outline-offset: 1px;
}
.dcops-admin-sound.is-off {
    background: rgba(255, 255, 255, 0.22);
    border-color: rgba(255, 255, 255, 0.7);
}
.dcops-admin-sound svg {
    width: 16px;
    height: 16px;
    display: block;
}

/* --- Unread notifications badge (task #5500) ---
   Used by the admin index buttons, the admin sidebar nav, and the
   employee nav, so it lives here in the stylesheet loaded on every
   page that renders the badge. */
.notif-badge {
    display: inline-block;
    min-width: 1.25em;
    padding: 0 0.4em;
    margin-left: 0.4em;
    border-radius: 999px;
    background: var(--dcops-error, #d9534f);
    color: #fff;
    font-size: 0.75em;
    font-weight: bold;
    text-align: center;
    line-height: 1.5em;
    vertical-align: middle;
}
.notif-badge[hidden] { display: none; }

/* --- Sidebar action buttons --- */
.dcops-sidebar-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.35rem;
    padding: 0.5rem;
    margin-bottom: 1rem;
}
.dcops-sidebar-actions a,
.dcops-sidebar-actions a:link,
.dcops-sidebar-actions a:visited {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.35rem 0.4rem;
    font-size: 0.75rem;
    font-weight: bold;
    text-decoration: none;
    border-radius: 4px;
    background: var(--admin-interface-save-button-background-color, var(--primary, #334FB4));
    color: var(--admin-interface-save-button-text-color, #fff);
    white-space: nowrap;
}
.dcops-sidebar-actions a:hover {
    background: var(--admin-interface-save-button-background-hover-color, var(--primary, #2A3D8F));
    color: var(--admin-interface-save-button-text-color, #fff);
}

/* --- Sidebar toggle: minimal style --- */
.admin-interface #toggle-nav-sidebar {
    border-color: var(--hairline-color);
    background: transparent;
    box-shadow: none;
}

/* --- Sidebar module rows: no right-side border radius --- */
.admin-interface #nav-sidebar .module tr th {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

/* --- Version label in admin header --- */
.dcops-header-meta {
    display: inline-flex;
    align-items: center;
    margin-left: 0.75rem;
    vertical-align: middle;
}
.dcops-version {
    font-size: 0.7rem;
    opacity: 0.6;
}

/* --- Mobile header layout (task #4600) ---
   Below 768px, Django admin's responsive.css stacks #branding above
   #user-tools, and admin-interface's header.css re-enables the <br> tags
   inside #user-tools to force an additional vertical stack (env label /
   welcome / links on separate lines). That eats vertical space while
   leaving the right side of each line empty.
   We strip the forced line breaks and inline the logout form, so content
   flows horizontally and wraps only when it actually runs out of room.
   Keeping plain inline flow (not flex) preserves tight punctuation —
   "Welcome, Admin." and "… / Log out" stay on the same visual unit. */
@media (max-width: 768px) {
    .admin-interface #header #user-tools {
        line-height: 1.9;
        /* Override admin-interface's white-space: nowrap so long lines wrap. */
        white-space: normal;
    }
    .admin-interface #header #user-tools br {
        display: none !important;
    }
    .admin-interface #header #user-tools #logout-form {
        display: inline;
    }
    .admin-interface #header #user-tools .dcops-admin-mute,
    .admin-interface #header #user-tools .dcops-admin-sound {
        margin: 0 0.25rem 0 0;
    }
    .admin-interface #header #user-tools .dcops-admin-sound {
        margin-right: 0.5rem;
    }
}

/* --- Employee navigation bar --- */
.dcops-employee-nav {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0.35rem;
    max-width: 420px;
    margin: 0 auto 1rem;
    padding: 0 0.5rem;
}
.dcops-employee-nav a,
.dcops-employee-nav a:link,
.dcops-employee-nav a:visited {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 0.35rem 0.4rem;
    font-size: 0.8rem;
    font-weight: bold;
    text-decoration: none;
    border-radius: 4px;
    background: var(--admin-interface-save-button-background-color, var(--primary, #334FB4));
    color: var(--admin-interface-save-button-text-color, #fff);
    white-space: nowrap;
}
.dcops-employee-nav a:hover {
    background: var(--admin-interface-save-button-background-hover-color, var(--primary, #2A3D8F));
    color: var(--admin-interface-save-button-text-color, #fff);
}
.dcops-employee-nav a.active,
.dcops-employee-nav a.active:link,
.dcops-employee-nav a.active:visited {
    opacity: 0.6;
    pointer-events: none;
    cursor: default;
}

/*
 * --- Dark mode fix ---
 *
 * admin-interface overrides Django's dark-mode CSS variables with light values
 * inside @media (prefers-color-scheme: dark), effectively killing dark mode.
 * This restores dark mode for both the OS-preference media query
 * and the manual toggle (data-theme="dark") by using higher specificity.
 */

/* Manual toggle: data-theme="dark" */
html[data-theme="dark"] .admin-interface {
    --primary: #264b5d;
    --primary-fg: #f7f7f7;
    --body-fg: #eeeeee;
    --body-bg: #121212;
    --body-quiet-color: #d0d0d0;
    --body-medium-color: #e0e0e0;
    --body-loud-color: #ffffff;
    --breadcrumbs-link-fg: #e0e0e0;
    --breadcrumbs-bg: var(--primary);
    --link-fg: #81d4fa;
    --link-hover-color: #4ac1f7;
    --link-selected-fg: #6f94c6;
    --hairline-color: #272727;
    --border-color: #353535;
    --error-fg: #e35f5f;
    --message-success-bg: #006b1b;
    --message-warning-bg: #583305;
    --message-error-bg: #570808;
    --darkened-bg: #212121;
    --selected-bg: #1b1b1b;
    --selected-row: #00363a;
    --close-button-bg: #333333;
    --close-button-hover-bg: #666666;
    --button-fg: #fff;
    --button-bg: var(--primary);
    --button-hover-bg: #609ab6;
    --default-button-bg: var(--secondary);
    --default-button-hover-bg: #205067;
    --object-tools-fg: var(--button-fg);
    --object-tools-bg: var(--close-button-bg);
    --object-tools-hover-bg: var(--close-button-hover-bg);
    color-scheme: dark;
}

/* OS preference: auto mode */
/* --- Header logo (B&W source, re-tinted via filter) ---
   Production default: pure white (matches the previous inline style).
   Dev variant (.--dev) approximates #f39c12 amber and replaces the old
   "Development" text pill — applied when dcops_show_env_label (= DEBUG). */
.dcops-header-logo {
    height: 22px;
    filter: invert(1) brightness(2);
}
.dcops-header-logo--dev {
    filter: invert(72%) sepia(71%) saturate(1044%) hue-rotate(353deg) brightness(99%) contrast(94%);
}

@media (prefers-color-scheme: dark) {
    html:not([data-theme="light"]) .admin-interface {
        --primary: #264b5d;
        --primary-fg: #f7f7f7;
        --body-fg: #eeeeee;
        --body-bg: #121212;
        --body-quiet-color: #d0d0d0;
        --body-medium-color: #e0e0e0;
        --body-loud-color: #ffffff;
        --breadcrumbs-link-fg: #e0e0e0;
        --breadcrumbs-bg: var(--primary);
        --link-fg: #81d4fa;
        --link-hover-color: #4ac1f7;
        --link-selected-fg: #6f94c6;
        --hairline-color: #272727;
        --border-color: #353535;
        --error-fg: #e35f5f;
        --message-success-bg: #006b1b;
        --message-warning-bg: #583305;
        --message-error-bg: #570808;
        --darkened-bg: #212121;
        --selected-bg: #1b1b1b;
        --selected-row: #00363a;
        --close-button-bg: #333333;
        --close-button-hover-bg: #666666;
        --button-fg: #fff;
        --button-bg: var(--primary);
        --button-hover-bg: #609ab6;
        --default-button-bg: var(--secondary);
        --default-button-hover-bg: #205067;
        --object-tools-fg: var(--button-fg);
        --object-tools-bg: var(--close-button-bg);
        --object-tools-hover-bg: var(--close-button-hover-bg);
        color-scheme: dark;
    }
}

/* inline <style> */

  /* Hide the sidebar and its toggle for employee users */
  #nav-sidebar, #toggle-nav-sidebar { display: none !important; }
  .main.shifted { padding-left: 0 !important; }

/* /static/admin/css/login.css */
/* LOGIN FORM */

.login {
    background: var(--darkened-bg);
    height: auto;
}

.login #header {
    height: auto;
    padding: 15px 16px;
    justify-content: center;
}

.login #header h1 {
    font-size: 1.125rem;
    margin: 0;
}

.login #header h1 a {
    color: var(--header-link-color);
}

.login #content {
    padding: 20px;
}

.login #container {
    background: var(--body-bg);
    border: 1px solid var(--hairline-color);
    border-radius: 4px;
    overflow: hidden;
    width: 28em;
    min-width: 300px;
    margin: 100px auto;
    height: auto;
}

.login .form-row {
    padding: 4px 0;
}

.login .form-row label {
    display: block;
    line-height: 2em;
}

.login .form-row #id_username, .login .form-row #id_password {
    padding: 8px;
    width: 100%;
    box-sizing: border-box;
}

.login .submit-row {
    padding: 1em 0 0 0;
    margin: 0;
    text-align: center;
}

.login .password-reset-link {
    text-align: center;
}

/* /static/ui/css/qr-login.css */
/* Theme toggle for the login page */
button.theme-toggle {
    position: absolute;
    right: 5px;
    top: 5px;
    transform: scale(.75);
    transform-origin: top right;
}
button.theme-toggle svg {
    color: transparent !important;
}

/* --- QR login hint --- */
.qr-login-hint {
  clear: both;
  text-align: center;
  margin-top: 1.5em;
  padding-top: 1.5em;
  border-top: 1px solid var(--hairline-color, #ddd);
  color: var(--body-quiet-color, #666);
  font-size: 0.875em;
}
.qr-login-hint strong {
  display: block;
  margin-bottom: 0.25em;
  color: var(--body-fg, #333);
  font-size: 1em;
}

/* Hide version from header on login page */
body.login .dcops-header-meta {
  display: none;
}

/* --- Version label below login card --- */
.dcops-login-version {
  text-align: center;
  padding-top: 1em;
  color: var(--body-quiet-color, #999);
  font-size: 0.75em;
}

/* Show it below the login box */
.dcops-login-version {
    margin-bottom: -40px;;
}
body.admin-interface #footer {
    display: block !important;
}
body.login #container {
    overflow: visible;
}
body.admin-interface.login #content {
    padding-bottom: 10px !important;
}

/* /static/admin/css/responsive.css */
/* Tablets */

input[type="submit"], button {
    -webkit-appearance: none;
    appearance: none;
}

@media (max-width: 1024px) {
    /* Basic */

    html {
        -webkit-text-size-adjust: 100%;
    }

    td, th {
        padding: 10px;
        font-size: 0.875rem;
    }

    .small {
        font-size: 0.75rem;
    }

    /* Layout */

    #container {
        min-width: 0;
    }

    #content {
        padding: 15px 20px 20px;
    }

    div.breadcrumbs {
        padding: 10px 30px;
    }

    /* Header */

    #header {
        flex-direction: column;
        padding: 15px 30px;
        justify-content: flex-start;
    }

    #site-name {
        margin: 0 0 8px;
        line-height: 1.2;
    }

    #user-tools {
        margin: 0;
        font-weight: 400;
        line-height: 1.85;
        text-align: left;
    }

    #user-tools a {
        display: inline-block;
        line-height: 1.4;
    }

    /* Dashboard */

    .dashboard #content {
        width: auto;
    }

    #content-related {
        margin-right: -290px;
    }

    .colSM #content-related {
        margin-left: -290px;
    }

    .colMS {
        margin-right: 290px;
    }

    .colSM {
        margin-left: 290px;
    }

    .dashboard .module table td a {
        padding-right: 0;
    }

    td .changelink, td .addlink {
        font-size: 0.8125rem;
    }

    /* Changelist */

    #toolbar {
        border: none;
        padding: 15px;
    }

    #changelist-search > div {
        display: flex;
        flex-wrap: nowrap;
        max-width: 480px;
    }

    #changelist-search label {
        line-height: 1.375rem;
    }

    #toolbar form #searchbar {
        flex: 1 0 auto;
        width: 0;
        height: 1.375rem;
        margin: 0 10px 0 6px;
    }

    #toolbar form input[type=submit] {
        flex: 0 1 auto;
    }

    #changelist-search .quiet {
        width: 0;
        flex: 1 0 auto;
        margin: 5px 0 0 25px;
    }

    #changelist .actions {
        display: flex;
        flex-wrap: wrap;
        padding: 15px 0;
    }

    #changelist .actions label {
        display: flex;
    }

    #changelist .actions select {
        background: var(--body-bg);
    }

    #changelist .actions .button {
        min-width: 48px;
        margin: 0 10px;
    }

    #changelist .actions span.all,
    #changelist .actions span.clear,
    #changelist .actions span.question,
    #changelist .actions span.action-counter {
        font-size: 0.6875rem;
        margin: 0 10px 0 0;
    }

    #changelist-filter {
        flex-basis: 200px;
    }

    .change-list .filtered .results,
    .change-list .filtered .paginator,
    .filtered #toolbar,
    .filtered .actions,

    #changelist .paginator {
        border-top-color: var(--hairline-color); /* XXX Is this used at all? */
    }

    #changelist .results + .paginator {
        border-top: none;
    }

    /* Forms */

    label {
        font-size: 1rem;
    }

    /*
    Minifiers remove the default (text) "type" attribute from "input" HTML
    tags. Add input:not([type]) to make the CSS stylesheet work the same.
    */
    .form-row input:not([type]),
    .form-row input[type=text],
    .form-row input[type=password],
    .form-row input[type=email],
    .form-row input[type=url],
    .form-row input[type=tel],
    .form-row input[type=number],
    .form-row textarea,
    .form-row select,
    .form-row .vTextField {
        box-sizing: border-box;
        margin: 0;
        padding: 6px 8px;
        min-height: 2.25rem;
        font-size: 1rem;
    }

    .form-row select {
        height: 2.25rem;
    }

    .form-row select[multiple] {
        height: auto;
        min-height: 0;
    }

    fieldset .fieldBox + .fieldBox {
        margin-top: 10px;
        padding-top: 10px;
        border-top: 1px solid var(--hairline-color);
    }

    textarea {
        max-width: 100%;
        max-height: 120px;
    }

    .aligned label {
        padding-top: 6px;
    }

    .aligned .related-lookup,
    .aligned .datetimeshortcuts,
    .aligned .related-lookup + strong {
        align-self: center;
        margin-left: 15px;
    }

    form .aligned div.radiolist {
        margin-left: 2px;
    }

    .submit-row {
        padding: 8px;
    }

    .submit-row a.deletelink {
        padding: 10px 7px;
    }

    .button, input[type=submit], input[type=button], .submit-row input, a.button {
        padding: 7px;
    }

    /* Selector */

    .selector {
        display: flex;
        width: 100%;
    }

    .selector .selector-filter {
        display: flex;
        align-items: center;
    }

    .selector .selector-filter input {
        width: 100%;
        min-height: 0;
        flex: 1 1;
    }

    .selector-available, .selector-chosen {
        width: auto;
        flex: 1 1;
        display: flex;
        flex-direction: column;
    }

    .selector select {
        width: 100%;
        flex: 1 0 auto;
        margin-bottom: 5px;
    }

    .selector-chooseall, .selector-clearall {
        align-self: center;
    }

    .stacked {
        flex-direction: column;
        max-width: 480px;
    }

    .stacked > * {
        flex: 0 1 auto;
    }

    .stacked select {
        margin-bottom: 0;
    }

    .stacked .selector-available, .stacked .selector-chosen {
        width: auto;
    }

    .stacked ul.selector-chooser {
        padding: 0 2px;
        transform: none;
    }

    .stacked .selector-chooser li {
        padding: 3px;
    }

    .help-tooltip, .selector .help-icon {
        display: none;
    }

    .datetime input {
        width: 50%;
        max-width: 120px;
    }

    .datetime span {
        font-size: 0.8125rem;
    }

    .datetime .timezonewarning {
        display: block;
        font-size: 0.6875rem;
        color: var(--body-quiet-color);
    }

    .datetimeshortcuts {
        color: var(--border-color); /* XXX Redundant, .datetime span also sets #ccc */
    }

    .form-row .datetime input.vDateField, .form-row .datetime input.vTimeField {
        width: 75%;
    }

    .inline-group {
        overflow: auto;
    }

    /* Messages */

    ul.messagelist li {
        padding-left: 55px;
        background-position: 30px 12px;
    }

    ul.messagelist li.error {
        background-position: 30px 12px;
    }

    ul.messagelist li.warning {
        background-position: 30px 14px;
    }

    /* Login */

    .login #header {
        padding: 15px 20px;
    }

    .login #site-name {
        margin: 0;
    }

    /* GIS */

    div.olMap {
        max-width: calc(100vw - 30px);
        max-height: 300px;
    }

    .olMap + .clear_features {
        display: block;
        margin-top: 10px;
    }

    /* Docs */

    .module table.xfull {
        width: 100%;
    }

    pre.literal-block {
        overflow: auto;
    }
}

/* Mobile */

@media (max-width: 767px) {
    /* Layout */

    #header, #content {
        padding: 15px;
    }

    div.breadcrumbs {
        padding: 10px 15px;
    }

    /* Dashboard */

    .colMS, .colSM {
        margin: 0;
    }

    #content-related, .colSM #content-related {
        width: 100%;
        margin: 0;
    }

    #content-related .module {
        margin-bottom: 0;
    }

    #content-related .module h2 {
        padding: 10px 15px;
        font-size: 1rem;
    }

    /* Changelist */

    #changelist {
        align-items: stretch;
        flex-direction: column;
    }

    #toolbar {
        padding: 10px;
    }

    #changelist-filter {
        margin-left: 0;
    }

    #changelist .actions label {
        flex: 1 1;
    }

    #changelist .actions select {
        flex: 1 0;
        width: 100%;
    }

    #changelist .actions span {
        flex: 1 0 100%;
    }

    #changelist-filter {
        position: static;
        width: auto;
        margin-top: 30px;
    }

    .object-tools {
        float: none;
        margin: 0 0 15px;
        padding: 0;
        overflow: hidden;
    }

    .object-tools li {
        height: auto;
        margin-left: 0;
    }

    .object-tools li + li {
        margin-left: 15px;
    }

    /* Forms */

    .form-row {
        padding: 15px 0;
    }

    .aligned .form-row,
    .aligned .form-row > div {
        max-width: 100vw;
    }

    .aligned .form-row > div {
        width: calc(100vw - 30px);
    }

    .flex-container {
        flex-flow: column;
    }

    .flex-container.checkbox-row {
        flex-flow: row;
    }

    textarea {
        max-width: none;
    }

    .vURLField {
        width: auto;
    }

    fieldset .fieldBox + .fieldBox {
        margin-top: 15px;
        padding-top: 15px;
    }

    .aligned label {
        width: 100%;
        min-width: auto;
        padding: 0 0 10px;
    }

    .aligned label:after {
        max-height: 0;
    }

    .aligned .form-row input,
    .aligned .form-row select,
    .aligned .form-row textarea {
        flex: 1 1 auto;
        max-width: 100%;
    }

    .aligned .checkbox-row input {
        flex: 0 1 auto;
        margin: 0;
    }

    .aligned .vCheckboxLabel {
        flex: 1 0;
        padding: 1px 0 0 5px;
    }

    .aligned label + p,
    .aligned label + div.help,
    .aligned label + div.readonly {
        padding: 0;
        margin-left: 0;
    }

    .aligned p.file-upload {
        font-size: 0.8125rem;
    }

    span.clearable-file-input {
        margin-left: 15px;
    }

    span.clearable-file-input label {
        font-size: 0.8125rem;
        padding-bottom: 0;
    }

    .aligned .timezonewarning {
        flex: 1 0 100%;
        margin-top: 5px;
    }

    form .aligned .form-row div.help {
        width: 100%;
        margin: 5px 0 0;
        padding: 0;
    }

    form .aligned ul,
    form .aligned ul.errorlist {
        margin-left: 0;
        padding-left: 0;
    }

    form .aligned div.radiolist {
        margin-top: 5px;
        margin-right: 15px;
        margin-bottom: -3px;
    }

    form .aligned div.radiolist:not(.inline) div + div {
        margin-top: 5px;
    }

    /* Related widget */

    .related-widget-wrapper {
        width: 100%;
        display: flex;
        align-items: flex-start;
    }

    .related-widget-wrapper .selector {
        order: 1;
        flex: 1 0 auto;
    }

    .related-widget-wrapper > a {
        order: 2;
    }

    .related-widget-wrapper .radiolist ~ a {
        align-self: flex-end;
    }

    .related-widget-wrapper > select ~ a {
        align-self: center;
    }

    /* Selector */

    .selector {
        flex-direction: column;
        gap: 10px 0;
    }

    .selector-available, .selector-chosen {
        flex: 1 1 auto;
    }

    .selector select {
        max-height: 96px;
    }

    .selector ul.selector-chooser {
        display: flex;
        width: 60px;
        height: 30px;
        padding: 0 2px;
        transform: none;
    }

    .selector ul.selector-chooser li {
        float: left;
    }

    .selector-remove {
        background-position: 0 0;
    }

    :enabled.selector-remove:focus, :enabled.selector-remove:hover {
        background-position: 0 -24px;
    }

    .selector-add  {
        background-position: 0 -48px;
    }

    :enabled.selector-add:focus, :enabled.selector-add:hover {
        background-position: 0 -72px;
    }

    /* Inlines */

    .inline-group[data-inline-type="stacked"] .inline-related {
        border: 1px solid var(--hairline-color);
        border-radius: 4px;
        margin-top: 15px;
        overflow: auto;
    }

    .inline-group[data-inline-type="stacked"] .inline-related > * {
        box-sizing: border-box;
    }

    .inline-group[data-inline-type="stacked"] .inline-related .module {
        padding: 0 10px;
    }

    .inline-group[data-inline-type="stacked"] .inline-related .module .form-row {
        border-top: 1px solid var(--hairline-color);
        border-bottom: none;
    }

    .inline-group[data-inline-type="stacked"] .inline-related .module .form-row:first-child {
        border-top: none;
    }

    .inline-group[data-inline-type="stacked"] .inline-related h3 {
        padding: 10px;
        border-top-width: 0;
        border-bottom-width: 2px;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
    }

    .inline-group[data-inline-type="stacked"] .inline-related h3 .inline_label {
        margin-right: auto;
    }

    .inline-group[data-inline-type="stacked"] .inline-related h3 span.delete {
        float: none;
        flex: 1 1 100%;
        margin-top: 5px;
    }

    .inline-group[data-inline-type="stacked"] .aligned .form-row > div:not([class]) {
        width: 100%;
    }

    .inline-group[data-inline-type="stacked"] .aligned label {
        width: 100%;
    }

    .inline-group[data-inline-type="stacked"] div.add-row {
        margin-top: 15px;
        border: 1px solid var(--hairline-color);
        border-radius: 4px;
    }

    .inline-group div.add-row,
    .inline-group .tabular tr.add-row td {
        padding: 0;
    }

    .inline-group div.add-row a,
    .inline-group .tabular tr.add-row td a {
        display: block;
        padding: 8px 10px 8px 26px;
        background-position: 8px 9px;
    }

    /* Submit row */

    .submit-row {
        padding: 10px;
        margin: 0 0 15px;
        flex-direction: column;
        gap: 8px;
    }

    .submit-row input, .submit-row input.default, .submit-row a {
        text-align: center;
    }

    .submit-row a.closelink {
        padding: 10px 0;
        text-align: center;
    }

    .submit-row a.deletelink {
        margin: 0;
    }

    /* Messages */

    ul.messagelist li {
        padding-left: 40px;
        background-position: 15px 12px;
    }

    ul.messagelist li.error {
        background-position: 15px 12px;
    }

    ul.messagelist li.warning {
        background-position: 15px 14px;
    }

    /* Paginator */

    .paginator .this-page, .paginator a:link, .paginator a:visited {
        padding: 4px 10px;
    }

    /* Login */

    body.login {
        padding: 0 15px;
    }

    .login #container {
        width: auto;
        max-width: 480px;
        margin: 50px auto;
    }

    .login #header,
    .login #content {
        padding: 15px;
    }

    .login #content-main {
        float: none;
    }

    .login .form-row {
        padding: 0;
    }

    .login .form-row + .form-row {
        margin-top: 15px;
    }

    .login .form-row label {
        margin: 0 0 5px;
        line-height: 1.2;
    }

    .login .submit-row {
        padding: 15px 0 0;
    }

    .login br {
        display: none;
    }

    .login .submit-row input {
        margin: 0;
        text-transform: uppercase;
    }

    .errornote {
        margin: 0 0 20px;
        padding: 8px 12px;
        font-size: 0.8125rem;
    }

    /* Calendar and clock */

    .calendarbox, .clockbox {
        position: fixed !important;
        top: 50% !important;
        left: 50% !important;
        transform: translate(-50%, -50%);
        margin: 0;
        border: none;
        overflow: visible;
    }

    .calendarbox:before, .clockbox:before {
        content: '';
        position: fixed;
        top: 50%;
        left: 50%;
        width: 100vw;
        height: 100vh;
        background: rgba(0, 0, 0, 0.75);
        transform: translate(-50%, -50%);
    }

    .calendarbox > *, .clockbox > * {
        position: relative;
        z-index: 1;
    }

    .calendarbox > div:first-child {
        z-index: 2;
    }

    .calendarbox .calendar, .clockbox h2 {
        border-radius: 4px 4px 0 0;
        overflow: hidden;
    }

    .calendarbox .calendar-cancel, .clockbox .calendar-cancel {
        border-radius: 0 0 4px 4px;
        overflow: hidden;
    }

    .calendar-shortcuts {
        padding: 10px 0;
        font-size: 0.75rem;
        line-height: 0.75rem;
    }

    .calendar-shortcuts a {
        margin: 0 4px;
    }

    .timelist a {
        background: var(--body-bg);
        padding: 4px;
    }

    .calendar-cancel {
        padding: 8px 10px;
    }

    .clockbox h2 {
        padding: 8px 15px;
    }

    .calendar caption {
        padding: 10px;
    }

    .calendarbox .calendarnav-previous, .calendarbox .calendarnav-next {
        z-index: 1;
        top: 10px;
    }

    /* History */

    table#change-history tbody th, table#change-history tbody td {
        font-size: 0.8125rem;
        word-break: break-word;
    }

    table#change-history tbody th {
        width: auto;
    }

    /* Docs */

    table.model tbody th, table.model tbody td {
        font-size: 0.8125rem;
        word-break: break-word;
    }
}

/* /static/admin/css/responsive.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
/* Tablets */

input[type="submit"], button {
    -webkit-appearance: none;
    appearance: none;
}

@media (max-width: 1024px) {
    /* Basic */

    html {
        -webkit-text-size-adjust: 100%;
    }

    td, th {
        padding: 10px;
        font-size: 0.875rem;
    }

    .small {
        font-size: 0.75rem;
    }

    /* Layout */

    #container {
        min-width: 0;
    }

    #content {
        padding: 15px 20px 20px;
    }

    div.breadcrumbs {
        padding: 10px 30px;
    }

    /* Header */

    #header {
        flex-direction: column;
        padding: 15px 30px;
        justify-content: flex-start;
    }

    #site-name {
        margin: 0 0 8px;
        line-height: 1.2;
    }

    #user-tools {
        margin: 0;
        font-weight: 400;
        line-height: 1.85;
        text-align: left;
    }

    #user-tools a {
        display: inline-block;
        line-height: 1.4;
    }

    /* Dashboard */

    .dashboard #content {
        width: auto;
    }

    #content-related {
        margin-right: -290px;
    }

    .colSM #content-related {
        margin-left: -290px;
    }

    .colMS {
        margin-right: 290px;
    }

    .colSM {
        margin-left: 290px;
    }

    .dashboard .module table td a {
        padding-right: 0;
    }

    td .changelink, td .addlink {
        font-size: 0.8125rem;
    }

    /* Changelist */

    #toolbar {
        border: none;
        padding: 15px;
    }

    #changelist-search > div {
        display: flex;
        flex-wrap: nowrap;
        max-width: 480px;
    }

    #changelist-search label {
        line-height: 1.375rem;
    }

    #toolbar form #searchbar {
        flex: 1 0 auto;
        width: 0;
        height: 1.375rem;
        margin: 0 10px 0 6px;
    }

    #toolbar form input[type=submit] {
        flex: 0 1 auto;
    }

    #changelist-search .quiet {
        width: 0;
        flex: 1 0 auto;
        margin: 5px 0 0 25px;
    }

    #changelist .actions {
        display: flex;
        flex-wrap: wrap;
        padding: 15px 0;
    }

    #changelist .actions label {
        display: flex;
    }

    #changelist .actions select {
        background: var(--body-bg);
    }

    #changelist .actions .button {
        min-width: 48px;
        margin: 0 10px;
    }

    #changelist .actions span.all,
    #changelist .actions span.clear,
    #changelist .actions span.question,
    #changelist .actions span.action-counter {
        font-size: 0.6875rem;
        margin: 0 10px 0 0;
    }

    #changelist-filter {
        flex-basis: 200px;
    }

    .change-list .filtered .results,
    .change-list .filtered .paginator,
    .filtered #toolbar,
    .filtered .actions,

    #changelist .paginator {
        border-top-color: var(--hairline-color); /* XXX Is this used at all? */
    }

    #changelist .results + .paginator {
        border-top: none;
    }

    /* Forms */

    label {
        font-size: 1rem;
    }

    /*
    Minifiers remove the default (text) "type" attribute from "input" HTML
    tags. Add input:not([type]) to make the CSS stylesheet work the same.
    */
    .form-row input:not([type]),
    .form-row input[type=text],
    .form-row input[type=password],
    .form-row input[type=email],
    .form-row input[type=url],
    .form-row input[type=tel],
    .form-row input[type=number],
    .form-row textarea,
    .form-row select,
    .form-row .vTextField {
        box-sizing: border-box;
        margin: 0;
        padding: 6px 8px;
        min-height: 2.25rem;
        font-size: 1rem;
    }

    .form-row select {
        height: 2.25rem;
    }

    .form-row select[multiple] {
        height: auto;
        min-height: 0;
    }

    fieldset .fieldBox + .fieldBox {
        margin-top: 10px;
        padding-top: 10px;
        border-top: 1px solid var(--hairline-color);
    }

    textarea {
        max-width: 100%;
        max-height: 120px;
    }

    .aligned label {
        padding-top: 6px;
    }

    .aligned .related-lookup,
    .aligned .datetimeshortcuts,
    .aligned .related-lookup + strong {
        align-self: center;
        margin-left: 15px;
    }

    form .aligned div.radiolist {
        margin-left: 2px;
    }

    .submit-row {
        padding: 8px;
    }

    .submit-row a.deletelink {
        padding: 10px 7px;
    }

    .button, input[type=submit], input[type=button], .submit-row input, a.button {
        padding: 7px;
    }

    /* Selector */

    .selector {
        display: flex;
        width: 100%;
    }

    .selector .selector-filter {
        display: flex;
        align-items: center;
    }

    .selector .selector-filter input {
        width: 100%;
        min-height: 0;
        flex: 1 1;
    }

    .selector-available, .selector-chosen {
        width: auto;
        flex: 1 1;
        display: flex;
        flex-direction: column;
    }

    .selector select {
        width: 100%;
        flex: 1 0 auto;
        margin-bottom: 5px;
    }

    .selector-chooseall, .selector-clearall {
        align-self: center;
    }

    .stacked {
        flex-direction: column;
        max-width: 480px;
    }

    .stacked > * {
        flex: 0 1 auto;
    }

    .stacked select {
        margin-bottom: 0;
    }

    .stacked .selector-available, .stacked .selector-chosen {
        width: auto;
    }

    .stacked ul.selector-chooser {
        padding: 0 2px;
        transform: none;
    }

    .stacked .selector-chooser li {
        padding: 3px;
    }

    .help-tooltip, .selector .help-icon {
        display: none;
    }

    .datetime input {
        width: 50%;
        max-width: 120px;
    }

    .datetime span {
        font-size: 0.8125rem;
    }

    .datetime .timezonewarning {
        display: block;
        font-size: 0.6875rem;
        color: var(--body-quiet-color);
    }

    .datetimeshortcuts {
        color: var(--border-color); /* XXX Redundant, .datetime span also sets #ccc */
    }

    .form-row .datetime input.vDateField, .form-row .datetime input.vTimeField {
        width: 75%;
    }

    .inline-group {
        overflow: auto;
    }

    /* Messages */

    ul.messagelist li {
        padding-left: 55px;
        background-position: 30px 12px;
    }

    ul.messagelist li.error {
        background-position: 30px 12px;
    }

    ul.messagelist li.warning {
        background-position: 30px 14px;
    }

    /* Login */

    .login #header {
        padding: 15px 20px;
    }

    .login #site-name {
        margin: 0;
    }

    /* GIS */

    div.olMap {
        max-width: calc(100vw - 30px);
        max-height: 300px;
    }

    .olMap + .clear_features {
        display: block;
        margin-top: 10px;
    }

    /* Docs */

    .module table.xfull {
        width: 100%;
    }

    pre.literal-block {
        overflow: auto;
    }
}

/* Mobile */

@media (max-width: 767px) {
    /* Layout */

    #header, #content {
        padding: 15px;
    }

    div.breadcrumbs {
        padding: 10px 15px;
    }

    /* Dashboard */

    .colMS, .colSM {
        margin: 0;
    }

    #content-related, .colSM #content-related {
        width: 100%;
        margin: 0;
    }

    #content-related .module {
        margin-bottom: 0;
    }

    #content-related .module h2 {
        padding: 10px 15px;
        font-size: 1rem;
    }

    /* Changelist */

    #changelist {
        align-items: stretch;
        flex-direction: column;
    }

    #toolbar {
        padding: 10px;
    }

    #changelist-filter {
        margin-left: 0;
    }

    #changelist .actions label {
        flex: 1 1;
    }

    #changelist .actions select {
        flex: 1 0;
        width: 100%;
    }

    #changelist .actions span {
        flex: 1 0 100%;
    }

    #changelist-filter {
        position: static;
        width: auto;
        margin-top: 30px;
    }

    .object-tools {
        float: none;
        margin: 0 0 15px;
        padding: 0;
        overflow: hidden;
    }

    .object-tools li {
        height: auto;
        margin-left: 0;
    }

    .object-tools li + li {
        margin-left: 15px;
    }

    /* Forms */

    .form-row {
        padding: 15px 0;
    }

    .aligned .form-row,
    .aligned .form-row > div {
        max-width: 100vw;
    }

    .aligned .form-row > div {
        width: calc(100vw - 30px);
    }

    .flex-container {
        flex-flow: column;
    }

    .flex-container.checkbox-row {
        flex-flow: row;
    }

    textarea {
        max-width: none;
    }

    .vURLField {
        width: auto;
    }

    fieldset .fieldBox + .fieldBox {
        margin-top: 15px;
        padding-top: 15px;
    }

    .aligned label {
        width: 100%;
        min-width: auto;
        padding: 0 0 10px;
    }

    .aligned label:after {
        max-height: 0;
    }

    .aligned .form-row input,
    .aligned .form-row select,
    .aligned .form-row textarea {
        flex: 1 1 auto;
        max-width: 100%;
    }

    .aligned .checkbox-row input {
        flex: 0 1 auto;
        margin: 0;
    }

    .aligned .vCheckboxLabel {
        flex: 1 0;
        padding: 1px 0 0 5px;
    }

    .aligned label + p,
    .aligned label + div.help,
    .aligned label + div.readonly {
        padding: 0;
        margin-left: 0;
    }

    .aligned p.file-upload {
        font-size: 0.8125rem;
    }

    span.clearable-file-input {
        margin-left: 15px;
    }

    span.clearable-file-input label {
        font-size: 0.8125rem;
        padding-bottom: 0;
    }

    .aligned .timezonewarning {
        flex: 1 0 100%;
        margin-top: 5px;
    }

    form .aligned .form-row div.help {
        width: 100%;
        margin: 5px 0 0;
        padding: 0;
    }

    form .aligned ul,
    form .aligned ul.errorlist {
        margin-left: 0;
        padding-left: 0;
    }

    form .aligned div.radiolist {
        margin-top: 5px;
        margin-right: 15px;
        margin-bottom: -3px;
    }

    form .aligned div.radiolist:not(.inline) div + div {
        margin-top: 5px;
    }

    /* Related widget */

    .related-widget-wrapper {
        width: 100%;
        display: flex;
        align-items: flex-start;
    }

    .related-widget-wrapper .selector {
        order: 1;
        flex: 1 0 auto;
    }

    .related-widget-wrapper > a {
        order: 2;
    }

    .related-widget-wrapper .radiolist ~ a {
        align-self: flex-end;
    }

    .related-widget-wrapper > select ~ a {
        align-self: center;
    }

    /* Selector */

    .selector {
        flex-direction: column;
        gap: 10px 0;
    }

    .selector-available, .selector-chosen {
        flex: 1 1 auto;
    }

    .selector select {
        max-height: 96px;
    }

    .selector ul.selector-chooser {
        display: flex;
        width: 60px;
        height: 30px;
        padding: 0 2px;
        transform: none;
    }

    .selector ul.selector-chooser li {
        float: left;
    }

    .selector-remove {
        background-position: 0 0;
    }

    :enabled.selector-remove:focus, :enabled.selector-remove:hover {
        background-position: 0 -24px;
    }

    .selector-add  {
        background-position: 0 -48px;
    }

    :enabled.selector-add:focus, :enabled.selector-add:hover {
        background-position: 0 -72px;
    }

    /* Inlines */

    .inline-group[data-inline-type="stacked"] .inline-related {
        border: 1px solid var(--hairline-color);
        border-radius: 4px;
        margin-top: 15px;
        overflow: auto;
    }

    .inline-group[data-inline-type="stacked"] .inline-related > * {
        box-sizing: border-box;
    }

    .inline-group[data-inline-type="stacked"] .inline-related .module {
        padding: 0 10px;
    }

    .inline-group[data-inline-type="stacked"] .inline-related .module .form-row {
        border-top: 1px solid var(--hairline-color);
        border-bottom: none;
    }

    .inline-group[data-inline-type="stacked"] .inline-related .module .form-row:first-child {
        border-top: none;
    }

    .inline-group[data-inline-type="stacked"] .inline-related h3 {
        padding: 10px;
        border-top-width: 0;
        border-bottom-width: 2px;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
    }

    .inline-group[data-inline-type="stacked"] .inline-related h3 .inline_label {
        margin-right: auto;
    }

    .inline-group[data-inline-type="stacked"] .inline-related h3 span.delete {
        float: none;
        flex: 1 1 100%;
        margin-top: 5px;
    }

    .inline-group[data-inline-type="stacked"] .aligned .form-row > div:not([class]) {
        width: 100%;
    }

    .inline-group[data-inline-type="stacked"] .aligned label {
        width: 100%;
    }

    .inline-group[data-inline-type="stacked"] div.add-row {
        margin-top: 15px;
        border: 1px solid var(--hairline-color);
        border-radius: 4px;
    }

    .inline-group div.add-row,
    .inline-group .tabular tr.add-row td {
        padding: 0;
    }

    .inline-group div.add-row a,
    .inline-group .tabular tr.add-row td a {
        display: block;
        padding: 8px 10px 8px 26px;
        background-position: 8px 9px;
    }

    /* Submit row */

    .submit-row {
        padding: 10px;
        margin: 0 0 15px;
        flex-direction: column;
        gap: 8px;
    }

    .submit-row input, .submit-row input.default, .submit-row a {
        text-align: center;
    }

    .submit-row a.closelink {
        padding: 10px 0;
        text-align: center;
    }

    .submit-row a.deletelink {
        margin: 0;
    }

    /* Messages */

    ul.messagelist li {
        padding-left: 40px;
        background-position: 15px 12px;
    }

    ul.messagelist li.error {
        background-position: 15px 12px;
    }

    ul.messagelist li.warning {
        background-position: 15px 14px;
    }

    /* Paginator */

    .paginator .this-page, .paginator a:link, .paginator a:visited {
        padding: 4px 10px;
    }

    /* Login */

    body.login {
        padding: 0 15px;
    }

    .login #container {
        width: auto;
        max-width: 480px;
        margin: 50px auto;
    }

    .login #header,
    .login #content {
        padding: 15px;
    }

    .login #content-main {
        float: none;
    }

    .login .form-row {
        padding: 0;
    }

    .login .form-row + .form-row {
        margin-top: 15px;
    }

    .login .form-row label {
        margin: 0 0 5px;
        line-height: 1.2;
    }

    .login .submit-row {
        padding: 15px 0 0;
    }

    .login br {
        display: none;
    }

    .login .submit-row input {
        margin: 0;
        text-transform: uppercase;
    }

    .errornote {
        margin: 0 0 20px;
        padding: 8px 12px;
        font-size: 0.8125rem;
    }

    /* Calendar and clock */

    .calendarbox, .clockbox {
        position: fixed !important;
        top: 50% !important;
        left: 50% !important;
        transform: translate(-50%, -50%);
        margin: 0;
        border: none;
        overflow: visible;
    }

    .calendarbox:before, .clockbox:before {
        content: '';
        position: fixed;
        top: 50%;
        left: 50%;
        width: 100vw;
        height: 100vh;
        background: rgba(0, 0, 0, 0.75);
        transform: translate(-50%, -50%);
    }

    .calendarbox > *, .clockbox > * {
        position: relative;
        z-index: 1;
    }

    .calendarbox > div:first-child {
        z-index: 2;
    }

    .calendarbox .calendar, .clockbox h2 {
        border-radius: 4px 4px 0 0;
        overflow: hidden;
    }

    .calendarbox .calendar-cancel, .clockbox .calendar-cancel {
        border-radius: 0 0 4px 4px;
        overflow: hidden;
    }

    .calendar-shortcuts {
        padding: 10px 0;
        font-size: 0.75rem;
        line-height: 0.75rem;
    }

    .calendar-shortcuts a {
        margin: 0 4px;
    }

    .timelist a {
        background: var(--body-bg);
        padding: 4px;
    }

    .calendar-cancel {
        padding: 8px 10px;
    }

    .clockbox h2 {
        padding: 8px 15px;
    }

    .calendar caption {
        padding: 10px;
    }

    .calendarbox .calendarnav-previous, .calendarbox .calendarnav-next {
        z-index: 1;
        top: 10px;
    }

    /* History */

    table#change-history tbody th, table#change-history tbody td {
        font-size: 0.8125rem;
        word-break: break-word;
    }

    table#change-history tbody th {
        width: auto;
    }

    /* Docs */

    table.model tbody th, table.model tbody td {
        font-size: 0.8125rem;
        word-break: break-word;
    }
}

/* /static/admin/css/responsive_rtl.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
/* TABLETS */

@media (max-width: 1024px) {
    [dir="rtl"] .colMS {
        margin-right: 0;
    }

    [dir="rtl"] #user-tools {
        text-align: right;
    }

    [dir="rtl"] #changelist .actions label {
        padding-left: 10px;
        padding-right: 0;
    }

    [dir="rtl"] #changelist .actions select {
        margin-left: 0;
        margin-right: 15px;
    }

    [dir="rtl"] .change-list .filtered .results,
    [dir="rtl"] .change-list .filtered .paginator,
    [dir="rtl"] .filtered #toolbar,
    [dir="rtl"] .filtered div.xfull,
    [dir="rtl"] .filtered .actions,
    [dir="rtl"] #changelist-filter {
        margin-left: 0;
    }

    [dir="rtl"] .inline-group div.add-row a,
    [dir="rtl"] .inline-group .tabular tr.add-row td a {
        padding: 8px 26px 8px 10px;
        background-position: calc(100% - 8px) 9px;
    }

    [dir="rtl"] .object-tools li {
        float: right;
    }

    [dir="rtl"] .object-tools li + li {
        margin-left: 0;
        margin-right: 15px;
    }

    [dir="rtl"] .dashboard .module table td a {
        padding-left: 0;
        padding-right: 16px;
    }
}

/* MOBILE */

@media (max-width: 767px) {
    [dir="rtl"] .aligned .related-lookup,
    [dir="rtl"] .aligned .datetimeshortcuts {
        margin-left: 0;
        margin-right: 15px;
    }

    [dir="rtl"] .aligned ul,
    [dir="rtl"] form .aligned ul.errorlist {
        margin-right: 0;
    }

    [dir="rtl"] #changelist-filter {
        margin-left: 0;
        margin-right: 0;
    }
    [dir="rtl"] .aligned .vCheckboxLabel {
        padding: 1px 5px 0 0;
    }

    [dir="rtl"] .selector-remove {
        background-position: 0 0;
    }

    [dir="rtl"] :enabled.selector-remove:focus, :enabled.selector-remove:hover {
        background-position: 0 -24px;
    }

    [dir="rtl"] .selector-add  {
        background-position: 0 -48px;
    }

    [dir="rtl"] :enabled.selector-add:focus, :enabled.selector-add:hover {
        background-position: 0 -72px;
    }
}

/* /static/admin_interface/foldable-apps/foldable-apps.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
.admin-interface.foldable-apps [class^="app-"].module {
    visibility: hidden;
}

.admin-interface.foldable-apps [class^="app-"].module.foldable-apps-ready {
    visibility: visible;
}

.admin-interface.foldable-apps [class^="app-"].module > table > caption {
    position: relative;
    z-index: 0;
    /* pointer-events: none; */
    cursor: pointer;
    -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none;   /* Safari */
    -khtml-user-select: none;    /* Konqueror HTML */
    -moz-user-select: none;      /* Firefox */
    -ms-user-select: none;       /* Internet Explorer/Edge */
    user-select: none;           /* Non-prefixed version, currently supported by Chrome and Opera */
}

.admin-interface.foldable-apps [class^="app-"].module > table > caption > a {
    display: inline-block;
    /* pointer-events: all !important; */
    margin-right: 30px;
}

.admin-interface.foldable-apps [class^="app-"].module > table > caption::after {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 10;
    width: auto;
    height: calc(100% - 3px);
    content: "−";
    font-size: 16px;
    font-weight: lighter;
    text-align: center;
    padding-left: 10px;
    padding-right: 10px;
    cursor: pointer;
    pointer-events: all !important;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

@media (min-width: 1024px) {
    .admin-interface.foldable-apps [class^="app-"].module > table > caption::after {
        padding-left: 15px;
        padding-right: 15px;
    }
}

.admin-interface.foldable-apps [class^="app-"].module > table {
    display: table;
    width: 100%;
}

.admin-interface.foldable-apps [class^="app-"].module.collapsed {
    margin-bottom: 10px;
}

.admin-interface.foldable-apps [class^="app-"].module.collapsed > table > caption::after {
    content: "+";
}

.admin-interface.foldable-apps [class^="app-"].module.collapsed > table > tbody {
    display: none;
}

/* /static/admin_interface/magnific-popup/magnific-popup.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
/* Magnific Popup CSS */
.mfp-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  background: #0b0b0b;
  opacity: 0.8; }

.mfp-wrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1043;
  position: fixed;
  outline: none !important;
  -webkit-backface-visibility: hidden; }

.mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 0 8px;
  box-sizing: border-box; }

.mfp-container:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle; }

.mfp-align-top .mfp-container:before {
  display: none; }

.mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  text-align: left;
  z-index: 1045; }

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
  width: 100%;
  cursor: auto; }

.mfp-ajax-cur {
  cursor: progress; }

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: -moz-zoom-out;
  cursor: -webkit-zoom-out;
  cursor: zoom-out; }

.mfp-zoom {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in; }

.mfp-auto-cursor .mfp-content {
  cursor: auto; }

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none; }

.mfp-loading.mfp-figure {
  display: none; }

.mfp-hide {
  display: none !important; }

.mfp-preloader {
  color: #CCC;
  position: absolute;
  top: 50%;
  width: auto;
  text-align: center;
  margin-top: -0.8em;
  left: 8px;
  right: 8px;
  z-index: 1044; }
  .mfp-preloader a {
    color: #CCC; }
    .mfp-preloader a:hover {
      color: #FFF; }

.mfp-s-ready .mfp-preloader {
  display: none; }

.mfp-s-error .mfp-content {
  display: none; }

button.mfp-close,
button.mfp-arrow {
  overflow: visible;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
  display: block;
  outline: none;
  padding: 0;
  z-index: 1046;
  box-shadow: none;
  touch-action: manipulation; }

button::-moz-focus-inner {
  padding: 0;
  border: 0; }

.mfp-close {
  width: 44px;
  height: 44px;
  line-height: 44px;
  position: absolute;
  right: 0;
  top: 0;
  text-decoration: none;
  text-align: center;
  opacity: 0.65;
  padding: 0 0 18px 10px;
  color: #FFF;
  font-style: normal;
  font-size: 28px;
  font-family: Arial, Baskerville, monospace; }
  .mfp-close:hover,
  .mfp-close:focus {
    opacity: 1; }
  .mfp-close:active {
    top: 1px; }

.mfp-close-btn-in .mfp-close {
  color: #333; }

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
  color: #FFF;
  right: -6px;
  text-align: right;
  padding-right: 6px;
  width: 100%; }

.mfp-counter {
  position: absolute;
  top: 0;
  right: 0;
  color: #CCC;
  font-size: 12px;
  line-height: 18px;
  white-space: nowrap; }

.mfp-arrow {
  position: absolute;
  opacity: 0.65;
  margin: 0;
  top: 50%;
  margin-top: -55px;
  padding: 0;
  width: 90px;
  height: 110px;
  -webkit-tap-highlight-color: transparent; }
  .mfp-arrow:active {
    margin-top: -54px; }
  .mfp-arrow:hover,
  .mfp-arrow:focus {
    opacity: 1; }
  .mfp-arrow:before,
  .mfp-arrow:after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    left: 0;
    top: 0;
    margin-top: 35px;
    margin-left: 35px;
    border: medium inset transparent; }
  .mfp-arrow:after {
    border-top-width: 13px;
    border-bottom-width: 13px;
    top: 8px; }
  .mfp-arrow:before {
    border-top-width: 21px;
    border-bottom-width: 21px;
    opacity: 0.7; }

.mfp-arrow-left {
  left: 0; }
  .mfp-arrow-left:after {
    border-right: 17px solid #FFF;
    margin-left: 31px; }
  .mfp-arrow-left:before {
    margin-left: 25px;
    border-right: 27px solid #3F3F3F; }

.mfp-arrow-right {
  right: 0; }
  .mfp-arrow-right:after {
    border-left: 17px solid #FFF;
    margin-left: 39px; }
  .mfp-arrow-right:before {
    border-left: 27px solid #3F3F3F; }

.mfp-iframe-holder {
  padding-top: 40px;
  padding-bottom: 40px; }
  .mfp-iframe-holder .mfp-content {
    line-height: 0;
    width: 100%;
    max-width: 900px; }
  .mfp-iframe-holder .mfp-close {
    top: -40px; }

.mfp-iframe-scaler {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%; }
  .mfp-iframe-scaler iframe {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #000; }

/* Main image in popup */
img.mfp-img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  line-height: 0;
  box-sizing: border-box;
  padding: 40px 0 40px;
  margin: 0 auto; }

/* The shadow behind the image */
.mfp-figure {
  line-height: 0; }
  .mfp-figure:after {
    content: '';
    position: absolute;
    left: 0;
    top: 40px;
    bottom: 40px;
    display: block;
    right: 0;
    width: auto;
    height: auto;
    z-index: -1;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #444; }
  .mfp-figure small {
    color: #BDBDBD;
    display: block;
    font-size: 12px;
    line-height: 14px; }
  .mfp-figure figure {
    margin: 0; }

.mfp-bottom-bar {
  margin-top: -36px;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  cursor: auto; }

.mfp-title {
  text-align: left;
  line-height: 18px;
  color: #F3F3F3;
  word-wrap: break-word;
  padding-right: 36px; }

.mfp-image-holder .mfp-content {
  max-width: 100%; }

.mfp-gallery .mfp-image-holder .mfp-figure {
  cursor: pointer; }

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
  /**
       * Remove all paddings around the image on small screen
       */
  .mfp-img-mobile .mfp-image-holder {
    padding-left: 0;
    padding-right: 0; }
  .mfp-img-mobile img.mfp-img {
    padding: 0; }
  .mfp-img-mobile .mfp-figure:after {
    top: 0;
    bottom: 0; }
  .mfp-img-mobile .mfp-figure small {
    display: inline;
    margin-left: 5px; }
  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    margin: 0;
    top: auto;
    padding: 3px 5px;
    position: fixed;
    box-sizing: border-box; }
    .mfp-img-mobile .mfp-bottom-bar:empty {
      padding: 0; }
  .mfp-img-mobile .mfp-counter {
    right: 5px;
    top: 3px; }
  .mfp-img-mobile .mfp-close {
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    line-height: 35px;
    background: rgba(0, 0, 0, 0.6);
    position: fixed;
    text-align: center;
    padding: 0; } }

@media all and (max-width: 900px) {
  .mfp-arrow {
    -webkit-transform: scale(0.75);
    transform: scale(0.75); }
  .mfp-arrow-left {
    -webkit-transform-origin: 0;
    transform-origin: 0; }
  .mfp-arrow-right {
    -webkit-transform-origin: 100%;
    transform-origin: 100%; }
  .mfp-container {
    padding-left: 6px;
    padding-right: 6px; } }

/* /static/admin_interface/related-modal/related-modal.css?v=fbf73b4c3a05e7b27c0ed71177534234cb431fc7becc666773c1f652 */
/*
related modal + magnific popup customization
https://github.com/dimsemenov/Magnific-Popup
*/
.admin-interface .related-modal.mfp-bg {
    background-color: var(--admin-interface-related-modal-background-color);
    opacity: var(--admin-interface-related-modal-background-opacity);
}

.admin-interface .related-modal .mfp-content {
    height: 100%;
    -webkit-box-shadow: 0px 5px 30px 0px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0px 5px 30px 0px rgba(0, 0, 0, 0.2);
    box-shadow: 0px 5px 30px 0px rgba(0, 0, 0, 0.2);
}

.admin-interface .related-modal .mfp-container {
    position: fixed;
    padding: 80px 80px 80px 80px;
}

.admin-interface .related-modal__nested .mfp-container {
    padding: 40px 80px 40px 80px;
}

@media (max-width: 640px) {
    .admin-interface .related-modal .mfp-container {
        padding: 80px 20px 80px 20px;
    }

    .admin-interface .related-modal__nested .mfp-container {
        padding: 40px 40px 40px 40px;
    }
}

@media (max-height: 640px) {
    .admin-interface .related-modal .mfp-container {
        padding-top: 20px;
        padding-bottom: 20px;
    }

    .admin-interface .related-modal__nested .mfp-container {
        padding: 40px 40px 40px 40px;
    }
}

.admin-interface .related-modal .related-modal-iframe-container {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 100;
    overflow: hidden;
    border-radius: var(--admin-interface-related-modal-border-radius);
}

.admin-interface .related-modal #related-modal-iframe {
    width: 100%;
    height: 100%;
    background-color: #FFFFFF;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 30px 30px;
    background-image: url("data:image/svg+xml;utf8,<?xml version='1.0' encoding='utf-8'?><svg width='30px' height='30px' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='xMidYMid' class='uil-ring-alt'><rect x='0' y='0' width='100' height='100' fill='none' class='bk'></rect><circle cx='50' cy='50' r='40' stroke='%23eeeeee' fill='none' stroke-width='6' stroke-linecap='round'></circle><circle cx='50' cy='50' r='40' stroke='%23aaaaaa' fill='none' stroke-width='6' stroke-linecap='round'><animate attributeName='stroke-dashoffset' dur='2s' repeatCount='indefinite' from='0' to='500'></animate><animate attributeName='stroke-dasharray' dur='2s' repeatCount='indefinite' values='150 100;1 250;150 100'></animate></circle></svg>");
    border: none;
    margin: 0 auto;
    padding: 0;
    display: block;
}

.admin-interface .related-modal .mfp-close {
    width: 40px;
    height: 40px;
    opacity: 1.0;
    color: rgba(0, 0, 0, 0.4);
    display: var(--admin-interface-related-modal-close-button-display);
}

.admin-interface .related-modal .mfp-close:hover,
.admin-interface .related-modal .mfp-close:active {
    color: rgba(0, 0, 0, 0.6);
    top: 0;
}
