/* MijnDex Collector Experience: dense, card-first, lightweight. No heavy animation frameworks. */
:root{--ink:#141e2b;--muted:#748393;--dim:#9aa9b8;--bg:#eaf1f7;--panel:#fff;--panel2:#f7f9fc;--line:#dce6ef;--line2:#cbd8e5;--gold:#3384e9;--gold2:#1668d7;--green:#16a46e;--red:#d35061;--serif:Inter,ui-sans-serif,system-ui,sans-serif}
html,body{background:#eaf1f7;color:#182330}
body{font-size:13px}
.layout{grid-template-columns:218px minmax(0,1fr)}
.rail{background:linear-gradient(#dce8f4,#e8f0f7);border:0;min-height:100vh;padding:22px 13px 16px}
.logo{padding:4px 10px 28px;gap:12px}
.logo-mark{transform:none;background:linear-gradient(135deg,#2679df,#135dbf);border:0;border-radius:12px;box-shadow:0 7px 17px #155dac2b;color:white;font:850 25px/1 system-ui;width:37px;height:37px;letter-spacing:-1px}
.logo-mark span{display:none}
.logo-name{color:#122541;font-size:16px;font-weight:860;letter-spacing:.065em}
.logo-name small{font:650 9px var(--font);letter-spacing:.1em;color:#3980d1;margin-top:4px}
.rail-group{gap:3px;margin:0 0 24px}
.rail-caption{margin:7px 9px 9px;font:750 10px var(--font);letter-spacing:.08em;color:#73879e}
.rail-group a,.rail-bottom a{border:0;border-radius:9px;min-height:37px;padding:7px 12px;color:#364a5f;font-size:12.5px;gap:12px;transition:background .15s,color .15s,transform .15s}
.rail-group a:hover,.rail-bottom a:hover{color:#1b66c2;background:#cee0f5}
.rail-group a.active{background:#bbd7f6;color:#146bdb;font-weight:740;border:0}
.ico{font-size:18px;color:#5c7999;width:19px}
.rail-group a.active .ico{color:#247fe5}
.rail-bottom{border-color:#c9d9e8}
.rail-brandline{color:#8aa0b5}
.topbar{height:66px;background:#f6f9fceb;padding:0 clamp(24px,3vw,58px);border-color:#dbe5ee;box-shadow:0 2px 12px #2b618009;backdrop-filter:blur(10px)}
.bread{color:#8b9aaa;font-size:11px;letter-spacing:.05em}
.bread strong{color:#1c65c5}
.search-quick{min-width:210px;border-color:#dce6ee;background:#fff;color:#708398;border-radius:10px}
.search-quick kbd{border-color:#e0e8f1;color:#8497a8}
.profile,.profile a{color:#345271}
.status-mark{background:#32b782;box-shadow:0 0 0 4px #32b78219}
.page{padding:26px clamp(21px,2.7vw,52px) 88px;max-width:1860px}
.page-head{margin-bottom:18px}
.page-head h1,.title-display{font:800 clamp(25px,2.3vw,35px)/1.16 var(--font);letter-spacing:-.045em;margin:6px 0 0;color:#16283c}
.kicker,.overline{letter-spacing:.065em;color:#3e86dd;font-size:10px}
.title-count{color:#5582a9;font-size:11px;letter-spacing:0}
.page-navigation{color:#768da4}
.page-navigation a{color:#2c7cda}
.btn{background:#2e81e9;color:white;border-color:#2e81e9;min-height:36px;padding:8px 15px;font-size:12px;border-radius:9px;letter-spacing:0;box-shadow:none}
.btn:hover{background:#196fd7;border-color:#196fd7;transform:translateY(-1px)}
.btn.outline{color:#2a597f;background:#fff;border-color:#d5e2ee}
.btn.outline:hover{background:#eaf3fd;border-color:#77afea}
.btn.ghost{color:#41749c}
.btn.small{border-radius:8px}
.btn.danger{color:#c33c4f;border-color:#edd5dc}
.field,.select{background:white!important;color:#294258!important;border:1px solid #d6e2ee!important;border-radius:9px!important;box-shadow:0 2px 8px #206aa605}
.field::placeholder{color:#91a0af}
.filters{background:transparent;border:0;padding:0;gap:9px;margin:16px 0 22px}
.check{color:#53687d}
.section-title{border:0;padding-bottom:0;margin:34px 0 13px}
.section-title h2{color:#1b2d40;font:770 19px var(--font);letter-spacing:-.03em}
.section-title a{color:#2278d7;letter-spacing:0;font-weight:650}
.grid{gap:12px}
.card-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:12px 10px}
.card-tile{background:transparent;border:0;border-radius:8px;padding:0;transition:transform .18s}
.card-tile:hover{transform:translateY(-3px)}
.card-tile .card-art{padding:4px;aspect-ratio:.716;background:transparent;border:0;border-radius:7px;overflow:visible}
.card-art img{filter:drop-shadow(0 3px 5px #162a3537);border-radius:5px;object-fit:contain;transition:transform .2s,filter .2s}
.card-tile:hover .card-art{background:transparent;border:0;box-shadow:none}
.card-tile:hover .card-art img{transform:translateY(-4px) scale(1.03);filter:drop-shadow(0 10px 10px #12549b36)}
.card-tile h3{font-size:12px;color:#20354b;font-weight:740;margin:7px 3px 2px}
.card-tile p{font-size:11px;color:#7a8fa3;margin:0 3px 8px}
.tag{background:#2587e8;color:white;border:0;border-radius:6px;top:6px;left:6px;font-size:9px}
.set-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.set-tile{position:relative;display:flex!important;align-items:center;gap:12px;min-height:94px;padding:10px 34px 10px 12px!important;border:1px solid #e2eaf1!important;background:#fff!important;border-radius:13px!important;box-shadow:0 3px 12px #365d8710;transition:transform .2s,box-shadow .2s}
.set-tile:hover{transform:translateY(-2px);box-shadow:0 10px 22px #365d8718;border-color:#b7d4f3!important}
.set-cover{width:86px;height:71px;flex:0 0 86px;background:linear-gradient(135deg,#e7f1fc,#dae8f8);border-radius:9px;display:grid;place-items:center;overflow:hidden;position:relative}
.set-cover img{max-width:96%;height:95%;width:auto;object-fit:contain;filter:drop-shadow(0 3px 3px #2c517c38)}
.set-cover-empty{color:#9ab6d9;font-size:28px}
.set-code{position:absolute;right:3px;bottom:3px;font:700 8px var(--font);color:#4e8bc5;background:#ffffffd9;padding:1px 4px;border-radius:3px}
.set-text{flex:1;min-width:0;display:grid;gap:5px}
.set-text strong{font-weight:770;color:#29394e;font-size:13px;line-height:1.3}
.set-text small{color:#8799aa;font-size:10.5px}
.set-text .progress{margin:1px 0 0;height:4px;border-radius:30px;background:#ebf1f7}
.tile-chevron{font-size:23px;color:#87a2bc;position:absolute;right:13px}
.pokemon-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.pokemon-tile{background:#fff!important;border:1px solid #e3ebf3!important;border-radius:12px!important;min-width:0;overflow:hidden;transition:transform .2s,box-shadow .2s}
.pokemon-tile:hover{transform:translateY(-3px);box-shadow:0 9px 20px #366da41c}
.pokemon-cover{aspect-ratio:1.16;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 60% 25%,#e2f0ff,#cbdff4);overflow:hidden}
.pokemon-cover img{width:70%;height:89%;object-fit:contain;transform:rotate(-9deg);filter:drop-shadow(0 7px 8px #183a6047);transition:transform .2s}
.pokemon-tile:hover .pokemon-cover img{transform:rotate(-3deg) translateY(-4px) scale(1.06)}
.pokemon-title{display:flex;flex-direction:column;padding:9px 11px 11px;gap:3px}
.pokemon-title b{font-size:12px;font-weight:750;color:#1a2f47;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pokemon-title small{font-size:10px;color:#8699a9}
.pokemon-detail-top{display:flex;gap:20px;align-items:end;justify-content:space-between;margin:11px 0 20px}
.pokemon-detail-top h1{font:810 36px var(--font);margin:0 0 4px;letter-spacing:-.045em}
.view-switch{display:flex;gap:7px;flex-wrap:wrap}
.detail-summary{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:10px;margin-bottom:20px}
.detail-summary>div{background:#fff;border:1px solid #e2eaf1;border-radius:13px;padding:18px;display:flex;flex-direction:column;gap:8px}
.detail-summary span{font-weight:700;color:#4d83b3;font-size:10px;text-transform:uppercase}
.detail-summary b{font-size:29px;letter-spacing:-.055em;color:#172f4c}
.detail-summary b small{font-size:14px;font-weight:500;color:#8296a7}
.detail-summary small{color:#71869b;font-size:11px}
.detail-summary .progress{margin-top:auto;height:5px;border-radius:20px}
.collection-hero{border:0;border-radius:17px;min-height:300px;background:linear-gradient(110deg,#cee3fa 0%,#e4effb 47%,#f7fbff 100%);overflow:hidden}
.hero-copy{padding:35px 38px}
.hero-copy h1{font:850 clamp(30px,3.8vw,55px)/1.08 var(--font);letter-spacing:-.055em;color:#18365d;margin:11px 0 12px}
.hero-copy h1 em{font-style:normal;color:#227fe3}
.hero-copy p{color:#5a7590;font-size:13px;line-height:1.65;margin-bottom:18px}
.hero-card{filter:drop-shadow(0 8px 18px #2d598547)}
.metric-ribbon{background:transparent;border:0;gap:10px;margin:13px 0 16px}
.metric{background:white;border:1px solid #e0eaf3;border-radius:11px;padding:16px;box-shadow:0 2px 9px #254c7408}
.metric b{font:800 26px var(--font);color:#183958}
.metric span{color:#7d93aa;font-size:10px}
.profile-banner{position:relative;display:flex;align-items:center;gap:20px;min-height:132px;padding:24px 24px;border:1px solid #dceaf9;border-radius:16px;background:radial-gradient(circle at 77% 20%,#f5faff 0,#dceafa 63%,#cce0f8 100%);overflow:hidden}
.profile-banner:after{content:'◉  ◉  ◉  ◉  ◉';position:absolute;z-index:0;top:16px;right:15%;font-size:37px;letter-spacing:24px;opacity:.12;color:#3d88d8;pointer-events:none}
.profile-banner>*{position:relative;z-index:1}
.avatar-large{display:grid;place-items:center;flex:0 0 84px;height:84px;border-radius:50%;background:linear-gradient(150deg,#73b0ef,#125cc7);border:5px solid #ffffffae;color:white;font-size:36px;font-weight:850;box-shadow:0 7px 18px #2f7dc341}
.profile-banner h1{margin:5px 0 2px;font:830 26px var(--font);color:#182f4d}
.profile-banner p{margin:0;color:#647e9c;font-size:12px}
.profile-link{margin-left:auto;align-self:end;font-size:12px;font-weight:700;color:#236fc2}
.dashboard-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:12px 0 22px}
.dash-metric{min-width:0;background:white;border:1px solid #e1e9f2;padding:16px;border-radius:13px;display:flex;flex-direction:column;gap:5px}
.dash-metric strong{font:800 29px var(--font);letter-spacing:-.04em;color:#203753}
.metric-label{text-transform:uppercase;font-size:10px;font-weight:700;color:#247ce0}
.dash-metric small{font-size:11px;color:#8c9baa}
.empty-state,.clean-empty{background:white!important;border:1px solid #e1e9f1!important;border-radius:14px!important;padding:40px!important;min-height:160px!important;color:#415873;text-align:center}
.empty-state h3,.clean-empty strong{color:#223a54;font:750 21px var(--font)}
.empty-state p,.clean-empty span{color:#8193a5;font-size:12px}
.clean-empty{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px}
.pager{color:#617890}
.pager .btn{box-shadow:none}
.modal-backdrop{background:#14253a89;backdrop-filter:blur(4px)}
.modal-window{background:#f8fbff!important;color:#1a2e48!important;border:1px solid #c9dbeb!important;border-radius:17px!important;box-shadow:0 25px 90px #1b335963!important}
.modal-window h2,.form-heading{color:#1b3857!important;font-family:var(--font)!important;font-weight:800!important}
.list-row,.list-stack{background:white!important;color:#273f5a!important;border-color:#e2e9f1!important}
.list-row:hover{background:#f3f9ff!important}
.list-row span,.list-row .muted{color:#66849f!important}
.import-onboarding{margin:8vh auto;max-width:740px;text-align:center;padding:42px 40px;background:#fff;border:1px solid #d5e4f3;border-radius:20px;box-shadow:0 15px 60px #316aa215}
.import-onboarding h1{font:850 clamp(29px,4vw,47px)/1.15 var(--font);letter-spacing:-.045em;color:#193555;margin:13px 0}
.import-onboarding>p{max-width:520px;margin:0 auto 28px;color:#617f9b;line-height:1.65}
.onboard-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:20px 0 25px}
.onboard-status{border:1px solid #dce7f0;border-radius:11px;padding:20px;display:flex;flex-direction:column;gap:9px;text-align:left}
.onboard-status b{font-size:13px;color:#1d395b}.onboard-status small{color:#8294a8}
.status-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:#e7ad56}
.status-dot.ready{background:#30b681}
.onboard-hint{font-size:12px!important;color:#6c89a5!important}
.warn{color:#ba3547!important;font-size:12px}
.progress-indefinite{height:5px;margin:25px auto;background:linear-gradient(90deg,#eaf4ff,#2686ec,#eaf4ff);background-size:200% auto;animation:bar 1.8s linear infinite}
@keyframes bar{to{background-position:-200%}}
@media(max-width:1380px){.card-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.pokemon-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.set-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1050px){.card-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.pokemon-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
 .layout{display:block}.rail{background:#eaf2fb;z-index:99;border-right:1px solid #cfdfed;padding-top:18px}.rail.open{box-shadow:15px 0 45px #1b3a5b2b}
 .topbar{height:56px;padding:0 15px}.bread{display:none}.search-quick{min-width:0;width:43px;padding:8px;justify-content:center}.search-quick kbd{display:none}.search-quick span{font-size:21px}.search-quick{font-size:0}.top-right{gap:12px}
 .page{padding:16px 13px 95px}.page-head h1{font-size:26px}.page-head{align-items:center}
 .card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px 7px}.card-art img{filter:drop-shadow(0 2px 4px #183c5a28)}.card-tile h3{font-size:10px;margin-top:5px}.card-tile p{font-size:9px}
 .set-grid{grid-template-columns:1fr;gap:8px}.set-tile{min-height:84px!important}.set-cover{height:66px;width:80px;flex-basis:80px}
 .pokemon-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .collection-hero{min-height:200px;display:block}.hero-copy{padding:25px 22px}.hero-copy h1{max-width:70%;font-size:30px}.hero-art{position:absolute;right:-18px;top:8px;width:43%;min-height:200px;opacity:.9}.hero-card{width:88px!important}.hero-card.c1{left:4%;top:30px}.hero-card.c2{left:26%;top:5px}.hero-card.c3{left:45%;top:45px}.hero-copy p{max-width:54%;font-size:11px}
 .dashboard-summary{grid-template-columns:repeat(2,1fr);gap:8px}.dash-metric{padding:12px}.dash-metric strong{font-size:25px}
 .profile-banner{min-height:130px;padding:17px;gap:10px}.avatar-large{flex-basis:55px;height:55px;font-size:25px;border-width:3px}.profile-banner h1{font-size:20px}.profile-link{font-size:10px}
 .section-title{margin:24px 0 12px}.section-title h2{font-size:17px}
 .detail-summary{grid-template-columns:1fr 1fr;gap:7px}.detail-summary>div{padding:13px}.detail-summary>div:first-child{grid-column:1/-1}.detail-summary b{font-size:23px}
 .pokemon-detail-top{display:block}.pokemon-detail-top h1{font-size:29px}.view-switch{margin-top:14px}
 .import-onboarding{margin:22px 0;padding:24px 18px}.onboard-grid{grid-template-columns:1fr}.modal-window{border-radius:16px 16px 0 0!important}
 .mobile-bottom{background:#f9fbff!important;border-top:1px solid #d7e3f0!important;box-shadow:0 -6px 22px #345a840c}.mobile-bottom a{color:#5c7492!important}.mobile-bottom a.active{color:#176dce!important}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
.set-cover img.logo-asset{max-width:98%;max-height:86%;width:100%;height:auto;filter:drop-shadow(0 2px 2px #437ab322)}
.set-tile{flex-direction:row!important;text-align:left!important;justify-content:flex-start!important}
.set-tile .set-text{align-items:stretch;text-align:left}
.set-tile .set-cover{flex-shrink:0}
@media(max-width:760px){.set-tile{flex-direction:row!important}.set-tile .set-text{flex:1}}
.set-detail-head{display:flex;justify-content:space-between;align-items:center;min-height:155px;padding:24px 30px;border-radius:16px;background:linear-gradient(120deg,#d8e9fa,#f7fbff);border:1px solid #dce9f7;margin:12px 0 12px;overflow:hidden}
.set-detail-copy h1{font:830 clamp(25px,2.7vw,38px)/1.15 var(--font);letter-spacing:-.045em;color:#1c3655;margin:8px 0}
.set-detail-copy>span:last-child{font-size:12px;color:#6b859d}
.set-detail-art{height:135px;width:105px;flex:0 0 105px;transform:rotate(9deg);filter:drop-shadow(4px 9px 8px #42658f40)}
.set-detail-art img{height:100%;width:100%;object-fit:contain}
.set-detail-summary{display:grid;grid-template-columns:1.45fr 1fr 1fr;gap:10px;margin-bottom:17px}
.set-detail-summary>div{padding:16px 20px;background:white;border:1px solid #e1eaf3;border-radius:11px;display:flex;flex-direction:column;gap:7px}
.set-detail-summary span{font:700 10px var(--font);text-transform:uppercase;color:#3a7dc0}
.set-detail-summary strong{font:800 25px var(--font);letter-spacing:-.035em;color:#1b3858}
.set-detail-summary strong small{font-size:13px;font-weight:500;color:#859aaa}
.set-detail-summary small{color:#7790a4;font-size:11px}
.set-detail-summary .progress{height:5px;border-radius:30px;max-width:100%}
.set-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 22px}
@media(max-width:760px){.set-detail-head{min-height:135px;padding:16px}.set-detail-art{height:110px;width:79px;flex-basis:79px}.set-detail-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.set-detail-summary>div{padding:12px}.set-detail-summary>div:first-child{grid-column:1/-1}.set-toolbar{gap:5px}.set-toolbar .btn{font-size:10px}}
