:root {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: #1d2433; background: #f4f5f9; font-synthesis: none;
  --red: #e3350d; --red-dark: #ba2609; --yellow: #ffcb05; --blue: #2a75bb;
  --surface: #fff; --muted: #6f7787; --line: #e4e7ee; --shadow: 0 18px 50px rgba(31,40,61,.11);
}
* { box-sizing: border-box; }
body { margin: 0; min-width: 320px; min-height: 100vh; background: radial-gradient(circle at top right, #fff3d2 0, transparent 28%), #f4f5f9; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
img { max-width: 100%; }
.login-shell { min-height: 100vh; display: grid; place-items: center; padding: 24px; background: linear-gradient(145deg, #261a4c, #172443 55%, #0e5667); }
.login-card { width: min(460px, 100%); background: rgba(255,255,255,.97); border-radius: 28px; padding: 34px; box-shadow: 0 30px 80px rgba(0,0,0,.28); }
.login-card h1 { margin: 30px 0 8px; font-size: clamp(1.8rem, 7vw, 2.5rem); }
.login-card > p { color: var(--muted); line-height: 1.55; }
.brand { display: inline-flex; align-items: center; gap: 12px; }
.brand strong { font-size: 1.35rem; letter-spacing: -.04em; }
.brand small { display: block; color: var(--muted); margin-top: 2px; }
.brand-ball { width: 40px; height: 40px; display: inline-block; border-radius: 50%; background: linear-gradient(#ef3b30 0 45%, #222 46% 54%, #fff 55%); border: 3px solid #222; position: relative; box-shadow: inset 0 -3px 0 rgba(0,0,0,.12); }
.brand-ball::after { content: ''; position: absolute; width: 11px; height: 11px; border-radius: 50%; background: white; border: 3px solid #222; left: 50%; top: 50%; transform: translate(-50%,-50%); }
.brand-large .brand-ball { width: 54px; height: 54px; }
.stack { display: grid; gap: 14px; margin-top: 24px; }
label { display: grid; gap: 7px; color: #424a59; font-size: .9rem; font-weight: 650; }
input, select, textarea { width: 100%; border: 1px solid var(--line); border-radius: 13px; padding: 12px 14px; background: #fff; color: #1d2433; outline: none; transition: .2s; }
input:focus, select:focus, textarea:focus { border-color: var(--blue); box-shadow: 0 0 0 4px rgba(42,117,187,.12); }
.primary, .secondary, .load-more { border: 0; border-radius: 13px; min-height: 46px; padding: 11px 17px; font-weight: 750; }
.primary { background: var(--red); color: white; box-shadow: 0 8px 20px rgba(227,53,13,.2); }
.primary:hover { background: var(--red-dark); }
.secondary { background: #eef1f7; color: #26334b; }
.small { min-height: 36px; padding: 7px 12px; font-size: .82rem; }
.mode-note { margin-top: 20px; padding: 12px 14px; border-radius: 12px; font-size: .78rem; line-height: 1.45; }
.mode-note.warning { background: #fff6d8; color: #735c00; }.mode-note.success { background: #e7f8ef; color: #12623c; }
.topbar { position: sticky; top: 0; z-index: 20; height: 68px; background: rgba(255,255,255,.9); backdrop-filter: blur(18px); border-bottom: 1px solid rgba(224,226,234,.8); display: flex; align-items: center; justify-content: space-between; padding: 0 max(18px, calc((100vw - 1180px)/2)); }
.brand-button { border: 0; background: none; color: inherit; }.brand-button .brand-ball { width: 34px; height: 34px; }.brand-button .brand-ball::after { width: 8px; height: 8px; }
.top-actions { display: flex; gap: 10px; }.icon-button,.avatar { border: 0; width: 40px; height: 40px; border-radius: 50%; font-weight: 800; }.icon-button { background: #eef1f7; }.avatar { color: white; background: linear-gradient(135deg,var(--red),#ff8a00); }
.app-main { min-height: calc(100vh - 68px); padding-bottom: 96px; }
.page { width: min(1180px, calc(100% - 28px)); margin: 0 auto; padding: 26px 0; }
.hero-page { padding-top: 30px; }
.welcome,.page-title,.section-head { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.welcome p,.page-title small,.section-head small { margin: 0; color: var(--muted); }.welcome h1,.page-title h1 { margin: 3px 0 0; font-size: clamp(1.8rem,5vw,2.7rem); letter-spacing: -.05em; }.version { color: var(--muted); font-size: .76rem; }
.value-card { margin: 24px 0; border-radius: 25px; padding: 26px; color: #fff; background: radial-gradient(circle at 85% 20%, rgba(255,203,5,.7), transparent 22%), linear-gradient(135deg,#e3350d,#8c1831 58%,#39215d); box-shadow: var(--shadow); }
.value-card > small { opacity: .85; }.value-card > strong { display: block; font-size: clamp(2rem,8vw,3.35rem); margin: 8px 0 18px; letter-spacing: -.05em; }.value-card div { display: flex; gap: 20px; flex-wrap: wrap; font-weight: 650; }.value-card .disclaimer { display: block; margin-top: 20px; max-width: 700px; line-height: 1.45; opacity: .72; }
.stats-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 14px; }.stat-card { background: var(--surface); padding: 18px; border-radius: 18px; border: 1px solid var(--line); }.stat-card small,.stat-card span { color: var(--muted); }.stat-card strong { display: block; font-size: 1.7rem; margin: 5px 0 2px; }.stat-card span { font-size: .76rem; }
.section-head { margin: 28px 0 14px; }.section-head h2,.section-head h3 { margin: 2px 0; }
.highlight-card { display: grid; grid-template-columns: 150px 1fr; gap: 24px; align-items: center; background: #fff; border-radius: 22px; padding: 18px; border: 1px solid var(--line); }.highlight-card img { max-height: 190px; object-fit: contain; }.highlight-card small,.highlight-card p { color: var(--muted); }.highlight-card h3 { font-size: 1.4rem; margin: 5px 0; }.highlight-card strong { font-size: 1.3rem; color: var(--red); }
.page-title > span,.page-title > strong { color: var(--muted); font-size: .9rem; }.page-title > strong { color: var(--red); font-size: 1.2rem; }
.search-row { display: flex; gap: 10px; margin: 20px 0; }.search-row input { flex: 1; }.search-row > button:not(.primary) { width: 48px; border: 1px solid var(--line); background: #fff; border-radius: 13px; font-size: 1.2rem; }
.pokemon-grid { display: grid; grid-template-columns: repeat(auto-fill,minmax(150px,1fr)); gap: 14px; }.pokemon-card { position: relative; min-height: 230px; background: linear-gradient(160deg,#fff,#f4f6fb); border: 1px solid var(--line); border-radius: 20px; padding: 15px; text-align: center; overflow: hidden; transition: transform .2s,box-shadow .2s; }.pokemon-card:hover { transform: translateY(-3px); box-shadow: var(--shadow); }.pokemon-card::after { content:''; position:absolute; width:120px;height:120px;border-radius:50%;background:rgba(42,117,187,.05);right:-35px;bottom:-35px; }.pokemon-card img { height: 130px; object-fit: contain; position: relative; z-index: 1; }.pokemon-card h3 { margin: 3px 0 9px; font-size: 1rem; }.dex-number { display:block;text-align:left;color:#9aa1af;font-size:.72rem;font-weight:750; }.favorite { position:absolute;right:10px;top:10px;z-index:2;border:0;background:rgba(255,255,255,.85);width:32px;height:32px;border-radius:50%;font-size:1.15rem;color:#8c94a3; }.favorite.on { color:var(--red); }.owned-badge,.not-owned { display:inline-block;border-radius:999px;padding:5px 9px;font-size:.7rem;font-weight:750; }.owned-badge { color:#12623c;background:#e5f8ed; }.not-owned { color:#7a8190;background:#eef0f4; }.load-more { display:block;margin:25px auto 0;background:#222b3d;color:white; }
.summary-strip { display:flex;gap:8px;flex-wrap:wrap;margin:18px 0; }.summary-strip span,.chips span { background:#fff;border:1px solid var(--line);border-radius:999px;padding:7px 11px;font-size:.76rem; }
.collection-list { display:grid;gap:13px; }.collection-card { display:grid;grid-template-columns:105px 1fr auto;gap:17px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:20px;padding:14px; }.card-image-button { border:0;background:#f2f4f8;border-radius:13px;padding:4px;height:135px; }.card-image-button img { width:100%;height:100%;object-fit:contain; }.collection-info small,.collection-info p { color:var(--muted); }.collection-info h3 { margin:5px 0;font-size:1.15rem; }.collection-info p { margin:4px 0 10px;font-size:.83rem; }.collection-info strong { display:block;margin-top:10px;color:var(--red); }.chips { display:flex;gap:6px;flex-wrap:wrap; }.chips span { padding:4px 8px;background:#f6f7fa; }.danger-link { align-self:start;border:0;background:none;color:#b03434;font-size:.76rem; }
.empty-panel,.loading-panel { min-height:280px;display:grid;place-items:center;align-content:center;text-align:center;background:#fff;border:1px dashed #ccd1dc;border-radius:22px;padding:28px;color:var(--muted); }.empty-panel > span { font-size:2.8rem;color:#b6bdca; }.empty-panel h3 { color:#273043;margin:8px 0; }.empty-panel p { max-width:480px;margin:0 0 18px;line-height:1.5; }.spinner { width:36px;height:36px;border-radius:50%;border:4px solid #e4e7ee;border-top-color:var(--red);animation:spin .8s linear infinite; } @keyframes spin{to{transform:rotate(360deg)}}
.bottom-nav { position:fixed;left:50%;transform:translateX(-50%);bottom:max(10px,env(safe-area-inset-bottom));z-index:25;width:min(560px,calc(100% - 22px));display:grid;grid-template-columns:repeat(4,1fr);background:rgba(28,34,48,.94);backdrop-filter:blur(18px);border-radius:20px;padding:7px;box-shadow:0 18px 45px rgba(0,0,0,.25); }.bottom-nav button { border:0;background:none;color:#afb6c4;border-radius:14px;padding:7px 2px; }.bottom-nav button.active { color:white;background:rgba(255,255,255,.13); }.bottom-nav span,.bottom-nav small { display:block; }.bottom-nav span { font-size:1.2rem; }.bottom-nav small { font-size:.67rem;margin-top:2px; }
.modal-backdrop { position:fixed;inset:0;z-index:40;background:rgba(12,16,25,.72);display:grid;place-items:end center;padding-top:30px; }.modal-backdrop.top { z-index:50;place-items:center;padding:20px; }.modal { position:relative;width:min(760px,100%);max-height:95vh;overflow:auto;background:#f6f7fa;border-radius:28px 28px 0 0;box-shadow:0 -25px 70px rgba(0,0,0,.3); }.modal-backdrop.top .modal { border-radius:26px; }.modal-close { position:absolute;right:15px;top:14px;z-index:4;border:0;background:rgba(20,24,34,.72);color:#fff;width:36px;height:36px;border-radius:50%;font-size:1.4rem; }.pokemon-hero { text-align:center;color:#fff;padding:30px 25px 22px;background:radial-gradient(circle at 30% 20%,rgba(255,203,5,.5),transparent 25%),linear-gradient(145deg,#2a75bb,#37307e 55%,#71265e); }.pokemon-hero > span { opacity:.75;font-weight:750; }.pokemon-hero img { display:block;height:210px;margin:-2px auto -12px;object-fit:contain; }.pokemon-hero h2 { margin:0;font-size:2rem; }.pokemon-hero p { opacity:.8;margin-bottom:0; }.types { display:flex;justify-content:center;gap:8px;margin-top:10px; }.type { padding:5px 11px;border-radius:999px;background:rgba(255,255,255,.17);font-size:.76rem;font-weight:750; }.modal-body { padding:22px; }.card-results { display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px; }.result-card { background:#fff;border:1px solid var(--line);border-radius:17px;padding:10px; }.result-card > img,.result-card > .image-placeholder { width:100%;height:205px;object-fit:contain;background:#f0f2f6;border-radius:11px; }.result-card h4 { margin:8px 0 3px;font-size:.87rem; }.result-card small { color:var(--muted);font-size:.7rem; }.result-actions { display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:9px; }.hint { color:var(--muted);text-align:center;padding:25px; }
.card-editor { padding:24px; }.editor-head { display:grid;grid-template-columns:100px 1fr;gap:17px;align-items:center;margin-bottom:20px; }.editor-head img { width:100%;height:125px;object-fit:contain; }.editor-head small,.editor-head p { color:var(--muted); }.editor-head h2 { margin:4px 0; }.editor-head p { margin:0; }.editor-form { display:grid;gap:14px; }.form-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:10px; }.form-grid.three { grid-template-columns:repeat(3,1fr); } fieldset { border:1px solid var(--line);border-radius:16px;padding:13px; } legend { color:var(--muted);font-size:.8rem;font-weight:700;padding:0 7px; }
.image-placeholder { display:grid;place-items:center;color:#9aa1af;font-size:.75rem; }.toast { position:fixed;left:50%;transform:translateX(-50%);bottom:100px;z-index:80;background:#20283a;color:white;border-radius:14px;padding:12px 18px;box-shadow:var(--shadow);max-width:min(500px,90%);text-align:center;font-size:.86rem; }
@media (max-width:760px) { .stats-grid{grid-template-columns:repeat(2,1fr)}.collection-card{grid-template-columns:85px 1fr}.collection-card .danger-link{grid-column:2}.form-grid,.form-grid.three{grid-template-columns:repeat(2,1fr)}.topbar{padding:0 16px}.page{width:min(100% - 20px,1180px)} }
@media (max-width:480px) { .login-card{padding:25px 20px}.pokemon-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.pokemon-card{min-height:205px;padding:11px}.pokemon-card img{height:115px}.highlight-card{grid-template-columns:100px 1fr}.collection-card{grid-template-columns:75px 1fr;gap:10px}.card-image-button{height:110px}.form-grid,.form-grid.three{grid-template-columns:1fr 1fr}.editor-head{grid-template-columns:80px 1fr}.card-editor{padding:18px}.modal-body{padding:15px}.card-results{grid-template-columns:repeat(2,minmax(0,1fr))}.result-card>img,.result-card>.image-placeholder{height:180px} }

/* My Dex v1.0.0.0.4 — contas controladas, painel Master e formas Pokémon */
.master-setup-card { border: 1px solid rgba(255,203,5,.45); }
.security-seal { display:inline-block;margin-top:24px;padding:6px 10px;border-radius:999px;background:#fff4c7;color:#6e5700;font-size:.7rem;font-weight:850;letter-spacing:.08em; }
.back-link { border:0;background:none;color:var(--blue);padding:0;font-weight:750; }
.role-badge,.status-badge { display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:6px 10px;font-size:.68rem;font-weight:850;white-space:nowrap; }
.role-master { background:#2d2454;color:#fff; }.role-admin { background:#e7efff;color:#245a9b; }.role-moderator { background:#f7e9ff;color:#7b319d; }.role-user { background:#eef0f4;color:#626b79; }
.status-pending { background:#fff3cc;color:#755d00; }.status-active { background:#e5f8ed;color:#12623c; }.status-suspended { background:#ffe8d4;color:#8b4206; }.status-blocked { background:#ffe1e1;color:#a12020; }
.top-actions { align-items:center; }
.bottom-nav.five-items { grid-template-columns:repeat(5,1fr);width:min(650px,calc(100% - 22px)); }
.admin-alert { width:100%;display:grid;grid-template-columns:auto 1fr auto;gap:13px;align-items:center;margin:18px 0 0;padding:15px 18px;border:1px solid #f1d681;background:#fff9df;border-radius:17px;text-align:left;color:#4e430e; }
.admin-alert strong { display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#ffcb05;color:#3c3100;font-size:1.15rem; }.admin-alert span { font-weight:700; }.admin-alert b { color:#6d5800;font-size:.8rem; }
.forms-toggle { margin:17px auto 0;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.13);color:white;border-radius:999px;padding:9px 15px;font-size:.82rem;font-weight:800; }
.forms-panel { padding:18px 22px;background:#fff;border-bottom:1px solid var(--line); }
.forms-panel > div:first-child small { color:var(--red);font-weight:850;letter-spacing:.06em; }.forms-panel > div:first-child p { margin:4px 0 14px;color:var(--muted);font-size:.82rem; }
.forms-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(115px,1fr));gap:10px;max-height:330px;overflow:auto;padding:2px; }
.form-option { display:grid;grid-template-rows:80px auto auto;gap:4px;place-items:center;border:1px solid var(--line);background:#f8f9fc;border-radius:15px;padding:8px;color:#273043; }
.form-option:hover { border-color:#b7c7df; }.form-option.selected { border:2px solid var(--blue);background:#edf5ff;box-shadow:0 7px 20px rgba(42,117,187,.13); }
.form-option img { width:100%;height:78px;object-fit:contain; }.form-option span { font-size:.72rem;font-weight:800;text-align:center;line-height:1.25; }.form-option small { color:var(--muted);font-size:.65rem; }
.owned-form-section { background:#eef6ff;border:1px solid #d7e9ff;border-radius:18px;padding:14px;margin-bottom:20px; }.owned-form-section .section-head { margin:0 0 10px; }.owned-form-section .section-head strong { color:var(--blue); }
.owned-form-cards { display:flex;gap:9px;overflow:auto;padding-bottom:3px; }.owned-form-cards button { flex:0 0 92px;border:0;background:#fff;border-radius:12px;padding:7px;text-align:left; }.owned-form-cards img { width:100%;height:98px;object-fit:contain; }.owned-form-cards span { display:block;font-size:.68rem;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.no-card-results { display:grid;place-items:center;gap:0;padding:5px 0 20px; }.no-card-results .hint { margin:0; }
.linked-form { display:inline-block;margin-top:8px;padding:5px 8px;border-radius:999px;background:#edf5ff;color:#245a9b;font-size:.68rem;font-weight:800; }
.admin-page { padding-bottom:120px; }.admin-stats { display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:20px 0; }
.admin-tabs { display:flex;gap:8px;border-bottom:1px solid var(--line);margin:20px 0; }.admin-tabs button { border:0;background:none;padding:12px 16px;color:var(--muted);font-weight:800;border-bottom:3px solid transparent; }.admin-tabs button.active { color:var(--red);border-bottom-color:var(--red); }
.admin-toolbar { display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;margin-bottom:16px; }.admin-toolbar .search-row { margin:0; }.admin-toolbar .search-row > button { width:auto!important;min-width:78px;padding:0 14px;font-size:.85rem;font-weight:750; }
.admin-create-panel { display:grid;gap:15px;background:linear-gradient(145deg,#fff,#f5f8ff);border:1px solid #dfe6f1;border-radius:20px;padding:20px;margin-bottom:18px; }.admin-create-panel h3 { margin:3px 0; }.admin-create-panel p { margin:0;color:var(--muted);font-size:.82rem; }
.user-list { display:grid;gap:12px; }.admin-user-card { display:grid;grid-template-columns:minmax(280px,1.4fr) auto;gap:14px;background:#fff;border:1px solid var(--line);border-left:5px solid #d9dde5;border-radius:18px;padding:16px; }.admin-user-card.status-pending { border-left-color:#e9bb1c; }.admin-user-card.status-active { border-left-color:#42a36a; }.admin-user-card.status-suspended { border-left-color:#dc7b27; }.admin-user-card.status-blocked { border-left-color:#c83c3c; }
.user-identity { display:grid;grid-template-columns:46px 1fr;gap:12px;align-items:center; }.user-avatar { display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:linear-gradient(145deg,#2a75bb,#4a327a);color:#fff;font-weight:850; }.user-identity h3 { margin:0;font-size:1rem; }.user-identity p { margin:2px 0;color:var(--muted);font-size:.82rem; }.user-identity small { color:#969dab;font-size:.68rem; }
.user-tags { display:flex;gap:6px;align-items:start;justify-content:flex-end; }.admin-user-form { grid-column:1/-1;display:grid;grid-template-columns:160px 170px 1fr auto;gap:10px;align-items:end;border-top:1px solid var(--line);padding-top:13px; }.admin-user-form label { font-size:.75rem; }.admin-user-form input,.admin-user-form select { padding:9px 10px; }.admin-user-form button { min-height:39px; }.quick-actions { grid-column:1/-1;display:flex;gap:8px;justify-content:flex-end; }.quick-actions button { border:0;border-radius:10px;padding:8px 12px;background:#eef1f7;color:#374154;font-weight:750;font-size:.76rem; }.quick-actions .approve { background:#e2f7eb;color:#12623c; }.quick-actions .danger { background:#ffe3e3;color:#9d2424; }.master-protected { grid-column:1/-1;padding:10px 12px;border-radius:11px;background:#f0eef9;color:#54477d;font-size:.76rem;font-weight:750; }
.audit-list { display:grid;gap:0;background:#fff;border:1px solid var(--line);border-radius:18px;padding:8px 18px; }.audit-list article { display:grid;grid-template-columns:16px 1fr;gap:11px;padding:14px 0;border-bottom:1px solid var(--line); }.audit-list article:last-child { border-bottom:0; }.audit-dot { width:10px;height:10px;border-radius:50%;background:var(--blue);margin-top:6px;box-shadow:0 0 0 4px rgba(42,117,187,.12); }.audit-list strong { font-size:.86rem; }.audit-list p { margin:3px 0;color:var(--muted);font-size:.76rem; }.audit-list small { color:#9ba2af;font-size:.68rem; }

@media (max-width:850px) {
  .admin-stats { grid-template-columns:repeat(2,1fr); }
  .admin-user-form { grid-template-columns:1fr 1fr; }.admin-user-form .notes-field { grid-column:1/-1; }.admin-user-form button { grid-column:2;justify-self:end; }
}
@media (max-width:600px) {
  .role-badge { padding:5px 7px;font-size:.6rem; }.top-actions { gap:6px; }
  .bottom-nav.five-items small { font-size:.59rem; }
  .admin-toolbar { grid-template-columns:1fr; }.admin-toolbar > button { width:100%; }
  .admin-user-card { grid-template-columns:1fr; }.user-tags { justify-content:flex-start; }.admin-user-form { grid-template-columns:1fr; }.admin-user-form .notes-field,.admin-user-form button { grid-column:1; }.admin-user-form button { width:100%; }
  .quick-actions { justify-content:stretch; }.quick-actions button { flex:1; }
  .forms-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.form-option { grid-template-rows:70px auto auto; }.form-option img { height:68px; }
}

/* My Dex v1.0.0.0.7 — Minha Dex por Pokémon, visualização ampliada e catálogo completo */
.collection-view-toggle {
  display:inline-grid;
  grid-template-columns:1fr 1fr;
  gap:5px;
  margin:18px 0;
  padding:5px;
  border:1px solid var(--line);
  border-radius:15px;
  background:#fff;
  box-shadow:0 7px 22px rgba(38,48,67,.05);
}
.collection-view-toggle button {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-width:160px;
  border:0;
  border-radius:11px;
  padding:10px 14px;
  background:transparent;
  color:var(--muted);
  font-weight:800;
}
.collection-view-toggle button.active { background:#273043;color:#fff;box-shadow:0 6px 15px rgba(39,48,67,.2); }
.collection-view-toggle span { font-size:1rem; }

.mydex-pokemon-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px; }
.mydex-pokemon-tile {
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  min-height:340px;
  overflow:hidden;
  border:1px solid #e0e4ec;
  border-radius:24px;
  padding:18px;
  background:radial-gradient(circle at 50% 24%,#fff 0,#f7f9fc 48%,#eef2f7 100%);
  color:#273043;
  text-align:center;
  box-shadow:0 13px 34px rgba(45,55,75,.08);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.mydex-pokemon-tile:hover { transform:translateY(-4px);border-color:#b9c8dc;box-shadow:0 19px 42px rgba(45,55,75,.14); }
.mydex-dex-number { align-self:flex-start;color:#7d8492;font-size:.7rem;font-weight:900;letter-spacing:.08em; }
.mydex-pokemon-art { width:100%;height:145px;object-fit:contain;margin:-3px 0 -4px;filter:drop-shadow(0 13px 12px rgba(28,35,49,.16)); }
.mydex-pokemon-tile h3 { margin:5px 0 7px;font-size:1.15rem; }
.mydex-pokemon-stats { display:flex;gap:7px;justify-content:center;flex-wrap:wrap; }
.mydex-pokemon-stats span { border-radius:999px;padding:5px 9px;background:#fff;color:#677081;font-size:.67rem;font-weight:800;box-shadow:0 4px 12px rgba(35,44,60,.06); }
.mydex-card-stack { position:relative;width:108px;height:58px;margin:13px auto 5px; }
.mydex-card-stack img { position:absolute;left:calc(25px * var(--stack-index));top:0;width:43px;height:58px;object-fit:contain;border-radius:4px;filter:drop-shadow(0 4px 4px rgba(0,0,0,.17));transform:rotate(calc((var(--stack-index) - 1) * 5deg)); }
.mydex-pokemon-tile > strong { margin-top:auto;color:#20894e;font-size:1rem; }
.mydex-pokemon-tile > small:last-child { margin-top:4px;color:var(--blue);font-size:.68rem;font-weight:850; }

.owned-cards-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:14px; }
.owned-card-tile {
  position:relative;
  display:grid;
  grid-template-rows:235px auto auto auto;
  gap:5px;
  min-width:0;
  border:1px solid var(--line);
  border-radius:19px;
  padding:11px;
  background:#fff;
  color:#273043;
  text-align:left;
  box-shadow:0 9px 25px rgba(42,50,67,.07);
  transition:transform .17s ease,box-shadow .17s ease;
}
.owned-card-tile:hover { transform:translateY(-3px);box-shadow:0 15px 32px rgba(42,50,67,.13); }
.owned-card-tile > img,.owned-card-tile > .image-placeholder { width:100%;height:235px;object-fit:contain;border-radius:12px;background:#f3f5f8; }
.owned-card-quantity { position:absolute;right:17px;top:17px;z-index:2;border-radius:999px;padding:5px 8px;background:rgba(29,36,50,.88);color:#fff;font-size:.68rem;font-weight:900;box-shadow:0 5px 12px rgba(0,0,0,.18); }
.owned-card-name { margin-top:4px;overflow:hidden;color:#273043;font-size:.82rem;font-weight:850;white-space:nowrap;text-overflow:ellipsis; }
.owned-card-tile small { overflow:hidden;color:var(--muted);font-size:.65rem;white-space:nowrap;text-overflow:ellipsis; }
.owned-card-tile strong { margin-top:3px;color:#20894e;font-size:.82rem; }

.owned-pokemon-backdrop { z-index:44; }
.owned-pokemon-modal { width:min(980px,100%); }
.owned-pokemon-hero { display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;padding:28px;background:radial-gradient(circle at 20% 20%,rgba(255,203,5,.35),transparent 28%),linear-gradient(145deg,#dfe8ed,#eef2f5);border-bottom:1px solid #d8dde5; }
.owned-pokemon-identity { display:flex;align-items:center;gap:22px;min-width:0; }
.owned-pokemon-identity img,.owned-pokemon-placeholder { flex:0 0 180px;width:180px;height:150px;object-fit:contain;filter:drop-shadow(0 12px 13px rgba(35,43,58,.17)); }
.owned-pokemon-placeholder { display:grid;place-items:center;border-radius:50%;background:#fff;color:#a0a7b3;font-size:3rem;font-weight:900; }
.owned-pokemon-identity small { color:#697383;font-size:.75rem;font-weight:900;letter-spacing:.08em; }
.owned-pokemon-identity h2 { margin:4px 0;font-size:2rem; }
.owned-pokemon-identity p { margin:0;color:#697383; }
.owned-pokemon-value { min-width:210px;border-radius:17px;padding:16px 18px;background:#fff;text-align:right;box-shadow:0 10px 25px rgba(44,53,70,.08); }
.owned-pokemon-value small { display:block;color:var(--muted);font-size:.7rem; }
.owned-pokemon-value strong { display:block;margin-top:4px;color:#20894e;font-size:1.35rem; }
.owned-pokemon-body { padding:22px; }

.card-preview-backdrop { z-index:56; }
.card-preview-modal { width:min(920px,96vw);max-height:94vh;overflow:auto;background:#edf1f4; }
.card-preview-content { display:grid;grid-template-columns:minmax(300px,440px) minmax(260px,1fr);gap:28px;align-items:center;padding:34px; }
.card-preview-image-wrap { display:grid;place-items:center;min-height:560px;border-radius:24px;background:linear-gradient(145deg,#d8dee3,#f8fafb);box-shadow:inset 0 0 0 1px rgba(255,255,255,.7); }
.card-preview-image-wrap img { width:100%;max-width:410px;max-height:570px;object-fit:contain;filter:drop-shadow(0 18px 17px rgba(20,26,37,.24)); }
.card-preview-image-wrap .image-placeholder { min-height:540px;width:100%; }
.card-preview-info > small { color:var(--red);font-weight:900;letter-spacing:.06em; }
.card-preview-info h2 { margin:7px 0 4px;font-size:2rem;line-height:1.08; }
.card-preview-info > p { margin:0;color:var(--muted); }
.card-preview-tags { display:flex;gap:7px;flex-wrap:wrap;margin:15px 0; }
.card-preview-tags span { border-radius:999px;padding:6px 10px;background:#fff;color:#596273;font-size:.7rem;font-weight:850; }
.card-preview-price-row { display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;margin-top:18px;border-radius:18px;padding:14px 14px 14px 17px;background:#fff;box-shadow:0 10px 25px rgba(44,53,70,.08); }
.card-preview-price-row small { display:block;color:var(--muted);font-size:.68rem; }
.card-preview-price-row strong { display:block;margin-top:2px;color:#20894e;font-size:1.6rem; }
.card-preview-price-row button { min-width:110px; }
.card-preview-range { display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:10px; }
.card-preview-range span { border-radius:12px;padding:9px;background:rgba(255,255,255,.68);color:#737b89;font-size:.67rem;text-align:center; }
.card-preview-range b { display:block;margin-top:2px;color:#303949;font-size:.75rem; }
.card-preview-notes { margin-top:14px;border-radius:14px;padding:13px;background:#fff; }
.card-preview-notes small { color:var(--muted);font-size:.67rem;font-weight:850; }
.card-preview-notes p { margin:5px 0 0;color:#4e5869;font-size:.8rem;line-height:1.45; }
.card-preview-liga { display:block;margin-top:12px;text-align:center;text-decoration:none; }
.catalog-note { margin:-7px 0 13px;border-left:3px solid var(--blue);padding:7px 10px;background:#edf5ff;color:#52637a;font-size:.73rem; }

@media (max-width:760px) {
  .collection-view-toggle { display:grid;width:100%; }.collection-view-toggle button { min-width:0; }
  .mydex-pokemon-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:10px; }
  .mydex-pokemon-tile { min-height:300px;padding:13px; }.mydex-pokemon-art { height:125px; }.mydex-card-stack { margin-top:8px; }
  .owned-pokemon-hero { grid-template-columns:1fr;padding:20px; }.owned-pokemon-identity { gap:12px; }.owned-pokemon-identity img,.owned-pokemon-placeholder { flex-basis:120px;width:120px;height:110px; }.owned-pokemon-identity h2 { font-size:1.45rem; }.owned-pokemon-value { min-width:0;text-align:left; }
  .card-preview-content { grid-template-columns:1fr;padding:22px;gap:18px; }.card-preview-image-wrap { min-height:390px; }.card-preview-image-wrap img { max-height:410px; }.card-preview-info h2 { font-size:1.55rem; }
}
@media (max-width:480px) {
  .mydex-pokemon-grid { grid-template-columns:1fr 1fr; }.mydex-pokemon-tile { min-height:270px;border-radius:18px; }.mydex-pokemon-art { height:105px; }.mydex-pokemon-tile h3 { font-size:.92rem; }.mydex-card-stack { width:84px;height:48px; }.mydex-card-stack img { left:calc(20px * var(--stack-index));width:36px;height:48px; }
  .owned-cards-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:9px; }.owned-card-tile { grid-template-rows:190px auto auto auto;padding:8px; }.owned-card-tile > img,.owned-card-tile > .image-placeholder { height:190px; }
  .owned-pokemon-body { padding:14px; }.owned-pokemon-identity img,.owned-pokemon-placeholder { flex-basis:94px;width:94px;height:90px; }.owned-pokemon-identity h2 { font-size:1.2rem; }
  .card-preview-content { padding:15px; }.card-preview-image-wrap { min-height:330px; }.card-preview-image-wrap img { max-height:350px; }.card-preview-price-row { grid-template-columns:1fr auto; }.card-preview-price-row strong { font-size:1.25rem; }.card-preview-range { grid-template-columns:1fr; }
}
.mydex-unlinked-art { display:grid;place-items:center;margin:8px 0 4px;border-radius:50%;background:#fff;color:#a0a7b3;font-size:3.2rem;font-weight:900;filter:none; }

/* v1.0.0.0.7 — configuração central protegida */
.configuration-card { max-width: 620px; }
.configuration-card .secondary { width: 100%; margin-top: 16px; }
.setup-steps {
  margin: 18px 0;
  padding: 16px 18px;
  border: 1px solid #dfe3e8;
  border-radius: 16px;
  background: #f8fafc;
  text-align: left;
}
.setup-steps strong { display: block; margin-bottom: 8px; color: #252b31; }
.setup-steps ol { margin: 0; padding-left: 22px; color: #505860; }
.setup-steps li { margin: 7px 0; line-height: 1.4; }

/* v1.0.0.0.7 - fluxo de confirmação Master */
.master-setup-card .setup-steps + .primary { width: 100%; margin-top: 18px; }
.master-setup-card .primary + .secondary { width: 100%; margin-top: 10px; }

/* ================================================================
   MY DEX v1.0.0.0.9 — filtro por Pokémon, galeria e construtor de deck
   ================================================================ */
.collection-view-toggle.three-tabs { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.liga-green-text,.liga-green { color:#20a64b !important; }
.liga-red { color:#ef3f47 !important; }
.tile-red-value { color:#ef3f47 !important; }

/* Faixa de preço inspirada na leitura rápida da Liga, sem copiar o layout. */
.liga-price-band {
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:8px;
  flex-wrap:wrap;
  min-width:0;
}
.liga-price-band.compact { gap:5px;font-size:.75rem; }
.liga-price-band > span { font-weight:900;white-space:nowrap; }
.liga-price-band > i { color:#a4abb6;font-style:normal;font-size:.72rem; }
.liga-price-band > small {
  flex-basis:100%;
  color:#858d9a;
  font-size:.63rem;
  font-weight:750;
}
.price-not-informed { color:#9098a6;font-size:.7rem;font-weight:750; }
.price-updated { display:block;margin-top:8px;color:#7e8795;font-size:.66rem; }

/* Os cards da coleção agora são artigos com dois botões independentes. */
.owned-card-tile {
  position:relative;
  display:block;
  min-width:0;
  padding:10px;
  overflow:visible;
}
.owned-card-main {
  display:grid;
  grid-template-rows:minmax(190px,235px) auto auto auto;
  gap:5px;
  width:100%;
  min-width:0;
  border:0;
  padding:0;
  background:transparent;
  color:inherit;
  text-align:left;
  cursor:pointer;
}
.owned-card-main > img,.owned-card-main > .image-placeholder {
  width:100%;
  height:235px;
  object-fit:contain;
  border-radius:12px;
  background:#f3f5f8;
}
.owned-card-main .liga-price-band { margin-top:3px; }
.deck-add-button,.deck-remove-card {
  position:absolute;
  z-index:4;
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border:2px solid #fff;
  border-radius:50%;
  box-shadow:0 8px 18px rgba(32,42,58,.22);
  font-size:1.35rem;
  font-weight:900;
  line-height:1;
}
.deck-add-button { right:-7px;bottom:54px;background:var(--blue);color:#fff; }
.deck-add-button:hover { transform:scale(1.08); }
.deck-remove-card { right:-7px;top:-7px;background:#e94b55;color:#fff;font-size:1rem; }
.owned-card-tile.inside-deck { border-color:#cad8ec; }

/* Destaque do Pokémon: personagem à frente, cartas em seguida. */
.pokemon-showcase-modal { width:min(1420px,98vw); }
.pokemon-showcase-layout {
  display:grid;
  grid-template-columns:minmax(285px,360px) minmax(0,1fr);
  gap:24px;
  align-items:stretch;
  padding:26px;
  background:linear-gradient(135deg,#dce3e7,#f0f3f5);
  border-bottom:1px solid #d5dce2;
}
.pokemon-showcase-identity {
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-height:455px;
  border-radius:28px;
  padding:20px;
  background:rgba(255,255,255,.82);
  text-align:center;
  box-shadow:0 16px 38px rgba(42,52,69,.09);
}
.pokemon-showcase-identity img { width:min(290px,92%);height:250px;object-fit:contain;filter:drop-shadow(0 14px 13px rgba(28,38,55,.18)); }
.pokemon-showcase-identity .dex-number { margin-top:6px;color:#555f6e;font-size:1.35rem;font-weight:900; }
.pokemon-showcase-identity h2 { margin:6px 0 12px;font-size:2rem;line-height:1; }
.pokemon-showcase-meta { display:flex;gap:8px;justify-content:center;flex-wrap:wrap; }
.pokemon-showcase-meta span { border-radius:999px;padding:7px 12px;background:#fff;color:#596372;font-size:.72rem;font-weight:850; }
.pokemon-form-note { margin-top:20px;color:#838b96;font-size:.73rem;font-weight:750; }
.pokemon-featured-panel { min-width:0;padding:12px 4px; }
.featured-title { display:flex;align-items:center;gap:14px;margin:0 0 18px; }
.featured-title::before,.featured-title::after { content:"";height:3px;flex:1;border-radius:99px;background:linear-gradient(90deg,transparent,#969da5); }
.featured-title::after { background:linear-gradient(90deg,#969da5,transparent); }
.featured-title h3 { margin:0;white-space:nowrap;font-size:1.75rem;letter-spacing:.02em; }
.featured-card-row {
  display:grid;
  grid-template-columns:repeat(4,minmax(150px,1fr));
  gap:14px;
  overflow:auto;
  padding:4px 4px 12px;
  scroll-snap-type:x proximity;
}
.featured-pokemon-card {
  display:flex;
  flex-direction:column;
  min-width:0;
  scroll-snap-align:start;
  border-radius:18px;
  padding:10px;
  background:rgba(255,255,255,.78);
  box-shadow:0 10px 26px rgba(38,48,64,.08);
}
.featured-pokemon-card > img,.featured-pokemon-card > .image-placeholder { width:100%;height:260px;object-fit:contain;border-radius:12px; }
.featured-pokemon-card > strong { overflow:hidden;margin:8px 2px 4px;font-size:.78rem;white-space:nowrap;text-overflow:ellipsis; }
.featured-pokemon-card .liga-price-band { min-height:35px;margin:2px 2px 8px; }
.featured-pokemon-card .primary { margin-top:auto; }
.featured-no-price { min-height:35px;margin:4px 2px 8px;color:#8c95a2;font-size:.65rem; }
.pokemon-card-catalog { padding:24px; }
.filter-note { border-left-color:#20a64b; }

/* Deck: abas, grupos livres e galeria. */
.deck-empty-panel {
  display:grid;
  place-items:center;
  min-height:330px;
  margin-top:18px;
  border:1px dashed #c9d1dc;
  border-radius:24px;
  padding:32px;
  background:#fff;
  text-align:center;
}
.deck-empty-panel > span { font-size:3rem;color:var(--blue); }
.deck-empty-panel h3 { margin:8px 0 2px; }
.deck-empty-panel p { max-width:480px;color:var(--muted); }
.deck-workspace { margin-top:18px; }
.deck-tabs-row { display:flex;gap:12px;align-items:center;justify-content:space-between;margin-bottom:14px; }
.deck-tabs { display:flex;gap:8px;min-width:0;overflow:auto;padding:3px; }
.deck-tabs button,.deck-new-button {
  display:flex;
  align-items:center;
  gap:8px;
  flex:0 0 auto;
  border:1px solid var(--line);
  border-radius:999px;
  padding:9px 14px;
  background:#fff;
  color:#5b6574;
  font-weight:850;
}
.deck-tabs button.active { border-color:var(--blue);background:var(--blue);color:#fff; }
.deck-tabs button small { display:grid;place-items:center;min-width:21px;height:21px;border-radius:999px;background:rgba(127,139,157,.16);font-size:.65rem; }
.deck-new-button { color:var(--blue); }
.deck-header-card {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  gap:22px;
  align-items:center;
  border-radius:22px;
  padding:22px;
  background:linear-gradient(135deg,#1c3155,#2c5590);
  color:#fff;
  box-shadow:0 16px 34px rgba(35,69,112,.19);
}
.deck-header-card small { color:#bfd2ed;font-weight:900;letter-spacing:.09em; }
.deck-header-card h2 { margin:5px 0;font-size:1.8rem; }
.deck-header-card p { margin:0;color:#d5e0ee; }
.deck-header-stats { min-width:90px;text-align:center; }
.deck-header-stats strong { display:block;font-size:2.2rem; }
.deck-header-stats span { color:#c8d8eb;font-size:.72rem; }
.deck-header-actions { display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end; }
.deck-header-actions .secondary { border-color:rgba(255,255,255,.35);background:rgba(255,255,255,.12);color:#fff; }
.deck-header-actions .danger-link { color:#ffd6d9; }
.deck-groups { display:grid;gap:18px;margin-top:18px; }
.deck-group-card { border:1px solid var(--line);border-radius:22px;padding:18px;background:#fff;box-shadow:0 10px 25px rgba(41,51,68,.06); }
.deck-group-head { display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px; }
.deck-group-head small { color:#89919e;font-size:.65rem;font-weight:900;letter-spacing:.08em; }
.deck-group-head h3 { margin:3px 0 0; }
.deck-group-head > div:last-child { display:flex;align-items:center;gap:8px;color:#77808d;font-size:.72rem; }
.deck-group-head > div:last-child button { display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#fff0f1;color:#d6434d;font-size:1.1rem; }
.deck-gallery { display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:13px; }
.deck-group-empty { border:1px dashed #d5dbe3;border-radius:15px;padding:22px;text-align:center;color:#7b8491; }
.deck-group-empty p { margin:0 0 4px;font-weight:850; }
.deck-dialog { width:min(520px,94vw);padding:28px; }
.deck-dialog > small { color:var(--blue);font-weight:900;letter-spacing:.09em; }
.deck-dialog h2 { margin:7px 0; }
.deck-dialog > p { color:var(--muted); }

/* Modal de galeria: uma carta grande por vez, com anterior/próxima. */
.gallery-modal { position:relative;overflow:visible; }
.gallery-arrow {
  position:absolute;
  z-index:8;
  top:50%;
  width:48px;
  height:64px;
  border:2px solid rgba(255,255,255,.8);
  border-radius:18px;
  background:rgba(26,35,49,.82);
  color:#fff;
  box-shadow:0 12px 28px rgba(20,27,38,.25);
  font-size:2.8rem;
  line-height:1;
  transform:translateY(-50%);
}
.gallery-arrow.previous { left:-64px; }
.gallery-arrow.next { right:-64px; }
.card-preview-price-row.liga-style { display:grid;grid-template-columns:minmax(0,1fr) auto; }
.card-preview-price-row.liga-style .liga-price-band { margin-top:7px; }
.add-preview-to-deck { width:100%;margin-top:12px; }

/* Editor de valores. */
.liga-price-fieldset { border:1px solid #dce2e9;border-radius:18px;padding:17px;background:#f8fafc; }
.liga-price-fieldset legend { padding:0 8px;color:#3e4a5c;font-size:.75rem;font-weight:900; }
.liga-sync-row { display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0 14px; }
.liga-sync-row small { color:#7f8793;font-size:.67rem;text-align:right; }
.price-input-grid input[readonly] { cursor:not-allowed;background:#fff; }
.green-price-input input { border-color:#8fd8a7 !important;color:#17883d;font-weight:900; }
.red-price-input input { border-color:#f2a4a9 !important;color:#df313b;font-weight:900; }

@media (max-width:1080px) {
  .pokemon-showcase-layout { grid-template-columns:300px minmax(0,1fr); }
  .featured-card-row { grid-template-columns:repeat(4,minmax(180px,220px)); }
  .deck-header-card { grid-template-columns:minmax(0,1fr) auto; }
  .deck-header-actions { grid-column:1 / -1;justify-content:flex-start; }
}
@media (max-width:760px) {
  .collection-view-toggle.three-tabs { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .collection-view-toggle.three-tabs button { padding:10px 5px;font-size:.72rem; }
  .pokemon-showcase-layout { grid-template-columns:1fr;padding:14px; }
  .pokemon-showcase-identity { min-height:340px;padding:14px; }
  .pokemon-showcase-identity img { height:205px; }
  .featured-title h3 { font-size:1.2rem; }
  .featured-card-row { grid-template-columns:repeat(4,minmax(155px,190px)); }
  .featured-pokemon-card > img,.featured-pokemon-card > .image-placeholder { height:220px; }
  .pokemon-card-catalog { padding:15px; }
  .deck-tabs-row { align-items:stretch;flex-direction:column; }
  .deck-tabs { width:100%; }
  .deck-new-button { align-self:flex-start; }
  .deck-header-card { grid-template-columns:1fr auto;padding:18px; }
  .deck-header-actions { grid-column:1 / -1; }
  .gallery-arrow { top:auto;bottom:12px;width:43px;height:43px;border-radius:50%;font-size:2rem;transform:none; }
  .gallery-arrow.previous { left:15px; }
  .gallery-arrow.next { right:15px; }
  .liga-sync-row { align-items:stretch;flex-direction:column; }
  .liga-sync-row small { text-align:left; }
}
@media (max-width:480px) {
  .owned-card-main { grid-template-rows:180px auto auto auto; }
  .owned-card-main > img,.owned-card-main > .image-placeholder { height:180px; }
  .deck-add-button { right:-5px;bottom:48px;width:31px;height:31px; }
  .deck-gallery { grid-template-columns:repeat(2,minmax(0,1fr));gap:9px; }
  .featured-card-row { grid-template-columns:repeat(4,minmax(145px,170px)); }
  .featured-pokemon-card > img,.featured-pokemon-card > .image-placeholder { height:205px; }
  .card-preview-price-row.liga-style { grid-template-columns:1fr; }
  .deck-header-card { grid-template-columns:1fr; }
  .deck-header-stats { text-align:left; }
  .price-input-grid { grid-template-columns:1fr !important; }
}
.pokemon-showcase-layout .pokemon-showcase-identity { min-height:455px; }
.featured-title > i { display:none; }
.pokemon-showcase-layout .pokemon-showcase-identity { color:#273043; }
.pokemon-showcase-layout .pokemon-showcase-identity > span { color:#596372;opacity:1;font-size:1.3rem;font-weight:900; }
.pokemon-showcase-layout .pokemon-showcase-identity p { color:#7b8491;opacity:1; }
.pokemon-showcase-layout .pokemon-showcase-identity .type { background:#eef2f6;color:#4f5a68;box-shadow:inset 0 0 0 1px #dde3ea; }
.liga-sync-actions { display:flex;gap:8px;flex-wrap:wrap; }
@media (max-width:760px) { .liga-sync-actions { display:grid;grid-template-columns:1fr 1fr; } }


/* MY DEX v1.0.0.0.9 — visor limpo de deck e pesquisa exata da Liga */
.deck-card-viewer-backdrop {
  background:rgba(8,12,20,.94);
  backdrop-filter:blur(14px);
  padding:18px;
}
.deck-card-viewer {
  position:relative;
  width:min(96vw,720px);
  height:min(94vh,980px);
  display:grid;
  place-items:center;
  margin:auto;
  outline:none;
  touch-action:none;
}
.deck-viewer-image-wrap {
  width:100%;
  height:100%;
  display:grid;
  place-items:center;
  padding:38px 58px;
}
.deck-viewer-image-wrap img {
  display:block;
  max-width:100%;
  max-height:100%;
  width:auto;
  height:auto;
  object-fit:contain;
  border-radius:18px;
  box-shadow:0 28px 80px rgba(0,0,0,.55);
  user-select:none;
  -webkit-user-drag:none;
}
.deck-viewer-close,.deck-viewer-arrow {
  position:absolute;
  z-index:3;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.22);
  color:#fff;
  background:rgba(10,16,27,.72);
  box-shadow:0 10px 35px rgba(0,0,0,.3);
  backdrop-filter:blur(10px);
}
.deck-viewer-close { top:4px;right:4px;width:46px;height:46px;border-radius:50%;font-size:1.75rem; }
.deck-viewer-arrow { top:50%;width:54px;height:82px;border-radius:18px;font-size:3rem;transform:translateY(-50%); }
.deck-viewer-arrow.previous { left:0; }
.deck-viewer-arrow.next { right:0; }
.deck-viewer-counter {
  position:absolute;
  left:50%;bottom:4px;transform:translateX(-50%);
  padding:8px 15px;border-radius:999px;color:#fff;background:rgba(10,16,27,.72);
  font-weight:900;font-size:.78rem;letter-spacing:.06em;
}
.liga-exact-search {
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:6px 12px;
  padding:13px 14px;
  margin-bottom:12px;
  border:1px dashed #a9b9cf;
  border-radius:15px;
  background:#f7faff;
}
.liga-exact-search small { grid-column:1/-1;color:#73829a;font-weight:900;letter-spacing:.08em; }
.liga-exact-search strong { overflow-wrap:anywhere;color:#15233a;font-size:1rem; }
@media (max-width:640px) {
  .deck-card-viewer-backdrop { padding:4px; }
  .deck-card-viewer { width:100vw;height:100dvh; }
  .deck-viewer-image-wrap { padding:50px 42px 38px; }
  .deck-viewer-arrow { width:42px;height:70px;border-radius:15px;font-size:2.4rem; }
  .deck-viewer-arrow.previous { left:2px; }
  .deck-viewer-arrow.next { right:2px; }
  .deck-viewer-close { top:9px;right:9px; }
  .liga-exact-search { grid-template-columns:1fr; }
  .liga-exact-search small { grid-column:auto; }
  .liga-exact-search button { justify-self:start; }
}
