/* Card-led presentation. A single final layer owns these rebuilt surfaces. */
:root{--collector-line:#66cfe42e;--collector-ink:#edfaff}
body{background:#030c19;color:var(--collector-ink)}
.paint{opacity:.24;background-size:cover;mask-image:linear-gradient(#000,transparent 850px);-webkit-mask-image:linear-gradient(#000,transparent 850px)}
button,.button{font-weight:600;box-shadow:none}button.primary,.button.primary{background:linear-gradient(120deg,#087c86,#0b9b94);border-color:#53e5d6;color:#fff}
input:not([type=checkbox]):not([type=range]),select,textarea{background:#081c2b;color:#eaf8ff;border-color:#477f965c}
header{border-bottom:1px solid var(--collector-line)}
.collector-hero{position:relative;isolation:isolate;min-height:320px;display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.8fr);align-items:center;gap:28px;padding:36px 40px;margin:0 0 18px;overflow:hidden;border:1px solid var(--collector-line);border-radius:22px;background:radial-gradient(ellipse at 95% 20%,#20598669,transparent 60%),linear-gradient(125deg,#0b213b,#061221 65%)}
.collector-hero:before{content:'';position:absolute;z-index:-1;inset:0;background:radial-gradient(circle at 20% 25%,#b0ecff8a 1px,transparent 2px) 0 0/93px 87px;opacity:.25;pointer-events:none}
.collector-hero h1{font-size:clamp(38px,4.2vw,62px);max-width:650px;margin:14px 0 18px;line-height:1.02;letter-spacing:-.03em}
.collector-hero>.flex{grid-column:1;justify-content:flex-start;order:3;margin-top:0}
.collector-intro{color:#b2cadd;font-size:15px;max-width:440px;line-height:1.7}
.collector-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.collector-actions>*{min-height:44px}
.collector-fan{grid-column:2;grid-row:1/3;height:300px;position:relative;display:flex;align-items:center;justify-content:center}
.fan-card{position:absolute;display:block;width:180px;transform:rotate(-9deg) translateX(-85px);transition:transform .25s;filter:drop-shadow(0 16px 18px #0009)}
.fan-card img{width:100%;height:250px;object-fit:contain;border-radius:9px}.fan-1{transform:rotate(10deg) translateX(85px)}.fan-2{transform:rotate(0);z-index:2}.fan-card:only-child{transform:rotate(-7deg);width:210px}.fan-card:only-child img{height:285px}.fan-card:hover{transform:translateY(-12px);z-index:3}
.collector-orbit{border:1px solid #55dcca47;width:230px;height:230px;border-radius:50%;box-shadow:0 0 90px #0c86a229,inset 0 0 60px #0c86a229;display:grid;place-items:center}.collector-orbit span{font-size:90px;color:#6bddd2}
.page-collection>.stats{margin:0 0 18px;gap:10px}.page-collection>.stats .stat{border-color:var(--collector-line);background:#091b2c;box-shadow:none}
.collector-value-strip{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 26px;border:1px solid var(--collector-line);border-radius:16px;background:#091b2c;margin:0 0 18px}.collector-value-strip strong,.collector-value-strip small{display:block}.collector-value-strip>div>strong{font-size:30px;font-weight:650;letter-spacing:-.04em;margin:7px 0}.collector-value-strip small{font-size:12px;color:#a0bdcf}.collector-coverage{min-width:190px}.collector-coverage strong span{font-size:18px;color:#8eabc5}.coverage-track{height:4px;background:#1c3850;border-radius:5px;margin-top:10px;overflow:hidden}.coverage-track span{display:block;height:100%;background:#53dccc}
.collector-destinations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 22px}.collector-destinations a{display:flex;align-items:center;gap:14px;background:linear-gradient(130deg,#0c263c,#071725);border:1px solid var(--collector-line);padding:18px;border-radius:14px;text-decoration:none;color:#eaf8ff}.collector-destinations a:hover{border-color:#53dccc;transform:translateY(-2px)}.destination-icon{font-size:26px;color:#66dcca}.collector-destinations strong,.collector-destinations small{display:block}.collector-destinations strong{font-size:14px}.collector-destinations small{font-size:12px;color:#9db5c8;margin-top:5px}
.page-collection .tile{border:1px solid var(--collector-line);background:#0a1c2d;border-radius:14px;box-shadow:none;overflow:hidden;transition:transform .2s,border-color .2s}.page-collection .tile:hover{transform:translateY(-4px);border-color:#53dccc}.page-collection .favorite-frame{border:1px solid #c1a46578;background:#0a1c2d;box-shadow:none}.page-collection .favorite-frame:after{display:none}.page-collection .tile .info{background:none}.page-collection .tile .photo{background:radial-gradient(ellipse,#143247,#071522 80%)}.page-collection .tile .badge{position:static;margin:0;border:0;border-radius:0;padding:8px 16px;background:transparent;font-size:11px;color:#a9c8d9}.page-collection .collection-favorite-rail{color:#cfc0a1;background:#bca2650a;font-size:10px;letter-spacing:.15em}.page-collection .tile h3{font-family:Inter,Arial,sans-serif;font-size:16px;line-height:1.3}.page-collection .tile h3 a{color:#edfaff}.page-collection .tile .compact-value{background:#113245;color:#c7f7f1;border:0;border-radius:8px}.page-collection .tile .compact-value strong{font-size:14px}.page-collection .tile .compact-value span{font-size:10px;color:#8fc5bf}
.collection-recovery{padding:14px 18px!important;margin:0 0 18px!important;border:1px solid #cfad5140!important;background:#211f1926!important;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.collection-recovery h2{font-family:Inter,Arial,sans-serif;font-size:16px;margin:0}.collection-recovery p{font-size:12px;margin:0;color:#b5c6d2}.collection-recovery .form-actions{margin:0 0 0 auto}.collection-recovery .recovery-context{display:none}
.page-collection .favorites-space{background:#091b2c;border:1px solid var(--collector-line)}.page-collection .favorites-space:after{display:none}
.showcase-modal{width:min(900px,calc(100vw - 24px));max-width:900px;background:radial-gradient(ellipse at 50% 35%,#155374,#061321 65%);padding:28px;border:1px solid #78d6e455;border-radius:20px}.showcase-modal::backdrop{background:#010813e8}.showcase-heading{display:flex;justify-content:space-between;padding-right:25px;font-size:12px;color:#b8d0e0}.showcase-art{height:min(54vh,510px);display:grid;place-items:center;margin:20px auto}.showcase-art img{height:100%;max-height:min(54vh,510px);width:100%;object-fit:contain;filter:drop-shadow(0 14px 25px #0009)}.showcase-caption{text-align:center}.showcase-caption h2{font-size:36px;margin:8px 0}.showcase-caption p{color:#a8c5d8;font-size:13px}.showcase-controls{display:flex;justify-content:center;gap:14px;margin-top:18px}.showcase-controls button{min-width:54px;min-height:48px}
.page-battle .battle-head{border-bottom:1px solid var(--collector-line);padding-bottom:22px}.page-battle .battle-arena{background:radial-gradient(ellipse at 50% 30%,#193e5a,#061422 75%);padding:28px;overflow:hidden}.battle-preview{background:transparent;border-color:var(--collector-line);box-shadow:0 14px 26px #0004}.battle-versus{font-size:36px;font-weight:800;font-style:italic;color:#f4db9e;text-shadow:0 0 20px #b5874840}
.story-theater{padding:24px;margin-top:24px;border:1px solid #67c6d344;border-radius:16px;background:radial-gradient(ellipse at top,#143e58,#071725 65%);text-align:center}.story-cast{display:flex;align-items:center;justify-content:center;gap:28px;margin-bottom:24px}.story-cast>div{display:grid;gap:12px;width:150px}.story-cast img{height:190px;width:100%;object-fit:contain;filter:drop-shadow(0 12px 14px #0008)}.story-cast strong{font-size:14px}.story-cast>span{font-size:26px;color:#dbc7a1}.story-scene{font-size:clamp(18px,2.3vw,26px);line-height:1.65;max-width:780px;margin:18px auto;min-height:100px;color:#e3f4ff}.story-controls{display:flex;align-items:center;justify-content:center;gap:16px}.story-controls span{font-size:12px;color:#a1bdd0}.story-controls button{min-height:44px}.battle-log{background:#071725}.battle-entry{padding:14px 0;border-bottom:1px solid var(--collector-line)}
.page-collection .toolbar{border-color:var(--collector-line)}.page-collection .toolbar button:not(.active){background:#0c2437;color:#c4ddeb;border:1px solid #3f829554}.page-collection .toolbar .active{background:#0c6a71}
.login-stage{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.75fr);align-items:center;gap:60px;min-height:70vh;max-width:1160px;margin:0 auto}.login-story .eyebrow{color:#58d8ca}.login-story h2{font-size:clamp(48px,6vw,86px);line-height:.98;max-width:650px;margin:22px 0}.login-story p{max-width:480px;color:#acc8dc;line-height:1.8;font-size:16px}.login-feature-row{display:flex;gap:18px;flex-wrap:wrap;margin-top:32px}.login-feature-row span{padding:10px 0;border-top:1px solid #68c8d24d;color:#c3e0ec;font-size:13px}.login-stage .login{width:100%;margin:0;background:#0a2134a8;border-color:var(--collector-line);padding:30px}.login-stage .login h1{font-size:38px}.login-stage .login .statusline{font-size:11px}
@media(max-width:1000px){.collector-hero{padding:28px;grid-template-columns:minmax(0,1fr) 260px;gap:10px}.collector-fan{height:265px}.fan-card{width:140px;transform:rotate(-9deg) translateX(-55px)}.fan-1{transform:rotate(9deg) translateX(55px)}.fan-2{transform:rotate(0)}.fan-card img{height:205px}.collector-destinations a{padding:14px;gap:10px}.destination-icon{font-size:22px}.login-stage{gap:30px}.collector-value-strip{gap:18px}}
@media(max-width:650px){.collector-hero{grid-template-columns:1fr;gap:0;padding:24px 20px}.collector-hero h1{font-size:43px}.collector-hero>.flex{margin-top:16px;order:2}.collector-fan{grid-column:1;grid-row:auto;height:220px;order:1;margin-top:14px}.fan-card img{height:205px}.fan-card:only-child img{height:210px}.collector-intro{font-size:13px}.collector-actions{gap:8px}.collector-actions button,.collector-actions .button{font-size:12px;padding:10px}.collector-value-strip{flex-wrap:wrap;padding:18px;gap:18px}.collector-value-strip>div{flex:1 1 120px;min-width:0}.collector-value-strip>div>strong{font-size:26px}.collector-coverage{min-width:0}.collector-value-strip>.button{width:100%;text-align:center}.collector-destinations{grid-template-columns:1fr;gap:8px}.collector-destinations a{padding:14px 16px}.collector-destinations strong{font-size:14px}.collector-destinations small{font-size:12px}.collection-recovery .form-actions{margin:0}.page-collection .tile .badge{padding:8px 12px}.page-collection .tile .info{padding:12px}.page-collection .tile h3{font-size:14px}.page-collection .tile .compact-value strong{font-size:12px}.page-collection .tile .compact-value span{display:none}.showcase-modal{padding:20px 16px}.showcase-caption h2{font-size:30px}.story-theater{padding:18px 12px}.story-cast{gap:14px}.story-cast>div{width:110px}.story-cast img{height:150px}.story-cast strong{font-size:12px}.story-scene{min-height:130px}.page-battle .battle-arena{padding:18px}.login-stage{grid-template-columns:1fr;gap:24px;padding:12px 0}.login-story h2{font-size:48px;margin:16px 0}.login-story p{font-size:14px}.login-feature-row{margin-top:16px;gap:14px}.login-stage .login{max-width:none}.login-stage .login h1{font-size:32px}}
@media(prefers-reduced-motion:reduce){.fan-card,.page-collection .tile,.collector-destinations a{transition:none;transform:none}}
.page-collection .tile.favorite-frame{border-color:#c1a46578;box-shadow:none}.page-collection .tile .info h3{font-family:Inter,Arial,sans-serif}.page-collection .favorites-space .eyebrow{color:#a8c9d9}
.finish-review-layout{display:grid;grid-template-columns:minmax(180px,.75fr) minmax(260px,1fr);gap:28px;align-items:start}.finish-review-photo{background:radial-gradient(ellipse,#17455c,#081c2b);border:1px solid var(--collector-line);border-radius:12px;padding:18px;display:grid;gap:12px;text-align:center}.finish-review-photo img{height:300px;max-width:100%;width:100%;object-fit:contain}.finish-review-photo strong{font-size:18px}.finish-review-photo small{font-size:12px;color:#a8c5d8}#start-finish-review{margin:12px 0 18px}
.battle-change summary{min-height:44px;cursor:pointer;color:#a8c9d9;display:flex;align-items:center;gap:10px}.battle-change summary:before{content:'+';color:#66dcca}.battle-change[open] summary:before{content:'−'}.story-theater{scroll-margin-top:20px}.page-collection .stats{display:flex;flex-wrap:wrap}.page-collection .stats .stat{flex:0 1 auto;white-space:normal}
.arena-choices{border:0;padding:0;margin:22px 0}.arena-choices legend{font-size:12px;color:#a9c6d9;margin-bottom:10px}.arena-choices>div{display:flex;flex-wrap:wrap;gap:8px}.arena-choices label{margin:0;position:relative;cursor:pointer}.arena-choices input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}.arena-choices span{display:block;border:1px solid #62c9d53d;border-radius:9px;padding:12px 14px;font-size:12px;color:#b9d6e3;min-height:44px;background:#0b2335}.arena-choices input:checked+span{border-color:#60d4c7;background:#123e46;color:#d9fff8}.arena-choices input:focus-visible+span{outline:2px solid #60d4c7;outline-offset:3px}.battle-arena[data-arena=forest]{background:radial-gradient(ellipse at top,#1c574744,#071725 70%)}.battle-arena[data-arena=canyon]{background:radial-gradient(ellipse at top,#7c593d44,#071725 70%)}.battle-arena[data-arena=clouds]{background:radial-gradient(ellipse at top,#47789844,#071725 70%)}
@media(max-width:650px){.finish-review-layout{grid-template-columns:1fr;gap:18px}.finish-review-photo img{height:220px}}
