/* Shared presentation contract. Source of truth: frontend; API copy is generated.
   Layout never grants permissions, changes capabilities or hides error content. */
:root {
  --eng-canvas:#f7f7f3; --eng-surface:#fff; --eng-ink:#252b26;
  --eng-muted:#62695f; --eng-line:#d8ddd3; --eng-subtle:#eef0e9;
  --eng-action:#235a89; --eng-positive:#35684a; --eng-error:#9d3335;
  --navy:var(--eng-ink); --cyan:var(--eng-action); --green:var(--eng-positive);
  --muted:var(--eng-muted); --line:var(--eng-line); --paper:var(--eng-surface);
  --bg:var(--eng-canvas); --text:var(--eng-ink); --primary:var(--eng-action);
  --border:var(--eng-line); --radius:6px;
  color-scheme:light;
}
html { background:var(--eng-canvas); scroll-padding-top:24px; }
body { color:var(--eng-ink); background:var(--eng-canvas); font-family:var(--ux-font-family,Inter,Arial,sans-serif); line-height:1.55; }
*,*::before,*::after { box-sizing:border-box; }
input,select,textarea,button { font:inherit; }
input,select,textarea { max-width:100%; }
textarea { line-height:1.55; }
a { color:var(--eng-action); text-underline-offset:.2em; }
button,a,input,select,textarea,summary { -webkit-tap-highlight-color:transparent; }
:is(button,a,input,select,textarea,summary,[tabindex]):focus-visible { outline:3px solid var(--eng-action); outline-offset:3px; }
[hidden] { display:none!important; }
:is(.ux-enabled,.eng-interface) :is(h1,h2,h3) { color:var(--eng-ink); letter-spacing:-.035em; }
:is(.ux-enabled,.eng-interface) :is(h1,h2,h3,section[id]) { scroll-margin-top:108px; }
:is(.ux-enabled,.eng-interface) :is(h1,h2) { font-weight:600; }
:is(.ux-enabled,.eng-interface) :is(.muted,.ux-caption,.ux-lead,.profile-intro,.form-help) { color:var(--eng-muted); }
.ux-main { max-width:1416px; padding-inline:48px; }
.ux-header { background:var(--eng-canvas); border-bottom:1px solid var(--eng-line); box-shadow:none; }
.ux-header-inner { max-width:1320px; min-height:84px; }
.ux-brand img { max-width:148px; height:auto; }
.ux-header :is(.ux-account,.ux-desktop-nav a,.journey-public-nav a) { color:var(--eng-ink); }
.ux-header :is(a,button,summary) { border-radius:5px; }
.ux-header :is(.ux-account,.ux-desktop-nav a)[aria-current=page] { color:var(--eng-action); }
.ux-footer { background:transparent; border-top:1px solid var(--eng-line); color:var(--eng-muted); }
.ux-footer :is(p,a) { color:var(--eng-muted); }
.ux-eyebrow { color:var(--eng-muted); font-size:11px; font-weight:600; letter-spacing:.08em; }
.ux-page-heading { padding-block:32px; }
.ux-page-heading h1 { max-width:24ch; font-size:clamp(28px,3.1vw,42px); }
.ux-page-heading .ux-lead { max-width:68ch; font-size:16px; }
:is(.ux-workspace,.eng-interface) :is(.card,.owner-card,.profile-card,.workspace-card,.notice,.entry,.ux-panel) { border-radius:6px; border-color:var(--eng-line); box-shadow:none; }
:is(.ux-workspace,.eng-interface) :is(.card,.owner-card,.profile-card,.workspace-card,.ux-panel) { background:var(--eng-surface); }
:is(.ux-workspace,.eng-interface) :is(.card,.owner-card,.profile-card) :is(.card,.owner-card,.profile-card) { border-radius:0; box-shadow:none; }
:is(.ux-workspace,.eng-interface) :is(.toolbar,.actions,.form-actions) { gap:10px; }
:is(.ux-workspace,.eng-interface) :is(button,input,select) { min-height:44px; }
:is(.ux-workspace,.eng-interface) :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=hidden]),select,textarea) { border:1px solid var(--dt-control,#818b7e); background:var(--eng-surface); color:var(--eng-ink); border-radius:5px; }
:is(.ux-workspace,.eng-interface) :is(button,.ux-button) { border-radius:6px; box-shadow:none; font-weight:600; }
:where(.ux-workspace,.eng-interface) :is(button[type=submit],button.auth-primary,.ux-primary,button.primary), :is(.ux-workspace,.eng-interface) #catalog-save { background-color:var(--dt-strong,var(--eng-action)); color:var(--dt-on-strong,#fff); border-color:var(--eng-action); }
:is(.ux-workspace,.eng-interface) :is(button.secondary,.ux-secondary) { background:var(--eng-surface); color:var(--eng-ink); border:1px solid var(--dt-line,#b5c0ae); }
:is(.ux-workspace,.eng-interface) :is(button.danger,.danger-action) { color:var(--dt-on-strong,#fff); background:var(--eng-error); border-color:var(--eng-error); }
:is(.ux-workspace,.eng-interface) :is(button.inverse,.secondary.inverse) { color:var(--eng-ink)!important; background:transparent!important; border-color:var(--dt-control,#a5b09d)!important; }
:is(.ux-workspace,.eng-interface) :is(.error,.form-error,[role=alert]) { color:var(--eng-error); }
:is(.ux-workspace,.eng-interface) :is(.success,.positive) { color:var(--eng-positive); background:var(--dt-positive-bg,#edf3eb); border-color:var(--dt-line,#b5c9b3); }
:is(.ux-workspace,.eng-interface) :is(.notice,.ux-notice,.neutral) { background:var(--eng-subtle); border:1px solid var(--eng-line); color:var(--eng-ink); }
:is(.ux-workspace,.eng-interface) .badge { color:var(--eng-muted); background:var(--eng-subtle); border:1px solid var(--eng-line); border-radius:4px; font-size:12px; font-weight:500; }
:is(.ux-workspace,.eng-interface) details > summary { cursor:pointer; min-height:44px; padding-block:10px; color:var(--eng-action); }
:is(.ux-workspace,.eng-interface) table { border-collapse:collapse; }
:is(.ux-workspace,.eng-interface) :is(th,td) { padding:12px 14px; border-color:var(--eng-line); }
:is(.ux-workspace,.eng-interface) th { color:var(--eng-muted); background:var(--eng-subtle); font-size:12px; font-weight:600; }
:is(.ux-workspace,.eng-interface) :is(.amount,.price,[data-amount],time) { font-variant-numeric:tabular-nums; }
.eng-interface > header { background:var(--eng-canvas); color:var(--eng-ink); border-bottom:1px solid var(--eng-line); }
.eng-interface > header :is(.brand,a) { color:var(--eng-ink); }
.workspace-intro { border-bottom:1px solid var(--eng-line); padding-bottom:20px; margin-bottom:24px; }
.workspace-nav { gap:8px 20px; }
.workspace-nav a { border-radius:0; border:0; border-bottom:2px solid transparent; background:transparent; padding:10px 0; color:var(--eng-muted); }
.workspace-nav a[aria-current=page],.workspace-nav a.active { border-bottom-color:var(--eng-action); color:var(--eng-ink); }
.auth-shell { border:0; box-shadow:none; background:transparent; border-radius:0; align-items:start; grid-template-columns:minmax(220px,.8fr) minmax(320px,1fr); gap:64px; }
.auth-visual { color:var(--eng-ink); background:transparent; padding:36px 0; border-radius:0; }
.auth-visual::before,.auth-visual::after { display:none; }
.auth-visual h1 { color:var(--eng-ink); font-size:36px; max-width:18ch; }
.auth-visual p,.auth-visual .auth-kicker { color:var(--eng-muted); }
.auth-visual .auth-benefits { display:grid; gap:0; margin-top:24px; }
.auth-visual .auth-benefits li { border-top:1px solid var(--eng-line); padding:16px 0; }
.auth-visual .auth-benefits li > span { color:var(--eng-positive); background:transparent; border-radius:0; }
.auth-visual .auth-benefits :is(strong,small) { color:var(--eng-ink); }
.auth-access-note { color:var(--eng-muted); border-top:1px solid var(--eng-line); background:transparent; }
.auth-card { box-shadow:none; border:1px solid var(--eng-line); border-radius:8px; }
.auth-trust { max-width:58ch; }
.workspace-account-details { margin-top:8px; }
.workspace-account-details summary { font-size:13px; }
.eng-section-intro { border-top:1px solid var(--eng-line); padding-top:24px; margin-block:28px 20px; }
.eng-section-intro p { max-width:70ch; color:var(--eng-muted); }
.eng-technical-details { margin-top:8px; color:var(--eng-muted); font-size:12px; }
.eng-technical-details summary { font-size:12px; }
.eng-technical-details p { overflow-wrap:anywhere; }
.eng-interface .catalog-workbench .catalog-editor-actions button { white-space:normal; }
.eng-interface #editor .section-heading h2 { font-size:24px; }
.eng-interface #editor .catalog-editor-tabs { border-radius:0; background:transparent; border-bottom:1px solid var(--eng-line); }
.eng-interface #editor .catalog-editor-tabs button { color:var(--eng-muted); background:transparent; border:0; border-radius:0; border-bottom:2px solid transparent; }
.eng-interface #editor .catalog-editor-tabs button[aria-selected=true] { color:var(--eng-action); border-bottom-color:var(--eng-action); background:transparent; }
.eng-interface .catalog-editor-empty { background:var(--eng-subtle); border:1px dashed var(--dt-line,#b5c0ae); border-radius:6px; }
.ux-workspace :is(.journey-mode-panel,.role-workspace-panel) { box-shadow:none; border-radius:6px; }
.ux-workspace :is(.journey-mode-panel,.role-workspace-panel) :is(h1,h2,h3) { color:var(--eng-ink); }
.ux-workspace .ux-bottom-nav { background:var(--eng-canvas); border-top:1px solid var(--eng-line); box-shadow:none; }
.ux-workspace .ux-bottom-nav a { color:var(--eng-muted); }
.ux-workspace .ux-bottom-nav a[aria-current=page] { color:var(--eng-action); }
@media(max-width:1000px) {
  .ux-main { padding-inline:24px; }
  .auth-shell { gap:32px; }
  .auth-visual h1 { font-size:30px; }
}
@media(max-width:680px) {
  .ux-main { padding-inline:20px; }
  .ux-header-inner { min-height:68px; padding-inline:20px; }
  .ux-brand img { max-width:126px; }
  :is(.ux-enabled,.eng-interface) :is(h1,h2,h3,section[id]) { scroll-margin-top:88px; }
  .ux-page-heading { padding-block:24px; }
  .ux-workspace .ux-page-heading h1 { font-size:28px; }
  .auth-shell { display:flex; flex-direction:column; gap:24px; }
  .auth-visual { padding:0; }
  .auth-visual h1 { max-width:none; font-size:28px; }
  .auth-benefits,.auth-access-note { display:none!important; }
  .auth-card-wrap { width:100%; }
  .workspace-intro { margin-bottom:16px; padding-bottom:12px; }
  .workspace-nav { display:flex; flex-wrap:wrap; }
  .eng-interface #editor .section-heading h2 { font-size:20px; }
  .eng-interface .catalog-workbench-heading { gap:8px; }
  .eng-interface .catalog-workbench-heading h2 { font-size:22px; }
  .eng-interface :is(.card,.owner-card,.profile-card) { padding:16px; }
  .eng-interface :is(.card,.owner-card,.profile-card) :is(.card,.owner-card,.profile-card) { padding-inline:0; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation:none!important; transition:none!important; }
}
@media print {
  body { background:#fff; color:#111; }
  :is(.ux-workspace,.eng-interface) :is(.card,.owner-card,.profile-card) { box-shadow:none; }
}

/* Match the established workspace scope so the former dark authentication
   layout cannot outrank the shared specification through specificity. */
body.eng-interface .auth-shell{max-width:440px;min-height:0;margin:40px auto 48px;display:block;overflow:visible;background:transparent;border:0;border-radius:0;box-shadow:none}
body.eng-interface .auth-visual{display:none;background:transparent;color:var(--eng-ink);padding:24px 0;gap:24px;justify-content:flex-start;overflow:visible}
body.eng-interface .auth-visual::before,body.eng-interface .auth-visual::after{display:none}
body.eng-interface .auth-visual h1{max-width:18ch;color:var(--eng-ink);font-size:36px;line-height:1.15;letter-spacing:-.035em}
body.eng-interface .auth-visual-copy>p:last-child,body.eng-interface .auth-kicker{color:var(--eng-muted);font-size:15px;line-height:1.65}
body.eng-interface .auth-benefits{display:grid;gap:0;margin:0;padding:0;list-style:none}
body.eng-interface .auth-benefits li{padding:16px 0;border-top:1px solid var(--eng-line);grid-template-columns:28px 1fr;gap:12px}
body.eng-interface .auth-benefits li>span{background:transparent;border:0;border-radius:0;color:var(--eng-positive);font-weight:500}
body.eng-interface .auth-benefits strong{color:var(--eng-ink);font-weight:600}
body.eng-interface .auth-benefits small{color:var(--eng-muted)}
body.eng-interface .auth-access-note{background:transparent;backdrop-filter:none;border:0;border-top:1px solid var(--eng-line);border-radius:0;padding:16px 0;color:var(--eng-muted)}
body.eng-interface .auth-access-note :is(strong,span){color:var(--eng-muted)}
body.eng-interface .auth-card-wrap{display:block;align-content:start;max-width:440px;width:100%;padding:24px;background:var(--eng-surface);border:1px solid var(--eng-line);border-radius:6px;justify-self:center}
body.eng-interface .auth-card{width:100%;max-width:none;background:transparent;border:0;border-radius:0;padding:0;box-shadow:none}
body.eng-interface #auth .auth-switch{display:flex;gap:16px;padding:0;margin:0 0 24px;border-radius:0;background:transparent;border-bottom:1px solid var(--eng-line)}
body.eng-interface #auth .auth-switch button{flex:1;min-height:44px;border-radius:0;padding:10px 4px;box-shadow:none}
body.eng-interface #auth .auth-switch button[aria-pressed=false]{background:transparent;color:var(--eng-muted);border:0;border-bottom:2px solid transparent}
body.eng-interface #auth .auth-switch button[aria-pressed=true]{background:transparent;color:var(--eng-ink);border:0;border-bottom:2px solid var(--eng-action);box-shadow:none}
body.eng-interface .auth-card .auth-form-heading h1{font-size:28px;line-height:1.2;letter-spacing:-.025em}
@media(max-width:900px){body.eng-interface .auth-card-wrap{padding:20px}}
@media(max-width:680px){body.eng-interface .auth-shell{max-width:440px;margin:16px auto 32px}body.eng-interface .auth-visual{display:none}body.eng-interface .auth-card-wrap{max-width:none;padding:20px}body.eng-interface .auth-card .auth-form-heading h1{font-size:26px}}

/* Case identity is secondary to the object and action. */
body.eng-interface .case-reference{margin:6px 0;font-size:12px;color:var(--eng-muted,var(--dt-muted,#62695f))}body.eng-interface .case-reference>summary{min-height:44px;display:flex;align-items:center;cursor:pointer;text-decoration:underline;text-underline-offset:3px}body.eng-interface .case-reference code{display:block;overflow-wrap:anywhere;margin:8px 0}body.eng-interface .history-entry{border-top:1px solid var(--dt-line,#d8ddd3);padding:16px 0}body.eng-interface .history-entry h3{margin:0 0 6px;font-size:16px}body.eng-interface .history-entry>strong{font-size:12px;display:block;margin-top:12px}

/* One editable document: navigate freely, publish only the saved revision. */
body.eng-interface .maker-profile-steps{display:flex;flex-wrap:wrap;gap:4px 20px;border-block:1px solid #d8ddd3;margin:16px 0;padding:6px 0}body.eng-interface .maker-profile-steps a{min-height:44px;display:flex;align-items:center;color:var(--dt-action,#235a89);text-underline-offset:4px}body.eng-interface :is(#maker-profile-fields,#maker-work-examples,#maker-publication-review){scroll-margin-top:90px}body.eng-interface .maker-profile-preview{border:1px solid var(--dt-line,#d8ddd3);border-radius:5px;margin:16px 0;padding:14px 16px;background:var(--dt-surface,#fff)}body.eng-interface .maker-profile-preview>summary{min-height:44px;cursor:pointer}body.eng-interface .maker-profile-preview h4{font-size:20px;margin:10px 0}body.eng-interface .maker-profile-preview p{overflow-wrap:anywhere}body.eng-interface .maker-profile-preview .muted{border-top:1px solid var(--dt-line,#d8ddd3);padding-top:12px;font-size:13px}
