:root{--paper:#f7f5ef;--ink:#252230;--muted:#75717b;--purple:#7548ed;--line:#dedbe2;--white:#fff;--lime:#d7f677;font-family:Arial,"Microsoft YaHei",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,summary,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.4}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--purple);outline-offset:3px}a{color:inherit;text-decoration:none}.ticker{height:29px;display:flex;justify-content:center;align-items:center;gap:80px;background:var(--ink);color:#f4efdf;font-size:10px;font-weight:700;letter-spacing:1.8px;white-space:nowrap;overflow:hidden}.header{display:flex;align-items:center;justify-content:space-between;padding:22px 4%;border-bottom:1px solid var(--line);gap:20px}.brand{display:flex;align-items:center;gap:11px;font-size:24px;font-weight:900;letter-spacing:-1px}.brand-sub{display:block;font-size:9px;letter-spacing:2px;margin-top:2px}.header nav{display:flex;gap:35px;font-size:13px;font-weight:700;margin-left:auto;margin-right:30px}.nav-active{color:var(--purple)}.language{background:transparent;border:1px solid var(--line);border-radius:6px;padding:9px 13px;font-size:12px}main{max-width:1510px;margin:auto;padding:0 4%}.intro{display:flex;align-items:center;justify-content:space-between;padding:51px 0 38px;gap:30px}.eyebrow,.tiny{font-size:10px;letter-spacing:1.4px;font-weight:700}.eyebrow{color:var(--purple)}h1{font-weight:900;font-size:clamp(34px,3.3vw,52px);letter-spacing:-1.8px;line-height:1.2;margin:17px 0 15px}.accent{color:var(--purple)}.intro p{color:var(--muted);font-size:13px;line-height:1.7;margin:0}.intro-note{padding:20px 28px;border-left:1px solid var(--line);min-width:220px;transform:rotate(2deg)}.intro-note strong{display:block;font-size:49px;letter-spacing:-2px;margin:7px 0}.intro-note strong span{font-size:10px;letter-spacing:1px;margin-left:10px}.intro-note>.tiny{color:var(--muted);display:block;letter-spacing:.4px}.workspace{display:grid;grid-template-columns:235px minmax(0,1fr);gap:32px;align-items:start}.sidebar{border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.58);padding:20px;position:sticky;top:20px;max-height:calc(100vh - 40px);overflow:auto}.sidebar-top{display:flex;align-items:center;justify-content:space-between}.sidebar h2{font-size:15px;margin:0}.text-button{border:0;background:transparent;font-size:11px;color:var(--muted);padding:6px}.filter-tip{font-size:10px;line-height:1.7;color:var(--muted);margin:12px 0 19px}.trait-group{border-top:1px solid var(--line);padding:15px 0}.trait-group summary{list-style:none;display:flex;align-items:center;justify-content:space-between;font-weight:700;font-size:12px;cursor:pointer}.trait-group summary:after{content:'+';font-size:16px;font-weight:400}.trait-group[open] summary:after{content:'−'}.trait-name small{display:block;font-size:9px;font-weight:400;color:var(--muted);margin-top:3px}.trait-search{margin:12px 0 9px;width:100%;border:1px solid var(--line);border-radius:5px;padding:7px 9px;background:var(--white);font-size:11px}.trait-options{max-height:211px;overflow:auto;scrollbar-width:thin}.trait-option{display:flex;align-items:center;gap:8px;font-size:11px;min-height:29px;cursor:pointer}.trait-option input{accent-color:var(--purple);margin:0}.trait-option .value{flex:1;line-height:1.4}.trait-option .count{font-size:10px;color:var(--muted);font-variant-numeric:tabular-nums}.sidebar-bottom{font-size:10px;color:var(--muted);margin-top:14px;display:flex;align-items:center;gap:7px}.status-dot{background:var(--purple);height:6px;width:6px;border-radius:100%}.toolbar{display:flex;gap:12px}.number-search{display:flex;align-items:center;gap:11px;border:1px solid var(--line);border-radius:8px;background:var(--white);padding:12px 15px;flex:1;min-width:0}.number-search svg{width:17px;height:17px;fill:none;stroke:var(--muted);stroke-width:1.6;flex-shrink:0}.number-search input{width:100%;min-width:0;border:0;background:transparent;outline:none;font-size:12px}.number-search:focus-within{border-color:var(--purple)}.shuffle{padding:11px 17px;border:1px solid var(--ink);border-radius:8px;background:var(--lime);font-size:12px;font-weight:700;box-shadow:2px 2px 0 var(--ink);white-space:nowrap}.shuffle>span:first-child{font-size:18px}.results-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:21px 0 17px;font-size:11px}.results-meta strong{font-size:15px}.page-range{margin-left:14px;color:var(--muted)}.sort-label{display:flex;align-items:center;gap:7px;color:var(--muted)}select{border:0;background:transparent;color:var(--ink);font-size:11px;max-width:150px}.active-filters{display:flex;gap:7px;flex-wrap:wrap}.active-filters:not(:empty){margin-bottom:15px}.filter-chip{background:#eee7ff;border:1px solid #d3c4ff;color:#5930ad;padding:5px 9px;border-radius:20px;font-size:10px}.export-strip{display:flex;align-items:center;justify-content:space-between;gap:15px;border:1px solid var(--line);border-radius:8px;padding:10px 13px;background:#f0ede7;margin-bottom:20px}.export-strip>div{display:flex;align-items:center;gap:12px}.export-strip .tiny{letter-spacing:0;color:var(--muted)}.background-switch{display:flex;gap:2px;background:#e4e0da;border-radius:6px;padding:3px}.background-switch button{display:flex;align-items:center;gap:6px;padding:5px 9px;font-size:10px;border:0;border-radius:4px;background:transparent}.background-switch button[aria-pressed=true]{background:white;box-shadow:0 1px 4px #0001}.swatch{height:11px;width:11px;border-radius:3px;border:1px solid #ccc}.swatch.white{background:#fff}.swatch.black{background:#000}.export-spec{font-size:10px;letter-spacing:.3px;color:var(--muted);white-space:nowrap}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.card{background:var(--white);border:1px solid var(--ink);border-radius:9px;overflow:hidden;box-shadow:2px 3px 0 #25223014;transition:transform .16s,box-shadow .16s;min-width:0}.card:hover{box-shadow:3px 3px 0 #7548ed22}.card-art{display:block;width:100%;padding:0;border:0;background:#fff;position:relative;aspect-ratio:1;overflow:hidden}.card-art img{display:block;width:100%;height:100%;object-fit:contain;image-rendering:pixelated}.grid[data-background=black] .card-art{background:#000}.card-art .art-failure{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#eee;font-size:10px;color:var(--muted);gap:7px}.card-info{border-top:1px solid var(--line);padding:12px 12px 9px}.card-heading{display:flex;align-items:center;justify-content:space-between;gap:5px}.card h3{font-size:13px;margin:0;font-weight:800;letter-spacing:-.3px}.card-number-label{font-size:8px;letter-spacing:.8px;color:var(--muted)}.card-trait{display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;margin-top:6px;font-size:9px;color:var(--muted);min-height:11px}.card-download{display:flex;width:100%;align-items:center;justify-content:space-between;border:0;background:#f5f2fd;margin-top:11px;border-radius:4px;font-size:9px;color:#6338bc;padding:7px 8px;font-weight:700}.card-download:hover{background:#e9e0ff}.pagination{display:flex;align-items:center;justify-content:center;gap:23px;font-size:11px;margin:30px 0}.pagination button{border:1px solid var(--line);background:var(--white);padding:9px 13px;border-radius:6px;font-size:11px}.empty-state{grid-column:1/-1;text-align:center;border:1px dashed var(--line);border-radius:10px;padding:80px 25px;color:var(--muted);line-height:1.8;font-size:14px}.search-error{color:#a24444;font-size:11px;margin-top:9px}.search-error:empty{display:none}.how{margin:35px 0 45px;padding:29px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.how>div{position:relative;padding-left:48px}.step{position:absolute;left:0;top:0;font-size:26px;font-weight:900;color:#c9bedb}.how h3{font-size:13px;margin:0 0 9px}.how p{font-size:11px;color:var(--muted);margin:0;line-height:1.7}footer{display:flex;justify-content:space-between;gap:20px;padding:0 4% 27px;font-size:9px;letter-spacing:.7px;color:var(--muted)}footer>div{display:flex;gap:20px}.footer-dot{color:var(--purple);padding:0 10px}.mobile-filter,.filter-close{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%) translateY(80px);background:var(--ink);color:white;border-radius:8px;padding:12px 20px;font-size:12px;transition:transform .2s;z-index:20;max-width:90%;text-align:center}.toast.show{transform:translateX(-50%) translateY(0)}dialog{border:1px solid var(--ink);padding:26px;border-radius:15px;background:var(--paper);max-width:820px;width:calc(100% - 32px);box-shadow:0 25px 100px #0005}dialog::backdrop{background:#171321aa;backdrop-filter:blur(3px)}.detail-close{position:absolute;right:12px;top:8px;border:0;background:transparent;font-size:26px;padding:4px;color:var(--muted)}.detail-layout{display:grid;grid-template-columns:1fr 1fr;gap:27px;align-items:start;padding-top:14px}.detail-art{border:1px solid var(--line);border-radius:8px;background:#fff;aspect-ratio:1;overflow:hidden}.detail-art img{display:block;width:100%;height:100%;image-rendering:pixelated;object-fit:contain}.detail-info h2{font-size:32px;letter-spacing:-1px;margin:12px 0}.detail-copy{color:var(--muted);font-size:12px;line-height:1.8}.detail-info dl{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0}.detail-info dl div{border:1px solid var(--line);padding:9px;border-radius:5px;background:var(--white)}dt{font-size:9px;color:var(--muted);margin-bottom:5px}dd{font-size:11px;font-weight:700;margin:0}.primary-download{width:100%;border:0;background:var(--purple);color:#fff;padding:12px;border-radius:6px;font-size:12px;font-weight:700;margin:8px 0 12px}.detail-info>a{display:block;font-size:10px;color:var(--muted);text-align:center}.filter-overlay{display:none}
@media(min-width:1440px){.grid{gap:21px}.card h3{font-size:15px}.card-trait{font-size:10px}.card-download{font-size:10px}.workspace{grid-template-columns:250px 1fr;gap:36px}}
@media(max-width:1120px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.workspace{grid-template-columns:210px 1fr;gap:22px}.export-strip{flex-wrap:wrap}.export-spec{margin-left:auto}.intro-note{min-width:190px;padding-right:0}.ticker{gap:35px}}
@media(max-width:760px){.header{padding:17px 5%}.header nav{gap:17px;margin:0;font-size:11px}.brand{font-size:19px;gap:8px}.brand img{width:29px;height:29px}.brand-sub{font-size:7px}.language{padding:7px 9px}.ticker span:not(:first-child){display:none}.intro{padding:32px 0 27px}.intro-note{display:none}main{padding:0 5%}h1{font-size:35px;letter-spacing:-1.1px}.intro p{font-size:12px}.eyebrow{font-size:8px}.workspace{display:block}.mobile-filter{display:block;border:1px solid var(--line);background:var(--white);padding:9px 13px;border-radius:6px;font-size:12px;margin-bottom:13px}.sidebar{display:none;position:fixed;inset:0 auto 0 0;width:min(320px,85vw);max-height:100vh;border-radius:0;padding:24px;z-index:30;background:var(--paper)}.sidebar.open{display:block}.filter-close{display:block;border:0;background:transparent;font-size:25px;padding:0 0 0 15px}.sidebar-top .text-button{margin-left:auto}.filter-overlay.open{display:block;position:fixed;inset:0;background:#17132188;z-index:29}.toolbar{gap:8px}.number-search{padding:11px;gap:7px}.number-search input{font-size:11px}.shuffle{padding:8px 11px;font-size:10px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.card h3{font-size:13px}.card-info{padding:11px}.page-range{display:block;margin:5px 0 0;font-size:10px}.export-strip{gap:9px;padding:10px}.export-strip>div{gap:9px}.export-strip .tiny{font-size:9px}.background-switch button{font-size:9px;padding:5px 7px}.export-strip .export-spec{font-size:8px}.how{gap:20px;grid-template-columns:1fr;margin-bottom:29px}.how>div{padding-left:45px}.how h3{font-size:13px}.how p{font-size:11px}footer{flex-direction:column;padding:0 5% 25px;gap:12px}.detail-layout{grid-template-columns:1fr}.detail-art{max-width:280px;justify-self:center;width:100%}dialog{padding:20px;max-height:92vh}.detail-info h2{font-size:28px}.detail-info dl{margin:16px 0}.header{flex-wrap:wrap}.header nav{order:3;flex-basis:100%;justify-content:flex-end;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
.trait-option[hidden]{display:none}
.trait-icon{display:inline-block;margin-left:7px;font-size:15px;line-height:1;vertical-align:-1px}.trait-option .value.trait-tint{color:var(--trait-color);font-weight:600}.trait-option .value.trait-white{flex:0 1 auto;background:#504b59;border-radius:4px;padding:2px 5px;line-height:1.5}.trait-option .value.trait-white+.count{margin-left:auto}@media(forced-colors:active){.trait-option .value.trait-tint{color:CanvasText}.trait-option .value.trait-white{background:Canvas;border:1px solid CanvasText}}

.search-hint{font-size:11px;color:var(--muted);line-height:1.6;margin:8px 0 0}.detail-background{display:flex;align-items:center;gap:14px;margin:18px 0 12px}.card-download:hover,.card-download:focus-visible{background:var(--purple);color:#fff}@media(max-width:1120px) and (min-width:761px){.header nav{gap:18px;margin-right:12px}}
.market-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:9px 0 14px;color:var(--muted);font-size:10px;line-height:1.7}.market-bar .text-button{white-space:nowrap;color:var(--purple)}.market-bar .is-stale{color:#9e6b19}.card-weight{margin:12px 0 10px;padding:10px;border-radius:6px;background:#f2edff}.weight-label{display:block;font-size:8px;color:var(--purple);font-weight:700;letter-spacing:.6px}.weight-value{display:flex;align-items:baseline;justify-content:space-between;gap:5px;margin-top:6px}.weight-value strong{font-size:23px;color:var(--purple);letter-spacing:-.7px}.weight-value small{font-size:9px;color:var(--muted)}.weight-state{display:block;font-size:9px;color:var(--muted);margin-top:5px}.weight-state.is-listed{color:#a45c32}.weight-pending{font-size:10px;color:var(--muted)}.detail-weight{background:#f2edff;border-radius:8px;padding:15px;margin:16px 0}.detail-weight-total{display:flex;align-items:baseline;gap:13px;margin:8px 0}.detail-weight-total>strong{font-size:30px;color:var(--purple)}.detail-weight-total>span{font-size:12px}.detail-eligibility{font-size:10px;line-height:1.7;color:var(--muted)}.weight-breakdown{border-top:1px solid #ded4f5;padding-top:9px}.weight-breakdown summary{cursor:pointer;font-size:11px;color:var(--purple);font-weight:700}.weight-breakdown ul{list-style:none;margin:10px 0;padding:0}.weight-breakdown li{display:flex;justify-content:space-between;gap:10px;font-size:11px;padding:8px 0;border-bottom:1px solid #e3daf5}.weight-breakdown li strong{white-space:nowrap;color:var(--purple)}.weight-breakdown li small{display:block;font-size:9px;color:var(--muted);line-height:1.6;margin-top:4px}.weight-breakdown>p,.weight-context{font-size:10px;line-height:1.7;color:var(--muted)}.weight-timestamp{display:block;font-size:9px;line-height:1.6;color:var(--muted)}.detail-layout{align-items:start}@media(max-width:760px){.market-bar{align-items:flex-start}.weight-value{display:flex;flex-wrap:wrap}.weight-value small{margin-left:auto}.weight-value strong{font-size:22px}.card-weight{padding:8px}.weight-label{font-size:7px}.weight-state{font-size:8px}}

.search-clear{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:24px;height:24px;margin:-4px -3px -4px 0;padding:0;border:0;border-radius:50%;background:#f0edf5;color:var(--muted);font-size:20px;line-height:1}.search-clear[hidden]{display:none}.search-clear:hover{background:#e9e0ff;color:var(--purple)}
.market-overview{display:flex;align-items:center;justify-content:space-between;gap:22px;background:#fff9;border:1px solid var(--line);border-radius:9px;padding:15px 17px;margin:9px 0 14px}.floor-panel{flex-shrink:0}.floor-label{display:block;font-size:10px;font-weight:700;color:var(--muted);margin-bottom:6px}.floor-values{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.floor-values strong{font-size:24px;letter-spacing:-.5px;color:var(--purple);font-variant-numeric:tabular-nums}.floor-values>span{font-size:18px;font-weight:700;color:var(--ink);white-space:nowrap}.floor-values>span.is-unavailable{font-size:10px;font-weight:400;color:var(--muted)}#floor-fx-time{display:block;font-size:9px;color:var(--muted);line-height:1.5;margin-top:6px}.market-overview .market-bar{flex:1;margin:0;justify-content:flex-end;min-width:0}.market-overview #market-status{max-width:290px}.weight-value{flex-wrap:wrap}.weight-value small{margin-left:auto;text-align:right}.detail-weight-total{justify-content:space-between;flex-wrap:wrap}.detail-weight-total>span{margin-left:auto;color:var(--muted)}
@keyframes naka-sway{0%,100%{transform:translateX(0)}20%{transform:translateX(-3px)}50%{transform:translateX(3px)}80%{transform:translateX(-1px)}}
@media(hover:hover) and (pointer:fine){.card:hover{animation:naka-sway .6s ease-in-out}}
@keyframes intro-note-sway{0%,100%{transform:translateX(0) rotate(2deg)}20%{transform:translateX(-4px) rotate(2deg)}50%{transform:translateX(4px) rotate(2deg)}80%{transform:translateX(-2px) rotate(2deg)}}
@media(hover:hover) and (pointer:fine){.intro-note:hover{animation:intro-note-sway .65s ease-in-out}}
.shuffle>span:first-child{display:inline-block;width:18px;height:18px;line-height:1;text-align:center;vertical-align:middle;transform-origin:center;font-family:var(--reading-font)}
@media(max-width:1120px){.market-overview{align-items:flex-start;flex-direction:column;gap:10px}.market-overview .market-bar{width:100%;justify-content:space-between}.market-overview #market-status{max-width:none}}
@media(max-width:760px){.market-overview{padding:13px}.floor-values strong{font-size:23px}.floor-values>span{font-size:17px}.weight-value small{font-size:8px}}

/* Handwritten display faces. Body text and market figures retain the UI font. */
@font-face{font-family:"Kalam";font-style:normal;font-weight:700;font-display:swap;src:url("fonts/kalam-bold.woff2") format("woff2")}
@font-face{font-family:"ZCOOL KuaiLe";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/zcool-kuaile-ui.woff2") format("woff2")}
:root{--marker-font:"Kalam","ZCOOL KuaiLe","Microsoft YaHei",sans-serif;--reading-font:Arial,"Microsoft YaHei",sans-serif}
.brand,h1,.header nav,.sidebar h2,.trait-name,.shuffle,.card h3,.primary-download,.card-download,.pagination button,.language,.how h3,.weight-breakdown summary,.background-switch button,.mobile-filter{font-family:var(--marker-font);font-weight:700;letter-spacing:.1px}
.brand{font-size:27px;line-height:1.05;letter-spacing:.4px}.brand-sub{font-family:var(--reading-font);font-size:9px;letter-spacing:2px;line-height:1.5;margin-top:4px}
h1{line-height:1.24;letter-spacing:.3px;font-weight:700}html[lang=en] h1{line-height:1.15;letter-spacing:-.4px}
.header nav{font-size:15px;align-items:center}.sidebar h2{font-size:18px}.trait-name{font-size:15px;line-height:1.35}.trait-name small{font-family:var(--reading-font);font-size:9px;letter-spacing:0;line-height:1.4}.trait-icon{font-family:"Segoe UI Emoji","Apple Color Emoji",sans-serif}
.shuffle{font-size:14px}.card h3{font-size:17px;line-height:1.25}.card-download{font-size:12px;line-height:1.5}.primary-download{font-size:16px;line-height:1.4}.pagination button,.language,.background-switch button{font-size:13px}.how h3{font-size:17px}.detail-info h2{font-family:var(--marker-font);font-weight:700;letter-spacing:0;line-height:1.25}.weight-breakdown summary{font-size:14px}
@media(max-width:760px){.brand{font-size:23px}.brand-sub{font-size:7px}.header nav{font-size:13px}.shuffle{font-size:12px;padding:9px 10px}.card h3{font-size:16px}.card-download{font-size:11px}.background-switch button{font-size:12px}.language{font-size:12px}.mobile-filter{font-size:15px}h1{letter-spacing:0;font-size:36px}}

/* Trait text follows the original artwork's colors, with readable shades. */
.trait-option .value.trait-multicolor{font-weight:600;color:#7540c4;background-image:var(--trait-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.sidebar h2{font-size:20px}.sidebar .text-button{font-size:12px}.filter-tip{font-size:11px;line-height:1.75}.trait-name{font-size:16px}.trait-name small{font-size:10px}.trait-icon{font-size:16px}.trait-search{font-size:12px;padding:8px 9px}.trait-option{font-size:12.5px;min-height:33px;gap:9px}.trait-option .value{line-height:1.5}.trait-option .count{font-size:11px}.trait-option input{width:14px;height:14px;flex-shrink:0}.trait-options{max-height:240px}.sidebar-bottom{font-size:11px;line-height:1.5}
@media(forced-colors:active){.trait-option .value.trait-multicolor{background-image:none;color:CanvasText;-webkit-text-fill-color:CanvasText}}
.trait-group[data-category="Mouth"] .value{flex:0 1 auto}.mouth-sprite{display:inline-flex;align-items:center;flex-shrink:0;width:35px;height:25px;margin-left:1px}.mouth-sprite svg{display:block;width:100%;height:100%;shape-rendering:crispEdges}.trait-group[data-category="Mouth"] .count{margin-left:auto}.card-download>span:last-child{font-family:var(--reading-font);font-size:18px;line-height:1;margin-left:8px}.card-download{min-height:34px}#market-refresh{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:#eee7ff;border:1px solid #d9cdf4;border-radius:6px;padding:7px 10px;font-family:var(--marker-font);font-size:13px;font-weight:700;color:var(--purple)}#market-refresh:hover{background:#e1d5ff}

/* A parent shadow follows the perforated child outline. */
.card{border:0;border-radius:0;background:transparent;overflow:visible;box-shadow:none;filter:drop-shadow(1px 3px 2px #25223026)}.card:hover{box-shadow:none;filter:drop-shadow(1px 4px 3px #7548ed30)}
.stamp-surface{position:relative;display:flex;flex-direction:column;height:100%;padding:10px;background:var(--purple);border:1px dashed #6336d0}.stamp-surface::after{content:"";position:absolute;inset:9px;border:1px solid #a98beb;pointer-events:none;z-index:3}.stamp-surface .card-art{flex-shrink:0}.stamp-surface .card-info{background:#fffaf0;flex:1;padding:11px 9px 10px;display:flex;flex-direction:column}.stamp-surface .card-download{margin-top:auto}.stamp-surface .card-weight{margin-bottom:12px}
@supports(mask-image:linear-gradient(#000,#000)){
 .stamp-surface{border:0;mask:linear-gradient(#000 0 0) center/calc(100% - 12px) calc(100% - 12px) no-repeat,radial-gradient(circle at 50% 0,transparent 3px,#000 3.5px) top left/14px 6px repeat-x,radial-gradient(circle at 50% 100%,transparent 3px,#000 3.5px) bottom left/14px 6px repeat-x,radial-gradient(circle at 0 50%,transparent 3px,#000 3.5px) top left/6px 14px repeat-y,radial-gradient(circle at 100% 50%,transparent 3px,#000 3.5px) top right/6px 14px repeat-y}
}
.shield-lock{position:absolute;right:8px;top:8px;display:grid;place-items:center;width:clamp(26px,15%,36px);aspect-ratio:20/23;padding:0;background:transparent;box-shadow:none;border-radius:0;z-index:2;pointer-events:none}.shield-lock svg{display:block;width:100%;height:100%;shape-rendering:crispEdges}.detail-art{position:relative}.detail-art .shield-lock{width:36px;top:10px;right:10px}
@media(max-width:760px){.stamp-surface{padding:9px}.stamp-surface::after{inset:8px}.stamp-surface .card-info{padding:10px 7px 9px}.shield-lock{right:6px;top:6px}.stamp-surface .card-number-label{font-size:7px;letter-spacing:.3px}.stamp-surface .card-heading{flex-wrap:wrap}}
.mouth-sprite{width:42px;height:30px}
.how>.how-link{position:relative;display:block;padding-left:48px;border-radius:6px;cursor:pointer}.how-link:hover h3,.how-link:focus-visible h3{color:var(--purple)}.how-link:hover .step{color:var(--purple)}.guide-highlight{outline:3px solid var(--purple);outline-offset:5px;scroll-margin-block:24px}
@media(max-width:760px){.how>.how-link{padding-left:45px}}

.about-content{max-width:850px;min-width:0}.intro-about h1{margin:13px 0 12px}.intro-about .about-lead{color:var(--purple);font-family:var(--marker-font);font-size:21px;font-weight:700;line-height:1.5;margin-bottom:12px}.intro-about .about-copy{max-width:780px;font-size:13px;line-height:1.9;color:var(--ink)}.intro-about .about-privacy{font-size:11px;margin-top:10px;line-height:1.7}.about-source{display:inline-block;margin-top:12px;font-size:12px;font-weight:700;color:var(--purple)}.about-source:hover{text-decoration:underline;text-underline-offset:3px}.intro-about .intro-note{flex-shrink:0}
@media(max-width:760px){.intro-about .about-lead{font-size:18px}.intro-about .about-copy{font-size:12px}}

/* Identical halves make the banner loop without a blank gap. */
.ticker{display:block}.ticker-track{display:flex;width:max-content;height:100%;animation:ticker-scroll 38s linear infinite}.ticker-group{display:flex;align-items:center;justify-content:space-around;flex-shrink:0;min-width:100vw;gap:80px;padding:0 40px}.ticker .ticker-group>span{display:block}
@keyframes ticker-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(max-width:760px){.ticker-group{gap:40px;padding:0 20px}}
@media(prefers-reduced-motion:reduce){.ticker-group[aria-hidden=true]{display:none}.ticker-group{min-width:0;gap:35px;padding:0 15px}.ticker-track{width:100%;justify-content:center}.ticker-group>span:not(:first-child){display:none}}

/* Small feedback animations share the existing purple and paper palette. */
.card-download,.primary-download{transition:background-color .18s ease,color .18s ease}.download-arrow{display:inline-block;flex-shrink:0}.primary-download .download-arrow{margin-left:8px;font-family:var(--reading-font);font-size:18px}.primary-download:hover:not(:disabled){background:#6336d0}
@keyframes download-nudge{0%,100%{transform:translateY(0)}45%{transform:translateY(3px)}75%{transform:translateY(-1px)}}
@media(hover:hover) and (pointer:fine){.card-download:not(:disabled):hover .download-arrow,.primary-download:not(:disabled):hover .download-arrow{animation:download-nudge .45s ease-out}}
.background-switch{position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px}.background-switch::before{content:"";position:absolute;top:3px;left:3px;width:calc(50% - 4px);height:calc(100% - 6px);border-radius:4px;background:white;box-shadow:0 1px 4px #0001;transition:transform .24s cubic-bezier(.22,.8,.3,1);pointer-events:none}.background-switch:has(button[data-background="black"][aria-pressed="true"])::before{transform:translateX(calc(100% + 2px))}.background-switch button{position:relative;z-index:1;justify-content:center;white-space:nowrap}.background-switch button[aria-pressed=true]{background:transparent;box-shadow:none}.card-art,.detail-art{transition:background-color .22s ease}
.trait-option{border-radius:4px;transition:background-color .18s ease}.trait-option:has(input:checked){background:#eee7ff}.trait-option input:checked{animation:trait-pop .24s ease-out}
@keyframes trait-pop{0%,100%{transform:scale(1)}50%{transform:scale(1.2)}}
#market-refresh{gap:6px}#market-refresh.is-busy{opacity:.85}.refresh-icon{display:inline-block;width:18px;height:18px;text-align:center;font-family:var(--reading-font);font-size:18px;line-height:1;transform-origin:center}
.pagination button{display:inline-flex;align-items:center;gap:7px}.pagination-arrow{display:inline-block;font-family:var(--reading-font);transition:transform .18s ease}.pagination button:not(:disabled):hover{border-color:var(--purple);color:var(--purple)}#prev:not(:disabled):hover .pagination-arrow{transform:translateX(-3px)}#next:not(:disabled):hover .pagination-arrow{transform:translateX(3px)}.card-art img.pfp-enter{animation:pfp-enter .28s ease-out}
@keyframes pfp-enter{from{opacity:0}to{opacity:1}}
.header nav a{position:relative;padding-bottom:3px}.header nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:2px;background:var(--purple);transform:scaleX(0);transform-origin:left;transition:transform .22s ease}.header nav a:hover::after,.header nav a:focus-visible::after{transform:scaleX(1)}
.header nav{font-size:18px}.header .language{font-size:16px}
@media(max-width:760px){.header nav{font-size:15px}.header .language{font-size:14px}}
.ticker{font-size:13px;height:34px;letter-spacing:1.5px}
@media(max-width:760px){.ticker{font-size:12px;height:32px}}
.sidebar #clear{flex-shrink:0;font-family:var(--marker-font);font-size:15px;font-weight:700;line-height:1.3;color:var(--purple);background:#eee7ff;border:1px solid #d9cdf4;border-radius:6px;padding:6px 10px;transition:background-color .18s ease,color .18s ease,box-shadow .18s ease}.sidebar #clear:hover,.sidebar #clear:focus-visible{background:var(--purple);color:white;box-shadow:0 2px 6px #7548ed26}.sidebar #clear:active{transform:scale(.96)}
@media(hover:hover) and (pointer:fine){.sidebar #clear:hover{animation:naka-sway .6s ease-in-out}}
.trait-group summary{border-radius:5px;transition:background-color .18s ease,color .18s ease}.trait-name{display:inline-block}.sidebar h2{transition:color .18s ease}.trait-group summary:focus-visible{background:#eee7ff;color:var(--purple)}
@keyframes trait-icon-sway{0%,100%{transform:rotate(0)}25%{transform:rotate(-12deg)}60%{transform:rotate(12deg)}80%{transform:rotate(-5deg)}}
@media(hover:hover) and (pointer:fine){.sidebar h2:hover{color:var(--purple);animation:naka-sway .55s ease-in-out}.trait-group summary:hover{background:#eee7ff;color:var(--purple)}.trait-group summary:hover .trait-name{animation:naka-sway .55s ease-in-out}.trait-group summary:hover .trait-icon{animation:trait-icon-sway .55s ease-in-out}}
.how .step{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;font-size:22px;line-height:1;font-variant-numeric:tabular-nums}.how>.how-link:nth-child(1) .step{color:#925600;background:#ffedc4}.how>.how-link:nth-child(2) .step{color:#6336d0;background:#eee7ff}.how>.how-link:nth-child(3) .step{color:#08765d;background:#e0f3e9}
footer{align-items:center;flex-wrap:wrap}.author-link{font-family:var(--marker-font);font-size:14px;font-weight:700;color:var(--purple);letter-spacing:.1px;white-space:nowrap}.author-link:hover,.author-link:focus-visible{text-decoration:underline;text-underline-offset:4px}
@media(max-width:760px){footer{align-items:flex-start}}
.intro-note strong{color:var(--purple)}.intro-note strong span{color:var(--ink)}
@media(hover:hover) and (pointer:fine){.floor-values:hover{animation:naka-sway .55s ease-in-out}}
@media(hover:hover) and (pointer:fine){.trait-option:hover{background:#f2edff}.trait-option:has(input:checked):hover{background:#e5dbff}.trait-option:hover .value{animation:naka-sway .5s ease-in-out}.trait-option:hover .mouth-sprite{animation:naka-sway .5s ease-in-out}}

/* Warm paper and a postal cancellation mark for the collector album. */
.download-success{position:fixed;inset:0;margin:auto;height:fit-content;width:min(420px,calc(100% - 32px));max-height:90vh;overflow:auto;padding:38px 28px 26px;text-align:center;border:2px solid #b69ae9;background-color:#fff8e9;background-image:var(--paper-texture);background-size:420px 420px;box-shadow:0 20px 80px #21143655}.download-success::backdrop{background:#21143688;backdrop-filter:blur(4px)}.success-close{position:absolute;right:10px;top:6px;padding:5px 9px;border:0;background:transparent;color:var(--muted);font-size:25px;line-height:1}.success-close:hover{color:var(--purple)}.success-check{display:grid;place-items:center;width:80px;height:80px;margin:0 auto 18px;color:var(--purple);border:2px dashed #b69ae9;border-radius:18px;background:#eee7ff;box-shadow:4px 4px 0 #ded1f7}.success-check svg{width:52px;height:52px}.download-success h2{position:relative;margin:0 0 10px;font-family:var(--marker-font);font-size:29px;line-height:1.25;color:var(--purple)}.success-summary{font-weight:700;font-size:14px;margin:0 0 12px;color:var(--ink)}.success-note{font-size:12px;line-height:1.7;color:var(--muted);margin:0 0 10px}.success-filename{font-size:11px;line-height:1.5;overflow-wrap:anywhere;color:#725697;margin:0 0 16px}.success-failures{font-size:12px;line-height:1.7;color:#925600;background:#ffedc4;border-radius:6px;padding:10px;text-align:left}.success-failures[hidden]{display:none}.success-continue{position:relative;width:100%;border:1px solid #6336d0;border-radius:6px;background:var(--purple);color:white;padding:10px 14px;font-family:var(--marker-font);font-size:16px;font-weight:700;box-shadow:0 3px 0 #432293;transition:transform .18s ease,background-color .18s ease}.success-continue:hover{background:#6336d0;transform:translateY(-2px)}.success-continue:active{transform:translateY(2px);box-shadow:none}.success-close:focus-visible,.success-continue:focus-visible{outline:2px solid var(--purple);outline-offset:3px}.success-confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden;border-radius:12px}.success-confetti i{position:absolute;top:78px;left:50%;width:7px;height:7px;background:#7548ed;opacity:0}.success-confetti i:nth-child(3n){background:#f7b32b;width:9px}.success-confetti i:nth-child(3n + 1){background:#39a684}.success-confetti i:nth-child(1){--x:-150px;--y:-35px}.success-confetti i:nth-child(2){--x:-100px;--y:-55px}.success-confetti i:nth-child(3){--x:-45px;--y:-65px}.success-confetti i:nth-child(4){--x:40px;--y:-60px}.success-confetti i:nth-child(5){--x:95px;--y:-45px}.success-confetti i:nth-child(6){--x:145px;--y:-20px}.success-confetti i:nth-child(7){--x:-155px;--y:55px}.success-confetti i:nth-child(8){--x:-120px;--y:115px}.success-confetti i:nth-child(9){--x:-65px;--y:150px}.success-confetti i:nth-child(10){--x:60px;--y:145px}.success-confetti i:nth-child(11){--x:115px;--y:110px}.success-confetti i:nth-child(12){--x:155px;--y:50px}.download-success.celebrate .success-confetti i{animation:success-pixel-burst 1s ease-out both}.download-success.celebrate .success-check{animation:success-check-pop .5s cubic-bezier(.2,.8,.3,1) both}
@keyframes success-pixel-burst{0%{opacity:0;transform:translate(0,0) rotate(0) scale(.3)}15%{opacity:1}70%{opacity:.9}100%{opacity:0;transform:translate(var(--x),var(--y)) rotate(250deg) scale(.8)}}
@keyframes success-check-pop{0%{opacity:0;transform:scale(.6) rotate(-8deg)}65%{opacity:1;transform:scale(1.08) rotate(3deg)}100%{opacity:1;transform:scale(1) rotate(0)}}
@media(max-width:760px){.download-success{padding:32px 22px 24px}.download-success h2{font-size:26px}}
@keyframes community-link-sway{0%,100%{transform:translate(0,-2px)}25%{transform:translate(-3px,-2px)}55%{transform:translate(3px,-2px)}80%{transform:translate(-1px,-2px)}}
@media(hover:hover) and (pointer:fine){.about-links a:hover{animation:community-link-sway .55s ease-in-out}}
.about-links a:focus-visible{animation:community-link-sway .55s ease-in-out}.about-links a:active{animation:none;transform:translateY(1px);box-shadow:none}
/* Selection stays beside number search, across all matching result pages. */
.download-picker[hidden]{display:none}.download-picker{margin:12px 0 18px;padding:15px 17px;border:1px solid #cfbdf0;border-radius:9px;background:#fffbf4e8;box-shadow:0 2px 7px #7548ed0c}.download-picker-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.download-picker h2{margin:0;font-family:var(--marker-font);font-size:18px;color:var(--ink)}#download-picked-count{font-size:12px;color:var(--purple);font-weight:700}.download-choices{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0;max-height:230px;overflow-y:auto;padding:3px}.download-choice{display:inline-flex;align-items:center;gap:8px;cursor:pointer;background:#fffaf0;border:1px solid var(--line);border-radius:6px;padding:8px 11px;font-size:13px;font-weight:700;transition:background-color .18s ease,border-color .18s ease,transform .18s ease}.download-choice input{accent-color:var(--purple);width:15px;height:15px;margin:0}.download-choice:has(input:checked){border-color:var(--purple);background:#eee7ff;color:#6336d0}.download-choice:focus-within{outline:2px solid var(--purple);outline-offset:2px}.download-choice.is-unavailable{opacity:.5;cursor:not-allowed}.download-picker-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.selection-button,.batch-download{display:inline-flex;align-items:center;justify-content:center;gap:12px;font-family:var(--marker-font);font-size:14px;font-weight:700;border-radius:6px;padding:8px 12px;transition:transform .18s ease,background-color .18s ease,box-shadow .18s ease}.selection-button{background:#eee7ff;color:#6336d0;border:1px solid #d9cdf4}.batch-download{margin-left:auto;background:var(--purple);color:white;border:1px solid #6336d0;min-width:210px;box-shadow:0 2px 0 #432293}.download-picker>p{margin:10px 0 0;font-size:11px;line-height:1.6;color:var(--muted)}.selection-button:disabled,.batch-download:disabled{cursor:default;opacity:.5;box-shadow:none}.batch-download.is-downloading{opacity:.85}.batch-download.is-downloading .download-arrow{animation:batch-pulse .75s ease-in-out infinite}.selection-button:active:not(:disabled),.batch-download:active:not(:disabled){transform:translateY(2px);box-shadow:none}.selection-button:focus-visible,.batch-download:focus-visible{outline:2px solid var(--purple);outline-offset:3px}
@keyframes batch-pulse{0%,100%{opacity:.5;transform:translateY(-2px)}50%{opacity:1;transform:translateY(3px)}}
@media(hover:hover) and (pointer:fine){.download-choice:not(.is-unavailable):has(input:enabled):hover{transform:translateY(-2px);border-color:var(--purple)}.selection-button:not(:disabled):hover{background:#e0d3ff;animation:naka-sway .5s ease-in-out}.batch-download:not(:disabled):hover{background:#6336d0;box-shadow:0 4px 8px #7548ed26;transform:translateY(-2px)}.batch-download:not(:disabled):hover .download-arrow{animation:download-nudge .45s ease-out}}
.about-links{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:15px}.about-links a{display:inline-flex;align-items:center;padding:6px 10px;border:1px solid #cfbdf0;border-radius:6px;background:#f7f0ff99;color:#6336d0;font-family:var(--marker-font);font-size:14px;font-weight:700;line-height:1.4;transition:transform .18s ease,background-color .18s ease,box-shadow .18s ease}.about-links a:hover,.about-links a:focus-visible{background:#eee7ff;transform:translateY(-2px);box-shadow:0 2px 6px #7548ed1a}.about-links a:focus-visible{outline:2px solid var(--purple);outline-offset:3px}
@media(max-width:760px){.download-picker{padding:12px}.download-picker h2{font-size:16px}.download-choice{padding:7px 9px}.batch-download{margin-left:0;width:100%;min-width:0}.about-links a{font-size:13px}}
:root{--paper:#f4eddc;--paper-texture:url("paper-texture.svg");--line:#d9d0c4}
body{background-color:var(--paper);background-image:var(--paper-texture),radial-gradient(ellipse at 12% 0,#fffaf0 0,transparent 60%),linear-gradient(115deg,#f5eedf,#efe4cf);background-size:420px 420px,100% 100%,100% 100%;background-repeat:repeat,no-repeat,no-repeat}
.header{background:#fffaf133;border-bottom-color:#d5c9b9}.sidebar{background:#fffaf3e8;box-shadow:0 2px 8px #725b3510}.market-overview{background:#fffcf6eb}.export-strip{background:#eee5d6cc}
.stamp-surface .card-info{background-color:#fff8e9;background-image:var(--paper-texture);background-size:420px 420px}.card{filter:drop-shadow(1px 3px 2px #58402b29)}
main{position:relative}main::before,main::after{content:"";position:absolute;top:0;bottom:0;width:22px;pointer-events:none;opacity:.48;background-repeat:no-repeat;background-size:8px 8px}main::before{left:1.2%;background-image:linear-gradient(#7548ed,#7548ed),linear-gradient(#7548ed,#7548ed),linear-gradient(#7548ed,#7548ed),linear-gradient(#7548ed,#7548ed),linear-gradient(#f7b32b,#f7b32b);background-position:0 58px,8px 218px,0 230px,0 70%,10px calc(70% + 13px)}main::after{right:1.2%;background-image:linear-gradient(#f7b32b,#f7b32b),linear-gradient(#7548ed,#7548ed),linear-gradient(#7548ed,#7548ed),linear-gradient(#7548ed,#7548ed),linear-gradient(#f7b32b,#f7b32b);background-position:12px 78px,3px 92px,12px 55%,2px calc(55% + 13px),12px 89%}
.intro-about{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:26px}.about-collection{display:flex;align-items:center;justify-content:flex-end;gap:12px;width:454px}.postmark{display:block;flex-shrink:0;width:222px;height:auto;color:var(--purple);opacity:.65;transform:rotate(-10deg);pointer-events:none;user-select:none}.postmark text{font-family:var(--reading-font);font-weight:700}.intro-about .intro-note{min-width:220px;padding:20px 12px 20px 25px;border-left-color:#c9b9e0}
@media(max-width:1200px) and (min-width:761px){.about-collection{width:310px;position:relative;min-height:190px}.postmark{width:155px;position:absolute;left:-6px;top:10px;opacity:.27}.intro-about .intro-note{position:relative;background:#fff8e9b3;border-radius:7px;min-width:200px;padding-left:20px}}
@media(max-width:760px){.intro-about{display:block}.about-collection{position:relative;display:block;width:100%;height:104px;margin-top:10px}.postmark{width:144px;margin-left:auto;margin-right:6px;opacity:.48}.intro-about .intro-note{display:none}main::before,main::after{width:20px;background-size:6px 6px;opacity:.35}.sidebar{background-color:#fff8ed}}

/* Image selection shares the same state as the number chips. */
.card-select{position:absolute;top:19px;left:19px;z-index:4;display:inline-flex;align-items:center;gap:6px;padding:6px 8px;border:1px solid #d9cdf4;border-radius:5px;background:#fffaf0f2;color:#6336d0;box-shadow:0 2px 5px #25223018;font-family:var(--reading-font);font-size:11px;font-weight:700;cursor:pointer;transition:background-color .18s,color .18s,transform .18s}
.card-select input{width:16px;height:16px;margin:0;accent-color:var(--purple);cursor:pointer}.card-select:focus-within{outline:2px solid var(--purple);outline-offset:2px}.card-select:has(input:disabled){cursor:default}.card-select input:disabled{cursor:default}
.card.is-selected .card-select{background:var(--purple);border-color:var(--purple);color:white}.is-selectable .card-art::after{content:"";position:absolute;inset:0;border:3px solid transparent;pointer-events:none;transition:border-color .18s}.is-selected .card-art::after{border-color:var(--purple)}.is-selectable .card-art:focus-visible{outline-offset:-5px;outline-width:3px}.is-selectable .card-art:disabled{opacity:1}
.card-details{flex-shrink:0;padding:4px 5px;border:1px solid #d9cdf4;border-radius:4px;background:#eee7ff;color:#6336d0;font-family:var(--marker-font);font-size:10px;line-height:1.2;transition:transform .18s,background-color .18s}.card-details:active{transform:translateY(1px)}.card-details:focus-visible{outline-offset:1px}
@media(hover:hover) and (pointer:fine){.card-select:has(input:enabled):hover{transform:translateY(-2px)}.is-selectable .card-art:not(:disabled):hover::after{border-color:#b29bea}.card-details:hover{background:#e0d3ff;transform:translateY(-2px)}}
@media(max-width:760px){.card-select{top:16px;left:16px;padding:5px 6px;font-size:10px}.card-select input{width:15px;height:15px}}

.card-select input:checked{animation:card-pick .22s ease-out}@keyframes card-pick{0%{transform:scale(.8)}65%{transform:scale(1.15)}100%{transform:scale(1)}}
