/*
Theme Name: LaTeXDesk Folio — Staging
Description: Original document-led green, white and gray research workspace for isolated staging.
Version: 2.2.7
Requires at least: 6.5
Requires PHP: 8.1
Text Domain: latexdesk-journal-staging-theme-v1
*/
:root { color-scheme: light; --ldj-ink: #18223b; --ldj-muted: #53617a; --ldj-line: #dce3ed; --ldj-blue: #274cb9; --ldj-bg: #f5f7fb; }
* { box-sizing: border-box; }
body.ldj-stage { margin: 0; background: var(--ldj-bg); color: var(--ldj-ink); font: 16px/1.55 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.ldj-stage a { color: var(--ldj-blue); text-underline-offset: .18em; }
.ldj-stage a:hover { text-decoration-thickness: 2px; }
.ldj-stage :focus-visible { outline: 3px solid #255de0; outline-offset: 4px; }
.ldj-stage h1, .ldj-stage h2, .ldj-stage h3 { line-height: 1.2; }
.ldj-stage h1 { margin: 0 0 18px; font-size: clamp(1.8rem, 3vw, 2.5rem); letter-spacing: -.035em; }
.ldj-stage h2 { font-size: 1.3rem; }
.ldj-stage__skip { position: fixed; top: 0; left: 12px; z-index: 100000; padding: 10px; background: white; transform: translateY(-150%); }
.ldj-stage__skip:focus { transform: translateY(0); }
.ldj-stage__notice { display: flex; justify-content: center; gap: 12px; padding: 9px 20px; background: #fff4d6; color: #593e0b; font-size: .85rem; }
.ldj-stage__header { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 84px; padding: 18px max(24px, calc((100% - 1320px) / 2)); border-bottom: 1px solid var(--ldj-line); background: #fff; }
.ldj-stage__brand { display: flex; align-items: center; gap: 11px; color: var(--ldj-ink) !important; font-size: 1.2rem; font-weight: 750; text-decoration: none; line-height: 1.2; }
.ldj-stage__brand small { display: block; color: var(--ldj-muted); font-size: .8rem; font-weight: 500; margin-top: 4px; }
.ldj-stage__mark { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 11px; background: #263f8b; color: #fff; font: italic 700 28px Georgia, serif; }
.ldj-stage__session { display: flex; align-items: center; gap: 16px; font-size: .9rem; }
.ldj-stage__session span, .ldj-stage__muted { color: var(--ldj-muted); }
.ldj-stage__member { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 6px 10px; max-width: 420px; overflow-wrap: anywhere; }
.ldj-stage__member strong { font-size: .88rem; }
.ldj-stage .ldj-stage__role { display: inline-flex; align-items: center; color: #203d9a; background: #eaf0ff; border: 1px solid #d6e1fb; border-radius: 999px; padding: 3px 10px; font-size: .75rem; font-weight: 700; line-height: 1.5; }
.ldj-stage__roles { display: flex; flex-wrap: wrap; gap: 8px; margin: -10px 0 24px; }
.ldj-stage__account-link { font-weight: 650; }
.ldj-stage__session > a { flex-shrink: 0; }
.ldj-stage__session { min-width: 0; flex-wrap: wrap; justify-content: flex-end; }
.ldj-stage__current-role { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; min-width: 0; max-width: 290px; }
.ldj-stage__current-role .ldj-stage__role { border-radius: 5px; font-size: .85rem; overflow-wrap: anywhere; }
.ldj-stage__role-journal { font-size: .75rem; overflow-wrap: anywhere; }
.ldj-stage a.ldj-stage__role-switch { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 8px 14px; border: 1px solid var(--ldj-blue); border-radius: 6px; color: var(--ldj-blue); font-weight: 700; text-decoration: none; }
.ldj-stage a.ldj-stage__role-switch:hover { background: var(--ldj-bg); }
.ldj-stage__content .latexdesk-journals input[readonly] { background: #f4f6fa; color: #53617a; }
.ldj-stage__content .latexdesk-journals fieldset { min-width: 0; border: 1px solid var(--ldj-line); border-radius: 12px; padding: 18px; }
.ldj-stage__content .latexdesk-journals legend { padding: 0 6px; font-weight: 700; }
.ldj-stage__layout { display: grid; grid-template-columns: 182px minmax(0, 1fr); max-width: 1320px; margin: 24px auto; padding: 0 20px; gap: 24px; align-items: start; }
.ldj-stage__nav { display: grid; gap: 6px; position: sticky; top: 50px; }
.ldj-stage__nav a { display: block; padding: 12px 14px; border-radius: 9px; color: var(--ldj-muted); font-weight: 600; text-decoration: none; }
.ldj-stage__nav a:hover { background: #e9eef8; color: var(--ldj-ink); }
.ldj-stage__nav a[aria-current="page"] { background: #e5ecff; color: #203d9a; box-shadow: inset 3px 0 #315bce; }
.ldj-stage__main { min-width: 0; padding: clamp(20px, 3vw, 38px); background: #fff; border: 1px solid var(--ldj-line); border-radius: 16px; }
.ldj-stage__eyebrow { margin: 0 0 10px; color: #526187; font-size: .76rem; font-weight: 750; letter-spacing: .09em; text-transform: uppercase; }
.ldj-stage__intro { margin: 0 0 28px; max-width: 75ch; color: var(--ldj-muted); }
.ldj-stage__cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.latexdesk-join-choices { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 22px 0; }
.latexdesk-join-choice { min-width: 0; padding: 16px; border: 1px solid var(--ldj-line); border-radius: 10px; }
.latexdesk-join-choice h3 { margin: 0 0 10px; font-size: 1.05rem; }
.latexdesk-join-choice h3 a { display: inline-block; padding-block: 8px; }
.latexdesk-join-choice h3 a[aria-current="page"] { font-weight: 800; text-decoration-thickness: 3px; }
.latexdesk-join-choice p { margin: 0; color: var(--ldj-muted); }
.latexdesk-join-path { border-top: 1px solid var(--ldj-line); padding-top: 12px; }
.latexdesk-join-current-account { background: #edf3ff; padding: 14px; border-radius: 8px; }
.ldj-stage .latexdesk-join-button { display: inline-block; max-width: 100%; padding: 11px 16px; border-radius: 8px; background: var(--ldj-blue); color: #fff; font-weight: 650; text-decoration: none; }
.ldj-stage__card { display: flex; flex-direction: column; padding: 22px; border: 1px solid var(--ldj-line); border-radius: 12px; text-decoration: none; color: var(--ldj-ink) !important; }
.ldj-stage__card:hover { background: #f6f9ff; border-color: #9db0df; }
.ldj-stage__step { color: #526187; font-size: .8rem; font-weight: 700; }
.ldj-stage__card h2 { margin: 12px 0 8px; font-size: 1.14rem; }
.ldj-stage__card p { margin: 0 0 20px; color: var(--ldj-muted); font-size: .92rem; }
.ldj-stage__card-link { margin-top: auto; color: var(--ldj-blue); font-size: .88rem; font-weight: 650; }
.ldj-stage__safety { margin-top: 28px; padding: 18px 22px; border-left: 3px solid #8196c3; background: #f5f7fc; }
.ldj-stage__safety h2 { margin: 0; font-size: 1rem; }
.ldj-stage__safety ul { margin: 10px 0 0; padding-left: 22px; font-size: .92rem; color: var(--ldj-muted); }
.ldj-stage__button { display: inline-block; padding: 11px 17px; border-radius: 8px; background: var(--ldj-blue); color: white !important; font-weight: 650; text-decoration: none; }
.ldj-stage__content { overflow-wrap: anywhere; }
.ldj-stage__content .latexdesk-journals { padding: 0; max-width: none; }
.ldj-stage__content .latexdesk-journals form { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; margin-block: 20px; }
.ldj-stage__content .latexdesk-journals label { min-width: 0; font-weight: 600; }
.ldj-stage__content .latexdesk-journals input, .ldj-stage__content .latexdesk-journals select, .ldj-stage__content .latexdesk-journals textarea { min-width: 0; max-width: 100%; width: 100%; padding: 12px; font: inherit; border: 1px solid #b9c3d7; border-radius: 8px; background: #fff; color: var(--ldj-ink); }
.ldj-stage__content .latexdesk-journals textarea { resize: vertical; }
.ldj-stage__content .latexdesk-journals input[type="checkbox"] { flex: 0 0 auto; width: 20px; height: 20px; padding: 0; }
.ldj-stage__content .latexdesk-journals input[type="file"] { white-space: normal; }
.ldj-stage__content .latexdesk-journals button { min-width: 0; max-width: 100%; min-height: 44px; padding: 11px 18px; border: 0; border-radius: 8px; background: var(--ldj-blue); color: white; font: inherit; overflow-wrap: anywhere; cursor: pointer; }
.ldj-stage__content table { display: block; max-width: 100%; overflow-x: auto; border-collapse: collapse; }
.ldj-stage__content th, .ldj-stage__content td { padding: 10px; text-align: left; border-bottom: 1px solid var(--ldj-line); }
.ldj-stage__content pre { max-width: 100%; overflow: auto; padding: 12px; background: var(--ldj-bg); }
.ldj-stage__content details { padding: 14px; border: 1px solid var(--ldj-line); border-radius: 8px; }
.ldj-stage__content summary { cursor: pointer; font-weight: 650; }
.ldj-stage__footer { max-width: 1320px; margin: 24px auto; padding: 0 20px; color: var(--ldj-muted); font-size: .78rem; text-align: center; }
/* The existing core editor owns its panes and controls; keep its staging shell compact. */
.ldj-stage--editor .ldj-stage__notice { flex-wrap: wrap; gap: 2px 10px; padding: 3px 16px; font-size: .75rem; line-height: 1.4; text-align: center; }
.ldj-stage--editor .ldj-stage__header { min-height: 52px; padding: 4px 16px; gap: 4px 16px; flex-wrap: wrap; }
.ldj-stage--editor .ldj-stage__brand { flex-shrink: 0; gap: 8px; font-size: 1rem; }
.ldj-stage--editor .ldj-stage__brand small { display: inline; margin: 0 0 0 4px; font-size: .8rem; }
.ldj-stage--editor .ldj-stage__mark { width: 28px; height: 28px; border-radius: 8px; font-size: 22px; }
.ldj-stage--editor .ldj-stage__session { min-width: 0; max-width: 100%; flex-wrap: wrap; gap: 4px 12px; font-size: .8rem; }
.ldj-stage--editor .ldj-stage__session > a { display: inline-flex; align-items: center; min-height: 40px; }
.ldj-stage--editor .ldj-stage__member { min-width: 0; max-width: 360px; gap: 4px 8px; }
.ldj-stage--editor .ldj-stage__member strong { font-size: .8rem; }
.ldj-stage--editor .ldj-stage__role { padding: 2px 8px; font-size: .72rem; }
.ldj-stage--editor .ldj-stage__layout { display: block; max-width: none; margin: 0; padding: 0; }
.ldj-stage--editor .ldj-stage__main { padding: 0; border: 0; border-radius: 0; background: transparent; }
.ldj-stage--editor .ldj-stage__editor-toolbar { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 16px; min-height: 48px; padding: 3px 16px; background: #fff; border-bottom: 1px solid var(--ldj-line); }
.ldj-stage--editor .ldj-stage__editor-toolbar a { display: inline-flex; align-items: center; min-height: 40px; font-size: .82rem; font-weight: 650; }
.ldj-stage--editor .ldj-stage__editor-toolbar h1 { margin: 0; font-size: .94rem; letter-spacing: 0; }
.ldj-stage--editor .ldj-stage__editor-toolbar span { color: var(--ldj-muted); font-size: .75rem; }
.ldj-stage--editor .ldj-stage__editor-toolbar .ldj-stage__editor-title { color: var(--ldj-ink); font-size: .94rem; font-weight: 700; }
.ldj-stage--editor .ldj-stage__editor-toolbar .ldj-stage__editor-submit { margin-left: auto; min-height: 40px; padding: 6px 12px; }
.ldj-stage__workspace { min-width: 0; min-height: 0; width: 100%; overflow: visible; }
/* Core's wide-screen breakout targets a centered content column. This shell is
   already full width, so do not apply its viewport width/left/transform offset. */
.ldj-stage--editor .ldj-stage__workspace .latexdesk-workspace { min-width: 0 !important; min-height: 0; width: 100% !important; max-width: 100% !important; left: auto !important; right: auto !important; transform: none !important; margin: 0 !important; overflow: visible !important; }
.ldj-stage--editor .ldj-stage__workspace .latexdesk-workspace__layout { min-width: 0; max-width: 100%; }
.ldj-stage__project-choice { margin: 0; padding: 24px 20px; }
.ldj-stage__workspace .latexdesk-journals-submit-link { grid-column: 1 / -1; flex: 0 0 100%; margin: 0; padding: 8px 16px; background: #edf3ff; border-bottom: 1px solid var(--ldj-line); font-size: .88rem; }
.ldj-stage__workspace .latexdesk-journals-submit-link a { display: inline-block; padding-block: 4px; font-weight: 650; }
.ldj-stage--editor .ldj-stage__footer { margin: 6px auto; font-size: .72rem; }
@media (max-width: 760px) {
    .ldj-stage__notice { flex-wrap: wrap; gap: 2px 8px; padding: 8px 12px; text-align: center; }
    .ldj-stage__header { min-height: 72px; padding: 14px 16px; }
    .ldj-stage__header { flex-wrap: wrap; gap: 12px; }
    .ldj-stage__session { flex-wrap: wrap; justify-content: flex-end; gap: 10px 14px; }
    .ldj-stage__member { max-width: 100%; }
    .ldj-stage__layout { display: block; padding: 0 10px; margin-top: 12px; }
    .ldj-stage__nav { position: static; display: flex; gap: 4px; overflow-x: auto; padding: 2px 2px 10px; margin-bottom: 6px; scrollbar-width: thin; scroll-padding-inline: 8px; }
    .ldj-stage__nav a { flex: 0 0 auto; padding: 10px 12px; font-size: .88rem; scroll-margin-inline: 8px; }
    .ldj-stage__nav a:focus-visible { outline-offset: -3px; }
    .ldj-stage__nav a[aria-current="page"] { box-shadow: inset 0 -3px #315bce; }
    .ldj-stage__main { padding: 22px 16px; border-radius: 12px; }
    .ldj-stage__content .latexdesk-journals__workflow-form { padding: 12px; }
    .ldj-stage__cards { grid-template-columns: 1fr; gap: 12px; }
    .latexdesk-join-choices { grid-template-columns: 1fr; }
    .ldj-stage__card { padding: 18px; }
    .ldj-stage__safety { padding: 16px; }
    .ldj-stage__footer { margin: 18px auto; }
}
@media (max-width: 480px) {
    .ldj-stage__session { width: 100%; justify-content: flex-start; }
    .ldj-stage__member { flex: 0 1 auto; justify-content: flex-start; }
    .ldj-stage__nav { display: grid; grid-template-columns: repeat(auto-fit, minmax(100px, 1fr)); overflow: visible; padding-bottom: 4px; }
    .ldj-stage__nav a { min-width: 0; min-height: 44px; padding: 10px 6px; text-align: center; }
}
@media (max-width: 760px), (max-height: 500px) {
    .ldj-stage--editor .ldj-stage__notice { gap: 2px 8px; padding: 4px 12px; }
    .ldj-stage--editor .ldj-stage__header { min-height: 0; padding: 6px 12px; gap: 4px 12px; }
    .ldj-stage--editor .ldj-stage__session { gap: 4px 12px; }
    .ldj-stage--editor .ldj-stage__member { flex: 0 1 auto; max-width: 100%; }
    .ldj-stage--editor .ldj-stage__session > a { min-height: 44px; }
    .ldj-stage--editor .ldj-stage__editor-toolbar { gap: 4px 12px; padding: 4px 12px; }
    .ldj-stage--editor .ldj-stage__editor-toolbar a, .ldj-stage--editor .ldj-stage__editor-toolbar .ldj-stage__editor-submit { min-height: 44px; }
    .ldj-stage--editor .ldj-stage__footer { margin: 6px auto; padding: 0 12px; }
}
/* The native authentication engine remains in use; only its presentation changes. */
body.login { margin: 0; background: #f5f7fb; color: #18223b; font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.login #login { width: min(380px, calc(100% - 32px)); padding: 6vh 0 24px; }
.login h1 a { background-image: none; width: auto; height: auto; text-indent: 0; font-size: 1.8rem; line-height: 1.3; font-weight: 750; color: #263f8b; }
.login form { padding: 28px; border: 1px solid #dce3ed; border-radius: 16px; box-shadow: 0 8px 28px #18223b08; }
.login form .input { border-color: #b9c3d7; border-radius: 8px; min-height: 44px; }
.login .button-primary { background: #274cb9; border-color: #274cb9; min-height: 44px; padding: 0 20px; border-radius: 8px; }
.login #backtoblog a, .login #nav a { color: #274cb9; }

/* One visual language for writing and submitting. Only presentation is shared:
   preserve the core's compact toolbar, full-width panes and monospace source. */
.ldj-stage .ldj-submit {
    --ldj-accent: var(--ldj-blue);
    --ldj-ink: #18223b;
    --ldj-muted: #53617a;
    --ldj-line: #dce3ed;
}
.ldj-stage--editor .latexdesk-workspace {
    --ld-primary: var(--ldj-blue);
    --ld-border: var(--ldj-line);
    --ld-muted: var(--ldj-muted);
    --ld-panel-bg: #fff;
    --ld-toolbar-bg: var(--ldj-bg);
    color: var(--ldj-ink);
    font-family: inherit;
}
.ldj-stage--editor .latexdesk-workspace__header {
    background: #fff;
    border-color: var(--ldj-line);
    border-radius: 12px;
}
.ldj-stage--editor .latexdesk-workspace__identity h1 { color: var(--ldj-ink); }
.ldj-stage--editor .latexdesk-editor-panel,
.ldj-stage--editor .latexdesk-preview-panel,
.ldj-stage--editor .latexdesk-project-files { border-color: var(--ldj-line); border-radius: 12px; }
.ldj-stage--editor .latexdesk-workspace button,
.ldj-stage--editor .latexdesk-workspace input,
.ldj-stage--editor .latexdesk-workspace select { font-family: inherit; }
.ldj-stage--editor .latexdesk-workspace input,
.ldj-stage--editor .latexdesk-workspace select { border: 1px solid #b9c3d7; border-radius: 8px; color: var(--ldj-ink); background: #fff; }
.ldj-stage .ldj-stage__button,
.ldj-stage .ldj-submit .ldj-submit-button,
.ldj-stage--editor .latexdesk-workspace [data-latexdesk-compile],
.ldj-stage--editor .latexdesk-workspace .latexdesk-create-row button {
    border: 1px solid var(--ldj-blue);
    border-radius: 8px;
    background: var(--ldj-blue);
    color: #fff;
    font-family: inherit;
    font-weight: 650;
    line-height: 1.35;
    text-decoration: none;
    box-shadow: none;
}
.ldj-stage .ldj-stage__button:hover:not(:disabled),
.ldj-stage .ldj-submit .ldj-submit-button:hover:not(:disabled),
.ldj-stage--editor .latexdesk-workspace [data-latexdesk-compile]:hover:not(:disabled),
.ldj-stage--editor .latexdesk-workspace .latexdesk-create-row button:hover:not(:disabled) { background: #203c9b; border-color: #203c9b; color: #fff; }
.ldj-stage .ldj-submit .ldj-submit-button-secondary,
.ldj-stage--editor .latexdesk-workspace__back,
.ldj-stage--editor .latexdesk-workspace .latexdesk-mobile-more,
.ldj-stage--editor .latexdesk-workspace .latexdesk-editor-tools button,
.ldj-stage--editor .latexdesk-workspace .latexdesk-mobile-editor-tools [data-latexdesk-save],
.ldj-stage--editor .latexdesk-workspace .latexdesk-pdf-download-button {
    border: 1px solid #b9c8ec;
    border-radius: 8px;
    background: #fff;
    color: var(--ldj-blue);
    font-family: inherit;
    font-weight: 650;
    text-decoration: none;
    box-shadow: none;
}
.ldj-stage .ldj-submit .ldj-submit-button-secondary:hover:not(:disabled),
.ldj-stage--editor .latexdesk-workspace__back:hover,
.ldj-stage--editor .latexdesk-workspace .latexdesk-mobile-more:hover:not(:disabled),
.ldj-stage--editor .latexdesk-workspace .latexdesk-editor-tools button:hover:not(:disabled),
.ldj-stage--editor .latexdesk-workspace .latexdesk-mobile-editor-tools [data-latexdesk-save]:hover:not(:disabled),
.ldj-stage--editor .latexdesk-workspace .latexdesk-pdf-download-button:hover:not(:disabled) { background: #edf2ff; border-color: var(--ldj-blue); color: var(--ldj-blue); }
.ldj-stage--editor .latexdesk-workspace-panel-controls button,
.ldj-stage--editor .latexdesk-mobile-workspace-tabs button { border-radius: 8px; color: var(--ldj-muted); font-weight: 650; }
.ldj-stage--editor .latexdesk-workspace-panel-controls button[aria-expanded="true"],
.ldj-stage--editor .latexdesk-mobile-workspace-tabs button[aria-pressed="true"] { border-color: var(--ldj-blue); color: var(--ldj-blue); background: #eaf0ff; }
.ldj-stage--editor .latexdesk-workspace .latexdesk-create-item { border-color: var(--ldj-line); background: #f8faff; }
.ldj-stage--editor .latexdesk-workspace .latexdesk-create-item > summary { color: var(--ldj-ink); }
.ldj-stage--editor .latexdesk-workspace button:focus-visible,
.ldj-stage--editor .latexdesk-workspace a:focus-visible,
.ldj-stage--editor .latexdesk-workspace input:focus-visible,
.ldj-stage--editor .latexdesk-workspace select:focus-visible,
.ldj-stage .ldj-submit .ldj-submit-button:focus-visible { outline: 3px solid #255de0; outline-offset: -3px; }
.ldj-stage--editor .latexdesk-workspace button:disabled,
.ldj-stage--editor .latexdesk-workspace .latexdesk-toolbar button:disabled,
.ldj-stage--editor .latexdesk-workspace .latexdesk-create-row button:disabled,
.ldj-stage .ldj-submit .ldj-submit-button:disabled { background: #e6ebf4; border-color: #dce3ee; color: #69758b; cursor: not-allowed; }

/* Editorial desk. This scope deliberately excludes the manuscript editor and
   the native authentication screen; their controls and geometry remain owned
   by their existing styles. Account cards share the shell without a wrapper. */
body.ldj-stage--desk {
    --ldj-desk-ink: #24352f;
    --ldj-desk-muted: #536159;
    --ldj-desk-line: #d4d9cf;
    --ldj-ink: var(--ldj-desk-ink);
    --ldj-muted: var(--ldj-desk-muted);
    --ldj-line: var(--ldj-desk-line);
    --ldj-blue: #185548;
    --ldj-bg: #f6f4ef;
    --ldj-surface: #fffefa;
    --ldj-soft: #edf1e9;
    --ldj-control-line: #9fae9f;
    background: var(--ldj-bg);
}
.ldj-stage--desk .ldj-stage__header { min-height: 76px; padding-block: 12px; background: var(--ldj-surface); }
.ldj-stage--desk .ldj-stage__mark { background: var(--ldj-blue); border-radius: 6px; }
.ldj-stage--desk .ldj-stage__brand { font-family: Georgia, "Times New Roman", serif; }
.ldj-stage--desk .ldj-stage__role { color: var(--ldj-blue); background: #e9f0e9; border-color: #c5d5ca; font-size: .85rem; }
.ldj-stage--desk .ldj-stage__role-journal { font-size: .8rem; }
.ldj-stage--desk .ldj-stage__session > a { display: inline-flex; align-items: center; min-height: 44px; }
.ldj-stage--desk .ldj-stage__layout { grid-template-columns: 204px minmax(0, 1fr); gap: 28px; margin-block: 28px; }
.ldj-stage--desk .ldj-stage__nav { gap: 16px; }
.ldj-stage--desk .ldj-stage__nav-group { min-width: 0; display: grid; gap: 3px; }
.ldj-stage--desk .ldj-stage__nav-group + .ldj-stage__nav-group { border-top: 1px solid var(--ldj-line); padding-top: 16px; }
.ldj-stage--desk .ldj-stage__nav-heading { margin: 0 12px 5px; color: var(--ldj-muted); font: 650 .73rem/1.5 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; letter-spacing: .07em; text-transform: uppercase; }
.ldj-stage--desk .ldj-stage__nav a { min-height: 44px; display: flex; align-items: center; padding: 10px 12px; border-radius: 4px; font-size: .9rem; line-height: 1.45; }
.ldj-stage--desk .ldj-stage__nav a:hover { background: #eceee5; color: var(--ldj-ink); }
.ldj-stage--desk .ldj-stage__nav a[aria-current="page"] { color: var(--ldj-blue); background: #e9eee5; box-shadow: inset 3px 0 var(--ldj-blue); }
.ldj-stage--desk .ldj-stage__main { background: transparent; border: 0; border-radius: 0; padding: 0; }
.ldj-stage--desk h1 { font-family: Georgia, "Times New Roman", serif; font-size: clamp(2rem, 3vw, 2.7rem); font-weight: 500; letter-spacing: -.025em; margin-bottom: 24px; }
.ldj-stage--desk h2, .ldj-stage--desk h3 { font-family: Georgia, "Times New Roman", serif; font-weight: 500; letter-spacing: -.01em; }
.ldj-stage--desk h2 { font-size: 1.45rem; }
.ldj-stage--desk h3 { font-size: 1.2rem; }
.ldj-stage--desk .ldj-stage__page-header { margin-bottom: 24px; }
.ldj-stage--desk .ldj-stage__page-header h1 { margin-bottom: 8px; }
.ldj-stage--desk .ldj-stage__page-header p { margin: 0; max-width: 70ch; color: var(--ldj-muted); font-size: .95rem; }
.ldj-stage--desk .ldj-stage__eyebrow, .ldj-stage--desk .ldj-stage__step { color: var(--ldj-muted); }
.ldj-stage--desk .ldj-stage__intro { margin-bottom: 22px; max-width: 65ch; }
.ldj-stage--desk .ldj-stage__overview-summary { padding: 26px; border: 1px solid var(--ldj-line); border-top: 3px solid var(--ldj-blue); border-radius: 6px; background: var(--ldj-surface); }
.ldj-stage--desk .ldj-stage__overview-summary h2 { margin: 0 0 12px; }
.ldj-stage--desk .ldj-stage__overview-summary p { margin: 0; max-width: 70ch; color: var(--ldj-muted); }
.ldj-stage--desk .ldj-stage__overview-summary .ldj-stage__overview-journal { display: grid; gap: 4px; margin-top: 20px; overflow-wrap: anywhere; }
.ldj-stage--desk .ldj-stage__overview-journal span { font-size: .8rem; }
.ldj-stage--desk .ldj-stage__overview-journal strong { color: var(--ldj-ink); }
.ldj-stage--desk .ldj-stage__overview-guide { margin: 22px 0 0; border-top: 1px solid var(--ldj-line); color: var(--ldj-muted); }
.ldj-stage--desk .ldj-stage__overview-guide > summary { min-height: 44px; padding: 14px 0; color: var(--ldj-blue); font-size: .95rem; font-weight: 650; cursor: pointer; }
.ldj-stage--desk .ldj-stage__overview-guide p, .ldj-stage--desk .ldj-stage__overview-guide li { max-width: 70ch; font-size: .93rem; }
.ldj-stage--desk .ldj-stage__overview-guide ol, .ldj-stage--desk .ldj-stage__overview-guide ul { padding-left: 22px; }
.ldj-stage--desk .ldj-stage__overview-guide li + li { margin-top: 8px; }
.ldj-stage--desk .ldj-stage__card { border-radius: 6px; background: var(--ldj-surface); }
.ldj-stage--desk .ldj-stage__card:hover { background: var(--ldj-soft); border-color: var(--ldj-control-line); }
.ldj-stage--desk .ldj-stage__safety { background: var(--ldj-soft); border-color: var(--ldj-blue); border-radius: 0 5px 5px 0; }
.ldj-stage--desk .ldj-stage__footer { margin-top: 28px; }
.ldj-stage--desk :focus-visible { outline-color: var(--ldj-blue); }
.ldj-stage--account .latexdesk-journal-account { color: var(--ldj-ink); }
.ldj-stage--account .latexdesk-account-grid { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); grid-template-areas: "profile roles" "security roles"; align-items: start; gap: 20px; }
.ldj-stage--account .latexdesk-account-grid--journal { grid-template-areas: "journal journal" "profile roles" "security roles"; }
.ldj-stage--account .latexdesk-account-card--journal { grid-area: journal; }
.ldj-stage--account .latexdesk-account-card { min-width: 0; padding: 24px; border: 1px solid var(--ldj-line); border-radius: 8px; background: #fffefa; }
.ldj-stage--account .latexdesk-account-card--profile { grid-area: profile; }
.ldj-stage--account .latexdesk-account-card--roles { grid-area: roles; border-top: 3px solid var(--ldj-blue); }
.ldj-stage--account .latexdesk-account-card--security { grid-area: security; }
.ldj-stage--account .latexdesk-account-card h2 { margin: 0 0 20px; font: 500 1.4rem/1.2 Georgia, "Times New Roman", serif; }
.ldj-stage--account .latexdesk-account-details { display: grid; grid-template-columns: minmax(0, 1fr); gap: 3px; margin: 0 0 16px; }
.ldj-stage--account .latexdesk-account-details dt { color: var(--ldj-muted); font-size: .8rem; }
.ldj-stage--account .latexdesk-account-details dd { min-width: 0; margin: 0 0 12px; font-size: .95rem; overflow-wrap: anywhere; }
.ldj-stage--account .latexdesk-account-help { color: var(--ldj-muted); font-size: .86rem; line-height: 1.55; margin: 12px 0 0; }
.ldj-stage--account .latexdesk-account-current-role { padding: 15px; background: #edf1e9; border-radius: 5px; }
.ldj-stage--account .latexdesk-account-current-role span { display: block; color: var(--ldj-muted); font-size: .78rem; margin-bottom: 5px; }
.ldj-stage--account .latexdesk-account-current-role strong { display: block; color: var(--ldj-blue); font-size: 1.1rem; line-height: 1.4; }
.ldj-stage--account .latexdesk-account-role-list { list-style: none; padding: 0; margin: 20px 0; }
.ldj-stage--account .latexdesk-account-role-list li { border-bottom: 1px solid var(--ldj-line); padding: 12px 0; color: var(--ldj-ink); font-size: .92rem; }
.ldj-stage--account .latexdesk-account-role-list li:first-child { border-top: 1px solid var(--ldj-line); }
.ldj-stage--account .latexdesk-account-role-switch { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; max-width: 100%; padding: 9px 16px; border: 1px solid var(--ldj-blue); border-radius: 5px; color: var(--ldj-blue); font-weight: 650; text-decoration: none; }
.ldj-stage--account .latexdesk-account-role-switch:hover { background: #edf1e9; }
.ldj-stage--account .ldj-stage__content .latexdesk-account-form { margin: 20px 0 0; gap: 16px; }
.ldj-stage--account .latexdesk-account-form p { margin: 0; }
.ldj-stage--account .latexdesk-account-form label { display: block; margin-bottom: 6px; font-size: .86rem; }
.ldj-stage--account .ldj-stage__content .latexdesk-account-form input { border-color: #9fae9f; border-radius: 5px; padding: 10px 12px; min-height: 44px; }
.ldj-stage--account .ldj-stage__content .latexdesk-account-form button { justify-self: start; width: auto; border: 1px solid var(--ldj-blue); border-radius: 5px; padding: 10px 18px; background: var(--ldj-blue); font-size: .9rem; font-weight: 650; }
.ldj-stage--account .ldj-stage__content .latexdesk-account-form button:hover { background: #124236; border-color: #124236; }
.ldj-stage--account .latexdesk-account-notice, .ldj-stage--account .latexdesk-account-error { padding: 14px 16px; margin: 0 0 20px; border: 1px solid #a4c2ac; border-left: 4px solid var(--ldj-blue); border-radius: 5px; background: #edf4eb; }
.ldj-stage--account .latexdesk-account-error { color: #762d24; background: #fff0e9; border-color: #d4afa3; border-left-color: #9d3f2e; }
.ldj-stage--account :focus-visible { outline-color: var(--ldj-blue); }
/* Only the application root receives a surface. Nested sections, team panels,
   forms and the account grid retain their own deliberate spacing. */
.ldj-stage--desk .ldj-stage__content > .latexdesk-journals:not(.latexdesk-journal-account),
.ldj-stage--desk .ldj-stage__content > .ldj-submit { min-width: 0; max-width: none; margin: 0; padding: 26px; border: 1px solid var(--ldj-line); border-radius: 6px; background: var(--ldj-surface); color: var(--ldj-ink); }
.ldj-stage--desk .ldj-stage__content .latexdesk-journals > h2:first-child { margin-top: 0; }
.ldj-stage--desk .ldj-stage__content .latexdesk-journals p { max-width: 75ch; }
.ldj-stage--desk .ldj-stage__content .latexdesk-journals label { line-height: 1.5; font-size: .92rem; }
.ldj-stage--desk .ldj-stage__content .latexdesk-journals input,
.ldj-stage--desk .ldj-stage__content .latexdesk-journals select,
.ldj-stage--desk .ldj-stage__content .latexdesk-journals textarea { border-color: var(--ldj-control-line); border-radius: 5px; background: #fff; padding: 10px 12px; }
.ldj-stage--desk .ldj-stage__content .latexdesk-journals input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.ldj-stage--desk .ldj-stage__content .latexdesk-journals select { min-height: 44px; }
.ldj-stage--desk .ldj-stage__content .latexdesk-journals input[type="checkbox"],
.ldj-stage--desk .ldj-stage__content .latexdesk-journals input[type="radio"] { flex: 0 0 20px; width: 20px; height: 20px; padding: 0; vertical-align: middle; accent-color: var(--ldj-blue); }
.ldj-stage--desk .ldj-stage__content .latexdesk-journals input[readonly] { background: var(--ldj-bg); color: var(--ldj-muted); }
.ldj-stage--desk .ldj-stage__content .latexdesk-journals :focus-visible { outline-color: var(--ldj-blue); }
.ldj-stage--desk .ldj-stage__content .latexdesk-journals fieldset { padding: 18px; border-color: var(--ldj-line); border-radius: 6px; }
.ldj-stage--desk .ldj-stage__content .latexdesk-journals button,
.ldj-stage--desk .ldj-stage__button,
.ldj-stage--desk .latexdesk-join-button { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; border: 1px solid var(--ldj-blue); border-radius: 5px; background: var(--ldj-blue); color: #fff; font-weight: 650; line-height: 1.4; text-align: center; }
.ldj-stage--desk .ldj-stage__content .latexdesk-journals button:hover:not(:disabled),
.ldj-stage--desk .ldj-stage__button:hover:not(:disabled),
.ldj-stage--desk .latexdesk-join-button:hover { background: #124236; border-color: #124236; }
.ldj-stage--desk .ldj-stage__content .latexdesk-journals button:disabled { background: #e6e9e1; border-color: var(--ldj-line); color: #647066; cursor: not-allowed; }
.ldj-stage--desk .ldj-stage__content .latexdesk-journals__workflow-form { padding: 20px; border-color: var(--ldj-line); border-radius: 6px; background: var(--ldj-surface); }
.ldj-stage--desk .ldj-stage__content .latexdesk-journals__notice,
.ldj-stage--desk .ldj-stage__content .ldj-setup-notice { background: var(--ldj-soft); border-left-color: var(--ldj-blue); border-radius: 0 5px 5px 0; }
.ldj-stage--desk .ldj-stage__content .latexdesk-journals__project-context { margin-block: 20px; padding: 14px 18px; background: var(--ldj-soft); border-radius: 5px; }
.ldj-stage--desk .ldj-stage__content details { border-color: var(--ldj-line); border-radius: 6px; }
.ldj-stage--desk .ldj-stage__content summary { min-height: 24px; color: var(--ldj-ink); }
.ldj-stage--desk .ldj-stage__content th { color: var(--ldj-muted); font-size: .85rem; font-weight: 650; background: var(--ldj-bg); }
.ldj-stage--desk .ldj-stage__content th, .ldj-stage--desk .ldj-stage__content td { border-color: var(--ldj-line); vertical-align: top; }
.ldj-stage--desk .latexdesk-join-choice { border-color: var(--ldj-line); border-radius: 6px; background: var(--ldj-surface); }
.ldj-stage--desk .latexdesk-join-current-account { background: var(--ldj-soft); border-radius: 5px; }
.ldj-stage--desk .latexdesk-join-choice h3 a[aria-current="page"] { color: var(--ldj-blue); }
.ldj-stage--desk .latexdesk-join-choice--selected { background: var(--ldj-soft); border-color: var(--ldj-blue); }
.ldj-stage--desk .latexdesk-workspaces .latexdesk-join-choice button[aria-current="true"] { background: var(--ldj-soft); border-color: var(--ldj-blue); color: var(--ldj-blue); }
.ldj-stage--desk .latexdesk-workspaces .latexdesk-join-choice button[aria-current="true"]:hover { background: #e4eadf; }
.ldj-stage--account .latexdesk-workspaces { margin-top: 20px; }
.ldj-stage--account .latexdesk-workspaces > h3 { margin: 0 0 8px; font-size: 1.15rem; }
.ldj-stage--account .latexdesk-workspaces > p { margin: 0 0 14px; color: var(--ldj-muted); font-size: .86rem; }
.ldj-stage--account .latexdesk-workspaces .latexdesk-join-choices { grid-template-columns: minmax(0, 1fr); gap: 10px; margin: 0; }
.ldj-stage--account .latexdesk-workspaces .latexdesk-join-choice { padding: 14px; }
.ldj-stage--account .ldj-stage__content .latexdesk-workspaces form { margin: 0; gap: 12px; }
.ldj-stage--account .latexdesk-workspaces .latexdesk-join-choice p { color: var(--ldj-ink); font-size: .92rem; font-weight: 600; }
.ldj-stage--account .ldj-stage__content .latexdesk-workspaces button { justify-self: start; width: auto; font-size: .88rem; }
/* Membership and reviewer request assets are portable and use fixed colors.
   Override them here, so the plugin stays theme-independent elsewhere. */
.ldj-stage--desk .latexdesk-membership-request { border-color: var(--ldj-line); border-left-color: var(--ldj-blue); border-radius: 6px; background: var(--ldj-surface); color: var(--ldj-ink); }
.ldj-stage--desk .latexdesk-membership-requests__intro,
.ldj-stage--desk .latexdesk-membership-request__eyebrow,
.ldj-stage--desk .latexdesk-membership-request dt,
.ldj-stage--desk .latexdesk-membership-request__next,
.ldj-stage--desk .latexdesk-team-inbox > p,
.ldj-stage--desk .latexdesk-team-card .latexdesk-membership-request__header p,
.ldj-stage--desk .latexdesk-team-requested-role__label,
.ldj-stage--desk .latexdesk-team-required,
.ldj-stage--desk .latexdesk-team-decision-help { color: var(--ldj-muted); }
.ldj-stage--desk .latexdesk-membership-request__next { border-color: var(--ldj-line); }
.ldj-stage--desk .latexdesk-membership-request__status { background: #eff0e9; border-color: var(--ldj-line); color: var(--ldj-muted); }
.ldj-stage--desk .latexdesk-membership-request__status--pending { background: #fff4d6; border-color: #e8cb80; color: #664800; }
.ldj-stage--desk .latexdesk-membership-request__status--active { background: #e9f0e9; border-color: #c5d5ca; color: var(--ldj-blue); }
.ldj-stage--desk .latexdesk-team-requested-role__value,
.ldj-stage--desk .latexdesk-team-inbox__card p { color: var(--ldj-blue); }
.ldj-stage--desk .latexdesk-team-inbox__card { border-color: #c5d5ca; border-radius: 6px; background: var(--ldj-soft); }
.ldj-stage--desk .latexdesk-journals .latexdesk-team-inbox__link { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; border: 1px solid var(--ldj-blue); border-radius: 5px; background: var(--ldj-blue); color: #fff; font-size: .9rem; }
.ldj-stage--desk .latexdesk-journals .latexdesk-team-inbox__link:hover { background: #124236; border-color: #124236; }
.ldj-stage--desk .latexdesk-team-summary span { border-radius: 4px; background: var(--ldj-soft); color: var(--ldj-blue); }
.ldj-stage--desk .latexdesk-journals .latexdesk-team-secondary { border-color: var(--ldj-line); border-radius: 6px; background: var(--ldj-surface); }
.ldj-stage--desk .latexdesk-team-empty { border-color: var(--ldj-control-line); border-radius: 6px; color: var(--ldj-muted); }
.ldj-stage--desk .ldj-stage__content .latexdesk-journals .latexdesk-team-card .latexdesk-team-actions .latexdesk-team-approve { background: var(--ldj-blue); border-color: var(--ldj-blue); color: #fff; }
.ldj-stage--desk .ldj-stage__content .latexdesk-journals .latexdesk-team-card .latexdesk-team-actions .latexdesk-team-approve:hover { background: #124236; border-color: #124236; }
.ldj-stage--desk .ldj-stage__content .latexdesk-journals .latexdesk-team-card .latexdesk-team-actions .latexdesk-team-decline { background: var(--ldj-surface); border-color: #d4afa3; color: #762d24; }
.ldj-stage--desk .ldj-stage__content .latexdesk-journals .latexdesk-team-card .latexdesk-team-actions .latexdesk-team-decline:hover { background: #fff0e9; border-color: #9d3f2e; }
/* Journal setup keeps its own workflow structure, with a quieter desk palette. */
.ldj-stage--desk .ldj-setup-status, .ldj-stage--desk .ldj-setup-summary dt,
.ldj-stage--desk .ldj-setup-issues span, .ldj-stage--desk .ldj-setup-footer { color: var(--ldj-muted); }
.ldj-stage--desk .ldj-setup-nav a { display: flex; align-items: center; min-height: 44px; border: 1px solid var(--ldj-line); border-radius: 5px; background: var(--ldj-bg); color: var(--ldj-blue); font-size: .88rem; }
.ldj-stage--desk .ldj-setup-nav a[aria-current="page"] { background: var(--ldj-blue); border-color: var(--ldj-blue); color: #fff; }
.ldj-stage--desk .ldj-setup-button { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; border-color: var(--ldj-control-line); border-radius: 5px; background: var(--ldj-surface); color: var(--ldj-blue); }
.ldj-stage--desk .ldj-setup-button:hover { background: var(--ldj-soft); border-color: var(--ldj-blue); }
.ldj-stage--desk .ldj-setup summary { color: var(--ldj-blue); }
.ldj-stage--desk .ldj-setup :focus-visible { outline-color: var(--ldj-blue); }
.ldj-stage--desk .ldj-setup-footer, .ldj-stage--desk .ldj-setup-issues li,
.ldj-stage--desk .latexdesk-journals__volume-paper { border-color: var(--ldj-line); }
.ldj-stage--desk .ldj-volume-selection, .ldj-stage--desk .ldj-board-member { border-color: var(--ldj-line); border-radius: 6px; background: var(--ldj-surface); }
.ldj-stage--desk .ldj-domain-record { border-color: var(--ldj-line); border-radius: 6px; background: var(--ldj-bg); }
/* The submission wizard redeclares its tokens; explicitly inherit desk colors
   without changing its steps, preview sizing or submission behavior. */
.ldj-stage--desk .ldj-submit { --ldj-accent: var(--ldj-blue); --ldj-ink: var(--ldj-desk-ink); --ldj-muted: var(--ldj-desk-muted); --ldj-line: var(--ldj-desk-line); }
.ldj-stage--desk .ldj-submit h2 { font-size: 1.5rem; }
.ldj-stage--desk .ldj-submit h3 { font-size: 1.15rem; }
.ldj-stage--desk .ldj-submit-step-number { background: var(--ldj-bg); }
.ldj-stage--desk .ldj-submit-step.is-complete .ldj-submit-step-number { background: var(--ldj-soft); }
.ldj-stage--desk .ldj-submit-step.is-current .ldj-submit-step-number { background: var(--ldj-blue); }
.ldj-stage--desk .ldj-submit-notice { background: var(--ldj-soft); }
.ldj-stage--desk .ldj-submit-empty { background: var(--ldj-bg); border-radius: 6px; }
.ldj-stage--desk .ldj-submit-journal, .ldj-stage--desk .ldj-submit-history-item { border-radius: 6px; }
.ldj-stage--desk .ldj-submit-status { background: var(--ldj-soft); color: var(--ldj-muted); }
.ldj-stage--desk .ldj-submit-ready { color: var(--ldj-blue); }
.ldj-stage--desk .ldj-submit-form select, .ldj-stage--desk .ldj-submit-form input[type="text"] { min-height: 44px; border-color: var(--ldj-control-line); border-radius: 5px; }
.ldj-stage--desk .ldj-submit .ldj-submit-button { border-radius: 5px; }
.ldj-stage--desk .ldj-submit .ldj-submit-button:hover:not(:disabled) { background: #124236; border-color: #124236; color: #fff; }
.ldj-stage--desk .ldj-submit .ldj-submit-button-secondary { background: var(--ldj-surface); color: var(--ldj-blue); border-color: var(--ldj-control-line); }
.ldj-stage--desk .ldj-submit .ldj-submit-button-secondary:hover:not(:disabled) { background: var(--ldj-soft); color: var(--ldj-blue); border-color: var(--ldj-blue); }
.ldj-stage--desk .ldj-submit .ldj-submit-button:disabled { background: #e6e9e1; border-color: var(--ldj-line); color: #647066; }
.ldj-stage--desk .ldj-submit-pdf { border-radius: 5px; background: var(--ldj-bg); }
.ldj-stage--desk .ldj-submit :focus-visible { outline-color: var(--ldj-blue); }
.ldj-stage--desk .ldj-submit .ldj-submit-button:focus-visible { outline-color: var(--ldj-blue); }
/* Project-list styling is local to the non-editor shell. The core manuscript
   viewport, editor panes, source font and toolbars are not selected here. */
.ldj-stage--desk .latexdesk-projects { --ldp-ink: var(--ldj-ink); --ldp-muted: var(--ldj-muted); --ldp-border: var(--ldj-line); --ldp-surface: var(--ldj-surface); --ldp-soft: var(--ldj-bg); --ldp-primary: var(--ldj-blue); --ldp-primary-dark: #124236; max-width: none; }
.ldj-stage--desk .latexdesk-project-card, .ldj-stage--desk .latexdesk-plan-summary { border-radius: 6px; box-shadow: none; }
.ldj-stage--desk .latexdesk-project-card:hover { transform: none; border-color: var(--ldj-control-line); box-shadow: none; }
.ldj-stage--desk .latexdesk-project-card__icon, .ldj-stage--desk .latexdesk-projects__empty > span { border-radius: 5px; background: var(--ldj-soft); color: var(--ldj-blue); }
.ldj-stage--desk .latexdesk-plan-summary__track { background: #e4e8df; }
.ldj-stage--desk .latexdesk-plan-summary__track > span { background: var(--ldj-blue); }
.ldj-stage--desk .ldj-stage__content .latexdesk-project-create { padding: 0; border-color: var(--ldj-line); border-radius: 6px; background: var(--ldj-surface); }
.ldj-stage--desk .latexdesk-project-create label { color: var(--ldj-ink); }
.ldj-stage--desk .latexdesk-project-create input, .ldj-stage--desk .latexdesk-project-create select,
.ldj-stage--desk .latexdesk-project-create textarea { border-color: var(--ldj-control-line); border-radius: 5px; color: var(--ldj-ink); font: inherit; }
.ldj-stage--desk .latexdesk-projects .latexdesk-projects__primary-button { border-radius: 5px; color: #fff; }
.ldj-stage--desk .latexdesk-projects .latexdesk-projects__primary-button:hover,
.ldj-stage--desk .latexdesk-projects .latexdesk-projects__primary-button:focus-visible { color: #fff; }
.ldj-stage--desk .latexdesk-projects__download-button, .ldj-stage--desk .latexdesk-projects__restore-button { min-height: 44px; border-color: var(--ldj-control-line); border-radius: 5px; background: var(--ldj-surface); color: var(--ldj-blue); }
.ldj-stage--desk .latexdesk-projects__download-button:hover, .ldj-stage--desk .latexdesk-projects__restore-button:hover { border-color: var(--ldj-blue); background: var(--ldj-soft); }
.ldj-stage--desk .latexdesk-project-card__archive { min-height: 44px; border-radius: 5px; }
.ldj-stage--desk .latexdesk-projects__empty { border-color: var(--ldj-control-line); border-radius: 6px; }
.ldj-stage--desk .ldj-stage__content .latexdesk-archived-projects { padding: 0; background: var(--ldj-surface); border-radius: 6px; }
.ldj-stage--desk .latexdesk-archived-projects__count { background: var(--ldj-soft); color: var(--ldj-muted); }
.ldj-stage--desk .latexdesk-archived-projects__list article { border-color: var(--ldj-line); border-radius: 5px; background: var(--ldj-surface); }
.ldj-stage--desk .latexdesk-projects :focus-visible { outline-color: var(--ldj-blue); }
#latexdesk-approved-workspaces { scroll-margin-top: 24px; }
.ldj-stage__plan-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); gap: 16px; }
.ldj-stage__plan-card, .ldj-stage__plan-notice { padding: 22px; border: 1px solid var(--ldj-line); border-radius: 6px; background: var(--ldj-surface); }
.ldj-stage__plan-card h2 { margin: 0 0 20px; }
.ldj-stage__plan-card dl { margin: 0; }
.ldj-stage__plan-card dl > div + div { margin-top: 16px; }
.ldj-stage__plan-card dt { color: var(--ldj-muted); font-size: .9rem; }
.ldj-stage__plan-card dd { margin: 3px 0 0; font-size: 1.25rem; font-weight: 650; }
.ldj-stage__plan-notice { margin-bottom: 24px; border-left: 3px solid var(--ldj-blue); background: var(--ldj-soft); }
.ldj-stage__plan-notice p { margin: 8px 0 0; }
.ldj-stage--desk .latexdesk-journals__status-card { margin: 20px 0; padding: 20px; border: 1px solid var(--ldj-line); border-left: 3px solid var(--ldj-blue); border-radius: 6px; background: var(--ldj-soft); }
.ldj-stage--desk .latexdesk-journals__status-heading { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; margin-bottom: 12px; }
.ldj-stage--desk .latexdesk-journals__status-badge { display: inline-flex; padding: 6px 12px; border: 1px solid var(--ldj-control-line); border-radius: 5px; background: var(--ldj-surface); color: var(--ldj-blue); font-weight: 750; font-size: 1rem; }
.ldj-stage--desk .latexdesk-journals__status--revision_requested { color: #704900; background: #fff3d4; border-color: #d7bb7a; }
.ldj-stage--desk .latexdesk-journals__status--rejected { color: #862a28; background: #fff0ec; border-color: #d6a5a1; }
.ldj-stage--desk .latexdesk-journals__status-description { margin: 0 0 12px; }
.ldj-stage--desk .latexdesk-journals__status-guide { margin: 0; color: var(--ldj-muted); font-size: .9rem; }
.ldj-stage--desk .latexdesk-journals__submission-list { display: grid; gap: 14px; padding: 0; list-style: none; }
.ldj-stage--desk .latexdesk-journals__submission-card { padding: 18px; border: 1px solid var(--ldj-line); border-radius: 6px; background: var(--ldj-surface); }
.ldj-stage--desk .latexdesk-journals__submission-card a { display: inline-block; font-weight: 650; margin: 0 0 12px; }
.ldj-stage--desk .latexdesk-journals__submission-role { display: block; color: var(--ldj-muted); font-size: .9rem; margin-top: 8px; }
/* Board members get a read-only journal overview, not an editor settings form. */
.ldj-stage--desk .ldj-board-journal { display: grid; gap: 20px; min-width: 0; color: var(--ldj-ink); }
.ldj-stage--desk .ldj-board-journal__header,
.ldj-stage--desk .ldj-board-journal__identity,
.ldj-stage--desk .ldj-board-journal__section,
.ldj-stage--desk .ldj-board-journal__responsibilities { min-width: 0; padding: 24px; border: 1px solid var(--ldj-line); border-radius: 6px; background: var(--ldj-surface); }
.ldj-stage--desk .ldj-board-journal__header { border-top: 3px solid var(--ldj-blue); }
.ldj-stage--desk .ldj-board-journal__header h2 { margin: 14px 0 0; font-size: clamp(1.45rem, 2vw, 1.8rem); overflow-wrap: anywhere; }
.ldj-stage--desk .ldj-board-journal__eyebrow { margin: 0; color: var(--ldj-muted); font-size: .78rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.ldj-stage--desk .ldj-board-journal__badge { display: inline-flex; flex-wrap: wrap; align-items: center; width: fit-content; max-width: 100%; margin-top: 8px; padding: 5px 10px; border: 1px solid #c5d5ca; border-radius: 5px; background: var(--ldj-soft); color: var(--ldj-blue); font-size: .86rem; font-weight: 650; }
.ldj-stage--desk .ldj-board-journal__identity { margin: 0; }
.ldj-stage--desk .ldj-board-journal__identity dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px 24px; margin: 0; }
.ldj-stage--desk .ldj-board-journal__field { min-width: 0; }
.ldj-stage--desk .ldj-board-journal__identity dt { margin: 0 0 4px; color: var(--ldj-muted); font-size: .86rem; font-weight: 650; }
.ldj-stage--desk .ldj-board-journal__identity dd { margin: 0; color: var(--ldj-ink); overflow-wrap: anywhere; }
.ldj-stage--desk .ldj-board-journal__section h3,
.ldj-stage--desk .ldj-board-journal__responsibilities h3 { margin: 0 0 12px; font-size: 1.15rem; }
.ldj-stage--desk .ldj-board-journal__text { max-width: 75ch; margin: 0; overflow-wrap: anywhere; }
.ldj-stage--desk .ldj-board-journal__empty { margin: 0; color: var(--ldj-muted); font-size: .94rem; }
.ldj-stage--desk .ldj-board-journal__responsibilities { border-left: 3px solid var(--ldj-blue); background: var(--ldj-soft); }
.ldj-stage--desk .ldj-board-journal__responsibilities p { max-width: 75ch; margin: 0; }
.ldj-stage--desk .ldj-board-journal__responsibilities p + p { margin-top: 12px; }
.ldj-stage--desk .ldj-board-journal__public-link { display: inline-flex; align-items: center; min-height: 44px; width: fit-content; max-width: 100%; margin-top: 14px; padding: 8px 0; color: var(--ldj-blue); font-weight: 650; overflow-wrap: anywhere; }
.ldj-stage--desk .ldj-board-journal__public-link:focus-visible { outline: 3px solid #657c36; outline-offset: 4px; border-radius: 2px; }
@media (max-width: 520px) {
    .ldj-stage--desk .ldj-board-journal { gap: 16px; }
    .ldj-stage--desk .ldj-board-journal__header,
    .ldj-stage--desk .ldj-board-journal__identity,
    .ldj-stage--desk .ldj-board-journal__section,
    .ldj-stage--desk .ldj-board-journal__responsibilities { padding: 18px; }
    .ldj-stage--desk .ldj-board-journal__identity dl { grid-template-columns: minmax(0, 1fr); gap: 16px; }
}
@media (max-width: 1000px) {
    .ldj-stage--account .latexdesk-account-grid { grid-template-columns: minmax(0, 1fr); grid-template-areas: "profile" "roles" "security"; }
    .ldj-stage--account .latexdesk-account-grid--journal { grid-template-areas: "journal" "profile" "roles" "security"; }
}
@media (max-width: 760px) {
    .ldj-stage__current-role { max-width: 100%; }
    .ldj-stage--desk .ldj-stage__header { padding: 14px 16px; }
    .ldj-stage--desk .ldj-stage__layout { display: block; margin-top: 16px; padding-inline: 16px; }
    .ldj-stage--desk .ldj-stage__nav { position: static; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; overflow: visible; margin: 0 0 24px; padding: 0; }
    .ldj-stage--desk .ldj-stage__nav-group { align-content: start; padding: 10px; border: 1px solid var(--ldj-line); border-radius: 6px; background: var(--ldj-surface); }
    .ldj-stage--desk .ldj-stage__nav-group + .ldj-stage__nav-group { padding-top: 10px; }
    .ldj-stage--desk .ldj-stage__nav-heading { margin-inline: 8px; }
    .ldj-stage--desk .ldj-stage__nav a { padding: 10px 8px; text-align: left; }
    .ldj-stage--desk .ldj-stage__main { padding: 0; }
    .ldj-stage--desk .ldj-stage__overview-summary { padding: 20px; }
    .ldj-stage--desk .ldj-stage__content > .latexdesk-journals:not(.latexdesk-journal-account),
    .ldj-stage--desk .ldj-stage__content > .ldj-submit { padding: 20px; }
    .ldj-stage--desk .ldj-stage__content .latexdesk-journals__workflow-form { padding: 16px; }
    .ldj-stage--account .latexdesk-account-grid { gap: 16px; }
    .ldj-stage--account .latexdesk-account-card { padding: 20px; }
}
@media (max-width: 480px) {
    .ldj-stage--desk .ldj-stage__layout { padding-inline: 12px; }
    .ldj-stage--desk .ldj-stage__nav { grid-template-columns: minmax(0, 1fr); gap: 10px; }
    .ldj-stage--desk .ldj-stage__nav-group { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3px 8px; }
    .ldj-stage--desk .ldj-stage__nav-heading { grid-column: 1 / -1; }
    .ldj-stage--desk .ldj-stage__content > .latexdesk-journals:not(.latexdesk-journal-account),
    .ldj-stage--desk .ldj-stage__content > .ldj-submit,
    .ldj-stage--desk .ldj-stage__overview-summary,
    .ldj-stage--account .latexdesk-account-card { padding: 18px; }
    .ldj-stage--desk .ldj-stage__content .latexdesk-journals fieldset,
    .ldj-stage--desk .ldj-stage__content .latexdesk-journals__workflow-form { padding: 14px; }
}
