/* Illustrated collector cards for the Laswynd character gallery. */
.character-card .character-link{color:#ead0a0}
.character-card:focus-visible{outline:2px solid #efd39d;outline-offset:4px}

.character-dialog{
  --dossier-accent:#dfb979;
  width:min(1080px,calc(100% - 28px));
  max-height:min(92dvh,930px);
  overflow-y:auto;
  background:#151723;
  border:1px solid rgba(232,194,126,.8);
  box-shadow:0 28px 140px rgba(0,0,0,.8),0 0 0 5px rgba(209,164,92,.07);
  overscroll-behavior:contain;
}
.character-dialog[data-character="tippin"]{--dossier-accent:#dbaa7c}
.character-dialog[data-character="elowen"]{--dossier-accent:#bfc2e1}
.character-dialog[data-character="messy"]{--dossier-accent:#d1c793}
.character-dialog[data-character="gloom"]{--dossier-accent:#c7a1e2}
.character-dialog .dialog-close{
  width:42px;height:42px;top:14px;right:14px;
  margin:14px 14px -56px 0;
  background:rgba(19,17,28,.86);
  border:1px solid rgba(244,215,169,.7);
  border-radius:50%;
  line-height:1;
  backdrop-filter:blur(6px);
}
.character-dialog .dialog-close:hover,.character-dialog .dialog-close:focus-visible{
  background:#53402e;outline-color:var(--dossier-accent);
}
.dossier{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);min-height:690px}
.dossier-art{
  min-height:690px;
  position:relative;
  overflow:hidden;
  border-right:1px solid rgba(230,191,117,.7);
  background:#1d2030;
  isolation:isolate;
}
.dossier-portrait{
  position:absolute;inset:0;
  background-image:url('cast.webp');
  background-size:500% auto;
  background-repeat:no-repeat;
  background-position:0% 0%;
  filter:saturate(.92) contrast(1.04);
  transform:scale(1.005);
}
.character-dialog[data-character="tippin"] .dossier-portrait{background-position:25% 0%}
.character-dialog[data-character="elowen"] .dossier-portrait{background-position:50% 0%}
.character-dialog[data-character="messy"] .dossier-portrait{background-position:75% 67%}
.character-dialog[data-character="gloom"] .dossier-portrait{background-position:100% 0%}
.dossier-art:after{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(180deg,rgba(10,12,25,.75) 0%,transparent 18%,transparent 61%,rgba(10,11,20,.91) 100%);
  box-shadow:inset 0 0 0 9px rgba(14,13,24,.27),inset 0 0 0 10px rgba(234,198,131,.37);
}
.dossier-art-top,.dossier-art-bottom{position:absolute;z-index:2;left:31px;right:31px;color:#f6ead4}
.dossier-art-top{top:29px;display:flex;align-items:center;justify-content:space-between;gap:12px;font:700 10px var(--sans);letter-spacing:.16em}
.dossier-art-top em{font:italic 13px var(--serif);letter-spacing:0}
.dossier-art-top span:last-child{white-space:nowrap;color:var(--dossier-accent);font-size:10px}
.dossier-art-bottom{bottom:32px;display:flex;flex-direction:column;gap:4px}
.dossier-art-bottom span{font:600 clamp(40px,4vw,60px)/.95 var(--serif);text-shadow:0 2px 22px rgba(0,0,0,.7)}
.dossier-art-bottom small{font:700 9px var(--sans);letter-spacing:.22em;color:var(--dossier-accent)}

.dossier-details{
  min-width:0;
  display:flex;
  flex-direction:column;
  padding:41px clamp(28px,4.2vw,55px) 27px;
  background:radial-gradient(ellipse at 91% 0%,rgba(203,154,84,.09),transparent 48%),linear-gradient(160deg,#1e1e2a,#151723 67%);
}
.dossier-series{display:flex;justify-content:space-between;gap:22px;align-items:center;padding-right:47px;color:#b7a78f;font:700 9px var(--sans);letter-spacing:.17em}
.dossier-series span:last-child{color:var(--dossier-accent);white-space:nowrap;font-variant-numeric:tabular-nums}
.dossier-details .dossier-class{margin:35px 0 9px;color:var(--dossier-accent);font-size:10px;letter-spacing:.23em}
.dossier-details h2{font:600 clamp(46px,5.3vw,69px)/.91 var(--serif);letter-spacing:-.04em;margin:0 0 12px;color:#f5ecdb}
.dossier-subtitle{font:italic 24px/1.1 var(--serif);color:#c3b5a6;margin:0 0 22px}
.dossier-section-heading{display:flex;align-items:center;gap:13px;margin:0 0 13px;color:var(--dossier-accent);font:700 10px var(--sans);letter-spacing:.2em}
.dossier-section-heading:after{content:"";height:1px;flex:1;background:linear-gradient(90deg,rgba(212,178,117,.42),transparent)}
.dossier-section-heading span:nth-child(2){font-size:13px;line-height:1;order:3}
.dossier-rating-list{display:grid;gap:9px;margin:0}
.dossier-rating-row{display:grid;grid-template-columns:27px 95px minmax(0,1fr) 42px;gap:9px;align-items:center;min-height:28px}
.dossier-rating-glyph{display:grid;place-items:center;width:26px;height:26px;border:1px solid rgba(223,185,121,.27);border-radius:50%;background:radial-gradient(circle,rgba(223,185,121,.14),rgba(223,185,121,.015));color:var(--dossier-accent);font:17px var(--serif)}
.dossier-rating-label{color:#f1e6d7;font:600 11px var(--sans);letter-spacing:.025em}
.dossier-rating-meter{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:3px;align-items:center;height:20px}
.dossier-rating-segment{display:block;min-width:0;height:17px;clip-path:polygon(50% 0,100% 24%,100% 100%,0 100%,0 24%);background:linear-gradient(145deg,#363542,#242735);box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
.dossier-rating-segment.is-filled{background:linear-gradient(145deg,#fff4d2 0%,var(--dossier-accent) 48%,#8f603f 100%);animation:dossier-fill .35s backwards;animation-delay:calc(var(--notch-index) * 35ms)}
.dossier-rating-value{color:var(--dossier-accent);text-align:right;white-space:nowrap;font:700 11px var(--sans);font-variant-numeric:tabular-nums}
.dossier-details .dossier-ratings-note{margin:10px 0 0;text-align:right;font:italic 12px var(--serif);color:#98929a}
.dossier-facts-heading{margin-top:20px}
.dossier-stat-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}
.dossier-stat{min-width:0;padding:10px 11px;border:1px solid rgba(229,194,133,.2);background:rgba(255,244,212,.035)}
.dossier-stat dt{color:#b49d7b;font:700 9px/1.2 var(--sans);letter-spacing:.11em;text-transform:uppercase;margin-bottom:7px}
.dossier-stat dd{color:#f0e7db;font:600 13px/1.3 var(--sans);margin:0;overflow-wrap:break-word}
.dossier-report-heading{margin:20px 0 11px}
.dossier-details .dossier-report{font:19px/1.25 var(--serif);color:#d9d2cd;margin:0}
.dossier-footer{margin-top:auto;padding-top:25px;display:flex;align-items:center;justify-content:space-between;gap:15px}
.dossier-edition{color:#8e8b92;font:700 8px/1.4 var(--sans);letter-spacing:.14em}
.dossier-pagination{display:flex;gap:8px}
.dossier-turn{display:grid;place-items:center;width:42px;height:38px;cursor:pointer;border:1px solid rgba(230,192,122,.45);background:rgba(233,194,124,.08);color:#f0d8aa;font:22px var(--serif);transition:background .2s,border-color .2s}
.dossier-turn:hover{background:rgba(233,194,124,.2);border-color:var(--dossier-accent)}
.dossier-turn:focus-visible{outline:2px solid #f5ddae;outline-offset:3px}
@keyframes dossier-fill{from{opacity:.08;transform:scaleY(.35)}to{opacity:1;transform:scaleY(1)}}

@media(max-width:800px){
  .character-dialog{width:min(590px,calc(100% - 22px));max-height:94dvh}
  .dossier{display:block;min-height:0}
  .dossier-art{min-height:0;height:350px;border-right:0;border-bottom:1px solid rgba(230,191,117,.7)}
  .dossier-portrait{background-size:500% auto}
  .character-dialog[data-character="messy"] .dossier-portrait{background-position:75% 43%}
  .dossier-details{padding:29px 29px 28px}
  .dossier-details .dossier-class{margin-top:35px}
  .dossier-details h2{font-size:58px}
  .dossier-art-bottom span{font-size:48px}
}
@media(max-width:480px){
  .dossier-art{height:310px}
  .dossier-art-top,.dossier-art-bottom{left:23px;right:23px}
  .dossier-art-top{top:25px;font-size:8px;letter-spacing:.1em;padding-right:38px}
  .dossier-art-bottom{bottom:26px}
  .dossier-art-bottom span{font-size:43px}
  .dossier-details{padding:27px 22px 24px}
  .dossier-series{font-size:8px;letter-spacing:.1em;gap:10px;padding-right:0}
  .dossier-details .dossier-class{margin-top:31px}
  .dossier-details h2{font-size:52px}
  .dossier-subtitle{font-size:22px}
  .dossier-rating-row{grid-template-columns:24px 79px minmax(0,1fr) 37px;gap:6px}
  .dossier-rating-glyph{width:23px;height:23px;font-size:15px}
  .dossier-rating-label{font-size:10px}
  .dossier-rating-meter{gap:2px}
  .dossier-rating-segment{height:15px}
  .dossier-rating-value{font-size:10px}
  .dossier-stat{padding:11px 10px}
  .dossier-stat dd{font-size:12px}
  .dossier-details .dossier-report{font-size:19px}
  .dossier-edition{max-width:190px}
}
@media(prefers-reduced-motion:reduce){.dossier-turn{transition:none}.dossier-rating-segment.is-filled{animation:none}}
