/* Sistema Arteto sobre Django Admin (queda para lo que no tiene pantalla propia) (H · Configuracion).
 * Django Admin expone sus colores como variables; aqui se repintan con los
 * tokens del sistema. Sin superficies oscuras: Broadsheet es papel. */
@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500&family=IBM+Plex+Sans:wght@400;500&display=swap');

:root, html[data-theme="light"], html[data-theme="dark"], html[data-theme="auto"] {
  color-scheme: light;
  --primary: #141312;
  --secondary: #141312;
  --accent: #8a6100;
  --primary-fg: #fcfcfb;

  --body-fg: #141312;
  --body-bg: #fcfcfb;
  --body-quiet-color: #75716d;
  --body-loud-color: #141312;
  --body-medium-color: #3f3d3b;

  --header-color: #fcfcfb;
  --header-branding-color: #fcfcfb;
  --header-bg: #141312;
  --header-link-color: #fcfcfb;

  --breadcrumbs-fg: #75716d;
  --breadcrumbs-link-fg: #141312;
  --breadcrumbs-bg: #f0efed;

  --link-fg: #141312;
  --link-hover-color: #3f3d3b;
  --link-selected-fg: #141312;

  --hairline-color: #d7d3d3;
  --border-color: #d7d3d3;

  --error-fg: #B23A2E;
  --message-success-bg: #e9f8ff;
  --message-warning-bg: #FFF6E6;
  --message-error-bg: #FBEAE8;

  --darkened-bg: #f0efed;
  --selected-bg: #e9f8ff;
  --selected-row: #e9f8ff;

  --button-fg: #fcfcfb;
  --button-bg: #141312;
  --button-hover-bg: #1186ac;
  --default-button-bg: #141312;
  --default-button-hover-bg: #004961;
  --close-button-bg: #7d7979;
  --close-button-hover-bg: #75716d;
  --delete-button-bg: #aa0b56;
  --delete-button-hover-bg: #790e3d;

  --object-tools-fg: #fcfcfb;
  --object-tools-bg: #3f3d3b;
  --object-tools-hover-bg: #141312;

  --font-family-primary: "IBM Plex Sans", system-ui, sans-serif;
  --font-family-monospace: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
}
@media (prefers-color-scheme: dark) {
  :root, html[data-theme="auto"] { color-scheme: light; --body-bg: #fcfcfb; --body-fg: #141312; --header-bg: #141312; --darkened-bg: #f0efed; --selected-row: #e9f8ff; --hairline-color: #d7d3d3; --border-color: #d7d3d3; --breadcrumbs-bg: #f0efed; }
}
body { font-size: 14px; }
#header { padding: 12px 30px; }
#branding h1, #branding h1 a:link, #branding h1 a:visited, #site-name, #site-name a:link, #site-name a:visited { font-family: var(--font-family-primary); font-weight: 700; font-size: 18px; }
#branding h1 em, #site-name em { color: #62c5ee; font-style: italic; font-weight: 400; }
#user-tools { font-size: 12px; letter-spacing: 0; text-transform: none; }
#user-tools a { border-bottom: 0; text-decoration: underline; text-underline-offset: 3px; }
div.breadcrumbs { padding: 10px 30px; font-size: 13px; }
h1 { font-family: var(--font-family-primary); font-weight: 600; font-size: 26px; letter-spacing: -0.015em; }
h2 { font-family: var(--font-family-primary); font-weight: 600; }
.module h2, .module caption, .inline-group h2 {
  background: var(--darkened-bg); color: var(--body-fg);
  font-size: 11px; letter-spacing: .08em; text-transform: uppercase; font-weight: 400;
}
#content-related .module h2, #content-related h3 { background: transparent; }
.button, input[type=submit], input[type=button], .submit-row input, a.button {
  border-radius: 0; font-family: var(--font-family-primary); font-weight: 600;
}
.object-tools a { border-radius: 0; font-family: var(--font-family-primary); text-transform: none; letter-spacing: 0; font-weight: 600; }
input, textarea, select, .form-row input, .vTextField {
  border-radius: 0; border: 1px solid var(--border-color); background: #f0efed; font-family: var(--font-family-primary);
}
input:focus-visible, textarea:focus-visible, select:focus-visible { outline: 2px solid var(--primary); outline-offset: 0; border-color: var(--primary); }
#changelist table thead th { font-size: 11px; letter-spacing: .08em; text-transform: uppercase; font-weight: 400; background: transparent; }
#changelist table thead th a { color: var(--body-quiet-color); }
#changelist .paginator { border-radius: 0; }
#changelist-filter { background: var(--darkened-bg); }
#changelist-filter h2 { background: transparent; color: var(--body-quiet-color); }
#changelist-filter li.selected a { color: var(--primary); }
.dashboard #content { width: auto; max-width: 960px; }
.app-core .module, .app-reservas .module, .app-obras .module, .app-auth .module { border-radius: 0; box-shadow: none; }
div.module { border-radius: 0; }
.panel-enlace { display: inline-block; margin-left: 20px; padding: 3px 10px; border: 1px solid #62c5ee; border-radius: 0; color: #cbeeff !important; font-size: 12px; text-decoration: none !important; }
.panel-enlace:hover { background: #141312; color: #fff !important; }
.messagelist li { border-radius: 0; font-family: var(--font-family-primary); }
.errornote { border-radius: 0; }
fieldset.collapsed h2 { background: var(--darkened-bg); }
#toolbar { background: var(--darkened-bg); border-bottom: 1px solid var(--hairline-color); }
#toolbar #searchbar { border-radius: 0; }
.theme-toggle { display: none; }
#site-name a:link, #site-name a:visited { color: var(--header-branding-color); }
.module caption a.section:link, .module caption a.section:visited, .module h2 a.section:link, .module h2 a.section:visited { color: var(--body-fg); }
.module caption, .module h2 { color: var(--body-fg); }
