/* LeoCan pages: the Abholschein language with a comic-book accent (thick navy panel frames, hard offset shadows, halftone dots,
   starburst episode stamps, a speech-bubble tagline). Opt-in with body.atelier-leocan, loaded after atelier-theme.css. Presentation only. */
body.atelier-leocan {
  --lcx-navy: #0f2747; --lcx-copper: #a4562b; --lcx-red: #b8412b; --lcx-gold1: #f0d47e; --lcx-gold2: #d5a947; --lcx-paper: #f7f1e4;
  --lcx-dots: radial-gradient(#a4562b33 1.3px, transparent 1.6px) 0 0 / 11px 11px;
}
/* ----------------------------------------------------------------- series profile (archive hero) */
body.atelier-leocan .lc-series-profile { position: relative; isolation: isolate; }
body.atelier-leocan .lc-series-profile::before { content: ""; position: absolute; z-index: -1; right: -2%; top: -6%; width: min(520px, 60%); height: 78%; background: var(--lcx-dots); -webkit-mask: radial-gradient(closest-side, #000 30%, transparent 100%); mask: radial-gradient(closest-side, #000 30%, transparent 100%); }
body.atelier-leocan .lc-series-profile-cover { transform: rotate(-2.4deg); }
body.atelier-leocan .lc-series-profile-cover picture, body.atelier-leocan .lc-series-profile-cover img { border-radius: 6px; }
body.atelier-leocan .lc-series-profile-cover img { border: 4px solid var(--lcx-navy); box-shadow: 10px 10px 0 var(--lcx-copper), 10px 10px 0 4px var(--lcx-navy); background: #fffcf6; }
body.atelier-leocan .lc-series-profile-copy .lc-kicker, body.atelier-leocan .lc-archive-section .lc-kicker, body.atelier-leocan .lc-episode-copy .lc-kicker { display: inline-block; padding: 5px 10px; border: 1.5px dashed var(--lcx-copper); border-radius: 4px; font-family: var(--at-mono); font-size: 0.72rem; letter-spacing: 0.16em; color: var(--lcx-copper); background: #fffcf6; transform: rotate(-1.2deg); }
body.atelier-leocan .lc-series-profile-copy h1 { position: relative; display: inline-block; color: var(--lcx-navy); font-weight: 600; }
body.atelier-leocan .lc-series-profile-copy h1::after { content: ""; position: absolute; left: -2%; right: -2%; bottom: 0.06em; height: 0.2em; z-index: -1; background: linear-gradient(90deg, #f0d47e99, #f0d47e00); transform: skew(-8deg); }
/* the slogan is a speech bubble */
body.atelier-leocan .lc-slogan { position: relative; display: inline-block; max-width: 100%; margin: 14px 0 22px; padding: 10px 18px; border: 3px solid var(--lcx-navy); border-radius: 22px; background: #fffcf6; color: var(--lcx-navy); font-style: italic; box-shadow: 4px 4px 0 var(--lcx-navy); }
body.atelier-leocan .lc-slogan::before { content: ""; position: absolute; left: 28px; bottom: -17px; width: 20px; height: 20px; background: #fffcf6; border-right: 3px solid var(--lcx-navy); border-bottom: 3px solid var(--lcx-navy); transform: skewX(24deg) rotate(45deg); transform-origin: 50% 50%; }
body.atelier-leocan .lc-series-profile-intro p { color: #3d4f66; }
body.atelier-leocan .lc-button, body.atelier-leocan .lc-series-profile-actions a:first-child { color: var(--lcx-navy); background: linear-gradient(180deg, var(--lcx-gold1), var(--lcx-gold2)); border: 2.5px solid var(--lcx-navy); border-radius: 10px; box-shadow: 4px 4px 0 var(--lcx-navy); font-weight: 800; transition: transform .18s, box-shadow .18s; }
body.atelier-leocan .lc-button:hover, body.atelier-leocan .lc-button:focus-visible { transform: translate(-2px, -2px); box-shadow: 6px 6px 0 var(--lcx-navy); }
body.atelier-leocan .lc-series-all { color: var(--lcx-copper); }
/* ------------------------------------------------------------------------------ archive: comic panels */
body.atelier-leocan .lc-archive-card { position: relative; border: 3px solid var(--lcx-navy); border-radius: 8px; background: #fffcf6; box-shadow: 8px 8px 0 var(--lcx-navy); overflow: visible; transition: transform .2s ease, box-shadow .2s ease; }
body.atelier-leocan .lc-archive-card:hover, body.atelier-leocan .lc-archive-card:focus-within { transform: translate(-3px, -3px) rotate(-0.4deg); box-shadow: 12px 12px 0 var(--lcx-copper); }
body.atelier-leocan .lc-card-cover { position: relative; display: block; border-bottom: 3px solid var(--lcx-navy); border-radius: 4px 4px 0 0; }
body.atelier-leocan .lc-card-cover img { border-radius: 4px 4px 0 0; }
body.atelier-leocan .lc-card-cover > span { position: absolute; z-index: 2; top: -14px; left: -16px; display: grid; place-items: center; min-width: 74px; padding: 12px 10px; border: 3px solid var(--lcx-navy); border-radius: 50% / 42%; background: var(--lcx-red); color: #fff; font: 800 0.78rem/1 var(--at-mono); letter-spacing: 0.08em; text-transform: uppercase; transform: rotate(-9deg); box-shadow: 3px 3px 0 var(--lcx-navy); }
body.atelier-leocan .lc-card-copy { padding-top: 14px; }
body.atelier-leocan .lc-card-copy h2 { color: var(--lcx-navy); font-weight: 600; }
body.atelier-leocan .lc-meta span, body.atelier-leocan .lc-meta time { font-family: var(--at-mono); }
body.atelier-leocan .lc-meta span { background: transparent; border: 1.5px dashed #b9a98a; color: var(--lcx-navy); }
body.atelier-leocan .lc-card-link { color: var(--lcx-copper); font-weight: 800; }
/* ---------------------------------------------------------------------------------------- episode */
body.atelier-leocan .lc-episode-hero { position: relative; isolation: isolate; }
body.atelier-leocan .lc-episode-copy h1 { color: var(--lcx-navy); font-weight: 600; }
body.atelier-leocan .lc-cover { transform: rotate(2deg); }
body.atelier-leocan .lc-cover img { border: 4px solid var(--lcx-navy); border-radius: 6px; box-shadow: 8px 8px 0 var(--lcx-copper), 8px 8px 0 4px var(--lcx-navy); }
body.atelier-leocan .lc-back { font-family: var(--at-mono); color: var(--lcx-copper); }
body.atelier-leocan .lc-reader-stage, body.atelier-leocan .lc-reader-shell { border: 4px solid var(--lcx-navy); border-radius: 8px; box-shadow: 10px 10px 0 var(--lcx-copper), 10px 10px 0 4px var(--lcx-navy); }
body.atelier-leocan .lc-reader-stage { background: var(--lcx-navy) var(--lcx-dots); }
body.atelier-leocan .lc-reader-mode, body.atelier-leocan .lc-reader-counter { font-family: var(--at-mono); border: 1.5px dashed #b9a98a; background: #fffcf6; color: var(--lcx-navy); }
body.atelier-leocan .lc-reader-progress { background: repeating-linear-gradient(90deg, var(--lcx-navy) 0 10px, var(--lcx-red) 10px 20px); }
body.atelier-leocan .lc-reader-finish { position: relative; border: 3px solid var(--lcx-navy); border-radius: 8px; background: #fffcf6; box-shadow: 6px 6px 0 var(--lcx-navy); }
body.atelier-leocan .lc-reader-finish::before { content: "ENDE"; position: absolute; top: -16px; right: 18px; padding: 4px 12px; border: 3px double var(--lcx-red); border-radius: 6px; background: #fffcf6; color: var(--lcx-red); font: 800 0.8rem/1 var(--at-mono); letter-spacing: 0.18em; transform: rotate(6deg); }
body.atelier-leocan .lc-service-cta { border: 3px solid var(--lcx-navy); border-radius: 8px; box-shadow: 8px 8px 0 var(--lcx-copper); }
body.atelier-leocan .lc-share a, body.atelier-leocan .lc-share button { border: 1.5px dashed #a58f66; background: transparent; color: var(--lcx-navy); }
@media (max-width: 720px) {
  body.atelier-leocan .lc-series-profile-cover { transform: rotate(-1.4deg); margin-right: 10px; }
  body.atelier-leocan .lc-archive-card { box-shadow: 6px 6px 0 var(--lcx-navy); }
  body.atelier-leocan .lc-card-cover > span { left: -8px; }
  body.atelier-leocan .lc-reader-stage, body.atelier-leocan .lc-reader-shell { box-shadow: 6px 6px 0 var(--lcx-copper), 6px 6px 0 4px var(--lcx-navy); }
}
@media (prefers-reduced-motion: reduce) {
  body.atelier-leocan .lc-archive-card, body.atelier-leocan .lc-button { transition: none; }
  body.atelier-leocan .lc-archive-card:hover, body.atelier-leocan .lc-archive-card:focus-within { transform: none; }
}
body.atelier-leocan .lc-back { display: inline-block; margin-right: 16px; }
