/* Album paper and physical card edges. Load after album.css and card-skin.css. */
.dream-album .album-page {
 --album-paper:#f7f0df;
 --album-paper-light:#fffdf5;
 --album-paper-deep:#e5d9bf;
 --album-paper-edge:#c9ba98;
 --album-paper-ink:#4c5848;
 --album-paper-muted:#777864;
 --album-pocket:#f1eadb;
 --album-pocket-edge:#bdaf91;
 position:relative;
 isolation:isolate;
 padding:clamp(21px,2.5vw,34px) clamp(20px,2.4vw,33px) 25px clamp(30px,3.2vw,45px);
 border:1px solid var(--album-paper-edge);
 border-radius:6px 13px 13px 6px;
 background:
  radial-gradient(ellipse at 70% 0,#ffffffa3,transparent 55%),
  repeating-linear-gradient(118deg,#ad987007 0 1px,transparent 1px 5px),
  linear-gradient(90deg,var(--album-paper-deep),var(--album-paper-light) 5%,var(--album-paper) 90%,var(--album-paper-deep));
 box-shadow:1px 2px 0 #e9dfc8,3px 4px 0 #fff9ec,4px 5px 0 var(--album-paper-edge),5px 7px 0 #e9dfc8,0 19px 29px -20px #594b3480,inset 0 1px #fffef3;
}
.dream-album .album-page::before {
 content:'';
 position:absolute;
 inset:0 auto 0 0;
 width:17px;
 border-radius:5px 0 0 5px;
 border-right:1px solid #9e865b28;
 background:linear-gradient(90deg,#68533924,#fdf8e633 28%,#9b815823 68%,#fff9e852);
 pointer-events:none;
}
.dream-album .album-page-title,
.dream-album .album-page-foot {position:relative;color:var(--album-paper-ink)}
.dream-album .album-page-title p {color:var(--album-paper-muted)}
.dream-album .album-page-title h3 {font-size:clamp(23px,2.2vw,29px);letter-spacing:-.02em}
.dream-album .album-completion {border-radius:7px;background:#fffdf0a6;box-shadow:0 1px 2px #6d5b2f12}
.dream-album .album-progress {height:5px;margin:19px 0 24px;box-shadow:inset 0 1px 2px #77633e22}
.dream-album .album-slots {
 gap:clamp(22px,2.5vw,34px);
 align-items:stretch;
 padding:6px 4px 12px;
}
.dream-album .album-slot {
 border-radius:7px;
 transform-origin:center 55%;
}
.dream-album .album-slot[data-card-skin].is-owned {
 padding:11px 11px 13px;
 border:2px solid var(--card-edge,#b6a580);
 border-color:color-mix(in srgb,var(--card-edge,#b6a580),#fff8e4 22%);
 box-shadow:
  inset 0 0 0 1px #fffce487,
  inset 0 2px 2px #ffffff87,
  0 1px 0 1px #f9f1df,
  0 3px 0 #b9aa8e,
  0 4px 0 1px #ebe1cc,
  0 9px 13px -6px #50452e70,
  0 19px 25px -16px #4f3d2b8c;
}
.dream-album .album-slot.is-owned::before {
 content:'';
 position:absolute;
 inset:0;
 z-index:1;
 border:1px solid #fffff48c;
 border-radius:inherit;
 pointer-events:none;
}
.dream-album .album-slot .album-slot-top {
 gap:8px;
 min-height:2.8em;
 align-items:flex-start;
 margin:1px 1px 11px;
 font-size:10px;
 letter-spacing:.015em;
}
.dream-album .album-slot .album-slot-number {font-size:12px;letter-spacing:.1em}
.dream-album .album-slot .album-picture {
 position:relative;
 padding:0;
 border:3px solid #fffaf0;
 border-radius:3px;
 box-shadow:0 1px 1px #6a593f45,inset 0 0 0 1px #a4947466;
}
.dream-album .album-slot .album-picture img {object-fit:contain;border-radius:0}
.dream-album .album-slot h4 {
 margin:14px 2px 8px;
 min-height:2.6em;
 font-size:clamp(15px,1.45vw,19px);
 line-height:1.3;
 letter-spacing:-.015em;
}
.dream-album .album-slot .album-slot-note {margin:3px 2px 1px;line-height:1.6}
.dream-album .album-slot.is-owned:not([data-card-rarity=rare]) .card-rarity-label {
 border-color:var(--series-edge,#879b79);
 border-radius:4px;
 background:#ffffff52;
 color:#35483e;
}
.dream-album .album-slot[data-card-rarity=rare].is-owned {
 outline-offset:3px;
 box-shadow:inset 0 0 0 1px #fff4b9,inset 0 2px 2px #fff9da,0 1px 0 1px #f9edc7,0 3px 0 #b49a57,0 4px 0 1px #e9d8a6,0 10px 16px -6px #674f3073,0 20px 27px -16px #58402894;
}
/* Uncollected identities are empty mounts, not coloured cards already owned. */
body .dream-album .album-page .album-slot[data-card-skin].is-missing {
 padding:12px;
 border:1px dashed var(--album-pocket-edge);
 border-radius:5px;
 outline:none;
 background:linear-gradient(145deg,#ffffff24,transparent 60%),var(--album-pocket);
 box-shadow:inset 0 2px 5px #76634613,0 1px 0 #fffef466;
 transform:none;
}
.dream-album .album-slot.is-missing .album-picture {
 overflow:hidden;
 border:1px solid var(--album-pocket-edge);
 background:linear-gradient(145deg,#fffef126,transparent 55%),var(--album-pocket);
 box-shadow:inset 0 3px 8px #67543718,inset 0 0 0 3px #fffdf229;
 color:var(--album-paper-muted);
}
.dream-album .album-slot.is-missing .album-picture::before {
 content:'';
 position:absolute;
 inset:auto 0 0;
 height:20%;
 border-top:1px solid #fffcf38c;
 background:linear-gradient(#fffdf108,#fffcf33b);
 box-shadow:0 -1px 0 #8e7b4e12,inset 0 -1px #8e7b4e24;
 pointer-events:none;
}
.dream-album .album-slot.is-missing .album-picture::after {
 content:'';
 position:absolute;
 inset:4px;
 border:1px solid #fffcf338;
 border-radius:1px;
 pointer-events:none;
}
.dream-album .album-slot.is-missing .album-missing-icon {
 font-size:clamp(38px,4.3vw,65px);
 color:var(--album-paper-muted);
 opacity:.34;
 text-shadow:0 1px #fffdf666;
}
.dream-album .album-slot.is-missing .album-mystery-label {
 max-width:95%;
 color:var(--album-paper-muted);
 font-weight:500;
}
.dream-album .album-slot[data-card-skin].is-missing :is(h4,.album-slot-note,.album-slot-top,.album-slot-number) {color:var(--album-paper-ink)}
.dream-album .album-slot.is-missing:not([data-card-rarity=rare]) .card-rarity-label {
 border-color:var(--album-pocket-edge);
 border-radius:4px;
 background:#fffcf333;
 color:var(--album-paper-muted);
}
.dream-album .album-page-foot {
 gap:16px;
 margin-top:22px;
 padding-top:17px;
 border-top:1px solid #ab97723b;
 font-size:12px;
}
body.dark .dream-album .album-page {
 --album-paper:#393b35;
 --album-paper-light:#45473d;
 --album-paper-deep:#2b302c;
 --album-paper-edge:#777969;
 --album-paper-ink:#e5e0cc;
 --album-paper-muted:#c8c9b2;
 --album-pocket:#3c4036;
 --album-pocket-edge:#858775;
 background:radial-gradient(ellipse at 70% 0,#ebdb9f08,transparent 55%),repeating-linear-gradient(118deg,#f0dba906 0 1px,transparent 1px 5px),linear-gradient(90deg,var(--album-paper-deep),var(--album-paper-light) 5%,var(--album-paper) 90%,var(--album-paper-deep));
 box-shadow:1px 2px 0 #5e5e4d,3px 4px 0 #3d4136,4px 5px 0 #77765f,5px 7px 0 #373c31,0 19px 29px -20px #020605e0,inset 0 1px #dbd6a62b;
}
body.dark .dream-album .album-page::before {border-right-color:#d1c39122;background:linear-gradient(90deg,#0005,#ece4bd08 28%,#0003 68%,#f3e7b111)}
body.dark .dream-album .album-completion {background:#545745;border-color:#92927b;color:#eee6ca}
body.dark .dream-album .album-completion.is-complete {background:#365c42;border-color:#7c9c70;color:#e1f2cc}
body.dark .dream-album .album-slot[data-card-skin].is-owned {box-shadow:inset 0 0 0 1px #fffce487,inset 0 2px 2px #ffffff87,0 1px 0 1px #e4d8bd,0 3px 0 #8e8064,0 4px 0 1px #c4b797,0 10px 16px -6px #000a,0 20px 27px -16px #000b}
body.dark .dream-album .album-slot[data-card-rarity=rare].is-owned {box-shadow:inset 0 0 0 1px #fff4b9,inset 0 2px 2px #fff9da,0 1px 0 1px #e8d49b,0 3px 0 #88743f,0 4px 0 1px #baa578,0 10px 16px -6px #000a,0 20px 27px -16px #000b}
body.dark .dream-album .album-slot[data-card-skin].is-missing {box-shadow:inset 0 2px 6px #0003,0 1px 0 #e2dca321}
body.dark .dream-album .album-slot.is-missing .album-picture::before {border-top-color:#d9d8b838;background:linear-gradient(#eef0c004,#eef0c01a);box-shadow:0 -1px 0 #0003,inset 0 -1px #dfddbc17}
@media(max-width:900px) {
 .dream-album .album-page {padding:23px 20px 23px 29px}
 .dream-album .album-slots {gap:24px 21px}
}
@media(max-width:600px) {
 .dream-album .album-page {padding:19px 12px 20px 21px;border-radius:5px 10px 10px 5px}
 .dream-album .album-page::before {width:10px}
 .dream-album .album-slots {gap:22px 15px;padding:5px 2px 10px}
 .dream-album .album-slot[data-card-skin].is-owned {padding:7px 7px 10px;transform:none}
 body .dream-album .album-page .album-slot[data-card-skin].is-missing {padding:8px}
 .dream-album .album-slot .album-slot-top {align-items:flex-start;gap:5px;margin-bottom:8px;font-size:9px;line-height:1.5}
 .dream-album .album-slot .album-slot-number {font-size:10px}
 .dream-album .album-slot h4 {margin:12px 1px 8px;font-size:14px;min-height:2.6em}
 .dream-album .album-slot .album-slot-note {margin-inline:1px;font-size:10px}
 .dream-album .album-slot .card-rarity-label {max-width:100%;font-size:9px;padding:4px 5px;overflow-wrap:anywhere}
 .dream-album .album-slot .album-picture {border-width:2px}
 .dream-album .album-page-foot {margin-top:18px;line-height:1.7}
}
@media(max-width:380px) {
 .dream-album .album-slots {grid-template-columns:minmax(0,1fr);gap:24px;padding-inline:5px}
 .dream-album .album-slot[data-card-skin].is-owned {padding:11px 11px 14px}
 body .dream-album .album-page .album-slot[data-card-skin].is-missing {padding:12px}
 .dream-album .album-slot .album-slot-top {font-size:10px}
 .dream-album .album-slot h4 {min-height:0;font-size:18px}
 .dream-album .album-slot .album-slot-note {min-height:0;font-size:11px}
 .dream-album .album-slot .card-rarity-label {font-size:10px}
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
 .dream-album .album-slot.is-owned {transition:transform .18s ease}
 .dream-album .album-slot.is-owned:hover {transform:translateY(-3px) rotate(var(--slot-turn,0deg))}
}
@media(prefers-reduced-motion:reduce) {
 .dream-album .album-slot {transform:none;transition:none}
}
