/* Gilded Age. Screen-only, opt-in materials; no manuscript or PDF selectors. */
@media screen {
  :root[data-palette=gilded-age] {
    --ga-canvas:url('gilded-age/ivory-paper.webp');
    --ga-wash:#efe6d5e8;--ga-canvas-size:480px;--ga-foil:#ba9b62;--ga-radius:3px;
  }
  :root[data-palette=gilded-age][data-theme=dark] {
    --ga-canvas:url('gilded-age/olive-damask-v1.webp');--ga-wash:#1b201be6;
    --ga-canvas-size:720px;--ga-foil:#b69b68;
  }
  :root[data-palette=gilded-age] body {
    color:var(--ink);background-color:var(--paper);
    background-image:linear-gradient(var(--ga-wash),var(--ga-wash)),var(--ga-canvas);
    background-size:auto,var(--ga-canvas-size);
  }
  :root[data-palette=gilded-age] :is(.site-header,.site-footer) {
    background:transparent;border-color:var(--line);
  }
  :root[data-palette=gilded-age] :is(.brand-mark,.marketing-brand-mark,.eyebrow>.icon) {color:var(--gold)}
  :root[data-palette=gilded-age] :is(.button,input,textarea,select,dialog,.filter-bar,.paper-form) {border-radius:var(--ga-radius)}
  :root[data-palette=gilded-age] :is(a,button,input,textarea,select,summary):focus-visible {outline:2px solid var(--focus);outline-offset:3px}
  :root[data-palette=gilded-age] .button:not(.secondary):not(.light):not(.danger-button) {
    background:var(--ga-wine);color:var(--ga-on-wine);border-color:var(--ga-foil);
    box-shadow:inset 0 0 0 1px #ffffff20,0 3px 8px #00000015;
  }
  :root[data-palette=gilded-age] .button:not(.secondary):not(.light):not(.danger-button):hover {background:var(--ga-wine-hover);color:var(--ga-on-wine)}

  /* The library shell stays dark in either appearance; readable labels remain. */
  :root[data-palette=gilded-age] body.fa-sidebar-layout header.archive-sidebar {
    --sidebar-active:var(--ga-wine);--sidebar-muted:#c9bfaa;
    background:linear-gradient(#121714e8,#151815ed),url('gilded-age/charcoal-cloth.webp') center/420px;
    color:#f5ead6;border-right:1px solid #8e7951;
  }
  :root[data-palette=gilded-age] .archive-sidebar .brand-mark {color:#d7bd82;border:0}
  :root[data-palette=gilded-age] .archive-sidebar .primary-nav a {border-radius:2px;border:1px solid transparent}
  :root[data-palette=gilded-age] .archive-sidebar .primary-nav a.current {
    background:var(--ga-wine);color:var(--ga-on-wine);border-color:#b69b68;box-shadow:inset 3px 0 #d7bd82;
  }
  :root[data-palette=gilded-age] .archive-sidebar .primary-nav a:hover {background:var(--ga-wine-hover);color:var(--ga-on-wine)}
  :root[data-palette=gilded-age] .archive-sidebar :is(.primary-nav .icon,.sidebar-settings>.icon) {color:#dac49c}
  :root[data-palette=gilded-age] .archive-sidebar #workspace-switch {
    background:#202620;color:#f5ead6;border-color:#9e8b66;border-radius:2px;
  }
  :root[data-palette=gilded-age] .archive-sidebar .sidebar-avatar {background:var(--ga-wine);color:var(--ga-on-wine);border:1px solid #b69b68}
  :root[data-palette=gilded-age] body.fa-sidebar-layout #site-settings {color:#f5ead6}

  /* Homepage: a genuine cloth binding beneath live, accessible copy. */
  :root[data-palette=gilded-age] .home-hub {max-width:none;padding-top:30px}
  :root[data-palette=gilded-age] .home-hub>:not(.home-intro) {max-width:1500px;margin-inline:auto}
  :root[data-palette=gilded-age] .home-intro {
    position:relative;isolation:isolate;min-height:160px;
    padding:0 max(0px,calc(50% - 750px),calc(30px - var(--page-gutter,32px))) 22px;border-bottom:1px solid var(--line);
  }
  :root[data-palette=gilded-age] .home-intro>div {max-width:62%}
  :root[data-palette=gilded-age] .home-intro::after {
    content:'';position:absolute;right:calc(-1 * var(--page-gutter,32px));top:-30px;bottom:0;
    width:min(1100px,82%);z-index:-1;pointer-events:none;
    background:url('gilded-age/heirloom-desk-v2.webp') right 72%/cover no-repeat;
    mask-image:linear-gradient(90deg,transparent 0%,transparent 30%,#000 92%);
  }
  :root[data-palette=gilded-age] .home-intro .eyebrow {letter-spacing:.24em}
  :root[data-palette=gilded-age] .home-intro h1 em {color:var(--ink)}
  :root[data-palette=gilded-age] .home-work {background:transparent;border:0;padding:0;gap:16px}
  :root[data-palette=gilded-age] .home-work-heading h2 {font:600 10px/1.7 'Archive Sans',sans-serif;letter-spacing:.2em;text-transform:uppercase}
  :root[data-palette=gilded-age] :is(.home-work-primary,.story-library-resume) {
    --ink:#fff0d9;--muted:#ddcdb6;--accent:#ddc38c;--accent-dark:#f1dba6;--on-accent:#291f10;--gold:#ddc38c;
    position:relative;isolation:isolate;color:var(--ink);border:1px solid #997b56;border-left:8px solid #49212c;
    border-radius:4px;background:linear-gradient(100deg,#30121e59,#30121e80),url('gilded-age/claret-cloth.webp') center/450px;
    box-shadow:inset 2px 0 3px #fff2,inset -2px 0 5px #0008,0 8px 18px #0003;
  }
  :root[data-palette=gilded-age] .home-hub .home-work .home-work-primary,
  :root[data-palette=gilded-age] .home-hub .home-work .home-work-primary:hover {
    background:linear-gradient(100deg,#30121e59,#30121e80),url('gilded-age/claret-cloth.webp') center/450px;
    min-height:255px;padding:30px 28px;
  }
  :root[data-palette=gilded-age] :is(.home-work-primary,.story-library-resume)::after {
    content:'';position:absolute;inset:7px;z-index:-1;border:18px solid transparent;
    border-image:url('gilded-age/foil-frame.svg') 24 stretch;pointer-events:none;
  }
  :root[data-palette=gilded-age] .home-work-primary::before {
    content:'';position:absolute;inset:18px 14px 16px auto;width:32%;z-index:-1;
    background:url('gilded-age/botanical-spray-ui.webp') right center/contain no-repeat;pointer-events:none;opacity:.82;
  }
  :root[data-palette=gilded-age] .home-work-primary .home-work-copy {max-width:70%}
  :root[data-palette=gilded-age] .home-work-primary>.home-work-symbol {display:none}
  :root[data-palette=gilded-age] .home-work-primary .home-work-meta {letter-spacing:.05em}
  :root[data-palette=gilded-age] .home-work-primary .home-work-copy>strong {font-size:clamp(27px,2.9vw,42px);font-weight:400;line-height:1.15}
  :root[data-palette=gilded-age] .home-work-action {border-radius:2px;border:1px solid #ddc38c;background:var(--ga-wine);color:var(--ga-on-wine)}
  :root[data-palette=gilded-age] .home-work-primary:is(:hover,:focus-visible) .home-work-action {background:var(--ga-wine-hover);color:var(--ga-on-wine)}
  :root[data-palette=gilded-age] .home-work-list .home-work-symbol {border:0;background:transparent;color:var(--gold)}
  :root[data-palette=gilded-age] .home-work-list strong {font-family:'Archive Serif',Georgia,serif;font-size:19px;font-weight:400}
  :root[data-palette=gilded-age] .home-section {position:relative;margin-top:28px;padding-top:20px;border-top:1px solid var(--line)}
  :root[data-palette=gilded-age] .home-section::before {
    content:'';position:absolute;top:-13px;left:calc(50% - 22px);width:44px;height:26px;
    background:var(--paper) url('gilded-age/botanical-divider.svg') center/34px 22px no-repeat;pointer-events:none;
  }

  /* Four library binding tones echo the reference; canonical motif files stay. */
  :root[data-palette=gilded-age] :is(.home-lineage,.lineage-directory-card) {
    --ga-binding:#422a30;--ink:#fff0d9;--muted:#e0d0bd;--accent:#ddc38c;--accent-dark:#f1dba6;--on-accent:#291f10;
    --surface:var(--ga-binding);--control-border:#c1a983;
    border:1px solid #a28a61;border-radius:3px;color:var(--ink);
    background:linear-gradient(var(--ga-binding),var(--ga-binding)),url('gilded-age/claret-cloth.webp') center/390px;
    background-blend-mode:color,normal;box-shadow:inset 0 0 0 4px #0002,inset 0 0 0 5px #bda57760,0 4px 12px #0003;
  }
  :root[data-palette=gilded-age] :is(.home-branch-1,.lineage-directory-card.branch-1) {--ga-binding:#28372c}
  :root[data-palette=gilded-age] :is(.home-branch-2,.lineage-directory-card.branch-2) {--ga-binding:#39313d}
  :root[data-palette=gilded-age] :is(.home-branch-3,.lineage-directory-card.branch-3) {--ga-binding:#503026}
  :root[data-palette=gilded-age] .home-hub .home-lineage,
  :root[data-palette=gilded-age] .home-hub .home-lineage:hover {
    min-height:225px;overflow:hidden;background:linear-gradient(var(--ga-binding),var(--ga-binding)),url('gilded-age/claret-cloth.webp') center/390px;
    background-blend-mode:color,normal;
  }
  :root[data-palette=gilded-age] :is(.home-lineage,.lineage-directory-card):hover {border-color:#e4c48b;box-shadow:inset 0 0 0 4px #0002,inset 0 0 0 5px #d2b477a0,0 7px 18px #0004}
  :root[data-palette=gilded-age] .home-lineage h3 {background:none;box-shadow:none;font-weight:400;font-size:32px}
  :root[data-palette=gilded-age] .home-lineage p {color:var(--muted);font-family:'Archive Serif',serif;font-size:15px}
  :root[data-palette=gilded-age] .home-lineage-art {
    --ga-branch-fade:linear-gradient(90deg,transparent,#0002 16%,#000a 38%,#000 62%),radial-gradient(ellipse 85% 56% at 72% 50%,#000 42%,#000c 62%,transparent 95%);
    right:-14%;top:50%;bottom:auto;width:72%;height:auto;aspect-ratio:640/427;max-height:calc(100% - 24px);
    transform:translateY(-50%);background-position:right center;opacity:1;
    -webkit-mask-image:var(--ga-branch-fade);mask-image:var(--ga-branch-fade);
    -webkit-mask-composite:source-in;mask-composite:intersect;
    -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
  }
  :root[data-palette=gilded-age] .lineage-directory-card h2 a {background:transparent;box-shadow:none}
  :root[data-palette=gilded-age] :is(.home-lineage,.lineage-directory-card) .lineage-art {background-image:var(--lineage-art-dark)}
  :root[data-palette=gilded-age] .lineage-card-art {opacity:.88}

  /* Paper mounts surround, never filter or crop, the original photograph. */
  :root[data-palette=gilded-age] .home-hub .home-start-grid>.family-album-home,
  :root[data-palette=gilded-age] .home-hub .family-album-home .family-album-heading {background:transparent;border:0}
  :root[data-palette=gilded-age] .family-album {border-radius:3px}
  :root[data-palette=gilded-age] .family-album .family-album-image {
    background:#e8dcc1 url('gilded-age/ivory-paper.webp') center/480px;
    border:12px solid transparent;border-image:url('gilded-age/photo-mounts.svg') 24 stretch;border-radius:0;
  }
  :root[data-palette=gilded-age] .home-hub .family-album-home .family-album-heading h2 {font:600 10px/1.7 'Archive Sans',sans-serif;letter-spacing:.2em;text-transform:uppercase}
  :root[data-palette=gilded-age] .family-album-home .family-album-slide figcaption {background:transparent;padding-top:16px}
  :root[data-palette=gilded-age] .family-album-home .family-album-slide figcaption p {font:20px/1.4 'Archive Serif',serif}
  :root[data-palette=gilded-age] .family-album-home .family-album-arrow {background:var(--paper);box-shadow:0 3px 9px #0004}

  /* Calm reading and tool surfaces; chart encodings and period art are retained. */
  :root[data-palette=gilded-age] :is(.facts-panel,.bc-card,.research-card,.research-sidebar,.rh-sidebar,.rh-task,.rn-card,.finder-browse,.finder-person,.tree-profile-panel,.tree-toolbar,.tree-bottom,.hub-stats,.hub-journey-card) {
    border-color:var(--line);border-radius:3px;box-shadow:inset 0 1px #d7bd8210;
  }
  :root[data-palette=gilded-age] :is(.bc-card,.research-card,.rh-task,.rn-card,.finder-person,.tree-profile-panel) {background-color:var(--surface)}
  :root[data-palette=gilded-age] :is(.bc-rail-heading,.research-sidebar-title,.rh-sidebar-heading,.tree-profile-caption) {border-bottom-color:var(--line);color:var(--gold)}
  :root[data-palette=gilded-age] .person-node {border-radius:4px}
  :root[data-palette=gilded-age] .j2-desk {border:3px double var(--ga-foil);border-radius:4px;box-shadow:var(--shadow)}
  :root[data-palette=gilded-age] .j2-panel {border-radius:3px;border-color:#9f8c64}
  :root[data-palette=gilded-age] :is(.story-library-book,.lineage-library-book) {filter:drop-shadow(0 7px 8px #0003)}
  :root[data-palette=gilded-age] .story-library-resume {padding:30px}
  :root[data-palette=gilded-age] :is(.family-album-empty,.story-library-empty,.lineage-directory-empty,.rh-empty,.research-empty,.finder-empty)::before {
    content:'';display:block;height:140px;width:min(260px,100%);margin:0 auto 14px;
    background:url('gilded-age/archive-still-life-ui.webp') center/contain no-repeat;pointer-events:none;
  }

  /* Settings uses the same preview assets and preserves its native controls. */
  :root[data-palette=gilded-age] #member-settings {border:1px solid var(--ga-foil);box-shadow:0 20px 80px #0007}
  :root[data-palette=gilded-age] #member-settings :is(.settings-nav,.settings-header,.settings-footer) {background:var(--surface-soft)}
  :root[data-palette=gilded-age] #member-settings .settings-preview-scene {background:linear-gradient(var(--ga-wash),var(--ga-wash)),var(--ga-canvas);border-radius:2px}
  :root[data-palette=gilded-age] #member-settings .settings-preview-sidebar {background:#191e19;color:#e0d0bd}
  :root[data-palette=gilded-age] #member-settings .settings-preview-sidebar strong {color:#fff0d9}
  :root[data-palette=gilded-age] #member-settings .settings-preview-branches>div {background:#49242b url('gilded-age/claret-cloth.webp') center/300px;color:#fff0d9;border-color:#a28a61}
  :root[data-palette=gilded-age] #member-settings .settings-preview-branches>div:last-child {background:#29372b}
  :root[data-palette=gilded-age] #member-settings .settings-preview-art {background-image:url('gilded-age/oak-seal-ui.webp')}
  #member-settings [data-palette-preview=gilded-age] {background-image:linear-gradient(#efe6d5ed,#efe6d5ed),url('gilded-age/ivory-paper.webp');background-size:auto,160px;border-color:#ad9361}
  :root[data-theme=dark] #member-settings [data-palette-preview=gilded-age] {background-image:linear-gradient(#1b1e1ce8,#1b1e1ce8),url('gilded-age/charcoal-cloth.webp')}
  #member-settings [data-palette-preview=gilded-age] .palette-preview-nav {background:#191e19}
  #member-settings [data-palette-preview=gilded-age] .palette-preview-bar b {background:var(--ga-wine)}
  #member-settings [data-palette-preview=gilded-age] .palette-preview-cards i {border-color:#b59964;border-radius:0}

  /* Public and authentication surfaces consume coordinated local tokens. */
  :root[data-palette=gilded-age] .fa-marketing-page {
    --marketing-paper:var(--paper);--marketing-white:var(--surface);--marketing-ink:var(--ink);
    --marketing-muted:var(--muted);--marketing-line:var(--line);--marketing-accent:var(--accent);
    --marketing-accent-dark:var(--accent-dark);--marketing-soft:var(--surface-soft);
    --marketing-green:#29372b;--marketing-on-green:#fff0d9;color-scheme:inherit;
  }
  :root[data-palette=gilded-age] :is(.marketing-header,.marketing-footer) {background:transparent;border-color:var(--line)}
  :root[data-palette=gilded-age] .marketing-button:not(.marketing-button-outline) {background:var(--ga-wine);border-color:var(--ga-foil);color:var(--ga-on-wine)}
  :root[data-palette=gilded-age] .marketing-button:not(.marketing-button-outline):hover {background:var(--ga-wine-hover);color:var(--ga-on-wine)}
  :root[data-palette=gilded-age] .marketing-button-outline:hover {background:var(--surface-soft);color:var(--ink)}
  :root[data-palette=gilded-age] .marketing-brand-mark {border-color:var(--ga-foil)}
  :root[data-palette=gilded-age] body.login {
    --auth-paper:var(--paper);--auth-surface:var(--surface);--auth-soft:var(--surface-soft);--auth-field:var(--field);
    --auth-ink:var(--ink);--auth-muted:var(--muted);--auth-line:var(--line);--auth-control:var(--control-border);
    --auth-accent:var(--accent);--auth-hover:var(--accent-dark);--auth-on-accent:var(--on-accent);
    --auth-glow:transparent;--auth-shadow:var(--shadow);
  }
  :root[data-palette=gilded-age] .login #login {border:1px solid var(--ga-foil);border-radius:3px}
  :root[data-palette=gilded-age] .login #login .button-primary {background:var(--ga-wine);color:var(--ga-on-wine);border-color:var(--ga-foil)}
  :root[data-palette=gilded-age] .login #login .button-primary:is(:hover,:focus) {background:var(--ga-wine-hover);color:var(--ga-on-wine);border-color:var(--ga-foil)}
  :root[data-palette=gilded-age] .fa-auth-mark {color:var(--gold);border-color:var(--ga-foil)}
  :root[data-palette=gilded-age] .login #login h1 {padding-top:10px}
  :root[data-palette=gilded-age] .login #login h1::before {
    content:'';display:block;width:44px;height:62px;margin:0 auto 14px;
    background:url('gilded-age/oak-seal-ui.webp') center/contain no-repeat;pointer-events:none;
  }

  /* Legacy tool accents share the wine action / gold reading roles. */
  :root[data-palette=gilded-age] .life-timeline {border-color:var(--gold)}
  :root[data-palette=gilded-age] .workspace-visibility label:has(input:checked) {background:color-mix(in srgb,var(--accent) 10%,var(--surface))}
  :root[data-palette=gilded-age] :is(.lw-panel button[aria-pressed=true],.bio-animation-play),
  :root[data-palette=gilded-age] .bio-spelling-panel :is(.bio-spelling-language-options [role=option].is-active,.bio-spelling-suggestions button[aria-pressed=true],button.bio-spelling-word[aria-pressed=true]),
  :root[data-palette=gilded-age] .bio-spelling-panel .bio-spelling-tabs button.button[aria-pressed=true],
  :root[data-palette=gilded-age] :is(#research-people button[aria-current=true],.research-scope button[aria-pressed=true],#md-toolbar .md-tool[aria-pressed=true]) {
    background:var(--ga-wine);color:var(--ga-on-wine);border-color:var(--ga-foil);
  }
  :root[data-palette=gilded-age] .bio-spelling-context mark {color:var(--on-accent)}
  :root[data-palette=gilded-age] :is(.hm-controls,.research-controls) input[type=range],
  :root[data-palette=gilded-age] #migration-app .md-editor :is(input[type=range],input[type=checkbox]) {accent-color:var(--accent)}
  :root[data-palette=gilded-age] .hm-edit-image {outline-color:var(--accent)}
  :root[data-palette=gilded-age] .hm-edit-image:focus-visible {outline-color:var(--ga-on-wine);box-shadow:0 0 0 5px var(--ga-wine)}
  :root[data-palette=gilded-age] :is(.hm-handle,.md-handle,.journey-moving-pin) {background:var(--ga-wine);border-color:var(--ga-on-wine)}
  :root[data-palette=gilded-age] .md-midpoint {color:var(--ga-wine)}
  /* The native map resize control declares these roles important. */
  :root[data-palette=gilded-age] .md-label-resize {color:var(--ga-wine)!important;border-color:var(--ga-wine)!important}
  :root[data-palette=gilded-age] .md-label-resize:focus-visible {outline-color:var(--focus)}
  :root[data-palette=gilded-age] .mig-photo-context>button:is(:hover,:focus-visible) {background:var(--ga-wine);color:var(--ga-on-wine)}
  :root[data-palette=gilded-age] .button.danger-button {background:var(--ga-danger-fill);color:var(--ga-on-wine)}
  :root[data-palette=gilded-age] .button.danger-button:hover {background:var(--ga-danger-hover);color:var(--ga-on-wine)}
  :root[data-palette=gilded-age] :is(.danger,.bio-spelling-status.has-error,#research-status[data-error=true],#research-claim-error,#research-decision-error,#research-item-error,#book-checks-action-error,#production-status[data-error=true]) {color:var(--ga-danger)}

  @media(min-width:1600px) { :root[data-palette=gilded-age] .home-lineages {grid-template-columns:repeat(4,minmax(0,1fr))} }
  @media(max-width:800px) {
    :root[data-palette=gilded-age] .home-intro {padding:0 0 164px;min-height:0;align-items:flex-start}
    :root[data-palette=gilded-age] .home-intro>div {max-width:100%}
    :root[data-palette=gilded-age] .home-intro::after {
      top:auto;height:150px;width:calc(100% + 2 * var(--page-gutter,32px));
      background-image:url('gilded-age/heirloom-desk-v2-ui.webp');background-position:right 72%;
      mask-image:linear-gradient(90deg,transparent,#000 65%);
    }
  }
  @media(max-width:600px) {
    :root[data-palette=gilded-age] .home-hub .home-work .home-work-primary {min-height:230px;padding:24px 20px}
    :root[data-palette=gilded-age] .home-work-primary::before {width:30%;opacity:.6}
    :root[data-palette=gilded-age] .home-work-primary .home-work-copy {max-width:76%}
    :root[data-palette=gilded-age] .home-hub .home-lineage {min-height:200px}
    :root[data-palette=gilded-age] .story-library-resume {padding:24px 20px}
  }
  /* Decoration is optional; a contrast request always wins. */
  :root[data-palette=gilded-age][data-contrast=high] body,
  :root[data-palette=gilded-age][data-contrast=high] :is(.home-lineage,.lineage-directory-card,.home-work-primary,.story-library-resume) {background-image:none!important}
  :root[data-palette=gilded-age][data-contrast=high] :is(.home-intro,.home-work-primary,.home-section)::before,
  :root[data-palette=gilded-age][data-contrast=high] :is(.home-intro,.home-work-primary,.story-library-resume)::after {display:none}
  :root[data-palette=gilded-age][data-contrast=high] .home-intro {min-height:0;padding-bottom:22px}
  :root[data-palette=gilded-age][data-contrast=high] .home-intro>div {max-width:100%}
  :root[data-palette=gilded-age][data-contrast=high] {--ga-foil:var(--ink);--ga-danger:var(--ink);--ga-danger-fill:var(--ink);--ga-danger-hover:var(--ink)}
  @media(forced-colors:active) {
    :root[data-palette=gilded-age] body {background-image:none!important}
    :root[data-palette=gilded-age] :is(.home-work-primary,.story-library-resume,.home-lineage,.lineage-directory-card) {background-image:none!important;border:1px solid CanvasText;box-shadow:none}
    :root[data-palette=gilded-age] :is(.home-intro,.home-work-primary,.home-section,.login h1)::before,
    :root[data-palette=gilded-age] :is(.home-intro,.home-work-primary,.story-library-resume)::after {display:none}
    :root[data-palette=gilded-age] .home-intro {min-height:0;padding-bottom:22px}
    :root[data-palette=gilded-age] .home-intro>div {max-width:100%}
  }
}
