/* Page- or feature-specific admin refinements belong here. */

/* Compact navigation for the journal workspace. */
#nav-sidebar.journal-nav {
  left: calc(-19rem - var(--admin-border-width));
  flex: 0 0 19rem;
  box-sizing: border-box;
  margin-inline-start: calc(-19rem - var(--admin-border-width));
  background: var(--admin-surface-panel);
}

.main.shifted > #nav-sidebar.journal-nav {
  margin-inline-start: 0;
}

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

[dir="rtl"] #nav-sidebar.journal-nav {
  right: calc(-19rem - var(--admin-border-width));
  left: 0;
  margin-inline: calc(-19rem - var(--admin-border-width)) 0;
}

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

.journal-nav__heading {
  padding: var(--admin-space-5) var(--admin-space-4);
  background: var(--admin-strong-bg);
  color: var(--admin-on-strong);
  font-family: var(--admin-font-heading);
  font-size: var(--admin-size-lead);
  font-weight: var(--admin-weight-bold);
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

#nav-sidebar.journal-nav #nav-filter {
  width: calc(100% - 2 * var(--admin-space-3));
  min-height: var(--admin-control-height);
  margin: var(--admin-space-3);
  padding-inline: var(--admin-space-3);
  border-radius: var(--admin-radius-sm);
}

.journal-nav__groups {
  padding: 0 var(--admin-space-3) var(--admin-space-5);
}

.journal-nav__group {
  overflow: hidden;
  margin-block-end: var(--admin-space-2);
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-sm);
  background: var(--admin-surface-row);
}

.journal-nav__group summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--admin-space-2);
  padding: var(--admin-space-3) var(--admin-space-4);
  background: var(--admin-strong-bg);
  color: var(--admin-on-strong);
  font-family: var(--admin-font-heading);
  font-weight: var(--admin-weight-semibold);
  cursor: pointer;
  list-style: none;
}

.journal-nav__group summary::-webkit-details-marker {
  display: none;
}

.journal-nav__group summary::after {
  content: "+";
  font-family: var(--admin-font-body);
  font-weight: var(--admin-weight-bold);
}

.journal-nav__group[open] summary::after {
  content: "\2212";
}

.journal-nav__group table {
  margin: 0;
  border: 0;
  border-collapse: collapse;
}

#nav-sidebar .journal-nav__group th {
  padding: 0;
  border-block-start: var(--admin-border-width) solid var(--admin-divider);
}

#nav-sidebar .journal-nav__group a {
  display: block;
  padding: var(--admin-space-3) var(--admin-space-4);
  color: var(--admin-link);
  font-weight: var(--admin-weight-medium);
  text-decoration: none;
}

#nav-sidebar .journal-nav__group a:hover,
#nav-sidebar .journal-nav__group a:focus {
  background: var(--admin-hover-bg);
  color: var(--admin-hover-fg);
}

#nav-sidebar .journal-nav__group .current-model,
#nav-sidebar .journal-nav__group .current-model a {
  background: var(--admin-selected-bg);
  color: var(--admin-selected-fg);
  font-weight: var(--admin-weight-bold);
}

@media (max-width: 767px) {
  .main.shifted > #nav-sidebar.journal-nav + .content {
    max-width: 100%;
  }
}

.dashboard #content-main .module {
  margin-block-end: var(--admin-space-6);
}

.dashboard #content-main .module table th,
.dashboard #content-main .module table td {
  padding: var(--admin-space-4);
}

.dashboard #content-main .module:has(table:empty),
.dashboard #content-main .module table:empty {
  display: none;
}

.alpekin-admin-sections {
  display: grid;
  gap: var(--admin-space-7);
}

.alpekin-admin-section {
  padding: var(--admin-space-6);
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-md);
  background: var(--admin-surface-panel);
  box-shadow: 0 0.35rem 1.25rem var(--admin-shadow-color);
}

.alpekin-admin-section__header {
  margin-block-end: var(--admin-space-5);
  padding-block-end: var(--admin-space-4);
  border-block-end: var(--admin-border-width) solid var(--admin-accent-bg);
}

.alpekin-admin-section__header h2,
.alpekin-admin-section__header p {
  margin: 0;
}

.alpekin-admin-section__header h2 {
  color: var(--admin-heading);
  font-size: var(--admin-size-title);
}

.alpekin-admin-section__header p {
  margin-block-start: var(--admin-space-1);
  color: var(--admin-text-muted);
}

.alpekin-admin-hubs {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 17rem), 22rem));
  gap: var(--admin-space-6);
  align-items: stretch;
}

.dashboard .alpekin-admin-hubs .module {
  min-height: 10rem;
  margin: 0;
}

.dashboard .alpekin-admin-hub-tile {
  overflow: hidden;
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-md);
  background: var(--admin-strong-bg);
}

.dashboard .alpekin-admin-hub-tile > a,
.dashboard .alpekin-admin-hub-tile > span {
  display: flex;
  align-items: flex-end;
  box-sizing: border-box;
  width: 100%;
  min-height: 10rem;
  padding: var(--admin-space-6);
  color: var(--admin-on-strong) !important;
  font-family: var(--admin-font-heading);
  font-size: 1.35rem;
  font-weight: var(--admin-weight-semibold);
  line-height: 1.15;
  text-decoration: none;
}

.dashboard .alpekin-admin-hub-tile:hover,
.dashboard .alpekin-admin-hub-tile:focus-within {
  border-color: var(--admin-accent-bg);
  background: var(--admin-button-hover-bg);
}

.alpekin-admin-hubs .module table {
  display: block;
  width: 100%;
  height: 100%;
}

.alpekin-admin-hubs .module caption {
  display: flex;
  width: 100%;
  height: 100%;
  min-height: 10rem;
  padding: 0;
}

.alpekin-admin-hubs .module caption a {
  display: flex;
  align-items: flex-end;
  width: 100%;
  padding: var(--admin-space-6);
  font-size: 1.35rem;
  line-height: 1.15;
}

.alpekin-admin-hubs .module thead,
.alpekin-admin-hubs .module tbody:empty {
  display: none;
}

.login #container {
  overflow: hidden;
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-md);
  background: var(--admin-surface-panel);
}

.login #header {
  min-height: auto;
}

.login #content {
  background: var(--admin-surface-panel);
}

.login .form-row label {
  color: var(--admin-text);
  font-weight: var(--admin-weight-semibold);
}


/* Quiet surface hierarchy for dense editorial work. */
.main,
.content,
#content {
  background: var(--admin-surface-canvas);
}

.module,
.inline-group,
.submit-row,
#toolbar,
#changelist-filter,
#content-related {
  background: var(--admin-surface-panel);
  box-shadow: 0 0.35rem 1.25rem var(--admin-shadow-color);
}

.change-form fieldset.module {
  margin-block-end: var(--admin-space-5);
}

.change-form .form-row {
  padding: var(--admin-space-3) var(--admin-space-4);
  background: var(--admin-surface-row);
}

.change-form .form-row:nth-child(even) {
  background: var(--admin-surface-row-alt);
}

.change-form .form-row label {
  color: var(--admin-link);
  font-size: var(--admin-size-sm);
  font-weight: var(--admin-weight-semibold);
}

.change-form .form-row .help {
  margin-block-start: var(--admin-space-1);
  font-size: var(--admin-size-xs);
  line-height: 1.45;
}

.model-article.change-form .form-row.form-multiline {
  column-gap: var(--admin-space-8);
  row-gap: var(--admin-space-4);
}

.journal-dependent-field--disabled {
  opacity: 0.6;
}

.journal-change-form .object-tools {
  display: flex;
  align-self: flex-end;
  justify-content: flex-end;
  gap: var(--admin-space-2);
  width: auto;
  margin: 0 0 var(--admin-space-4);
}

.journal-change-form .object-tools li,
.journal-change-form .object-tools li + li {
  margin: 0;
}

.journal-change-form .object-tools a {
  display: inline-flex;
  float: none;
  align-items: center;
  justify-content: center;
  height: var(--admin-control-height);
  min-height: var(--admin-control-height);
  padding: var(--admin-space-2) var(--admin-space-4);
  border-radius: var(--admin-radius-sm) !important;
  font-size: var(--admin-size-xs);
  font-weight: var(--admin-weight-semibold);
  line-height: 1;
  text-transform: none;
  white-space: nowrap;
}

.journal-editor-actions a.journal-delete-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: var(--admin-control-height);
  height: auto;
  margin-inline-start: auto;
  padding: var(--admin-space-2) var(--admin-space-4);
  border: var(--admin-border-width) solid var(--delete-button-bg);
  border-radius: var(--admin-radius-sm);
  background: var(--admin-surface-panel);
  color: var(--delete-button-bg) !important;
  font-size: var(--admin-size-sm);
  font-weight: var(--admin-weight-semibold);
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
}

.journal-editor-actions a.journal-delete-link:hover,
.journal-editor-actions a.journal-delete-link:focus {
  border-color: var(--delete-button-hover-bg);
  background: var(--delete-button-hover-bg);
  color: var(--button-fg) !important;
  text-decoration: none;
}

@media (max-width: 767px) {
  .journal-editor-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--admin-space-2);
  }

  .journal-editor-actions > input,
  .journal-editor-actions > a,
  .journal-editor-actions a.journal-delete-link {
    width: 100%;
    margin: 0;
  }
}

/* Journal forms state validation requirements without relying on color alone. */
.journal-change-form .journal-field-legend {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--admin-space-2);
  margin-block-end: var(--admin-space-5);
  padding: var(--admin-space-3) var(--admin-space-4);
  border-inline-start: 0.25rem solid var(--admin-accent-bg);
  border-radius: var(--admin-radius-sm);
  background: var(--admin-surface-alt);
  color: var(--admin-text);
  font-size: var(--admin-size-xs);
}

.journal-change-form .journal-field-legend__item,
.journal-change-form .journal-field-heading {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--admin-space-2);
}

.journal-change-form .journal-field-legend__item {
  flex-wrap: nowrap;
}

.journal-change-form .journal-field-heading label {
  margin: 0;
}

.journal-change-form .checkbox {
  align-items: center;
  flex-wrap: wrap;
  gap: var(--admin-space-2);
}

.journal-change-form .journal-field-status {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  min-height: 1.35rem;
  margin: 0;
  padding: 0.1rem var(--admin-space-2);
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-pill);
  font-size: var(--admin-size-xs);
  font-weight: var(--admin-weight-semibold);
  line-height: 1;
  vertical-align: middle;
  white-space: nowrap;
}

.journal-change-form .journal-field-status--required {
  border-color: var(--admin-default-button-bg);
  background: var(--admin-accent-bg);
  color: var(--admin-accent-fg);
}

.journal-change-form .journal-field-status--optional {
  background: var(--admin-surface-alt);
  color: var(--admin-text-muted);
}

/* Reference-source JSON loading is an optional adapter around the core schema. */
.journal-json-loader {
  margin-block-end: var(--admin-space-5);
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-md);
  background: var(--admin-surface-panel);
  color: var(--admin-text);
}

.journal-json-loader > summary {
  padding: var(--admin-space-3) var(--admin-space-4);
  background: var(--admin-strong-bg);
  color: var(--admin-on-strong);
  font-family: var(--admin-font-heading);
  font-weight: var(--admin-weight-semibold);
  cursor: pointer;
}

.journal-json-loader__content {
  display: grid;
  gap: var(--admin-space-3);
  padding: var(--admin-space-4);
}

.journal-json-loader__content > :is(p, label) {
  margin: 0;
}

.journal-json-loader textarea {
  box-sizing: border-box;
  width: min(100%, 70rem);
  min-height: 14rem;
  font-family: var(--admin-font-body);
}

.journal-json-loader__actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--admin-space-2);
}

.journal-json-loader input[type="file"] {
  max-width: 24rem;
}

.journal-json-loader__status {
  min-height: 1.5rem;
  padding: var(--admin-space-2) var(--admin-space-3);
  border-inline-start: 0.25rem solid var(--admin-success-bg);
  background: var(--admin-surface-alt);
  color: var(--admin-text);
  white-space: pre-line;
}

.journal-json-loader__status:empty {
  display: none;
}

.journal-json-loader__status--error {
  border-inline-start-color: var(--admin-error-bg);
}

.journal-json-loader__example {
  max-width: 70rem;
}

.journal-json-loader__example > summary {
  margin-block-end: var(--admin-space-2);
  color: var(--admin-link);
  cursor: pointer;
}

.journal-json-loader__example pre {
  overflow: auto;
  max-height: 28rem;
  padding: var(--admin-space-4);
  border-radius: var(--admin-radius-sm);
  background: var(--admin-code-bg);
  color: var(--admin-code-fg);
  font-family: var(--admin-font-body);
}

.change-form .aligned input:not([type="checkbox"], [type="radio"], [type="file"]),
.change-form .aligned select {
  max-width: min(100%, 46rem);
}

.change-form .aligned textarea {
  width: min(100%, 70rem);
}

/* Keep the primary article writing fields on one consistent reading measure. */
.model-article.change-form :is(
  .field-title,
  .field-subtitle,
  .field-slug
) input,
.model-articletranslation.change-form :is(
  .field-title,
  .field-subtitle,
  .field-slug
) input,
.model-article.change-form :is(.field-excerpt, .field-body) textarea,
.model-articletranslation.change-form :is(.field-excerpt, .field-body) textarea {
  box-sizing: border-box;
  width: min(100%, 70rem) !important;
  max-width: 70rem !important;
}

.change-form .aligned select[multiple]:not(.admin-autocomplete) {
  width: min(100%, 46rem);
  min-height: 10rem;
}

/* Autocomplete-backed many-to-many fields stay compact until enhanced. */
.change-form .aligned select.admin-autocomplete[multiple] {
  width: min(100%, 46rem);
  min-height: var(--admin-control-height);
  height: var(--admin-control-height);
}

.change-form .select2-container--admin-autocomplete {
  width: min(100%, 46rem) !important;
  max-width: 46rem;
}

.change-form
  .select2-container--admin-autocomplete
  .select2-selection--multiple {
  min-height: var(--admin-control-height) !important;
  height: auto;
  padding: var(--admin-space-1) var(--admin-space-2) !important;
}

.change-form
  .select2-container--admin-autocomplete
  .select2-selection--multiple
  .select2-selection__rendered {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--admin-space-1);
  min-height: calc(var(--admin-control-height) - var(--admin-space-2));
  padding: 0 !important;
}

.change-form
  .select2-container--admin-autocomplete
  .select2-search--inline
  .select2-search__field {
  height: calc(var(--admin-control-height) - var(--admin-space-2));
  min-height: 0;
  margin: 0;
}

/* Empty multi-value taxonomy controls should read as dropdowns, not tiny inputs. */
.model-article.change-form
  :is(.journal-section-taxonomy, .journal-section-private-taxonomy)
  .select2-selection--multiple {
  position: relative;
  padding-right: calc(var(--admin-space-3) + 1rem) !important;
}

.model-article.change-form
  :is(.journal-section-taxonomy, .journal-section-private-taxonomy)
  .select2-selection--multiple::after {
  position: absolute;
  top: 50%;
  right: var(--admin-space-3);
  width: 0;
  height: 0;
  border: 0.35rem solid transparent;
  border-top-color: var(--admin-link);
  content: "";
  transform: translateY(-20%);
  pointer-events: none;
}

.model-article.change-form
  :is(.journal-section-taxonomy, .journal-section-private-taxonomy)
  .select2-search--inline {
  flex: 1 1 12rem;
  margin: 0;
}

.model-article.change-form
  :is(.journal-section-taxonomy, .journal-section-private-taxonomy)
  .select2-search--inline
  .select2-search__field {
  width: 100% !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.change-form .related-widget-wrapper {
  gap: var(--admin-space-2);
  align-items: center;
}

/* Collapsed fieldsets remain visually equal to open sections. */
fieldset.module.collapse > details > summary {
  display: flex;
  align-items: center;
  gap: var(--admin-space-3);
  min-height: 3rem;
  padding: var(--admin-space-3) var(--admin-space-4);
  list-style: none;
  background: var(--admin-strong-bg);
  color: var(--admin-on-strong);
  cursor: pointer;
}

fieldset.module.collapse > details > summary::-webkit-details-marker {
  display: none;
}

fieldset.module.collapse > details > summary .fieldset-heading {
  flex: 1;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
}

fieldset.module.collapse > details > summary::after {
  content: "+";
  font-family: var(--admin-font-body);
  font-size: 1.25rem;
  font-weight: var(--admin-weight-bold);
  line-height: 1;
}

fieldset.module.collapse > details[open] > summary::after {
  content: "\2212";
}

/* The article editor uses a few meaningful stages instead of one accordion per field group. */
.journal-editor-nav {
  display: flex;
  flex-wrap: wrap;
  gap: var(--admin-space-2);
  margin-block: var(--admin-space-5);
  padding: var(--admin-space-3);
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-md);
  background: var(--admin-surface-panel);
}

.journal-editor-nav a {
  padding: var(--admin-space-2) var(--admin-space-3);
  border-radius: var(--admin-radius-sm);
  background: var(--admin-strong-bg);
  color: var(--admin-on-strong);
  text-decoration: none;
}

.journal-editor-nav a:hover,
.journal-editor-nav a:focus-visible {
  background: var(--admin-accent-bg);
  color: var(--admin-accent-fg);
}

.journal-editor-section {
  margin-block: var(--admin-space-5);
}

.journal-editor-section > details > .description {
  padding: var(--admin-space-3) var(--admin-space-5);
}

.journal-editor-section > details > fieldset.module,
.journal-editor-subsection {
  margin: var(--admin-space-4);
}

.journal-editor-subsection {
  overflow: hidden;
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-md);
  background: var(--admin-surface-panel);
}

.journal-editor-subsection__header {
  padding: var(--admin-space-3) var(--admin-space-4);
  background: var(--admin-strong-bg);
  color: var(--admin-on-strong);
}

.journal-editor-subsection__header :is(h3, h4) {
  margin: 0;
  color: inherit;
}

.journal-editor-subsection > .description,
.journal-editor-subsection > .journal-component-library-actions {
  margin-inline: var(--admin-space-4);
}

.journal-component-group {
  margin: var(--admin-space-4);
}

.journal-component-group + .journal-component-group {
  margin-block-start: var(--admin-space-7);
  padding-block-start: var(--admin-space-7);
  border-block-start: var(--admin-border-width) solid var(--admin-divider);
}

.journal-component-group__header {
  margin-block-end: var(--admin-space-4);
  padding-inline-start: var(--admin-space-4);
  border-inline-start: var(--admin-space-1) solid var(--tree-gold);
}

.journal-component-group__header h3,
.journal-component-group__header p {
  margin: 0;
}

.journal-component-group__header h3 {
  font-size: var(--admin-size-lead);
}

.journal-component-group__header p {
  margin-block-start: var(--admin-space-1);
  color: var(--admin-text-muted);
  font-size: var(--admin-size-sm);
}

.journal-component-group > .journal-editor-subsection {
  margin-inline: 0;
}

.journal-editor-plain-subsection {
  margin: var(--admin-space-4);
}

.journal-editor-plain-subsection__header h3 {
  margin: 0;
  font-size: var(--admin-size-lead);
}

.journal-editor-plain-subsection > .description {
  margin-block: var(--admin-space-1) var(--admin-space-3);
}

.journal-seo-editor {
  margin: var(--admin-space-4);
}

.journal-seo-editor > .description {
  margin-block: 0 var(--admin-space-4);
}

.journal-seo-group + .journal-seo-group {
  margin-block-start: var(--admin-space-5);
  padding-block-start: var(--admin-space-5);
  border-block-start: var(--admin-border-width) solid var(--admin-divider);
}

.journal-seo-group__header {
  margin-block-end: var(--admin-space-3);
}

.journal-seo-group__header h3,
.journal-seo-group__header p {
  margin: 0;
}

.journal-seo-group__header p {
  margin-block-start: var(--admin-space-1);
  color: var(--admin-text-muted);
}

.journal-seo-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: var(--admin-space-8);
  row-gap: var(--admin-space-3);
}

.journal-seo-grid--controls {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.journal-seo-grid .form-row {
  margin: 0;
}

.journal-seo-field--wide {
  grid-column: 1 / -1;
}

@media (max-width: 900px) {
  .journal-seo-grid,
  .journal-seo-grid--controls {
    grid-template-columns: 1fr;
  }
}

.journal-back-to-top {
  position: fixed;
  right: var(--admin-space-4);
  bottom: var(--admin-space-4);
  z-index: 50;
  display: grid;
  place-items: center;
  width: 2.75rem;
  height: 2.75rem;
  min-height: 0;
  padding: 0;
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: 50%;
  background: var(--admin-button-bg);
  color: var(--admin-button-fg);
  font-size: 1.25rem;
  line-height: 1;
  box-shadow: 0 0.2rem 0.6rem var(--admin-shadow-color);
}

.journal-back-to-top[hidden] {
  display: none;
}

.journal-back-to-top:hover,
.journal-back-to-top:focus-visible {
  background: var(--admin-button-hover-bg);
}

[dir="rtl"] .journal-back-to-top {
  right: auto;
  left: var(--admin-space-4);
}

.journal-editor-activity-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--admin-space-4);
  padding: var(--admin-space-4);
}

.journal-editor-activity-grid .journal-translation-overview,
.journal-editor-activity-grid .journal-workspace__section {
  margin: 0;
}

/* Compact, readable tables with restrained interaction color. */
#changelist .results {
  overflow: auto;
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-md);
  background: var(--admin-surface-panel);
  box-shadow: 0 0.35rem 1.25rem var(--admin-shadow-color);
}

#result_list {
  margin: 0;
}

#result_list thead th,
#result_list tbody th,
#result_list tbody td {
  padding: 0.65rem var(--admin-space-3);
  vertical-align: middle;
}

#result_list tbody tr {
  background: var(--admin-surface-row);
}

#result_list tbody tr:nth-child(even) {
  background: var(--admin-surface-row-alt);
}

#result_list tbody tr:hover {
  background: var(--admin-surface-hover);
}

#result_list tbody tr.selected {
  background: var(--admin-surface-hover);
}

#result_list thead th {
  background: var(--admin-surface-strong);
  color: var(--admin-text);
  font-size: var(--admin-size-xs);
  font-weight: var(--admin-weight-bold);
  letter-spacing: 0.025em;
}

#toolbar,
.actions {
  padding: var(--admin-space-3);
}

#changelist-filter {
  margin-inline-start: var(--admin-space-4);
}

/* Keep journal list filters compact and easy to scan. */
.journal-change-list #changelist-filter {
  flex-basis: 14rem;
}

.journal-change-list #changelist-filter h2 {
  margin: 0;
  padding: var(--admin-space-3) var(--admin-space-4);
  font-size: 1rem;
}

.journal-change-list #changelist-filter-extra-actions {
  display: grid;
  gap: var(--admin-space-1);
  margin: 0;
  padding: var(--admin-space-2) var(--admin-space-3);
}

.journal-change-list #changelist-filter-extra-actions h3 {
  margin: 0;
  padding: 0;
  font-size: var(--admin-size-xs);
}

.journal-change-list #changelist-filter-extra-actions a {
  padding: var(--admin-space-1);
}

.journal-change-list #changelist-filter details {
  border-block-end: var(--admin-border-width) solid var(--admin-divider);
}

.journal-change-list #changelist-filter details:last-child {
  border-block-end: 0;
}

.journal-change-list #changelist-filter details summary {
  display: flex;
  align-items: center;
  gap: var(--admin-space-2);
  margin: 0;
  padding: var(--admin-space-3);
  background: var(--admin-surface-row-alt);
  color: var(--admin-text);
  font-size: var(--admin-size-sm);
  font-weight: var(--admin-weight-semibold);
  line-height: var(--admin-line-tight);
  cursor: pointer;
}

.journal-change-list #changelist-filter details summary::before {
  content: "+";
  width: 1em;
  color: var(--admin-link);
  font-weight: var(--admin-weight-bold);
  text-align: center;
}

.journal-change-list #changelist-filter details[open] summary::before {
  content: "\2212";
}

.journal-change-list #changelist-filter ul {
  display: grid;
  gap: var(--admin-space-1);
  margin: 0;
  padding: var(--admin-space-2) var(--admin-space-3)
    var(--admin-space-3);
  border: 0;
}

.journal-change-list #changelist-filter li {
  margin: 0;
  padding: 0;
  border: 0;
}

.journal-change-list #changelist-filter li a {
  padding: var(--admin-space-1) var(--admin-space-2);
  border-inline-start: 3px solid transparent;
  border-radius: var(--admin-radius-xs);
  font-size: var(--admin-size-sm);
  line-height: 1.35;
  text-decoration: none;
}

.journal-change-list #changelist-filter li.selected a {
  border-inline-start-color: var(--admin-accent-bg);
  background: var(--admin-selected-bg);
  color: var(--admin-selected-fg);
  font-weight: var(--admin-weight-semibold);
}

.journal-change-list #changelist-filter li a:hover,
.journal-change-list #changelist-filter li a:focus {
  background: var(--admin-hover-bg);
  color: var(--admin-hover-fg);
}

/* File previews are intentionally modest so they assist without taking over. */
.alpekin-image-preview {
  display: none;
  width: fit-content;
  max-width: min(100%, 20rem);
  margin: var(--admin-space-3) 0 0;
  padding: var(--admin-space-2);
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-sm);
  background: var(--admin-surface-panel);
}

.alpekin-image-preview.is-visible {
  display: grid;
  gap: var(--admin-space-2);
}

.alpekin-image-preview img {
  display: block;
  max-width: 100%;
  max-height: 13rem;
  border-radius: var(--admin-radius-xs);
  object-fit: contain;
}

.alpekin-image-preview figcaption {
  color: var(--admin-text-muted);
  font-size: var(--admin-size-xs);
}

/* Keep long editorial screens efficient on tablets and phones. */
@media (max-width: 1024px) {
  #content {
    padding: var(--admin-space-5);
  }

  #changelist-filter {
    flex-basis: 13rem;
    margin-inline-start: var(--admin-space-3);
  }
}

@media (max-width: 767px) {
  #content {
    padding: var(--admin-space-3);
  }

  .change-form .form-row {
    padding: var(--admin-space-3);
  }

  .change-form .aligned .form-row > div,
  .change-form .aligned .fieldBox {
    min-width: 0;
    width: 100%;
  }

  .change-form .aligned label:not(.vCheckboxLabel) {
    display: block;
    float: none;
    width: auto;
    margin-block-end: var(--admin-space-1);
  }

  .change-form .aligned input:not([type="checkbox"], [type="radio"]),
  .change-form .aligned select,
  .change-form .aligned textarea {
    width: 100%;
    max-width: 100%;
  }

  #changelist .results {
    border-radius: var(--admin-radius-sm);
  }

  #result_list {
    min-width: 46rem;
  }

  #changelist-filter {
    margin-inline-start: 0;
    box-shadow: none;
  }

  .submit-row {
    gap: var(--admin-space-2);
    padding: var(--admin-space-3);
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}

/* The journal landing page follows the active editorial workspace theme. */
.journal-dashboard,
.journal-dashboard #container,
.journal-dashboard .main,
.journal-dashboard .content,
.journal-dashboard #content {
  background: var(--admin-surface-canvas);
}

.journal-dashboard #content {
  box-sizing: border-box;
  width: 100%;
  max-width: 120rem;
  margin-inline: auto;
  padding: clamp(var(--admin-space-6), 3.5vw, 4rem);
  color: var(--admin-text);
}

.journal-dashboard .content-title {
  margin: 0;
}

.journal-dashboard__hero {
  max-width: 72rem;
  margin-block-end: var(--admin-space-6);
  padding-block-end: var(--admin-space-6);
  border-block-end: var(--admin-border-width) solid var(--admin-accent-bg);
}

.journal-dashboard__eyebrow {
  margin: 0 0 var(--admin-space-2);
  color: var(--admin-accent-bg);
  font-size: var(--admin-size-xs);
  font-weight: var(--admin-weight-bold);
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.journal-dashboard__hero h1 {
  margin: 0;
  color: var(--admin-heading);
  font-size: clamp(2rem, 4vw, 3.25rem);
  line-height: var(--admin-line-tight);
}

.journal-dashboard__intro {
  margin: var(--admin-space-2) 0 0;
  color: var(--admin-text-muted);
  font-size: var(--admin-size-lead);
}

.journal-quick-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--admin-space-3);
  margin-block-end: var(--admin-space-8);
}

.journal-quick-actions__link {
  padding: var(--admin-space-3) var(--admin-space-5);
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-sm);
  background: var(--admin-button-bg);
  color: var(--admin-button-fg) !important;
  font-weight: var(--admin-weight-semibold);
  text-decoration: none;
  transition:
    border-color var(--admin-transition),
    background var(--admin-transition),
    transform var(--admin-transition);
}

.journal-quick-actions__link:first-child {
  border-color: var(--admin-accent-bg);
  background: var(--admin-accent-bg);
  color: var(--admin-accent-fg) !important;
}

.journal-quick-actions__link:hover,
.journal-quick-actions__link:focus {
  border-color: var(--admin-accent-bg);
  background: var(--admin-button-hover-bg);
  color: var(--admin-button-fg) !important;
  transform: translateY(-1px);
}

.journal-overview,
.journal-insight,
.journal-tool {
  overflow: hidden;
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-md);
  background: var(--admin-surface-panel);
}

.journal-overview {
  margin-block-end: var(--admin-space-6);
}

.journal-overview > header,
.journal-insight > header,
.journal-tool__header {
  padding: var(--admin-space-4) var(--admin-space-5);
  background: var(--admin-strong-bg);
  color: var(--admin-on-strong);
}

.journal-overview h2,
.journal-insight h2,
.journal-tool__header h1,
.journal-tool__header p {
  margin: 0;
  color: inherit;
}

.journal-overview__cards {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.journal-overview__cards a {
  display: flex;
  min-height: 5rem;
  flex-direction: column;
  justify-content: space-between;
  gap: var(--admin-space-2);
  padding: var(--admin-space-4);
  border-inline-end: var(--admin-border-width) solid var(--admin-divider);
  background: var(--admin-surface-row);
  color: var(--admin-link);
  text-decoration: none;
}

.journal-overview__cards a:nth-child(even) {
  background: var(--admin-surface-row-alt);
}

.journal-overview__cards a:hover,
.journal-overview__cards a:focus {
  background: var(--admin-surface-hover);
  color: var(--admin-hover-fg);
}

.journal-overview__cards strong {
  color: var(--admin-heading);
  font-family: var(--admin-font-heading);
  font-size: var(--admin-size-title);
}

.journal-dashboard-calendar {
  overflow: hidden;
  margin-block-end: var(--admin-space-6);
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-md);
  background: var(--admin-surface-panel);
}

.journal-dashboard-calendar > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--admin-space-4);
  padding: var(--admin-space-4) var(--admin-space-5);
  background: var(--admin-strong-bg);
  color: var(--admin-on-strong);
}

.journal-dashboard-calendar h2,
.journal-dashboard-calendar header p {
  margin: 0;
  color: inherit;
}

.journal-dashboard-calendar header p {
  margin-block-start: var(--admin-space-1);
  color: var(--admin-on-strong-muted);
  font-size: var(--admin-size-sm);
}

.journal-dashboard-calendar nav {
  display: flex;
  gap: var(--admin-space-2);
}

.journal-dashboard-calendar nav a {
  padding: var(--admin-space-2) var(--admin-space-3);
  border: var(--admin-border-width) solid var(--admin-accent-bg);
  border-radius: var(--admin-radius-sm);
  background: var(--admin-accent-bg);
  color: var(--admin-accent-fg) !important;
  font-weight: var(--admin-weight-semibold);
  text-decoration: none;
}

.journal-dashboard-calendar__week {
  display: grid;
  grid-template-columns: repeat(7, minmax(8.5rem, 1fr));
  overflow-x: auto;
}

.journal-dashboard-calendar__day {
  display: flex;
  min-height: 7.5rem;
  flex-direction: column;
  gap: var(--admin-space-2);
  padding: var(--admin-space-4);
  border-inline-end: var(--admin-border-width) solid var(--admin-divider);
  background: var(--admin-surface-row);
  color: var(--admin-link);
  text-decoration: none;
}

.journal-dashboard-calendar__day:last-child {
  border-inline-end: 0;
}

.journal-dashboard-calendar__day:hover,
.journal-dashboard-calendar__day:focus {
  background: var(--admin-surface-hover);
  color: var(--admin-hover-fg);
}

.journal-dashboard-calendar__day--today {
  background: var(--admin-surface-hover);
  box-shadow: inset 0 0 0 calc(var(--admin-border-width) * 3) var(--admin-accent-bg);
  font-weight: var(--admin-weight-semibold);
}

.journal-dashboard-calendar__day--today .journal-dashboard-calendar__weekday,
.journal-dashboard-calendar__day--today .journal-dashboard-calendar__counts {
  color: var(--admin-heading);
}

.journal-dashboard-calendar__weekday {
  color: var(--admin-text-muted);
  font-size: var(--admin-size-xs);
  font-weight: var(--admin-weight-bold);
  text-transform: uppercase;
}

.journal-dashboard-calendar__day strong {
  color: var(--admin-heading);
  font-family: var(--admin-font-heading);
  font-size: var(--admin-size-lead);
}

.journal-dashboard-calendar__counts {
  display: grid;
  gap: var(--admin-space-1);
  color: var(--admin-text-muted);
  font-size: var(--admin-size-xs);
}

.journal-dashboard-calendar__overdue {
  color: var(--admin-danger-bg);
  font-weight: var(--admin-weight-semibold);
}

.journal-dashboard-calendar__empty {
  color: var(--admin-text-muted);
}

.journal-dashboard__insights {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--admin-space-6);
  margin-block-end: var(--admin-space-6);
}

.journal-publishing-schedule {
  grid-column: 1 / -1;
}

.journal-recent-work {
  margin-block-end: var(--admin-space-6);
}

.journal-recent-work ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.journal-insight > header p {
  margin: var(--admin-space-1) 0 0;
  color: var(--admin-on-strong-muted);
}

.journal-insight ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.journal-insight li,
.journal-schedule-links a {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-1);
  padding: var(--admin-space-3) var(--admin-space-4);
  border-block-start: var(--admin-border-width) solid var(--admin-divider);
  background: var(--admin-surface-row);
}

.journal-insight li > span,
.journal-schedule-links span {
  color: var(--admin-text-muted);
  font-size: var(--admin-size-xs);
}

.journal-schedule-links a {
  color: var(--admin-link);
  text-decoration: none;
}

.journal-schedule-links a:hover,
.journal-schedule-links a:focus {
  background: var(--admin-surface-hover);
  color: var(--admin-hover-fg);
}

.journal-dashboard__groups {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: var(--admin-space-6);
}

.journal-dashboard__group {
  overflow: hidden;
  margin: 0 !important;
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: calc(var(--admin-radius-md) + var(--admin-radius-xs));
  background: var(--admin-surface-panel);
  box-shadow: 0 0.5rem 1.75rem var(--admin-shadow-color);
}

.journal-dashboard__group--1,
.journal-dashboard__group--2,
.journal-dashboard__group--3 {
  grid-column: 1 / -1;
}

.journal-dashboard__group--full-width {
  grid-column: 1 / -1;
}

.journal-dashboard__group-header {
  padding: var(--admin-space-5) var(--admin-space-6);
  border-block-end: var(--admin-border-width) solid var(--admin-border);
  background: var(--admin-strong-bg);
  color: var(--admin-on-strong);
}

.journal-dashboard__group-header h2 {
  margin: 0 0 var(--admin-space-1);
  padding: 0;
  background: transparent;
  color: inherit;
}

.journal-dashboard__group-header p {
  margin: 0;
  color: var(--admin-on-strong-muted);
  font-size: var(--admin-size-sm);
}

.journal-dashboard__items {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  background: var(--admin-surface-panel);
}

.journal-dashboard__group--2 .journal-dashboard__items {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.journal-dashboard__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--admin-space-3);
  min-height: 4.75rem;
  padding: var(--admin-space-4) var(--admin-space-5);
  border-inline-end: var(--admin-border-width) solid var(--admin-border);
  border-block-end: var(--admin-border-width) solid var(--admin-border);
  background: var(--admin-surface-row);
}

.journal-dashboard__item:nth-child(even) {
  background: var(--admin-surface-row-alt);
}

.journal-dashboard__item h3 {
  margin: 0;
  color: var(--admin-heading);
  font-size: var(--admin-size-body);
}

.journal-dashboard__item h3 a {
  color: var(--admin-link);
  text-decoration-color: var(--admin-accent-bg);
  text-underline-offset: 0.2em;
}

.journal-dashboard__item h3 a:hover,
.journal-dashboard__item h3 a:focus {
  color: var(--admin-link-hover);
}

.journal-dashboard__item-actions,
.journal-workspace__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--admin-space-2);
}

.journal-dashboard__item-actions a,
.journal-workspace__actions a {
  padding: var(--admin-space-1) var(--admin-space-3);
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-pill);
  background: var(--admin-surface-panel);
  color: var(--admin-link);
  font-size: var(--admin-size-xs);
  font-weight: var(--admin-weight-semibold);
  text-decoration: none;
}

.journal-dashboard__item-actions a {
  border-color: var(--admin-default-button-bg);
  background: var(--admin-button-bg);
  color: var(--admin-button-fg);
}

.journal-dashboard__item-actions a:hover,
.journal-workspace__actions a:hover {
  background: var(--admin-accent-bg);
  color: var(--admin-accent-fg);
}

.journal-dashboard__item-actions a:hover,
.journal-dashboard__item-actions a:focus {
  border-color: var(--admin-accent-bg);
  background: var(--admin-accent-bg);
  color: var(--admin-accent-fg);
}

/* Related records become an edition workspace instead of global menu noise. */
.journal-workspace {
  overflow: hidden;
  margin-block: var(--admin-space-6);
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-md);
  background: var(--admin-surface-panel);
  box-shadow: 0 0.35rem 1.25rem var(--admin-shadow-color);
}

.journal-workspace__header {
  padding: var(--admin-space-4) var(--admin-space-5);
  background: var(--admin-strong-bg);
  color: var(--admin-on-strong);
}

.journal-workspace__header h2,
.journal-workspace__header p {
  margin: 0;
  color: inherit;
}

.journal-workspace__header p {
  margin-block-start: var(--admin-space-1);
  color: var(--admin-on-strong-muted);
  font-size: var(--admin-size-sm);
}

.journal-workspace__sections {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--admin-space-5);
  padding: var(--admin-space-5);
  background: var(--admin-surface-alt);
}

.journal-workspace__panel {
  margin-block: var(--admin-space-5);
}

.journal-media-usage-list {
  display: grid;
}

.journal-media-usage-heading {
  margin: 0;
  padding: var(--admin-space-3) var(--admin-space-5);
  background: var(--admin-surface-alt);
  color: var(--admin-heading);
  text-transform: capitalize;
}

.journal-media-usage-row {
  display: grid;
  grid-template-columns: minmax(14rem, 2fr) repeat(3, minmax(7rem, 1fr));
  gap: var(--admin-space-3);
  padding: var(--admin-space-3) var(--admin-space-5);
  border-block-start: var(--admin-border-width) solid var(--admin-divider);
  background: var(--admin-surface-row);
}

.journal-media-usage-row:nth-child(even) {
  background: var(--admin-surface-row-alt);
}

.journal-media-empty-usage {
  margin: 0;
  padding: var(--admin-space-4) var(--admin-space-5);
  background: var(--admin-surface-row);
}

.journal-media-plan-warning {
  display: block;
  margin-block-start: var(--admin-space-1);
  color: var(--admin-error-bg);
}

.journal-media-plan-state {
  font-weight: var(--admin-weight-semibold);
}

.journal-media-plan-state--active,
.journal-media-plan-state--applied {
  color: var(--admin-success-bg);
}

.journal-media-plan-state--replacement {
  color: var(--admin-warning-bg);
}

.journal-workspace__section {
  overflow: hidden;
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-md);
  background: var(--admin-surface-panel);
  box-shadow: 0 0.25rem 0.8rem var(--admin-shadow-color);
}

.journal-workspace__section-header {
  min-height: 5.5rem;
  padding: var(--admin-space-4) var(--admin-space-5);
  border-block-end: var(--admin-border-width) solid var(--admin-accent-bg);
  background: var(--admin-strong-bg);
  color: var(--admin-on-strong);
}

.journal-workspace__section-header h3,
.journal-workspace__section-header p {
  margin: 0;
  color: inherit;
}

.journal-workspace__section-header h3 {
  font-size: var(--admin-size-lead);
}

.journal-workspace__section-header p {
  margin-block-start: var(--admin-space-1);
  color: var(--admin-on-strong-muted);
  font-size: var(--admin-size-xs);
}

.journal-workspace__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--admin-space-3);
  min-height: 6.5rem;
  padding: var(--admin-space-4) var(--admin-space-5);
  border-block-start: var(--admin-border-width) solid var(--admin-divider);
  background: var(--admin-surface-row);
}

.journal-workspace__item:first-child {
  border-block-start: 0;
}

.journal-workspace__item:nth-child(even) {
  background: var(--admin-surface-row-alt);
}

.journal-workspace__information {
  display: grid;
  gap: var(--admin-space-3);
  margin: 0;
  padding: var(--admin-space-4) var(--admin-space-5);
  background: var(--admin-surface-row);
}

.journal-workspace__information div {
  display: grid;
  grid-template-columns: minmax(7rem, 0.45fr) 1fr;
  gap: var(--admin-space-3);
}

.journal-workspace__information dt {
  color: var(--admin-text-muted);
  font-weight: var(--admin-weight-semibold);
}

.journal-workspace__information dd {
  margin: 0;
}

.journal-workspace__item h4,
.journal-workspace__item p {
  margin: 0;
}

/* Canonical records are the single entry point for translated editions. */
.journal-translation-overview {
  overflow: hidden;
  margin-block: var(--admin-space-6);
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-md);
  background: var(--admin-surface-panel);
  box-shadow: 0 0.35rem 1.25rem var(--admin-shadow-color);
}

.journal-translation-overview__header {
  padding: var(--admin-space-4) var(--admin-space-5);
  background: var(--admin-strong-bg);
  color: var(--admin-on-strong);
}

.journal-translation-overview__header h2,
.journal-translation-overview__header p {
  margin: 0;
  color: inherit;
}

.journal-translation-overview__header p {
  margin-block-start: var(--admin-space-1);
  color: var(--admin-on-strong-muted);
  font-size: var(--admin-size-sm);
}

.journal-translation-overview__table-wrap {
  overflow-x: auto;
}

.journal-translation-overview table {
  width: 100%;
  margin: 0;
}

.journal-translation-overview th,
.journal-translation-overview td {
  padding: var(--admin-space-3) var(--admin-space-5);
  border-block-end: var(--admin-border-width) solid var(--admin-divider);
  background: var(--admin-surface-row);
  color: var(--admin-text);
  text-align: start;
}

.journal-translation-overview tbody tr:nth-child(even) th,
.journal-translation-overview tbody tr:nth-child(even) td {
  background: var(--admin-surface-row-alt);
}

.journal-translation-overview small {
  color: var(--admin-text-muted);
}

.journal-translation-overview__action {
  display: inline-block;
  padding: var(--admin-space-1) var(--admin-space-3);
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-pill);
  background: var(--admin-button-bg);
  color: var(--admin-button-fg) !important;
  font-weight: var(--admin-weight-semibold);
  text-decoration: none;
}

.journal-translation-overview__action:hover,
.journal-translation-overview__action:focus {
  border-color: var(--admin-accent-bg);
  background: var(--admin-accent-bg);
  color: var(--admin-accent-fg) !important;
}

/* Compact cross-links keep staff inside the current editorial context. */
.journal-edition-tools,
.journal-context-nav {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--admin-space-2);
  margin-block: var(--admin-space-4);
  padding: var(--admin-space-3) var(--admin-space-4);
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-sm);
  background: var(--admin-surface-alt);
}

.journal-edition-tools a,
.journal-context-nav a {
  padding: var(--admin-space-2) var(--admin-space-3);
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-pill);
  background: var(--admin-button-bg);
  color: var(--admin-button-fg) !important;
  font-size: var(--admin-size-xs);
  font-weight: var(--admin-weight-semibold);
  text-decoration: none;
}

.journal-edition-tools a:hover,
.journal-edition-tools a:focus,
.journal-context-nav a:hover,
.journal-context-nav a:focus,
.journal-context-nav .journal-context-nav__primary {
  border-color: var(--admin-accent-bg);
  background: var(--admin-accent-bg);
  color: var(--admin-accent-fg) !important;
}

.journal-change-list .journal-context-nav {
  margin-block-start: 0;
}

.journal-workspace__item h4 {
  color: var(--admin-link);
  font-family: var(--admin-font-heading);
  font-size: var(--admin-size-body);
}

.journal-workspace__item p {
  margin-block-start: var(--admin-space-1);
  color: var(--admin-text-muted);
  font-size: var(--admin-size-xs);
}

.journal-workspace__item .journal-workspace__status {
  display: inline-block;
  margin-block-start: var(--admin-space-2);
  padding: var(--admin-space-1) var(--admin-space-2);
  border: var(--admin-border-width) solid var(--admin-accent-bg);
  border-radius: var(--admin-radius-pill);
  background: var(--admin-accent-bg);
  color: var(--admin-accent-fg);
  font-weight: var(--admin-weight-semibold);
}

.journal-workspace__item--disabled {
  opacity: 0.72;
}

.journal-workspace__actions a {
  border-color: var(--admin-default-button-bg);
  background: var(--admin-button-bg);
  color: var(--admin-button-fg);
}

.journal-fieldset-actions {
  display: flex;
  justify-content: flex-end;
  padding: 0 var(--admin-space-5) var(--admin-space-3);
}

.journal-fieldset-actions a {
  padding: var(--admin-space-1) var(--admin-space-3);
  border: var(--admin-border-width) solid var(--admin-default-button-bg);
  border-radius: var(--admin-radius-pill);
  background: var(--admin-button-bg);
  color: var(--admin-button-fg);
  font-size: var(--admin-size-xs);
  font-weight: var(--admin-weight-semibold);
  text-decoration: none;
}

/* Reusable media library: compact configuration and native previews. */
.journal-media-settings-summary {
  display: grid;
  grid-template-columns: minmax(14rem, 1fr) minmax(30rem, 2fr) auto;
  align-items: center;
  gap: var(--admin-space-5);
  margin-block-end: var(--admin-space-6);
  padding: var(--admin-space-5);
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-md);
  background: var(--admin-surface-panel);
}

.journal-media-settings-summary h2,
.journal-media-settings-summary p,
.journal-media-settings-summary dl {
  margin: 0;
}

.journal-media-settings-summary p,
.journal-media-settings-summary dd {
  color: var(--admin-text-muted);
}

.journal-media-settings-summary dl {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--admin-space-2) var(--admin-space-5);
}

.journal-media-settings-summary dl div {
  min-width: 0;
}

.journal-media-settings-summary dt {
  color: var(--admin-heading);
  font-weight: var(--admin-weight-semibold);
}

.journal-media-settings-summary dd {
  margin: 0;
  overflow-wrap: anywhere;
}

.journal-media-library-thumb {
  display: block;
  width: 4rem;
  height: 3rem;
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-xs);
  background: var(--admin-control-bg);
  object-fit: contain;
}

.journal-media-asset-summary {
  display: grid;
  grid-template-columns: minmax(10rem, 16rem) 1fr;
  gap: var(--admin-space-5);
  padding: var(--admin-space-5);
  background: var(--admin-surface-row);
}

.journal-media-asset-summary__preview img {
  display: block;
  width: 100%;
  max-height: 12rem;
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-sm);
  object-fit: contain;
}

.journal-media-asset-summary dl {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-content: start;
  gap: var(--admin-space-3) var(--admin-space-5);
  margin: 0;
}

.journal-media-asset-summary dt {
  color: var(--admin-text-muted);
  font-size: var(--admin-size-xs);
}

.journal-media-asset-summary dd {
  margin: var(--admin-space-1) 0 0;
  color: var(--admin-heading);
  font-weight: var(--admin-weight-semibold);
}

.journal-media-upload-preview {
  display: flex;
  align-items: center;
  min-height: 4rem;
  margin-block-start: var(--admin-space-4);
  padding: var(--admin-space-4);
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-sm);
  background: var(--admin-surface-alt);
}

.journal-media-upload-preview:empty {
  display: none;
}

.journal-media-upload-preview img,
.journal-media-upload-preview video {
  max-width: min(100%, 42rem);
  max-height: 26rem;
}

.journal-media-upload-preview audio {
  width: min(100%, 36rem);
}

.journal-media-settings-form ul {
  display: flex;
  flex-wrap: wrap;
  gap: var(--admin-space-2) var(--admin-space-4);
  margin: 0;
  padding: 0;
}

.journal-media-settings-form li {
  list-style: none;
}

@media (max-width: 70rem) {
  .journal-media-settings-summary {
    grid-template-columns: 1fr;
  }

  .journal-media-asset-summary {
    grid-template-columns: 1fr;
  }
}

.journal-component-library-actions {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: var(--admin-space-2);
  padding: 0 var(--admin-space-5) var(--admin-space-4);
}

.journal-component-library-actions a {
  padding: var(--admin-space-1) var(--admin-space-3);
  border: var(--admin-border-width) solid var(--admin-button-bg);
  border-radius: var(--admin-radius-pill);
  background: var(--admin-button-bg);
  color: var(--admin-button-fg) !important;
  font-size: var(--admin-size-xs);
  font-weight: var(--admin-weight-semibold);
  text-decoration: none;
}

.journal-media-placement {
  overflow: hidden;
  margin: 0 var(--admin-space-5) var(--admin-space-4);
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-md);
  background: var(--admin-surface-panel);
}

.journal-media-placement__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: var(--admin-space-3);
  padding: var(--admin-space-3) var(--admin-space-4);
  border-block-end: var(--admin-border-width) solid var(--admin-divider);
  background: var(--admin-surface-alt);
}

.journal-media-placement__header h3 {
  margin: 0;
  color: var(--admin-heading);
  font-size: var(--admin-size-body);
}

.journal-media-placement__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--admin-space-2);
}

.journal-media-placement__actions .button {
  min-height: 2rem;
  padding: var(--admin-space-1) var(--admin-space-2);
  font-size: var(--admin-size-xs);
}

.journal-media-placement__actions .journal-remove-component {
  border-color: var(--delete-button-bg) !important;
  background: transparent !important;
  color: var(--delete-button-bg) !important;
}

.journal-media-placement__search {
  display: grid;
  gap: var(--admin-space-1);
  padding: var(--admin-space-3) var(--admin-space-4);
  color: var(--admin-link);
  font-size: var(--admin-size-xs);
  font-weight: var(--admin-weight-semibold);
}

.journal-media-placement__search input {
  width: min(100%, 28rem);
}

.journal-media-placement .field-caption textarea {
  min-height: 7rem;
}

.journal-media-preview {
  display: flex;
  align-items: center;
  gap: var(--admin-space-3);
  margin: var(--admin-space-3) var(--admin-space-4);
  padding: var(--admin-space-3);
  border: var(--admin-border-width) solid var(--admin-divider);
  border-radius: var(--admin-radius-sm);
  background: var(--admin-surface-alt);
}

.journal-media-preview[hidden] {
  display: none;
}

.journal-media-preview img {
  width: 7rem;
  height: 5rem;
  border-radius: var(--admin-radius-sm);
  object-fit: cover;
}

.journal-media-preview div {
  display: grid;
  gap: var(--admin-space-1);
}

.journal-media-preview span,
.journal-media-requirement {
  color: var(--admin-text-muted);
  font-size: var(--admin-size-xs);
}

.journal-media-preview a {
  font-size: var(--admin-size-xs);
  font-weight: var(--admin-weight-semibold);
}

.journal-media-requirement {
  margin: 0;
  padding: 0 var(--admin-space-4) var(--admin-space-3);
}

.journal-media-requirement[data-required="true"] {
  color: var(--admin-link);
  font-weight: var(--admin-weight-semibold);
}

.journal-add-component {
  margin: 0 var(--admin-space-5) var(--admin-space-4);
}

[data-component-usage-status]:not(:empty) {
  display: block;
  padding: var(--admin-space-2) var(--admin-space-4);
  color: var(--admin-text-muted);
  font-size: var(--admin-size-xs);
}

[data-component-row][data-body-usage="unused"] {
  border-color: var(--admin-text-muted);
}

/* The single quality gate remains the final field on the article form. */
.journal-final-review {
  overflow: hidden;
  margin-block: var(--admin-space-6);
  border: var(--admin-border-width) solid var(--admin-accent-bg);
  border-radius: var(--admin-radius-md);
  background: var(--admin-surface-panel);
  box-shadow: 0 0.35rem 1.25rem var(--admin-shadow-color);
}

.journal-final-review__header {
  padding: var(--admin-space-4) var(--admin-space-5);
  background: var(--admin-strong-bg);
  color: var(--admin-on-strong);
}

.journal-final-review__header h2,
.journal-final-review__header p {
  margin: 0;
  color: inherit;
}

.journal-final-review__header p {
  margin-block-start: var(--admin-space-1);
  color: var(--admin-on-strong-muted);
  font-size: var(--admin-size-sm);
}

.journal-final-review__field {
  padding: var(--admin-space-5);
  background: var(--admin-surface-row);
}

.journal-final-review__control {
  display: flex;
  align-items: center;
  gap: var(--admin-space-3);
}

.journal-final-review__control label {
  color: var(--admin-heading);
  font-family: var(--admin-font-heading);
  font-size: var(--admin-size-lead);
  font-weight: var(--admin-weight-semibold);
}

.journal-final-review__field .help {
  margin-block-start: var(--admin-space-2);
  color: var(--admin-text-muted);
}

/* Focused tools share one compact, token-only administrative surface. */
.journal-tool-page #content {
  width: min(100%, var(--admin-content-max));
  margin-inline: auto;
}

.journal-tool__header p {
  margin-block-start: var(--admin-space-1);
  color: var(--admin-on-strong-muted);
}

.journal-tool__actions {
  display: flex;
  align-items: center;
  gap: var(--admin-space-3);
  padding: var(--admin-space-4);
}

.journal-tool__actions a {
  color: var(--admin-link);
}

.journal-tool__empty {
  margin: 0;
  padding: var(--admin-space-5);
  color: var(--admin-text-muted);
}

.journal-order-form__row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 7rem;
  align-items: center;
  gap: var(--admin-space-4);
  padding: var(--admin-space-3) var(--admin-space-4);
  border-block-end: var(--admin-border-width) solid var(--admin-divider);
  background: var(--admin-surface-row);
}

.journal-order-form__row:nth-child(even) {
  background: var(--admin-surface-row-alt);
}

.journal-order-form__row input {
  width: 100%;
}

.journal-usage {
  margin-block: var(--admin-space-5);
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-sm);
  background: var(--admin-surface-panel);
}

.journal-usage h2 {
  margin: 0;
  padding: var(--admin-space-3) var(--admin-space-4);
  background: var(--admin-strong-bg);
  color: var(--admin-on-strong);
}

.journal-usage dl,
.journal-metrics {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
  margin: 0;
}

.journal-usage dl > div,
.journal-metrics > div {
  padding: var(--admin-space-4);
  border-inline-end: var(--admin-border-width) solid var(--admin-divider);
}

.journal-usage dt,
.journal-metrics dt {
  color: var(--admin-text-muted);
  font-size: var(--admin-size-xs);
}

.journal-usage dd,
.journal-metrics dd {
  margin: var(--admin-space-1) 0 0;
  color: var(--admin-heading);
  font-family: var(--admin-font-heading);
  font-size: var(--admin-size-title);
}

.journal-analytics__filters {
  display: grid;
  grid-template-columns: minmax(16rem, 2fr) repeat(2, minmax(10rem, 1fr)) auto;
  align-items: end;
  gap: var(--admin-space-4);
  padding: var(--admin-space-4);
  border-block-end: var(--admin-border-width) solid var(--admin-divider);
}

.journal-analytics__filters > div {
  display: grid;
  gap: var(--admin-space-1);
}

.journal-analytics section > h2 {
  margin: 0;
  padding: var(--admin-space-4);
}

.journal-chart {
  border-block-start: var(--admin-border-width) solid var(--admin-divider);
}

.journal-chart__legend {
  display: flex;
  gap: var(--admin-space-5);
  padding: 0 var(--admin-space-4) var(--admin-space-3);
  color: var(--admin-text-muted);
  font-size: var(--admin-size-xs);
}

.journal-chart__legend span::before {
  display: inline-block;
  width: var(--admin-space-3);
  height: var(--admin-space-3);
  margin-inline-end: var(--admin-space-1);
  background: var(--admin-accent-bg);
  content: "";
}

.journal-chart__legend span:last-child::before {
  background: var(--admin-info-bg);
}

.journal-chart__row {
  display: grid;
  grid-template-columns: 8rem minmax(0, 1fr);
  align-items: center;
  gap: var(--admin-space-3);
  padding: var(--admin-space-2) var(--admin-space-4);
  border-block-start: var(--admin-border-width) solid var(--admin-divider);
}

.journal-chart__bars {
  display: grid;
  gap: var(--admin-space-1);
}

.journal-chart__bar {
  display: block;
  width: var(--bar-size);
  min-width: var(--admin-space-1);
  padding-inline: var(--admin-space-1);
  background: var(--admin-accent-bg);
  color: var(--admin-accent-fg);
  text-align: end;
}

.journal-chart__bar--reads {
  background: var(--admin-info-bg);
  color: var(--admin-text);
}

@media (max-width: 1100px) {
  .journal-overview__cards {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .journal-dashboard__group--2 .journal-dashboard__items {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .journal-dashboard__groups,
  .journal-dashboard__insights,
  .journal-recent-work ul,
  .journal-workspace__sections,
  .journal-editor-activity-grid {
    grid-template-columns: 1fr;
  }

  .journal-dashboard__group--2 .journal-dashboard__items {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .journal-analytics__filters {
    grid-template-columns: 1fr;
  }
}

.journal-readiness-summary,
.journal-seo-preview {
  margin-block: var(--admin-space-4);
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-sm);
  background: var(--admin-surface-panel);
}

.journal-readiness-summary > header,
.journal-seo-preview > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--admin-space-4);
  padding: var(--admin-space-3) var(--admin-space-4);
  background: var(--admin-warning-bg);
  color: var(--admin-on-strong);
}

.journal-readiness-summary--ready > header {
  background: var(--admin-success-bg);
}

.journal-readiness-summary h2 {
  margin: 0;
  color: inherit;
}

.journal-readiness-summary ul {
  margin: 0;
  padding: var(--admin-space-3) var(--admin-space-7);
}

.journal-seo-preview > summary {
  cursor: pointer;
  background: var(--admin-strong-bg);
  font-family: var(--admin-font-heading);
  font-weight: var(--admin-weight-semibold);
}

.journal-seo-preview > div {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--admin-space-4);
  padding: var(--admin-space-4);
}

.journal-seo-preview section {
  padding: var(--admin-space-4);
  border: var(--admin-border-width) solid var(--admin-divider);
  background: var(--admin-surface-row);
}

.journal-seo-preview h3,
.journal-seo-preview p {
  margin-block: 0 var(--admin-space-2);
}

.journal-seo-preview__url,
.journal-seo-preview small {
  color: var(--admin-text-muted);
  overflow-wrap: anywhere;
}

@media (max-width: 900px) {
  .journal-seo-preview > div {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 520px) {
  .journal-quick-actions {
    display: grid;
  }

  .journal-edition-tools,
  .journal-context-nav {
    align-items: stretch;
    flex-direction: column;
  }

  .journal-edition-tools a,
  .journal-context-nav a {
    text-align: center;
  }

  .journal-quick-actions__link {
    text-align: center;
  }

  .journal-dashboard-calendar > header {
    align-items: flex-start;
    flex-direction: column;
  }

  .journal-dashboard__item,
  .journal-workspace__item {
    align-items: flex-start;
    flex-direction: column;
  }

  .journal-dashboard__items,
  .journal-overview__cards,
  .journal-dashboard__group--2 .journal-dashboard__items {
    grid-template-columns: 1fr;
  }

  .journal-order-form__row,
  .journal-chart__row {
    grid-template-columns: 1fr;
  }
}

/* Editorial planning tools: compact, server-rendered, and token-only. */
.journal-editorial-filters {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  gap: var(--admin-space-3);
  margin-block-end: var(--admin-space-5);
  padding: var(--admin-space-4);
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-sm);
  background: var(--admin-surface-panel);
}

.journal-editorial-filters > div {
  display: grid;
  min-width: 12rem;
  gap: var(--admin-space-1);
}

.journal-editorial-filters > a {
  min-height: var(--admin-control-height);
  padding: var(--admin-space-2) var(--admin-space-3);
}

.journal-editorial-table-wrap {
  overflow-x: auto;
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-sm);
}

.journal-editorial-table {
  width: 100%;
  margin: 0;
}

.journal-editorial-table th,
.journal-editorial-table td {
  vertical-align: top;
}

.journal-editorial-table ul {
  margin: 0;
  padding-inline-start: var(--admin-space-5);
}

.journal-editorial-pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--admin-space-4);
  margin-block: var(--admin-space-4);
}

.journal-calendar-toolbar {
  overflow: hidden;
  margin-block: var(--admin-space-4) var(--admin-space-5);
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-md);
  background: var(--admin-surface-panel);
  box-shadow: 0 0.35rem 1.25rem var(--admin-shadow-color);
}

.journal-calendar-nav {
  display: grid;
  grid-template-columns: minmax(8rem, 1fr) auto minmax(8rem, 1fr);
  align-items: center;
  gap: var(--admin-space-5);
  padding: var(--admin-space-5) var(--admin-space-6);
  background: var(--admin-strong-bg);
  color: var(--admin-on-strong);
}

.journal-calendar-nav__heading {
  text-align: center;
}

.journal-calendar-nav__heading span {
  color: var(--admin-on-strong-muted);
  font-size: var(--admin-size-xs);
  font-weight: var(--admin-weight-semibold);
  text-transform: uppercase;
}

.journal-calendar-nav h2 {
  margin: 0;
  color: inherit;
}

.journal-calendar-nav__step,
.journal-calendar-view-switch a,
.journal-calendar-shortcuts a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: var(--admin-control-height);
  padding: var(--admin-space-2) var(--admin-space-3);
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-pill);
  text-decoration: none;
}

.journal-calendar-nav__step {
  width: fit-content;
  min-width: 10rem;
  justify-self: start;
  border-color: var(--admin-accent-bg);
  background: var(--admin-accent-bg);
  color: var(--admin-accent-fg) !important;
  font-size: var(--admin-size-body);
  font-weight: var(--admin-weight-semibold);
}

.journal-calendar-nav__step:last-child {
  justify-self: end;
}

.journal-calendar-nav__step:hover,
.journal-calendar-nav__step:focus-visible {
  border-color: var(--admin-button-hover-bg);
  background: var(--admin-button-hover-bg);
  color: var(--admin-button-fg) !important;
}

.journal-calendar-toolbar__lower {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--admin-space-4);
  padding: var(--admin-space-4) var(--admin-space-5);
}

.journal-calendar-toolbar__lower--day {
  justify-content: flex-end;
}

.journal-calendar-view-switch,
.journal-calendar-shortcuts {
  display: flex;
  flex-wrap: wrap;
  gap: var(--admin-space-2);
}

.journal-calendar-view-switch__active,
.journal-calendar-shortcuts__primary {
  border-color: var(--admin-accent-bg) !important;
  background: var(--admin-accent-bg);
  color: var(--admin-accent-fg) !important;
}

.journal-calendar-view-switch a:hover,
.journal-calendar-view-switch a:focus-visible,
.journal-calendar-shortcuts a:hover,
.journal-calendar-shortcuts a:focus-visible,
.journal-calendar-summary__item:hover,
.journal-calendar-summary__item:focus-visible {
  background: var(--admin-surface-hover);
  color: var(--admin-hover-fg);
}

.journal-calendar-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: hidden;
  margin-block-end: var(--admin-space-5);
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-md);
  background: var(--admin-surface-panel);
  box-shadow: 0 0.25rem 0.8rem var(--admin-shadow-color);
}

.journal-calendar-summary__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--admin-space-3);
  min-height: var(--admin-control-height);
  padding: var(--admin-space-3) var(--admin-space-4);
  border-block-start: calc(3 * var(--admin-border-width)) solid var(--admin-accent-bg);
  border-inline-end: var(--admin-border-width) solid var(--admin-divider);
  background: var(--admin-surface-row);
  color: var(--admin-text);
  text-decoration: none;
}

.journal-calendar-summary__item:last-child {
  border-inline-end: 0;
}

.journal-calendar-summary__item--scheduled {
  border-block-start-color: var(--admin-warning-bg);
}

.journal-calendar-summary__item--published {
  border-block-start-color: var(--admin-success-bg);
}

.journal-calendar-summary__item--overdue {
  border-block-start-color: var(--admin-error-bg);
}

.journal-calendar-summary__item strong {
  font-family: var(--admin-font-heading);
  font-size: var(--admin-size-lead);
}

.journal-calendar-filters {
  align-items: end;
  gap: var(--admin-space-4);
  padding: var(--admin-space-5);
  border-radius: var(--admin-radius-md);
  box-shadow: 0 0.25rem 0.8rem var(--admin-shadow-color);
}

.journal-calendar-filters > div {
  flex: 1 1 14rem;
}

.journal-calendar-filters label {
  color: var(--admin-heading);
  font-family: var(--admin-font-heading);
  font-size: var(--admin-size-lead);
  font-weight: var(--admin-weight-semibold);
}

.journal-calendar-filters select,
.journal-calendar-filters input[type="date"] {
  width: 100%;
  min-height: var(--admin-control-height);
  border-color: var(--admin-border);
  border-radius: var(--admin-radius-sm);
  background: var(--admin-control-bg);
  color: var(--admin-control-fg);
  font-family: var(--admin-font-body);
}

.journal-calendar-filters select:focus,
.journal-calendar-filters input[type="date"]:focus {
  border-color: var(--admin-accent-bg);
  outline-color: var(--admin-accent-bg);
}

.journal-calendar-filters > button[type="submit"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: var(--admin-control-height);
  padding-inline: var(--admin-space-5);
  border-color: var(--admin-button-bg) !important;
  border-radius: var(--admin-radius-pill) !important;
  background: var(--admin-button-bg) !important;
  color: var(--admin-button-fg) !important;
  font-family: var(--admin-font-body);
  font-weight: var(--admin-weight-semibold);
}

.journal-calendar-filters > button[type="submit"]:hover,
.journal-calendar-filters > button[type="submit"]:focus-visible {
  border-color: var(--admin-button-hover-bg) !important;
  background: var(--admin-button-hover-bg) !important;
  color: var(--admin-button-fg) !important;
}

.journal-calendar-filters > a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: var(--admin-control-height);
  padding-inline: var(--admin-space-4);
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-pill);
  background: var(--admin-surface-row);
  color: var(--admin-link);
  font-weight: var(--admin-weight-semibold);
  text-decoration: none;
}

.journal-calendar-filters > a:hover,
.journal-calendar-filters > a:focus-visible {
  background: var(--admin-surface-hover);
  color: var(--admin-hover-fg);
}

.journal-calendar-overview {
  display: grid;
  gap: var(--admin-space-5);
}

.journal-calendar-overview--season {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.journal-calendar-overview--year {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.journal-calendar-panel {
  overflow: hidden;
  min-width: 0;
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-md);
  background: var(--admin-surface-panel);
  box-shadow: 0 0.35rem 1.25rem var(--admin-shadow-color);
}

.journal-calendar-panel > h3 {
  margin: 0;
  padding: var(--admin-space-2) var(--admin-space-3);
  background: var(--admin-strong-bg);
  color: var(--admin-on-strong);
  text-align: center;
}

.journal-calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(7rem, 1fr));
  overflow-x: auto;
}

.journal-calendar-grid--season,
.journal-calendar-grid--year {
  grid-template-columns: repeat(7, minmax(2.75rem, 1fr));
}

.journal-calendar-weekday {
  padding: var(--admin-space-2);
  border-block-end: var(--admin-border-width) solid var(--admin-border);
  border-inline-end: var(--admin-border-width) solid var(--admin-border);
  background: var(--admin-strong-bg);
  color: var(--admin-on-strong);
  text-align: center;
}

.journal-calendar-day {
  display: flex;
  flex-direction: column;
  gap: var(--admin-space-2);
  min-height: 9rem;
  padding: var(--admin-space-2);
  border-block-end: var(--admin-border-width) solid var(--admin-border);
  border-inline-end: var(--admin-border-width) solid var(--admin-border);
  background: var(--admin-surface-row);
  color: var(--admin-text);
}

.journal-calendar-day--blank {
  background: var(--admin-surface-canvas);
}

.journal-calendar-day--active {
  background: var(--admin-surface-alt);
  box-shadow: inset 0 0 0 var(--admin-border-width) var(--admin-accent-bg);
}

.journal-calendar-day--weekend:not(.journal-calendar-day--active) {
  background: var(--admin-surface-canvas);
}

.journal-calendar-day:not(.journal-calendar-day--blank):hover,
.journal-calendar-day:not(.journal-calendar-day--blank):focus-within {
  background: var(--admin-surface-hover);
}

.journal-calendar-day__number {
  display: inline-grid;
  align-self: start;
  min-width: calc(var(--admin-control-height) - var(--admin-space-2));
  min-height: calc(var(--admin-control-height) - var(--admin-space-2));
  place-items: center;
  border-radius: var(--admin-radius-pill);
  color: var(--admin-link);
  font-family: var(--admin-font-heading);
  font-weight: var(--admin-weight-bold);
  text-decoration: none;
}

.journal-calendar-day--today .journal-calendar-day__number {
  background: var(--admin-accent-bg);
  color: var(--admin-accent-fg);
}

.journal-calendar-day__counts {
  display: flex;
  flex-wrap: wrap;
  gap: var(--admin-space-1);
  color: var(--admin-text-muted);
  font-size: var(--admin-size-xs);
}

.journal-calendar-status {
  display: inline-flex;
  align-items: center;
  gap: var(--admin-space-1);
  padding: var(--admin-space-1) var(--admin-space-2);
  border-inline-start: calc(2 * var(--admin-border-width)) solid var(--admin-accent-bg);
  border-radius: var(--admin-radius-xs);
  background: var(--admin-surface-panel);
  color: var(--admin-text);
  text-decoration: none;
}

.journal-calendar-status--scheduled {
  border-inline-start-color: var(--admin-warning-bg);
}

.journal-calendar-status--published {
  border-inline-start-color: var(--admin-success-bg);
}

.journal-calendar-status--overdue {
  border-inline-start-color: var(--admin-error-bg);
}

.journal-calendar-day__open {
  align-self: end;
  margin-block-start: auto;
  color: var(--admin-text-muted);
  font-size: var(--admin-size-xs);
}

.journal-calendar-grid--week .journal-calendar-day {
  min-height: 14rem;
}

.journal-calendar-grid--season .journal-calendar-day,
.journal-calendar-grid--year .journal-calendar-day {
  min-height: 5.5rem;
  padding: var(--admin-space-1);
}

.journal-calendar-grid--season .journal-calendar-day__open,
.journal-calendar-grid--year .journal-calendar-day__open {
  display: none;
}

.journal-calendar-grid--season .journal-calendar-status,
.journal-calendar-grid--year .journal-calendar-status {
  overflow: hidden;
  max-width: 100%;
  padding-inline: var(--admin-space-1);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.journal-calendar-grid--season .journal-calendar-weekday,
.journal-calendar-grid--year .journal-calendar-weekday {
  overflow: hidden;
  padding-inline: var(--admin-space-1);
}

.journal-calendar-grid--season .journal-calendar-day--today .journal-calendar-day__number,
.journal-calendar-grid--year .journal-calendar-day--today .journal-calendar-day__number {
  min-width: 1.75rem;
  min-height: 1.75rem;
}

.journal-calendar-day__item {
  display: grid;
  gap: var(--admin-space-1);
  margin-block-end: var(--admin-space-2);
  padding: var(--admin-space-2);
  border-inline-start: var(--admin-space-1) solid var(--admin-accent-bg);
  background: var(--admin-surface-alt);
}

.journal-calendar-day__item span,
.journal-health-grid small {
  color: var(--admin-text-muted);
  font-size: var(--admin-size-xs);
}

.journal-calendar-day__empty {
  padding: var(--admin-space-4);
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-sm);
  background: var(--admin-info-bg);
}

.journal-calendar-section-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: var(--admin-space-4);
  margin-block: var(--admin-space-6) var(--admin-space-3);
  padding-block-end: var(--admin-space-2);
  border-block-end: var(--admin-border-width) solid var(--admin-accent-bg);
}

.journal-calendar-section-heading:first-of-type {
  margin-block-start: var(--admin-space-4);
}

.journal-calendar-section-heading h2,
.journal-calendar-section-heading p {
  margin: 0;
}

.journal-calendar-section-heading p {
  color: var(--admin-text-muted);
  font-size: var(--admin-size-sm);
}

.journal-day-timeline {
  overflow: auto;
  border: var(--admin-border-width) solid var(--admin-border);
  border-radius: var(--admin-radius-md);
  background: var(--admin-surface-panel);
  box-shadow: 0 0.25rem 0.8rem var(--admin-shadow-color);
}

.journal-day-timeline__header,
.journal-day-timeline__slot {
  display: grid;
  grid-template-columns: 5rem repeat(var(--journal-day-language-count), minmax(10rem, 1fr));
  width: var(--journal-day-grid-width);
  min-width: 100%;
}

.journal-day-timeline__header {
  position: sticky;
  top: 0;
  z-index: 3;
  background: var(--admin-strong-bg);
  color: var(--admin-on-strong);
}

.journal-day-timeline__header > strong {
  overflow: hidden;
  padding: var(--admin-space-3);
  border-inline-end: var(--admin-border-width) solid var(--admin-border);
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.journal-day-timeline__corner {
  position: sticky;
  left: 0;
  z-index: 4;
  background: var(--admin-strong-bg);
}

.journal-day-timeline__slot {
  min-height: 4rem;
  border-block-end: var(--admin-border-width) solid var(--admin-divider);
}

.journal-day-timeline__slot:last-child {
  border-block-end: 0;
}

.journal-day-timeline__slot--current,
.journal-day-timeline__slot--current > time {
  background: var(--admin-info-bg);
}

.journal-day-timeline__slot > time {
  position: sticky;
  left: 0;
  z-index: 2;
  display: grid;
  align-content: start;
  gap: var(--admin-space-1);
  padding: var(--admin-space-3);
  border-inline-end: var(--admin-border-width) solid var(--admin-divider);
  background: var(--admin-surface-panel);
  color: var(--admin-text-muted);
  font-weight: var(--admin-weight-semibold);
}

.journal-day-timeline__slot--current > time {
  background: var(--admin-info-bg);
}

.journal-day-timeline__events {
  display: grid;
  align-content: start;
  gap: var(--admin-space-2);
  padding: var(--admin-space-2) var(--admin-space-3);
  border-inline-end: var(--admin-border-width) solid var(--admin-divider);
}

.journal-day-timeline__now {
  width: fit-content;
  padding: var(--admin-space-1) var(--admin-space-2);
  border-radius: var(--admin-radius-pill);
  background: var(--admin-warning-bg);
  font-size: var(--admin-size-xs);
  font-weight: var(--admin-weight-semibold);
}

.journal-day-event {
  display: grid;
  gap: var(--admin-space-1);
  padding: var(--admin-space-2) var(--admin-space-3);
  border-inline-start: var(--admin-space-1) solid var(--admin-accent-bg);
  border-radius: var(--admin-radius-xs);
  background: var(--admin-surface-alt);
  color: var(--admin-text);
  text-decoration: none;
}

.journal-day-event--published {
  border-inline-start-color: var(--admin-success-bg);
}

.journal-day-event--scheduled {
  border-inline-start-color: var(--admin-warning-bg);
}

.journal-day-event--overdue {
  border-inline-start-color: var(--admin-error-bg);
}

.journal-day-concept-add {
  width: fit-content;
  padding: var(--admin-space-1) var(--admin-space-2);
  border: var(--admin-border-width) dashed var(--admin-border);
  border-radius: var(--admin-radius-sm);
  color: var(--admin-text-muted);
  font-size: var(--admin-size-xs);
  text-decoration: none;
}

.journal-day-concept-add:hover,
.journal-day-concept-add:focus-visible {
  background: var(--admin-hover-bg);
  color: var(--admin-text);
}

.journal-day-event span,
.journal-day-event small {
  color: var(--admin-text-muted);
  font-size: var(--admin-size-xs);
}

@media (max-width: 600px) {
  .journal-calendar-nav {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .journal-calendar-nav__step,
  .journal-calendar-nav__step:last-child {
    width: auto;
    justify-self: stretch;
  }

  .journal-calendar-toolbar__lower,
  .journal-calendar-section-heading {
    align-items: stretch;
    flex-direction: column;
  }

  .journal-calendar-view-switch,
  .journal-calendar-shortcuts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
  }

  .journal-calendar-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .journal-calendar-summary__item:nth-child(2) {
    border-inline-end: 0;
  }

  .journal-calendar-summary__item:nth-child(-n + 2) {
    border-block-end: var(--admin-border-width) solid var(--admin-divider);
  }

  .journal-calendar-filters > div,
  .journal-calendar-filters > button[type="submit"],
  .journal-calendar-filters > a {
    width: 100%;
  }

  .journal-calendar-overview--season,
  .journal-calendar-overview--year {
    grid-template-columns: 1fr;
  }

  .journal-day-timeline__header,
  .journal-day-timeline__slot {
    grid-template-columns: 5rem repeat(var(--journal-day-language-count), minmax(10rem, 1fr));
  }
}

.journal-search-groups,
.journal-health-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--admin-space-5);
}

.journal-search-groups section > h2,
.journal-health-grid section > h2 {
  display: flex;
  justify-content: space-between;
  margin: 0;
  padding: var(--admin-space-3) var(--admin-space-4);
  background: var(--admin-strong-bg);
  color: var(--admin-on-strong);
}

.journal-search-groups ul,
.journal-health-grid ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.journal-search-groups li,
.journal-health-grid li {
  display: grid;
  gap: var(--admin-space-1);
  padding: var(--admin-space-3) var(--admin-space-4);
  border-block-end: var(--admin-border-width) solid var(--admin-divider);
}

@media (max-width: 900px) {
  .journal-search-groups,
  .journal-health-grid {
    grid-template-columns: 1fr;
  }
}

/* Journal's mobile header must contain wrapped account controls. */
@media (max-width: 767px) {
  body:has(.journal-nav, .journal-editorial-tool, .journal-page-controls, .journal-editor-nav, .journal-dashboard) #header {
    height: auto;
    flex-shrink: 0;
    flex-direction: column;
    align-items: stretch;
    gap: var(--admin-space-3);
  }
  body:has(.journal-nav, .journal-editorial-tool, .journal-page-controls, .journal-editor-nav, .journal-dashboard) #user-tools {
    width: 100%;
    min-width: 0;
    margin: 0;
    white-space: normal;
    text-align: start;
  }
}

/* Primary journal archives, above the workflow shortcuts. */
.journal-quick-access {
  border-block-start: var(--admin-space-1) solid var(--admin-accent-bg);
}

.journal-quick-access__items {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 20rem), 1fr));
}

.journal-quick-access .journal-dashboard__item {
  flex-wrap: wrap;
}
