/* Western broadside: a ledger on the left, a framed landscape plate and
   letterpress headline on the right. */
[data-template=western] .landing {
  background-color:var(--bg);
  background-image:repeating-linear-gradient(0deg,transparent 0 5px,#845f4110 5px 6px);
}
[data-template=western] .mast { border-bottom:4px double currentColor; margin-bottom:18px; }
[data-template=western] .mast-rule { height:4px; border-block:1px solid; background:none; opacity:.45; }
[data-template=western] .entry { grid-template-columns:minmax(310px,.82fr) minmax(0,1.6fr); gap:22px; }
[data-template=western] .auth-paper { grid-column:1; grid-row:1; border:1px solid #8a7252; border-radius:3px; box-shadow:4px 4px 0 #826b4c35; }
[data-template=western] .auth-tabs { border-radius:1px; }
[data-template=western] .auth-tabs button { border-radius:1px; }
[data-template=western] .poster {
  grid-column:2;grid-row:1;display:grid;grid-template-areas:"stamp" "copy" "art" "foot";
  grid-template-rows:auto auto minmax(175px,1fr) auto; gap:13px;
  color:var(--bodyInk);background:transparent;border:4px double currentColor;border-radius:0;
  min-height:570px;padding:22px 24px;
}
[data-template=western] .poster-meta { grid-area:stamp; }
[data-template=western] .poster-meta .edition,[data-template=western] .edition-index {
  color:inherit;background:none;border-color:currentColor;border-radius:0;
}
[data-template=western] .edition i { border-radius:0;transform:rotate(45deg); }
[data-template=western] .poster-copy { grid-area:copy;text-align:center;padding:0;margin:0; }
[data-template=western] .poster-copy h1 {
  max-width:none;font-size:clamp(38px,4.4vw,70px);line-height:.98;text-shadow:none;letter-spacing:-.058em;
}
[data-template=western][data-font=serif] .poster-copy h1 { font-weight:700; }
[data-template=western] .poster-copy p { color:inherit;max-width:43em;margin:8px auto 0;font-size:14px; }
[data-template=western] .art-pane { grid-area:art;position:relative;z-index:0;inset:auto;border:1px solid currentColor;min-height:220px;animation:none; }
[data-template=western] .art-pane img { position:absolute;inset:0;object-position:50% 39%;animation:gallery-breathe 22s ease-in-out infinite alternate; }
[data-template=western] .poster-tint { display:none; }
[data-template=western] .poster-foot { grid-area:foot;border-top:3px double currentColor;padding-top:10px; }
[data-template=western] .poster-foot small { color:inherit; }
[data-template=western] .art-nav button { color:inherit;border-color:currentColor; }

/* Night signal: panorama and luminous scan lines over a horizontal sign-in console. */
[data-template=neon] .landing {
  background:radial-gradient(ellipse at 80% 10%,#9b367237,transparent 48%),var(--bg);
}
[data-template=neon] .mast-label,[data-template=neon] .edition,[data-template=neon] .paper-bar {
  font-family:Consolas,monospace;letter-spacing:.12em;
}
[data-template=neon] .entry { display:flex;flex-direction:column;gap:15px; }
[data-template=neon] .poster { min-height:355px;padding:23px 35px;border-radius:3px;border:1px solid var(--accent); }
[data-template=neon] .art-pane { left:29%;background:#151528; }
[data-template=neon] .art-pane img { object-position:55% 7%; }
[data-template=neon] .poster { background:#131326; }
[data-template=neon] .poster-tint {
  background:linear-gradient(90deg,#101024 0%,#111028 27%,#141225d9 37%,#17102620 67%),
  repeating-linear-gradient(0deg,transparent 0 4px,#17132924 4px 5px);
}
[data-template=neon] .poster-copy { padding:32px 0 22px;max-width:70%; }
[data-template=neon] .poster-copy h1 { font-size:clamp(52px,6.6vw,101px);line-height:.87;letter-spacing:-.08em;text-shadow:2px 2px #75466d; }
[data-template=neon] .poster-copy p { max-width:38em;font-size:14px; }
[data-template=neon] .edition,[data-template=neon] .edition-index { border-radius:0;border-color:var(--accent);color:var(--accent); }
[data-template=neon] .poster-foot { padding-top:8px;border-color:#cbb6e047; }
[data-template=neon] .poster-foot strong { font-family:Consolas,monospace;font-style:normal;font-size:15px; }
[data-template=neon] .art-nav button { border-radius:3px; }
[data-template=neon] .auth-paper {
  display:grid;grid-template-columns:minmax(160px,.55fr) minmax(0,1.8fr);grid-template-rows:auto auto 1fr;
  align-items:start;gap:7px 35px;padding:22px 32px;border:1px solid #8288a2;border-radius:3px;
}
[data-template=neon] .paper-bar { grid-column:1;grid-row:1;padding-bottom:12px; }
[data-template=neon] .auth-tabs { grid-column:1;grid-row:2;flex-direction:column;margin:5px 0;padding:3px;border:1px solid #9395a06b;border-radius:3px; }
[data-template=neon] .auth-tabs button { border-radius:1px;text-align:left; }
[data-template=neon] .auth-tabs button[aria-selected=true] { background:var(--cta);color:var(--ctaInk); }
[data-template=neon] #auth-panel,[data-template=neon] #member { grid-column:2;grid-row:1/4; }
[data-template=neon] .paper-note { grid-column:1;grid-row:3;padding-top:12px; }
[data-template=neon] .auth-paper h2 { font-size:28px; }
[data-template=neon] .auth-paper .lead { margin:5px 0 12px; }
[data-template=neon] #access-form {
  display:grid;grid-template-columns:1fr 1fr;grid-template-areas:"nl pl" "nick pass" "hint hint" "promo promo" "msg msg" "action action";gap:5px 14px;
}
[data-template=neon] #access-form label[for=nick]{grid-area:nl;margin:0}
[data-template=neon] #access-form label[for=password]{grid-area:pl;margin:0}
[data-template=neon] #nick{grid-area:nick}
[data-template=neon] .pass-wrap{grid-area:pass}
[data-template=neon] #nick-help{grid-area:hint}
[data-template=neon] #promo-group{grid-area:promo;margin:6px 0}
[data-template=neon] #auth-message{grid-area:msg}
[data-template=neon] #submit{grid-area:action;margin:0}

/* Arcana archive: a catalogue essay and an arched portrait sit alongside
   the contrasting light membership leaf. */
[data-template=arcana] .landing{
  background-color:var(--bg);
  background-image:radial-gradient(circle at 22% 42%,#dcc5917a 0 1px,transparent 1.3px),
                   radial-gradient(circle at 71% 78%,#dcc59155 0 .8px,transparent 1.2px);
  background-size:122px 96px,163px 137px;
}
[data-template=arcana] .mast-rule{height:3px;border-block:1px solid var(--accent);background:transparent;opacity:.55}
[data-template=arcana] .entry{grid-template-columns:minmax(0,1.8fr) minmax(315px,1fr);gap:26px}
[data-template=arcana] .poster {
  display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.9fr);
  grid-template-areas:"stamp stamp" "copy art" "foot foot";grid-template-rows:auto 1fr auto;
  gap:24px;align-items:center;min-height:590px;padding:24px 0;
  color:var(--bodyInk);background:none;border:0;border-block:1px solid color-mix(in srgb,var(--accent) 60%,transparent);border-radius:0;
}
[data-template=arcana] .poster-meta{grid-area:stamp}
[data-template=arcana] .poster-meta .edition,[data-template=arcana] .edition-index{color:var(--accent);border:0;background:transparent;padding:0}
[data-template=arcana] .edition i{width:10px;height:10px;border-radius:50%;background:transparent;box-shadow:3px -2px 0 var(--accent)}
[data-template=arcana] .poster-copy{grid-area:copy;margin:0;padding:0}
[data-template=arcana] .poster-copy h1{font-size:clamp(40px,4.25vw,72px);line-height:1.01;text-shadow:none;max-width:9em;letter-spacing:-.055em}
[data-template=arcana] .poster-copy::before{content:'✦';color:var(--accent);display:block;margin-bottom:14px;font-size:24px}
[data-template=arcana] .poster-copy p{color:inherit;font-size:14px;line-height:1.65;margin-top:18px}
[data-template=arcana] .art-pane {
  grid-area:art;position:relative;inset:auto;z-index:0;align-self:center;aspect-ratio:.62;
  border:4px double var(--accent);border-radius:52% 52% 3px 3px / 31% 31% 3px 3px;animation:none;
}
[data-template=arcana] .art-pane img{object-position:center;animation:gallery-breathe 19s ease-in-out infinite alternate}
[data-template=arcana] .poster.still .art-pane img{animation-play-state:paused}
[data-template=arcana] .poster-tint{display:none}
[data-template=arcana] .poster-foot{grid-area:foot;border-color:color-mix(in srgb,var(--accent) 48%,transparent)}
[data-template=arcana] .poster-foot small{color:inherit}
[data-template=arcana] .art-nav button{border-color:var(--accent);color:var(--accent)}
[data-template=arcana] .auth-paper{border:5px double color-mix(in srgb,var(--paperInk) 60%,var(--paper));border-radius:11px 11px 36px 11px}
[data-template=arcana] .paper-bar{font-family:Georgia,serif}

@media(max-width:1000px) and (min-width:721px){
  [data-template=arcana] .poster{grid-template-columns:1fr;grid-template-rows:auto 170px 1fr auto;grid-template-areas:"stamp" "art" "copy" "foot";gap:13px;justify-items:center}
  [data-template=arcana] .art-pane{height:170px;width:140px;aspect-ratio:auto}
  [data-template=arcana] .poster-copy{text-align:center}
  [data-template=arcana] .poster-copy h1{max-width:none;font-size:39px}
  [data-template=arcana] .poster-copy::before{display:none}
  [data-template=arcana] .poster-foot,[data-template=arcana] .poster-meta{width:100%}
}
@media(max-width:720px){
  [data-template=western] .entry,[data-template=arcana] .entry{display:flex;flex-direction:column;gap:14px}
  [data-template=western] .mast{margin-bottom:10px}
  [data-template=western] .poster{min-height:0;padding:13px;gap:8px;grid-template-rows:auto auto 146px auto}
  [data-template=western] .art-pane{min-height:0}
  [data-template=western] .poster-copy h1{font-size:38px}
  [data-template=western] .poster-copy p{font-size:12px}
  [data-template=neon] .poster{min-height:300px;padding:16px}
  [data-template=neon] .art-pane{left:0}
  [data-template=neon] .poster-tint{background:linear-gradient(90deg,#111027e8,#17102638 75%)}
  [data-template=neon] .poster-copy{max-width:90%;padding:48px 0 15px}
  [data-template=neon] .poster-copy h1{font-size:49px}
  [data-template=neon] .auth-paper{display:flex;gap:0;padding:20px}
  [data-template=neon] .auth-tabs{display:flex;flex-direction:row;margin:14px 0}
  [data-template=neon] .auth-paper>*{width:100%}
  [data-template=neon] #access-form{display:block}
  [data-template=neon] #access-form label[for=nick],[data-template=neon] #access-form label[for=password]{margin:10px 0 4px}
  [data-template=neon] #promo-group{margin:12px 0}
  [data-template=arcana] .poster{min-height:320px;grid-template-columns:minmax(0,1fr) minmax(100px,.65fr);gap:12px;padding:15px 0}
  [data-template=arcana] .poster-copy h1{font-size:clamp(30px,6.8vw,43px)}
  [data-template=arcana] .poster-copy p{font-size:12px;line-height:1.4;margin-top:10px}
  [data-template=arcana] .art-pane{max-height:255px}
  [data-template=arcana] .poster-copy::before{font-size:17px;margin-bottom:5px}
}
