@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');
:root{--bg:#f5f7fb;--surface:#fff;--ink:#171923;--muted:#747b8c;--line:#e7eaf0;--yellow:#ffd21c;--yellow2:#ffb800;--red:#ef4444;--green:#16a34a;--shadow:0 12px 35px rgba(20,25,45,.07)}
*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,sans-serif;background:var(--bg);color:var(--ink)}button,input{font:inherit}button{cursor:pointer;border:0}.app{display:flex;min-height:100vh}.sidebar{width:250px;background:#111318;color:#fff;padding:25px 16px;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0}.brand{display:flex;align-items:center;gap:12px;padding:8px 10px 30px}.brand b{font-size:18px}.brand small,.user-mini small{display:block;color:#9aa0ad;font-size:11px;margin-top:3px}.pokeball{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--yellow);color:#111;font-size:30px;font-weight:900}.nav{width:100%;background:transparent;color:#b9bec9;text-align:left;padding:13px 14px;border-radius:10px;margin:3px 0;font-weight:600}.nav:hover,.nav.active{background:#252831;color:#fff}.nav.active{box-shadow:inset 3px 0 var(--yellow)}.nav i{float:right}.user-mini{margin-top:auto;border-top:1px solid #2a2d34;padding:16px 8px;display:flex;align-items:center;gap:9px}.avatar{width:36px;height:36px;border-radius:50%;background:var(--yellow);color:#111;display:grid;place-items:center;font-weight:800}.user-mini strong{font-size:12px}.user-mini a{margin-left:auto;color:#8f96a4;font-size:11px;text-decoration:none}main{margin-left:250px;width:calc(100% - 250px)}.topbar{height:74px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 32px;gap:20px}.topbar>button{display:none}.search-global{background:#f5f6f8;border:1px solid var(--line);border-radius:10px;padding:10px 13px;color:#9aa0ad;flex:1;max-width:520px}.search-global input{border:0;background:transparent;outline:0;width:90%;padding-left:7px}.top-user{margin-left:auto;font-weight:600;font-size:13px}.page{padding:32px 38px;max-width:1250px}.hidden{display:none!important}.hero{background:linear-gradient(120deg,#15171d,#272a33);color:#fff;border-radius:20px;padding:34px 38px;display:flex;justify-content:space-between;overflow:hidden}.eyebrow{font-size:10px;color:var(--yellow);font-weight:800;letter-spacing:1.5px}.hero h1{font-size:32px;margin:9px 0}.hero p{color:#c5c9d2;max-width:600px;line-height:1.6}.hero-ball{font-size:170px;line-height:.8;color:var(--yellow);opacity:.9;transform:rotate(15deg);align-self:center}.primary{background:var(--yellow);color:#111;font-weight:800;border-radius:10px;padding:12px 18px}.primary:hover{background:var(--yellow2)}.wide{width:100%}.ghost{background:transparent;color:#555d6e;font-weight:700}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:20px 0 34px}.stat{background:#fff;border:1px solid var(--line);border-radius:15px;padding:20px;box-shadow:var(--shadow)}.stat span{font-size:12px;color:var(--muted);font-weight:600}.stat strong{display:block;font-size:32px;margin:7px 0}.stat em{font-style:normal;font-size:11px;color:#a0a6b3}.stat.accent strong{color:#d39d00}.section-title{display:flex;align-items:center;justify-content:space-between;margin:10px 0 18px}.section-title h1,.section-title h2{margin:0 0 5px}.section-title p{margin:0;color:var(--muted);font-size:13px}.match-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.match-card,.add-box,.trade-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:var(--shadow)}.match-head{display:flex;align-items:center;gap:12px}.match-head .avatar{width:44px;height:44px}.match-score{margin-left:auto;background:#fff7cc;color:#9a7000;padding:7px 10px;border-radius:20px;font-size:11px;font-weight:800}.match-card p{font-size:12px;color:var(--muted)}.chips{display:flex;gap:7px;flex-wrap:wrap}.chip{background:#f4f5f8;padding:7px 9px;border-radius:8px;font-size:11px}.chip b{color:var(--green)}.tabs{display:flex;gap:8px;margin-bottom:18px}.tab{background:#fff;border:1px solid var(--line);padding:10px 14px;border-radius:9px;color:var(--muted);font-weight:700;font-size:12px}.tab.active{background:#171923;color:#fff}.card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.collection-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:12px;position:relative}.collection-card img{width:100%;aspect-ratio:2/2.8;object-fit:contain;border-radius:9px;background:#f1f2f5}.collection-card h3{font-size:12px;margin:9px 0 3px}.collection-card p{font-size:10px;color:var(--muted);margin:0}.qty{position:absolute;top:18px;right:18px;background:#111;color:#fff;padding:5px 8px;border-radius:7px;font-size:10px;font-weight:800}.delete{position:absolute;bottom:12px;right:12px;background:#fee2e2;color:#b91c1c;padding:6px 8px;border-radius:7px;font-size:10px}.add-box{padding:20px}.search-card{display:flex;align-items:center;gap:8px;background:#f5f6f8;border:1px solid var(--line);border-radius:12px;padding:13px}.search-card input{border:0;outline:0;background:transparent;width:100%}.results{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:18px}.result{border:1px solid var(--line);border-radius:12px;padding:8px;background:#fff}.result img{width:100%;aspect-ratio:2/2.8;object-fit:contain}.result h4{font-size:11px;margin:6px 0 2px}.result p{font-size:9px;color:var(--muted);height:26px}.result-actions{display:flex;gap:5px}.result-actions button{font-size:9px;padding:7px 5px;border-radius:7px;background:#f0f1f4;font-weight:700}.result-actions button:first-child{background:var(--yellow)}.matches-list{display:grid;gap:16px}.trade-card h3{margin:0}.trade-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:15px}.trade-columns h4{font-size:11px;text-transform:uppercase;color:var(--muted);letter-spacing:.5px}.mini-card{display:flex;align-items:center;gap:8px;background:#f7f8fa;border-radius:9px;padding:7px;margin:5px 0}.mini-card img{width:34px;height:48px;object-fit:contain}.mini-card span{font-size:10px}.modal{position:fixed;inset:0;background:rgba(0,0,0,.6);display:grid;place-items:center;padding:20px;z-index:10}.modal-box{background:#fff;border-radius:18px;padding:25px;max-width:430px;width:100%;position:relative}.close{position:absolute;right:14px;top:10px;background:transparent;font-size:25px}.modal-box h2{margin-top:0}.choice{display:grid;gap:10px}.choice button{padding:14px;border-radius:10px;background:#f2f3f6;text-align:left;font-weight:800}.choice button:hover{background:var(--yellow)}label{display:block;font-size:12px;font-weight:700;margin-bottom:12px}label input{display:block;width:100%;margin-top:6px;border:1px solid var(--line);padding:12px;border-radius:9px;outline:0}.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 50% 0,#fff5bd,#f5f7fb 50%)}.login-card{width:min(420px,92vw);background:#fff;border:1px solid var(--line);padding:32px;border-radius:20px;box-shadow:var(--shadow)}.login-brand{text-align:center;margin-bottom:25px}.login-brand .pokeball{margin:auto}.login-brand h1{margin:12px 0 5px}.login-brand p,.hint,.back{font-size:12px;color:var(--muted)}.error{background:#fee2e2;color:#991b1b;padding:10px;border-radius:8px;font-size:12px;margin-bottom:15px}.back a{color:#555;text-decoration:none}@media(max-width:900px){.sidebar{width:220px}main{margin-left:220px;width:calc(100% - 220px)}.card-grid{grid-template-columns:repeat(3,1fr)}.results{grid-template-columns:repeat(4,1fr)}}@media(max-width:700px){.sidebar{transform:translateX(-100%);transition:.2s;z-index:20}.sidebar.open{transform:none}main{margin-left:0;width:100%}.topbar{padding:0 15px}.topbar>button{display:block;background:transparent;font-size:20px}.page{padding:20px 15px}.hero{padding:25px}.hero h1{font-size:25px}.hero-ball{display:none}.stats{grid-template-columns:1fr}.match-grid,.trade-columns{grid-template-columns:1fr}.card-grid{grid-template-columns:repeat(2,1fr)}.results{grid-template-columns:repeat(2,1fr)}}

/* Adicionar carta - refinamentos */
.add-box{max-width:1150px}
.search-card{box-shadow:0 5px 18px rgba(20,25,45,.04)}
.search-card input{font-size:14px}
.results{grid-template-columns:repeat(4,1fr)}
.result{display:flex;flex-direction:column;min-width:0;overflow:hidden;transition:.18s;box-shadow:0 4px 15px rgba(20,25,45,.03)}
.result:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(20,25,45,.08)}
.result-image{background:#f4f5f7;border-radius:9px;display:grid;place-items:center;min-height:235px}
.result-image img{width:100%;height:235px;object-fit:contain}
.result-info{padding:3px 3px 0}
.result h4{font-size:12px;margin:8px 0 4px;line-height:1.35}
.result p{font-size:9px;color:var(--muted);height:auto;min-height:24px;margin:0;line-height:1.4}
.rarity{display:inline-block;font-size:8px;color:#8a6a00;background:#fff7cc;border-radius:5px;padding:4px 6px;margin-top:5px}
.result-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:10px}
.result-actions button{font-size:10px;padding:9px 4px;border-radius:8px;font-weight:800}
.result-actions .have-btn{background:var(--yellow);color:#111}
.result-actions .want-btn{background:#fff0f0;color:#b91c1c}
.empty-search{grid-column:1/-1;text-align:center;padding:55px 20px;color:var(--muted)}
.empty-search div{font-size:42px;margin-bottom:10px}
.empty-search b{display:block;color:var(--ink);font-size:14px}
.empty-search p{font-size:12px}
.card-modal{max-width:520px}
.modal-card-preview{display:flex;align-items:center;gap:18px;padding-right:20px}
.modal-card-preview img{width:105px;height:145px;object-fit:contain;background:#f4f5f7;border-radius:10px}
.modal-kicker{font-size:9px;font-weight:800;letter-spacing:1px;color:#a07500}
.modal-card-preview h2{font-size:20px;margin:7px 0 5px}
.modal-card-preview p{font-size:11px;color:var(--muted);margin:0}
.modal-intro{font-size:12px;color:var(--muted);line-height:1.5;margin:18px 0}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form-grid label{font-size:11px;color:#555d6e}
.form-grid select{display:block;width:100%;margin-top:6px;border:1px solid var(--line);padding:11px;border-radius:9px;background:#fff;outline:0;font-size:12px}
.qty-control{display:flex;margin-top:6px;border:1px solid var(--line);border-radius:9px;overflow:hidden}
.qty-control button{width:38px;background:#f5f6f8;font-size:18px}
.qty-control input{width:100%;border:0;text-align:center;outline:0;font-size:13px}
.save-card-btn{width:100%;margin-top:18px;padding:13px;border-radius:10px;background:var(--yellow);font-weight:800}
.save-card-btn:disabled{opacity:.65;cursor:wait}
@media(max-width:1050px){.results{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){
 .results{grid-template-columns:repeat(2,1fr)}
 .result-image,.result-image img{min-height:190px;height:190px}
 .modal-card-preview img{width:82px;height:112px}
 .modal-card-preview h2{font-size:17px}
 .form-grid{grid-template-columns:1fr}
}

/* V2 - grade de cartas e experiência de cadastro */
.add-box{max-width:1250px;padding:22px}
.add-box:before{content:"CATÁLOGO DE CARTAS";display:block;font-size:10px;font-weight:900;letter-spacing:1.4px;color:#9a7300;margin:0 0 9px 2px}
.search-card{position:sticky;top:10px;z-index:3;background:#f5f6f8}
.search-card:focus-within{border-color:#d9b12b;box-shadow:0 0 0 4px rgba(255,210,28,.14)}
.search-card input{font-size:15px;padding:2px 0}
.results{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.result{padding:10px;border-radius:14px;min-width:0}
.result-image{min-height:265px;height:265px;background:linear-gradient(145deg,#f7f8fa,#eceef2);border:1px solid #eef0f4}
.result-image img{height:265px;min-height:265px;width:100%;object-fit:contain}
.result-info{padding:0 2px}
.result h4{font-size:12px;min-height:32px;margin:9px 0 3px}
.result p{min-height:29px;font-size:9px;line-height:1.45}
.result-actions{margin-top:auto;padding-top:8px;grid-template-columns:1fr 1fr}
.result-actions button{cursor:pointer;transition:.15s}
.result-actions button:hover{transform:translateY(-1px);filter:brightness(.98)}
.result-actions .want-btn{background:#fff1f1;color:#b42323;border:1px solid #ffd8d8}
.search-hint{font-size:11px;color:var(--muted);margin:11px 2px 0}
.loading-search{grid-column:1/-1;text-align:center;padding:45px;color:var(--muted);font-size:12px}
.modal-box{box-shadow:0 24px 70px rgba(0,0,0,.2)}
.modal-card-preview{background:#f8f9fb;border-radius:13px;padding:12px 28px 12px 12px}
@media(max-width:1150px){.results{grid-template-columns:repeat(4,minmax(0,1fr))}.result-image,.result-image img{height:235px;min-height:235px}}
@media(max-width:900px){.results{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.add-box{padding:15px}.results{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.result{padding:8px}.result-image,.result-image img{height:190px;min-height:190px}.result h4{font-size:11px}.result-actions button{font-size:9px;padding:8px 3px}.search-card{position:static}}

.app-toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);background:#171923;color:#fff;padding:12px 16px;border-radius:11px;font-size:12px;font-weight:800;box-shadow:0 12px 35px rgba(0,0,0,.2);opacity:0;pointer-events:none;transition:.2s;z-index:30}.app-toast.show{opacity:1;transform:translate(-50%,0)}

/* Minhas cartas - V3 */
.collection-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.collection-tools .tabs{margin:0}.collection-search{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:9px 12px;min-width:240px}.collection-search input{border:0;outline:0;width:100%;font-size:12px;background:transparent}.collection-summary{display:flex;gap:10px;margin-bottom:16px}.collection-summary>div{background:#fff;border:1px solid var(--line);border-radius:11px;padding:10px 14px;min-width:120px}.collection-summary strong{display:block;font-size:17px}.collection-summary span{font-size:9px;color:var(--muted)}.collection-card{overflow:hidden;padding:0;box-shadow:var(--shadow);transition:.18s}.collection-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(20,25,45,.1)}.collection-image{background:linear-gradient(145deg,#f7f8fa,#eceef2);padding:10px;border-bottom:1px solid var(--line)}.collection-card img{width:100%;aspect-ratio:2/2.8;object-fit:contain;border-radius:8px}.collection-body{padding:12px}.collection-body h3{font-size:12px;margin:0 0 4px}.collection-body p{font-size:10px;color:var(--muted);margin:0;min-height:28px}.collection-meta{display:flex;align-items:center;justify-content:space-between;gap:5px;margin-top:8px}.collection-meta span{font-size:9px;background:#f5f6f8;border-radius:6px;padding:5px 6px;color:#555d6e}.collection-meta b{font-size:8px;color:#9a7300}.collection-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:10px}.collection-actions button{position:static!important;font-size:9px;padding:8px;border-radius:7px}.collection-actions .edit{background:#f0f1f4;color:#333b4a}.collection-actions .delete{background:#fee2e2;color:#b91c1c}.edit-modal-head{display:flex;gap:14px;align-items:center;background:#f8f9fb;border-radius:13px;padding:10px}.edit-modal-head img{width:80px;height:110px;object-fit:contain;border-radius:8px;background:#f1f2f5}.edit-modal-head h2{font-size:18px;margin:6px 0 4px}.edit-modal-head p{font-size:10px;color:var(--muted);margin:0}@media(max-width:800px){.collection-tools{align-items:stretch;flex-direction:column}.collection-search{min-width:0}.collection-summary{overflow:auto}.collection-summary>div{min-width:105px}.collection-grid{grid-template-columns:repeat(2,1fr)}}


/* V4 - garantir ações visíveis na coleção */
.collection-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;margin-top:12px!important;position:relative!important;z-index:2!important}
.collection-actions .edit,.collection-actions .delete{position:static!important;display:block!important;width:100%!important;visibility:visible!important;opacity:1!important;border:0!important;cursor:pointer!important}
.collection-actions .edit{background:#eef0f4!important;color:#20232b!important}
.collection-actions .delete{background:#fee2e2!important;color:#b42318!important}
@media(max-width:700px){.collection-actions{grid-template-columns:1fr 1fr!important}.collection-actions button{font-size:10px!important;padding:9px 5px!important}}

/* V6 - propostas de troca */
.match-score{display:flex;align-items:center;gap:7px}.match-score strong{font-size:15px}.match-progress{height:5px;background:#eceef2;border-radius:99px;margin:14px 0 10px;overflow:hidden}.match-progress span{display:block;height:100%;background:var(--yellow);border-radius:99px}.trade-columns h4{display:flex;align-items:center;gap:6px}.trade-columns h4 i{font-style:normal;background:#fff;border:1px solid var(--line);border-radius:99px;padding:2px 6px;font-size:9px}.mini-card span{display:flex;flex-direction:column;gap:2px;min-width:0}.mini-card span small,.mini-card span em{font-size:9px;color:var(--muted);font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trade-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);margin-top:15px;padding-top:14px}.trade-footer span{font-size:10px;color:var(--muted)}.trade-footer .primary{font-size:11px;padding:10px 13px}.proposals-section{margin-top:28px}.proposal-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:16px;margin-bottom:12px;box-shadow:var(--shadow)}.proposal-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.proposal-head small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.status{font-size:10px;font-weight:800;padding:6px 9px;border-radius:99px}.status.pending{background:#fff7cc;color:#946f00}.status.accepted{background:#dcfce7;color:#166534}.status.declined{background:#fee2e2;color:#991b1b}.proposal-columns,.proposal-pick-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:13px}.proposal-columns h4,.proposal-pick-grid h3{font-size:10px;text-transform:uppercase;color:var(--muted);letter-spacing:.4px}.proposal-message{background:#f7f8fa;border-radius:9px;padding:10px;font-size:11px;margin-top:10px}.proposal-actions{display:flex;gap:8px;margin-top:12px}.proposal-actions button{padding:9px 13px;border-radius:8px;font-size:11px;font-weight:800}.accept{background:#dcfce7;color:#166534}.decline{background:#fee2e2;color:#991b1b}.proposal-modal h2{margin:7px 0}.proposal-pick-grid>div{min-width:0}.pick-card{display:grid;grid-template-columns:auto 42px 1fr;align-items:center;gap:8px;background:#f7f8fa;border:1px solid transparent;border-radius:10px;padding:8px;margin:6px 0;cursor:pointer}.pick-card:has(input:checked){border-color:#f0c400;background:#fffbe0}.pick-card input{width:auto;margin:0}.pick-card img{width:38px;height:52px;object-fit:contain}.pick-card span{display:flex;flex-direction:column;min-width:0}.pick-card span b{font-size:10px}.pick-card span small,.pick-card span em{font-size:8px;color:var(--muted);font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.proposal-modal textarea{display:block;width:100%;margin-top:6px;border:1px solid var(--line);padding:10px;border-radius:9px;resize:vertical;outline:0}.muted{font-size:11px;color:var(--muted)}
@media(max-width:700px){.trade-footer{align-items:stretch;flex-direction:column}.trade-footer .primary{width:100%}.proposal-columns,.proposal-pick-grid{grid-template-columns:1fr}.proposal-actions button{flex:1}}

#matchBadge,#proposalBadge{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:99px;background:var(--yellow);color:#111;font-style:normal;font-size:9px;font-weight:900;margin-left:auto}

/* V9 - notificações e membros */
.top-actions{display:flex;align-items:center;gap:14px;margin-left:auto;position:relative}.notification-btn{position:relative;border:0;background:#fff;border:1px solid var(--line);width:38px;height:38px;border-radius:10px;cursor:pointer;font-size:16px}.notification-btn i{position:absolute;right:-3px;top:-4px;min-width:16px;height:16px;padding:0 4px;border-radius:99px;background:var(--yellow);font-size:8px;font-style:normal;font-weight:900;display:grid;place-items:center}.notification-panel{position:absolute;right:90px;top:50px;width:340px;max-height:470px;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 20px 55px rgba(20,25,45,.18);z-index:25}.notification-head{display:flex;align-items:center;justify-content:space-between;padding:13px;border-bottom:1px solid var(--line);font-size:11px}.notification-head button{border:0;background:transparent;font-size:9px;color:#8a6b00;font-weight:800;cursor:pointer}.notification-item{width:100%;display:flex;gap:10px;text-align:left;padding:12px;border:0;border-bottom:1px solid #f0f1f4;background:#fff;cursor:pointer}.notification-item:hover{background:#fafbfc}.notification-item.unread{background:#fffbe0}.notification-icon{font-size:17px}.notification-item span:last-child{display:flex;flex-direction:column;gap:3px;min-width:0}.notification-item b{font-size:10px;color:#171923}.notification-item small{font-size:9px;color:var(--muted);line-height:1.35}.notification-item em{font-size:8px;color:#a1a6b2;font-style:normal}.notification-empty{padding:30px 15px;text-align:center;color:var(--muted);font-size:11px}.members-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.member-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:16px;display:flex;gap:13px;box-shadow:var(--shadow)}.member-avatar,.profile-avatar{width:52px;height:52px;border-radius:50%;background:var(--yellow);display:grid;place-items:center;font-weight:900;font-size:20px;flex:none;overflow:hidden}.member-avatar img,.profile-avatar img{width:100%;height:100%;object-fit:cover}.member-info{min-width:0;flex:1}.member-info h3{margin:0;font-size:14px}.member-info p{margin:4px 0 10px;color:var(--muted);font-size:10px}.member-stats{display:flex;gap:8px;margin-bottom:11px}.member-stats span{background:#f6f7f9;border-radius:8px;padding:6px 8px;font-size:8px;color:var(--muted)}.member-stats b{font-size:11px;color:#20232b}.member-info .primary{font-size:10px;padding:8px 10px}.profile-head{display:flex;align-items:center;gap:14px;background:#f8f9fb;border-radius:13px;padding:12px}.profile-head h2{margin:5px 0;font-size:19px}.profile-head p{margin:0;font-size:10px;color:var(--muted)}.profile-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:13px 0}.profile-stats div{background:#f7f8fa;border-radius:9px;padding:10px}.profile-stats b{display:block;font-size:16px}.profile-stats span{font-size:8px;color:var(--muted)}.profile-modal h3{font-size:11px;margin:15px 0 7px}.profile-cards{display:grid;grid-template-columns:1fr 1fr;gap:7px}.profile-card{display:flex;gap:7px;align-items:center;background:#f7f8fa;border-radius:9px;padding:7px;min-width:0}.profile-card img{width:35px;height:48px;object-fit:contain;flex:none}.profile-card span{display:flex;flex-direction:column;min-width:0}.profile-card b{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-card small,.profile-card em{font-size:7px;color:var(--muted);font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:900px){.members-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.notification-panel{position:fixed;right:10px;left:10px;top:58px;width:auto}.members-grid{grid-template-columns:1fr}.profile-cards{grid-template-columns:1fr}.top-actions{gap:8px}}

.members-filters{display:flex;gap:10px;align-items:center;margin:0 0 14px}.member-search,.city-filter{display:flex;align-items:center;gap:7px;background:#fff;border:1px solid var(--line);border-radius:11px;padding:0 11px;color:#697184;min-height:40px}.member-search{flex:1;max-width:520px}.member-search input,.city-filter select{border:0;outline:0;background:transparent;font:inherit;font-size:11px;color:#20232b;width:100%}.city-filter{min-width:190px}.city-filter select{cursor:pointer}.profile-actions{margin-top:16px;padding-top:12px;border-top:1px solid var(--line)}@media(max-width:700px){.members-filters{flex-direction:column;align-items:stretch}.member-search{max-width:none}.city-filter{width:auto}.profile-actions .wide{width:100%}}


/* ===== PokéTrocas V10 — Mobile UI ===== */
:root{
  --pt-mobile-nav: 68px;
  --pt-mobile-radius: 16px;
}
.mobile-bottom-nav{display:none}

@media (max-width: 820px){
  html,body{overflow-x:hidden}
  body{padding-bottom:calc(var(--pt-mobile-nav) + 12px)}

  /* Sidebar becomes a compact top/header area */
  .sidebar,
  aside.sidebar{
    position:fixed!important;
    left:0!important;
    top:0!important;
    bottom:auto!important;
    width:100%!important;
    height:60px!important;
    min-height:60px!important;
    z-index:1000!important;
    display:flex!important;
    align-items:center!important;
    padding:8px 14px!important;
    border-right:0!important;
    border-bottom:1px solid rgba(0,0,0,.08)!important;
  }
  .sidebar .logo,
  .sidebar .brand{margin:0!important}
  .sidebar nav,
  .sidebar .nav,
  .sidebar ul{display:none!important}

  .main,
  main,
  .content,
  .page-content{
    margin-left:0!important;
    width:100%!important;
    padding:74px 14px 90px!important;
    max-width:none!important;
  }

  header,
  .topbar{
    margin-left:0!important;
    padding:68px 14px 10px!important;
    min-height:auto!important;
  }

  /* Headings and controls */
  h1{font-size:28px!important;line-height:1.12!important;margin-bottom:6px!important}
  h2{font-size:22px!important}
  h3{font-size:18px!important}
  p{line-height:1.45}
  .page-header,
  .section-header{gap:12px!important;flex-wrap:wrap!important}

  /* Search/filter controls stack cleanly */
  .filters,
  .toolbar,
  .search-row,
  .filter-row{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    width:100%!important;
  }
  input,select,textarea,button,
  .btn{
    min-height:44px;
    font-size:15px!important;
    border-radius:12px!important;
  }
  input,select,textarea{width:100%!important;box-sizing:border-box}

  /* Cards and grids */
  .grid,
  .cards-grid,
  .members-grid,
  .profile-grid,
  .matches-grid{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  .card,
  .member-card,
  .match-card,
  .proposal-card,
  .profile-card{
    border-radius:var(--pt-mobile-radius)!important;
    width:100%!important;
    box-sizing:border-box!important;
  }

  /* Pokemon cards: two columns where space allows */
  .pokemon-grid,
  .collection-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
  .pokemon-card img,
  .collection-card img{
    max-width:100%!important;
    height:auto!important;
  }

  /* Proposal/match content becomes vertical */
  .match-card .columns,
  .proposal-card .columns,
  .trade-columns{
    grid-template-columns:1fr!important;
    flex-direction:column!important;
  }
  .actions,
  .card-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
  }

  /* Prevent desktop tables from overflowing */
  table{display:block!important;width:100%!important;overflow-x:auto!important;white-space:nowrap}
  .modal{
    width:calc(100vw - 20px)!important;
    max-width:none!important;
    max-height:88vh!important;
    overflow:auto!important;
    margin:10px!important;
    border-radius:18px!important;
  }

  /* Bottom navigation */
  .mobile-bottom-nav{
    position:fixed;
    display:grid!important;
    grid-template-columns:repeat(5,1fr);
    left:0;right:0;bottom:0;
    height:var(--pt-mobile-nav);
    z-index:1100;
    background:#101318;
    border-top:1px solid rgba(255,255,255,.08);
    box-shadow:0 -8px 24px rgba(0,0,0,.16);
    padding:6px 4px calc(6px + env(safe-area-inset-bottom));
  }
  .mobile-bottom-nav a{
    color:#fff!important;
    text-decoration:none!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:3px!important;
    font-size:11px!important;
    font-weight:700!important;
    min-width:0!important;
    position:relative!important;
  }
  .mobile-bottom-nav a .nav-icon{font-size:20px;line-height:1}
  .mobile-bottom-nav a.active{color:#ffd21a!important}
  .mobile-bottom-nav .badge{
    position:absolute;
    top:1px;
    right:16%;
    min-width:16px;
    height:16px;
    padding:0 4px;
    border-radius:999px;
    background:#ffd21a;
    color:#111;
    font-size:10px;
    display:flex;
    align-items:center;
    justify-content:center;
  }

  /* Member profile */
  .profile-hero{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    text-align:center!important;
    padding:20px!important;
  }
  .profile-stats{
    display:grid!important;
    grid-template-columns:repeat(3,1fr)!important;
    gap:8px!important;
    width:100%!important;
  }

  /* Keep images and buttons usable with one hand */
  img{max-width:100%;height:auto}
  .btn-primary,.btn-danger,.btn-secondary{width:100%!important}
}

@media (max-width:430px){
  .pokemon-grid,.collection-grid{grid-template-columns:1fr 1fr!important}
  h1{font-size:25px!important}
  .main,main,.content,.page-content{padding-left:10px!important;padding-right:10px!important}
}

/* ===== V10.1 — Conta e propostas finalizadas ===== */
.account-mini{display:flex;align-items:center;gap:8px;border:0;background:transparent;padding:0;text-align:left;color:inherit;cursor:pointer}.account-mini .avatar{flex:none}.account-top-btn{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);background:#fff;border-radius:10px;cursor:pointer;font-size:16px}.account-modal{max-width:620px}.account-title h2{margin:5px 0 0}.account-photo-row{display:flex;align-items:center;gap:12px;padding:12px 0 15px;border-bottom:1px solid var(--line);margin-bottom:14px}.account-photo{width:72px;height:72px;border-radius:50%;background:var(--yellow);display:grid;place-items:center;font-weight:900;font-size:27px;overflow:hidden;flex:none}.account-photo img{width:100%;height:100%;object-fit:cover}.file-btn{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 12px;border-radius:10px;background:#f4f5f7;border:1px solid var(--line);font-size:11px;font-weight:800;cursor:pointer}.file-btn input{display:none}.account-photo-row>small{color:var(--muted);font-size:9px}.password-section{margin-top:16px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#fafbfc}.password-section h3{margin:0 0 4px;font-size:12px}.password-section p{margin:0 0 12px;color:var(--muted);font-size:9px}.delete-proposal{background:#fee2e2;color:#991b1b;padding:9px 13px;border-radius:8px;font-size:11px;font-weight:800;border:0;cursor:pointer}.proposal-final-actions{align-items:center;justify-content:space-between}.proposal-final-actions .muted{font-size:9px}
@media(max-width:700px){.account-top-btn{width:40px;height:40px}.top-user{display:none}.account-photo-row{flex-wrap:wrap}.account-photo-row>small{width:100%}.account-form-grid{grid-template-columns:1fr!important}.proposal-final-actions{flex-direction:column;align-items:stretch}.proposal-final-actions .delete-proposal{width:100%}}

/* V10.4 definitive avatar isolation */
#accountPhotoPreview,
#accountPhotoPreview img{
  box-sizing:border-box!important;
}
#accountPhotoPreview{
  width:72px!important;height:72px!important;
  max-width:72px!important;max-height:72px!important;
  min-width:72px!important;min-height:72px!important;
  overflow:hidden!important;border-radius:50%!important;
}
#accountPhotoPreview img{
  display:block!important;
  width:72px!important;height:72px!important;
  max-width:72px!important;max-height:72px!important;
  min-width:72px!important;min-height:72px!important;
  object-fit:cover!important;border-radius:50%!important;
}

/* ===== PokéTrocas V10.5.1 — Painel administrativo ===== */
.admin-page{}
.admin-alert{
  border:1px solid var(--line);
  border-radius:12px;
  padding:12px 15px;
  margin:0 0 18px;
  font-size:12px;
  font-weight:700;
}
.admin-alert.success{background:#ecfdf3;color:#166534;border-color:#bbf7d0}
.admin-alert.error{background:#fff1f2;color:#9f1239;border-color:#fecdd3}

.admin-stats{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin:0 0 26px;
}
.admin-stats .stat{
  min-height:108px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:20px 22px;
}
.admin-stats .stat strong{font-size:32px;line-height:1.1;margin:5px 0}
.admin-stats .stat span{font-size:11px;font-weight:800;color:#697184}
.admin-stats .stat em{font-size:9px;color:#9aa1b0;font-style:normal}

.admin-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:18px;
  box-shadow:var(--shadow);
  overflow:hidden;
}
.admin-card-head{
  padding:21px 23px 17px;
  border-bottom:1px solid var(--line);
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.admin-card-head h2{margin:0;font-size:20px}
.admin-card-head p{margin:5px 0 0;color:var(--muted);font-size:11px}

.admin-users{padding:14px}
.admin-user{
  display:grid;
  grid-template-columns:58px minmax(0,1fr) auto;
  align-items:center;
  gap:15px;
  padding:16px;
  border:1px solid #e8eaf0;
  border-radius:14px;
  background:#fff;
  margin-bottom:10px;
  transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;
}
.admin-user:last-child{margin-bottom:0}
.admin-user:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(20,25,45,.07);border-color:#dfe2e8}
.admin-user.is-banned{background:#fff8f8;border-color:#fecaca}
.admin-user .member-avatar{
  width:58px;height:58px;
  font-size:22px;
}
.admin-user-main{min-width:0}
.admin-user-title{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.admin-user-title h3{margin:0;font-size:15px;color:#171923}
.admin-user-main p{
  margin:5px 0 5px;
  color:#697184;
  font-size:10px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.admin-user-main small{font-size:9px;color:#8c93a2}
.role-badge{
  display:inline-flex;
  align-items:center;
  min-height:22px;
  padding:0 8px;
  border-radius:999px;
  font-size:8px;
  font-weight:900;
  letter-spacing:.3px;
}
.role-badge.admin{background:#fff4bf;color:#806100}
.role-badge.banned{background:#fee2e2;color:#991b1b}

.admin-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:7px;
  max-width:330px;
}
.admin-actions form{margin:0}
.admin-btn{
  min-height:36px;
  padding:0 11px;
  border:1px solid #e1e4ea;
  border-radius:9px;
  background:#f7f8fa;
  color:#303541;
  font-size:10px;
  font-weight:800;
  cursor:pointer;
  white-space:nowrap;
}
.admin-btn:hover{background:#eef0f4}
.admin-btn.warn{background:#fff7cc;border-color:#f3df78;color:#806100}
.admin-btn.ok{background:#ecfdf3;border-color:#bbf7d0;color:#166534}
.admin-btn.danger{background:#fff0f0;border-color:#fecaca;color:#b42318}
.self-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:0 12px;
  border-radius:9px;
  background:#f4f5f7;
  color:#7a8190;
  font-size:10px;
  font-weight:800;
}
.admin-note{
  margin-top:14px;
  padding:13px 15px;
  border:1px dashed #d8dce5;
  border-radius:12px;
  color:#707789;
  background:#fafbfc;
  font-size:10px;
  line-height:1.5;
}
.admin-note b{color:#343944}

@media(max-width:900px){
  .admin-stats{grid-template-columns:1fr}
  .admin-user{
    grid-template-columns:52px minmax(0,1fr);
    align-items:start;
  }
  .admin-user .member-avatar{width:52px;height:52px}
  .admin-actions{
    grid-column:1/-1;
    justify-content:stretch;
    max-width:none;
    padding-top:12px;
    border-top:1px solid #eef0f3;
  }
  .admin-actions form,.admin-actions .admin-btn,.admin-actions .self-badge{flex:1}
  .admin-actions .admin-btn,.admin-actions .self-badge{width:100%}
}

@media(max-width:700px){
  .admin-stats{gap:10px;margin-bottom:16px}
  .admin-stats .stat{min-height:88px;padding:15px 17px}
  .admin-stats .stat strong{font-size:27px}
  .admin-card{border-radius:15px}
  .admin-card-head{padding:16px}
  .admin-card-head h2{font-size:18px}
  .admin-card-head p{font-size:10px}
  .admin-users{padding:10px}
  .admin-user{
    grid-template-columns:46px minmax(0,1fr);
    padding:13px;
    gap:11px;
    border-radius:13px;
  }
  .admin-user .member-avatar{width:46px;height:46px;font-size:18px}
  .admin-user-title h3{font-size:14px}
  .admin-user-main p{white-space:normal;line-height:1.4}
  .admin-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}
  .admin-actions form:last-child{grid-column:1/-1}
  .admin-actions .admin-btn,.admin-actions .self-badge{min-height:42px}
  .admin-note{font-size:9px}
}


/* ===== V10.5.2 — Correção definitiva da barra lateral ===== */
.sidebar{
  width:250px;
  min-width:250px;
  overflow-y:auto;
  overflow-x:hidden;
}
.sidebar nav{
  display:flex;
  flex-direction:column;
  width:100%;
  gap:4px;
}
.sidebar .nav{
  display:flex;
  align-items:center;
  gap:9px;
  width:100%;
  min-height:44px;
  margin:0;
  padding:11px 12px;
  box-sizing:border-box;
  color:#b9bec9;
  text-decoration:none;
  white-space:nowrap;
  line-height:1.2;
}
.sidebar .nav span{
  display:block;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.sidebar .nav:hover,
.sidebar .nav.active{
  text-decoration:none;
}
.sidebar .user-mini{
  flex-shrink:0;
}
@media(max-width:900px) and (min-width:701px){
  .sidebar{width:220px;min-width:220px}
}
@media(max-width:700px){
  .sidebar{
    width:280px!important;
    min-width:280px!important;
    max-width:88vw!important;
  }
  .sidebar nav{
    display:flex!important;
  }
  .sidebar .nav{
    min-height:46px;
    font-size:13px;
  }
  .sidebar .brand{
    padding-bottom:22px!important;
  }
}

/* V10.6.1 — cartas reais na landing page */
.real-card{padding:0!important;border:0!important;background:transparent!important;overflow:visible!important;}
.real-card img{display:block;width:100%;height:100%;object-fit:contain;border-radius:12px;box-shadow:0 25px 55px rgba(0,0,0,.48);}
.real-cards-scene .card-back img{transform:rotate(0deg);}
.real-cards-scene .card-mid img{transform:rotate(0deg);}
.real-cards-scene .card-front img{transform:rotate(0deg);}
.mini-card img{width:52px;height:72px;object-fit:contain;border-radius:5px;margin-bottom:7px;box-shadow:0 5px 12px rgba(0,0,0,.18);}

/* ===== PokéTrocas V11 — Mobile/PWA ===== */
*{box-sizing:border-box}
button,a,.btn,input,select,textarea{touch-action:manipulation}
@media(max-width:820px){
  body{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
  .mobile-bottom-nav{padding-bottom:calc(7px + env(safe-area-inset-bottom));height:calc(68px + env(safe-area-inset-bottom))}
  .mobile-bottom-nav a{min-height:56px}
  .card,.member-card,.match-card,.proposal-card{box-shadow:0 5px 18px rgba(0,0,0,.10)}
  .modal{max-height:86vh}
}
.pwa-install{
  position:fixed;left:14px;right:14px;bottom:84px;z-index:1200;
  display:none;align-items:center;gap:10px;padding:12px 14px;
  border-radius:16px;background:#15181e;color:#fff;
  box-shadow:0 10px 28px rgba(0,0,0,.25);
}
.pwa-install.show{display:flex}
.pwa-install button{margin-left:auto;min-height:40px;padding:8px 12px;border:0;border-radius:10px}

.city-autocomplete{position:relative}.city-autocomplete input{margin-bottom:4px}.field-hint{display:block;color:var(--muted);font-size:9px;font-weight:500;margin-top:3px}

/* V12.8.1 — corrigir conflito: #cardResults usa .results na busca, mas o navegador da coleção precisa ocupar toda a largura */
#cardResults.set-browser-results{display:block!important;grid-template-columns:none!important;width:100%!important;max-width:none!important;margin-top:0!important}
#cardResults.set-browser-results > .set-browser-head,
#cardResults.set-browser-results > .set-filter-row,
#cardResults.set-browser-results > .set-selection-bar,
#cardResults.set-browser-results > .set-card-grid,
#cardResults.set-browser-results > .set-filter-empty{width:100%;max-width:none}

/* V12.2 — navegador de coleções */
.catalog-mode{display:flex;gap:8px;margin:0 0 12px}
.catalog-mode-btn{border:1px solid var(--line);background:#f5f6f8;color:#5d6472;padding:9px 13px;border-radius:9px;font-size:12px;font-weight:800}
.catalog-mode-btn.active{background:#171923;color:#fff;border-color:#171923;box-shadow:inset 0 -2px var(--yellow)}
.set-results-head{margin:18px 0 10px;color:var(--muted);font-size:12px}
.set-results-head div{display:flex;flex-direction:column;gap:3px}
.set-results-head b{color:var(--ink);font-size:13px}
.set-result{width:100%;display:flex;align-items:center;gap:14px;text-align:left;background:#fff;border:1px solid var(--line);border-radius:14px;padding:13px;margin:8px 0;box-shadow:0 4px 14px rgba(20,25,45,.04)}
.set-result:hover{border-color:#d9b12b;transform:translateY(-1px)}
.set-logo{width:68px;height:52px;display:grid;place-items:center;flex:none;background:#f5f6f8;border-radius:9px;overflow:hidden;font-size:26px}
.set-logo img{max-width:100%;max-height:100%;object-fit:contain}
.set-result-info{min-width:0;flex:1}.set-result-info h3{margin:0 0 4px;font-size:14px}.set-result-info p{margin:0;color:#6d7483;font-size:11px}.set-result-info small{display:block;margin-top:3px;color:#9aa0ad;font-size:10px}.set-arrow{font-size:22px;color:#9aa0ad}
.set-browser-head{display:flex;align-items:center;gap:12px;margin:20px 0 12px;flex-wrap:wrap}.back-set{background:#f2f3f6;padding:9px 12px;border-radius:9px;font-weight:800;font-size:11px}.set-title{display:flex;align-items:center;gap:10px;flex:1;min-width:200px}.set-title-logo{width:48px;height:40px;display:grid;place-items:center;background:#f5f6f8;border-radius:8px;overflow:hidden}.set-title-logo img{max-width:100%;max-height:100%;object-fit:contain}.set-title h2{margin:0;font-size:18px}.set-title p{margin:3px 0 0;color:var(--muted);font-size:11px}.select-all-set{background:#f5f6f8;border:1px solid var(--line);padding:9px 11px;border-radius:9px;font-weight:800;font-size:11px}
.set-selection-bar{display:flex;align-items:center;gap:10px;background:#fffbe2;border:1px solid #f1dc6d;border-radius:11px;padding:10px 12px;margin-bottom:14px;flex-wrap:wrap}.set-selection-bar b{font-size:12px}.set-selection-bar>span{font-size:11px;color:#777}.set-add-actions{margin-left:auto;display:flex;gap:7px}.set-add-actions button{padding:9px 11px;border-radius:8px;font-size:10px;font-weight:800}.set-add-actions .primary:disabled,.set-add-actions button:disabled{opacity:.45;cursor:not-allowed}.secondary-set{background:#171923;color:#fff}
.set-card-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.set-card-item{position:relative;background:#fff;border:1px solid var(--line);border-radius:11px;padding:7px;cursor:pointer;margin:0;transition:.15s}.set-card-item:hover{border-color:#d9b12b}.set-card-item input{position:absolute;opacity:0;pointer-events:none}.set-card-item:has(input:checked){border-color:#e2b700;box-shadow:0 0 0 2px rgba(255,210,28,.25)}.set-check{position:absolute;top:7px;right:7px;width:22px;height:22px;border-radius:50%;background:#fff;border:1px solid #cfd3dc;color:transparent;display:grid;place-items:center;font-size:13px;font-weight:900;z-index:2}.set-card-item:has(input:checked) .set-check{background:var(--yellow);border-color:var(--yellow);color:#111}.set-card-image{background:#f4f5f7;border-radius:7px;overflow:hidden;aspect-ratio:2/2.8}.set-card-image img{width:100%;height:100%;object-fit:contain;display:block}.set-card-name{padding:6px 3px 2px;display:flex;justify-content:space-between;gap:4px;align-items:center}.set-card-name b{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.set-card-name span{font-size:9px;color:var(--muted);white-space:nowrap}
.bulk-add-modal h2{margin:5px 0}.bulk-preview{display:flex;gap:5px;overflow:auto;padding:5px 0 12px}.bulk-preview img{width:48px;height:68px;object-fit:contain;background:#f3f4f6;border-radius:5px;flex:none}.bulk-preview>span{width:48px;height:68px;display:grid;place-items:center;background:#f3f4f6;border-radius:5px;font-weight:800;font-size:11px;flex:none}
@media(max-width:1150px){.set-card-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:900px){.set-card-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:700px){.catalog-mode{width:100%}.catalog-mode-btn{flex:1}.set-browser-head{align-items:stretch}.back-set{width:100%}.set-title{width:100%}.select-all-set{width:100%}.set-selection-bar{align-items:flex-start}.set-selection-bar>span{width:100%}.set-add-actions{width:100%;margin-left:0}.set-add-actions button{flex:1}.set-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.set-card-item{padding:5px}.set-card-name{display:block}.set-card-name b{display:block;font-size:9px}.set-card-name span{display:block;margin-top:2px}.set-result{padding:11px}.set-logo{width:55px;height:45px}}

/* V12.2 — busca unificada de cartas e coleções */
.unified-catalog-search{margin-bottom:8px}
.catalog-search-help{margin:0 4px 14px;color:#6b7280;font-size:13px;line-height:1.45}
.catalog-result-section{margin-top:14px}
.catalog-result-section+.catalog-result-section{margin-top:24px;padding-top:4px;border-top:1px solid #e5e7eb}

.set-filter-row{display:flex;align-items:center;gap:10px;margin:0 0 12px}.set-filter{display:flex;align-items:center;gap:7px;flex:1;background:#fff;border:1px solid var(--line);border-radius:10px;padding:0 10px}.set-filter:focus-within{border-color:#e4bd16;box-shadow:0 0 0 2px rgba(255,210,28,.18)}.set-filter input{border:0;outline:0;background:transparent;width:100%;min-width:0;padding:10px 0;font-size:12px}.set-filter button{border:0;background:transparent;color:var(--muted);font-size:18px;cursor:pointer;padding:2px 4px}.set-visible-count{font-size:10px;color:var(--muted);white-space:nowrap}.set-selection-info{display:flex;flex-direction:column;gap:2px;min-width:0}.set-selection-info span{font-size:10px;color:#777}.set-filter-empty{margin:20px 0}.set-add-actions button:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:700px){.set-filter-row{align-items:stretch;flex-direction:column;gap:6px}.set-visible-count{padding-left:2px}.set-filter input{font-size:13px}.set-selection-bar{position:sticky;bottom:8px;z-index:5;box-shadow:0 6px 22px rgba(0,0,0,.12)}.set-selection-info{width:100%}.set-add-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.set-add-actions button{min-height:42px}.set-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}}

/* V12.7 — filtros da coleção */
.collection-filters{display:flex;gap:8px;margin-top:8px}.collection-filters select{min-height:40px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);padding:0 11px;font:inherit;font-size:11px;cursor:pointer;outline:0}.collection-filters select:focus{border-color:#e4bd16;box-shadow:0 0 0 2px rgba(255,210,28,.18)}.collection-filters select:first-child{flex:1}.collection-filters select:last-child{min-width:170px}
@media(max-width:700px){.collection-filters{display:grid;grid-template-columns:1fr 1fr}.collection-filters select{width:100%;font-size:12px}.collection-tools{gap:8px}}

/* ===== V12.8 — MOBILE DEFINITIVO ===== */
@media (max-width: 820px){
  html,body{width:100%;max-width:100%;overflow-x:hidden}
  body{padding-bottom:calc(76px + env(safe-area-inset-bottom))}

  /* Sidebar continua sendo menu lateral; nunca vira cabeçalho */
  .sidebar,
  aside.sidebar{
    position:fixed!important;
    inset:0 auto 0 0!important;
    width:280px!important;
    min-width:280px!important;
    max-width:88vw!important;
    height:100dvh!important;
    min-height:100dvh!important;
    transform:translateX(-105%)!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    padding:20px 14px!important;
    z-index:2000!important;
    overflow-y:auto!important;
    background:#111318!important;
    border:0!important;
    box-shadow:18px 0 40px rgba(0,0,0,.25)!important;
  }
  .sidebar.open{transform:translateX(0)!important}
  .sidebar .brand{display:flex!important;padding:8px 10px 24px!important}
  .sidebar nav{display:flex!important;flex-direction:column!important;width:100%!important;gap:4px!important}
  .sidebar .nav{display:flex!important;width:100%!important;min-height:46px!important;font-size:14px!important}
  .sidebar .user-mini{display:flex!important;margin-top:auto!important}

  main{margin-left:0!important;width:100%!important;max-width:none!important}

  /* Cabeçalho mobile em uma única linha */
  .topbar,
  header.topbar{
    position:sticky!important;
    top:0!important;
    z-index:900!important;
    height:64px!important;
    min-height:64px!important;
    margin:0!important;
    padding:10px 12px!important;
    display:grid!important;
    grid-template-columns:42px minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:8px!important;
    background:#fff!important;
    border-bottom:1px solid var(--line)!important;
  }
  .topbar>button#menuBtn{
    display:grid!important;
    place-items:center!important;
    width:42px!important;
    height:42px!important;
    min-height:42px!important;
    padding:0!important;
    border:1px solid var(--line)!important;
    border-radius:12px!important;
    background:#fff!important;
    color:#171923!important;
    font-size:20px!important;
  }
  .search-global{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    height:42px!important;
    padding:0 10px!important;
    display:flex!important;
    align-items:center!important;
    border-radius:12px!important;
    overflow:hidden!important;
  }
  .search-global input{width:100%!important;min-width:0!important;font-size:13px!important;padding-left:5px!important}
  .top-actions{gap:6px!important;margin-left:0!important;min-width:0!important}
  .account-top-btn,.notification-btn{width:42px!important;height:42px!important;min-height:42px!important;padding:0!important}
  .top-user{display:none!important}
  .notification-panel{top:58px!important;right:8px!important;left:8px!important;width:auto!important;max-width:none!important}

  .page,
  .main,.content,.page-content{padding:18px 12px 90px!important;max-width:none!important}
  .section-title{display:block!important;margin:2px 0 16px!important}
  .section-title h1{font-size:26px!important;line-height:1.12!important;margin:0 0 5px!important}
  .section-title p{font-size:12px!important;line-height:1.45!important}
  .section-title>.primary{margin-top:12px!important;width:100%!important}

  /* Dashboard */
  .hero{padding:24px 20px!important;border-radius:18px!important}
  .hero h1{font-size:27px!important;line-height:1.15!important}
  .hero p{font-size:14px!important;line-height:1.55!important}
  .hero .primary{width:auto!important;min-height:46px!important}
  .stats{grid-template-columns:1fr!important;gap:10px!important;margin:14px 0 24px!important}
  .stat{padding:18px!important;border-radius:15px!important}
  .stat strong{font-size:36px!important}

  /* Adicionar carta */
  #page-add .add-box{width:100%!important;max-width:none!important;padding:14px!important;border-radius:16px!important}
  #page-add .catalog-search-help{font-size:12px!important;line-height:1.45!important;margin:10px 2px 0!important}
  .unified-catalog-search{height:50px!important;padding:0 12px!important}
  .unified-catalog-search input{font-size:14px!important}
  .catalog-mode{width:100%!important;display:grid!important;grid-template-columns:1fr 1fr!important}
  .catalog-mode-btn{width:100%!important;min-height:44px!important;padding:9px 8px!important}
  .results{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;margin-top:14px!important}
  .result{min-width:0!important;padding:7px!important;border-radius:11px!important}
  .result-image,.result-image img{height:185px!important;min-height:185px!important}
  .result h4{font-size:10px!important}
  .result p{font-size:8px!important}
  .result-actions{gap:5px!important}
  .result-actions button{min-height:40px!important;font-size:9px!important}

  /* Navegador de coleção */
  .set-browser-head{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;margin:14px 0 10px!important}
  .back-set,.select-all-set{width:100%!important;min-height:44px!important}
  .set-title{width:100%!important;min-width:0!important}
  .set-title h2{font-size:18px!important;line-height:1.2!important}
  .set-title p{font-size:10px!important}
  .set-filter-row{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:6px!important}
  .set-filter{min-height:44px!important}
  .set-filter input{font-size:13px!important}
  .set-visible-count{font-size:10px!important}
  .set-selection-bar{position:sticky!important;bottom:78px!important;z-index:20!important;display:block!important;padding:11px!important;margin:10px 0!important;border-radius:12px!important}
  .set-selection-info{width:100%!important}
  .set-selection-info b{font-size:13px!important}
  .set-selection-info span{font-size:10px!important;line-height:1.35!important}
  .set-add-actions{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important;margin:10px 0 0!important;gap:7px!important}
  .set-add-actions button{width:100%!important;min-height:44px!important;font-size:10px!important;padding:8px 5px!important}
  .set-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
  .set-card-item{padding:6px!important;border-radius:11px!important}
  .set-card-name{display:block!important;padding:6px 2px 2px!important}
  .set-card-name b{display:block!important;font-size:10px!important;line-height:1.25!important}
  .set-card-name span{display:block!important;font-size:8px!important;margin-top:2px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .set-card-name small{display:block!important;font-size:9px!important;margin-top:2px!important}

  /* Minhas cartas / matches / propostas */
  .collection-tools{display:flex!important;flex-direction:column!important;gap:9px!important}
  .tabs{width:100%!important;margin-bottom:0!important;display:grid!important;grid-template-columns:1fr 1fr!important}
  .tab{width:100%!important;min-height:44px!important;padding:9px 6px!important;font-size:10px!important}
  .collection-search{width:100%!important}
  .collection-filters{grid-template-columns:1fr!important;width:100%!important}
  .card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .match-grid,.matches-list{grid-template-columns:1fr!important;gap:10px!important}
  .trade-columns{grid-template-columns:1fr!important;gap:10px!important}

  /* Barra inferior sem sobrepor conteúdo */
  .mobile-bottom-nav{height:calc(70px + env(safe-area-inset-bottom))!important;padding:6px 3px calc(6px + env(safe-area-inset-bottom))!important}
  .mobile-bottom-nav a{min-height:58px!important;font-size:10px!important;gap:3px!important}
  .mobile-bottom-nav a .nav-icon{font-size:21px!important}

  /* Modal confortável no celular */
  .modal{inset:0!important;width:100%!important;max-width:none!important;height:100%!important;max-height:none!important;margin:0!important;padding:12px!important;place-items:end center!important;overflow:auto!important}
  .modal-box{width:100%!important;max-width:520px!important;max-height:calc(100dvh - 24px)!important;overflow:auto!important;border-radius:18px!important;padding:20px!important;margin:0!important}
}

@media (max-width:430px){
  .topbar{grid-template-columns:40px minmax(0,1fr) 86px!important;padding-left:10px!important;padding-right:10px!important}
  .account-top-btn,.notification-btn{width:38px!important;height:38px!important}
  .top-actions{gap:5px!important}
  .page,.main,.content,.page-content{padding-left:10px!important;padding-right:10px!important}
  .hero{padding:22px 18px!important}
  .hero h1{font-size:25px!important}
  .hero p{font-size:13px!important}
  #page-add .add-box{padding:12px!important}
  .set-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .set-add-actions{grid-template-columns:1fr!important}
}


/* =========================================================
   PokéTrocas V12.9 — RESPONSIVE FINAL / MOBILE + TABLET
   Último bloco propositalmente sobrescreve regras antigas.
   Desktop (>820px) permanece com o layout original.
   ========================================================= */

/* Nunca permitir um filho flex/grid criar largura horizontal inesperada. */
main,.page,.add-box,.results,.card-grid,.match-grid,.matches-list,
.collection-tools,.collection-summary,.members-grid,.member-card,
.trade-card,.proposal-card,.set-browser-results,.set-browser-head,
.set-filter-row,.set-selection-bar,.set-card-grid{min-width:0}

@media (max-width: 1100px) and (min-width: 821px){
  .page{padding-left:24px;padding-right:24px}
  .results{grid-template-columns:repeat(4,minmax(0,1fr))}
  .card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .members-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .set-card-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
}

@media (max-width: 820px){
  html{overflow-x:hidden}
  body{overflow-x:hidden;min-width:0;padding-bottom:calc(78px + env(safe-area-inset-bottom))}
  .app{display:block;min-height:100dvh;width:100%;overflow-x:clip}

  /* Menu lateral: off-canvas real. Não ocupa espaço do conteúdo. */
  .sidebar,aside.sidebar{
    position:fixed!important;left:0!important;top:0!important;bottom:0!important;
    width:min(286px,88vw)!important;max-width:88vw!important;height:100dvh!important;
    min-height:100dvh!important;margin:0!important;transform:translateX(-110%)!important;
    z-index:3000!important;display:flex!important;flex-direction:column!important;
    padding:18px 14px!important;overflow-y:auto!important;overflow-x:hidden!important;
  }
  .sidebar.open{transform:translateX(0)!important}
  .sidebar .brand{display:flex!important;flex:none!important;padding:6px 10px 24px!important}
  .sidebar nav{display:flex!important;flex-direction:column!important;gap:3px!important;width:100%!important}
  .sidebar .nav,.sidebar .admin-nav{display:flex!important;align-items:center!important;width:100%!important;min-height:46px!important}
  .sidebar .user-mini{display:flex!important;flex:none!important;margin-top:auto!important}

  /* Fundo escuro atrás do menu, sem alterar o DOM. */
  body:has(.sidebar.open)::after{
    content:"";position:fixed;inset:0;background:rgba(0,0,0,.38);z-index:2500;
  }

  main{margin:0!important;width:100%!important;max-width:none!important;min-width:0!important}

  /* Header: menu + busca + ações, sempre na mesma faixa. */
  .topbar,header.topbar{
    position:sticky!important;top:0!important;z-index:2000!important;
    width:100%!important;height:64px!important;min-height:64px!important;
    margin:0!important;padding:9px 10px!important;
    display:grid!important;grid-template-columns:42px minmax(0,1fr) 84px!important;
    align-items:center!important;gap:7px!important;overflow:visible!important;
  }
  .topbar>button#menuBtn{
    display:grid!important;place-items:center!important;width:42px!important;height:42px!important;
    min-width:42px!important;min-height:42px!important;padding:0!important;
    border:1px solid var(--line)!important;background:#fff!important;border-radius:12px!important;
    font-size:20px!important;line-height:1!important;
  }
  .search-global{
    display:flex!important;align-items:center!important;width:100%!important;max-width:none!important;
    min-width:0!important;height:42px!important;padding:0 10px!important;border-radius:12px!important;
  }
  .search-global input{min-width:0!important;width:100%!important;padding:0 3px!important;font-size:13px!important}
  .top-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:5px!important;margin:0!important;min-width:0!important}
  .account-top-btn,.notification-btn{width:38px!important;height:42px!important;min-width:38px!important;min-height:42px!important;padding:0!important;border-radius:11px!important}
  .top-user{display:none!important}
  .notification-panel{position:fixed!important;left:10px!important;right:10px!important;top:70px!important;width:auto!important;max-width:none!important;max-height:70dvh!important}

  .page{width:100%!important;max-width:none!important;margin:0!important;padding:18px 12px 94px!important;overflow:visible!important}
  .section-title{width:100%!important;display:block!important;margin:0 0 15px!important}
  .section-title>div{min-width:0!important}
  .section-title h1{font-size:26px!important;line-height:1.12!important;overflow-wrap:anywhere!important}
  .section-title p{font-size:12px!important;line-height:1.45!important}
  .section-title>.primary{width:100%!important;margin-top:11px!important;min-height:44px!important}

  /* Dashboard */
  .hero{width:100%!important;padding:24px 20px!important;border-radius:18px!important;display:block!important}
  .hero h1{font-size:27px!important;line-height:1.15!important;overflow-wrap:anywhere!important}
  .hero p{font-size:14px!important;line-height:1.55!important;max-width:none!important}
  .hero-ball{display:none!important}
  .hero .primary{width:auto!important;min-height:46px!important}
  .stats{grid-template-columns:1fr!important;gap:10px!important;margin:14px 0 24px!important}
  .stat{width:100%!important;padding:18px!important}
  .stat strong{font-size:36px!important}
  .match-grid,.matches-list{grid-template-columns:1fr!important;width:100%!important;gap:10px!important}
  .match-card,.trade-card,.proposal-card{width:100%!important;min-width:0!important}

  /* Minhas cartas */
  .collection-tools{display:flex!important;flex-direction:column!important;align-items:stretch!important;width:100%!important;gap:9px!important}
  .collection-tools .tabs{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important;margin:0!important}
  .tab{width:100%!important;min-height:44px!important;padding:8px 5px!important;font-size:10px!important}
  .collection-search{width:100%!important;min-width:0!important;height:44px!important}
  .collection-filters{display:grid!important;grid-template-columns:1fr!important;width:100%!important;margin-top:0!important}
  .collection-filters select{width:100%!important;min-width:0!important;min-height:44px!important;font-size:12px!important}
  .collection-summary{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;overflow:visible!important;gap:7px!important}
  .collection-summary>div{min-width:0!important;width:100%!important;padding:10px!important}
  .collection-summary strong{font-size:16px!important}
  .collection-summary span{font-size:8px!important}
  .card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;width:100%!important}
  .collection-card{min-width:0!important}
  .collection-body{padding:10px!important}
  .collection-body h3{font-size:11px!important;line-height:1.3!important}
  .collection-body p{font-size:9px!important;overflow-wrap:anywhere!important}
  .collection-actions{grid-template-columns:1fr 1fr!important}
  .collection-actions button{min-height:40px!important}

  /* Adicionar carta / busca */
  #page-add .add-box{width:100%!important;max-width:none!important;padding:14px!important;margin:0!important;border-radius:16px!important}
  #page-add .catalog-search-help{font-size:12px!important;line-height:1.45!important;margin:9px 2px 13px!important}
  .unified-catalog-search{position:static!important;width:100%!important;height:50px!important;margin:0!important}
  .unified-catalog-search input{font-size:14px!important}
  #cardResults.results{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;gap:9px!important;margin-top:14px!important}
  .result{min-width:0!important;padding:7px!important}
  .result-image,.result-image img{height:185px!important;min-height:185px!important}
  .result h4{font-size:10px!important;line-height:1.3!important}
  .result p{font-size:8px!important;line-height:1.35!important}
  .result-actions{grid-template-columns:1fr 1fr!important}
  .result-actions button{min-height:40px!important;font-size:9px!important;padding:7px 3px!important}

  /* Coleção aberta: bloco único e grade limpa. */
  #cardResults.set-browser-results{display:block!important;width:100%!important;max-width:none!important;margin:0!important}
  .set-browser-head{display:grid!important;grid-template-columns:1fr!important;width:100%!important;gap:8px!important;margin:14px 0 10px!important}
  .back-set,.select-all-set{width:100%!important;min-height:44px!important}
  .set-title{display:flex!important;width:100%!important;min-width:0!important}
  .set-title>div:last-child{min-width:0!important}
  .set-title h2{font-size:18px!important;line-height:1.2!important;overflow-wrap:anywhere!important}
  .set-title p{font-size:10px!important}
  .set-filter-row{display:flex!important;flex-direction:column!important;align-items:stretch!important;width:100%!important;gap:6px!important}
  .set-filter{width:100%!important;min-width:0!important;min-height:44px!important}
  .set-filter input{font-size:13px!important;min-width:0!important}
  .set-visible-count{font-size:10px!important}
  .set-selection-bar{display:block!important;width:100%!important;margin:10px 0!important;padding:11px!important;position:sticky!important;bottom:calc(76px + env(safe-area-inset-bottom))!important;z-index:1200!important}
  .set-selection-info{width:100%!important}
  .set-add-actions{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important;margin:10px 0 0!important;gap:7px!important}
  .set-add-actions button{width:100%!important;min-height:44px!important;font-size:10px!important}
  .set-card-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;gap:9px!important}
  .set-card-item{min-width:0!important;padding:6px!important}
  .set-card-name{display:block!important;min-width:0!important}
  .set-card-name b{display:block!important;font-size:10px!important;line-height:1.25!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .set-card-name span{display:block!important;font-size:8px!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .set-card-name small{display:block!important;font-size:9px!important}

  /* Matches / propostas */
  .trade-columns,.proposal-columns,.proposal-pick-grid{grid-template-columns:1fr!important;width:100%!important;gap:10px!important}
  .trade-footer,.proposal-actions{display:flex!important;flex-direction:column!important;align-items:stretch!important;width:100%!important}
  .trade-footer .primary,.proposal-actions button,.proposal-final-actions .delete-proposal{width:100%!important;min-height:44px!important}
  .mini-card{min-width:0!important}
  .mini-card span{min-width:0!important}
  .proposal-head{align-items:flex-start!important;flex-wrap:wrap!important}
  .status{flex:none!important}

  /* Grupo */
  .members-filters{display:flex!important;flex-direction:column!important;align-items:stretch!important;width:100%!important;gap:9px!important}
  .member-search,.city-filter{width:100%!important;max-width:none!important;min-width:0!important;min-height:44px!important}
  .members-grid{grid-template-columns:1fr!important;width:100%!important;gap:10px!important}
  .member-card{display:flex!important;width:100%!important;padding:13px!important}
  .member-stats{flex-wrap:wrap!important}
  .member-info .primary{width:100%!important;min-height:42px!important}
  .profile-cards{grid-template-columns:1fr!important}

  /* Conta e modais */
  .modal{position:fixed!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;margin:0!important;padding:10px!important;display:grid!important;place-items:end center!important;overflow:hidden!important;z-index:4000!important}
  .modal-box{width:100%!important;max-width:560px!important;max-height:calc(100dvh - 20px)!important;margin:0!important;padding:18px!important;border-radius:18px!important;overflow:auto!important}
  .modal-card-preview{align-items:flex-start!important}
  .modal-card-preview img{width:78px!important;height:108px!important;flex:none!important}
  .form-grid{grid-template-columns:1fr!important}
  .account-form-grid{grid-template-columns:1fr!important}
  .account-photo-row{flex-wrap:wrap!important}
  .account-photo-row>small{width:100%!important}
  .profile-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important}

  /* PWA / bottom nav */
  .mobile-bottom-nav{display:grid!important;position:fixed!important;left:0!important;right:0!important;bottom:0!important;width:100%!important;height:calc(70px + env(safe-area-inset-bottom))!important;z-index:3500!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;padding:5px 3px calc(5px + env(safe-area-inset-bottom))!important}
  .mobile-bottom-nav a{min-width:0!important;min-height:58px!important;padding:3px 1px!important;font-size:10px!important;gap:3px!important;overflow:hidden!important}
  .mobile-bottom-nav a .nav-icon{font-size:20px!important}
  .pwa-install{left:10px!important;right:10px!important;bottom:calc(78px + env(safe-area-inset-bottom))!important}
}

@media (max-width:430px){
  .topbar{grid-template-columns:40px minmax(0,1fr) 80px!important;padding-left:8px!important;padding-right:8px!important}
  .account-top-btn,.notification-btn{width:36px!important;height:40px!important;min-width:36px!important}
  .page{padding-left:10px!important;padding-right:10px!important}
  .hero{padding:22px 18px!important}
  .hero h1{font-size:25px!important}
  .hero p{font-size:13px!important}
  .collection-summary{grid-template-columns:1fr!important}
  #page-add .add-box{padding:12px!important}
  .result-image,.result-image img{height:165px!important;min-height:165px!important}
  .set-add-actions{grid-template-columns:1fr!important}
}

@media (max-width:360px){
  .topbar{grid-template-columns:38px minmax(0,1fr) 74px!important;gap:5px!important}
  .topbar>button#menuBtn{width:38px!important;min-width:38px!important}
  .search-global{padding:0 7px!important}
  .search-global input{font-size:12px!important}
  .account-top-btn,.notification-btn{width:34px!important;min-width:34px!important}
  .mobile-bottom-nav a{font-size:9px!important}
  .mobile-bottom-nav a .nav-icon{font-size:18px!important}
}


/* V12.10 — Conversas de Match */
.match-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.conversation-overlay{position:fixed;inset:0;background:rgba(8,10,18,.72);display:none;align-items:center;justify-content:center;padding:20px;z-index:2000}
.conversation-overlay.show{display:flex}
.conversation-card{width:min(760px,100%);max-height:min(90vh,820px);background:#fff;border-radius:20px;box-shadow:0 24px 80px rgba(0,0,0,.35);display:flex;flex-direction:column;overflow:hidden}
.conversation-head{display:flex;justify-content:space-between;gap:16px;padding:20px 22px;border-bottom:1px solid #e7e8ee}.conversation-head h2{margin:4px 0}.conversation-head p{margin:0;color:#6b7280;font-size:14px}
.conversation-trade{display:flex;justify-content:space-between;padding:10px 22px;background:#f7f7fa;font-size:13px}.conversation-trade b{color:#168a4a}
.chat-messages{padding:18px;overflow:auto;flex:1;min-height:280px;max-height:52vh;background:#fafafd}.chat-message{display:flex;flex-direction:column;margin:8px 0;max-width:78%}.chat-message.mine{margin-left:auto;align-items:flex-end}.chat-message.theirs{margin-right:auto;align-items:flex-start}.chat-bubble{padding:11px 14px;border-radius:16px;background:#fff;border:1px solid #e2e3e8;line-height:1.4;white-space:pre-wrap;word-break:break-word}.chat-message.mine .chat-bubble{background:#fff4bd;border-color:#f2d76b}.chat-message small{font-size:10px;color:#8b8f99;margin-top:3px}.chat-empty{text-align:center;color:#8b8f99;padding:60px 20px}
.chat-form{display:flex;gap:8px;padding:12px 16px;border-top:1px solid #e7e8ee}.chat-form input{flex:1;min-width:0;border:1px solid #d8dae2;border-radius:12px;padding:11px 12px;font:inherit}.chat-form button{flex:none}.chat-actions{padding:0 16px 16px;display:flex;justify-content:flex-end}.chat-status{padding:8px 16px 0;color:#68707e;font-size:12px}.chat-closed{padding:15px 16px;background:#eef8f1;color:#176b3c;font-size:13px}
@media(max-width:600px){.conversation-overlay{padding:0}.conversation-card{width:100%;height:100%;max-height:none;border-radius:0}.conversation-head{padding:16px}.conversation-head h2{font-size:20px}.chat-messages{max-height:none}.chat-form{padding-bottom:calc(12px + env(safe-area-inset-bottom))}.match-actions{width:100%}.match-actions button{flex:1}}


/* V12.10.1 — proposta sem depender do modal removido */
.proposal-overlay{position:fixed;inset:0;background:rgba(8,10,18,.72);display:none;align-items:center;justify-content:center;padding:20px;z-index:2100}
.proposal-overlay.show{display:flex}
.proposal-dialog{width:min(900px,100%);max-height:min(92vh,900px);overflow:auto;background:#fff;border-radius:20px;box-shadow:0 24px 80px rgba(0,0,0,.35);padding:20px}
.proposal-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.proposal-dialog-head h2{margin:6px 0 0}
.proposal-dialog-head .ghost{flex:none}
.proposal-dialog .modal-intro{color:var(--muted);font-size:11px;margin:8px 0 14px}
.proposal-dialog .proposal-pick-grid{margin-top:0}
.proposal-message-label{display:block;margin-top:14px;font-size:10px;font-weight:800}
.proposal-message-label textarea{box-sizing:border-box}
.proposal-dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}
@media(max-width:700px){.proposal-overlay{padding:0}.proposal-dialog{width:100%;height:100%;max-height:none;border-radius:0;padding:16px;box-sizing:border-box}.proposal-dialog-head h2{font-size:18px}.proposal-dialog-actions{flex-direction:column-reverse}.proposal-dialog-actions button{width:100%}}

/* V12.10.4 — visual refinado do seletor de propostas */
.proposal-dialog{padding:24px!important;background:#fff;}
.proposal-pick-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:22px!important;}
.proposal-pick-grid>div{background:#fafbfc;border:1px solid #e6e8ee;border-radius:16px;padding:14px;min-width:0;}
.proposal-pick-grid>div>h3{margin:0 0 12px!important;padding-bottom:10px;border-bottom:1px solid #e8e9ee;font-size:11px!important;}
#offerPick,#requestPick{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.proposal-pick-card{position:relative;display:flex;flex-direction:column;align-items:stretch;min-width:0;background:#fff;border:1px solid #e2e4ea;border-radius:12px;padding:8px;cursor:pointer;transition:.15s ease;box-shadow:0 3px 10px rgba(20,25,45,.06);}
.proposal-pick-card:hover{transform:translateY(-1px);border-color:#d5b400;box-shadow:0 6px 16px rgba(20,25,45,.10);}
.proposal-pick-card:has(input:checked){border-color:#e6bd00;background:#fffbe4;box-shadow:0 0 0 2px rgba(255,211,25,.22);}
.proposal-pick-card input{position:absolute;right:9px;top:9px;width:19px;height:19px;margin:0;accent-color:#f2c900;z-index:2;}
.proposal-pick-card img{display:block;width:100%;height:190px;object-fit:contain;border-radius:7px;background:#f4f5f7;margin:0 0 8px;}
.proposal-pick-info{display:flex;flex-direction:column;gap:3px;min-width:0;padding:0 2px;}
.proposal-pick-info b{font-size:10px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#171923;}
.proposal-pick-info small,.proposal-pick-info em{font-size:8px;line-height:1.25;color:#737b8d;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.proposal-check{display:none!important;}
.proposal-message-label{font-size:11px!important;color:#555d6e;}
.proposal-message-label textarea{margin-top:7px!important;min-height:78px;padding:11px 12px!important;font-size:12px;background:#fafbfc;}
.proposal-dialog-actions{border-top:1px solid #e8e9ee;padding-top:14px;margin-top:18px!important;}
@media(max-width:700px){
  .proposal-dialog{padding:14px!important;border-radius:0!important;}
  .proposal-pick-grid{grid-template-columns:1fr!important;gap:12px!important;}
  .proposal-pick-grid>div{padding:11px;}
  #offerPick,#requestPick{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
  .proposal-pick-card{padding:6px;border-radius:10px;}
  .proposal-pick-card img{height:150px;margin-bottom:6px;}
  .proposal-pick-card input{right:6px;top:6px;width:18px;height:18px;}
  .proposal-pick-info b{font-size:9px;}
  .proposal-pick-info small,.proposal-pick-info em{font-size:7px;}
  .proposal-dialog-head h2{font-size:17px!important;line-height:1.25;}
}
@media(max-width:380px){#offerPick,#requestPick{grid-template-columns:1fr;}.proposal-pick-card{display:grid;grid-template-columns:86px 1fr;column-gap:8px;align-items:center}.proposal-pick-card img{width:86px;height:120px;grid-row:1 / span 2;margin:0}.proposal-pick-info{align-self:center;}.proposal-pick-card input{right:5px;top:5px;}}


/* Perfil da própria conta: modal criado sob demanda */
.account-modal-shell{max-width:680px!important;width:min(680px,100%)!important;}
.account-modal-shell .account-modal{max-width:none!important;}
@media(max-width:700px){
  .account-modal-shell{width:100%!important;max-width:none!important;max-height:calc(100dvh - 24px)!important;padding:18px!important;}
  .account-modal .form-grid.account-form-grid{grid-template-columns:1fr!important;}
  .account-photo-row{flex-wrap:wrap;}
}
